WSL2-Linux-Kernel/drivers/net/wan
Zhengchao Shao 4689bd3a1b net: lapbether: fix issue of invalid opcode in lapbeth_open()
[ Upstream commit 3faf7e14ec ]

If lapb_register() failed when lapb device goes to up for the first time,
the NAPI is not disabled. As a result, the invalid opcode issue is
reported when the lapb device goes to up for the second time.

The stack info is as follows:
[ 1958.311422][T11356] kernel BUG at net/core/dev.c:6442!
[ 1958.312206][T11356] invalid opcode: 0000 [#1] PREEMPT SMP KASAN
[ 1958.315979][T11356] RIP: 0010:napi_enable+0x16a/0x1f0
[ 1958.332310][T11356] Call Trace:
[ 1958.332817][T11356]  <TASK>
[ 1958.336135][T11356]  lapbeth_open+0x18/0x90
[ 1958.337446][T11356]  __dev_open+0x258/0x490
[ 1958.341672][T11356]  __dev_change_flags+0x4d4/0x6a0
[ 1958.345325][T11356]  dev_change_flags+0x93/0x160
[ 1958.346027][T11356]  devinet_ioctl+0x1276/0x1bf0
[ 1958.346738][T11356]  inet_ioctl+0x1c8/0x2d0
[ 1958.349638][T11356]  sock_ioctl+0x5d1/0x750
[ 1958.356059][T11356]  __x64_sys_ioctl+0x3ec/0x1790
[ 1958.365594][T11356]  do_syscall_64+0x35/0x80
[ 1958.366239][T11356]  entry_SYSCALL_64_after_hwframe+0x46/0xb0
[ 1958.377381][T11356]  </TASK>

Fixes: 514e1150da ("net: x25: Queue received packets in the drivers instead of per-CPU queues")
Signed-off-by: Zhengchao Shao <shaozhengchao@huawei.com>
Link: https://lore.kernel.org/r/20221107011445.207372-1-shaozhengchao@huawei.com
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2022-11-16 09:58:19 +01:00
..
lmc net: split out ndo_siowandev ioctl 2021-07-27 20:11:45 +01:00
.gitignore
Kconfig wan: remove sbni/granch driver 2021-08-03 13:05:26 +01:00
Makefile net: wan: wanxl: define CROSS_COMPILE_M68K 2021-09-16 14:08:04 +01:00
c101.c net: split out ndo_siowandev ioctl 2021-07-27 20:11:45 +01:00
cosa.c net: split out ndo_siowandev ioctl 2021-07-27 20:11:45 +01:00
cosa.h
farsync.c net: split out ndo_siowandev ioctl 2021-07-27 20:11:45 +01:00
farsync.h
fsl_ucc_hdlc.c net: split out ndo_siowandev ioctl 2021-07-27 20:11:45 +01:00
fsl_ucc_hdlc.h
hd64570.c net: hd64570: add some required spaces 2021-06-07 12:25:21 -07:00
hd64570.h
hd64572.c net: wan: add necessary () to macro argument 2021-05-21 13:26:41 -07:00
hd64572.h
hdlc.c net: split out ndo_siowandev ioctl 2021-07-27 20:11:45 +01:00
hdlc_cisco.c net: split out ndo_siowandev ioctl 2021-07-27 20:11:45 +01:00
hdlc_fr.c net: split out ndo_siowandev ioctl 2021-07-27 20:11:45 +01:00
hdlc_ppp.c net: split out ndo_siowandev ioctl 2021-07-27 20:11:45 +01:00
hdlc_raw.c net: split out ndo_siowandev ioctl 2021-07-27 20:11:45 +01:00
hdlc_raw_eth.c net: split out ndo_siowandev ioctl 2021-07-27 20:11:45 +01:00
hdlc_x25.c net: split out ndo_siowandev ioctl 2021-07-27 20:11:45 +01:00
hostess_sv11.c wan: hostess_sv11: use module_init/module_exit helpers 2021-08-03 13:05:26 +01:00
ixp4xx_hss.c net: split out ndo_siowandev ioctl 2021-07-27 20:11:45 +01:00
lapbether.c net: lapbether: fix issue of invalid opcode in lapbeth_open() 2022-11-16 09:58:19 +01:00
n2.c net: split out ndo_siowandev ioctl 2021-07-27 20:11:45 +01:00
pc300too.c net: split out ndo_siowandev ioctl 2021-07-27 20:11:45 +01:00
pci200syn.c net: split out ndo_siowandev ioctl 2021-07-27 20:11:45 +01:00
sealevel.c net: split out ndo_siowandev ioctl 2021-07-27 20:11:45 +01:00
slic_ds26522.c
slic_ds26522.h
wanxl.c net: split out ndo_siowandev ioctl 2021-07-27 20:11:45 +01:00
wanxl.h
wanxlfw.S
wanxlfw.inc_shipped
z85230.c net: z85230: remove unnecessary out of memory message 2021-06-15 10:55:18 -07:00
z85230.h net: wan: z85230: drop unused async state 2021-04-07 14:56:01 -07:00