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/