SLOW ls(1) - cygwin dir lookups with WinNT async requests?

Aurélien Couderc aurelien.couderc2002@gmail.com
Mon Jul 21 16:33:48 GMT 2025


On Mon, Jul 21, 2025 at 6:08 PM Brian Inglis via Cygwin
<cygwin@cygwin.com> wrote:
>
> On 2025-07-21 09:19, Aurélien Couderc via Cygwin wrote:
> > On Fri, Jul 18, 2025 at 12:50 PM Andrey Repin <anrdaemon@yandex.ru> wrote:
> >>
> >> Greetings, Aurélien Couderc!
> >>
> >>>>>> Stat and ACL info require additional calls.
> >>>>
> >>>>> Right, but my proposal is to do parallel/async lookups. The Windows NT
> >>>>> kernel depends heavily on multithreading and parallelism, of which
> >>>>> Cygwin uses nothing right now for dir lookups.
> >>>>
> >>>> Not an option unless it can be cheaply done under winsup/cygwin/fhandler.
> >>>> Most utilities are GNU/BSD/Linux ports, so custom mods would have to be
> >>>> submitted and accepted upstream, as we often already have enough patches to
> >>>> maintain, to get them to build and work cleanly under Cygwin.
> >>
> >>> I think you misunderstand me. I am suggesting to improve the Cygwin
> >>> implementation of opendir(), readdir() and friends to do Win32/WInNT
> >>> calls async to speed up dir listings.
> >>
> >> If you know how it can be done, why not provide a patch?
> >
> > Because I am not YET qualified? This is god level Cygwin hacking
> > level, like Corinna Vinschen can do. I'm just a student, doing some
> > ReactOS/Windows hacking.
>
> Anyone making such fundamental changes would have to measure performance on SSDs
> and Rust, with/out memory limitations, make changes, and remeasure, possibly
> with a rebuild of coreutils if any changes were made to Cygwin that could affect
> coreutils autoconf.

I don't want to change the public cygwin API. I want to improve the
implementation of opendir(), readdir() ...

Aurélien
-- 
Aurélien Couderc <aurelien.couderc2002@gmail.com>
Big Data/Data mining expert, chess enthusiast


More information about the Cygwin mailing list