From 09555826e9737cbe94be99331934d2e6a1e6c8be Mon Sep 17 00:00:00 2001 From: Michael Brown Date: Thu, 16 Sep 2010 03:23:45 +0100 Subject: [infiniband] Always call ib_link_state_changed() in ib_smc_update() ib_smc_update() potentially updates the Infiniband port state, and so should almost always be followed by a call to ib_link_state_changed(). The one exception is the call made to ib_smc_update() before the device is registered. Fix by removing explicit calls to ib_link_state_changed() from drivers using ib_smc_update(), including a call to ib_link_state_changed() within ib_smc_update(), and creating a separate ib_smc_init() for use prior to device registration. Signed-off-by: Michael Brown --- src/include/ipxe/ib_smc.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/include') diff --git a/src/include/ipxe/ib_smc.h b/src/include/ipxe/ib_smc.h index d16a37fa3..259d2cde1 100644 --- a/src/include/ipxe/ib_smc.h +++ b/src/include/ipxe/ib_smc.h @@ -14,7 +14,7 @@ FILE_LICENCE ( GPL2_OR_LATER ); typedef int ( * ib_local_mad_t ) ( struct ib_device *ibdev, union ib_mad *mad ); -extern int ib_smc_update ( struct ib_device *ibdev, - ib_local_mad_t local_mad ); +extern int ib_smc_init ( struct ib_device *ibdev, ib_local_mad_t local_mad ); +extern int ib_smc_update ( struct ib_device *ibdev, ib_local_mad_t local_mad ); #endif /* _IPXE_IB_SMC_H */ -- cgit v1.2.3-55-g7522