Why does readdir() open files ?

Ben RUBSON ben.rubson@gmail.com
Wed Mar 28 16:00:00 GMT 2018


Hi,

I'm porting a FUSE FS to Cygwin, and I focus especially on readdir()  
performance.

What I see is that when readdir() occurs, each file of the directory is as  
expected (at least I think) stated (getattr), but also opened (open).
The first block of the file was even red, until I set the notexec mount  
option.

My question is, why is every file opened ?
This is quite a performance killer, particularly for a FUSE FS.

I thought this was to calculate the inode number, I then set the ihash  
mount option, but it did not help.

Thank you very much,

Best regards,

Ben



More information about the Cygwin-developers mailing list