Thread (2 messages) 2 messages, 2 authors, 2012-09-24

Re: ext4_readdir ignores filldir error code

From: Jan Kara <jack@suse.cz>
Date: 2012-09-24 15:07:37
Also in: linux-fsdevel

  Hello,

On Mon 24-09-12 15:47:24, Kasatkin, Dmitry wrote:
I noticed following in ext4_readdir() and in other file systems..

filldir returns error in "error":
       error = filldir(dirent, de->name, ...)

But function itself returns "ret"

What I can see is that when filldir fails, ext4_readir quits, but with
no error....
       while (!error && !stored && filp->f_pos < inode->i_size) {


Is it by design or an error?
  It works as designed (although I agree that the design is a bit odd).
Note that filler functions also set dirent->error which is then used by
e.g. getdents() syscall to set return value.

								Honza
-- 
Jan Kara [off-list ref]
SUSE Labs, CR
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help