lkml.org 
[lkml]   [2013]   [Mar]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: change of behavior for madvise in 3.9-rc1
On Thu, 7 Mar 2013, Shaohua Li wrote:
> On Wed, Mar 06, 2013 at 11:05:04PM -0500, CAI Qian wrote:
> > Bisecting indicated that this commit,
> > 1998cc048901109a29924380b8e91bc049b32951
> > mm: make madvise(MADV_WILLNEED) support swap file prefetch
> >
> > Caused an LTP test failure,
> > http://goo.gl/1FVPy
> >
> > madvise02 1 TPASS : failed as expected: TEST_ERRNO=EINVAL(22): Invalid argument
> > madvise02 2 TPASS : failed as expected: TEST_ERRNO=EINVAL(22): Invalid argument
> > madvise02 3 TPASS : failed as expected: TEST_ERRNO=EINVAL(22): Invalid argument
> > madvise02 4 TPASS : failed as expected: TEST_ERRNO=ENOMEM(12): Cannot allocate memory
> > madvise02 5 TFAIL : madvise succeeded unexpectedly
> >
> > While it passed without the above commit
> > madvise02 1 TPASS : failed as expected: TEST_ERRNO=EINVAL(22): Invalid argument
> > madvise02 2 TPASS : failed as expected: TEST_ERRNO=EINVAL(22): Invalid argument
> > madvise02 3 TPASS : failed as expected: TEST_ERRNO=EINVAL(22): Invalid argument
> > madvise02 4 TPASS : failed as expected: TEST_ERRNO=ENOMEM(12): Cannot allocate memory
> > madvise02 5 TPASS : failed as expected: TEST_ERRNO=EBADF(9): Bad file descriptor
>
> I thought this is expected behavior. madvise(MADV_WILLNEED) to anonymous memory
> doesn't return -EBADF now, as now we support swap prefretch.

I agree with Shaohua: although the kernel strives for back-compatibility
with userspace, I don't think that goes so far as to tell an arbitrary LTP
test that it has failed, once the kernel has been enhanced to support new
functionality. We could never add or extend system calls if that were so.

Hugh


\
 
 \ /
  Last update: 2013-03-07 20:24    [W:0.238 / U:0.296 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site