This is the mail archive of the cygwin-talk mailing list for the cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: FW: cygwin-1.dll long-time bug


On Tue, Apr 18, 2006 at 09:26:43PM -0500, Gary R. Van Sickle wrote:
>> From: Dave Korn
>> Sent: Tuesday, April 18, 2006 1:39 PM
>> To: 'tricksy codes'
>> Subject: RE: FW: cygwin-1.dll long-time bug
>> 
>> On 18 April 2006 19:26, Christopher Faylor wrote:
>> 
>> > On Tue, Apr 18, 2006 at 07:13:38PM +0100, Dave Korn wrote:
>> >> where Mark Russinovich says
>> >> 
>> >> "As for the issues looking at threads, the problem is a Cygwin 
>> >> behavior that's incompatible with the Windows API, 
>> >> RtlQueryProcessDebugInformation, that Process Explorer 
>> uses to obtain 
>> >> the list of modules loaded into a process.  That API 
>> injects a thread 
>> >> into the remote process to query the loader data structures.  The 
>> >> target process DLLs get a DLL_THREAD_ATTACH notification, which 
>> >> causes some Cygwin DLL thread to hang and the 
>> >> RtlQueryProcessDebugInformation to never return."
>> > 
>> > So, rather than saying "I wonder why Cygwin would hang when 
>> a thread 
>> > is injected?" the conclusion is that "Cygwin behavior which is 
>> > incompatible with the Windows API" and the fix is to 
>> "thread injection gracefully".
>> > 
>> > I don't see what more there is to say on the subject.  Clearly with 
>> > just a little more grace, Cygwin's problems would be solved.
>> 
>>   Well, I think it's reasonable enough to say that cygwin 
>> does things that are pushing the envelope of what's 
>> documented to work in relation to how we handle forking and 
>> process startup.  After all we just had that lockup caused by 
>> the fact that you can't even call GetModuleName[*] from 
>> DllMain safely.  Things happen in an unusual order in cygwin 
>> processes and threads, and it's probably not something that 
>> gets a whole load of testing in microsoft's QA dept.... ;)
>> 
>
>WHOAH WHOAH WHOAH there Korns, don't take personal offense!  Sheesh!  It's
>getting to be a regular minefield in here!

It sounds like an apology is due here since if *Gary* could possibly
misconstrue something I said (an even I would have heretofore considered
almost impossible), then surely it is likely that Dave Korn, who is only
mortal, could also.

I had read Dave's response as just an objective counter to my observation
about handling "thread injection gracefully".  Now I see that he was
actually highly offended.

So, here goes:

Dave, I didn't realize that you and Mark Russinovich were so close as
for me to offend you by reacting to his statement.

My sincere apologies.  I always value your technical contributions.  You
are one of those rare individuals who contribute humor, technical
understanding, and even the occasional patch.  I certainly would not
want you to go away mad because of my thoughtlessness.

To clarify what I was saying: I was expressing frustration that this
notable who may understand NT internals better than most other people on
the planet would resort to such vague terms.  When I saw that you'd
quoted a message from Mark which talked about Cygwin I was disappointed
that *he* (not you) didn't offer any ideas or suggestions about what
could be wrong.  In my frustration, I lashed out at you with stinging
and inappropriate words that I now know truly wounded you.  I am wracked
with guilt over my actions and vow to treat you better in the future.

Sincerely,
Christopher G. Faylor


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]