During initialization of some variants of 82571EB there is a NULL pointer deref when accessing the check_reset_block() PHY operation.
Fix it by checking for NULL-ness explicitely. Signed-off-by: Holger Eitzenberger <[email protected]> Index: e1000e-1.11.3/src/netdev.c =================================================================== --- e1000e-1.11.3.orig/src/netdev.c +++ e1000e-1.11.3/src/netdev.c @@ -7142,7 +7142,7 @@ static int __devinit e1000_probe(struct adapter->hw.phy.ms_type = e1000_ms_hw_default; } - if (hw->phy.ops.check_reset_block(hw)) + if (hw->phy.ops.check_reset_block && hw->phy.ops.check_reset_block(hw)) e_info("PHY reset is blocked due to SOL/IDER session.\n"); /* Set initial default active device features */ Index: e1000e-1.11.3/src/mac.c =================================================================== --- e1000e-1.11.3.orig/src/mac.c +++ e1000e-1.11.3/src/mac.c @@ -750,7 +750,7 @@ s32 e1000e_setup_link_generic(struct e10 * In the case of the phy reset being blocked, we already have a link. * We do not need to set it up again. */ - if (hw->phy.ops.check_reset_block(hw)) + if (hw->phy.ops.check_reset_block && hw->phy.ops.check_reset_block(hw)) return 0; /* -- ------------------------------------------------------------------------------ Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ _______________________________________________ E1000-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/e1000-devel To learn more about Intel® Ethernet, visit http://communities.intel.com/community/wired
