Commit d8c7649e99e4b081b624aefe1e77caa30b53cb18

Authored by Randy Dunlap
Committed by Linus Torvalds
1 parent 5906e4171a

[PATCH] kernel/params: driver layer error checking

Check driver layer return values in kernel/params.c

Signed-off-by: Randy Dunlap <rdunlap@xenotime.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>

Showing 1 changed file with 11 additions and 2 deletions Side-by-side Diff

... ... @@ -547,6 +547,7 @@
547 547 unsigned int name_skip)
548 548 {
549 549 struct module_kobject *mk;
  550 + int ret;
550 551  
551 552 mk = kzalloc(sizeof(struct module_kobject), GFP_KERNEL);
552 553 BUG_ON(!mk);
... ... @@ -554,7 +555,8 @@
554 555 mk->mod = THIS_MODULE;
555 556 kobj_set_kset_s(mk, module_subsys);
556 557 kobject_set_name(&mk->kobj, name);
557   - kobject_register(&mk->kobj);
  558 + ret = kobject_register(&mk->kobj);
  559 + BUG_ON(ret < 0);
558 560  
559 561 /* no need to keep the kobject if no parameter is exported */
560 562 if (!param_sysfs_setup(mk, kparam, num_params, name_skip)) {
... ... @@ -684,7 +686,14 @@
684 686 */
685 687 static int __init param_sysfs_init(void)
686 688 {
687   - subsystem_register(&module_subsys);
  689 + int ret;
  690 +
  691 + ret = subsystem_register(&module_subsys);
  692 + if (ret < 0) {
  693 + printk(KERN_WARNING "%s (%d): subsystem_register error: %d\n",
  694 + __FILE__, __LINE__, ret);
  695 + return ret;
  696 + }
688 697  
689 698 param_sysfs_builtin();
690 699