drivers/net/netdevsim/bpf.c
218
static int nsim_bpf_create_prog(struct nsim_dev *nsim_dev,
drivers/net/netdevsim/bpf.c
229
state->nsim_dev = nsim_dev;
drivers/net/netdevsim/bpf.c
234
sprintf(name, "%u", nsim_dev->prog_id_gen++);
drivers/net/netdevsim/bpf.c
235
state->ddir = debugfs_create_dir(name, nsim_dev->ddir_bpf_bound_progs);
drivers/net/netdevsim/bpf.c
247
mutex_lock(&nsim_dev->progs_list_lock);
drivers/net/netdevsim/bpf.c
248
list_add_tail(&state->l, &nsim_dev->bpf_bound_progs);
drivers/net/netdevsim/bpf.c
249
mutex_unlock(&nsim_dev->progs_list_lock);
drivers/net/netdevsim/bpf.c
258
struct nsim_dev *nsim_dev =
drivers/net/netdevsim/bpf.c
261
if (!nsim_dev->bpf_bind_accept)
drivers/net/netdevsim/bpf.c
264
return nsim_bpf_create_prog(nsim_dev, prog);
drivers/net/netdevsim/bpf.c
278
struct nsim_dev *nsim_dev;
drivers/net/netdevsim/bpf.c
281
nsim_dev = state->nsim_dev;
drivers/net/netdevsim/bpf.c
285
mutex_lock(&nsim_dev->progs_list_lock);
drivers/net/netdevsim/bpf.c
287
mutex_unlock(&nsim_dev->progs_list_lock);
drivers/net/netdevsim/bpf.c
30
struct nsim_dev *nsim_dev;
drivers/net/netdevsim/bpf.c
527
list_add_tail(&nmap->l, &ns->nsim_dev->bpf_bound_maps);
drivers/net/netdevsim/bpf.c
587
int nsim_bpf_dev_init(struct nsim_dev *nsim_dev)
drivers/net/netdevsim/bpf.c
591
INIT_LIST_HEAD(&nsim_dev->bpf_bound_progs);
drivers/net/netdevsim/bpf.c
592
INIT_LIST_HEAD(&nsim_dev->bpf_bound_maps);
drivers/net/netdevsim/bpf.c
594
nsim_dev->ddir_bpf_bound_progs = debugfs_create_dir("bpf_bound_progs",
drivers/net/netdevsim/bpf.c
595
nsim_dev->ddir);
drivers/net/netdevsim/bpf.c
596
if (IS_ERR(nsim_dev->ddir_bpf_bound_progs))
drivers/net/netdevsim/bpf.c
597
return PTR_ERR(nsim_dev->ddir_bpf_bound_progs);
drivers/net/netdevsim/bpf.c
599
nsim_dev->bpf_dev = bpf_offload_dev_create(&nsim_bpf_dev_ops, nsim_dev);
drivers/net/netdevsim/bpf.c
600
err = PTR_ERR_OR_ZERO(nsim_dev->bpf_dev);
drivers/net/netdevsim/bpf.c
604
nsim_dev->bpf_bind_accept = true;
drivers/net/netdevsim/bpf.c
605
debugfs_create_bool("bpf_bind_accept", 0600, nsim_dev->ddir,
drivers/net/netdevsim/bpf.c
606
&nsim_dev->bpf_bind_accept);
drivers/net/netdevsim/bpf.c
607
debugfs_create_u32("bpf_bind_verifier_delay", 0600, nsim_dev->ddir,
drivers/net/netdevsim/bpf.c
608
&nsim_dev->bpf_bind_verifier_delay);
drivers/net/netdevsim/bpf.c
609
nsim_dev->bpf_bind_verifier_accept = true;
drivers/net/netdevsim/bpf.c
610
debugfs_create_bool("bpf_bind_verifier_accept", 0600, nsim_dev->ddir,
drivers/net/netdevsim/bpf.c
611
&nsim_dev->bpf_bind_verifier_accept);
drivers/net/netdevsim/bpf.c
615
void nsim_bpf_dev_exit(struct nsim_dev *nsim_dev)
drivers/net/netdevsim/bpf.c
617
WARN_ON(!list_empty(&nsim_dev->bpf_bound_progs));
drivers/net/netdevsim/bpf.c
618
WARN_ON(!list_empty(&nsim_dev->bpf_bound_maps));
drivers/net/netdevsim/bpf.c
619
bpf_offload_dev_destroy(nsim_dev->bpf_dev);
drivers/net/netdevsim/bpf.c
627
err = bpf_offload_dev_netdev_register(ns->nsim_dev->bpf_dev,
drivers/net/netdevsim/bpf.c
659
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
1489
err = nsim_dev_port_debugfs_init(nsim_dev, nsim_dev_port);
drivers/net/netdevsim/dev.c
149
fa_cookie = nsim_dev->fa_cookie;
drivers/net/netdevsim/dev.c
1493
nsim_dev_port->ns = nsim_create(nsim_dev, nsim_dev_port, perm_addr);
drivers/net/netdevsim/dev.c
1506
list_add(&nsim_dev_port->list, &nsim_dev->port_list);
drivers/net/netdevsim/dev.c
1534
static void nsim_dev_port_del_all(struct nsim_dev *nsim_dev)
drivers/net/netdevsim/dev.c
1539
&nsim_dev->port_list, list)
drivers/net/netdevsim/dev.c
1543
static int nsim_dev_port_add_all(struct nsim_dev *nsim_dev,
drivers/net/netdevsim/dev.c
1549
err = __nsim_dev_port_add(nsim_dev, NSIM_DEV_PORT_TYPE_PF, i, NULL);
drivers/net/netdevsim/dev.c
1556
nsim_dev_port_del_all(nsim_dev);
drivers/net/netdevsim/dev.c
1560
static int nsim_dev_reload_create(struct nsim_dev *nsim_dev,
drivers/net/netdevsim/dev.c
1563
struct nsim_bus_dev *nsim_bus_dev = nsim_dev->nsim_bus_dev;
drivers/net/netdevsim/dev.c
1567
devlink = priv_to_devlink(nsim_dev);
drivers/net/netdevsim/dev.c
1568
nsim_dev = devlink_priv(devlink);
drivers/net/netdevsim/dev.c
1569
INIT_LIST_HEAD(&nsim_dev->port_list);
drivers/net/netdevsim/dev.c
1570
nsim_dev->fw_update_status = true;
drivers/net/netdevsim/dev.c
1571
nsim_dev->fw_update_overwrite_mask = 0;
drivers/net/netdevsim/dev.c
1575
err = nsim_dev_dummy_region_init(nsim_dev, devlink);
drivers/net/netdevsim/dev.c
1583
nsim_dev->fib_data = nsim_fib_create(devlink, extack);
drivers/net/netdevsim/dev.c
1584
if (IS_ERR(nsim_dev->fib_data)) {
drivers/net/netdevsim/dev.c
1585
err = PTR_ERR(nsim_dev->fib_data);
drivers/net/netdevsim/dev.c
1589
err = nsim_dev_health_init(nsim_dev, devlink);
drivers/net/netdevsim/dev.c
1593
err = nsim_dev_psample_init(nsim_dev);
drivers/net/netdevsim/dev.c
1597
err = nsim_dev_hwstats_init(nsim_dev);
drivers/net/netdevsim/dev.c
1601
err = nsim_dev_port_add_all(nsim_dev, nsim_bus_dev->port_count);
drivers/net/netdevsim/dev.c
1605
nsim_dev->take_snapshot = debugfs_create_file("take_snapshot",
drivers/net/netdevsim/dev.c
1607
nsim_dev->ddir,
drivers/net/netdevsim/dev.c
1608
nsim_dev,
drivers/net/netdevsim/dev.c
161
spin_unlock(&nsim_dev->fa_cookie_lock);
drivers/net/netdevsim/dev.c
1613
nsim_dev_hwstats_exit(nsim_dev);
drivers/net/netdevsim/dev.c
1615
nsim_dev_psample_exit(nsim_dev);
drivers/net/netdevsim/dev.c
1617
nsim_dev_health_exit(nsim_dev);
drivers/net/netdevsim/dev.c
1619
nsim_fib_destroy(devlink, nsim_dev->fib_data);
drivers/net/netdevsim/dev.c
1623
nsim_dev_dummy_region_exit(nsim_dev);
drivers/net/netdevsim/dev.c
1629
struct nsim_dev *nsim_dev;
drivers/net/netdevsim/dev.c
1633
devlink = devlink_alloc_ns(&nsim_dev_devlink_ops, sizeof(*nsim_dev),
drivers/net/netdevsim/dev.c
1638
nsim_dev = devlink_priv(devlink);
drivers/net/netdevsim/dev.c
1639
nsim_dev->nsim_bus_dev = nsim_bus_dev;
drivers/net/netdevsim/dev.c
1640
nsim_dev->switch_id.id_len = sizeof(nsim_dev->switch_id.id);
drivers/net/netdevsim/dev.c
1641
get_random_bytes(nsim_dev->switch_id.id, nsim_dev->switch_id.id_len);
drivers/net/netdevsim/dev.c
1642
INIT_LIST_HEAD(&nsim_dev->port_list);
drivers/net/netdevsim/dev.c
1643
nsim_dev->fw_update_status = true;
drivers/net/netdevsim/dev.c
1644
nsim_dev->fw_update_overwrite_mask = 0;
drivers/net/netdevsim/dev.c
1645
nsim_dev->fw_update_flash_chunk_time_ms = NSIM_DEV_FLASH_CHUNK_TIME_MS_DEFAULT;
drivers/net/netdevsim/dev.c
1646
nsim_dev->max_macs = NSIM_DEV_MAX_MACS_DEFAULT;
drivers/net/netdevsim/dev.c
1647
nsim_dev->test1 = NSIM_DEV_TEST1_DEFAULT;
drivers/net/netdevsim/dev.c
1648
nsim_dev->test2 = NSIM_DEV_TEST2_DEFAULT;
drivers/net/netdevsim/dev.c
1649
spin_lock_init(&nsim_dev->fa_cookie_lock);
drivers/net/netdevsim/dev.c
1650
mutex_init(&nsim_dev->progs_list_lock);
drivers/net/netdevsim/dev.c
1652
dev_set_drvdata(&nsim_bus_dev->dev, nsim_dev);
drivers/net/netdevsim/dev.c
1654
nsim_dev->vfconfigs = kzalloc_objs(struct nsim_vf_config,
drivers/net/netdevsim/dev.c
1657
if (!nsim_dev->vfconfigs) {
drivers/net/netdevsim/dev.c
1674
nsim_devlink_set_params_init_values(nsim_dev, devlink);
drivers/net/netdevsim/dev.c
1676
err = nsim_dev_dummy_region_init(nsim_dev, devlink);
drivers/net/netdevsim/dev.c
1684
err = nsim_dev_debugfs_init(nsim_dev);
drivers/net/netdevsim/dev.c
1688
nsim_dev->fib_data = nsim_fib_create(devlink, NULL);
drivers/net/netdevsim/dev.c
1689
if (IS_ERR(nsim_dev->fib_data)) {
drivers/net/netdevsim/dev.c
169
spin_unlock(&nsim_dev->fa_cookie_lock);
drivers/net/netdevsim/dev.c
1690
err = PTR_ERR(nsim_dev->fib_data);
drivers/net/netdevsim/dev.c
1694
err = nsim_dev_health_init(nsim_dev, devlink);
drivers/net/netdevsim/dev.c
1698
err = nsim_bpf_dev_init(nsim_dev);
drivers/net/netdevsim/dev.c
1702
err = nsim_dev_psample_init(nsim_dev);
drivers/net/netdevsim/dev.c
1706
err = nsim_dev_hwstats_init(nsim_dev);
drivers/net/netdevsim/dev.c
1710
err = nsim_dev_port_add_all(nsim_dev, nsim_bus_dev->port_count);
drivers/net/netdevsim/dev.c
1714
nsim_dev->esw_mode = DEVLINK_ESWITCH_MODE_LEGACY;
drivers/net/netdevsim/dev.c
1719
nsim_dev_hwstats_exit(nsim_dev);
drivers/net/netdevsim/dev.c
1721
nsim_dev_psample_exit(nsim_dev);
drivers/net/netdevsim/dev.c
1723
nsim_bpf_dev_exit(nsim_dev);
drivers/net/netdevsim/dev.c
1725
nsim_dev_health_exit(nsim_dev);
drivers/net/netdevsim/dev.c
1727
nsim_fib_destroy(devlink, nsim_dev->fib_data);
drivers/net/netdevsim/dev.c
1729
nsim_dev_debugfs_exit(nsim_dev);
drivers/net/netdevsim/dev.c
1733
nsim_dev_dummy_region_exit(nsim_dev);
drivers/net/netdevsim/dev.c
1742
kfree(nsim_dev->vfconfigs);
drivers/net/netdevsim/dev.c
1750
static void nsim_dev_reload_destroy(struct nsim_dev *nsim_dev)
drivers/net/netdevsim/dev.c
1752
struct devlink *devlink = priv_to_devlink(nsim_dev);
drivers/net/netdevsim/dev.c
1756
debugfs_remove(nsim_dev->take_snapshot);
drivers/net/netdevsim/dev.c
1758
if (nsim_dev_get_vfs(nsim_dev)) {
drivers/net/netdevsim/dev.c
1759
nsim_bus_dev_set_vfs(nsim_dev->nsim_bus_dev, 0);
drivers/net/netdevsim/dev.c
1760
if (nsim_esw_mode_is_switchdev(nsim_dev))
drivers/net/netdevsim/dev.c
1761
nsim_esw_legacy_enable(nsim_dev, NULL);
drivers/net/netdevsim/dev.c
1764
nsim_dev_port_del_all(nsim_dev);
drivers/net/netdevsim/dev.c
1765
nsim_dev_hwstats_exit(nsim_dev);
drivers/net/netdevsim/dev.c
1766
nsim_dev_psample_exit(nsim_dev);
drivers/net/netdevsim/dev.c
1767
nsim_dev_health_exit(nsim_dev);
drivers/net/netdevsim/dev.c
1768
nsim_fib_destroy(devlink, nsim_dev->fib_data);
drivers/net/netdevsim/dev.c
177
struct nsim_dev *nsim_dev = file->private_data;
drivers/net/netdevsim/dev.c
1770
nsim_dev_dummy_region_exit(nsim_dev);
drivers/net/netdevsim/dev.c
1775
struct nsim_dev *nsim_dev = dev_get_drvdata(&nsim_bus_dev->dev);
drivers/net/netdevsim/dev.c
1776
struct devlink *devlink = priv_to_devlink(nsim_dev);
drivers/net/netdevsim/dev.c
1779
nsim_dev_reload_destroy(nsim_dev);
drivers/net/netdevsim/dev.c
1781
nsim_bpf_dev_exit(nsim_dev);
drivers/net/netdevsim/dev.c
1782
nsim_dev_debugfs_exit(nsim_dev);
drivers/net/netdevsim/dev.c
1787
kfree(nsim_dev->vfconfigs);
drivers/net/netdevsim/dev.c
1788
kfree(nsim_dev->fa_cookie);
drivers/net/netdevsim/dev.c
1789
mutex_destroy(&nsim_dev->progs_list_lock);
drivers/net/netdevsim/dev.c
1796
__nsim_dev_port_lookup(struct nsim_dev *nsim_dev, enum nsim_dev_port_type type,
drivers/net/netdevsim/dev.c
1802
list_for_each_entry(nsim_dev_port, &nsim_dev->port_list, list)
drivers/net/netdevsim/dev.c
1811
struct nsim_dev *nsim_dev = dev_get_drvdata(&nsim_bus_dev->dev);
drivers/net/netdevsim/dev.c
1814
devl_lock(priv_to_devlink(nsim_dev));
drivers/net/netdevsim/dev.c
1815
if (__nsim_dev_port_lookup(nsim_dev, type, port_index))
drivers/net/netdevsim/dev.c
1818
err = __nsim_dev_port_add(nsim_dev, type, port_index, perm_addr);
drivers/net/netdevsim/dev.c
1819
devl_unlock(priv_to_devlink(nsim_dev));
drivers/net/netdevsim/dev.c
1826
struct nsim_dev *nsim_dev = dev_get_drvdata(&nsim_bus_dev->dev);
drivers/net/netdevsim/dev.c
1830
devl_lock(priv_to_devlink(nsim_dev));
drivers/net/netdevsim/dev.c
1831
nsim_dev_port = __nsim_dev_port_lookup(nsim_dev, type, port_index);
drivers/net/netdevsim/dev.c
1836
devl_unlock(priv_to_devlink(nsim_dev));
drivers/net/netdevsim/dev.c
1843
struct nsim_dev *nsim_dev = dev_get_drvdata(&nsim_bus_dev->dev);
drivers/net/netdevsim/dev.c
1844
struct devlink *devlink = priv_to_devlink(nsim_dev);
drivers/net/netdevsim/dev.c
1860
if (nsim_esw_mode_is_switchdev(nsim_dev)) {
drivers/net/netdevsim/dev.c
1862
ret = nsim_esw_switchdev_enable(nsim_dev, NULL);
drivers/net/netdevsim/dev.c
1868
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
1565
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
1050
err = nsim_udp_tunnels_info_create(ns->nsim_dev, ns->netdev);
drivers/net/netdevsim/netdev.c
1122
struct netdevsim *nsim_create(struct nsim_dev *nsim_dev,
drivers/net/netdevsim/netdev.c
1131
nsim_dev->nsim_bus_dev->num_queues);
drivers/net/netdevsim/netdev.c
1138
dev_net_set(dev, nsim_dev_net(nsim_dev));
drivers/net/netdevsim/netdev.c
1141
ns->nsim_dev = nsim_dev;
drivers/net/netdevsim/netdev.c
1143
ns->nsim_bus_dev = nsim_dev->nsim_bus_dev;
drivers/net/netdevsim/netdev.c
214
struct nsim_dev *nsim_dev = ns->nsim_dev;
drivers/net/netdevsim/netdev.c
217
if (vf >= nsim_dev_get_vfs(nsim_dev) || is_multicast_ether_addr(mac))
drivers/net/netdevsim/netdev.c
219
memcpy(nsim_dev->vfconfigs[vf].vf_mac, mac, ETH_ALEN);
drivers/net/netdevsim/netdev.c
228
struct nsim_dev *nsim_dev = ns->nsim_dev;
drivers/net/netdevsim/netdev.c
230
if (vf >= nsim_dev_get_vfs(nsim_dev) || vlan > 4095 || qos > 7)
drivers/net/netdevsim/netdev.c
233
nsim_dev->vfconfigs[vf].vlan = vlan;
drivers/net/netdevsim/netdev.c
234
nsim_dev->vfconfigs[vf].qos = qos;
drivers/net/netdevsim/netdev.c
235
nsim_dev->vfconfigs[vf].vlan_proto = vlan_proto;
drivers/net/netdevsim/netdev.c
243
struct nsim_dev *nsim_dev = ns->nsim_dev;
drivers/net/netdevsim/netdev.c
245
if (nsim_esw_mode_is_switchdev(ns->nsim_dev)) {
drivers/net/netdevsim/netdev.c
250
if (vf >= nsim_dev_get_vfs(nsim_dev))
drivers/net/netdevsim/netdev.c
253
nsim_dev->vfconfigs[vf].min_tx_rate = min;
drivers/net/netdevsim/netdev.c
254
nsim_dev->vfconfigs[vf].max_tx_rate = max;
drivers/net/netdevsim/netdev.c
262
struct nsim_dev *nsim_dev = ns->nsim_dev;
drivers/net/netdevsim/netdev.c
264
if (vf >= nsim_dev_get_vfs(nsim_dev))
drivers/net/netdevsim/netdev.c
266
nsim_dev->vfconfigs[vf].spoofchk_enabled = val;
drivers/net/netdevsim/netdev.c
274
struct nsim_dev *nsim_dev = ns->nsim_dev;
drivers/net/netdevsim/netdev.c
276
if (vf >= nsim_dev_get_vfs(nsim_dev))
drivers/net/netdevsim/netdev.c
278
nsim_dev->vfconfigs[vf].rss_query_enabled = val;
drivers/net/netdevsim/netdev.c
286
struct nsim_dev *nsim_dev = ns->nsim_dev;
drivers/net/netdevsim/netdev.c
288
if (vf >= nsim_dev_get_vfs(nsim_dev))
drivers/net/netdevsim/netdev.c
290
nsim_dev->vfconfigs[vf].trusted = val;
drivers/net/netdevsim/netdev.c
299
struct nsim_dev *nsim_dev = ns->nsim_dev;
drivers/net/netdevsim/netdev.c
301
if (vf >= nsim_dev_get_vfs(nsim_dev))
drivers/net/netdevsim/netdev.c
305
ivi->linkstate = nsim_dev->vfconfigs[vf].link_state;
drivers/net/netdevsim/netdev.c
306
ivi->min_tx_rate = nsim_dev->vfconfigs[vf].min_tx_rate;
drivers/net/netdevsim/netdev.c
307
ivi->max_tx_rate = nsim_dev->vfconfigs[vf].max_tx_rate;
drivers/net/netdevsim/netdev.c
308
ivi->vlan = nsim_dev->vfconfigs[vf].vlan;
drivers/net/netdevsim/netdev.c
309
ivi->vlan_proto = nsim_dev->vfconfigs[vf].vlan_proto;
drivers/net/netdevsim/netdev.c
310
ivi->qos = nsim_dev->vfconfigs[vf].qos;
drivers/net/netdevsim/netdev.c
311
memcpy(&ivi->mac, nsim_dev->vfconfigs[vf].vf_mac, ETH_ALEN);
drivers/net/netdevsim/netdev.c
312
ivi->spoofchk = nsim_dev->vfconfigs[vf].spoofchk_enabled;
drivers/net/netdevsim/netdev.c
313
ivi->trusted = nsim_dev->vfconfigs[vf].trusted;
drivers/net/netdevsim/netdev.c
314
ivi->rss_query_en = nsim_dev->vfconfigs[vf].rss_query_enabled;
drivers/net/netdevsim/netdev.c
322
struct nsim_dev *nsim_dev = ns->nsim_dev;
drivers/net/netdevsim/netdev.c
324
if (vf >= nsim_dev_get_vfs(nsim_dev))
drivers/net/netdevsim/netdev.c
336
nsim_dev->vfconfigs[vf].link_state = state;
drivers/net/netdevsim/netdevsim.h
104
struct nsim_dev *nsim_dev;
drivers/net/netdevsim/netdevsim.h
157
struct netdevsim *nsim_create(struct nsim_dev *nsim_dev,
drivers/net/netdevsim/netdevsim.h
165
void nsim_udp_tunnels_debugfs_create(struct nsim_dev *nsim_dev);
drivers/net/netdevsim/netdevsim.h
166
int nsim_udp_tunnels_info_create(struct nsim_dev *nsim_dev,
drivers/net/netdevsim/netdevsim.h
171
int nsim_bpf_dev_init(struct nsim_dev *nsim_dev);
drivers/net/netdevsim/netdevsim.h
172
void nsim_bpf_dev_exit(struct nsim_dev *nsim_dev);
drivers/net/netdevsim/netdevsim.h
181
static inline int nsim_bpf_dev_init(struct nsim_dev *nsim_dev)
drivers/net/netdevsim/netdevsim.h
186
static inline void nsim_bpf_dev_exit(struct nsim_dev *nsim_dev)
drivers/net/netdevsim/netdevsim.h
236
int nsim_dev_health_init(struct nsim_dev *nsim_dev, struct devlink *devlink);
drivers/net/netdevsim/netdevsim.h
237
void nsim_dev_health_exit(struct nsim_dev *nsim_dev);
drivers/net/netdevsim/netdevsim.h
258
int nsim_dev_hwstats_init(struct nsim_dev *nsim_dev);
drivers/net/netdevsim/netdevsim.h
259
void nsim_dev_hwstats_exit(struct nsim_dev *nsim_dev);
drivers/net/netdevsim/netdevsim.h
262
int nsim_dev_psample_init(struct nsim_dev *nsim_dev);
drivers/net/netdevsim/netdevsim.h
263
void nsim_dev_psample_exit(struct nsim_dev *nsim_dev);
drivers/net/netdevsim/netdevsim.h
265
static inline int nsim_dev_psample_init(struct nsim_dev *nsim_dev)
drivers/net/netdevsim/netdevsim.h
270
static inline void nsim_dev_psample_exit(struct nsim_dev *nsim_dev)
drivers/net/netdevsim/netdevsim.h
360
static inline bool nsim_esw_mode_is_legacy(struct nsim_dev *nsim_dev)
drivers/net/netdevsim/netdevsim.h
362
return nsim_dev->esw_mode == DEVLINK_ESWITCH_MODE_LEGACY;
drivers/net/netdevsim/netdevsim.h
365
static inline bool nsim_esw_mode_is_switchdev(struct nsim_dev *nsim_dev)
drivers/net/netdevsim/netdevsim.h
367
return nsim_dev->esw_mode == DEVLINK_ESWITCH_MODE_SWITCHDEV;
drivers/net/netdevsim/netdevsim.h
370
static inline struct net *nsim_dev_net(struct nsim_dev *nsim_dev)
drivers/net/netdevsim/netdevsim.h
372
return devlink_net(priv_to_devlink(nsim_dev));
drivers/net/netdevsim/netdevsim.h
388
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);