Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c74c69b4 authored by Paolo 'Blaisorblade' Giarrusso's avatar Paolo 'Blaisorblade' Giarrusso Committed by Linus Torvalds
Browse files

uml: Replace one-element array with zero-element array



To look at users I did:
$ find arch/um/ include/asm-um -name '*.[ch]'|xargs grep -r 'net_kern\.h'
+-l|xargs grep '\<user\>'

Most users just cast user to the appropriate pointer, the remaining ones are
fixed here.  In net_kern.c, I'm almost sure that save trick is not needed
anymore, but I've not verified it.

Signed-off-by: default avatarPaolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
Signed-off-by: default avatarJeff Dike <jdike@linux.intel.com>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent 8c840835
Loading
Loading
Loading
Loading
+3 −11
Original line number Diff line number Diff line
@@ -347,10 +347,9 @@ static void eth_configure(int n, void *init, char *mac,
	struct uml_net *device;
	struct net_device *dev;
	struct uml_net_private *lp;
	int save, err, size;
	int err, size;

	size = transport->private_size + sizeof(struct uml_net_private) +
		sizeof(((struct uml_net_private *) 0)->user);
	size = transport->private_size + sizeof(struct uml_net_private);

	device = kzalloc(sizeof(*device), GFP_KERNEL);
	if (device == NULL) {
@@ -409,12 +408,6 @@ static void eth_configure(int n, void *init, char *mac,
	 */
	(*transport->kern->init)(dev, init);

	/* lp.user is the first four bytes of the transport data, which
	 * has already been initialized.  This structure assignment will
	 * overwrite that, so we make sure that .user gets overwritten with
	 * what it already has.
	 */
	save = lp->user[0];
	*lp = ((struct uml_net_private)
		{ .list  		= LIST_HEAD_INIT(lp->list),
		  .dev 			= dev,
@@ -428,8 +421,7 @@ static void eth_configure(int n, void *init, char *mac,
		  .write 		= transport->kern->write,
		  .add_address 		= transport->user->add_address,
		  .delete_address  	= transport->user->delete_address,
		  .set_mtu 		= transport->user->set_mtu,
		  .user  		= { save } });
		  .set_mtu 		= transport->user->set_mtu });

	init_timer(&lp->tl);
	spin_lock_init(&lp->lock);
+1 −1
Original line number Diff line number Diff line
@@ -40,7 +40,7 @@ struct uml_net_private {
	void (*add_address)(unsigned char *, unsigned char *, void *);
	void (*delete_address)(unsigned char *, unsigned char *, void *);
	int (*set_mtu)(int mtu, void *);
	int user[1];
	char user[0];
};

struct net_kern_info {