openwrtv3/target/linux
Pavel Kubelun eb049d3777 net: ar8216: hold ar8xxx_dev_list_lock during use_count--
Import from c3fd96a7b8%5E%21/#F0
Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>

CHROMIUM: drivers: ar8216: hold ar8xxx_dev_list_lock during use_count--

It is possible for the remove() callback to run twice in parallel, which
could result into --use_count returning only 1 in both cases and the
rest of the unregistration path to never be reached.

This case has never been observed in practice, but we will fix
preventively to make the code more robust.

BUG=chrome-os-partner:33096
TEST=none

Change-Id: If09abe27fdb2037f514f8674418bafaab3cbdef6
Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>
Reviewed-on: https://chromium-review.googlesource.com/232870
Reviewed-by: Matthias Kaehlcke <mka@chromium.org>
Reviewed-by: Toshi Kikuchi <toshik@chromium.org>
Tested-by: Toshi Kikuchi <toshik@chromium.org>
2016-12-01 15:47:43 +01:00
..
adm5120 kernel: drop usbdev LED trigger 2016-10-19 12:09:45 +02:00
adm8668 build: fix subtarget descriptions 2016-09-04 13:35:11 +02:00
apm821xx kernel: bump to 4.4.35 2016-11-29 21:12:08 +01:00
ar7 kernel: update kernel 3.18 to version 3.18.43 2016-10-24 20:25:14 +03:00
ar71xx ar71xx: fix syntax error in /lib/ar71xx.sh 2016-11-29 19:53:47 +01:00
arc770 tools: remove old mkdosfs symlink from dosfstools 2016-10-12 11:59:09 +02:00
archs38 tools: remove old mkdosfs symlink from dosfstools 2016-10-12 11:59:09 +02:00
arm64 arm64: boot-wrapper: Add mirror 2016-11-16 10:54:33 +01:00
at91 at91: Remove u-boot from platform images folder 2016-10-06 12:15:13 +02:00
ath25 kernel: update kernel 4.4 to version 4.4.20 2016-09-15 08:10:55 +02:00
au1000 kernel: update kernel 3.18 to version 3.18.43 2016-10-24 20:25:14 +03:00
bcm53xx kernel: bump to 4.4.35 2016-11-29 21:12:08 +01:00
brcm47xx kernel: bump to 4.4.35 2016-11-29 21:12:08 +01:00
brcm63xx brcm63xx: Livebox 1: add userspace board support 2016-11-21 18:40:15 +01:00
brcm2708 kernel: update kernel 4.4 to version 4.4.32 2016-11-16 17:31:29 +01:00
cns3xxx cns3xxx: fix UART resource overlap 2016-11-05 10:18:27 +01:00
gemini gemini: rename config-default to config-4.4 2016-08-24 01:44:05 +03:00
generic net: ar8216: hold ar8xxx_dev_list_lock during use_count-- 2016-12-01 15:47:43 +01:00
imx6 imx6: Add ds1672 RTC to kernel for working hctosys (Gateworks) 2016-10-27 00:34:01 +02:00
ipq806x ipq806x: refactor rpm clock controller patches 2016-12-01 15:47:43 +01:00
ixp4xx kernel: update kernel 3.18 to version 3.18.43 2016-10-24 20:25:14 +03:00
kirkwood kirkwood: fix pogo_e02 LED name 2016-10-26 12:37:46 +02:00
lantiq kernel: bump to 4.4.35 2016-11-29 21:12:08 +01:00
layerscape kernel: bump to 4.4.35 2016-11-29 21:12:08 +01:00
malta malta: enable be64 and le64 subtargets 2016-08-15 15:32:36 +02:00
mcs814x treewide: dts: use C style includes 2016-11-12 21:04:15 +01:00
mediatek kernel: update kernel 4.4 to version 4.4.30 2016-11-02 10:25:44 +01:00
mpc85xx cleanup ucidef_set_interface* usage 2016-09-10 15:32:25 +02:00
mvebu mvebu: fix typo in image metadata support 2016-11-27 15:34:22 +01:00
mxs tools: remove old mkdosfs symlink from dosfstools 2016-10-12 11:59:09 +02:00
octeon octeon: fix feature flag for initramfs support 2016-11-16 23:37:27 +01:00
omap build: fix subtarget descriptions 2016-09-04 13:35:11 +02:00
omap24xx kernel: clean up usb gadget support 2016-09-15 13:11:21 +02:00
orion treewide: remove bad local shell variable declarations 2016-09-24 14:38:20 +02:00
oxnas treewide: dts: use keycode defines from input dt-binding 2016-11-13 07:07:58 +01:00
ppc40x build: fix subtarget descriptions 2016-09-04 13:35:11 +02:00
ppc44x build: fix subtarget descriptions 2016-09-04 13:35:11 +02:00
ramips treewide: fix button keys codes used in dts 2016-11-27 15:34:23 +01:00
rb532 kernel: update kernel 4.1 to version 4.1.34 2016-10-24 20:25:14 +03:00
realview build: fix subtarget descriptions 2016-09-04 13:35:11 +02:00
sunxi sunxi: enable CONFIG_VHOST_NET like on x86 2016-11-24 13:25:16 +01:00
uml uml: clean up the kernel config and add squashfs+ext4/f2fs support 2016-11-24 12:53:18 +01:00
x86 x86: fix GRUB_ROOT for Xen subtarget 2016-11-19 11:45:29 +01:00
xburst use immediate set in target Makefiles 2016-09-10 15:30:38 +02:00
zynq zynq: fix maintainer email address 2016-10-05 01:18:24 +02:00
Makefile