lkml.org 
[lkml]   [2007]   [Jan]   [24]   [last100]   RSS Feed
Views: [more markup]  [less markup]  [headers]  [forward] 
 
Messages in this thread
/
DateWed, 24 Jan 2007 10:52:58 +0100
FromLaurent Vivier <>
SubjectRe: [PATCH -mm 5/5][AIO] - Add listio syscall support
Andrew Morton wrote:
> On Wed, 17 Jan 2007 10:55:54 +0100
> Sébastien Dugué <sebastien.dugue@bull.net> 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@bull.net  --------------
       "Any sufficiently advanced technology is
  indistinguishable from magic." - Arthur C. Clarke
[unhandled content-type:application/pgp-signature]
\
 
 \ /
  Last update: 2007-01-24 11:35    [from the cache]
©2003-2008