linux-edac.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Re: [PATCH] edac: Fix reference count leak in edac_device_register_sysfs_main_kobj()
@ 2020-05-29  9:20 Markus Elfring
  2020-05-29  9:36 ` Borislav Petkov
  0 siblings, 1 reply; 8+ messages in thread
From: Markus Elfring @ 2020-05-29  9:20 UTC (permalink / raw)
  To: Qiushi Wu, linux-edac
  Cc: linux-kernel, kernel-janitors, Borislav Petkov, Doug Thompson,
	Greg Kroah-Hartman, James Morse, Kangjie Lu,
	Mauro Carvalho Chehab, Robert Richter, Tony Luck

…
> +++ b/drivers/edac/edac_device_sysfs.c
> @@ -275,6 +275,7 @@ int edac_device_register_sysfs_main_kobj(struct edac_device_ctl_info *edac_dev)
>
>  	/* Error exit stack */
>  err_kobj_reg:
> +	kobject_put(&edac_dev->kobj);
>  	module_put(edac_dev->owner);
>
>  err_out:

I suggest to modify the affected source code in a different way.

* The label “err_out” can be replaced by direct return statement,
  can't it?
  https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/process/coding-style.rst?id=75caf310d16cc5e2f851c048cd597f5437013368#n456

* I interpret the function implementation in the way
  that that there is only one if branch where clean-up of
  system resources is needed.
  Thus I would prefer to specify corresponding complete exception handling
  directly at this place (instead of using the goto statement).

Regards,
Markus

^ permalink raw reply	[flat|nested] 8+ messages in thread
* Re: [PATCH] edac: Fix reference count leak in edac_device_register_sysfs_main_kobj()
@ 2020-05-29  8:45 Markus Elfring
  2020-05-29  9:08 ` Borislav Petkov
  0 siblings, 1 reply; 8+ messages in thread
From: Markus Elfring @ 2020-05-29  8:45 UTC (permalink / raw)
  To: Qiushi Wu, linux-edac
  Cc: kernel-janitors, linux-kernel, Borislav Petkov, Doug Thompson,
	Greg Kroah-Hartman, James Morse, Kangjie Lu,
	Mauro Carvalho Chehab, Robert Richter, Tony Luck

> object_init_and_add() should be handled when it return an error,
> because kobject_init_and_add() takes reference even when it fails.

I find this wording approach improvable.


> Previous commit "b8eb718348b8" fixed a similar problem.

Would you like to indicate with such information (according to
the topic “net-sysfs: Fix reference count leak in rx|netdev_queue_add_kobject”)
that your issue was detected also with the help of the kernel fuzzing
tool “syzkaller”?


How do you think about to add an imperative wording to the change description?
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/process/submitting-patches.rst?id=b0c3ba31be3e45a130e13b278cf3b90f69bda6f6#n151


Will it be helpful to combine this update step together with
“edac: Fix reference count leak in edac_pci_main_kobj_setup”
into a small patch series?
https://lore.kernel.org/lkml/20200528202238.18078-1-wu000273@umn.edu/
https://lore.kernel.org/patchwork/patch/1249351/

Regards,
Markus

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2020-05-29 11:50 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-05-29  9:20 [PATCH] edac: Fix reference count leak in edac_device_register_sysfs_main_kobj() Markus Elfring
2020-05-29  9:36 ` Borislav Petkov
2020-05-29  9:40   ` Markus Elfring
2020-05-29  9:47     ` Borislav Petkov
2020-05-29 10:40       ` Markus Elfring
2020-05-29 11:50         ` Borislav Petkov
  -- strict thread matches above, loose matches on Subject: below --
2020-05-29  8:45 [PATCH] " Markus Elfring
2020-05-29  9:08 ` Borislav Petkov

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).