drivers/net/netdevsim/bpf.c
212
static int nsim_bpf_create_prog(struct nsim_dev *nsim_dev,
drivers/net/netdevsim/bpf.c
223
state->nsim_dev = nsim_dev;
drivers/net/netdevsim/bpf.c
228
sprintf(name, "%u", nsim_dev->prog_id_gen++);
drivers/net/netdevsim/bpf.c
229
state->ddir = debugfs_create_dir(name, nsim_dev->ddir_bpf_bound_progs);
drivers/net/netdevsim/bpf.c
241
mutex_lock(&nsim_dev->progs_list_lock);
drivers/net/netdevsim/bpf.c
242
list_add_tail(&state->l, &nsim_dev->bpf_bound_progs);
drivers/net/netdevsim/bpf.c
243
mutex_unlock(&nsim_dev->progs_list_lock);
drivers/net/netdevsim/bpf.c
252
struct nsim_dev *nsim_dev =
drivers/net/netdevsim/bpf.c
255
if (!nsim_dev->bpf_bind_accept)
drivers/net/netdevsim/bpf.c
258
return nsim_bpf_create_prog(nsim_dev, prog);
drivers/net/netdevsim/bpf.c
272
struct nsim_dev *nsim_dev;
drivers/net/netdevsim/bpf.c
275
nsim_dev = state->nsim_dev;
drivers/net/netdevsim/bpf.c
279
mutex_lock(&nsim_dev->progs_list_lock);
drivers/net/netdevsim/bpf.c
281
mutex_unlock(&nsim_dev->progs_list_lock);
drivers/net/netdevsim/bpf.c
30
struct nsim_dev *nsim_dev;
drivers/net/netdevsim/bpf.c
521
list_add_tail(&nmap->l, &ns->nsim_dev->bpf_bound_maps);
drivers/net/netdevsim/bpf.c
581
int nsim_bpf_dev_init(struct nsim_dev *nsim_dev)
drivers/net/netdevsim/bpf.c
585
INIT_LIST_HEAD(&nsim_dev->bpf_bound_progs);
drivers/net/netdevsim/bpf.c
586
INIT_LIST_HEAD(&nsim_dev->bpf_bound_maps);
drivers/net/netdevsim/bpf.c
588
nsim_dev->ddir_bpf_bound_progs = debugfs_create_dir("bpf_bound_progs",
drivers/net/netdevsim/bpf.c
589
nsim_dev->ddir);
drivers/net/netdevsim/bpf.c
590
if (IS_ERR(nsim_dev->ddir_bpf_bound_progs))
drivers/net/netdevsim/bpf.c
591
return PTR_ERR(nsim_dev->ddir_bpf_bound_progs);
drivers/net/netdevsim/bpf.c
593
nsim_dev->bpf_dev = bpf_offload_dev_create(&nsim_bpf_dev_ops, nsim_dev);
drivers/net/netdevsim/bpf.c
594
err = PTR_ERR_OR_ZERO(nsim_dev->bpf_dev);
drivers/net/netdevsim/bpf.c
598
nsim_dev->bpf_bind_accept = true;
drivers/net/netdevsim/bpf.c
599
debugfs_create_bool("bpf_bind_accept", 0600, nsim_dev->ddir,
drivers/net/netdevsim/bpf.c
600
&nsim_dev->bpf_bind_accept);
drivers/net/netdevsim/bpf.c
601
debugfs_create_u32("bpf_bind_verifier_delay", 0600, nsim_dev->ddir,
drivers/net/netdevsim/bpf.c
602
&nsim_dev->bpf_bind_verifier_delay);
drivers/net/netdevsim/bpf.c
603
nsim_dev->bpf_bind_verifier_accept = true;
drivers/net/netdevsim/bpf.c
604
debugfs_create_bool("bpf_bind_verifier_accept", 0600, nsim_dev->ddir,
drivers/net/netdevsim/bpf.c
605
&nsim_dev->bpf_bind_verifier_accept);
drivers/net/netdevsim/bpf.c
609
void nsim_bpf_dev_exit(struct nsim_dev *nsim_dev)
drivers/net/netdevsim/bpf.c
611
WARN_ON(!list_empty(&nsim_dev->bpf_bound_progs));
drivers/net/netdevsim/bpf.c
612
WARN_ON(!list_empty(&nsim_dev->bpf_bound_maps));
drivers/net/netdevsim/bpf.c
613
bpf_offload_dev_destroy(nsim_dev->bpf_dev);
drivers/net/netdevsim/bpf.c
621
err = bpf_offload_dev_netdev_register(ns->nsim_dev->bpf_dev,
drivers/net/netdevsim/bpf.c
653
bpf_offload_dev_netdev_unregister(ns->nsim_dev->bpf_dev, ns->netdev);
drivers/net/netdevsim/bpf.c
69
if (state->nsim_dev->bpf_bind_verifier_delay && !insn_idx)
drivers/net/netdevsim/bpf.c
70
msleep(state->nsim_dev->bpf_bind_verifier_delay);
drivers/net/netdevsim/bpf.c
75
if (!state->nsim_dev->bpf_bind_verifier_accept)
drivers/net/netdevsim/dev.c
1005
struct nsim_dev *nsim_dev = devlink_priv(devlink);
drivers/net/netdevsim/dev.c
1008
cancel_delayed_work_sync(&nsim_dev->trap_data->trap_report_dw);
drivers/net/netdevsim/dev.c
101
struct nsim_dev *nsim_dev = file->private_data;
drivers/net/netdevsim/dev.c
1015
kfree(nsim_dev->trap_data->trap_policers_cnt_arr);
drivers/net/netdevsim/dev.c
1016
kfree(nsim_dev->trap_data->trap_items_arr);
drivers/net/netdevsim/dev.c
1017
kfree(nsim_dev->trap_data);
drivers/net/netdevsim/dev.c
1020
static int nsim_dev_reload_create(struct nsim_dev *nsim_dev,
drivers/net/netdevsim/dev.c
1022
static void nsim_dev_reload_destroy(struct nsim_dev *nsim_dev);
drivers/net/netdevsim/dev.c
1028
struct nsim_dev *nsim_dev = devlink_priv(devlink);
drivers/net/netdevsim/dev.c
1030
if (nsim_dev->dont_allow_reload) {
drivers/net/netdevsim/dev.c
1038
nsim_dev_reload_destroy(nsim_dev);
drivers/net/netdevsim/dev.c
1046
struct nsim_dev *nsim_dev = devlink_priv(devlink);
drivers/net/netdevsim/dev.c
1048
if (nsim_dev->fail_reload) {
drivers/net/netdevsim/dev.c
1058
return nsim_dev_reload_create(nsim_dev, extack);
drivers/net/netdevsim/dev.c
107
devlink = priv_to_devlink(nsim_dev);
drivers/net/netdevsim/dev.c
1083
struct nsim_dev *nsim_dev = devlink_priv(devlink);
drivers/net/netdevsim/dev.c
1086
if ((params->overwrite_mask & ~nsim_dev->fw_update_overwrite_mask) != 0)
drivers/net/netdevsim/dev.c
1089
if (nsim_dev->fw_update_status) {
drivers/net/netdevsim/dev.c
1096
if (nsim_dev->fw_update_status)
drivers/net/netdevsim/dev.c
1101
msleep(nsim_dev->fw_update_flash_chunk_time_ms ?: 1);
drivers/net/netdevsim/dev.c
1104
if (nsim_dev->fw_update_status) {
drivers/net/netdevsim/dev.c
1119
nsim_dev_trap_item_lookup(struct nsim_dev *nsim_dev, u16 trap_id)
drivers/net/netdevsim/dev.c
1121
struct nsim_trap_data *nsim_trap_data = nsim_dev->trap_data;
drivers/net/netdevsim/dev.c
1136
struct nsim_dev *nsim_dev = devlink_priv(devlink);
drivers/net/netdevsim/dev.c
1139
nsim_trap_item = nsim_dev_trap_item_lookup(nsim_dev, trap->id);
drivers/net/netdevsim/dev.c
1155
struct nsim_dev *nsim_dev = devlink_priv(devlink);
drivers/net/netdevsim/dev.c
1158
nsim_trap_item = nsim_dev_trap_item_lookup(nsim_dev, trap->id);
drivers/net/netdevsim/dev.c
1162
spin_lock(&nsim_dev->trap_data->trap_lock);
drivers/net/netdevsim/dev.c
1164
spin_unlock(&nsim_dev->trap_data->trap_lock);
drivers/net/netdevsim/dev.c
1175
struct nsim_dev *nsim_dev = devlink_priv(devlink);
drivers/net/netdevsim/dev.c
1177
if (nsim_dev->fail_trap_group_set)
drivers/net/netdevsim/dev.c
1189
struct nsim_dev *nsim_dev = devlink_priv(devlink);
drivers/net/netdevsim/dev.c
119
err = devlink_region_snapshot_create(nsim_dev->dummy_region,
drivers/net/netdevsim/dev.c
1191
if (nsim_dev->fail_trap_policer_set) {
drivers/net/netdevsim/dev.c
1204
struct nsim_dev *nsim_dev = devlink_priv(devlink);
drivers/net/netdevsim/dev.c
1207
if (nsim_dev->fail_trap_policer_counter_get)
drivers/net/netdevsim/dev.c
1210
cnt = &nsim_dev->trap_data->trap_policers_cnt_arr[policer->id - 1];
drivers/net/netdevsim/dev.c
1262
struct nsim_dev *nsim_dev = nsim_dev_port->ns->nsim_dev;
drivers/net/netdevsim/dev.c
1270
nsim_dev->vfconfigs[vf_id].min_tx_rate = tx_share;
drivers/net/netdevsim/dev.c
1278
struct nsim_dev *nsim_dev = nsim_dev_port->ns->nsim_dev;
drivers/net/netdevsim/dev.c
1286
nsim_dev->vfconfigs[vf_id].max_tx_rate = tx_max;
drivers/net/netdevsim/dev.c
1342
struct nsim_dev *nsim_dev = devlink_priv(node->devlink);
drivers/net/netdevsim/dev.c
1345
if (!nsim_esw_mode_is_switchdev(nsim_dev)) {
drivers/net/netdevsim/dev.c
1354
nsim_node->ddir = debugfs_create_dir(node->name, nsim_dev->nodes_ddir);
drivers/net/netdevsim/dev.c
1413
struct nsim_dev *nsim_dev = devlink_priv(devlink);
drivers/net/netdevsim/dev.c
1416
if (nsim_dev->fail_trap_drop_counter_get)
drivers/net/netdevsim/dev.c
1419
cnt = &nsim_dev->trap_data->trap_pkt_cnt;
drivers/net/netdevsim/dev.c
142
struct nsim_dev *nsim_dev = file->private_data;
drivers/net/netdevsim/dev.c
1455
static int __nsim_dev_port_add(struct nsim_dev *nsim_dev, enum nsim_dev_port_type type,
drivers/net/netdevsim/dev.c
1463
if (type == NSIM_DEV_PORT_TYPE_VF && !nsim_dev_get_vfs(nsim_dev))
drivers/net/netdevsim/dev.c
148
spin_lock(&nsim_dev->fa_cookie_lock);
drivers/net/netdevsim/dev.c
1481
memcpy(attrs.switch_id.id, nsim_dev->switch_id.id, nsim_dev->switch_id.id_len);
drivers/net/netdevsim/dev.c
1482
attrs.switch_id.id_len = nsim_dev->switch_id.id_len;
drivers/net/netdevsim/dev.c
1484
err = devl_port_register(priv_to_devlink(nsim_dev), devlink_port,
drivers/net/netdevsim/dev.c
149
fa_cookie = nsim_dev->fa_cookie;
drivers/net/netdevsim/dev.c
1505
err = nsim_dev_port_debugfs_init(nsim_dev, nsim_dev_port);
drivers/net/netdevsim/dev.c
1509
nsim_dev_port->ns = nsim_create(nsim_dev, nsim_dev_port, perm_addr);
drivers/net/netdevsim/dev.c
1522
list_add(&nsim_dev_port->list, &nsim_dev->port_list);
drivers/net/netdevsim/dev.c
1555
static void nsim_dev_port_del_all(struct nsim_dev *nsim_dev)
drivers/net/netdevsim/dev.c
1560
&nsim_dev->port_list, list)
drivers/net/netdevsim/dev.c
1564
static int nsim_dev_port_add_all(struct nsim_dev *nsim_dev,
drivers/net/netdevsim/dev.c
1570
err = __nsim_dev_port_add(nsim_dev, NSIM_DEV_PORT_TYPE_PF, i, NULL);
drivers/net/netdevsim/dev.c
1577
nsim_dev_port_del_all(nsim_dev);
drivers/net/netdevsim/dev.c
1581
static int nsim_dev_reload_create(struct nsim_dev *nsim_dev,
drivers/net/netdevsim/dev.c
1584
struct nsim_bus_dev *nsim_bus_dev = nsim_dev->nsim_bus_dev;
drivers/net/netdevsim/dev.c
1588
devlink = priv_to_devlink(nsim_dev);
drivers/net/netdevsim/dev.c
1589
nsim_dev = devlink_priv(devlink);
drivers/net/netdevsim/dev.c
1590
INIT_LIST_HEAD(&nsim_dev->port_list);
drivers/net/netdevsim/dev.c
1591
nsim_dev->fw_update_status = true;
drivers/net/netdevsim/dev.c
1592
nsim_dev->fw_update_overwrite_mask = 0;
drivers/net/netdevsim/dev.c
1596
err = nsim_dev_dummy_region_init(nsim_dev, devlink);
drivers/net/netdevsim/dev.c
1604
nsim_dev->fib_data = nsim_fib_create(devlink, extack);
drivers/net/netdevsim/dev.c
1605
if (IS_ERR(nsim_dev->fib_data)) {
drivers/net/netdevsim/dev.c
1606
err = PTR_ERR(nsim_dev->fib_data);
drivers/net/netdevsim/dev.c
161
spin_unlock(&nsim_dev->fa_cookie_lock);
drivers/net/netdevsim/dev.c
1610
err = nsim_dev_health_init(nsim_dev, devlink);
drivers/net/netdevsim/dev.c
1614
err = nsim_dev_psample_init(nsim_dev);
drivers/net/netdevsim/dev.c
1618
err = nsim_dev_hwstats_init(nsim_dev);
drivers/net/netdevsim/dev.c
1622
err = nsim_dev_port_add_all(nsim_dev, nsim_bus_dev->port_count);
drivers/net/netdevsim/dev.c
1626
nsim_dev->take_snapshot = debugfs_create_file("take_snapshot",
drivers/net/netdevsim/dev.c
1628
nsim_dev->ddir,
drivers/net/netdevsim/dev.c
1629
nsim_dev,
drivers/net/netdevsim/dev.c
1634
nsim_dev_hwstats_exit(nsim_dev);
drivers/net/netdevsim/dev.c
1636
nsim_dev_psample_exit(nsim_dev);
drivers/net/netdevsim/dev.c
1638
nsim_dev_health_exit(nsim_dev);
drivers/net/netdevsim/dev.c
1640
nsim_fib_destroy(devlink, nsim_dev->fib_data);
drivers/net/netdevsim/dev.c
1644
nsim_dev_dummy_region_exit(nsim_dev);
drivers/net/netdevsim/dev.c
1650
struct nsim_dev *nsim_dev;
drivers/net/netdevsim/dev.c
1654
devlink = devlink_alloc_ns(&nsim_dev_devlink_ops, sizeof(*nsim_dev),
drivers/net/netdevsim/dev.c
1659
nsim_dev = devlink_priv(devlink);
drivers/net/netdevsim/dev.c
1660
nsim_dev->nsim_bus_dev = nsim_bus_dev;
drivers/net/netdevsim/dev.c
1661
nsim_dev->switch_id.id_len = sizeof(nsim_dev->switch_id.id);
drivers/net/netdevsim/dev.c
1662
get_random_bytes(nsim_dev->switch_id.id, nsim_dev->switch_id.id_len);
drivers/net/netdevsim/dev.c
1663
INIT_LIST_HEAD(&nsim_dev->port_list);
drivers/net/netdevsim/dev.c
1664
nsim_dev->fw_update_status = true;
drivers/net/netdevsim/dev.c
1665
nsim_dev->fw_update_overwrite_mask = 0;
drivers/net/netdevsim/dev.c
1666
nsim_dev->fw_update_flash_chunk_time_ms = NSIM_DEV_FLASH_CHUNK_TIME_MS_DEFAULT;
drivers/net/netdevsim/dev.c
1667
nsim_dev->max_macs = NSIM_DEV_MAX_MACS_DEFAULT;
drivers/net/netdevsim/dev.c
1668
nsim_dev->test1 = NSIM_DEV_TEST1_DEFAULT;
drivers/net/netdevsim/dev.c
1669
nsim_dev->test2 = NSIM_DEV_TEST2_DEFAULT;
drivers/net/netdevsim/dev.c
1670
spin_lock_init(&nsim_dev->fa_cookie_lock);
drivers/net/netdevsim/dev.c
1671
mutex_init(&nsim_dev->progs_list_lock);
drivers/net/netdevsim/dev.c
1673
dev_set_drvdata(&nsim_bus_dev->dev, nsim_dev);
drivers/net/netdevsim/dev.c
1675
nsim_dev->vfconfigs = kzalloc_objs(struct nsim_vf_config,
drivers/net/netdevsim/dev.c
1678
if (!nsim_dev->vfconfigs) {
drivers/net/netdevsim/dev.c
169
spin_unlock(&nsim_dev->fa_cookie_lock);
drivers/net/netdevsim/dev.c
1695
nsim_devlink_set_params_init_values(nsim_dev, devlink);
drivers/net/netdevsim/dev.c
1697
err = nsim_dev_dummy_region_init(nsim_dev, devlink);
drivers/net/netdevsim/dev.c
1705
err = nsim_dev_debugfs_init(nsim_dev);
drivers/net/netdevsim/dev.c
1709
nsim_dev->fib_data = nsim_fib_create(devlink, NULL);
drivers/net/netdevsim/dev.c
1710
if (IS_ERR(nsim_dev->fib_data)) {
drivers/net/netdevsim/dev.c
1711
err = PTR_ERR(nsim_dev->fib_data);
drivers/net/netdevsim/dev.c
1715
err = nsim_dev_health_init(nsim_dev, devlink);
drivers/net/netdevsim/dev.c
1719
err = nsim_bpf_dev_init(nsim_dev);
drivers/net/netdevsim/dev.c
1723
err = nsim_dev_psample_init(nsim_dev);
drivers/net/netdevsim/dev.c
1727
err = nsim_dev_hwstats_init(nsim_dev);
drivers/net/netdevsim/dev.c
1731
err = nsim_dev_port_add_all(nsim_dev, nsim_bus_dev->port_count);
drivers/net/netdevsim/dev.c
1735
nsim_dev->esw_mode = DEVLINK_ESWITCH_MODE_LEGACY;
drivers/net/netdevsim/dev.c
1740
nsim_dev_hwstats_exit(nsim_dev);
drivers/net/netdevsim/dev.c
1742
nsim_dev_psample_exit(nsim_dev);
drivers/net/netdevsim/dev.c
1744
nsim_bpf_dev_exit(nsim_dev);
drivers/net/netdevsim/dev.c
1746
nsim_dev_health_exit(nsim_dev);
drivers/net/netdevsim/dev.c
1748
nsim_fib_destroy(devlink, nsim_dev->fib_data);
drivers/net/netdevsim/dev.c
1750
nsim_dev_debugfs_exit(nsim_dev);
drivers/net/netdevsim/dev.c
1754
nsim_dev_dummy_region_exit(nsim_dev);
drivers/net/netdevsim/dev.c
1763
kfree(nsim_dev->vfconfigs);
drivers/net/netdevsim/dev.c
177
struct nsim_dev *nsim_dev = file->private_data;
drivers/net/netdevsim/dev.c
1771
static void nsim_dev_reload_destroy(struct nsim_dev *nsim_dev)
drivers/net/netdevsim/dev.c
1773
struct devlink *devlink = priv_to_devlink(nsim_dev);
drivers/net/netdevsim/dev.c
1777
debugfs_remove(nsim_dev->take_snapshot);
drivers/net/netdevsim/dev.c
1779
if (nsim_dev_get_vfs(nsim_dev)) {
drivers/net/netdevsim/dev.c
1780
nsim_bus_dev_set_vfs(nsim_dev->nsim_bus_dev, 0);
drivers/net/netdevsim/dev.c
1781
if (nsim_esw_mode_is_switchdev(nsim_dev))
drivers/net/netdevsim/dev.c
1782
nsim_esw_legacy_enable(nsim_dev, NULL);
drivers/net/netdevsim/dev.c
1785
nsim_dev_port_del_all(nsim_dev);
drivers/net/netdevsim/dev.c
1786
nsim_dev_hwstats_exit(nsim_dev);
drivers/net/netdevsim/dev.c
1787
nsim_dev_psample_exit(nsim_dev);
drivers/net/netdevsim/dev.c
1788
nsim_dev_health_exit(nsim_dev);
drivers/net/netdevsim/dev.c
1789
nsim_fib_destroy(devlink, nsim_dev->fib_data);
drivers/net/netdevsim/dev.c
1791
nsim_dev_dummy_region_exit(nsim_dev);
drivers/net/netdevsim/dev.c
1796
struct nsim_dev *nsim_dev = dev_get_drvdata(&nsim_bus_dev->dev);
drivers/net/netdevsim/dev.c
1797
struct devlink *devlink = priv_to_devlink(nsim_dev);
drivers/net/netdevsim/dev.c
1800
nsim_dev_reload_destroy(nsim_dev);
drivers/net/netdevsim/dev.c
1802
nsim_bpf_dev_exit(nsim_dev);
drivers/net/netdevsim/dev.c
1803
nsim_dev_debugfs_exit(nsim_dev);
drivers/net/netdevsim/dev.c
1808
kfree(nsim_dev->vfconfigs);
drivers/net/netdevsim/dev.c
1809
kfree(nsim_dev->fa_cookie);
drivers/net/netdevsim/dev.c
1810
mutex_destroy(&nsim_dev->progs_list_lock);
drivers/net/netdevsim/dev.c
1817
__nsim_dev_port_lookup(struct nsim_dev *nsim_dev, enum nsim_dev_port_type type,
drivers/net/netdevsim/dev.c
1823
list_for_each_entry(nsim_dev_port, &nsim_dev->port_list, list)
drivers/net/netdevsim/dev.c
1832
struct nsim_dev *nsim_dev = dev_get_drvdata(&nsim_bus_dev->dev);
drivers/net/netdevsim/dev.c
1835
devl_lock(priv_to_devlink(nsim_dev));
drivers/net/netdevsim/dev.c
1836
if (__nsim_dev_port_lookup(nsim_dev, type, port_index))
drivers/net/netdevsim/dev.c
1839
err = __nsim_dev_port_add(nsim_dev, type, port_index, perm_addr);
drivers/net/netdevsim/dev.c
1840
devl_unlock(priv_to_devlink(nsim_dev));
drivers/net/netdevsim/dev.c
1847
struct nsim_dev *nsim_dev = dev_get_drvdata(&nsim_bus_dev->dev);
drivers/net/netdevsim/dev.c
1851
devl_lock(priv_to_devlink(nsim_dev));
drivers/net/netdevsim/dev.c
1852
nsim_dev_port = __nsim_dev_port_lookup(nsim_dev, type, port_index);
drivers/net/netdevsim/dev.c
1857
devl_unlock(priv_to_devlink(nsim_dev));
drivers/net/netdevsim/dev.c
1864
struct nsim_dev *nsim_dev = dev_get_drvdata(&nsim_bus_dev->dev);
drivers/net/netdevsim/dev.c
1865
struct devlink *devlink = priv_to_devlink(nsim_dev);
drivers/net/netdevsim/dev.c
1881
if (nsim_esw_mode_is_switchdev(nsim_dev)) {
drivers/net/netdevsim/dev.c
1883
ret = nsim_esw_switchdev_enable(nsim_dev, NULL);
drivers/net/netdevsim/dev.c
1889
nsim_esw_legacy_enable(nsim_dev, NULL);
drivers/net/netdevsim/dev.c
206
spin_lock(&nsim_dev->fa_cookie_lock);
drivers/net/netdevsim/dev.c
207
kfree(nsim_dev->fa_cookie);
drivers/net/netdevsim/dev.c
208
nsim_dev->fa_cookie = fa_cookie;
drivers/net/netdevsim/dev.c
209
spin_unlock(&nsim_dev->fa_cookie_lock);
drivers/net/netdevsim/dev.c
231
struct nsim_dev *nsim_dev = file->private_data;
drivers/net/netdevsim/dev.c
236
READ_ONCE(nsim_dev->nsim_bus_dev->max_vfs));
drivers/net/netdevsim/dev.c
246
struct nsim_dev *nsim_dev;
drivers/net/netdevsim/dev.c
275
nsim_dev = file->private_data;
drivers/net/netdevsim/dev.c
276
devl_lock(priv_to_devlink(nsim_dev));
drivers/net/netdevsim/dev.c
278
if (nsim_dev_get_vfs(nsim_dev)) {
drivers/net/netdevsim/dev.c
281
swap(nsim_dev->vfconfigs, vfconfigs);
drivers/net/netdevsim/dev.c
282
WRITE_ONCE(nsim_dev->nsim_bus_dev->max_vfs, val);
drivers/net/netdevsim/dev.c
286
devl_unlock(priv_to_devlink(nsim_dev));
drivers/net/netdevsim/dev.c
300
static int nsim_dev_debugfs_init(struct nsim_dev *nsim_dev)
drivers/net/netdevsim/dev.c
305
sprintf(dev_ddir_name, DRV_NAME "%u", nsim_dev->nsim_bus_dev->dev.id);
drivers/net/netdevsim/dev.c
306
nsim_dev->ddir = debugfs_create_dir(dev_ddir_name, nsim_dev_ddir);
drivers/net/netdevsim/dev.c
307
if (IS_ERR(nsim_dev->ddir))
drivers/net/netdevsim/dev.c
308
return PTR_ERR(nsim_dev->ddir);
drivers/net/netdevsim/dev.c
309
nsim_dev->ports_ddir = debugfs_create_dir("ports", nsim_dev->ddir);
drivers/net/netdevsim/dev.c
310
if (IS_ERR(nsim_dev->ports_ddir)) {
drivers/net/netdevsim/dev.c
311
err = PTR_ERR(nsim_dev->ports_ddir);
drivers/net/netdevsim/dev.c
314
debugfs_create_bool("fw_update_status", 0600, nsim_dev->ddir,
drivers/net/netdevsim/dev.c
315
&nsim_dev->fw_update_status);
drivers/net/netdevsim/dev.c
316
debugfs_create_u32("fw_update_overwrite_mask", 0600, nsim_dev->ddir,
drivers/net/netdevsim/dev.c
317
&nsim_dev->fw_update_overwrite_mask);
drivers/net/netdevsim/dev.c
318
debugfs_create_u32("fw_update_flash_chunk_time_ms", 0600, nsim_dev->ddir,
drivers/net/netdevsim/dev.c
319
&nsim_dev->fw_update_flash_chunk_time_ms);
drivers/net/netdevsim/dev.c
320
debugfs_create_u32("max_macs", 0600, nsim_dev->ddir,
drivers/net/netdevsim/dev.c
321
&nsim_dev->max_macs);
drivers/net/netdevsim/dev.c
322
debugfs_create_bool("test1", 0600, nsim_dev->ddir,
drivers/net/netdevsim/dev.c
323
&nsim_dev->test1);
drivers/net/netdevsim/dev.c
324
debugfs_create_u32("test2", 0600, nsim_dev->ddir,
drivers/net/netdevsim/dev.c
325
&nsim_dev->test2);
drivers/net/netdevsim/dev.c
326
nsim_dev->take_snapshot = debugfs_create_file("take_snapshot",
drivers/net/netdevsim/dev.c
328
nsim_dev->ddir,
drivers/net/netdevsim/dev.c
329
nsim_dev,
drivers/net/netdevsim/dev.c
331
debugfs_create_bool("dont_allow_reload", 0600, nsim_dev->ddir,
drivers/net/netdevsim/dev.c
332
&nsim_dev->dont_allow_reload);
drivers/net/netdevsim/dev.c
333
debugfs_create_bool("fail_reload", 0600, nsim_dev->ddir,
drivers/net/netdevsim/dev.c
334
&nsim_dev->fail_reload);
drivers/net/netdevsim/dev.c
335
debugfs_create_file("trap_flow_action_cookie", 0600, nsim_dev->ddir,
drivers/net/netdevsim/dev.c
336
nsim_dev, &nsim_dev_trap_fa_cookie_fops);
drivers/net/netdevsim/dev.c
338
nsim_dev->ddir,
drivers/net/netdevsim/dev.c
339
&nsim_dev->fail_trap_group_set);
drivers/net/netdevsim/dev.c
341
nsim_dev->ddir,
drivers/net/netdevsim/dev.c
342
&nsim_dev->fail_trap_policer_set);
drivers/net/netdevsim/dev.c
344
nsim_dev->ddir,
drivers/net/netdevsim/dev.c
345
&nsim_dev->fail_trap_policer_counter_get);
drivers/net/netdevsim/dev.c
347
debugfs_create_file("max_vfs", 0600, nsim_dev->ddir,
drivers/net/netdevsim/dev.c
348
nsim_dev, &nsim_dev_max_vfs_fops);
drivers/net/netdevsim/dev.c
350
nsim_dev->nodes_ddir = debugfs_create_dir("rate_nodes", nsim_dev->ddir);
drivers/net/netdevsim/dev.c
351
if (IS_ERR(nsim_dev->nodes_ddir)) {
drivers/net/netdevsim/dev.c
352
err = PTR_ERR(nsim_dev->nodes_ddir);
drivers/net/netdevsim/dev.c
356
nsim_dev->ddir,
drivers/net/netdevsim/dev.c
357
&nsim_dev->fail_trap_drop_counter_get);
drivers/net/netdevsim/dev.c
358
nsim_udp_tunnels_debugfs_create(nsim_dev);
drivers/net/netdevsim/dev.c
362
debugfs_remove_recursive(nsim_dev->ports_ddir);
drivers/net/netdevsim/dev.c
364
debugfs_remove_recursive(nsim_dev->ddir);
drivers/net/netdevsim/dev.c
368
static void nsim_dev_debugfs_exit(struct nsim_dev *nsim_dev)
drivers/net/netdevsim/dev.c
370
debugfs_remove_recursive(nsim_dev->nodes_ddir);
drivers/net/netdevsim/dev.c
371
debugfs_remove_recursive(nsim_dev->ports_ddir);
drivers/net/netdevsim/dev.c
372
debugfs_remove_recursive(nsim_dev->ddir);
drivers/net/netdevsim/dev.c
407
static int nsim_dev_port_debugfs_init(struct nsim_dev *nsim_dev,
drivers/net/netdevsim/dev.c
410
struct nsim_bus_dev *nsim_bus_dev = nsim_dev->nsim_bus_dev;
drivers/net/netdevsim/dev.c
417
nsim_dev->ports_ddir);
drivers/net/netdevsim/dev.c
426
&nsim_dev->vfconfigs[vf_id].min_tx_rate);
drivers/net/netdevsim/dev.c
428
&nsim_dev->vfconfigs[vf_id].max_tx_rate);
drivers/net/netdevsim/dev.c
535
struct nsim_dev *nsim_dev = devlink_priv(devlink);
drivers/net/netdevsim/dev.c
537
ctx->val.vu32 = nsim_dev->test2;
drivers/net/netdevsim/dev.c
546
struct nsim_dev *nsim_dev = devlink_priv(devlink);
drivers/net/netdevsim/dev.c
548
nsim_dev->test2 = ctx->val.vu32;
drivers/net/netdevsim/dev.c
568
struct nsim_dev *nsim_dev = devlink_priv(devlink);
drivers/net/netdevsim/dev.c
570
nsim_dev->test2 = NSIM_DEV_TEST2_DEFAULT;
drivers/net/netdevsim/dev.c
592
static void nsim_devlink_set_params_init_values(struct nsim_dev *nsim_dev,
drivers/net/netdevsim/dev.c
597
value.vu32 = nsim_dev->max_macs;
drivers/net/netdevsim/dev.c
60
unsigned int nsim_dev_get_vfs(struct nsim_dev *nsim_dev)
drivers/net/netdevsim/dev.c
601
value.vbool = nsim_dev->test1;
drivers/net/netdevsim/dev.c
609
struct nsim_dev *nsim_dev = devlink_priv(devlink);
drivers/net/netdevsim/dev.c
617
nsim_dev->max_macs = saved_value.vu32;
drivers/net/netdevsim/dev.c
622
nsim_dev->test1 = saved_value.vbool;
drivers/net/netdevsim/dev.c
63
!devl_lock_is_held(priv_to_devlink(nsim_dev)));
drivers/net/netdevsim/dev.c
633
static int nsim_dev_dummy_region_init(struct nsim_dev *nsim_dev,
drivers/net/netdevsim/dev.c
636
nsim_dev->dummy_region =
drivers/net/netdevsim/dev.c
640
return PTR_ERR_OR_ZERO(nsim_dev->dummy_region);
drivers/net/netdevsim/dev.c
643
static void nsim_dev_dummy_region_exit(struct nsim_dev *nsim_dev)
drivers/net/netdevsim/dev.c
645
devl_region_destroy(nsim_dev->dummy_region);
drivers/net/netdevsim/dev.c
649
__nsim_dev_port_add(struct nsim_dev *nsim_dev, enum nsim_dev_port_type type,
drivers/net/netdevsim/dev.c
65
return nsim_dev->nsim_bus_dev->num_vfs;
drivers/net/netdevsim/dev.c
653
static int nsim_esw_legacy_enable(struct nsim_dev *nsim_dev,
drivers/net/netdevsim/dev.c
656
struct devlink *devlink = priv_to_devlink(nsim_dev);
drivers/net/netdevsim/dev.c
660
list_for_each_entry_safe(nsim_dev_port, tmp, &nsim_dev->port_list, list)
drivers/net/netdevsim/dev.c
663
nsim_dev->esw_mode = DEVLINK_ESWITCH_MODE_LEGACY;
drivers/net/netdevsim/dev.c
667
static int nsim_esw_switchdev_enable(struct nsim_dev *nsim_dev,
drivers/net/netdevsim/dev.c
673
for (i = 0; i < nsim_dev_get_vfs(nsim_dev); i++) {
drivers/net/netdevsim/dev.c
674
err = __nsim_dev_port_add(nsim_dev, NSIM_DEV_PORT_TYPE_VF, i, NULL);
drivers/net/netdevsim/dev.c
681
nsim_dev->esw_mode = DEVLINK_ESWITCH_MODE_SWITCHDEV;
drivers/net/netdevsim/dev.c
685
list_for_each_entry_safe(nsim_dev_port, tmp, &nsim_dev->port_list, list)
drivers/net/netdevsim/dev.c
694
struct nsim_dev *nsim_dev = devlink_priv(devlink);
drivers/net/netdevsim/dev.c
696
if (mode == nsim_dev->esw_mode)
drivers/net/netdevsim/dev.c
700
return nsim_esw_legacy_enable(nsim_dev, extack);
drivers/net/netdevsim/dev.c
702
return nsim_esw_switchdev_enable(nsim_dev, extack);
drivers/net/netdevsim/dev.c
709
struct nsim_dev *nsim_dev = devlink_priv(devlink);
drivers/net/netdevsim/dev.c
711
*mode = nsim_dev->esw_mode;
drivers/net/netdevsim/dev.c
725
struct nsim_dev *nsim_dev;
drivers/net/netdevsim/dev.c
855
struct nsim_dev *nsim_dev = nsim_dev_port->ns->nsim_dev;
drivers/net/netdevsim/dev.c
856
struct devlink *devlink = priv_to_devlink(nsim_dev);
drivers/net/netdevsim/dev.c
860
nsim_trap_data = nsim_dev->trap_data;
drivers/net/netdevsim/dev.c
887
spin_lock_bh(&nsim_dev->fa_cookie_lock);
drivers/net/netdevsim/dev.c
888
fa_cookie = has_fa_cookie ? nsim_dev->fa_cookie : NULL;
drivers/net/netdevsim/dev.c
891
spin_unlock_bh(&nsim_dev->fa_cookie_lock);
drivers/net/netdevsim/dev.c
903
struct nsim_dev *nsim_dev;
drivers/net/netdevsim/dev.c
907
nsim_dev = nsim_trap_data->nsim_dev;
drivers/net/netdevsim/dev.c
909
if (!devl_trylock(priv_to_devlink(nsim_dev))) {
drivers/net/netdevsim/dev.c
911
&nsim_dev->trap_data->trap_report_dw, 1);
drivers/net/netdevsim/dev.c
918
list_for_each_entry(nsim_dev_port, &nsim_dev->port_list, list) {
drivers/net/netdevsim/dev.c
925
devl_unlock(priv_to_devlink(nsim_dev));
drivers/net/netdevsim/dev.c
927
&nsim_dev->trap_data->trap_report_dw,
drivers/net/netdevsim/dev.c
934
struct nsim_dev *nsim_dev = devlink_priv(devlink);
drivers/net/netdevsim/dev.c
962
nsim_trap_data->nsim_dev = nsim_dev;
drivers/net/netdevsim/dev.c
963
nsim_dev->trap_data = nsim_trap_data;
drivers/net/netdevsim/dev.c
980
INIT_DELAYED_WORK(&nsim_dev->trap_data->trap_report_dw,
drivers/net/netdevsim/dev.c
983
&nsim_dev->trap_data->trap_report_dw,
drivers/net/netdevsim/fib.c
1520
nsim_fib_debugfs_init(struct nsim_fib_data *data, struct nsim_dev *nsim_dev)
drivers/net/netdevsim/fib.c
1522
data->ddir = debugfs_create_dir("fib", nsim_dev->ddir);
drivers/net/netdevsim/fib.c
1556
struct nsim_dev *nsim_dev;
drivers/net/netdevsim/fib.c
1564
nsim_dev = devlink_priv(devlink);
drivers/net/netdevsim/fib.c
1600
err = nsim_fib_debugfs_init(data, nsim_dev);
drivers/net/netdevsim/health.c
178
int nsim_dev_health_init(struct nsim_dev *nsim_dev, struct devlink *devlink)
drivers/net/netdevsim/health.c
180
struct nsim_dev_health *health = &nsim_dev->health;
drivers/net/netdevsim/health.c
199
health->ddir = debugfs_create_dir("health", nsim_dev->ddir);
drivers/net/netdevsim/health.c
223
void nsim_dev_health_exit(struct nsim_dev *nsim_dev)
drivers/net/netdevsim/health.c
225
struct nsim_dev_health *health = &nsim_dev->health;
drivers/net/netdevsim/hwstats.c
221
struct nsim_dev *nsim_dev;
drivers/net/netdevsim/hwstats.c
226
nsim_dev = container_of(hwstats, struct nsim_dev, hwstats);
drivers/net/netdevsim/hwstats.c
227
net = nsim_dev_net(nsim_dev);
drivers/net/netdevsim/hwstats.c
404
int nsim_dev_hwstats_init(struct nsim_dev *nsim_dev)
drivers/net/netdevsim/hwstats.c
406
struct nsim_dev_hwstats *hwstats = &nsim_dev->hwstats;
drivers/net/netdevsim/hwstats.c
407
struct net *net = nsim_dev_net(nsim_dev);
drivers/net/netdevsim/hwstats.c
418
hwstats->ddir = debugfs_create_dir("hwstats", nsim_dev->ddir);
drivers/net/netdevsim/hwstats.c
470
void nsim_dev_hwstats_exit(struct nsim_dev *nsim_dev)
drivers/net/netdevsim/hwstats.c
472
struct nsim_dev_hwstats *hwstats = &nsim_dev->hwstats;
drivers/net/netdevsim/hwstats.c
473
struct net *net = nsim_dev_net(nsim_dev);
drivers/net/netdevsim/netdev.c
1054
err = nsim_udp_tunnels_info_create(ns->nsim_dev, ns->netdev);
drivers/net/netdevsim/netdev.c
1126
struct netdevsim *nsim_create(struct nsim_dev *nsim_dev,
drivers/net/netdevsim/netdev.c
1135
nsim_dev->nsim_bus_dev->num_queues);
drivers/net/netdevsim/netdev.c
1142
dev_net_set(dev, nsim_dev_net(nsim_dev));
drivers/net/netdevsim/netdev.c
1145
ns->nsim_dev = nsim_dev;
drivers/net/netdevsim/netdev.c
1147
ns->nsim_bus_dev = nsim_dev->nsim_bus_dev;
drivers/net/netdevsim/netdev.c
211
struct nsim_dev *nsim_dev = ns->nsim_dev;
drivers/net/netdevsim/netdev.c
214
if (vf >= nsim_dev_get_vfs(nsim_dev) || is_multicast_ether_addr(mac))
drivers/net/netdevsim/netdev.c
216
memcpy(nsim_dev->vfconfigs[vf].vf_mac, mac, ETH_ALEN);
drivers/net/netdevsim/netdev.c
225
struct nsim_dev *nsim_dev = ns->nsim_dev;
drivers/net/netdevsim/netdev.c
227
if (vf >= nsim_dev_get_vfs(nsim_dev) || vlan > 4095 || qos > 7)
drivers/net/netdevsim/netdev.c
230
nsim_dev->vfconfigs[vf].vlan = vlan;
drivers/net/netdevsim/netdev.c
231
nsim_dev->vfconfigs[vf].qos = qos;
drivers/net/netdevsim/netdev.c
232
nsim_dev->vfconfigs[vf].vlan_proto = vlan_proto;
drivers/net/netdevsim/netdev.c
240
struct nsim_dev *nsim_dev = ns->nsim_dev;
drivers/net/netdevsim/netdev.c
242
if (nsim_esw_mode_is_switchdev(ns->nsim_dev)) {
drivers/net/netdevsim/netdev.c
247
if (vf >= nsim_dev_get_vfs(nsim_dev))
drivers/net/netdevsim/netdev.c
250
nsim_dev->vfconfigs[vf].min_tx_rate = min;
drivers/net/netdevsim/netdev.c
251
nsim_dev->vfconfigs[vf].max_tx_rate = max;
drivers/net/netdevsim/netdev.c
259
struct nsim_dev *nsim_dev = ns->nsim_dev;
drivers/net/netdevsim/netdev.c
261
if (vf >= nsim_dev_get_vfs(nsim_dev))
drivers/net/netdevsim/netdev.c
263
nsim_dev->vfconfigs[vf].spoofchk_enabled = val;
drivers/net/netdevsim/netdev.c
271
struct nsim_dev *nsim_dev = ns->nsim_dev;
drivers/net/netdevsim/netdev.c
273
if (vf >= nsim_dev_get_vfs(nsim_dev))
drivers/net/netdevsim/netdev.c
275
nsim_dev->vfconfigs[vf].rss_query_enabled = val;
drivers/net/netdevsim/netdev.c
283
struct nsim_dev *nsim_dev = ns->nsim_dev;
drivers/net/netdevsim/netdev.c
285
if (vf >= nsim_dev_get_vfs(nsim_dev))
drivers/net/netdevsim/netdev.c
287
nsim_dev->vfconfigs[vf].trusted = val;
drivers/net/netdevsim/netdev.c
296
struct nsim_dev *nsim_dev = ns->nsim_dev;
drivers/net/netdevsim/netdev.c
298
if (vf >= nsim_dev_get_vfs(nsim_dev))
drivers/net/netdevsim/netdev.c
302
ivi->linkstate = nsim_dev->vfconfigs[vf].link_state;
drivers/net/netdevsim/netdev.c
303
ivi->min_tx_rate = nsim_dev->vfconfigs[vf].min_tx_rate;
drivers/net/netdevsim/netdev.c
304
ivi->max_tx_rate = nsim_dev->vfconfigs[vf].max_tx_rate;
drivers/net/netdevsim/netdev.c
305
ivi->vlan = nsim_dev->vfconfigs[vf].vlan;
drivers/net/netdevsim/netdev.c
306
ivi->vlan_proto = nsim_dev->vfconfigs[vf].vlan_proto;
drivers/net/netdevsim/netdev.c
307
ivi->qos = nsim_dev->vfconfigs[vf].qos;
drivers/net/netdevsim/netdev.c
308
memcpy(&ivi->mac, nsim_dev->vfconfigs[vf].vf_mac, ETH_ALEN);
drivers/net/netdevsim/netdev.c
309
ivi->spoofchk = nsim_dev->vfconfigs[vf].spoofchk_enabled;
drivers/net/netdevsim/netdev.c
310
ivi->trusted = nsim_dev->vfconfigs[vf].trusted;
drivers/net/netdevsim/netdev.c
311
ivi->rss_query_en = nsim_dev->vfconfigs[vf].rss_query_enabled;
drivers/net/netdevsim/netdev.c
319
struct nsim_dev *nsim_dev = ns->nsim_dev;
drivers/net/netdevsim/netdev.c
321
if (vf >= nsim_dev_get_vfs(nsim_dev))
drivers/net/netdevsim/netdev.c
333
nsim_dev->vfconfigs[vf].link_state = state;
drivers/net/netdevsim/netdevsim.h
109
struct nsim_dev *nsim_dev;
drivers/net/netdevsim/netdevsim.h
166
struct netdevsim *nsim_create(struct nsim_dev *nsim_dev,
drivers/net/netdevsim/netdevsim.h
175
void nsim_udp_tunnels_debugfs_create(struct nsim_dev *nsim_dev);
drivers/net/netdevsim/netdevsim.h
176
int nsim_udp_tunnels_info_create(struct nsim_dev *nsim_dev,
drivers/net/netdevsim/netdevsim.h
181
int nsim_bpf_dev_init(struct nsim_dev *nsim_dev);
drivers/net/netdevsim/netdevsim.h
182
void nsim_bpf_dev_exit(struct nsim_dev *nsim_dev);
drivers/net/netdevsim/netdevsim.h
191
static inline int nsim_bpf_dev_init(struct nsim_dev *nsim_dev)
drivers/net/netdevsim/netdevsim.h
196
static inline void nsim_bpf_dev_exit(struct nsim_dev *nsim_dev)
drivers/net/netdevsim/netdevsim.h
250
int nsim_dev_health_init(struct nsim_dev *nsim_dev, struct devlink *devlink);
drivers/net/netdevsim/netdevsim.h
251
void nsim_dev_health_exit(struct nsim_dev *nsim_dev);
drivers/net/netdevsim/netdevsim.h
272
int nsim_dev_hwstats_init(struct nsim_dev *nsim_dev);
drivers/net/netdevsim/netdevsim.h
273
void nsim_dev_hwstats_exit(struct nsim_dev *nsim_dev);
drivers/net/netdevsim/netdevsim.h
276
int nsim_dev_psample_init(struct nsim_dev *nsim_dev);
drivers/net/netdevsim/netdevsim.h
277
void nsim_dev_psample_exit(struct nsim_dev *nsim_dev);
drivers/net/netdevsim/netdevsim.h
279
static inline int nsim_dev_psample_init(struct nsim_dev *nsim_dev)
drivers/net/netdevsim/netdevsim.h
284
static inline void nsim_dev_psample_exit(struct nsim_dev *nsim_dev)
drivers/net/netdevsim/netdevsim.h
374
static inline bool nsim_esw_mode_is_legacy(struct nsim_dev *nsim_dev)
drivers/net/netdevsim/netdevsim.h
376
return nsim_dev->esw_mode == DEVLINK_ESWITCH_MODE_LEGACY;
drivers/net/netdevsim/netdevsim.h
379
static inline bool nsim_esw_mode_is_switchdev(struct nsim_dev *nsim_dev)
drivers/net/netdevsim/netdevsim.h
381
return nsim_dev->esw_mode == DEVLINK_ESWITCH_MODE_SWITCHDEV;
drivers/net/netdevsim/netdevsim.h
384
static inline struct net *nsim_dev_net(struct nsim_dev *nsim_dev)
drivers/net/netdevsim/netdevsim.h
386
return devlink_net(priv_to_devlink(nsim_dev));
drivers/net/netdevsim/netdevsim.h
402
unsigned int nsim_dev_get_vfs(struct nsim_dev *nsim_dev);
drivers/net/netdevsim/psample.c
133
static int nsim_dev_psample_enable(struct nsim_dev *nsim_dev)
drivers/net/netdevsim/psample.c
135
struct nsim_dev_psample *psample = nsim_dev->psample;
drivers/net/netdevsim/psample.c
142
devlink = priv_to_devlink(nsim_dev);
drivers/net/netdevsim/psample.c
156
static int nsim_dev_psample_disable(struct nsim_dev *nsim_dev)
drivers/net/netdevsim/psample.c
158
struct nsim_dev_psample *psample = nsim_dev->psample;
drivers/net/netdevsim/psample.c
175
struct nsim_dev *nsim_dev = file->private_data;
drivers/net/netdevsim/psample.c
184
err = nsim_dev_psample_enable(nsim_dev);
drivers/net/netdevsim/psample.c
186
err = nsim_dev_psample_disable(nsim_dev);
drivers/net/netdevsim/psample.c
198
int nsim_dev_psample_init(struct nsim_dev *nsim_dev)
drivers/net/netdevsim/psample.c
206
nsim_dev->psample = psample;
drivers/net/netdevsim/psample.c
210
psample->ddir = debugfs_create_dir("psample", nsim_dev->ddir);
drivers/net/netdevsim/psample.c
247
debugfs_create_file("enable", 0200, psample->ddir, nsim_dev,
drivers/net/netdevsim/psample.c
253
kfree(nsim_dev->psample);
drivers/net/netdevsim/psample.c
257
void nsim_dev_psample_exit(struct nsim_dev *nsim_dev)
drivers/net/netdevsim/psample.c
259
debugfs_remove_recursive(nsim_dev->psample->ddir);
drivers/net/netdevsim/psample.c
260
if (nsim_dev->psample->is_active) {
drivers/net/netdevsim/psample.c
261
cancel_delayed_work_sync(&nsim_dev->psample->psample_dw);
drivers/net/netdevsim/psample.c
262
psample_group_put(nsim_dev->psample->group);
drivers/net/netdevsim/psample.c
264
kfree(nsim_dev->psample);
drivers/net/netdevsim/udp_tunnels.c
125
int nsim_udp_tunnels_info_create(struct nsim_dev *nsim_dev,
drivers/net/netdevsim/udp_tunnels.c
131
if (nsim_dev->udp_ports.shared && nsim_dev->udp_ports.open_only) {
drivers/net/netdevsim/udp_tunnels.c
132
dev_err(&nsim_dev->nsim_bus_dev->dev,
drivers/net/netdevsim/udp_tunnels.c
137
if (!nsim_dev->udp_ports.shared)
drivers/net/netdevsim/udp_tunnels.c
140
ns->udp_ports.ports = nsim_dev->udp_ports.__ports;
drivers/net/netdevsim/udp_tunnels.c
169
if (nsim_dev->udp_ports.sync_all) {
drivers/net/netdevsim/udp_tunnels.c
176
if (nsim_dev->udp_ports.open_only)
drivers/net/netdevsim/udp_tunnels.c
178
if (nsim_dev->udp_ports.ipv4_only)
drivers/net/netdevsim/udp_tunnels.c
180
if (nsim_dev->udp_ports.shared)
drivers/net/netdevsim/udp_tunnels.c
181
info->shared = &nsim_dev->udp_ports.utn_shared;
drivers/net/netdevsim/udp_tunnels.c
182
if (nsim_dev->udp_ports.static_iana_vxlan)
drivers/net/netdevsim/udp_tunnels.c
198
void nsim_udp_tunnels_debugfs_create(struct nsim_dev *nsim_dev)
drivers/net/netdevsim/udp_tunnels.c
200
debugfs_create_bool("udp_ports_sync_all", 0600, nsim_dev->ddir,
drivers/net/netdevsim/udp_tunnels.c
201
&nsim_dev->udp_ports.sync_all);
drivers/net/netdevsim/udp_tunnels.c
202
debugfs_create_bool("udp_ports_open_only", 0600, nsim_dev->ddir,
drivers/net/netdevsim/udp_tunnels.c
203
&nsim_dev->udp_ports.open_only);
drivers/net/netdevsim/udp_tunnels.c
204
debugfs_create_bool("udp_ports_ipv4_only", 0600, nsim_dev->ddir,
drivers/net/netdevsim/udp_tunnels.c
205
&nsim_dev->udp_ports.ipv4_only);
drivers/net/netdevsim/udp_tunnels.c
206
debugfs_create_bool("udp_ports_shared", 0600, nsim_dev->ddir,
drivers/net/netdevsim/udp_tunnels.c
207
&nsim_dev->udp_ports.shared);
drivers/net/netdevsim/udp_tunnels.c
208
debugfs_create_bool("udp_ports_static_iana_vxlan", 0600, nsim_dev->ddir,
drivers/net/netdevsim/udp_tunnels.c
209
&nsim_dev->udp_ports.static_iana_vxlan);