[ANNOUNCE] libXt 1.1.3
This regression repair release reverts a regrettable revision that resulted in: https://bugs.freedesktop.org/show_bug.cgi?id=47203 https://bugs.freedesktop.org/show_bug.cgi?id=47216 Alan Coopersmith (1): libXt 1.1.3 Jeremy Huddleston (1): Revert Treat unexpected returned events from poll as errors git tag: libXt-1.1.3 http://xorg.freedesktop.org/archive/individual/lib/libXt-1.1.3.tar.bz2 MD5: a6f137ae100e74ebe3b71eb4a38c40b3 SHA1: 2cef068bc4d7170e31b89b5c06aeaf4451a7699a SHA256: 8db593c3fc5ffc4e9cd854ba50af1eac9b90d66521ba17802b8f1e0d2d7f05bd http://xorg.freedesktop.org/archive/individual/lib/libXt-1.1.3.tar.gz MD5: 7a80ed7aba06668b12ebd0910318a1f1 SHA1: 43c5428311eb851796bde60f77ab3fe4f9eb2666 SHA256: a56f1c13430f8ee0c040de1e3a7f439c9707d2f9c9b5ceee8bdbb74fddbe5560 -- -Alan Coopersmith- alan.coopersm...@oracle.com Oracle Solaris Engineering - http://blogs.oracle.com/alanc pgpIlrB4sE28a.pgp Description: PGP signature ___ xorg@lists.x.org: X.Org support Archives: http://lists.freedesktop.org/archives/xorg Info: http://lists.x.org/mailman/listinfo/xorg Your subscription address: arch...@mail-archive.com
[ANNOUNCE] xproto 7.0.23
This package provides the headers and specification documents defining the X Window System Core Protocol, Version 11. It also includes a number of headers that aren't purely protocol related, but are depended upon by many other X Window System packages to provide common definitions and porting layer. This release continues our documentation improvements, defines new keysyms needed for input of various langugages, and fixes a couple compliation errors in software that includes these headers when building either in C89 mode (without C99 varargs macros) or in the Cygwin environment. Alan Coopersmith (2): Fix Xfuncproto.h to work when #included in a C89-mode compilation xproto 7.0.23 Frédéric Boiteux (1): Definition of dead greek symbol Gaetan Nadon (6): docbook.am: global maintenance update - entities, images and olinking docbook.am: embed css styles inside the HTML HEAD element docs: remove productnumber which is not used by default docs: use the fullrelvers; entity to set X11 release information spec: remove duplicate Copyright line x11proto spec: fix copyright markup James Cloos (1): Add some keysyms to support Breton’s n-graphs. Marko Myllynen (1): x11proto: add permille, ezh, and EZH to keysymdef.h Matt Dew (2): 1 - fix the capitolization of the ID attriutes to match either the informaltable cleanup Yaakov Selkowitz (1): Cygwin/X: Include strings.h early to avoid compile errors git tag: xproto-7.0.23 http://xorg.freedesktop.org/archive/individual/proto/xproto-7.0.23.tar.bz2 MD5: d4d241a4849167e4e694fe73371c328c SHA1: 5d7f00d1dbe6cf8e725841ef663f0ee2491ba5b2 SHA256: ade04a0949ebe4e3ef34bb2183b1ae8e08f6f9c7571729c9db38212742ac939e http://xorg.freedesktop.org/archive/individual/proto/xproto-7.0.23.tar.gz MD5: 7ab1239930563a352cb3552fd2db4140 SHA1: 3baf2e7e517b392b60de0a8c090866f60a37e192 SHA256: 07efb40fdd23943ec554920eaf1fe175f70d20127c7a0ee8ab818bd88226f696 -- -Alan Coopersmith- alan.coopersm...@oracle.com Oracle Solaris Engineering - http://blogs.oracle.com/alanc pgpki7m2pH9Qu.pgp Description: PGP signature ___ xorg@lists.x.org: X.Org support Archives: http://lists.freedesktop.org/archives/xorg Info: http://lists.x.org/mailman/listinfo/xorg Your subscription address: arch...@mail-archive.com
[ANNOUNCE] xf86-input-mouse 1.7.2
xf86-input-mouse is the Xorg server mouse driver for non-evdev OS'es. This bug fix release includes changes for: Alan Coopersmith (6): No need to merge NULL options list with existing options sun_mouse.c: Ensure vuidMouse setup routines are called for protocol Auto Avoid NULL pointer dereference in autoProbeMouse if proto == PROT_UNSUP Mark symtab_t.name in pnp.c as const to fix gcc -Wwrite-strings warnings sun_mouse.c: remove unused variables xf86-input-mouse 1.7.2 Alexandr Shadchin (1): Fix wrong read Protocol and Device from xorg.conf Terry Lambert (1): xf86-input-mouse: Return proper default for unknown values in pInfo-device_control. git tag: xf86-input-mouse-1.7.2 http://xorg.freedesktop.org/archive/individual/driver/xf86-input-mouse-1.7.2.tar.bz2 MD5: 871c828b88e9c973f1457724b35576fb SHA1: 0da6390c6f3d7d636110a52f08193739929ae4ae SHA256: 332b7357c18e6b9daba51c8ed48ce118e9b51fb5990b6a2a68637be62da7413b http://xorg.freedesktop.org/archive/individual/driver/xf86-input-mouse-1.7.2.tar.gz MD5: 0f2f2dfb7b769544f04b3469803098a5 SHA1: 0f1248b782a2c3fe17cabd3c4127dfc7654a075c SHA256: e17b7243ee254d0b88292bea6cf216babcc92fbec461a5e32b40ebbdd94e3298 -- -Alan Coopersmith- alan.coopersm...@oracle.com Oracle Solaris Engineering - http://blogs.oracle.com/alanc pgpZCa707cC9R.pgp Description: PGP signature ___ xorg@lists.x.org: X.Org support Archives: http://lists.freedesktop.org/archives/xorg Info: http://lists.x.org/mailman/listinfo/xorg Your subscription address: arch...@mail-archive.com
XShmQueryExtension, valgrind and a still reachable block.
Hi, with the attached simple program I can always see that calling XShmQueryExtension makes valgrind report a still reachable block: $ valgrind --leak-check=full \ --show-reachable=yes ./XShmQueryExtension_test ... ==27577== 24 bytes in 1 blocks are still reachable in loss record 1 of 1 ==27577==at 0x402894D: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==27577==by 0x4A30AFD: XextCreateExtension (in /usr/lib/x86_64-linux-gnu/libXext.so.6.4.0) ==27577==by 0x4A305A4: ??? (in /usr/lib/x86_64-linux-gnu/libXext.so.6.4.0) ==27577==by 0x4A3091C: ??? (in /usr/lib/x86_64-linux-gnu/libXext.so.6.4.0) ==27577==by 0x4A30D31: XextAddDisplay (in /usr/lib/x86_64-linux-gnu/libXext.so.6.4.0) ==27577==by 0x4A2B5B8: XShmQueryExtension (in /usr/lib/x86_64-linux-gnu/libXext.so.6.4.0) ==27577==by 0x4006D5: main (in /home/ao2/WIP/am7xxx-play/tests/XShmQueryExtension_test) ... Maybe this is intended and not an actual bug, but I wanted to ask here for confirmation. So, is this message OK or a symptom of an actual bug? I tried taking a look to libXext to figure out what is going on, but I still lack precise knowledge about what a Display is in this context and how the extension mechanism works so it is hard for me. Thanks, Antonio -- Antonio Ospite http://ao2.it A: Because it messes up the order in which people normally read text. See http://en.wikipedia.org/wiki/Posting_style Q: Why is top-posting such a bad thing? /* * Test to show a still reachable block when using XShmQueryExtension * * Compile with: * gcc -o XShmQueryExtension_test $(pkg-config --cflags --libs xext) XShmQueryExtension_test.c * * Run under valgrind: * valgrind --leak-check=full --show-reachable=yes ./XShmQueryExtension_test * */ #include X11/Xlib.h #include X11/extensions/XShm.h int main(void) { Display *dpy; int use_shm; dpy = XOpenDisplay(:0.0); use_shm = XShmQueryExtension(dpy); XCloseDisplay(dpy); return 0; } pgpAh09HGGqtJ.pgp Description: PGP signature ___ xorg@lists.x.org: X.Org support Archives: http://lists.freedesktop.org/archives/xorg Info: http://lists.x.org/mailman/listinfo/xorg Your subscription address: arch...@mail-archive.com
Re: XShmQueryExtension, valgrind and a still reachable block.
On 3/16/12 12:19 PM, Antonio Ospite wrote: ==27577== 24 bytes in 1 blocks are still reachable in loss record 1 of 1 ==27577==at 0x402894D: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==27577==by 0x4A30AFD: XextCreateExtension (in /usr/lib/x86_64-linux-gnu/libXext.so.6.4.0) ==27577==by 0x4A305A4: ??? (in /usr/lib/x86_64-linux-gnu/libXext.so.6.4.0) ==27577==by 0x4A3091C: ??? (in /usr/lib/x86_64-linux-gnu/libXext.so.6.4.0) ==27577==by 0x4A30D31: XextAddDisplay (in /usr/lib/x86_64-linux-gnu/libXext.so.6.4.0) ==27577==by 0x4A2B5B8: XShmQueryExtension (in /usr/lib/x86_64-linux-gnu/libXext.so.6.4.0) ==27577==by 0x4006D5: main (in /home/ao2/WIP/am7xxx-play/tests/XShmQueryExtension_test) ... Maybe this is intended and not an actual bug, but I wanted to ask here for confirmation. So, is this message OK or a symptom of an actual bug? It's a bug if you expect your program to survive disconnecting from the X server, but most people don't expect that to be a thing. That said, I'm unable to reproduce this on Fedora 16 (libX11 1.4.3 and libXext 1.2.0). What OS are you seeing this on, and what versions of those packages does it have? - ajax ___ xorg@lists.x.org: X.Org support Archives: http://lists.freedesktop.org/archives/xorg Info: http://lists.x.org/mailman/listinfo/xorg Your subscription address: arch...@mail-archive.com
Re: XShmQueryExtension, valgrind and a still reachable block.
On Fri, 16 Mar 2012 14:50:22 -0400 Adam Jackson a...@redhat.com wrote: On 3/16/12 12:19 PM, Antonio Ospite wrote: ==27577== 24 bytes in 1 blocks are still reachable in loss record 1 of 1 ==27577==at 0x402894D: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==27577==by 0x4A30AFD: XextCreateExtension (in /usr/lib/x86_64-linux-gnu/libXext.so.6.4.0) ==27577==by 0x4A305A4: ??? (in /usr/lib/x86_64-linux-gnu/libXext.so.6.4.0) ==27577==by 0x4A3091C: ??? (in /usr/lib/x86_64-linux-gnu/libXext.so.6.4.0) ==27577==by 0x4A30D31: XextAddDisplay (in /usr/lib/x86_64-linux-gnu/libXext.so.6.4.0) ==27577==by 0x4A2B5B8: XShmQueryExtension (in /usr/lib/x86_64-linux-gnu/libXext.so.6.4.0) ==27577==by 0x4006D5: main (in /home/ao2/WIP/am7xxx-play/tests/XShmQueryExtension_test) ... Maybe this is intended and not an actual bug, but I wanted to ask here for confirmation. So, is this message OK or a symptom of an actual bug? It's a bug if you expect your program to survive disconnecting from the X server, but most people don't expect that to be a thing. Right, still inexperienced users could waste a couple of minutes figuring out the noise in the valgrind output. That said, I'm unable to reproduce this on Fedora 16 (libX11 1.4.3 and libXext 1.2.0). What OS are you seeing this on, and what versions of those packages does it have? Debian Unstable: libx11-6 1.4.99.1 and libxext6 1.3.0 Thanks, Antonio -- Antonio Ospite http://ao2.it A: Because it messes up the order in which people normally read text. See http://en.wikipedia.org/wiki/Posting_style Q: Why is top-posting such a bad thing? pgpVMr18y0wIk.pgp Description: PGP signature ___ xorg@lists.x.org: X.Org support Archives: http://lists.freedesktop.org/archives/xorg Info: http://lists.x.org/mailman/listinfo/xorg Your subscription address: arch...@mail-archive.com
Re: Special keys on Dell XPS L502X
Thanks for the tip! I have tried to use evtest and here are results. Key I: -- I still get two key press events for this button and it is puzzling how I could use it to get a single action. Event: time 1331919071.656104, type 4 (EV_MSC), code 4 (MSC_SCAN), value db Event: time 1331919071.656109, type 1 (EV_KEY), code 125 (KEY_LEFTMETA), value 1 Event: time 1331919071.656110, -- SYN_REPORT Event: time 1331919071.656913, type 4 (EV_MSC), code 4 (MSC_SCAN), value 2d Event: time 1331919071.656917, type 1 (EV_KEY), code 45 (KEY_X), value 1 Event: time 1331919071.656918, -- SYN_REPORT Event: time 1331919071.658889, type 4 (EV_MSC), code 4 (MSC_SCAN), value 2d Event: time 1331919071.658892, type 1 (EV_KEY), code 45 (KEY_X), value 0 Event: time 1331919071.658893, -- SYN_REPORT xEvent: time 1331919071.661927, type 4 (EV_MSC), code 4 (MSC_SCAN), value db Event: time 1331919071.661932, type 1 (EV_KEY), code 125 (KEY_LEFTMETA), value 0 Event: time 1331919071.661932, -- SYN_REPORT If I press left meta key or 'x' on the keyboard, they produce identical events: Event: time 1331919098.264146, type 4 (EV_MSC), code 4 (MSC_SCAN), value db Event: time 1331919098.264151, type 1 (EV_KEY), code 125 (KEY_LEFTMETA), value 1 Event: time 1331919098.264152, -- SYN_REPORT Event: time 1331919098.368375, type 4 (EV_MSC), code 4 (MSC_SCAN), value db Event: time 1331919098.368379, type 1 (EV_KEY), code 125 (KEY_LEFTMETA), value 0 Event: time 1331919098.368380, -- SYN_REPORT Event: time 1331919136.502868, type 4 (EV_MSC), code 4 (MSC_SCAN), value 2d Event: time 1331919136.502873, type 1 (EV_KEY), code 45 (KEY_X), value 1 Event: time 1331919136.502874, -- SYN_REPORT xEvent: time 1331919136.569219, type 4 (EV_MSC), code 4 (MSC_SCAN), value 2d Event: time 1331919136.569223, type 1 (EV_KEY), code 45 (KEY_X), value 0 Event: time 1331919136.569224, -- SYN_REPORT I noticed that key I, left meta an 'x' has these scancodes: 0xe0 0x5b 0x2d 0xad 0xe0 0xdbKey I 0xe0 0x5b 0xe0 0xdb left meta 0x2d 0xad'x' Is there a way to tell apart key I from the combination of the other two? Or the only way to make use of that button is to assign some function to LEFTMETA+x? Key II: --- Event: time 1331919857.440828, type 4 (EV_MSC), code 4 (MSC_SCAN), value 85 Event: time 1331919857.440832, type 1 (EV_KEY), code 224 (KEY_BRIGHTNESSDOWN), value 1 Event: time 1331919857.440833, -- SYN_REPORT Event: time 1331919857.440839, type 1 (EV_KEY), code 224 (KEY_BRIGHTNESSDOWN), value 0 Event: time 1331919857.440840, -- SYN_REPORT Event: time 1331919857.443935, type 4 (EV_MSC), code 4 (MSC_SCAN), value 85 Event: time 1331919857.443937, -- SYN_REPORT If I use Fn+F4 no event is reported, but display brightness is reduced. Can I somehow assign different function for key II? Key III: Event: time 1331920020.869582, type 4 (EV_MSC), code 4 (MSC_SCAN), value 84 Event: time 1331920020.869587, type 1 (EV_KEY), code 163 (KEY_NEXTSONG), value 1 Event: time 1331920020.869588, -- SYN_REPORT Event: time 1331920020.872227, type 4 (EV_MSC), code 4 (MSC_SCAN), value 84 Event: time 1331920020.872231, type 1 (EV_KEY), code 163 (KEY_NEXTSONG), value 0 Event: time 1331920020.872232, -- SYN_REPORT If I use keyboard for the same action (Fn+F10), I get the same keycode, but different MSC value: Event: time 1331920028.157210, type 4 (EV_MSC), code 4 (MSC_SCAN), value 99 Event: time 1331920028.157215, type 1 (EV_KEY), code 163 (KEY_NEXTSONG), value 1 Event: time 1331920028.157216, -- SYN_REPORT Event: time 1331920028.162232, type 4 (EV_MSC), code 4 (MSC_SCAN), value 99 Event: time 1331920028.162236, type 1 (EV_KEY), code 163 (KEY_NEXTSONG), value 0 Event: time 1331920028.162237, -- SYN_REPORT Can I somehow make X recognize that key III is different from Fn+F10 by using this difference in MSC value? Another question is - How do I assign the function I want to the key? E.g. I want for the key III to turn off display backlight (equivalent to xset dpms force off). In Gnome key bindings it looks that I can use only normal keyboard functions together with control keys (e.g. Alt) to set them to execute a predefined function. Is there a way to set it to an arbitrary key - my key III? In X11/xkb/keycodes/evdev I found this: I253 = 253; // #define KEY_DISPLAY_OFF 245 Would it be the same as xset dpms force off? How could I assign key III to I253? Any help would be appreciated. Reinis ___ xorg@lists.x.org: X.Org support Archives: http://lists.freedesktop.org/archives/xorg Info:
X.Org not accepted in Summer of Code this year
Hi everyone, As you might have heard already, X.Org was not accepted for Google Summer of Code 2012. For reference the list of accepted organizations (at least the ones which have filled up their profiles) is visible here: http://www.google-melange.com/gsoc/accepted_orgs/google/gsoc2012 I understand some students will be disappointed, but I would like to draw their attention to the Endless Vacation of Code program. The really nice thing about Endless Vacation of Code is that since it is endless, it is available any time of the year! So if you have a couple of months free and want to participate in some really awesome Open Source graphics projects, please see: http://www.x.org/wiki/XorgEVoC Cheers, Stéphane ___ xorg@lists.x.org: X.Org support Archives: http://lists.freedesktop.org/archives/xorg Info: http://lists.x.org/mailman/listinfo/xorg Your subscription address: arch...@mail-archive.com
[PATCH] Process ABS_{X,Y}, even if multitouch is enabled
This allows the processing of cursor motion events for input devices that provide both absolute multitouch events (e.g. by fingers) and touchless motion events (e.g. special pens) Signed-off-by: Thorsten Wißmann e...@thorsten-wissmann.de Signed-off-by: Maximilian Krüger maxfr...@gmail.com --- src/evdev.c |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/evdev.c b/src/evdev.c index d540b87..b857b83 100644 --- a/src/evdev.c +++ b/src/evdev.c @@ -832,7 +832,7 @@ EvdevProcessAbsoluteMotionEvent(InputInfoPtr pInfo, struct input_event *ev) if (ev-code = ABS_MT_SLOT) { EvdevProcessTouchEvent(pInfo, ev); pEvdev-abs_queued = 1; -} else if (!pEvdev-mt_mask) { +} else if (!pEvdev-mt_mask || ev-code == ABS_X || ev-code == ABS_Y) { map = pEvdev-axis_map[ev-code]; valuator_mask_set(pEvdev-vals, map, value); pEvdev-abs_queued = 1; -- 1.7.9.3 ___ xorg-devel@lists.x.org: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
[PATCH] randr: Silence valgrind after server regen with panning enabled
If when bug hunting you trigger a server regeneration after enabling a pnning mode without moving the nice, you cause a flurry of valgrind warnings: ==28455== Conditional jump or move depends on uninitialised value(s) ==28455==at 0x4D9431: xf86RandR13Pan (xf86RandR12.c:360) ==28455==by 0x4DA4B1: xf86RandR12ScreenSetSize (xf86RandR12.c:725) ==28455==by 0x4DA956: xf86RandR12CreateScreenResources (xf86RandR12.c:841) ==28455==by 0x4CB92B: xf86CrtcCreateScreenResources (xf86Crtc.c:728) ==28455==by 0x425498: main (main.c:216) ==28455== Uninitialised value was created by a heap allocation ==28455==at 0x402894D: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==28455==by 0x4DAA74: xf86RandR12Init (xf86RandR12.c:889) ==28455==by 0x4CBADD: xf86CrtcScreenInit (xf86Crtc.c:782) ==28455==by 0xA71DBAE: I830ScreenInit (intel_driver.c:1034) ==28455==by 0x43CE0E: AddScreen (dispatch.c:3909) ==28455==by 0x48FDE6: InitOutput (xf86Init.c:817) ==28455==by 0x425400: main (main.c:204) Since these depend upon the user exiting without moving the mouse in an unsual setup, the impact of this bug is going to be very small. Signed-off-by: Chris Wilson ch...@chris-wilson.co.uk --- hw/xfree86/modes/xf86RandR12.c |1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git a/hw/xfree86/modes/xf86RandR12.c b/hw/xfree86/modes/xf86RandR12.c index d5031a2..b383197 100644 --- a/hw/xfree86/modes/xf86RandR12.c +++ b/hw/xfree86/modes/xf86RandR12.c @@ -909,6 +909,7 @@ xf86RandR12Init (ScreenPtr pScreen) randrp-supported_rotations = RR_Rotate_0; randrp-maxX = randrp-maxY = 0; +randrp-pointerX = randrp-pointerY = 0; /* keep valgrind quiet */ dixSetPrivate(pScreen-devPrivates, xf86RandR12Key, randrp); -- 1.7.9.1 ___ xorg-devel@lists.x.org: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
[PATCH] xf86/modes: Defang stale pointers when copying modes
We stash a copy of the desiredMode on the crtc so that we can restore it after a vt switch. This copy is a simple memcpy and so also stashes a references to the pointers contained within the desiredMode. Those pointers are freed the next time the outputs are probed and mode list rebuilt, resulting in us chasing those dangling pointers on the next mode switch. ==22787== Invalid read of size 1 ==22787==at 0x40293C2: __GI_strlen (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==22787==by 0x668F875: strdup (strdup.c:42) ==22787==by 0x5DBA00: XNFstrdup (utils.c:1124) ==22787==by 0x4D72ED: xf86DuplicateMode (xf86Modes.c:209) ==22787==by 0x4CA848: xf86CrtcSetModeTransform (xf86Crtc.c:276) ==22787==by 0x4D05B4: xf86SetDesiredModes (xf86Crtc.c:2677) ==22787==by 0xA7479D0: sna_create_screen_resources (sna_driver.c:220) ==22787==by 0x4CB914: xf86CrtcCreateScreenResources (xf86Crtc.c:725) ==22787==by 0x425498: main (main.c:216) ==22787== Address 0x72c60e0 is 0 bytes inside a block of size 9 free'd ==22787==at 0x4027AAE: free (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==22787==by 0x4A547E: xf86DeleteMode (xf86Mode.c:1984) ==22787==by 0x4CD84F: xf86ProbeOutputModes (xf86Crtc.c:1578) ==22787==by 0x4DC405: xf86RandR12GetInfo12 (xf86RandR12.c:1537) ==22787==by 0x518119: RRGetInfo (rrinfo.c:202) ==22787==by 0x51D997: rrGetScreenResources (rrscreen.c:335) ==22787==by 0x51E0D0: ProcRRGetScreenResources (rrscreen.c:475) ==22787==by 0x513852: ProcRRDispatch (randr.c:493) ==22787==by 0x4346DB: Dispatch (dispatch.c:439) ==22787==by 0x4256E4: main (main.c:287) Reported-by: Zdenek Kabelac zdenek.kabe...@gmail.com Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=36108 Signed-off-by: Chris Wilson ch...@chris-wilson.co.uk --- hw/xfree86/common/xf86.h |1 + hw/xfree86/modes/xf86Crtc.c|6 +++--- hw/xfree86/modes/xf86Modes.c | 11 +++ hw/xfree86/modes/xf86RandR12.c |2 +- 4 files changed, 16 insertions(+), 4 deletions(-) diff --git a/hw/xfree86/common/xf86.h b/hw/xfree86/common/xf86.h index b711f05..f83d66f 100644 --- a/hw/xfree86/common/xf86.h +++ b/hw/xfree86/common/xf86.h @@ -326,6 +326,7 @@ extern _X_EXPORT double xf86ModeVRefresh(const DisplayModeRec *mode); extern _X_EXPORT void xf86SetModeDefaultName(DisplayModePtr mode); extern _X_EXPORT void xf86SetModeCrtc(DisplayModePtr p, int adjustFlags); extern _X_EXPORT DisplayModePtr xf86DuplicateMode(const DisplayModeRec *pMode); +extern _X_EXPORT void xf86InternMode(DisplayModeRec *intern, const DisplayModeRec *mode); extern _X_EXPORT DisplayModePtr xf86DuplicateModes(ScrnInfoPtr pScrn, DisplayModePtr modeList); extern _X_EXPORT Bool xf86ModesEqual(const DisplayModeRec *pMode1, const DisplayModeRec *pMode2); diff --git a/hw/xfree86/modes/xf86Crtc.c b/hw/xfree86/modes/xf86Crtc.c index da9db34..2a94466 100644 --- a/hw/xfree86/modes/xf86Crtc.c +++ b/hw/xfree86/modes/xf86Crtc.c @@ -2481,7 +2481,7 @@ xf86InitialConfiguration (ScrnInfoPtr scrn, Bool canGrow) if (mode crtc) { - crtc-desiredMode = *mode; + xf86InternMode(crtc-desiredMode, mode); crtc-desiredRotation = output-initial_rotation; crtc-desiredX = output-initial_x; crtc-desiredY = output-initial_y; @@ -2663,7 +2663,7 @@ xf86SetDesiredModes (ScrnInfoPtr scrn) if (!mode) return FALSE; - crtc-desiredMode = *mode; + xf86InternMode(crtc-desiredMode, mode); crtc-desiredRotation = RR_Rotate_0; crtc-desiredTransformPresent = FALSE; crtc-desiredX = 0; @@ -2810,7 +2810,7 @@ xf86SetSingleMode (ScrnInfoPtr pScrn, DisplayModePtr desired, Rotation rotation) ok = FALSE; else { - crtc-desiredMode = *crtc_mode; + xf86InternMode(crtc-desiredMode, crtc_mode); crtc-desiredRotation = rotation; crtc-desiredTransformPresent = FALSE; crtc-desiredX = 0; diff --git a/hw/xfree86/modes/xf86Modes.c b/hw/xfree86/modes/xf86Modes.c index 49cc149..bc2fdf2 100644 --- a/hw/xfree86/modes/xf86Modes.c +++ b/hw/xfree86/modes/xf86Modes.c @@ -212,6 +212,17 @@ xf86DuplicateMode(const DisplayModeRec *pMode) } /** + * Fills in a copy of mode, removing all stale pointer references. + */ +void +xf86InternMode(DisplayModeRec *intern, const DisplayModeRec *mode) +{ +*intern = *mode; +intern-prev = intern-next = NULL; +intern-name = NULL; +} + +/** * Duplicates every mode in the given list and returns a pointer to the first * mode. * diff --git a/hw/xfree86/modes/xf86RandR12.c b/hw/xfree86/modes/xf86RandR12.c index d5031a2..97dc35f 100644 --- a/hw/xfree86/modes/xf86RandR12.c +++ b/hw/xfree86/modes/xf86RandR12.c @@ -1236,7 +1236,7 @@ xf86RandR12CrtcSet (ScreenPtr pScreen, /* * Save the last successful setting for
Re: [PATCH] randr: Silence valgrind after server regen with panning enabled
On Fri, 16 Mar 2012 08:45:38 -0700, Aaron Plattner aplatt...@nvidia.com wrote: On 03/16/2012 04:39 AM, Chris Wilson wrote: +randrp-pointerX = randrp-pointerY = 0; /* keep valgrind quiet */ I don't think the comment is necessary, since initializing all the fields is standard good practice. The comment was primarily because I wasn't sure if (0,0) was not just as bogus a coordinate as leaving the values uninitialised. ;-) -Chris -- Chris Wilson, Intel Open Source Technology Centre ___ xorg-devel@lists.x.org: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
Re: [libxkbcommon] Pull request - many changes
On Sat, Mar 10, 2012 at 02:00:46PM +, Daniel Stone wrote: Hi Ran, On 3 March 2012 22:40, Ran Benita ran...@gmail.com wrote: [I know the normal procedure is to send the patches for review in reasonable chunks to the list, however I won't have time the following weeks, and I don't want them to get lost. So I'll try my luck now.] I set up a github repository with my libxkbcommon patches. The first few were sent to the list and some were reviewed (up to branch 'fixes'). The next one's were not (branch 'fixes-cont'). [...] The intention is to have a clean slate before doing some actual changes to libxkbcommon (which I hope to do when I have time in the future). Great stuff - thanks again! I've pushed this, along with a bunch of other changes I've made, now. Great, thanks! And the changed you made are much better; especially removing geometry (by far the ugliest part) and overlays and radio groups (what the hell are those again?). Also removing atoms from the public API. Does all of this mean that there are no plans to use libxkbcommon in the server or Xlib? I imagine the library can be a lot nicer to use without clinging to the old interface and legacy stuff. Out of interest, what were you planning to work on? Just streamlining it for a couple applications. You can see for example some hacks I did to get the library working nicely (with my config, at least): https://github.com/dvdhrm/kmscon/blob/master/src/kbd_xkb.c (This is a WIP project by David Herrmann - wasn't updated to latest changes yet). Obviously it contains errors and shouldn't be done by the application developer. I'll try and make an example patch now. There's also plenty of janitorial work left to be done, if you want it/have time to review it. - Ran ___ xorg-devel@lists.x.org: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
[PATCH libxkbcommon] Add xkb_key_get_action API
By which one can tell when to switch groups, etc. Signed-off-by: Ran Benita ran...@gmail.com --- This would allow me to delete some duplicate code in the application and would make me a happy camper for a while. Wasn't sure about a couple of things: - Should the by_level API be exposed (the _syms one seems to be non-static but not exported). - Should the API allow for returning multiple actions per keypress (as the _syms API seems to suggest will be done for keysyms)? include/xkbcommon/xkbcommon.h |4 src/map.c | 35 +++ 2 files changed, 39 insertions(+) diff --git a/include/xkbcommon/xkbcommon.h b/include/xkbcommon/xkbcommon.h index 2092680..9bf5e0b 100644 --- a/include/xkbcommon/xkbcommon.h +++ b/include/xkbcommon/xkbcommon.h @@ -554,6 +554,10 @@ _X_EXPORT unsigned int xkb_key_get_syms(struct xkb_desc *xkb, struct xkb_state *state, xkb_keycode_t key, xkb_keysym_t **syms_out); +_X_EXPORT union xkb_action * +xkb_key_get_action(struct xkb_desc *xkb, struct xkb_state *state, + xkb_keycode_t key); + _XFUNCPROTOEND #endif /* _XKBCOMMON_H_ */ diff --git a/src/map.c b/src/map.c index c54f227..40d7e8f 100644 --- a/src/map.c +++ b/src/map.c @@ -164,3 +164,38 @@ err: *syms_out = NULL; return 0; } + +/** + * As below, but takes an explicit group/level rather than state. + */ +static union xkb_action * +xkb_key_get_action_by_level(struct xkb_desc *xkb, xkb_keycode_t key, +unsigned int group, unsigned int level) +{ +return XkbKeyActionEntry(xkb, key, level, group); +} + +/** + * Returns the action associated with the given key and state, or NULL if + * there are none. + */ +union xkb_action * +xkb_key_get_action(struct xkb_desc *xkb, struct xkb_state *state, + xkb_keycode_t key) +{ +int group; +int level; + +if (!xkb || !state || key xkb-min_key_code || key xkb-max_key_code) +return NULL; + +group = xkb_key_get_group(xkb, state, key); +if (group == -1) +return NULL; + +level = xkb_key_get_level(xkb, state, key, group); +if (level == -1) +return NULL; + +return xkb_key_get_action_by_level(xkb, key, group, level); +} -- 1.7.9.4 ___ xorg-devel@lists.x.org: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
Re: [PATCH] randr: Silence valgrind after server regen with panning enabled
On Fri, Mar 16, 2012 at 4:39 AM, Chris Wilson ch...@chris-wilson.co.uk wrote: If when bug hunting you trigger a server regeneration after enabling a pnning mode without moving the nice, you cause a flurry of valgrind warnings: I really wanted to read that as pwning. I take it you meant panning and mice? Jamey ___ xorg-devel@lists.x.org: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
X.Org not accepted in Summer of Code this year
Hi everyone, As you might have heard already, X.Org was not accepted for Google Summer of Code 2012. For reference the list of accepted organizations (at least the ones which have filled up their profiles) is visible here: http://www.google-melange.com/gsoc/accepted_orgs/google/gsoc2012 I understand some students will be disappointed, but I would like to draw their attention to the Endless Vacation of Code program. The really nice thing about Endless Vacation of Code is that since it is endless, it is available any time of the year! So if you have a couple of months free and want to participate in some really awesome Open Source graphics projects, please see: http://www.x.org/wiki/XorgEVoC Cheers, Stéphane ___ xorg-devel@lists.x.org: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
Re: [PATCH synaptics] Fix inverted circular scrolling direction
On 03/13/2012 08:27 PM, Peter Hutterer wrote: Introduced in 26831a6eeac6762ad4d99532f62ebbab0827de10. In said commit, the old-style button events were changed to delta accumulation. Alas, for circular scrolling, a positive delta is up whereas for everything else a positive delta is down. Reported-by: Thomas Bächler tho...@archlinux.org Signed-off-by: Peter Hutterer peter.hutte...@who-t.net --- src/synaptics.c |4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/synaptics.c b/src/synaptics.c index fa46f0d..c9609cd 100644 --- a/src/synaptics.c +++ b/src/synaptics.c @@ -2554,9 +2554,9 @@ HandleScrolling(SynapticsPrivate *priv, struct SynapticsHwState *hw, double diff = diffa(priv-scroll.last_a, angle(priv, hw-x, hw-y)); if (delta = 0.005 diff != 0.0) { if (priv-circ_scroll_vert) - priv-scroll.delta_y += diff / delta * para-scroll_dist_vert; + priv-scroll.delta_y -= diff / delta * para-scroll_dist_vert; else - priv-scroll.delta_x += diff / delta * para-scroll_dist_horiz;; + priv-scroll.delta_x -= diff / delta * para-scroll_dist_horiz;; priv-scroll.last_a = angle(priv, hw-x, hw-y); DBG(priv, 10, circ scoll delta: %.2f diff %.2f angle %.2f\n, delta, diff, priv-scroll.last_a); } Looks fine to me, though I'd suggest cleaning up the double semi-colon. Reviewed-by: Chase Douglas chase.doug...@canonical.com ___ xorg-devel@lists.x.org: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
Re: [PATCH synaptics] Fix scoll increment for non-smooth scrolling (#46617)
On 03/01/2012 05:10 PM, Peter Hutterer wrote: Introduced in 2603ad69b997c999404ecc441e0d64ea2cc22018. Previously, the delta was incremented by (actual delta/scroll dist), button clicks where then sent while (delta-- = 1). After 2603ad69b997c999404ecc441e0d64ea2cc22018, the delta was incremented by the delta only, scroll dist was used as increment in the smooth scrolling information. On non-smooth-scrolling servers, the driver would now send too many events. Restore the old behaviour by dividing by the scroll distance before entering the button click loop. X.Org Bug 46617 http://bugs.freedesktop.org/show_bug.cgi?id=46617 Tested-by: Peter Zotov whitequ...@whitequark.org Signed-off-by: Peter Hutterer peter.hutte...@who-t.net --- src/synaptics.c |6 ++ 1 files changed, 6 insertions(+), 0 deletions(-) diff --git a/src/synaptics.c b/src/synaptics.c index 139f237..7713784 100644 --- a/src/synaptics.c +++ b/src/synaptics.c @@ -2743,6 +2743,12 @@ post_scroll_events(const InputInfoPtr pInfo) if (valuator_mask_num_valuators(priv-scroll_events_mask)) xf86PostMotionEventM(pInfo-dev, FALSE, priv-scroll_events_mask); #else +SynapticsParameters *para = priv-synpara; + +/* smooth scrolling uses the dist as increment */ +priv-scroll.delta_y /= para-scroll_dist_vert; +priv-scroll.delta_x /= para-scroll_dist_horiz; + while (priv-scroll.delta_y = -1.0) { post_button_click(pInfo, 4); Sounds reasonable to me. Reviewed-by: Chase Douglas chase.doug...@canonical.com ___ xorg-devel@lists.x.org: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
Re: [PATCH v2 9/9] Xext: Add per-device SyncCounters
Below: On 3/14/12 9:10 PM, Peter Hutterer wrote: Previously, we only had one idle alarm that was triggered for all devices, whenever the user used any device, came back from suspend, etc. Add system SyncCounters for each device (named DEVICEIDLETIME x, with x being the device id) that trigger on that device only. This allows for enabling/disabling devices based on interaction with other devices. Popular use-case: disable the touchpad when the keyboard just above the touchpad stops being idle. Signed-off-by: Peter Huttererpeter.hutte...@who-t.net Reviewed-by: Jeremy Huddlestonjerem...@apple.com --- Changes to v1: - adapt to SysCounterGetPrivate - adapt to SysCounterList being a linked list Xext/sync.c| 48 +++- Xext/syncsrv.h |3 +++ dix/devices.c |8 include/inputstr.h |2 ++ 4 files changed, 56 insertions(+), 5 deletions(-) diff --git a/Xext/sync.c b/Xext/sync.c index 5479381..c2f6573 100644 --- a/Xext/sync.c +++ b/Xext/sync.c @@ -70,6 +70,7 @@ PERFORMANCE OF THIS SOFTWARE. #include syncsrv.h #include syncsdk.h #include protocol-versions.h +#include inputstr.h #includestdio.h #if !defined(WIN32) @@ -2715,12 +2716,22 @@ SyncInitServerTime(void) typedef struct { XSyncValue *value_less; XSyncValue *value_greater; +int deviceid; } IdleCounterPriv; static void IdleTimeQueryValue (pointer pCounter, CARD64 *pValue_return) { -CARD32 idle = GetTimeInMillis() - lastDeviceEventTime[XIAllDevices].milliseconds; +int deviceid; +CARD32 idle; + +if (pCounter) { +SyncCounter *counter = pCounter; +IdleCounterPriv *priv = SysCounterGetPrivate(counter); +deviceid = priv-deviceid; +} else +deviceid = XIAllDevices; +idle = GetTimeInMillis() - lastDeviceEventTime[deviceid].milliseconds; XSyncIntsToValue (pValue_return, idle, 0); } @@ -2813,7 +2824,7 @@ IdleTimeWakeupHandler (pointer pCounter, int rc, pointer LastSelectMask) if (!less !greater) return; -IdleTimeQueryValue (NULL,idle); +IdleTimeQueryValue (pCounter,idle); if ((greater XSyncValueGreaterOrEqual (idle, *greater)) || (less XSyncValueLessOrEqual (idle, *less))) @@ -2849,8 +2860,8 @@ IdleTimeBracketValues (pointer pCounter, CARD64 *pbracket_less, priv-value_less= pbracket_less; } -static void -SyncInitIdleTime (void) +static SyncCounter* +init_system_idle_counter(const char *name, int deviceid) { CARD64 resolution; XSyncValue idle; @@ -2860,12 +2871,39 @@ SyncInitIdleTime (void) IdleTimeQueryValue (NULL,idle); XSyncIntToValue (resolution, 4); -idle_time_counter = SyncCreateSystemCounter(IDLETIME, idle, resolution, +idle_time_counter = SyncCreateSystemCounter(name, idle, resolution, XSyncCounterUnrestricted, IdleTimeQueryValue, IdleTimeBracketValues); +priv-deviceid = deviceid; priv-value_less = priv-value_greater = NULL; idle_time_counter-pSysCounterInfo-private = priv; + +return idle_time_counter; +} + +static void +SyncInitIdleTime (void) +{ +init_system_idle_counter(IDLETIME, XIAllDevices); } + +SyncCounter* +SyncInitDeviceIdleTime(DeviceIntPtr dev) +{ +char timer_name[64]; +sprintf(timer_name, DEVICEIDLETIME %d, dev-id); + +return init_system_idle_counter(timer_name, dev-id); +} + +void SyncRemoveDeviceIdleTime(SyncCounter *counter) +{ +/* ResetProc frees the list before devices are shutdown and try to + * delete their counters again */ Is this comment true? I didn't see code to do so in 1/9. Did you forget to add it there, or forget to clean up this comment? Or is it just too late in Friday for me to be reading code correctly :-) Thanks, -James +if (!xorg_list_is_empty(SysCounterList)) +xorg_list_del(counter-pSysCounterInfo-entry); +} + diff --git a/Xext/syncsrv.h b/Xext/syncsrv.h index 27b533c..84c7aee 100644 --- a/Xext/syncsrv.h +++ b/Xext/syncsrv.h @@ -139,4 +139,7 @@ extern void SyncDestroySystemCounter( ); extern void SyncExtensionInit(void); + +extern SyncCounter *SyncInitDeviceIdleTime(DeviceIntPtr dev); +extern void SyncRemoveDeviceIdleTime(SyncCounter *counter); #endif /* _SYNCSRV_H_ */ diff --git a/dix/devices.c b/dix/devices.c index 7478ad6..a488d41 100644 --- a/dix/devices.c +++ b/dix/devices.c @@ -87,6 +87,7 @@ SOFTWARE. #include enterleave.h /* for EnterWindow() */ #include xserver-properties.h #include xichangehierarchy.h /* For XISendDeviceHierarchyEvent */ +#include syncsrv.h /** @file * This file handles input device-related stuff. @@ -419,9 +420,13 @@ EnableDevice(DeviceIntPtr dev, BOOL
[ANNOUNCE] libXt 1.1.3
This regression repair release reverts a regrettable revision that resulted in: https://bugs.freedesktop.org/show_bug.cgi?id=47203 https://bugs.freedesktop.org/show_bug.cgi?id=47216 Alan Coopersmith (1): libXt 1.1.3 Jeremy Huddleston (1): Revert Treat unexpected returned events from poll as errors git tag: libXt-1.1.3 http://xorg.freedesktop.org/archive/individual/lib/libXt-1.1.3.tar.bz2 MD5: a6f137ae100e74ebe3b71eb4a38c40b3 SHA1: 2cef068bc4d7170e31b89b5c06aeaf4451a7699a SHA256: 8db593c3fc5ffc4e9cd854ba50af1eac9b90d66521ba17802b8f1e0d2d7f05bd http://xorg.freedesktop.org/archive/individual/lib/libXt-1.1.3.tar.gz MD5: 7a80ed7aba06668b12ebd0910318a1f1 SHA1: 43c5428311eb851796bde60f77ab3fe4f9eb2666 SHA256: a56f1c13430f8ee0c040de1e3a7f439c9707d2f9c9b5ceee8bdbb74fddbe5560 -- -Alan Coopersmith- alan.coopersm...@oracle.com Oracle Solaris Engineering - http://blogs.oracle.com/alanc pgpD6InHs3asm.pgp Description: PGP signature ___ xorg-announce mailing list xorg-announce@lists.x.org http://lists.x.org/mailman/listinfo/xorg-announce
[ANNOUNCE] libdrm 2.4.32
I pushed this version out to make two new intel interfaces available to Mesa: unsynchronized maps, and AUB dumping. It also contains valgrind support, so you no longer get complaints in GL applications about invalid reads/writes when the driver talks to the GPU. Thanks, Chris! Alan Coopersmith (1): Make drm/drm_fourcc.h portable to non-linux platforms Chris Wilson (3): intel: Mark up with valgrind intrinsics to reduce false positives configure: Fix pkg-config test in absence of valgrind intel: Detect cache domain inconsistency with valgrind David Herrman (1): xf86drmMode.h: Add header protection Eric Anholt (12): intel: Fix a typo in decode error message. intel: Add decode for gen7 3DSTATE_WM. intel: Add decode for gen7 HIER_DEPTH_BUFFER. intel: Import a new batchbuffer for the gen7 test. intel: Add .aub file output support. intel: Bump the copyright dates on the bufmgr files. intel: Fix error check for I915_PARAM_HAS_LLC. intel: Add support for (possibly) unsynchronized maps. intel: Move the gen4-6 3DPRIMITIVE handling out of the switch statement. intel: Add per-dword decode of gen7 3DPRIMITIVE. intel: Quiet two more valgrind complaints with recent changes. configure: Bump version for 2.4.32. Jerome Glisse (1): radeon: fix pitch alignment for scanout buffer Kenneth Graunke (1): intel: Add support for overriding the PCI ID via an environment variable Matt Turner (1): Don't require pciaccess if Intel is disabled Michel Dänzer (1): radeon_cs_setup_bo: Fix accounting if caller specified write and read domains. git tag: 2.4.32 http://dri.freedesktop.org/libdrm/libdrm-2.4.32.tar.bz2 MD5: b731faf4a49f89c318d84378cb563cf8 libdrm-2.4.32.tar.bz2 SHA1: 4aab6cc1c0d2a4822ffd83bd3da0e7a5479bf842 libdrm-2.4.32.tar.bz2 SHA256: 9ba8a1613de57af8f501a162747ed69aff30d63fc1316602770974bdd9ee984e libdrm-2.4.32.tar.bz2 http://dri.freedesktop.org/libdrm/libdrm-2.4.32.tar.gz MD5: 531a9c01d52808020abfe0db5f3a90e7 libdrm-2.4.32.tar.gz SHA1: 992629afd3fca71fea351b0b0403c6682faea575 libdrm-2.4.32.tar.gz SHA256: 79ad7c60cfb17381f0fba5f0ddb7e899d85215a894dac79be18da324f78e223e libdrm-2.4.32.tar.gz pgpys8jG9gv17.pgp Description: PGP signature ___ xorg-announce mailing list xorg-announce@lists.x.org http://lists.x.org/mailman/listinfo/xorg-announce