[PATCH] Add FAQ How do I fix find_fast_cwd warnings?

Brian Inglis Brian.Inglis@SystematicSw.ab.ca
Wed Nov 15 06:01:00 GMT 2017

On 2017-11-14 14:26, Corinna Vinschen wrote:
> On Nov 14 13:52, Brian Inglis wrote:
>> On 2017-11-14 02:29, Corinna Vinschen wrote:
>>> On Nov 13 11:51, Brian Inglis wrote:
>>>> On 2017-11-13 10:12, Brian Inglis wrote:
>>> Please send this as `git format-patch' with commit message and all.
>> One more diff for comment, and I could use some pointer on how to build htdocs
>> html from doc xml, and whether I need to concatenate the screen ulinks to get
>> them to render as a single line, which could be answered by the build.

Found I had to rebuild all of newlib-cygwin to regenerate faq.html.

>>>> +    <para>This happens when the Cygwin release you installed can not find out
>>>> +	how to get your current directory from the Windows release you are
>>>> +	using.</para>
>>> I think this paragraph raises more questions than it answers.  Of course
>>> Cygwin still can get the CWD, just not in the preferred way.  Even if
>>> you change it to more technically correct terms, it doesn't give any
>>> useful info for users.  Let's just drop it.
>> Reworded to say that it the issue may not be serious, but may be a performance
>> impact, to put the issue into perspective, and give the user some context.
>> I think your comment applies best to the message itself. ;^>
>> Perhaps we should consider dropping it, or rewording to be less alarming?
> The technical issue is much more complicated than just performance.  In
> a nutshell, CWD handles are opened without FILE_SHARE_DELETE by the OS,
> so we open the CWD handle by ourselves.  Starting with Vista the OS
> changed the way CWD info is stored for reasons unknown.  Performance was
> just an assumption at the time which led to the FAST_CWD name for the
> struct.  Unfortunately the new ways to handle CWDs is even less
> documented than the old ways and changed two times between five OS
> versions.  And this doesn't yet explain why we want the CWD opened with
> FILE_SHARE_DELETE at all, which requires YA nutshell.

As referred to in:
whose comments link to:
and include comments by CGF and someone called Corinna wondering why their
comment was moderated [for discussing undocumented APIs] ;^>

> None of this info should be of any interest to the user struggling
> with the FAST_CWD message.  That's why I opt for dropping.

Hacked this bit up with your info and the above articles, and edited it down
again to as little as possible, in hopes of persuading you we should provide the
user at least minimal context to allow them to not worry too much about the

Take care. Thanks, Brian Inglis, Calgary, Alberta, Canada
-------------- next part --------------
>From 61fe6f174a840cffdac4ae8772e1a10a68e80beb Mon Sep 17 00:00:00 2001
From: Brian Inglis <Brian.Inglis@SystematicSW.ab.ca>
Date: Tue, 14 Nov 2017 22:57:02 -0700
Subject: [PATCH] add FAQ How do I fix find_fast_cwd warnings

 winsup/doc/faq-using.xml | 50 ++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 50 insertions(+)

diff --git a/winsup/doc/faq-using.xml b/winsup/doc/faq-using.xml
index b6b152e4e..f583b36ef 100644
--- a/winsup/doc/faq-using.xml
+++ b/winsup/doc/faq-using.xml
@@ -1419,4 +1419,54 @@ such as virtual memory paging and file caching.</para>
   difficult to make <literal>fork()</literal> work reliably.</para>
+<qandaentry id='faq.using.fixing-find_fast_cwd-warnings'>
+  <question><para>How do I fix <literal>find_fast_cwd</literal> warnings?</para></question>
+  <answer>
+    <para>Older Cygwin releases asked users to report problems to the mailing
+	list with the message:</para>
+    <screen>
+	find_fast_cwd: WARNING: Couldn't compute FAST_CWD pointer. Please report
+	this problem to the public mailing list <ulink url="mailto:cygwin@cygwin.com">cygwin@cygwin.com</ulink></screen>
+    <para>Recent Cygwin releases changed this to the message:</para>
+    <screen>
+	This typically occurs if you're using an older Cygwin version on a newer Windows.
+	Please update to the latest available Cygwin version from <ulink url="https://cygwin.com/">https://cygwin.com/</ulink>.
+	If the problem persists, please see <ulink url="https://cygwin.com/problems.html">https://cygwin.com/problems.html</ulink>.</screen>
+    <para>This is not serious, just a warning that Cygwin may not always be
+	able to exactly emulate all aspects of Unix current directory handling
+	under your Windows release.</para>
+    <para>Unfortunately some projects and products still distribute older
+	Cygwin releases which may not fully support newer Windows releases,
+	instead of installing the current release from the Cygwin project.
+	They also may not provide any obvious way to keep the Cygwin packages
+	their application uses up to date with fixes for security issues and
+	upgrades.</para>
+    <para>The solution is simply downloading and running Cygwin Setup,
+	following the instructions in the Internet Setup section of
+	<ulink url="https://cygwin.com/cygwin-ug-net/setup-net.html#internet-setup">
+	    Setting Up Cygwin</ulink> in the Cygwin User's Guide.</para>
+    <para>Please exit from all applications before running Cygwin Setup.
+	When running Setup, you should not change most of the values presented,
+	just select the <literal>Next</literal> button in most cases, as you
+	already have a Cygwin release installed, and only want to upgrade your
+	current installation.
+	You should make your own selection if the internet connection to your
+	system requires a proxy; and you must always pick an up to date Cygwin
+	download (mirror) site, preferably the site nearest to your system for
+	faster downloads, as shown, with more details to help you choose, on the
+	<ulink url="https://cygwin.com/mirrors.html">
+	    Mirror Sites</ulink> web page.</para>
+    <para>Cygwin Setup will download and apply upgrades to all packages
+	required for Cygwin itself and installed applications.
+	Any problems with applying updates, or the application after updates,
+	should be reported to the project or product supplier for remedial
+	action.</para>
+    <para>As Cygwin is a volunteer project, unable to provide support for older
+	releases installed by projects or products, it would be helpful to let
+	other users know what project or product you installed, in a quick
+	<ulink url="mailto:cygwin@cygwin.com?subject=Application%20with%20old%20Cygwin%20warning%20about%20FAST_CWD">
+	    email</ulink>.</para>
+  </answer>

More information about the Cygwin-patches mailing list