Subject: Re: [xfrm_user] BUG: sleeping function called from invalid context

From: Alex Badea <[email-masked]>
Date: Thu, 12 Aug 2010 16:13:12 +0300

Hi,

On 08/12/2010 03:50 PM, Luca Tettamanti wrote:
>  [<ffffffff8124d175>] udp_setsockopt+0x24/0x26
>  [<ffffffff811fd5c5>] sock_common_setsockopt+0xf/0x11
>  [<ffffffff811fb0a8>] sys_setsockopt+0x81/0xa2
>  [<ffffffff8100296b>] system_call_fastpath+0x16/0x1b
> 
> 
> xfrm_user_policy takes read_lock(&xfrm_km_lock) before calling
> xfrm_compile_policy (via km->compile_policy), which in turn calls
> xfrm_policy_alloc with GFP_KERNEL.

Since it's a setsockopt(), I suspect it was setting up per-socket bypass
policies.

Regards,
Alex