Re: [PATCH -mm 5/5][AIO] - Add listio syscall support
From: Laurent Vivier
Date: Wed Jan 24 2007 - 04:53:25 EST
Andrew Morton wrote:
> On Wed, 17 Jan 2007 10:55:54 +0100
> Sébastien Dugué <sebastien.dugue@xxxxxxxx> wrote:
>
>> +struct lio_event *lio_create(struct sigevent __user *user_event,
>> + int mode)
>> +{
>> + int ret = 0;
>> + struct lio_event *lio = NULL;
>> +
>> + if (unlikely((mode == LIO_NOWAIT) && !user_event))
>> + return lio;
>> +
>> + lio = kzalloc(sizeof(*lio), GFP_KERNEL);
>> +
>> + if (!lio)
>> + return ERR_PTR(-EAGAIN);
>> +
>
> Why EAGAIN and not ENOMEM?
According to the POSIX AIO specifications:
"ERRORS:
...
[EAGAIN]
The resources necessary to queue all the I/O requests were not available. "
I think memory is "a resource necessary to queue all the I/O requests"...
http://www.opengroup.org/onlinepubs/009695399/functions/lio_listio.html
Regards,
Laurent
--
------------- Laurent.Vivier@xxxxxxxx --------------
"Any sufficiently advanced technology is
indistinguishable from magic." - Arthur C. Clarke
Attachment:
signature.asc
Description: OpenPGP digital signature