linux/drivers/net/phy
Masahiro Yamada 35b42dce61 net: mdio: unexport __init-annotated mdio_bus_init()
EXPORT_SYMBOL and __init is a bad combination because the .init.text
section is freed up after the initialization. Hence, modules cannot
use symbols annotated __init. The access to a freed symbol may end up
with kernel panic.

modpost used to detect it, but it has been broken for a decade.

Recently, I fixed modpost so it started to warn it again, then this
showed up in linux-next builds.

There are two ways to fix it:

  - Remove __init
  - Remove EXPORT_SYMBOL

I chose the latter for this case because the only in-tree call-site,
drivers/net/phy/phy_device.c is never compiled as modular.
(CONFIG_PHYLIB is boolean)

Fixes: 90eff9096c ("net: phy: Allow splitting MDIO bus/device support from PHYs")
Reported-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
Reviewed-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2022-06-08 10:10:13 -07:00
..
mscc Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2022-03-17 13:56:58 -07:00
adin1100.c net: phy: adin1100: Add SQI support 2022-05-01 17:45:35 +01:00
adin.c net: phy: adin: add support for clock output 2022-05-18 19:58:25 -07:00
amd.c
aquantia_hwmon.c
aquantia_main.c phy: make phy_set_max_speed() *void* 2022-01-31 11:30:56 +00:00
aquantia.h
at803x.c net: phy: at803x: disable WOL at probe 2022-05-30 21:21:25 -07:00
ax88796b.c
bcm7xxx.c net: phy: bcm7xxx: Add EPHY entry for 7712 2021-10-24 13:42:28 +01:00
bcm63xx.c
bcm87xx.c net: phy: bcm87xx: Use mmd helpers 2022-05-02 13:21:38 +02:00
bcm54140.c
bcm84881.c
bcm-cygnus.c
bcm-phy-lib.c
bcm-phy-lib.h
broadcom.c net: phy: broadcom: Fix brcm_fet_config_init() 2022-03-25 16:59:21 -07:00
cicada.c
cortina.c
davicom.c
dp83tc811.c
dp83td510.c net: phy: dp83td510: Add support for the DP83TD510 Ethernet PHY 2022-05-09 12:09:30 +01:00
dp83640_reg.h ptp: dp83640: don't define PAGE0 2021-09-14 20:03:24 -07:00
dp83640.c dp83640: Use generic ptp_msg_is_sync() function 2022-03-07 11:31:34 +00:00
dp83822.c net: phy: DP83822: enable rgmii mode if phy_interface_is_rgmii 2022-05-22 21:46:30 +01:00
dp83848.c
dp83867.c net: phy: dp83867: retrigger SGMII AN when link change 2022-06-06 09:12:18 -07:00
dp83869.c net: phy: add support for TI DP83561-SP phy 2021-11-19 20:13:07 -08:00
et1011c.c
fixed_phy.c net: phy: Directly use ida_alloc()/free() 2022-05-28 12:40:09 +01:00
icplus.c
intel-xway.c net: phy: intel-xway: Add RGMII internal delay configuration 2021-07-20 07:23:16 -07:00
Kconfig net: phy: dp83td510: Add support for the DP83TD510 Ethernet PHY 2022-05-09 12:09:30 +01:00
linkmode.c
lxt.c
Makefile net: phy: dp83td510: Add support for the DP83TD510 Ethernet PHY 2022-05-09 12:09:30 +01:00
marvell10g.c net: phy: marvell10g: fix return value on error 2022-04-26 11:46:18 +02:00
marvell-88x2222.c
marvell.c net: phy: marvell: Add errata section 5.1 for Alaska PHY 2022-05-17 13:45:52 +02:00
mdio_bus.c net: mdio: unexport __init-annotated mdio_bus_init() 2022-06-08 10:10:13 -07:00
mdio_device.c net: mdio: introduce a shutdown method to mdio device drivers 2021-09-19 12:08:37 +01:00
mdio_devres.c
mdio-boardinfo.c
mdio-boardinfo.h
mediatek-ge.c net: phy: mediatek: remove PHY mode check on MT7531 2022-02-15 14:21:01 +00:00
meson-gxl.c net: phy: meson-gxl: improve link-up behavior 2022-03-10 14:57:02 -08:00
micrel.c net: phy: micrel: Use the kszphy probe/suspend/resume 2022-05-16 12:58:10 -07:00
microchip_t1.c net: phy: LAN937x: add interrupt support for link detection 2022-04-26 10:08:59 +02:00
microchip.c net: phy: microchip: add comments for the modified LAN88xx phy ID mask. 2022-05-10 18:57:14 -07:00
mii_timestamper.c
motorcomm.c
mxl-gpy.c net: phy: enhance GPY115 loopback disable function 2021-09-27 13:49:38 +01:00
national.c
nxp-c45-tja11xx.c net: phy: Use netif_rx(). 2022-03-06 11:05:31 +00:00
nxp-tja11xx.c net: phy: nxp-tja11xx: log critical health state 2021-08-12 10:51:45 +01:00
phy_device.c net: phy: Add 10BASE-T1L support in phy-c45 2022-05-01 17:45:35 +01:00
phy_led_triggers.c
phy-c45.c net: phy: export genphy_c45_baset1_read_status() 2022-05-09 12:09:30 +01:00
phy-core.c ethtool: Add 10base-T1L link mode entry 2022-05-01 17:45:35 +01:00
phy.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2022-05-12 16:15:30 -07:00
phylink.c net: phylink: Convert to mdiobus_c45_{read|write} 2022-05-02 13:21:38 +02:00
qsemi.c
realtek.c net: phy: realtek: add support for RTL8365MB-VC internal PHYs 2021-10-18 14:02:56 +01:00
rockchip.c
sfp-bus.c net: sfp: add 2500base-X quirk for Lantech SFP module 2022-03-15 11:41:20 +01:00
sfp.c net: sfp: Add tx-fault workaround for Huawei MA5671A SFP ONT 2022-05-03 16:53:39 -07:00
sfp.h
smsc.c net: phy: smsc: Cope with hot-removal in interrupt handler 2022-05-13 11:35:46 +01:00
spi_ks8995.c spi: make remove callback a void function 2022-02-09 13:00:45 +00:00
ste10Xp.c
swphy.c
swphy.h
teranetics.c
uPD60620.c
vitesse.c
xilinx_gmii2rgmii.c net: phy: gmii2rgmii: Support PHY loopback 2021-08-20 14:31:46 +01:00