Message ID | 20201101220845.2391858-1-adelva@google.com |
---|---|
State | New |
Headers | show |
Series | xfrm/compat: Remove use of kmalloc_track_caller | expand |
On 11/1/20 10:08 PM, Alistair Delva wrote: > The __kmalloc_track_caller symbol is not exported if SLUB/SLOB are > enabled instead of SLAB, which breaks the build on such configs when > CONFIG_XFRM_USER_COMPAT=m. > > ERROR: "__kmalloc_track_caller" [net/xfrm/xfrm_compat.ko] undefined! > > Other users of this symbol are 'bool' options, but changing this to > bool would require XFRM_USER to be built in as well, which doesn't > seem worth it. Go back to kmalloc(). > > Fixes: 96392ee5a13b9 ("xfrm/compat: Translate 32-bit user_policy from sockptr") > Cc: Dmitry Safonov <0x7f454c46@gmail.com> > Cc: Maciej Żenczykowski <maze@google.com> > Cc: Steffen Klassert <steffen.klassert@secunet.com> > Signed-off-by: Alistair Delva <adelva@google.com> Reviewed-by: Dmitry Safonov <0x7f454c46@gmail.com> Thank you! -- Dmitry
On Sun, Nov 01, 2020 at 02:08:45PM -0800, Alistair Delva wrote: > The __kmalloc_track_caller symbol is not exported if SLUB/SLOB are > enabled instead of SLAB, which breaks the build on such configs when > CONFIG_XFRM_USER_COMPAT=m. > > ERROR: "__kmalloc_track_caller" [net/xfrm/xfrm_compat.ko] undefined! Is this with a recent kernel? Because they should be exported: commit fd7cb5753ef49964ea9db5121c3fc9a4ec21ed8e Author: Daniel Vetter <daniel.vetter@ffwll.ch> Date: Mon Mar 23 15:49:00 2020 +0100 mm/sl[uo]b: export __kmalloc_track(_node)_caller 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
On Sun, Nov 1, 2020 at 7:39 PM Herbert Xu <herbert@gondor.apana.org.au> wrote: >> On Sun, Nov 01, 2020 at 02:08:45PM -0800, Alistair Delva wrote: > > The __kmalloc_track_caller symbol is not exported if SLUB/SLOB are > > enabled instead of SLAB, which breaks the build on such configs when > > CONFIG_XFRM_USER_COMPAT=m. > > > > ERROR: "__kmalloc_track_caller" [net/xfrm/xfrm_compat.ko] undefined! > > Is this with a recent kernel? Because they should be exported: > > commit fd7cb5753ef49964ea9db5121c3fc9a4ec21ed8e > Author: Daniel Vetter <daniel.vetter@ffwll.ch> > Date: Mon Mar 23 15:49:00 2020 +0100 > > mm/sl[uo]b: export __kmalloc_track(_node)_caller Whoops, you're right - I confused two allmodconfig issues when backporting. Sorry for the noise. > 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 > > -- > To unsubscribe from this group and stop receiving emails from it, send an email to kernel-team+unsubscribe@android.com. >
diff --git a/net/xfrm/xfrm_compat.c b/net/xfrm/xfrm_compat.c index e28f0c9ecd6a..c1dee0696dfb 100644 --- a/net/xfrm/xfrm_compat.c +++ b/net/xfrm/xfrm_compat.c @@ -585,7 +585,7 @@ static int xfrm_user_policy_compat(u8 **pdata32, int optlen) if (optlen < sizeof(*p)) return -EINVAL; - data64 = kmalloc_track_caller(optlen + 4, GFP_USER | __GFP_NOWARN); + data64 = kmalloc(optlen + 4, GFP_USER | __GFP_NOWARN); if (!data64) return -ENOMEM;
The __kmalloc_track_caller symbol is not exported if SLUB/SLOB are enabled instead of SLAB, which breaks the build on such configs when CONFIG_XFRM_USER_COMPAT=m. ERROR: "__kmalloc_track_caller" [net/xfrm/xfrm_compat.ko] undefined! Other users of this symbol are 'bool' options, but changing this to bool would require XFRM_USER to be built in as well, which doesn't seem worth it. Go back to kmalloc(). Fixes: 96392ee5a13b9 ("xfrm/compat: Translate 32-bit user_policy from sockptr") Cc: Dmitry Safonov <0x7f454c46@gmail.com> Cc: Maciej Żenczykowski <maze@google.com> Cc: Steffen Klassert <steffen.klassert@secunet.com> Signed-off-by: Alistair Delva <adelva@google.com> --- net/xfrm/xfrm_compat.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)