[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1384549079.18739.33.camel@joe-AO722>
Date: Fri, 15 Nov 2013 12:57:59 -0800
From: Joe Perches <joe@...ches.com>
To: Al Viro <viro@...IV.linux.org.uk>
Cc: Peter Wu <lekensteyn@...il.com>, linux-kernel@...r.kernel.org
Subject: Re: [REGRESSION] coredumps truncated after "new helper:
dump_align()"
On Fri, 2013-11-15 at 20:38 +0000, Al Viro wrote:
> On Fri, Nov 15, 2013 at 03:26:10PM +0100, Peter Wu wrote:
> > Somewhere in the merge window of 3.13, coredumps appear truncated.
> > Instead of 319488 bytes, I get 868 bytes (tested with x86_64 only).
> >
> > The latest Linus' master (v3.12-9579-g049ffa8) is still affected.
> > Bisection leads to:
> >
> > commit 22a8cb8248ba5d340307ba72432253b1dbdb5cf7
trivia:
> diff --git a/fs/coredump.c b/fs/coredump.c
[]
> @@ -733,7 +733,7 @@ int dump_align(struct coredump_params *cprm, int align)
> {
> unsigned mod = cprm->written & (align - 1);
> if (align & (align - 1))
> - return -EINVAL;
> - return mod ? dump_skip(cprm, align - mod) : 0;
> + return 0;
> + return mod ? dump_skip(cprm, align - mod) : 1;
> }
> EXPORT_SYMBOL(dump_align);
extern int dump_skip(struct coredump_params *cprm, size_t nr);
extern int dump_emit(struct coredump_params *cprm, const void *addr, int nr);
extern int dump_align(struct coredump_params *cprm, int align);
Perhaps all of these should return bool not int.
Is there a reason these should be EXPORT_SYMBOL?
--
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