dev.c (b470ebc9e0e57f53d1db9c49b8a3de4086babd05) | dev.c (a8700c3dd0a48f379d269ac6ddcf8bd857042771) |
---|---|
1/* 2 * Copyright (c) 2018 Cumulus Networks. All rights reserved. 3 * Copyright (c) 2018 David Ahern <dsa@cumulusnetworks.com> 4 * Copyright (c) 2019 Mellanox Technologies. All rights reserved. 5 * 6 * This software is licensed under the GNU General License Version 2, 7 * June 1991 as shown in the file COPYING in the top-level directory of this 8 * source tree. --- 1018 unchanged lines hidden (view full) --- 1027 err = PTR_ERR(nsim_dev->fib_data); 1028 goto err_traps_exit; 1029 } 1030 1031 err = nsim_dev_health_init(nsim_dev, devlink); 1032 if (err) 1033 goto err_fib_destroy; 1034 | 1/* 2 * Copyright (c) 2018 Cumulus Networks. All rights reserved. 3 * Copyright (c) 2018 David Ahern <dsa@cumulusnetworks.com> 4 * Copyright (c) 2019 Mellanox Technologies. All rights reserved. 5 * 6 * This software is licensed under the GNU General License Version 2, 7 * June 1991 as shown in the file COPYING in the top-level directory of this 8 * source tree. --- 1018 unchanged lines hidden (view full) --- 1027 err = PTR_ERR(nsim_dev->fib_data); 1028 goto err_traps_exit; 1029 } 1030 1031 err = nsim_dev_health_init(nsim_dev, devlink); 1032 if (err) 1033 goto err_fib_destroy; 1034 |
1035 err = nsim_dev_port_add_all(nsim_dev, nsim_bus_dev->port_count); | 1035 err = nsim_dev_psample_init(nsim_dev); |
1036 if (err) 1037 goto err_health_exit; 1038 | 1036 if (err) 1037 goto err_health_exit; 1038 |
1039 err = nsim_dev_port_add_all(nsim_dev, nsim_bus_dev->port_count); 1040 if (err) 1041 goto err_psample_exit; 1042 |
|
1039 nsim_dev->take_snapshot = debugfs_create_file("take_snapshot", 1040 0200, 1041 nsim_dev->ddir, 1042 nsim_dev, 1043 &nsim_dev_take_snapshot_fops); 1044 return 0; 1045 | 1043 nsim_dev->take_snapshot = debugfs_create_file("take_snapshot", 1044 0200, 1045 nsim_dev->ddir, 1046 nsim_dev, 1047 &nsim_dev_take_snapshot_fops); 1048 return 0; 1049 |
1050err_psample_exit: 1051 nsim_dev_psample_exit(nsim_dev); |
|
1046err_health_exit: 1047 nsim_dev_health_exit(nsim_dev); 1048err_fib_destroy: 1049 nsim_fib_destroy(devlink, nsim_dev->fib_data); 1050err_traps_exit: 1051 nsim_dev_traps_exit(devlink); 1052err_dummy_region_exit: 1053 nsim_dev_dummy_region_exit(nsim_dev); --- 59 unchanged lines hidden (view full) --- 1113 err = nsim_dev_health_init(nsim_dev, devlink); 1114 if (err) 1115 goto err_fib_destroy; 1116 1117 err = nsim_bpf_dev_init(nsim_dev); 1118 if (err) 1119 goto err_health_exit; 1120 | 1052err_health_exit: 1053 nsim_dev_health_exit(nsim_dev); 1054err_fib_destroy: 1055 nsim_fib_destroy(devlink, nsim_dev->fib_data); 1056err_traps_exit: 1057 nsim_dev_traps_exit(devlink); 1058err_dummy_region_exit: 1059 nsim_dev_dummy_region_exit(nsim_dev); --- 59 unchanged lines hidden (view full) --- 1119 err = nsim_dev_health_init(nsim_dev, devlink); 1120 if (err) 1121 goto err_fib_destroy; 1122 1123 err = nsim_bpf_dev_init(nsim_dev); 1124 if (err) 1125 goto err_health_exit; 1126 |
1121 err = nsim_dev_port_add_all(nsim_dev, nsim_bus_dev->port_count); | 1127 err = nsim_dev_psample_init(nsim_dev); |
1122 if (err) 1123 goto err_bpf_dev_exit; 1124 | 1128 if (err) 1129 goto err_bpf_dev_exit; 1130 |
1131 err = nsim_dev_port_add_all(nsim_dev, nsim_bus_dev->port_count); 1132 if (err) 1133 goto err_psample_exit; 1134 |
|
1125 devlink_params_publish(devlink); 1126 devlink_reload_enable(devlink); 1127 return 0; 1128 | 1135 devlink_params_publish(devlink); 1136 devlink_reload_enable(devlink); 1137 return 0; 1138 |
1139err_psample_exit: 1140 nsim_dev_psample_exit(nsim_dev); |
|
1129err_bpf_dev_exit: 1130 nsim_bpf_dev_exit(nsim_dev); 1131err_health_exit: 1132 nsim_dev_health_exit(nsim_dev); 1133err_fib_destroy: 1134 nsim_fib_destroy(devlink, nsim_dev->fib_data); 1135err_debugfs_exit: 1136 nsim_dev_debugfs_exit(nsim_dev); --- 16 unchanged lines hidden (view full) --- 1153static void nsim_dev_reload_destroy(struct nsim_dev *nsim_dev) 1154{ 1155 struct devlink *devlink = priv_to_devlink(nsim_dev); 1156 1157 if (devlink_is_reload_failed(devlink)) 1158 return; 1159 debugfs_remove(nsim_dev->take_snapshot); 1160 nsim_dev_port_del_all(nsim_dev); | 1141err_bpf_dev_exit: 1142 nsim_bpf_dev_exit(nsim_dev); 1143err_health_exit: 1144 nsim_dev_health_exit(nsim_dev); 1145err_fib_destroy: 1146 nsim_fib_destroy(devlink, nsim_dev->fib_data); 1147err_debugfs_exit: 1148 nsim_dev_debugfs_exit(nsim_dev); --- 16 unchanged lines hidden (view full) --- 1165static void nsim_dev_reload_destroy(struct nsim_dev *nsim_dev) 1166{ 1167 struct devlink *devlink = priv_to_devlink(nsim_dev); 1168 1169 if (devlink_is_reload_failed(devlink)) 1170 return; 1171 debugfs_remove(nsim_dev->take_snapshot); 1172 nsim_dev_port_del_all(nsim_dev); |
1173 nsim_dev_psample_exit(nsim_dev); |
|
1161 nsim_dev_health_exit(nsim_dev); 1162 nsim_fib_destroy(devlink, nsim_dev->fib_data); 1163 nsim_dev_traps_exit(devlink); 1164 nsim_dev_dummy_region_exit(nsim_dev); 1165 mutex_destroy(&nsim_dev->port_list_lock); 1166} 1167 1168void nsim_dev_remove(struct nsim_bus_dev *nsim_bus_dev) --- 70 unchanged lines hidden --- | 1174 nsim_dev_health_exit(nsim_dev); 1175 nsim_fib_destroy(devlink, nsim_dev->fib_data); 1176 nsim_dev_traps_exit(devlink); 1177 nsim_dev_dummy_region_exit(nsim_dev); 1178 mutex_destroy(&nsim_dev->port_list_lock); 1179} 1180 1181void nsim_dev_remove(struct nsim_bus_dev *nsim_bus_dev) --- 70 unchanged lines hidden --- |