]> git.baikalelectronics.ru Git - kernel.git/commit
[NET]: Fix and allocate less memory for ->priv'less netdevices
authorAlexey Dobriyan <adobriyan@sw.ru>
Fri, 18 Apr 2008 22:43:32 +0000 (15:43 -0700)
committerDavid S. Miller <davem@davemloft.net>
Fri, 18 Apr 2008 22:43:32 +0000 (15:43 -0700)
commitfc84d5dbc1397f2e4ff18e89dcf71299a8675800
treead629b19f6331058001ef46fe6a45dd53122b7d8
parent49683cba921544562c520ff6ea95f1586cfb2c30
[NET]: Fix and allocate less memory for ->priv'less netdevices

This patch effectively reverts commit 591c22bf2d418eb46cfd039fe1c91c912a6c9c0e
aka "[NET]: Do not allocate unneeded memory for dev->priv alignment."
It was found to be buggy because of final unconditional += NETDEV_ALIGN_CONST
removal.

For example, for sizeof(struct net_device) being 2048 bytes, "alloc_size"
was also 2048 bytes, but allocator with debugging options turned on started
giving out !32-byte aligned memory resulting in redzones overwrites.

Patch does small optimization in ->priv'less case: bumping size to next
32-byte boundary was always done to ensure ->priv will also be aligned.
But, no ->priv, no need to do that.

Signed-off-by: Alexey Dobriyan <adobriyan@sw.ru>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/core/dev.c