rdma: add rdma_create_v4 that handles flags properly
[vpp.git] / src / plugins / rdma / format.c
index aada52a..a999460 100644 (file)
@@ -58,13 +58,13 @@ format_rdma_bit_flag (u8 * s, va_list * args)
 
   while (flags)
     {
-      if ((flags & (1 << i)))
+      if ((flags & ((u64) 1 << i)))
        {
          if (i < n_strs && strs[i] != 0)
            s = format (s, " %s", strs[i]);
          else
            s = format (s, " unknown(%u)", i);
-         flags ^= 1 << i;
+         flags ^= (u64) 1 << i;
        }
       i++;
     }
@@ -122,8 +122,8 @@ format_rdma_device (u8 * s, va_list * args)
              format_vlib_pci_addr, &rd->pci->addr);
   if ((d = vlib_pci_get_device_info (vm, &rd->pci->addr, 0)))
     {
-      s = format (s, "%Uproduct name: %s\n", format_white_space, indent,
-                 d->product_name ? (char *) d->product_name : "");
+      s = format (s, "%Uproduct name: %v\n", format_white_space, indent,
+                 d->product_name);
       s = format (s, "%Upart number: %U\n", format_white_space, indent,
                  format_vlib_pci_vpd, d->vpd_r, "PN");
       s = format (s, "%Urevision: %U\n", format_white_space, indent,
@@ -281,7 +281,7 @@ format_rdma_rxq (u8 * s, va_list * args)
 
   if (rd->flags & RDMA_DEVICE_F_MLX5DV)
     {
-      u32 next_cqe_index = rxq->cq_ci & (rxq->size - 1);
+      u32 next_cqe_index = rxq->cq_ci & ((1 << rxq->log2_cq_size) - 1);
       s = format (s, "\n%Uwq: stride %u wqe-cnt %u",
                  format_white_space, indent + 2, rxq->wq_stride,
                  rxq->wqe_cnt);
@@ -292,9 +292,8 @@ format_rdma_rxq (u8 * s, va_list * args)
                  next_cqe_index);
       s = format (s, "\n%U%U", format_white_space, indent + 6,
                  format_mlx5_cqe_rx, rxq->cqes + next_cqe_index);
-      s = format (s, "\n%U%U", format_white_space, indent + 6,
-                 format_hexdump, rxq->cqes + next_cqe_index,
-                 sizeof (mlx5dv_cqe_t));
+      s = format (s, "\n%U%U", format_white_space, indent + 6, format_hexdump,
+                 rxq->cqes + next_cqe_index, (u32) sizeof (mlx5dv_cqe_t));
     }
 
   return s;