diff options
author | YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org> | 2005-06-13 14:59:44 -0700 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2005-06-13 14:59:44 -0700 |
commit | 84427d533076a08137779b3182a71c37bf000b27 (patch) | |
tree | 248f7bbcebe0be59bc9b520b8611133b870a5c71 /net/ipv6/addrconf.c | |
parent | 979b6c135fc4d466a39d8e3ec05583e5ee30261a (diff) | |
download | blackbird-op-linux-84427d533076a08137779b3182a71c37bf000b27.tar.gz blackbird-op-linux-84427d533076a08137779b3182a71c37bf000b27.zip |
[IPV6]: Ensure to use icmpv6_socket in non-preemptive context.
We saw following trace several times:
|BUG: using smp_processor_id() in preemptible [00000001] code: httpd/30137
|caller is icmpv6_send+0x23/0x540
| [<c01ad63b>] smp_processor_id+0x9b/0xb8
| [<c02993e7>] icmpv6_send+0x23/0x540
This is because of icmpv6_socket, which is the only one user of
smp_processor_id() in icmpv6_send(), AFAIK.
Since it should be used in non-preemptive context,
let's defer the dereference after disabling preemption
(by icmpv6_xmit_lock()).
Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv6/addrconf.c')
0 files changed, 0 insertions, 0 deletions