mirror of
https://gitee.com/bianbu-linux/linux-6.6
synced 2025-07-18 01:23:36 -04:00
The forward declaration was introduced with a prototype that does
not match the function definition:
drivers/net/ethernet/amd/xgbe/xgbe-phy-v2.c:2166:13: error: conflicting types for 'xgbe_phy_perform_ratechange' due to enum/integer mismatch; have 'void(struct xgbe_prv_data *, enum xgbe_mb_cmd, enum xgbe_mb_subcmd)' [-Werror=enum-int-mismatch]
2166 | static void xgbe_phy_perform_ratechange(struct xgbe_prv_data *pdata,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/amd/xgbe/xgbe-phy-v2.c:391:13: note: previous declaration of 'xgbe_phy_perform_ratechange' with type 'void(struct xgbe_prv_data *, unsigned int, unsigned int)'
391 | static void xgbe_phy_perform_ratechange(struct xgbe_prv_data *pdata,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
Ideally there should not be any forward declarations here, which
would make it easier to show that there is no unbounded recursion.
I tried fixing this but could not figure out how to avoid the
recursive call.
As a hotfix, address only the broken prototype to fix the build
problem instead.
Fixes:
|
||
---|---|---|
.. | ||
Makefile | ||
xgbe-common.h | ||
xgbe-dcb.c | ||
xgbe-debugfs.c | ||
xgbe-desc.c | ||
xgbe-dev.c | ||
xgbe-drv.c | ||
xgbe-ethtool.c | ||
xgbe-i2c.c | ||
xgbe-main.c | ||
xgbe-mdio.c | ||
xgbe-pci.c | ||
xgbe-phy-v1.c | ||
xgbe-phy-v2.c | ||
xgbe-platform.c | ||
xgbe-ptp.c | ||
xgbe.h |