]> Pileus Git - ~andy/linux/blobdiff - drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c
bnx2x: VF ndo sanity
[~andy/linux] / drivers / net / ethernet / broadcom / bnx2x / bnx2x_sriov.c
index 2a8ad6d4b5406d19814c66e83df9f7330b90ae1e..f6177baf20b7cdddb112bf5541a94f7845a1fc1a 100644 (file)
@@ -3083,6 +3083,11 @@ void bnx2x_disable_sriov(struct bnx2x *bp)
 static int bnx2x_vf_ndo_sanity(struct bnx2x *bp, int vfidx,
                               struct bnx2x_virtf *vf)
 {
+       if (bp->state != BNX2X_STATE_OPEN) {
+               BNX2X_ERR("vf ndo called though PF is down\n");
+               return -EINVAL;
+       }
+
        if (!IS_SRIOV(bp)) {
                BNX2X_ERR("vf ndo called though sriov is disabled\n");
                return -EINVAL;