]> git.baikalelectronics.ru Git - kernel.git/commit
8139cp: Prevent dev_close/cp_interrupt race on MTU change
authorJohn Greene <jogreene@redhat.com>
Wed, 19 Dec 2012 09:47:48 +0000 (09:47 +0000)
committerDavid S. Miller <davem@davemloft.net>
Wed, 19 Dec 2012 22:30:59 +0000 (14:30 -0800)
commit881cda6319c89d305ca55368507b7d69f0953d5a
tree477e1bde4443e5708f4c1c7885c9c552dcd7d4d6
parent250f551d3d92f7a78d57a3a04a6a23587d453d33
8139cp: Prevent dev_close/cp_interrupt race on MTU change

commit:  85e9574aa55e836d80f3a81bd64512629d5246f2 upstream

Above commit may introduce a race between cp_interrupt and dev_close
/ change MTU / dev_open up state. Changes cp_interrupt to tolerate
this.  Change spin_locking in cp_interrupt to avoid possible
but unobserved race.

Reported-by: "Francois Romieu" <romieu@fr.zoreil.com>
Tested on virtual hardware, Tx MTU size up to 4096, max tx payload
    was ping -s 4068 for MTU of 4096. No real hardware, need test
    assist.

Signed-off-by: "John Greene" <jogreene@redhat.com>
CC: "David S. Miller" <davem@davemloft.net>
CC: "David Woodhouse" <David.Woodhouse@intel.com>
Tested-by: David Woodhouse <David.Woodhouse@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/realtek/8139cp.c