[lkml]   [2013]   [Jul]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: [PATCH 2/3] fs/binfmts: Better handling of binfmt loops
On Tue, 30 Jul 2013 16:16:51 -0700 Zach Levis <> wrote:

> Quoting Andrew Morton <>:
> > On Thu, 25 Jul 2013 08:40:44 -0700 Zach Levis <> wrote:
> >
> >> With these changes, when a binfmt loop is encountered,
> >> the ELOOP will propogate back to the 0 depth. At this point the
> >> argv and argc values will be reset to what they were originally and an
> >> attempt is made to continue with the following binfmt handlers.
> >
> > hm, why? What problem does this fix? What value does the change offer
> > to our users?
> This is used when the binfmt_misc,script,etc options are configured in
> a way that would previously prevent executables from launching that
> could be executed with a different binfmt but don't because of a loop
> in a prior binfmt.
> Example: a qemu is configured to run 64-bit ELFs on an otherwise
> 32-bit system. The system's owner switches to running with 64-bit
> executables, but forgets to disable the binfmt_misc option that
> redirects 64bit ELFs to qemu. Since the qemu executable is a 64-bit
> ELF now, binfmt_misc keeps on matching it with the qemu rule,
> preventing the execution of any 64-bit binary.

So the admin can unforget to make that change and no longer has a problem.

> With this patch, an error is printed and search_binary_handler()
> continues on to the next handler, allowing the original executable to
> run normally so the user can (hopefully) fix their misconfiguration
> more easily.

Is all this really worth changing the kernel for? It sounds
a bit marginal.

 \ /
  Last update: 2013-07-31 01:41    [W:0.056 / U:9.508 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site