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

Wanlong Gao
2012-10-16T02:33:13Z

On 10/09/2012 02:08 PM, Nitin Yadav wrote:
> 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.

OK, maybe I missed something, so, can you show us how did you produce this in detail?

Thanks,
Wanlong Gao

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