aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/infiniband/hw/qib/qib_sysfs.c
diff options
context:
space:
mode:
authorTodd Rimmer <todd.rimmer@qlogic.com>2012-05-02 14:35:18 -0400
committerRoland Dreier <roland@purestorage.com>2012-05-14 12:38:28 -0700
commit4ccf28a26c981bcc6f938a7ea293a623d2d66d7b (patch)
tree63eb2386d413a526ca8458d6f4508c0562a51cc9 /drivers/infiniband/hw/qib/qib_sysfs.c
parentIB/qib: Optimize pio ack buffer allocation (diff)
downloadlinux-dev-4ccf28a26c981bcc6f938a7ea293a623d2d66d7b.tar.xz
linux-dev-4ccf28a26c981bcc6f938a7ea293a623d2d66d7b.zip
IB/qib: Correct ordering of reregister vs. port active events
When a port first goes active with SMA Set(PortInfo) and reregister bit set, the driver sends up the reregister event followed by a port active event. The problem is that in response to reregister event most apps try to issue a SA query of some sort, but that fails because port is not active. The qib driver needs to a trivial change to correct this behavior. This issue has been there for a while; however the recent serdes work has probably made the delay between the reregister event and the active event larger and hence opened the race far enough so that its being seen more often. The patch also changes the clientrereg local to a u8 and saves off the rereg bit into it. The code following the nested subn_get_portinfo() now restores that bit per o14-12.2.1 with a logical OR from that copy. Reviewed-by: Ram Vepa <ram.vepa@qlogic.com> Signed-off-by: Mike Marciniszyn <mike.marciniszyn@qlogic.com> Signed-off-by: Roland Dreier <roland@purestorage.com>
Diffstat (limited to 'drivers/infiniband/hw/qib/qib_sysfs.c')
0 files changed, 0 insertions, 0 deletions