]> git.baikalelectronics.ru Git - kernel.git/commit
atl1c: Fix work event interrupt/task races
authorTim Gardner <timg@tpi.com>
Wed, 20 Apr 2011 09:00:49 +0000 (09:00 +0000)
committerDavid S. Miller <davem@davemloft.net>
Fri, 22 Apr 2011 04:04:32 +0000 (21:04 -0700)
commit53efc75854f0fbcb6e346253819d48a62998bc10
tree9de4b9a992aa2a521bfba73b941310dd8e09ea60
parent039e4e2f54bc549c8e31c28cd4cb91bcd3fcf48b
atl1c: Fix work event interrupt/task races

The mechanism used to initiate work events from the interrupt
handler has a classic read/modify/write race between the interrupt
handler that sets the condition, and the worker task that reads and
clears the condition. Close these races by using atomic
bit fields.

Cc: stable@kernel.org
Cc: Jie Yang <jie.yang@atheros.com>
Signed-off-by: Tim Gardner <tim.gardner@canonical.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/atl1c/atl1c.h
drivers/net/atl1c/atl1c_main.c