DMARC-Filter: OpenDMARC Filter v1.4.2 delorie.com 56LG8xxR3028393 Authentication-Results: delorie.com; dmarc=pass (p=none dis=none) header.from=cygwin.com Authentication-Results: delorie.com; spf=pass smtp.mailfrom=cygwin.com DKIM-Filter: OpenDKIM Filter v2.11.0 delorie.com 56LG8xxR3028393 Authentication-Results: delorie.com; dkim=pass (1024-bit key, unprotected) header.d=cygwin.com header.i=@cygwin.com header.a=rsa-sha256 header.s=default header.b=ArP/xh/U X-Recipient: archive-cygwin AT delorie DOT com DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 33E5F3858C24 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cygwin.com; s=default; t=1753114138; bh=Ur4/tjDj1z1D2WyYU/K579RA7otuiXgOm564NK6YOEY=; h=Date:Subject:To:References:In-Reply-To:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:Cc: From; b=ArP/xh/UJqYm0JJTm9Jinqk2ZX/e4KWYPhMcS83P/3WMIQZz3EmI4Izv8l622ZEkJ 68lJ4tJKsSa1zQSrC+DSRiVsTHf/P4vGajEN9weyNqEGH5TiDmfaXn4rbqlOGaM9Q/ alHeHmgmwizp6VNpTW++iz9xyw3wGPbyz9yGmvWc= X-Original-To: cygwin AT cygwin DOT com Delivered-To: cygwin AT cygwin DOT com DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org CB9923858D1E ARC-Filter: OpenARC Filter v1.0.0 sourceware.org CB9923858D1E ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1753114078; cv=none; b=xijteuHIDW8vcPZzMAXCbJkmtyxrqF7u/DZtfyDvQnP4Drb5gKWD1JtW2eJPJGsuWw4QtMrmjdrZI229Fh95hljN7G9vRFqr1Z6GLL18Nm6PgL0sTrWgIx0cJlSTF11rIdfb7YBIW/RMhcVKYSRrAqd86MKAwRhtgTDyCRAbMAo= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1753114078; c=relaxed/simple; bh=99v05Xv7cOaNEXXynCClUCY3554e14FNL/XZbeTnEh8=; h=Message-ID:Date:MIME-Version:From:Subject:To:DKIM-Signature; b=C1gtfIaHPkMsqCen6lpxnt0t1g3NsKcZR0rRFQ27dX7b+pNo9QT+5PtdZB4zXhdXpaPpdR/uFQoKwVUM4M1jR84OKtseCuM5JFuney9PC4Bzs1gHG+xVMWyCwYGONG9p3uRSlaNTOq8oso0sVWA+HhaCgNSTB5AKFCdslydkTR4= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org CB9923858D1E Message-ID: <33cc340e-cf26-4721-a06e-8a1d8eb600c3@SystematicSW.ab.ca> Date: Mon, 21 Jul 2025 10:07:56 -0600 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: SLOW ls(1) - cygwin dir lookups with WinNT async requests? Content-Language: en-CA To: cygwin AT cygwin DOT com References: <45887d0a-17d3-40ce-bea5-13fdf9081edd AT systematicsw DOT ab DOT ca> <3da288a3-3a70-41ca-b582-67500ae0fb9e AT SystematicSW DOT ab DOT ca> <1833586910 DOT 20250718134434 AT yandex DOT ru> Organization: Systematic Software In-Reply-To: X-Rspamd-Queue-Id: 206D82E X-Stat-Signature: o57g7zjhhcs9nzd7e7pugqb6b7owyh9g X-Rspamd-Server: rspamout02 X-Session-Marker: 427269616E2E496E676C69734053797374656D6174696353572E61622E6361 X-Session-ID: U2FsdGVkX19ZCRnHjkv7MeHfKZSzBCrAq37vyIV0pio= X-HE-Tag: 1753114077-710303 X-HE-Meta: U2FsdGVkX1/aofyV4TPvsqEYY+utZTff2irYHRiE3qO+H5lDNoQqDPPqEO6svGEvE6fKhqprhqNRMIp7Tgfl+XVaNGVHaK53zt7xCqmIGh0u5f30rmZ+rb0t4AWsM1JldfUzkHpTIyaszMqDblkp0MdOv2fWD7LcmdaHneOdESWWcip5S5k3lfhUmzOBUEMlr4J2vQs23vKp2XP1lmGO55a7Pemy/KPZAJUIYhmOtBZw0YcSYtbGxOiLno6OroA+dWJuaNd+3MqJYoWHHDH7eaR6sfB5kM/2kD/fD380SyCFRJzGSmON/aEpxniAEkkjuf985Agm8K5J9aaOB6C+wfA53IS1BfbBFZFHh9tnLnbzArGoJGxGLw== X-BeenThere: cygwin AT cygwin DOT com X-Mailman-Version: 2.1.30 Precedence: list List-Id: General Cygwin discussions and problem reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , From: Brian Inglis via Cygwin Reply-To: cygwin AT cygwin DOT com Cc: Brian Inglis Content-Type: text/plain; charset="utf-8"; Format="flowed" Errors-To: cygwin-bounces~archive-cygwin=delorie DOT com AT cygwin DOT com Sender: "Cygwin" Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from base64 to 8bit by delorie.com id 56LG8xxR3028393 On 2025-07-21 09:19, Aurélien Couderc via Cygwin wrote: > On Fri, Jul 18, 2025 at 12:50 PM Andrey Repin 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. -- Take care. Thanks, Brian Inglis Calgary, Alberta, Canada La perfection est atteinte Perfection is achieved non pas lorsqu'il n'y a plus rien à ajouter not when there is no more to add mais lorsqu'il n'y a plus rien à retrancher but when there is no more to cut -- Antoine de Saint-Exupéry -- Problem reports: https://cygwin.com/problems.html FAQ: https://cygwin.com/faq/ Documentation: https://cygwin.com/docs.html Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple