Add support for Windows 8, first step

Teemu Nätkinniemi tnatkinn@gmail.com
Wed Oct 12 20:45:00 GMT 2011


Hello Corinna,

On 12.10.2011 11:26, Corinna Vinschen wrote:

> First of all, we need a copyright assignment from you before we can
> accept non-trivial patches to Cygwin, see http://cygwin.com/contrib.html,
> the "Before you get started" section.

I am going to do that just in case I actually get something working (see 
below).

> Windows 8 will very likely support the FAST_CWD stuff, the problem is
> just to find out how to find the global pointer pointing to the current
> FAST_CWD structure, and then, if the FAST_CWD structure changed.

It does do that, the code looks almost the same as in Windows 7. There 
are some differences that I haven't figured out yet. But I might 
actually wait for a beta version of Windows 8 before going forward.

> Therefore I don't want to disable this message.  If you're interested
> to get rid of it, it would be most helpful trying to track down how to
> find the global FAST_CWD pointer in W8.

If I understood the code correctly f_cwd_ptr is the location of 
ntdll!RtlpCurDirRef and find_fast_cwd_pointer tries to find that 
location. For some reason I couldn't get breakpoints working when 
debugging cygwin1.dll so I did some disassembling and found the correct 
location for ntdll!RtlpCurDirRef in Windows 8 version of ntdll (wow64).

Any hints for debugging the Cygwin dll itself as find_fast_cwd runs once 
per session so it has been very difficult trying to get a working 
breakpoint.

Teemu



More information about the Cygwin-patches mailing list