lkml.org 
[lkml]   [2010]   [Mar]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[PATCH] fs, binfmt_aout: Fix pointer warnings
    Hi,

    I'm getting the warnings in the commit message below with current git. Maybe fix
    them like this:

    --
    From: Borislav Petkov <petkovbb@gmail.com>
    Date: Mon, 8 Mar 2010 16:37:42 +0100
    Subject: [PATCH] fs, binfmt_aout: Fix pointer warnings
    MIME-Version: 1.0
    Content-Type: text/plain; charset=UTF-8
    Content-Transfer-Encoding: 8bit

    I get

    fs/binfmt_aout.c: In function ‘aout_core_dump’:
    fs/binfmt_aout.c:125: warning: passing argument 2 of ‘dump_write’ makes pointer from integer without a cast
    include/linux/coredump.h:12: note: expected ‘const void *’ but argument is of type ‘long unsigned int’
    fs/binfmt_aout.c:132: warning: passing argument 2 of ‘dump_write’ makes pointer from integer without a cast
    include/linux/coredump.h:12: note: expected ‘const void *’ but argument is of type ‘long unsigned int’

    due to dump_write() expecting a user void *. Fold casts into the
    START_DATA/START_STACK macros and shut up the warnings.

    Signed-off-by: Borislav Petkov <petkovbb@gmail.com>
    ---
    fs/binfmt_aout.c | 14 ++++++++------
    1 files changed, 8 insertions(+), 6 deletions(-)

    diff --git a/fs/binfmt_aout.c b/fs/binfmt_aout.c
    index 15d80bb..9b6aef0 100644
    --- a/fs/binfmt_aout.c
    +++ b/fs/binfmt_aout.c
    @@ -75,14 +75,16 @@ static int aout_core_dump(struct coredump_params *cprm)
    struct file *file = cprm->file;
    mm_segment_t fs;
    int has_dumped = 0;
    - unsigned long dump_start, dump_size;
    + void __user *dump_start;
    + int dump_size;
    struct user dump;
    #ifdef __alpha__
    -# define START_DATA(u) (u.start_data)
    +# define START_DATA(u) ((void __user *)u.start_data)
    #else
    -# define START_DATA(u) ((u.u_tsize << PAGE_SHIFT) + u.start_code)
    +# define START_DATA(u) ((void __user *)((u.u_tsize << PAGE_SHIFT) + \
    + u.start_code))
    #endif
    -# define START_STACK(u) (u.start_stack)
    +# define START_STACK(u) ((void __user *)u.start_stack)

    fs = get_fs();
    set_fs(KERNEL_DS);
    @@ -104,9 +106,9 @@ static int aout_core_dump(struct coredump_params *cprm)

    /* make sure we actually have a data and stack area to dump */
    set_fs(USER_DS);
    - if (!access_ok(VERIFY_READ, (void __user *)START_DATA(dump), dump.u_dsize << PAGE_SHIFT))
    + if (!access_ok(VERIFY_READ, START_DATA(dump), dump.u_dsize << PAGE_SHIFT))
    dump.u_dsize = 0;
    - if (!access_ok(VERIFY_READ, (void __user *)START_STACK(dump), dump.u_ssize << PAGE_SHIFT))
    + if (!access_ok(VERIFY_READ, START_STACK(dump), dump.u_ssize << PAGE_SHIFT))
    dump.u_ssize = 0;

    set_fs(KERNEL_DS);
    --
    1.6.6.1
    --
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2010-03-08 16:49    [W:0.024 / U:0.568 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site