]> git.openfabrics.org - ~emulex/infiniband.git/commitdiff
caif: Bugfix - XOFF removed channel from caif-mux
authorsjur.brandeland@stericsson.com <sjur.brandeland@stericsson.com>
Wed, 15 Jun 2011 12:38:25 +0000 (12:38 +0000)
committerDavid S. Miller <davem@conan.davemloft.net>
Fri, 17 Jun 2011 03:59:09 +0000 (23:59 -0400)
XOFF was mixed up with DOWN indication, causing causing CAIF channel to be
removed from mux and all incoming traffic to be lost after receiving flow-off.
Fix this by replacing FLOW_OFF with DOWN notification.

Signed-off-by: Sjur Brændeland <sjur.brandeland@stericsson.com>
Signed-off-by: David S. Miller <davem@conan.davemloft.net>
net/caif/cfmuxl.c

index 3a66b8c10e09ab1876e7b678efc65073699342a0..c23979e79dfadce502c5d70927412849b79b868e 100644 (file)
@@ -255,7 +255,7 @@ static void cfmuxl_ctrlcmd(struct cflayer *layr, enum caif_ctrlcmd ctrl,
 
                if (cfsrvl_phyid_match(layer, phyid) && layer->ctrlcmd) {
 
-                       if ((ctrl == _CAIF_CTRLCMD_PHYIF_FLOW_OFF_IND ||
+                       if ((ctrl == _CAIF_CTRLCMD_PHYIF_DOWN_IND ||
                                ctrl == CAIF_CTRLCMD_REMOTE_SHUTDOWN_IND) &&
                                        layer->id != 0) {