scsi: target: cxgbit: add support for IEEE_8021QAZ_APP_SEL_STREAM selector
authorVarun Prakash <varun@chelsio.com>
Mon, 17 Jun 2019 13:17:45 +0000 (18:47 +0530)
committerMartin K. Petersen <martin.petersen@oracle.com>
Mon, 22 Jul 2019 21:04:20 +0000 (17:04 -0400)
IEEE_8021QAZ_APP_SEL_STREAM is a valid selector for iSCSI connections, so
add code to use IEEE_8021QAZ_APP_SEL_STREAM selector to get priority mask.

Signed-off-by: Varun Prakash <varun@chelsio.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/target/iscsi/cxgbit/cxgbit_cm.c
drivers/target/iscsi/cxgbit/cxgbit_main.c

index 22dd4c457d6a8eb8fa579fab49f9a5deea81e4ff..c70caf4ea49012006c3a8ac754ff9e1c16399ec7 100644 (file)
@@ -875,10 +875,12 @@ static u8 cxgbit_get_iscsi_dcb_priority(struct net_device *ndev, u16 local_port)
                return 0;
 
        if (caps & DCB_CAP_DCBX_VER_IEEE) {
-               iscsi_dcb_app.selector = IEEE_8021QAZ_APP_SEL_ANY;
-
+               iscsi_dcb_app.selector = IEEE_8021QAZ_APP_SEL_STREAM;
                ret = dcb_ieee_getapp_mask(ndev, &iscsi_dcb_app);
-
+               if (!ret) {
+                       iscsi_dcb_app.selector = IEEE_8021QAZ_APP_SEL_ANY;
+                       ret = dcb_ieee_getapp_mask(ndev, &iscsi_dcb_app);
+               }
        } else if (caps & DCB_CAP_DCBX_VER_CEE) {
                iscsi_dcb_app.selector = DCB_APP_IDTYPE_PORTNUM;
 
index 343b129c2cfab94a236203d27ca317336d84c960..e877b917c15f59fd6121f1c4dcca420aa2092520 100644 (file)
@@ -589,7 +589,8 @@ static void cxgbit_dcb_workfn(struct work_struct *work)
        iscsi_app = &dcb_work->dcb_app;
 
        if (iscsi_app->dcbx & DCB_CAP_DCBX_VER_IEEE) {
-               if (iscsi_app->app.selector != IEEE_8021QAZ_APP_SEL_ANY)
+               if ((iscsi_app->app.selector != IEEE_8021QAZ_APP_SEL_STREAM) &&
+                   (iscsi_app->app.selector != IEEE_8021QAZ_APP_SEL_ANY))
                        goto out;
 
                priority = iscsi_app->app.priority;