Re: [PATCH v3 0/3] fs/binfmts: Improve handling of loops

From: Kees Cook
Date: Tue Aug 06 2013 - 17:12:04 EST

Hi Zach,

I like the idea behind these clean ups. Thanks for working on them!

On Fri, Aug 02, 2013 at 04:21:40PM -0700, Zach Levis wrote:
> This v3 is based off Oleg's changes from "exec: more cleanups" and
> "exec: minor cleanups + minor fix"

I would echo all of Oleg's comments on the series so far. Additionally,
please use "scripts/" for checking your patches for common
errors (see item 4 in Documentation/SubmittingPatches). I see a number
of problems that are detected by the tool:

WARNING: line over 80 characters
#52: FILE: fs/exec.c:1403:
+ if (retval == -ELOOP && bprm->recursion_depth == 0) { /* cur, previous */


ERROR: trailing statements should be on next line
#269: FILE: fs/binfmt_em86.c:70:
+ if (retval < 0) return retval;


ERROR: "(foo*)" should be "(foo *)"
#341: FILE: fs/binfmt_flat.c:791:
+ memset((void*)(datapos + data_len), 0, bss_len +


After that, be sure to use "scripts/" for generating
your CC list (see item 5 in SubmittingPatches; I initially missed this
series -- adding more CCs for people that have touched the code can help
with your reviews).

Also, you only need to include a single Signed-off-by line for
yourself. :)

> It incorporates Oleg and Andrew's suggestions and takes care
> of the issue from Dan's patch "fs/binfmts: double unlock in
> search_binary_handler()"

In the commit message, can you include some examples of how to generate
the loops you're encountering? This helps people understand why you're
doing what you're doing and provides a way for people to reproduce the
conditions themselves.



Kees Cook
Chrome OS Security
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at