[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4928CECE.602@cosmosbay.com>
Date: Sun, 23 Nov 2008 04:32:30 +0100
From: Eric Dumazet <dada1@...mosbay.com>
To: Ilpo Järvinen <ilpo.jarvinen@...sinki.fi>,
David Miller <davem@...emloft.net>
CC: Netdev <netdev@...r.kernel.org>
Subject: Re: net-next/unix: BUG: using smp_processor_id() in preemptible
Ilpo Järvinen a écrit :
> I got plenty of these from sock_prot_inuse_add:
>
> BUG: using smp_processor_id() in preemptible [00000000] code: rcS/1146
>
> caller is sock_prot_inuse_add+0x24/0x42
> Pid: 1146, comm: rcS Not tainted 2.6.28-rc6-01121-g89a2f15 #76
> Call Trace:
> [<ffffffff80365767>] debug_smp_processor_id+0xd3/0xe8
> [<ffffffff80485a0f>] sock_prot_inuse_add+0x24/0x42
> [<ffffffff80514cdd>] unix_create1+0x161/0x176
> [<ffffffff80514d52>] unix_create+0x60/0x6b
> [<ffffffff80483f66>] __sock_create+0x144/0x1bd
> [<ffffffff80483edb>] ? __sock_create+0xb9/0x1bd
> [<ffffffff8048402d>] sock_create+0x2d/0x2f
> [<ffffffff80484274>] sys_socket+0x29/0x5b
> [<ffffffff8020c10a>] system_call_fastpath+0x16/0x1b
>
>
Thanks Ilpo for this report
I guess the following is necessary.
Once Christopher and Rusty work on percpu variables is finished,
the preempt_enable()/disable() wont be necessary anymore, so
its a temporary workaround anyway.
[PATCH] net: make sock_prot_inuse_add() preempt safe
Ilpo Järvinen reported that commit a8076d8db98de6da61394b2e942320e4612643ac
(net: af_unix should update its inuse counter) was triggering
a warning in smp_processor_id(), being called in a preemptible code.
Fix is to make sock_prot_inuse_add() safe in this regard. This fix
can be reverted when new percpu infrastructure is ready, allowing
a cpu to safely do a increment/decrement on a percpu var.
Signed-off-by: Eric Dumazet <dada1@...mosbay.com>
View attachment "prot_inuse.patch" of type "text/plain" (823 bytes)
Powered by blists - more mailing lists