alloc_netdev() and 32 byte or 32 bit alignment???

pradeep singh 2500.pradeep at gmail.com
Fri May 18 06:40:02 CDT 2007


Hi ,

following code snippet is self evident in what it does -

truct net_device *alloc_netdev(int sizeof_priv, const char *name,
		void (*setup)(struct net_device *))
{
	void *p;
	struct net_device *dev;
	int alloc_size;

	/* ensure 32-byte alignment of both the device and private area */
	alloc_size = (sizeof(*dev) + NETDEV_ALIGN_CONST) & ~NETDEV_ALIGN_CONST;
	alloc_size += sizeof_priv + NETDEV_ALIGN_CONST;

	p = kzalloc(alloc_size, GFP_KERNEL);
	if (!p) {
		printk(KERN_ERR "alloc_dev: Unable to allocate device.\n");
		return NULL;
	}
[snip]

Is the comment correct?
Why is it 'ensure 32 byte alignment', instead of 32 bit alignment?

What am i missing here?

Thank you
--psr



-- 
play the game


More information about the Kernel-mentors mailing list