mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH 1/2 V2] livepatch: handle kzalloc failure properly
@ 2018-12-13 14:05 Nicholas Mc Guire
  2018-12-13 14:05 ` [PATCH 2/2 " Nicholas Mc Guire
  0 siblings, 1 reply; 8+ messages in thread
From: Nicholas Mc Guire @ 2018-12-13 14:05 UTC (permalink / raw)
  To: Josh Poimboeuf
  Cc: Jessica Yu, Jiri Kosina, Miroslav Benes, Petr Mladek,
	live-patching, linux-kernel, Nicholas Mc Guire

kzalloc() return should always be checked - notably in example code
where this may be seen as reference. On failure of allocation
livepatch_fix1_dummy_alloc() should return NULL.

Signed-off-by: Nicholas Mc Guire <hofrat@osadl.org>
---

Problem was located with an experimental coccinelle script

V2: ...and since it is reference code the fix should be correct as well...
    thanks to Petr Mladek <pmladek@suse.com> for catching the missing
    kfree().

Patch was compile tested with: x86_64_defconfig + FTRACE=y
FUNCTION_TRACER=y, EXPERT=y, LATENCYTOP=y, SAMPLES=y, SAMPLE_LIVEPATCH=y
(with some unrelated sparse warnings on symbols not being static)

Patch is against 4.20-rc6 (localversion-next is next-20181213)

 samples/livepatch/livepatch-shadow-fix1.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/samples/livepatch/livepatch-shadow-fix1.c b/samples/livepatch/livepatch-shadow-fix1.c
index 49b1355..e8f1bd6 100644
--- a/samples/livepatch/livepatch-shadow-fix1.c
+++ b/samples/livepatch/livepatch-shadow-fix1.c
@@ -89,6 +89,11 @@ struct dummy *livepatch_fix1_dummy_alloc(void)
 	 * pointer to handle resource release.
 	 */
 	leak = kzalloc(sizeof(int), GFP_KERNEL);
+	if (!leak) {
+		kfree(d);
+		return NULL;
+	}
+
 	klp_shadow_alloc(d, SV_LEAK, sizeof(leak), GFP_KERNEL,
 			 shadow_leak_ctor, leak);
 
-- 
2.1.4


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

end of thread, other threads:[~2018-12-13 20:50 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-12-13 14:05 [PATCH 1/2 V2] livepatch: handle kzalloc failure properly Nicholas Mc Guire
2018-12-13 14:05 ` [PATCH 2/2 " Nicholas Mc Guire
2018-12-13 14:14   ` Joe Lawrence
2018-12-13 15:39     ` Nicholas Mc Guire
2018-12-13 16:39       ` Joe Lawrence
2018-12-13 18:51         ` Nicholas Mc Guire
2018-12-13 20:39           ` Joe Lawrence
2018-12-13 20:49             ` Josh Poimboeuf

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®