From: Rusty Russell <rusty@rustcorp.com.au>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: linux-kernel@vger.kernel.org,
James Bottomley <James.Bottomley@hansenpartnership.com>,
Helge Deller <deller@gmx.de>
Subject: [PATCH 2/2] module: workaround duplicate section names
Date: Wed, 26 Aug 2009 22:04:12 +0930 [thread overview]
Message-ID: <200908262204.13395.rusty@rustcorp.com.au> (raw)
In-Reply-To: <200908262202.54457.rusty@rustcorp.com.au>
From: James Bottomley <James.Bottomley@HansenPartnership.com>
(This patch leaves other problems, particularly the sections
directory, but recent parisc toolchains seem to produce these
modules and this prevents a crash and is a minimal change -- RR).
The root cause is a duplicate section name (.text); is this legal?
However, there's a problem with commit
6d76013381ed28979cd122eb4b249a88b5e384fa in that if you fail to allocate
a mod->sect_attrs (in this case it's null because of the duplication),
it still gets used without checking in add_notes_attrs()
This should fix it
Signed-off-by: James Bottomley <James.Bottomley@suse.de>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Tested-by: Helge Deller <deller@gmx.de>
---
diff --git a/kernel/module.c b/kernel/module.c
index fd14114..a703c49 100644
--- a/kernel/module.c
+++ b/kernel/module.c
@@ -2353,7 +2353,8 @@ static noinline struct module *load_module(void __user *umod,
if (err < 0)
goto unlink;
add_sect_attrs(mod, hdr->e_shnum, secstrings, sechdrs);
- add_notes_attrs(mod, hdr->e_shnum, secstrings, sechdrs);
+ if (mod->sect_attrs)
+ add_notes_attrs(mod, hdr->e_shnum, secstrings, sechdrs);
/* Get rid of temporary copy */
vfree(hdr);
next prev parent reply other threads:[~2009-08-26 12:34 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-08-26 12:32 [PATCH 1/2] module: fix BUG_ON() for powerpc (and other function descriptor archs) Rusty Russell
2009-08-26 12:34 ` Rusty Russell [this message]
2009-08-27 4:53 ` [PATCH 2/2] module: workaround duplicate section names Amerigo Wang
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=200908262204.13395.rusty@rustcorp.com.au \
--to=rusty@rustcorp.com.au \
--cc=James.Bottomley@hansenpartnership.com \
--cc=deller@gmx.de \
--cc=linux-kernel@vger.kernel.org \
--cc=torvalds@linux-foundation.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.