Recent changes to path_conv::check -- ouch

Christopher Faylor
Sun Jun 10 17:17:00 GMT 2001

I guess I missed this before but you added a potentially expensive
operation to the middle of the path_conv check loop by calling
update_fs_info repeatedly.  This looks like we will suffer a performance
hit in the non-ntea case for the privilege of a performance gain for the
use of ntea for symlinks.  I don't think that's acceptable.

It also looks like even in the ideal case, we're guaranteed to call
update_fs_info twice on the same path.

Also, you seemed to have changed the name of some recently added
elements to the path_conv class.  vol_flags became fs_flags and
vol_serial became fs_serial.

path_conv is probably the most frequently called function in cygwin so
we've tried very hard to keep the code flow as optimized as possible by
not calling the OS too often.  Maybe I'm wrong, but I think you've
probably added a performance hit with your recent changes.

Have you run any before/after performance checks on your code?


More information about the Cygwin-developers mailing list