----- Original Message ----- > From: "Wanlong Gao" <[email protected]> > To: "Jan Stancek" <[email protected]> > Cc: [email protected], "Jeffrey Burke" <[email protected]> > Sent: Thursday, March 15, 2012 2:09:48 AM > Subject: Re: [LTP] [PATCH] io_submit: uninitialized iocb may not return > -EINVAL > > Hi Jan, > > > > > Testcase 1.3 - EINVAL: uninitialized iocb > > is about submitting uninitialized iocb structure. > > > > Test is expecting to get -EINVAL, but other values are also > > possible as uninitialized struct can contain any values. > > > > For example following data fails with -EBADF: > > --- snip --- > > unsigned char bad_iocb[64] = { > > 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, > > 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, > > 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x84, 0xa5, > > 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, > > 0x00, 0x00, 0x0f, 0xff, 0xe0, 0x10, 0x0c, 0x30, > > 0x00, 0x00, 0x0f, 0xff, 0xe0, 0x10, 0x0c, 0x40, > > 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, > > 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }; > > memcpy(&iocb, bad_iocb, sizeof(iocb)); > > iocbs[0] = &iocb; > > TEST(io_submit(ctx, 1, iocbs)); > > check_result(-EINVAL, TEST_RETURN); > > --- snip --- > > > > This patch accepts also few other errno codes as valid return > > value. > > > > Signed-off-by: Jan Stancek <[email protected]> > > --- > > testcases/kernel/syscalls/io_submit/io_submit01.c | 16 > > +++++++++++++++- > > 1 files changed, 15 insertions(+), 1 deletions(-) > > > > > > > > 0001-io_submit-uninitialized-iocb-may-not-return-EINVAL.patch > > > > > > diff --git a/testcases/kernel/syscalls/io_submit/io_submit01.c > > b/testcases/kernel/syscalls/io_submit/io_submit01.c > > index da15aa0..3983fa4 100644 > > --- a/testcases/kernel/syscalls/io_submit/io_submit01.c > > +++ b/testcases/kernel/syscalls/io_submit/io_submit01.c > > @@ -126,7 +126,21 @@ int main(int argc, char *argv[]) > > /* 1.3 - EINVAL: uninitialized iocb */ > > iocbs[0] = &iocb; > > TEST(io_submit(ctx, 1, iocbs)); > > - check_result(-EINVAL, TEST_RETURN); > > + switch(TEST_RETURN) { > > + case -EINVAL: > > + case -EBADF: > > + case -EFAULT: > > + case -EPERM: > > > I don't think io_submit(2) can return -EPERM. > > Do you think so?
I was trying all sorts of random data and I remember seeing once "-1". I'm failing to reproduce it today, so I could be wrong. If I fail to find data that gives -EPERM, I'll remove it in v2. Regards, Jan > > Thanks, > Wanlong Gao > ------------------------------------------------------------------------------ This SF email is sponsosred by: Try Windows Azure free for 90 days Click Here http://p.sf.net/sfu/sfd2d-msazure _______________________________________________ Ltp-list mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/ltp-list
