Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

netdevsim: correctly check return value of debugfs_create_dir

- Checking return value with IS_ERROR_OR_NULL
- Added error handling where it was not handled

Signed-off-by: Prashant Bhole <bhole_prashant_q7@lab.ntt.co.jp>
Acked-by: Jakub Kicinski <jakub.kicinski@netronome.com>
Signed-off-by: David S. Miller <davem@davemloft.net>

authored by

Prashant Bhole and committed by
David S. Miller
9ee1942c afb4c97d

+8 -6
+4 -4
drivers/net/netdevsim/bpf.c
··· 198 198 { 199 199 struct nsim_bpf_bound_prog *state; 200 200 char name[16]; 201 - int err; 202 201 203 202 state = kzalloc(sizeof(*state), GFP_KERNEL); 204 203 if (!state) ··· 210 211 /* Program id is not populated yet when we create the state. */ 211 212 sprintf(name, "%u", ns->prog_id_gen++); 212 213 state->ddir = debugfs_create_dir(name, ns->ddir_bpf_bound_progs); 213 - if (IS_ERR(state->ddir)) { 214 - err = PTR_ERR(state->ddir); 214 + if (IS_ERR_OR_NULL(state->ddir)) { 215 215 kfree(state); 216 - return err; 216 + return -ENOMEM; 217 217 } 218 218 219 219 debugfs_create_u32("id", 0400, state->ddir, &prog->aux->id); ··· 344 346 &ns->bpf_bind_verifier_delay); 345 347 ns->ddir_bpf_bound_progs = 346 348 debugfs_create_dir("bpf_bound_progs", ns->ddir); 349 + if (IS_ERR_OR_NULL(ns->ddir_bpf_bound_progs)) 350 + return -ENOMEM; 347 351 348 352 ns->bpf_tc_accept = true; 349 353 debugfs_create_bool("bpf_tc_accept", 0600, ns->ddir,
+4 -2
drivers/net/netdevsim/netdev.c
··· 151 151 152 152 ns->netdev = dev; 153 153 ns->ddir = debugfs_create_dir(netdev_name(dev), nsim_ddir); 154 + if (IS_ERR_OR_NULL(ns->ddir)) 155 + return -ENOMEM; 154 156 155 157 err = nsim_bpf_init(ns); 156 158 if (err) ··· 471 469 int err; 472 470 473 471 nsim_ddir = debugfs_create_dir(DRV_NAME, NULL); 474 - if (IS_ERR(nsim_ddir)) 475 - return PTR_ERR(nsim_ddir); 472 + if (IS_ERR_OR_NULL(nsim_ddir)) 473 + return -ENOMEM; 476 474 477 475 err = bus_register(&nsim_bus); 478 476 if (err)