Re: [LTP] [PATCH] io_submit: uninitialized iocb may not return -EINVAL

Nitin Yadav
2012-10-09T06:13:00Z

Hi Wanlong,

Below are the output where I am getting - EPERM (returned value = 1) as a return value from io_submit.

io_submit01 1 TPASS : expected failure - returned value = -22 : Invalid argument
io_submit01 2 TPASS : expected failure - returned value = -22 : Invalid argument
io_submit01 3 TFAIL : unexpected failure - returned value = 1 : Unknown error 18446744073709551615, expected one of -EINVAL, -EBADF, -EFAULT
io_submit01 4 TPASS : expected failure - returned value = -14 : Bad address
io_submit01 5 TPASS : expected failure - returned value = -22 : Invalid argument
io_submit01 6 TPASS : expected failure - returned value = -9 : Bad file descriptor
io_submit01 7 TPASS : expected success - returned value = 0
io_submit01 8 TPASS : expected success - returned value = 1

Could you please let me know can we consider - EPERM case as a return value for io_submit.

Thanks,
Nitin Yadav

Hi Jan，

>>> --- 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.

I looked into the io_submit(2) code in kernel and didn't see any path can
return -EPERM, so I think you should confirm on it again.

Thanks,
Wanlong Gao

>
> Regards,
> Jan
>
>>
>> Thanks,
>> Wanlong Gao
>>
>
>

Information transmitted by this e-mail is proprietary to MphasiS, its associated companies and/ or its customers and is intended
for use only by the individual or entity to which it is addressed, and may contain information that is privileged, confidential or
exempt from disclosure under applicable law. If you are not the intended recipient or it appears that this mail has been forwarded
to you without proper authority, you are notified that any use or dissemination of this information in any manner is strictly
prohibited. In such cases, please notify us immediately at mailmaster@mphasis.com and delete this mail from your records.
------------------------------------------------------------------------------
Don't let slow site performance ruin your business. Deploy New Relic APM
Deploy New Relic app performance management and know exactly
what is happening inside your Ruby, Python, PHP, Java, and .NET app
Try New Relic at no cost today and get our sweet Data Nerd shirt too!