Russell King 126d6848ef sfp: fix oops with ethtool -m
If a network interface is created prior to the SFP socket being
available, ethtool can request module information.  This unfortunately
leads to an oops:

Unable to handle kernel NULL pointer dereference at virtual address 00000008
pgd = (ptrval)
[00000008] *pgd=7c400831, *pte=00000000, *ppte=00000000
Internal error: Oops: 17 [#1] SMP ARM
Modules linked in:
CPU: 0 PID: 1480 Comm: ethtool Not tainted 4.19.0-rc3 #138
Hardware name: Broadcom Northstar Plus SoC
PC is at sfp_get_module_info+0x8/0x10
LR is at dev_ethtool+0x218c/0x2afc

Fix this by not filling in the network device's SFP bus pointer until
SFP is fully bound, thereby avoiding the core calling into the SFP bus
code.

Fixes: ce0aa27ff3f6 ("sfp: add sfp-bus to bridge between network devices and sfp cages")
Reported-by: Florian Fainelli <f.fainelli@gmail.com>
Tested-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
2018-09-18 20:14:19 -07:00
..
2018-09-07 10:05:20 +02:00
2018-09-05 09:17:20 -07:00
2018-09-13 19:16:11 -10:00
2018-08-23 13:52:46 -07:00
2018-08-08 15:44:47 +10:00
2018-09-08 15:38:57 -07:00
2018-09-12 19:39:56 -10:00
2018-08-23 13:44:43 -07:00
2018-08-25 14:12:36 -07:00
2018-08-16 12:26:24 -07:00
2018-09-18 20:14:19 -07:00
2018-09-14 13:03:17 -10:00
2018-08-22 14:14:15 -07:00
2018-08-18 11:04:51 -07:00
2018-08-20 11:36:07 +02:00
2018-08-20 15:38:44 -07:00
2018-08-25 14:12:36 -07:00
2018-08-20 16:30:27 -07:00
2018-09-13 16:22:24 -10:00
2018-08-23 14:02:22 -07:00
2018-09-17 22:34:25 +02:00
2018-08-23 13:52:46 -07:00
2018-08-19 09:30:44 -07:00
2018-08-17 11:32:50 -07:00
2018-08-23 15:44:58 -07:00
2018-08-24 08:45:19 -07:00
2018-08-18 11:04:51 -07:00