Merge tag 'rdma-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland...
authorLinus Torvalds <torvalds@linux-foundation.org>
Fri, 8 Feb 2013 01:15:14 +0000 (12:15 +1100)
committerLinus Torvalds <torvalds@linux-foundation.org>
Fri, 8 Feb 2013 01:15:14 +0000 (12:15 +1100)
Pull IB regression fixes from Roland Dreier:

 - Fix mlx4 VFs not working on old guests because of 64B CQE changes

 - Fix ill-considered sparse fix for qib

 - Fix IPoIB crash due to skb double destruct introduced in 3.8-rc1

* tag 'rdma-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband:
  IB/qib: Fix for broken sparse warning fix
  mlx4_core: Fix advertisement of wrong PF context behaviour
  IPoIB: Fix crash due to skb double destruct

1  2 
drivers/net/ethernet/mellanox/mlx4/main.c

index a6542d75374cdce3f7a17c21f7022fadff109850,9a84c75e9e3fdf5dd9699723974ebf9f84f268db..5163af314990d2793d529b7db24e752490eb9645
@@@ -380,7 -380,7 +380,7 @@@ static int mlx4_dev_cap(struct mlx4_de
                }
        }
  
-       if ((dev_cap->flags &
+       if ((dev->caps.flags &
            (MLX4_DEV_CAP_FLAG_64B_CQE | MLX4_DEV_CAP_FLAG_64B_EQE)) &&
            mlx4_is_master(dev))
                dev->caps.function_caps |= MLX4_FUNC_CAP_64B_EQE_CQE;
@@@ -1790,8 -1790,15 +1790,8 @@@ static void mlx4_enable_msi_x(struct ml
        int i;
  
        if (msi_x) {
 -              /* In multifunction mode each function gets 2 msi-X vectors
 -               * one for data path completions anf the other for asynch events
 -               * or command completions */
 -              if (mlx4_is_mfunc(dev)) {
 -                      nreq = 2;
 -              } else {
 -                      nreq = min_t(int, dev->caps.num_eqs -
 -                                   dev->caps.reserved_eqs, nreq);
 -              }
 +              nreq = min_t(int, dev->caps.num_eqs - dev->caps.reserved_eqs,
 +                           nreq);
  
                entries = kcalloc(nreq, sizeof *entries, GFP_KERNEL);
                if (!entries)