Messages in this thread | | | Date | Tue, 25 Oct 2011 13:54:25 +0200 | From | Herbert Xu <> | Subject | Re: PROBLEM: System call 'sendmsg' of process ospfd (quagga) causes kernel oops |
| |
On Thu, Oct 20, 2011 at 11:35:41AM +0200, Herbert Xu wrote: > > In the time being I'll look more closely at all the users of > needed_headroom to see if there's anything we've missed.
OK I've reviewed all the users of needed_headroom and I haven't found anything other than the cases that we have enumerated.
One thing I noticed is that the macro LL_ALLOCATED_SPACE is completely bogus and buggy. It applies the alignment to the sum of headroom and tailroom. However, the alignment is then applied separately to the headroom when reserving, meaning that we may end up with insufficient tailroom.
So I'm going to get rid of LL_ALLOCATED_SPACE completely and replace it with explicit references to the tailroom as it doesn't need the alignment anyway (The headroom needs alignment since we use it to ensure the head is aligned).
Cheers, -- Email: Herbert Xu <herbert@gondor.apana.org.au> Home Page: http://gondor.apana.org.au/~herbert/ PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
| |