Justin Pryzby wrote:
> On Sat, Jan 06, 2007 at 03:57:30PM -0800, Michael Kerrisk wrote:
>> Hello Justin,
>>
>>> Linux 2.6.5 fs/open.c source indicates that close() can return essentially 
>>> any
>>> file error:
>>>
>>> |int filp_close(struct file *filp, fl_owner_t id)
>>> |   /* Report and clear outstanding errors */
>>> |asmlinkage long sys_close(unsigned int fd)
>>> |           return filp_close(filp, files);
>>>
>>> manpages already alludes to this ("It is quite possible that errors on
>>> a previous write(2) operation are first reported at the final
>>> close()."); included is a patch making it explicit.
>> I don't see this code in fs/open.c in 2.6.19.  Can you clarify please.
> 2.6.18 has comparable sys_close and filp_close, but the new filp_close does an
> fflush() on the file.  fflush(3) indicates that this is where all the previous
> write() errors are picked up.  

fflush(3) is a library routine.  filp_close is in kernel.  Your statement
makes no sense...

> The error-reference text used for the following
> should be consistent:

Two questions:

* what does "consistent" mean in this context?
* how did you verify this for each of the functions below?

>  close
>  fts
>  exec
>  fflush
>  fopen
>  hash
>  recno
>  dbopen
>  fclose
>  fseek
>  mpool
>  rpmatch
> 
> Yesterday I couldn't find the exact phrase.
> 
> Justin
> 

-- 
Michael Kerrisk
maintainer of Linux man pages Sections 2, 3, 4, 5, and 7

Want to help with man page maintenance?  Grab the latest tarball at
http://www.kernel.org/pub/linux/docs/manpages/
read the HOWTOHELP file and grep the source files for 'FIXME'.


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to