[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20090820115830.123490@gmx.net>
Date: Thu, 20 Aug 2009 13:58:30 +0200
From: "Helge Deller" <deller@....de>
To: James Bottomley <James.Bottomley@...senPartnership.com>
Cc: linux-kernel@...r.kernel.org, roland@...hat.com,
linux-parisc@...r.kernel.org
Subject: Re: kernel segv with 2.6.31-rc6 ?
> 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@...e.de>
Thanks!
I tested it, and it does at least fix the kernel crash.
Tested-by: Helge Deller <deller@....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);
>
--
Jetzt kostenlos herunterladen: Internet Explorer 8 und Mozilla Firefox 3 -
sicherer, schneller und einfacher! http://portal.gmx.net/de/go/atbrowser
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists