Re: Alignment error in libXi
On Sun, Mar 27, 2011 at 10:42:14PM +0200, Matthieu Herrb wrote: > On Thu, Mar 24, 2011 at 11:51:32PM -0700, Jeremy Huddleston wrote: > > Don't feel too bad. I missed it too and bugged Peter about it > > before I pushed the release ;) > > > Unfortunatly, as Peter forsaid it, there are other issues. I'm > currently fighting with the code for XISelectEvents(). > > It uses Data32() to send a xXIEventMask structure. This is very wrong > and fails miserablily on sparc64, for at least 2 reasons: > > 1. Data32() suffers from the infamous 'use unsigned long for 32 bits >data' API mis-design, so on 64 bits machines one can't pass a >pointer to a 32 bit only data to Data32(): it has one chance over 2 >to be mis-aligned, and will read 4 extra random bytes on the stack. > 2. since xXIEventMask contains two uint_16 values, which are not >properly swapped, this will not work across client/server with >different endianness. swapping is handled by the server anyway, so the library shouldn't need to worry about it. can't we just replace the Data32() call with Data() here? Aside from the API issues, the only difference is that Data32 pads out, right? Given that xXIEventMask is always 4 bytes we don't need the padding. Cheers, Peter > This can all be seen whil trying Gtk+3's gtk3-demo on an > OpenBSD/sparc64 machine, but probably on other 64 bits big endian > machines too. > > For now I have the ugly patch below. Any better suggestion ? > > And there are other issues... > > --- src/XISelEv.c 4 Sep 2010 10:17:03 - 1.2 > +++ src/XISelEv.c 27 Mar 2011 15:09:31 - > @@ -32,6 +32,7 @@ in this Software without prior written a > > > #include > +#include > #include > #include > #include > @@ -46,6 +47,7 @@ XISelectEvents(Display* dpy, Window win, > XIEventMask *current; > xXISelectEventsReq *req; > xXIEventMask mask; > +unsigned long long_mask; > int i; > int len = 0; > int r = Success; > @@ -83,7 +85,12 @@ XISelectEvents(Display* dpy, Window win, > * and they need to be padded with 0 */ > buff = calloc(1, mask.mask_len * 4); > memcpy(buff, current->mask, current->mask_len); > -Data32(dpy, &mask, sizeof(xXIEventMask)); > +#if X_BYTE_ORDER == X_BIG_ENDIAN > + long_mask = mask.deviceid << 16 | mask.mask_len; > +#else > + long_mask = mask.mask_len << 16 | mask.deviceid; > +#endif > + Data32(dpy, &long_mask, sizeof(xXIEventMask)); > Data(dpy, buff, mask.mask_len * 4); > free(buff); > } > > -- > Matthieu Herrb ___ xorg@lists.freedesktop.org: X.Org support Archives: http://lists.freedesktop.org/archives/xorg Info: http://lists.freedesktop.org/mailman/listinfo/xorg Your subscription address: arch...@mail-archive.com
Re: FW: A request from the "Hackintosh" community
Hi, On Fri, Mar 25, 2011 at 01:32:48PM -0300, Felipe Ribba wrote: > I'm forwarding this mail trough my Gmail account in case you miss the > previous one (I didn't get any replies so far) We did get the original one... But I'm sorry to tell you that this is not the kind of request that is likely to get replies on this list. While people might answer specific technical questions, you can't expect anyone to actively help with something they are not personally interested in. And improving driver support for a proprietary platform is certainly not something people here are interested in. (Quite frankly, it's beyond me why *anyone* would want to spend his time on such things...) -antrik- ___ xorg@lists.freedesktop.org: X.Org support Archives: http://lists.freedesktop.org/archives/xorg Info: http://lists.freedesktop.org/mailman/listinfo/xorg Your subscription address: arch...@mail-archive.com
Re: X crash
On 03/29/2011 02:53 PM, Adam Jackson wrote: On Tue, 2011-03-29 at 11:12 -0500, dgbale...@verizon.net wrote: On Mar 29, 2011, Adam Jackson wrote: On Mon, 2011-03-28 at 20:45 -0400, Matthew Monaco wrote: Xorg.log: http://pastebin.com/4YD47x83 bt full : http://pastebin.com/BGagSzUH #2 0x7f4b4695c479 in realloc () from /lib/libc.so.6 No symbol table info available. #3 0x00459c91 in ReadRequestFromClient (client=0x20aed80) at i>o.c:325 Well now you're in trouble. That's a sign that something has corrupted malloc's arena and it can no longer continue. The job is now much more difficult, since you have to work backwards to figure out how that corruption happened. This isn't because I didn't rebuild glibc with debuggging? I thought some of the missing info was because of -O2. I'll try to get some more output, but if I can't this is above my pay grade. I'll just hope 1.10.1 and 2.6.38.2 do some magic. That frames 0 and 1 are uninformative is because you don't have debugging symbols in glibc. That your malloc arena is corrupted, is not. - ajax I still don't get what the sign is that my malloc arena (heap?) is corrupt. Is it that the top of the stack is realloc? Here's another stack with glibc symbols (not that it seems to matter): http://pastebin.com/9U4YHwKf And in the meantime I upgraded to kernel 2.6.38.2 and xserver to 1.10.0.901. Adam, is there a chance the crash could be related to this: http://projects.archlinux.org/svntogit/packages.git/tree/xorg-server/trunk/vbe-fix-malloc-size-bug.patch?id=560212880dc81a984cab90db4e56a4e2b5f31145 Arch cherry picked it for 1.10, but now it's gone for 1.10.901. Thanks again, Matt ___ xorg@lists.freedesktop.org: X.Org support Archives: http://lists.freedesktop.org/archives/xorg Info: http://lists.freedesktop.org/mailman/listinfo/xorg Your subscription address: arch...@mail-archive.com
[ANNOUNCE] xorg-sgml-doctools 1.7
Gaetan Nadon (3): config: comment, minor upgrade, quote and layout configure.ac DocBook/XML: add support for docbook external references Version bump: 1.7 git tag: xorg-sgml-doctools-1.7 http://xorg.freedesktop.org/archive/individual/doc/xorg-sgml-doctools-1.7.tar.bz2 MD5: 2588efb3f49f7fc6ecf41ce42e0b2e5e xorg-sgml-doctools-1.7.tar.bz2 SHA1: 5301166d1e36df9cd796adf944d003f32b7b4945 xorg-sgml-doctools-1.7.tar.bz2 http://xorg.freedesktop.org/archive/individual/doc/xorg-sgml-doctools-1.7.tar.gz MD5: 53627aeb9049e9741ea628129ef357d6 xorg-sgml-doctools-1.7.tar.gz SHA1: 38322cca6aacf8e6a1fcebf6ea16cf5fed704cdd xorg-sgml-doctools-1.7.tar.gz signature.asc Description: This is a digitally signed message part ___ xorg@lists.freedesktop.org: X.Org support Archives: http://lists.freedesktop.org/archives/xorg Info: http://lists.freedesktop.org/mailman/listinfo/xorg Your subscription address: arch...@mail-archive.com
Re: Re: X crash
On Tue, 2011-03-29 at 11:12 -0500, dgbale...@verizon.net wrote: > >On Mar 29, 2011, Adam Jackson wrote: > >>On Mon, 2011-03-28 at 20:45 -0400, Matthew Monaco wrote: > >> Xorg.log: http://pastebin.com/4YD47x83 > >> bt full : http://pastebin.com/BGagSzUH > > > >#2 0x7f4b4695c479 in realloc () from /lib/libc.so.6 > >No symbol table info available. > >#3 0x00459c91 in ReadRequestFromClient (client=0x20aed80) at > i>o.c:325 > > > >Well now you're in trouble. That's a sign that something has corrupted > >malloc's arena and it can no longer continue. The job is now much more > >difficult, since you have to work backwards to figure out how that > >corruption happened. > > This isn't because I didn't rebuild glibc with debuggging? I thought some of > the > missing info was because of -O2. I'll try to get some more output, but if I > can't > this is above my pay grade. I'll just hope 1.10.1 and 2.6.38.2 do some magic. That frames 0 and 1 are uninformative is because you don't have debugging symbols in glibc. That your malloc arena is corrupted, is not. - ajax signature.asc Description: This is a digitally signed message part ___ xorg@lists.freedesktop.org: X.Org support Archives: http://lists.freedesktop.org/archives/xorg Info: http://lists.freedesktop.org/mailman/listinfo/xorg Your subscription address: arch...@mail-archive.com
Re: Re: X crash
>On Mar 29, 2011, Adam Jackson wrote: >>On Mon, 2011-03-28 at 20:45 -0400, Matthew Monaco wrote: >> Xorg.log: http://pastebin.com/4YD47x83 >> bt full : http://pastebin.com/BGagSzUH > >#2 0x7f4b4695c479 in realloc () from /lib/libc.so.6 >No symbol table info available. >#3 0x00459c91 in ReadRequestFromClient (client=0x20aed80) at i>o.c:325 > >Well now you're in trouble. That's a sign that something has corrupted >malloc's arena and it can no longer continue. The job is now much more >difficult, since you have to work backwards to figure out how that >corruption happened. > >- ajax This isn't because I didn't rebuild glibc with debuggging? I thought some of the missing info was because of -O2. I'll try to get some more output, but if I can't this is above my pay grade. I'll just hope 1.10.1 and 2.6.38.2 do some magic. Thank you (ps - sent from crappy webmail) ___ xorg@lists.freedesktop.org: X.Org support Archives: http://lists.freedesktop.org/archives/xorg Info: http://lists.freedesktop.org/mailman/listinfo/xorg Your subscription address: arch...@mail-archive.com
Re: X crash
On Mon, 2011-03-28 at 20:45 -0400, Matthew Monaco wrote: > Xorg.log: http://pastebin.com/4YD47x83 > bt full : http://pastebin.com/BGagSzUH #2 0x7f4b4695c479 in realloc () from /lib/libc.so.6 No symbol table info available. #3 0x00459c91 in ReadRequestFromClient (client=0x20aed80) at io.c:325 Well now you're in trouble. That's a sign that something has corrupted malloc's arena and it can no longer continue. The job is now much more difficult, since you have to work backwards to figure out how that corruption happened. - ajax signature.asc Description: This is a digitally signed message part ___ xorg@lists.freedesktop.org: X.Org support Archives: http://lists.freedesktop.org/archives/xorg Info: http://lists.freedesktop.org/mailman/listinfo/xorg Your subscription address: arch...@mail-archive.com
[ANNOUNCE] xorg-server 1.10.0.901
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 This release, the first release-candidate for xorg-server 1.10.1, brings in a number of fixes primarily aimed at server stability. A number of memory mis-management issues (leaks and crases) have been fixed as well as fixes for some configuration issues. Adam Jackson (1): vbe: Fix malloc size bug Erkki Seppälä (3): xfree86/modes: Fixed memory leak in xf86InitialConfiguration xfree86/common: Remove a configScreen leak when conf_screen is NULL config: handle device change event properly Jeremy Huddleston (9): XQuartz: RandR: Capture the display when switching modes with RandR XQuartz: RandR: Provide an alert box when entering a RandR mode for the first time. XQuartz: RandR: Add RandR modes for the primary display in multi-monitor configs Revert "rootless: Remove ROOTLESS_WORKAROUND" XQuartz: Don't use deprecated CoreGraphics API on SL and Lion XQuartz: pbproxy: Protect against possible collision between Cocoa and X11 Cursor types GLX: Support TLS with better portability hw/dmx/doc: Update list of doxygen-generated files configure.ac: 1.10.0.901 (1.10.1 RC1) Julien Cristau (1): Xi: fix length checks for swapped clients Keith Packard (1): loader: Don't distribute sdksyms.c and make it depend on the config Matthieu Herrb (1): Don't clobber input device options from xorg.conf Peter Hutterer (3): xfree86: block signals between EnableDevice and first CheckMotion() Xi: fix XI2 passive grab reply length calculation xfree86: print out which driver is about to be used. Rami Ylimäki (5): xkb: Ensure that XKB device private won't leak on device disconnect. dix: Release input device config info when the device disconnects. config: Ensure that stolen option list elements are released. xkb: Release XKB component names when compiling keymap. xkb: Initialize pad bytes sent in replies of geometry requests. git tag: xorg-server-1.10.0.901 http://xorg.freedesktop.org/archive/individual/xserver/xorg-server-1.10.0.901.tar.bz2 MD5: d750cf5f6342b548b7ac2be56e9d1841 xorg-server-1.10.0.901.tar.bz2 SHA1: 0cb588134929302f3b062a7f202422d63ceea8b0 xorg-server-1.10.0.901.tar.bz2 http://xorg.freedesktop.org/archive/individual/xserver/xorg-server-1.10.0.901.tar.gz MD5: e4f4d81b360a6d936a874ab1d1c718d0 xorg-server-1.10.0.901.tar.gz SHA1: 24405418b5363150cf830a9166c69462b97aa093 xorg-server-1.10.0.901.tar.gz -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.11 (Darwin) iD8DBQFNkY0PjC1Anjf1NmMRAlSjAKCDwSwpYKJFa5S4JV8xXPdK7FVtawCeNvit vd6UqhDDJZo0Fe+QF/s3nOo= =51kT -END PGP SIGNATURE- ___ xorg@lists.freedesktop.org: X.Org support Archives: http://lists.freedesktop.org/archives/xorg Info: http://lists.freedesktop.org/mailman/listinfo/xorg Your subscription address: arch...@mail-archive.com