X-Recipient: archive-cygwin AT delorie DOT com DomainKey-Signature: a=rsa-sha1; c=nofws; d=sourceware.org; h=list-id :list-unsubscribe:list-subscribe:list-archive:list-post :list-help:sender:date:from:to:subject:message-id:reply-to :references:mime-version:content-type:in-reply-to; q=dns; s= default; b=AGKbQaE2GBDH+3pfd4JEUEkA7weyGN55e25LjcL+gGIjsmgi8Nj5w yo+OIclRZ/7LCdYk4SxKDaQGd4JPJo+qLpvmeowAdfBo+0/9Vi/FUHfz0N+36QGd iVH3NX8hGWAPrs7/9iCovD0tlofq8gtGFID6y9JyVjne/AR2kcZ0Oo= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=sourceware.org; h=list-id :list-unsubscribe:list-subscribe:list-archive:list-post :list-help:sender:date:from:to:subject:message-id:reply-to :references:mime-version:content-type:in-reply-to; s=default; bh=/8jYsxJicFaECUHza+lryjAb+ng=; b=f8TgvxaIj/vbbiEChT6H8KqJIWQV 33aClwxPlLcX+Gz6GsYGpmw2K6Z78HFbBvH4K3jwJaqgrjxGksmtM+JLdKFViqBR Em0NdXJG5E2hgv4F+Wa0kD4KnmD9LETmsTR7i+sRif6sBNcbHbVoOdKxm+3CZx+e /O17splG8ahZshA= Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-101.9 required=5.0 tests=AWL,BAYES_00,GOOD_FROM_CORINNA_CYGWIN,RCVD_IN_DNSWL_NONE autolearn=ham version=3.3.1 spammy=disconnected, HX-Languages-Length:1577, aforementioned X-HELO: mout.kundenserver.de Date: Fri, 6 Dec 2019 15:34:57 +0100 From: Corinna Vinschen To: cygwin AT cygwin DOT com Subject: Re: 3.0.7(0.338/5/3): Possible reference to Developer's instances of dev files in deployed build Message-ID: <20191206143457.GC3499@calimero.vinschen.de> Reply-To: cygwin AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com References: <20191206045537 DOT GA22631 AT shackleton DOT labs DOT net> <20191206110709 DOT GB3499 AT calimero DOT vinschen DOT de> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="7qSK/uQB79J36Y4o" Content-Disposition: inline In-Reply-To: <20191206110709.GB3499@calimero.vinschen.de> User-Agent: Mutt/1.12.1 (2019-06-15) --7qSK/uQB79J36Y4o Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Dec 6 12:07, Corinna Vinschen wrote: > Right. Cygwin uses a simple mechanism to check the drives to show > under /cygdrive. Basically it just calls the Win32 function > GetLogicalDriveStrings(), then, for each drive, it checks the > QueryDosDevice mapping. Right now it only accepts cdrom, floppy, > harddrive, LanmanRedirector (SMB) and MRxNfs (NFS). All other > drive types are treated as "no disk". This is fixable with probably not > too much effort. Ah, yes, there's a problem. When listing /cygdrive, we're trying to do this as quick as possible. For network drives, we check if they are available using a function NetUseGetInfo, which only takes a few ms, even if the drive is unavailable. As soon as this function returns the state "disconnected", Cygwin skips the drive in /cygdrive. However, this function does not know anything about client side caching (CSC). To find out if the drive is available via CSC, the drive has to be opened and checked for filesystem information, which reflects the state that the filesystem is still available offline. The problem with this approach is, it would have to be called for each unavailable drive in /cygdrive. This takes multiple secs per drive. That's exacly what we tried to avoid when calling the aforementioned NetUseGetInfo function in the first place. Checking for a CSC-ed drive when disconnected would make /cygdrive listing very slow, just as in the old days... Corinna --=20 Corinna Vinschen Cygwin Maintainer --7qSK/uQB79J36Y4o Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAEBCAAdFiEEoVYPmneWZnwT6kwF9TYGna5ET6AFAl3qZxEACgkQ9TYGna5E T6BP2hAAojJ+n+3GjGVuVIdGpPzO5Gmrm5Y06Y5GX9F5eCjD69QAl+EJB5Opha+S I0hqDWwsKn4/ZmzzJYNBZrBVyKMbpLn7aM5YGejStr29BFxw2ViFZIov0eR46XgF f7ydD2W1L3YMR0QaDa4N7HaoTRNOwYWGYN6FGAp5vM/GZtNYjtMlUYQkpIxQSY+e 1Nidz/+Kz1DVyFirbHhtVHF/YtIDa5i6b6RZRECjtatrtXNIr88t3bS5Y0jB9TwX wg7OZUybeHtlrI1WwFGkdS48mXHsqitJ3huXQ/FHfNarTvMqrSaT2HZEIgdc3Wlu eO5qInHgj4PdaRU/A4ZGrvScr9TNPxNX64q2rSJATRkNldJdolEsbSTBOxCGCKig z3FVdKaAKYCCt0md0Mn8LcqgDQUAeVMB6Ixkli0ec3/BauX4ARE6HOpss4amqgd/ rkZfKUkcRg5bn2+onSLZTFCCzeIAbp8H0JCM+vQvFYdh7CownC9ggHgH9i4OVHQN bCfscoy5yXd/NP4Sc4en0tUB/tgpgQPhTmxX8uBJJP2dfQOp0saexEfZtz3u8Ur0 JBYemInPCPIogZthZU/dpxklbSjJrfYfp3Bpk6+heGyyjFTQFGWvbdcyMjdPSeQN 25PXBSK49xJmFtz6DlmoWd2iDKD4ylxUL1iZBxb7u+W6lw9lc3s= =upjc -----END PGP SIGNATURE----- --7qSK/uQB79J36Y4o--