| /linux/drivers/infiniband/core/ |
| H A D | sysfs.c | 66 struct ib_device *ibdev; member 78 ssize_t (*show)(struct ib_device *ibdev, struct rdma_hw_stats *stats, 80 ssize_t (*store)(struct ib_device *ibdev, struct rdma_hw_stats *stats, 87 ssize_t (*show)(struct ib_device *ibdev, struct rdma_hw_stats *stats, 89 ssize_t (*store)(struct ib_device *ibdev, struct rdma_hw_stats *stats, 115 return port_attr->show(p->ibdev, p->port_num, port_attr, buf); in port_attr_show() 128 return port_attr->store(p->ibdev, p->port_num, port_attr, buf, count); in port_attr_store() 137 return port->ibdev; in ib_port_sysfs_get_ibdev_kobj() 151 struct ib_device *ibdev = container_of(dev, struct ib_device, dev); in hw_stat_device_show() local 153 return stat_attr->show(ibdev, ibdev->hw_stats_data->stats, in hw_stat_device_show() [all …]
|
| H A D | umem_odp.c | 61 struct ib_device *dev = umem_odp->umem.ibdev; in ib_init_umem_odp() 147 umem->ibdev = device; in ib_umem_odp_alloc_implicit() 188 umem->ibdev = root->umem.ibdev; in ib_umem_odp_alloc_child() 248 umem_odp->umem.ibdev = device; in ib_umem_odp_get() 276 struct ib_device *dev = umem_odp->umem.ibdev; in ib_umem_odp_free() 411 ibdev_dbg(umem_odp->umem.ibdev, in ib_umem_odp_map_dma_and_lock() 435 struct ib_device *dev = umem_odp->umem.ibdev; in ib_umem_odp_unmap_dma_pages()
|
| /linux/drivers/infiniband/hw/irdma/ |
| H A D | i40iw_if.c | 21 struct ib_device *ibdev; in i40iw_l2param_change() local 23 ibdev = ib_device_get_by_netdev(cdev_info->netdev, RDMA_DRIVER_IRDMA); in i40iw_l2param_change() 24 if (!ibdev) in i40iw_l2param_change() 27 iwdev = to_iwdev(ibdev); in i40iw_l2param_change() 34 ib_device_put(ibdev); in i40iw_l2param_change() 50 struct ib_device *ibdev; in i40iw_close() local 52 ibdev = ib_device_get_by_netdev(cdev_info->netdev, RDMA_DRIVER_IRDMA); in i40iw_close() 53 if (WARN_ON(!ibdev)) in i40iw_close() 56 iwdev = to_iwdev(ibdev); in i40iw_close() 62 ib_unregister_device_and_put(ibdev); in i40iw_close() [all …]
|
| H A D | icrdma_if.c | 51 ibdev_dbg(&iwdev->ibdev, "CLNT: new MTU = %d\n", iwdev->netdev->mtu); in icrdma_iidc_event_handler() 70 ibdev_dbg(&iwdev->ibdev, "CLNT: TC Change\n"); in icrdma_iidc_event_handler() 78 ibdev_warn(&iwdev->ibdev, "ICE OICR event notification: oicr = 0x%08x\n", in icrdma_iidc_event_handler() 86 ibdev_err(&iwdev->ibdev, "critical PE Error, GLPE_CRITERR=0x%08x\n", in icrdma_iidc_event_handler() 90 ibdev_warn(&iwdev->ibdev, "Q1 Resource Check\n"); in icrdma_iidc_event_handler() 94 ibdev_err(&iwdev->ibdev, "HMC Error\n"); in icrdma_iidc_event_handler() 98 ibdev_err(&iwdev->ibdev, "PE Push Error\n"); in icrdma_iidc_event_handler() 124 ibdev_dbg(&iwdev->ibdev, "WS: LAN alloc_res for rdma qset failed.\n"); in icrdma_lan_register_qset() 152 ibdev_dbg(&iwdev->ibdev, "WS: LAN free_res for rdma qset failed.\n"); in icrdma_lan_unregister_qset() 161 ibdev_warn(&rf->iwdev->ibdev, "Requesting a reset\n"); in icrdma_request_reset() [all …]
|
| H A D | cm.c | 170 ibdev_dbg(&cm_node->iwdev->ibdev, in irdma_send_cm_event() 251 ibdev_dbg(&cm_node->iwdev->ibdev, in irdma_create_event() 317 ibdev_dbg(&cm_node->iwdev->ibdev, "CM: AH invalid\n"); in irdma_form_ah_cm_frame() 323 ibdev_dbg(&cm_node->iwdev->ibdev, "CM: SQ buf NULL\n"); in irdma_form_ah_cm_frame() 604 ibdev_dbg(&cm_node->iwdev->ibdev, in irdma_send_reset() 626 ibdev_dbg(&cm_node->iwdev->ibdev, in irdma_active_open_err() 647 ibdev_dbg(&cm_node->iwdev->ibdev, "CM: cm_node=%p state =%d\n", in irdma_passive_open_err() 707 ibdev_dbg(&cm_node->iwdev->ibdev, in irdma_process_options() 727 ibdev_dbg(&cm_node->iwdev->ibdev, in irdma_process_options() 758 ibdev_dbg(&cm_node->iwdev->ibdev, in irdma_handle_tcp_options() [all …]
|
| H A D | verbs.c | 11 static int irdma_query_device(struct ib_device *ibdev, in irdma_query_device() argument 15 struct irdma_device *iwdev = to_iwdev(ibdev); in irdma_query_device() 53 if (rdma_protocol_roce(ibdev, 1)) { in irdma_query_device() 88 static int irdma_query_port(struct ib_device *ibdev, u32 port, in irdma_query_port() argument 91 struct irdma_device *iwdev = to_iwdev(ibdev); in irdma_query_port() 110 ib_get_eth_speed(ibdev, port, &props->active_speed, in irdma_query_port() 113 if (rdma_protocol_roce(ibdev, 1)) { in irdma_query_port() 203 ibdev_dbg(&ucontext->iwdev->ibdev, in irdma_mmap() 210 ibdev_dbg(&ucontext->iwdev->ibdev, in irdma_mmap() 233 ibdev_dbg(&ucontext->iwdev->ibdev, in irdma_mmap() [all …]
|
| /linux/net/smc/ |
| H A D | smc_pnet.c | 105 struct smc_ib_device *ibdev; in smc_pnet_remove_by_pnetid() local 143 list_for_each_entry(ibdev, &smc_ib_devices.list, list) { in smc_pnet_remove_by_pnetid() 145 if (ibdev->pnetid_by_user[ibport] && in smc_pnet_remove_by_pnetid() 148 ibdev->pnetid[ibport]))) { in smc_pnet_remove_by_pnetid() 152 ibdev->ibdev->name, in smc_pnet_remove_by_pnetid() 154 ibdev->pnetid[ibport]); in smc_pnet_remove_by_pnetid() 155 memset(ibdev->pnetid[ibport], 0, in smc_pnet_remove_by_pnetid() 157 ibdev->pnetid_by_user[ibport] = false; in smc_pnet_remove_by_pnetid() 310 struct smc_ib_device *ibdev; in smc_pnet_find_ib() local 313 list_for_each_entry(ibdev, &smc_ib_devices.list, list) { in smc_pnet_find_ib() [all …]
|
| H A D | smc_ib.c | 160 attr = rdma_get_gid_attr(smcibdev->ibdev, ibport, 0); in smc_ib_fill_mac() 283 attr = rdma_get_gid_attr(smcibdev->ibdev, ibport, i); in smc_ib_determine_gid() 315 attr = rdma_get_gid_attr(smcibdev->ibdev, ibport, i); in smc_ib_check_link_gid() 364 rc = ib_query_port(smcibdev->ibdev, ibport, in smc_ib_remember_port_attr() 462 lnk->roce_pd = ib_alloc_pd(lnk->smcibdev->ibdev, 0); in smc_ib_create_protection_domain() 497 struct ib_device *ibdev, in smc_nl_handle_dev_port() argument 575 if (smcibdev->ibdev->dev.parent) { in smc_nl_handle_smcr_dev() 577 pci_dev = to_pci_dev(smcibdev->ibdev->dev.parent); in smc_nl_handle_smcr_dev() 582 snprintf(smc_ibname, sizeof(smc_ibname), "%s", smcibdev->ibdev->name); in smc_nl_handle_smcr_dev() 586 if (!rdma_is_port_valid(smcibdev->ibdev, i)) in smc_nl_handle_smcr_dev() [all …]
|
| H A D | smc_wr.c | 638 struct ib_device *ibdev; in smc_wr_free_link() local 642 ibdev = lnk->smcibdev->ibdev; in smc_wr_free_link() 657 ib_dma_unmap_single(ibdev, lnk->wr_rx_dma_addr, in smc_wr_free_link() 663 ib_dma_unmap_single(ibdev, lnk->wr_rx_v2_dma_addr, in smc_wr_free_link() 669 ib_dma_unmap_single(ibdev, lnk->wr_tx_dma_addr, in smc_wr_free_link() 675 ib_dma_unmap_single(ibdev, lnk->wr_tx_v2_dma_addr, in smc_wr_free_link() 857 struct ib_device *ibdev = lnk->smcibdev->ibdev; in smc_wr_create_link() local 863 ibdev, lnk->wr_rx_bufs, lnk->wr_rx_buflen * lnk->wr_rx_cnt, in smc_wr_create_link() 865 if (ib_dma_mapping_error(ibdev, lnk->wr_rx_dma_addr)) { in smc_wr_create_link() 873 ib_dma_map_single(ibdev, lnk->lgr->wr_rx_buf_v2, in smc_wr_create_link() [all …]
|
| H A D | smc_ib.h | 37 struct ib_device *ibdev; member 74 if (smcibdev && smcibdev->ibdev) in smc_ib_net() 75 return read_pnet(&smcibdev->ibdev->coredev.rdma_net); in smc_ib_net()
|
| /linux/drivers/infiniband/hw/mlx4/ |
| H A D | cm.c | 145 static union ib_gid gid_from_req_msg(struct ib_device *ibdev, struct ib_mad *mad) in gid_from_req_msg() argument 154 id_map_find_by_sl_id(struct ib_device *ibdev, u32 slave_id, u32 sl_cm_id) in id_map_find_by_sl_id() argument 156 struct rb_root *sl_id_map = &to_mdev(ibdev)->sriov.sl_id_map; in id_map_find_by_sl_id() 199 static void sl_id_map_add(struct ib_device *ibdev, struct id_map_entry *new) in sl_id_map_add() argument 201 struct rb_root *sl_id_map = &to_mdev(ibdev)->sriov.sl_id_map; in sl_id_map_add() 207 ent = id_map_find_by_sl_id(ibdev, slave_id, sl_cm_id); in sl_id_map_add() 232 id_map_alloc(struct ib_device *ibdev, int slave_id, u32 sl_cm_id) in id_map_alloc() argument 236 struct mlx4_ib_sriov *sriov = &to_mdev(ibdev)->sriov; in id_map_alloc() 245 ent->dev = to_mdev(ibdev); in id_map_alloc() 252 sl_id_map_add(ibdev, ent); in id_map_alloc() [all …]
|
| H A D | mad.c | 220 static void smp_snoop(struct ib_device *ibdev, u32 port_num, in smp_snoop() argument 230 struct mlx4_ib_dev *dev = to_mdev(ibdev); in smp_snoop() 417 static int mlx4_ib_demux_sa_handler(struct ib_device *ibdev, int port, int slave, in mlx4_ib_demux_sa_handler() argument 425 ret = mlx4_ib_mcg_demux_handler(ibdev, port, slave, sa_mad); in mlx4_ib_demux_sa_handler() 433 int mlx4_ib_find_real_gid(struct ib_device *ibdev, u32 port, __be64 guid) in mlx4_ib_find_real_gid() argument 435 struct mlx4_ib_dev *dev = to_mdev(ibdev); in mlx4_ib_find_real_gid() 682 static int mlx4_ib_demux_mad(struct ib_device *ibdev, u32 port, in mlx4_ib_demux_mad() argument 686 struct mlx4_ib_dev *dev = to_mdev(ibdev); in mlx4_ib_demux_mad() 692 if (rdma_port_get_link_layer(ibdev, port) == IB_LINK_LAYER_INFINIBAND) in mlx4_ib_demux_mad() 704 mlx4_ib_warn(ibdev, "RoCE grh not present.\n"); in mlx4_ib_demux_mad() [all …]
|
| /linux/drivers/infiniband/hw/hfi1/ |
| H A D | sysfs.c | 16 struct ib_device *ibdev = ib_port_sysfs_get_ibdev_kobj(kobj, &port_num); in hfi1_get_pportdata_kobj() local 17 struct hfi1_devdata *dd = dd_from_ibdev(ibdev); in hfi1_get_pportdata_kobj() 104 static ssize_t cc_prescan_show(struct ib_device *ibdev, u32 port_num, in cc_prescan_show() argument 107 struct hfi1_devdata *dd = dd_from_ibdev(ibdev); in cc_prescan_show() 113 static ssize_t cc_prescan_store(struct ib_device *ibdev, u32 port_num, in cc_prescan_store() argument 117 struct hfi1_devdata *dd = dd_from_ibdev(ibdev); in cc_prescan_store() 146 static ssize_t sc2vl_attr_show(struct ib_device *ibdev, u32 port_num, in sc2vl_attr_show() argument 151 struct hfi1_devdata *dd = dd_from_ibdev(ibdev); in sc2vl_attr_show() 243 static ssize_t sl2sc_attr_show(struct ib_device *ibdev, u32 port_num, in sl2sc_attr_show() argument 248 struct hfi1_devdata *dd = dd_from_ibdev(ibdev); in sl2sc_attr_show() [all …]
|
| /linux/drivers/infiniband/hw/mthca/ |
| H A D | mthca_mad.c | 107 static void smp_snoop(struct ib_device *ibdev, in smp_snoop() argument 122 mthca_update_rate(to_mdev(ibdev), port_num); in smp_snoop() 123 update_sm_ah(to_mdev(ibdev), port_num, in smp_snoop() 127 event.device = ibdev; in smp_snoop() 142 event.device = ibdev; in smp_snoop() 199 int mthca_process_mad(struct ib_device *ibdev, int mad_flags, u32 port_num, in mthca_process_mad() argument 211 forward_trap(to_mdev(ibdev), port_num, in); in mthca_process_mad() 248 !ib_query_port(ibdev, port_num, &pattr)) in mthca_process_mad() 251 err = mthca_MAD_IFC(to_mdev(ibdev), mad_flags & IB_MAD_IGNORE_MKEY, in mthca_process_mad() 257 mthca_err(to_mdev(ibdev), "MAD_IFC returned %d\n", err); in mthca_process_mad() [all …]
|
| /linux/drivers/infiniband/hw/bng_re/ |
| H A D | bng_dev.c | 29 rdev = ib_alloc_device(bng_re_dev, ibdev); in bng_re_dev_add() 131 ibdev_err(&rdev->ibdev, "Failed to free HW ring:%d :%#x", in bng_re_net_ring_free() 183 ibdev_err(&rdev->ibdev, "Failed to free HW stats context %#x", in bng_re_stats_ctx_free() 231 ibdev_err(&rdev->ibdev, "Failed to query HW version, rc = 0x%x", in bng_re_query_hwrm_version() 259 ibdev_warn(&rdev->ibdev, in bng_re_dev_uninit() 288 ibdev_err(&rdev->ibdev, in bng_re_dev_init() 296 ibdev_err(&rdev->ibdev, in bng_re_dev_init() 302 ibdev_dbg(&rdev->ibdev, "Got %d MSI-X vectors\n", in bng_re_dev_init() 307 ibdev_err(&rdev->ibdev, "Failed to get chip context\n"); in bng_re_dev_init() 317 ibdev_err(&rdev->ibdev, in bng_re_dev_init() [all …]
|
| /linux/drivers/infiniband/hw/qedr/ |
| H A D | main.c | 61 ibev.device = &dev->ibdev; in qedr_ib_dispatch_event() 74 static void qedr_get_dev_fw_str(struct ib_device *ibdev, char *str) in qedr_get_dev_fw_str() argument 76 struct qedr_dev *qedr = get_qedr_dev(ibdev); in qedr_get_dev_fw_str() 84 static int qedr_roce_port_immutable(struct ib_device *ibdev, u32 port_num, in qedr_roce_port_immutable() argument 90 err = qedr_query_port(ibdev, port_num, &attr); in qedr_roce_port_immutable() 103 static int qedr_iw_port_immutable(struct ib_device *ibdev, u32 port_num, in qedr_iw_port_immutable() argument 109 err = qedr_query_port(ibdev, port_num, &attr); in qedr_iw_port_immutable() 125 rdma_device_to_drv_device(device, struct qedr_dev, ibdev); in hw_rev_show() 135 rdma_device_to_drv_device(device, struct qedr_dev, ibdev); in hca_type_show() 138 rdma_protocol_iwarp(&dev->ibdev, 1) ? "iWARP" : in hca_type_show() [all …]
|
| /linux/drivers/infiniband/hw/ionic/ |
| H A D | ionic_admin.c | 45 ibdev_err(&dev->ibdev, "admin command timed out, aq %d after: %ums\n", in ionic_admin_timedout() 52 ibdev_warn(&dev->ibdev, "admin pos %u (last posted)\n", pos); in ionic_admin_timedout() 134 ibdev_warn_ratelimited(&dev->ibdev, in ionic_admin_poll_locked() 140 ibdev_warn_ratelimited(&dev->ibdev, in ionic_admin_poll_locked() 146 ibdev_warn_ratelimited(&dev->ibdev, in ionic_admin_poll_locked() 154 ibdev_warn_ratelimited(&dev->ibdev, in ionic_admin_poll_locked() 233 ibdev_dbg(&dev->ibdev, "post admin prod %u (%u strides)\n", in ionic_admin_poll_locked() 291 ibdev_dbg(&dev->ibdev, in ionic_admin_dwork() 299 ibdev_dbg(&dev->ibdev, "no progress after %ums\n", in ionic_admin_dwork() 430 ibdev_warn(&dev->ibdev, "wait status %d\n", rc); in ionic_admin_wait() [all …]
|
| H A D | ionic_hw_stats.c | 183 static struct rdma_hw_stats *ionic_alloc_hw_stats(struct ib_device *ibdev, in ionic_alloc_hw_stats() argument 186 struct ionic_ibdev *dev = to_ionic_ibdev(ibdev); in ionic_alloc_hw_stats() 196 static int ionic_get_hw_stats(struct ib_device *ibdev, in ionic_get_hw_stats() argument 200 struct ionic_ibdev *dev = to_ionic_ibdev(ibdev); in ionic_get_hw_stats() 316 static int ionic_get_qp_stats(struct ib_device *ibdev, in ionic_get_qp_stats() argument 320 struct ionic_ibdev *dev = to_ionic_ibdev(ibdev); in ionic_get_qp_stats() 443 ibdev_dbg(&dev->ibdev, "Failed to init hw stats\n"); in ionic_stats_init() 445 ib_set_device_ops(&dev->ibdev, &ionic_hw_stats_ops); in ionic_stats_init() 455 ibdev_dbg(&dev->ibdev, "Failed to init counter stats\n"); in ionic_stats_init() 463 ib_set_device_ops(&dev->ibdev, &ionic_counter_stats_ops); in ionic_stats_init()
|
| /linux/drivers/infiniband/hw/mlx5/ |
| H A D | mad.c | 300 int mlx5_ib_process_mad(struct ib_device *ibdev, int mad_flags, u32 port_num, in mlx5_ib_process_mad() argument 305 struct mlx5_ib_dev *dev = to_mdev(ibdev); in mlx5_ib_process_mad() 346 err = mlx5_MAD_IFC(to_mdev(ibdev), mad_flags & IB_MAD_IGNORE_MKEY, in mlx5_ib_process_mad() 392 static int mlx5_query_mad_ifc_smp_attr_node_info(struct ib_device *ibdev, in mlx5_query_mad_ifc_smp_attr_node_info() argument 405 err = mlx5_MAD_IFC(to_mdev(ibdev), 1, 1, 1, NULL, NULL, in_mad, in mlx5_query_mad_ifc_smp_attr_node_info() 412 int mlx5_query_mad_ifc_system_image_guid(struct ib_device *ibdev, in mlx5_query_mad_ifc_system_image_guid() argument 422 err = mlx5_query_mad_ifc_smp_attr_node_info(ibdev, out_mad); in mlx5_query_mad_ifc_system_image_guid() 434 int mlx5_query_mad_ifc_max_pkeys(struct ib_device *ibdev, in mlx5_query_mad_ifc_max_pkeys() argument 444 err = mlx5_query_mad_ifc_smp_attr_node_info(ibdev, out_mad); in mlx5_query_mad_ifc_max_pkeys() 456 int mlx5_query_mad_ifc_vendor_id(struct ib_device *ibdev, in mlx5_query_mad_ifc_vendor_id() argument [all …]
|
| H A D | data_direct.h | 18 int mlx5_data_direct_ib_reg(struct mlx5_ib_dev *ibdev, char *vuid); 19 void mlx5_data_direct_ib_unreg(struct mlx5_ib_dev *ibdev);
|
| /linux/drivers/infiniband/sw/rdmavt/ |
| H A D | ah.c | 20 int rvt_check_ah(struct ib_device *ibdev, in rvt_check_ah() argument 26 struct rvt_dev_info *rdi = ib_to_rvt(ibdev); in rvt_check_ah() 30 err = ib_query_port(ibdev, port_num, &port_attr); in rvt_check_ah() 34 port_num > ibdev->phys_port_cnt) in rvt_check_ah() 43 return rdi->driver_f.check_ah(ibdev, ah_attr); in rvt_check_ah()
|
| /linux/drivers/infiniband/hw/usnic/ |
| H A D | usnic_ib_main.c | 193 static void usnic_ib_handle_port_event(struct ib_device *ibdev, in usnic_ib_handle_port_event() argument 198 container_of(ibdev, struct usnic_ib_dev, ib_dev); in usnic_ib_handle_port_event() 241 struct ib_device *ibdev; in usnic_ib_netdevice_event() local 245 ibdev = ib_device_get_by_netdev(netdev, RDMA_DRIVER_USNIC); in usnic_ib_netdevice_event() 246 if (!ibdev) in usnic_ib_netdevice_event() 249 us_ibdev = container_of(ibdev, struct usnic_ib_dev, ib_dev); in usnic_ib_netdevice_event() 251 ib_device_put(ibdev); in usnic_ib_netdevice_event() 306 struct ib_device *ibdev; in usnic_ib_inetaddr_event() local 308 ibdev = ib_device_get_by_netdev(netdev, RDMA_DRIVER_USNIC); in usnic_ib_inetaddr_event() 309 if (!ibdev) in usnic_ib_inetaddr_event() [all …]
|
| /linux/drivers/nvme/host/ |
| H A D | rdma.c | 184 static void nvme_rdma_free_qe(struct ib_device *ibdev, struct nvme_rdma_qe *qe, in nvme_rdma_free_qe() argument 187 ib_dma_unmap_single(ibdev, qe->dma, capsule_size, dir); in nvme_rdma_free_qe() 191 static int nvme_rdma_alloc_qe(struct ib_device *ibdev, struct nvme_rdma_qe *qe, in nvme_rdma_alloc_qe() argument 198 qe->dma = ib_dma_map_single(ibdev, qe->data, capsule_size, dir); in nvme_rdma_alloc_qe() 199 if (ib_dma_mapping_error(ibdev, qe->dma)) { in nvme_rdma_alloc_qe() 208 static void nvme_rdma_free_ring(struct ib_device *ibdev, in nvme_rdma_free_ring() argument 215 nvme_rdma_free_qe(ibdev, &ring[i], capsule_size, dir); in nvme_rdma_free_ring() 219 static struct nvme_rdma_qe *nvme_rdma_alloc_ring(struct ib_device *ibdev, in nvme_rdma_alloc_ring() argument 236 if (nvme_rdma_alloc_qe(ibdev, &ring[i], capsule_size, dir)) in nvme_rdma_alloc_ring() 243 nvme_rdma_free_ring(ibdev, ring, i, capsule_size, dir); in nvme_rdma_alloc_ring() [all …]
|
| /linux/fs/smb/smbdirect/ |
| H A D | devices.c | 198 struct ib_device *ibdev; in smbdirect_netdev_find_rdma_capable_node_type() local 200 ibdev = ib_device_get_by_netdev(netdev, RDMA_DRIVER_UNKNOWN); in smbdirect_netdev_find_rdma_capable_node_type() 201 if (ibdev) { in smbdirect_netdev_find_rdma_capable_node_type() 202 node_type = smbdirect_ib_device_rdma_capable_node_type(ibdev); in smbdirect_netdev_find_rdma_capable_node_type() 203 ib_device_put(ibdev); in smbdirect_netdev_find_rdma_capable_node_type()
|
| /linux/include/rdma/ |
| H A D | ib_sysfs.h | 14 ssize_t (*show)(struct ib_device *ibdev, u32 port_num, 16 ssize_t (*store)(struct ib_device *ibdev, u32 port_num,
|