Mail Archives: cygwin/2008/10/23/12:52:42
Corinna Vinschen wrote on 23 October 2008 17:21:
>> Only thing I can think of is "Not if %ss has been mucked around with it
>> isn't".
>
> Yeah, I heard about that. But what is %ss doing in Windows
Same as usual. Pointing to the stack segment. It just /happens/ that the
SS is a full 32-bit flat mapping of the same virtual memory space as %cs, %ds,
etc,. but it doesn't (in theory) have to be.
> and why should it be messed up with TS?!?
Extra security measures turned on by default on multi-user servers that are
turned off by default usually?
> And why are only Cygwin processes affected, and then only some?
Just lucky, I guess...
>> I'd use windbg on this, take a look at the exception record and
>> selectors and stuff.
>
> The exception record was a good hint (I don't know what you mean by
> "selectors", sorry).
See the "dg" command, e.g. "dg %cs", "dg %ds", "dg %ss".
> Unfortunately it puzzles me even more:
>
> ExceptionAddress: 00419d97 (image00400000+0x00019d97)
> ExceptionCode: c0000005 (Access violation)
> ExceptionFlags: 00000000
> NumberParameters: 2
> Parameter[0]: 00000008
> Parameter[1]: 00419d97
> Attempt to execute non-executable address 00419d97
>
> Huh? Why should this address (this application function) be
> "non-executable", while it's executable when TS is not installed?
DEP? ASLR? SafeSEH? As well as "dg" there are some other commands in
windbg that'll show you memory types and attributes.
> Could this have something to do with the executbale header gcc creates?
Dunno - which executable header? Seems unlikely since we're in a completely
different memory page and well beyond the header area into the .text segment.
(Actually, are we in the .text segment, or is there a thunk of some kind in
.rdata? And is the difference perhaps related to the use-or-not, or the
need-for-or-not, of ld's --{en,dis}able-runtime-pseudo-reloc options?)
cheers,
DaveK
--
Can't think of a witty .sigline today....
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Problem reports: http://cygwin.com/problems.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
- Raw text -