b44: fix IFF_ALLMULTI handling of CAM slots
[powerpc.git] / include / rdma / ib_verbs.h
index 3c2e105..765589f 100644 (file)
@@ -45,6 +45,7 @@
 #include <linux/device.h>
 #include <linux/mm.h>
 #include <linux/dma-mapping.h>
+#include <linux/kref.h>
 
 #include <asm/atomic.h>
 #include <asm/scatterlist.h>
@@ -419,8 +420,8 @@ struct ib_wc {
        enum ib_wc_opcode       opcode;
        u32                     vendor_err;
        u32                     byte_len;
+       struct ib_qp           *qp;
        __be32                  imm_data;
-       u32                     qp_num;
        u32                     src_qp;
        int                     wc_flags;
        u16                     pkey_index;
@@ -1639,7 +1640,14 @@ static inline void *ib_dma_alloc_coherent(struct ib_device *dev,
 {
        if (dev->dma_ops)
                return dev->dma_ops->alloc_coherent(dev, size, dma_handle, flag);
-       return dma_alloc_coherent(dev->dma_device, size, dma_handle, flag);
+       else {
+               dma_addr_t handle;
+               void *ret;
+
+               ret = dma_alloc_coherent(dev->dma_device, size, &handle, flag);
+               *dma_handle = handle;
+               return ret;
+       }
 }
 
 /**