lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Tue, 7 Apr 2009 17:22:39 +0930
From:	Rusty Russell <rusty@...tcorp.com.au>
To:	Mike Galbraith <efault@....de>
Cc:	Ingo Molnar <mingo@...e.hu>, LKML <linux-kernel@...r.kernel.org>,
	Linus Torvalds <torvalds@...ux-foundation.org>
Subject: [PULL] module bogus patch revert

On Monday 06 April 2009 18:38:48 Mike Galbraith wrote:
> Hi Rusty,
> 
> The below rendered modules unloadable, and my bog standard opensuse 11.0
> x86_64 box became a doorstop.
...
> (nobody else has griped yet and it's already 11:08.  hm)

Needs MODVERSIONS=y + MODULE_FORCE_UNLOAD=n.

Thanks for report!
Rusty.
---

The following changes since commit d508afb437daee7cf07da085b635c44a4ebf9b38:
  Trond Myklebust (1):
        NFS: Fix a double free in nfs_parse_mount_options()

are available in the git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-module-and-param.git master

Rusty Russell (1):
      Revert "module: remove the SHF_ALLOC flag on the __versions section."

 kernel/module.c |    3 ---
 1 files changed, 0 insertions(+), 3 deletions(-)


commit 2e45e77787c9d0720b046eb69856edf43b17e33e
Author: Rusty Russell <rusty@...tcorp.com.au>
Date:   Tue Apr 7 17:12:43 2009 +0930

    Revert "module: remove the SHF_ALLOC flag on the __versions section."
    
    This reverts commit 9cb610d8e35fe3ec95a2fe2030b02f85aeea83c1.
    
    This was an impressively stupid patch.  Firstly, we reset the SHF_ALLOC
    flag lower down in the same function, so the patch was useless.  Even
    better, find_sec() ignores sections with SHF_ALLOC not set, so
    it breaks CONFIG_MODVERSIONS=y with CONFIG_MODULE_FORCE_LOAD=n, which
    refuses to load the module since it can't find the __versions section.
    
    Signed-off-by: Rusty Russell <rusty@...tcorp.com.au>
---
 kernel/module.c |    3 ---
 1 files changed, 0 insertions(+), 3 deletions(-)

diff --git a/kernel/module.c b/kernel/module.c
index c268a77..05f014e 100644
--- a/kernel/module.c
+++ b/kernel/module.c
@@ -1952,9 +1952,6 @@ static noinline struct module *load_module(void __user *umod,
 		if (strstarts(secstrings+sechdrs[i].sh_name, ".exit"))
 			sechdrs[i].sh_flags &= ~(unsigned long)SHF_ALLOC;
 #endif
-		/* Don't keep __versions around; it's just for loading. */
-		if (strcmp(secstrings + sechdrs[i].sh_name, "__versions") == 0)
-			sechdrs[i].sh_flags &= ~(unsigned long)SHF_ALLOC;
 	}
 
 	modindex = find_sec(hdr, sechdrs, secstrings,
--
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

Powered by Openwall GNU/*/Linux Powered by OpenVZ