| /linux/drivers/scsi/aacraid/ |
| H A D | dpcsup.c | 44 struct fib * fib; in aac_response_normal() local 53 * deallocate the Fib here and continue. in aac_response_normal() 60 fib = &dev->fibs[index >> 2]; in aac_response_normal() 61 hwfib = fib->hw_fib_va; in aac_response_normal() 65 * Remove this fib from the Outstanding I/O queue. in aac_response_normal() 68 * If the fib has been timed out already, then just in aac_response_normal() 70 * the fib timed out. in aac_response_normal() 74 if (unlikely(fib->flags & FIB_CONTEXT_FLAG_TIMED_OUT)) { in aac_response_normal() 76 aac_fib_complete(fib); in aac_response_normal() 77 aac_fib_free(fib); in aac_response_normal() [all …]
|
| H A D | commsup.c | 42 * fib_map_alloc - allocate the fib objects 45 * Allocate and map the shared PCI space for the FIB blocks used to 67 * aac_fib_map_free - free the fib objects 70 * Free the PCI mappings and the memory allocated for FIB blocks 98 struct fib *fibptr = NULL; in aac_fib_vector_assign() 121 * fib area, the unmapped fib data and also the free list 126 struct fib *fibptr; in aac_fib_setup() 164 fibptr->size = sizeof(struct fib); in aac_fib_setup() 196 * Add the fib chain to the free list in aac_fib_setup() 207 * aac_fib_alloc_tag-allocate a fib using tags [all …]
|
| H A D | commctrl.c | 39 * ioctl_send_fib - send a FIB from userspace 43 * This routine sends a fib to the adapter on behalf of a user level 49 struct fib *fibptr; in ioctl_send_fib() 72 * Since we copy based on the fib header size, make sure that we in ioctl_send_fib() 120 * Since we didn't really send a fib, zero out the state to allow in ioctl_send_fib() 138 * the header) is less than or equal to the size of a fib, so we in ioctl_send_fib() 160 * open_getadapter_fib - Get the next fib 164 * This routine will get the next Fib, if available, from the AdapterFibContext 233 compat_uptr_t fib; member 237 * next_getadapter_fib - get the next fib [all …]
|
| H A D | aachba.c | 290 " blocks (FIB) allocated. Valid values are 512 and down. Default is" 295 MODULE_PARM_DESC(acbsize, "Request a specific adapter control block (FIB)" 333 struct fib *fibptr) { in aac_valid_context() 361 struct fib * fibptr; in aac_get_config_status() 428 /* FIB should be freed only after getting the response from the F/W */ in aac_get_config_status() 455 struct fib * fibptr; in aac_get_containers() 484 /* FIB should be freed only after getting the response from the F/W */ in aac_get_containers() 532 static void get_container_name_callback(void *context, struct fib * fibptr) in get_container_name_callback() 584 struct fib * cmd_fibcontext; in aac_get_container_name() 633 static void _aac_probe_container2(void * context, struct fib * fibptr) in _aac_probe_container2() [all …]
|
| H A D | linit.c | 156 * In the future we should add a fib that reports the number of channels 697 struct fib *fib; in aac_eh_abort() local 708 fib = &aac->fibs[count]; in aac_eh_abort() 709 if (*(u8 *)fib->hw_fib_va != 0 && in aac_eh_abort() 710 (fib->flags & FIB_CONTEXT_FLAG_NATIVE_HBA) && in aac_eh_abort() 711 (fib->callback_data == cmd)) { in aac_eh_abort() 720 fib = aac_fib_alloc(aac); in aac_eh_abort() 721 if (!fib) in aac_eh_abort() 724 tmf = (struct aac_hba_tm_req *)fib->hw_fib_va; in aac_eh_abort() 730 address = (u64)fib->hw_error_pa; in aac_eh_abort() [all …]
|
| H A D | src.c | 103 struct fib, in aac_src_intr_message() 479 * @fib: fib to issue 481 * Will send a fib, returning 0 if successful. 483 static int aac_src_deliver_message(struct fib *fib) in aac_src_deliver_message() argument 485 struct aac_dev *dev = fib->dev; in aac_src_deliver_message() 499 native_hba = (fib->flags & FIB_CONTEXT_FLAG_NATIVE_HBA) ? 1 : 0; in aac_src_deliver_message() 503 (native_hba || fib->hw_fib_va->header.Command != AifRequest)) { in aac_src_deliver_message() 509 vector_no = fib->vector_no; in aac_src_deliver_message() 512 if (fib->flags & FIB_CONTEXT_FLAG_NATIVE_HBA_TMF) { in aac_src_deliver_message() 516 fib->hw_fib_va; in aac_src_deliver_message() [all …]
|
| H A D | aacraid.h | 592 __le32 size; /* Size in bytes of Fib which this QE points to */ 593 __le32 addr; /* Receiver address of the FIB */ 674 /* transport FIB header (PMC) */ 676 __le64 HostAddress; /* FIB host address w/o xport header */ 677 __le32 Size; /* FIB size excluding xport header */ 678 __le32 Handle; /* driver handle to reference the FIB */ 685 * Define the FIB. The FIB is the where all the requested data and 692 u8 StructType; /* Type FIB */ 694 __le16 Size; /* Size of this FIB in bytes */ 695 __le16 SenderSize; /* Size of the FIB in the sender [all …]
|
| H A D | rx.c | 393 * @fib: fib to issue 395 * Will send a fib, returning 0 if successful. 397 int aac_rx_deliver_producer(struct fib * fib) in aac_rx_deliver_producer() argument 399 struct aac_dev *dev = fib->dev; in aac_rx_deliver_producer() 404 aac_queue_get( dev, &Index, AdapNormCmdQueue, fib->hw_fib_va, 1, fib, &nointr); in aac_rx_deliver_producer() 416 * @fib: fib to issue 418 * Will send a fib, returning 0 if successful. 420 static int aac_rx_deliver_message(struct fib * fib) in aac_rx_deliver_message() argument 422 struct aac_dev *dev = fib->dev; in aac_rx_deliver_message() 443 addr = fib->hw_fib_pa; in aac_rx_deliver_message() [all …]
|
| H A D | rkt.c | 39 * FIB Setup has already been done, but we can minimize the in aac_rkt_select_comm() 44 * FIB size. The problem that causes us to add this check is in aac_rkt_select_comm() 46 * hard coded FIB override is being utilized. This special in aac_rkt_select_comm()
|
| /linux/arch/s390/kvm/ |
| H A D | pci.c | 162 struct zpci_fib fib = {}; in kvm_zpci_set_airq() local 165 fib.fmt0.isc = zdev->kzdev->fib.fmt0.isc; in kvm_zpci_set_airq() 166 fib.fmt0.sum = 1; /* enable summary notifications */ in kvm_zpci_set_airq() 167 fib.fmt0.noi = airq_iv_end(zdev->aibv); in kvm_zpci_set_airq() 168 fib.fmt0.aibv = virt_to_phys(zdev->aibv->vector); in kvm_zpci_set_airq() 169 fib.fmt0.aibvo = 0; in kvm_zpci_set_airq() 170 fib.fmt0.aisb = virt_to_phys(aift->sbv->vector + (zdev->aisb / 64) * 8); in kvm_zpci_set_airq() 171 fib.fmt0.aisbo = zdev->aisb & 63; in kvm_zpci_set_airq() 172 fib.gd = zdev->gisa; in kvm_zpci_set_airq() 174 return zpci_mod_fc(req, &fib, &status) ? -EIO : 0; in kvm_zpci_set_airq() [all …]
|
| /linux/tools/testing/selftests/net/netfilter/ |
| H A D | nft_fib.sh | 3 # This tests the fib expression. 46 fib saddr . iif oif missing counter log prefix "$netns nft_rpfilter: " drop 59 fib saddr . iif oif missing counter log prefix "$netns nft_rpfilter: " drop 72 fib saddr . iif oif gt 0 accept 86 fib daddr type local counter comment "daddr configured on other iface" 87 fib daddr . iif type local counter comment "daddr configured on iif" 88 fib daddr type unicast counter comment "daddr not local" 89 fib daddr . iif type unicast counter comment "daddr not configured on iif" 93 fib daddr type unicast counter 94 fib daddr . oif type unicast counter [all …]
|
| /linux/tools/testing/selftests/drivers/net/netdevsim/ |
| H A D | fib.sh | 4 # This test is for checking the FIB offload API. It makes use of netdevsim 5 # which registers a listener to the FIB notification chain. 114 devlink -N testns1 resource set $DEVLINK_DEV path IPv4/fib size 10 136 devlink -N testns1 resource set $DEVLINK_DEV path IPv4/fib size 100 143 devlink -N testns1 resource set $DEVLINK_DEV path IPv4/fib size 10 151 devlink -N testns1 resource set $DEVLINK_DEV path IPv4/fib size 100 158 # of the "IPv4/fib" resource. 167 echo "y" > $DEBUGFS_DIR/fib/fail_route_delete 181 echo "n" > $DEBUGFS_DIR/fib/fail_route_delete 253 devlink -N testns1 resource set $DEVLINK_DEV path IPv6/fib size 10 [all …]
|
| /linux/drivers/net/ethernet/mellanox/mlx5/core/lag/ |
| H A D | mp.c | 110 mp->fib.mfi = fi; in mlx5_lag_fib_set() 111 mp->fib.priority = fi->fib_priority; in mlx5_lag_fib_set() 112 mp->fib.dst = dst; in mlx5_lag_fib_set() 113 mp->fib.dst_len = dst_len; in mlx5_lag_fib_set() 170 if (mp->fib.mfi == fi) in mlx5_lag_fib_route_event() 171 mp->fib.mfi = NULL; in mlx5_lag_fib_route_event() 176 if (mp->fib.mfi && in mlx5_lag_fib_route_event() 177 (mp->fib.dst != fen_info->dst || mp->fib.dst_len != fen_info->dst_len) && in mlx5_lag_fib_route_event() 178 mp->fib.dst_len <= fen_info->dst_len && in mlx5_lag_fib_route_event() 179 !(mp->fib.dst_len == fen_info->dst_len && in mlx5_lag_fib_route_event() [all …]
|
| H A D | mp.h | 19 const void *mfi; /* used in tracking fib events */ 23 } fib; member
|
| /linux/arch/s390/pci/ |
| H A D | pci_irq.c | 36 struct zpci_fib fib = {0}; in zpci_set_airq() local 39 fib.fmt0.isc = PCI_ISC; in zpci_set_airq() 40 fib.fmt0.sum = 1; /* enable summary notifications */ in zpci_set_airq() 41 fib.fmt0.noi = airq_iv_end(zdev->aibv); in zpci_set_airq() 42 fib.fmt0.aibv = virt_to_phys(zdev->aibv->vector); in zpci_set_airq() 43 fib.fmt0.aibvo = 0; /* each zdev has its own interrupt vector */ in zpci_set_airq() 44 fib.fmt0.aisb = virt_to_phys(zpci_sbv->vector) + (zdev->aisb / 64) * 8; in zpci_set_airq() 45 fib.fmt0.aisbo = zdev->aisb & 63; in zpci_set_airq() 46 fib.gd = zdev->gisa; in zpci_set_airq() 48 return zpci_mod_fc(req, &fib, &status) ? -EIO : 0; in zpci_set_airq() [all …]
|
| H A D | pci.c | 134 struct zpci_fib fib = {0}; in zpci_register_ioat() local 137 fib.pba = base; in zpci_register_ioat() 140 fib.pal = limit + (1 << 12); in zpci_register_ioat() 142 fib.pal = limit; in zpci_register_ioat() 143 fib.iota = iota; in zpci_register_ioat() 144 fib.gd = zdev->gisa; in zpci_register_ioat() 145 cc = zpci_mod_fc(req, &fib, status); in zpci_register_ioat() 156 struct zpci_fib fib = {0}; in zpci_unregister_ioat() local 159 fib.gd = zdev->gisa; in zpci_unregister_ioat() 161 cc = zpci_mod_fc(req, &fib, &status); in zpci_unregister_ioat() [all …]
|
| /linux/Documentation/networking/devlink/ |
| H A D | netdevsim.rst | 48 The ``netdevsim`` driver exposes resources to control the number of FIB 49 entries, FIB rule entries and nexthops that the driver will allow. 53 $ devlink resource set netdevsim/netdevsim0 path /IPv4/fib size 96 54 $ devlink resource set netdevsim/netdevsim0 path /IPv4/fib-rules size 16 55 $ devlink resource set netdevsim/netdevsim0 path /IPv6/fib size 64 56 $ devlink resource set netdevsim/netdevsim0 path /IPv6/fib-rules size 16
|
| H A D | devlink-resource.rst | 14 For example, the ``netdevsim`` driver enables ``/IPv4/fib`` and 15 ``/IPv4/fib-rules`` as resources to limit the number of IPv4 FIB entries and 23 specify the path of the resource. For example ``/IPv4/fib`` is the id for 24 the ``fib`` sub-resource under the ``IPv4`` resource.
|
| /linux/tools/perf/tests/shell/ |
| H A D | test_java_symbol.sh | 42 int fib(int x) { 43 return x > 1 ? fib(x - 2) + fib(x - 1) : 1; 49 q += fib(i);
|
| /linux/drivers/net/netdevsim/ |
| H A D | fib.c | 41 struct nsim_fib_entry fib; member 52 struct mutex fib_lock; /* Protects FIB HT and list */ 59 spinlock_t fib_event_queue_lock; /* Protects fib event queue list */ 105 struct list_head list; /* node in fib queue */ 143 entry = &fib_data->ipv4.fib; in nsim_fib_get_val() 149 entry = &fib_data->ipv6.fib; in nsim_fib_get_val() 171 entry = &fib_data->ipv4.fib; in nsim_fib_set_max() 177 entry = &fib_data->ipv6.fib; in nsim_fib_set_max() 200 NL_SET_ERR_MSG_MOD(extack, "Exceeded number of supported fib rule entries"); in nsim_fib_rule_account() 378 nsim_fib_account(&data->ipv4.fib, false); in nsim_fib4_rt_add() [all …]
|
| /linux/net/netfilter/ |
| H A D | nft_fib_inet.c | 57 .name = "fib", 79 MODULE_ALIAS_NFT_AF_EXPR(1, "fib"); 80 MODULE_DESCRIPTION("nftables fib inet support");
|
| H A D | nft_fib_netdev.c | 66 .name = "fib", 88 MODULE_ALIAS_NFT_AF_EXPR(5, "fib"); 89 MODULE_DESCRIPTION("nftables netdev fib lookups support");
|
| H A D | nft_fib.c | 170 const struct nft_fib *fib; in nft_fib_reduce() local 193 fib = nft_expr_priv(track->regs[priv->dreg].selector); in nft_fib_reduce() 194 if (priv->result != fib->result || in nft_fib_reduce() 195 priv->flags != fib->flags) { in nft_fib_reduce()
|
| /linux/drivers/net/ethernet/mellanox/mlxsw/ |
| H A D | spectrum_router.c | 168 const struct mlxsw_sp_fib *fib, 171 const struct mlxsw_sp_fib *fib); 451 * because that's a type of next hop, not of FIB entry. (There can be 467 struct mlxsw_sp_fib *fib; member 521 u32 tb_id; /* kernel fib table id */ 537 struct mlxsw_sp_fib *fib; in mlxsw_sp_fib_create() local 541 fib = kzalloc(sizeof(*fib), GFP_KERNEL); in mlxsw_sp_fib_create() 542 if (!fib) in mlxsw_sp_fib_create() 544 err = rhashtable_init(&fib->ht, &mlxsw_sp_fib_ht_params); in mlxsw_sp_fib_create() 547 INIT_LIST_HEAD(&fib->node_list); in mlxsw_sp_fib_create() [all …]
|
| /linux/Documentation/networking/ |
| H A D | switchdev.rst | 344 Offloading L3 routing requires that device be programmed with FIB entries from 345 the kernel, with the device doing the FIB lookup and forwarding. The device 346 does a longest prefix match (LPM) on FIB entries matching route prefix and 347 forwards the packet to the matching FIB entry's nexthop(s) egress ports. 349 To program the device, the driver has to register a FIB notifier handler 353 FIB_EVENT_ENTRY_ADD used for both adding a new FIB entry to the device, 355 FIB_EVENT_ENTRY_DEL used for removing a FIB entry 357 FIB_EVENT_RULE_DEL used to propagate FIB rule changes 393 The "offload" flag is set in case at least one device offloads the FIB entry. 395 XXX: add/mod/del IPv6 FIB API [all …]
|