linux_dsm_epyc7002/drivers/net
Wu Fengguang b320e97240 i825xx: fix paging fault on znet_probe()
In znet_probe(), strncmp() may access beyond 0x100000 and
trigger the below oops in kvm.  Fix it by limiting the loop
under 0x100000-8. I suspect the limit could be further decreased
to 0x100000-sizeof(struct netidblk), however no datasheet at hand..

[    3.744312] BUG: unable to handle kernel paging request at 80100000
[    3.746145] IP: [<8119d12a>] strncmp+0xc/0x20
[    3.747446] *pde = 01d10067 *pte = 00100160
[    3.747493] Oops: 0000 [#1] DEBUG_PAGEALLOC
[    3.747493] Pid: 1, comm: swapper Not tainted 3.6.0-rc1-00018-g57bfc0a #73 Bochs Bochs
[    3.747493] EIP: 0060:[<8119d12a>] EFLAGS: 00010206 CPU: 0
[    3.747493] EIP is at strncmp+0xc/0x20
[    3.747493] EAX: 800fff4e EBX: 00000006 ECX: 00000006 EDX: 814d2bb9
[    3.747493] ESI: 80100000 EDI: 814d2bba EBP: 8e03dfa0 ESP: 8e03df98
[    3.747493]  DS: 007b ES: 007b FS: 0000 GS: 00e0 SS: 0068
[    3.747493] CR0: 8005003b CR2: 80100000 CR3: 016f7000 CR4: 00000690
[    3.747493] DR0: 00000000 DR1: 00000000 DR2: 00000000 DR3: 00000000
[    3.747493] DR6: ffff0ff0 DR7: 00000400
[    3.747493] Process swapper (pid: 1, ti=8e03c000 task=8e040000 task.ti=8e03c000)
[    3.747493] Stack:
[    3.747493]  800fffff 00000000 8e03dfb4 816a1376 00000006 816a134a 00000000 8e03dfd0
[    3.747493]  816819b5 816ed1c0 8e03dfe4 00000006 00000123 816ed604 8e03dfe4 81681b29
[    3.747493]  00000000 81681a5b 00000000 00000000 8134e542 00000000 00000000 00000000
[    3.747493] Call Trace:
[    3.747493]  [<816a1376>] znet_probe+0x2c/0x26b
[    3.747493]  [<816a134a>] ? dnet_driver_init+0xf/0xf
[    3.747493]  [<816819b5>] do_one_initcall+0x6a/0x110
[    3.747493]  [<81681b29>] kernel_init+0xce/0x14b

Signed-off-by: Fengguang Wu <fengguang.wu@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2012-09-04 15:11:56 -04:00
..
appletalk net: Use PTR_RET rather than if(IS_ERR(.. [1] 2012-08-06 13:30:02 -07:00
arcnet
bonding netpoll: check netpoll tx status on the right device 2012-08-14 14:33:32 -07:00
caif caif: fix NULL pointer check 2012-07-24 13:54:16 -07:00
can can: sja1000_platform: fix wrong flag IRQF_SHARED for interrupt sharing 2012-08-24 10:54:05 +02:00
cris cris: fix eth_v10.c build error 2012-08-03 20:32:31 -07:00
dsa
ethernet i825xx: fix paging fault on znet_probe() 2012-09-04 15:11:56 -04:00
fddi fddi: 64 bit bug in smt_add_para() 2012-09-01 22:44:13 -04:00
hamradio drivers: net: Remove casts to same type 2012-06-06 09:31:33 -07:00
hippi
hyperv hyperv: Move wait completion msg code into rndis_filter_halt_device() 2012-08-03 16:51:11 -07:00
irda drivers/net/irda: fix error return code 2012-08-20 02:33:21 -07:00
phy netdev/phy: skip disabled mdio-mux nodes 2012-08-20 02:16:00 -07:00
plip
ppp pptp: lookup route with the proper net namespace 2012-08-08 15:57:10 -07:00
slip drivers: net: Remove casts to same type 2012-06-06 09:31:33 -07:00
team netpoll: use GFP_ATOMIC in slave_enable_netpoll() and __netpoll_setup() 2012-08-14 14:33:30 -07:00
usb net: usbnet: fix softirq storm on suspend 2012-09-03 13:49:00 -04:00
vmxnet3 vmxnet3: Fix race between dev_open() and register_netdev() 2012-08-15 15:10:42 -07:00
wan drivers/net/wan/dscc4.c: fix error return code 2012-08-20 02:33:21 -07:00
wimax drivers/net/wimax/i2400m/fw.c: fix error return code 2012-08-20 02:33:21 -07:00
wireless Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless into for-davem 2012-08-24 11:16:58 -04:00
xen-netback xen/netback: only non-freed SKB is queued into tx_queue 2012-06-29 00:50:20 -07:00
dummy.c net: fix race condition in several drivers when reading stats 2012-07-22 12:12:32 -07:00
eql.c
ifb.c
Kconfig
LICENSE.SRC
loopback.c net: fix race condition in several drivers when reading stats 2012-07-22 12:12:32 -07:00
macvlan.c
macvtap.c macvtap: rcu_dereference outside read-lock section 2012-08-12 13:40:48 -07:00
Makefile
mdio.c
mii.c
netconsole.c netconsole: remove a redundant netconsole_target_put() 2012-08-20 02:59:49 -07:00
rionet.c
sb1000.c
Space.c
sungem_phy.c
tun.c tun: don't zeroize sock->file on detach 2012-08-09 16:16:14 -07:00
veth.c
virtio_net.c net: fix race condition in several drivers when reading stats 2012-07-22 12:12:32 -07:00
xen-netfront.c xen-netfront: use __pskb_pull_tail to ensure linear area is big enough on RX 2012-08-30 12:24:04 -04:00