Re: Intel xf86-intel-video with G45: glxgears synchonised to VSYNC
On Mon, 2008-12-08 at 07:31 +, Terry Barnaby wrote: Hi, I am playing with an Intel G45FC Motherboard with a HDMI connected Samsung HDTV. I am using Fedora 10 as the base with the latest DRM/X11/mesa xf86-intel-video drivers from the Xorg GIT repository. In general this appears to be working. One thing I note however, is that when I run glxgears the 3D drawing frame rate, reported by glxgears, is exactly the VSYNC rate. The CPU usage is well down and is definitely using DRI. When using the stock xf86-intel-video driver that came with Fedora 10, glxgears was reported around 1500. Is this correct behavior, I thought that glxgears simply drew as fast as possible and was not synchronised to the VSYNC frame rate ? No, this is correct behavior. -- Eric Anholt [EMAIL PROTECTED] [EMAIL PROTECTED] signature.asc Description: This is a digitally signed message part ___ xorg mailing list xorg@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/xorg
[PATCH] mi: streamline CopyGetMasterEvent(), remove code duplication.
Signed-off-by: Peter Hutterer [EMAIL PROTECTED] --- mi/mieq.c | 35 +-- 1 files changed, 17 insertions(+), 18 deletions(-) diff --git a/mi/mieq.c b/mi/mieq.c index 971edf9..f0eec26 100644 --- a/mi/mieq.c +++ b/mi/mieq.c @@ -277,25 +277,24 @@ void CopyGetMasterEvent(DeviceIntPtr mdev, xEvent* original, xEvent** master, int count) { -if (count 1) { -*master = xcalloc(count, sizeof(xEvent)); -if (!*master) -FatalError([mi] No memory left for master event.\n); -while(count--) -{ -memcpy((*master)[count], original[count], sizeof(xEvent)); -ChangeDeviceID(mdev, (*master)[count]); -} -} else +int len = count * sizeof(xEvent); +xEvent *ev; + +/* Assumption: GenericEvents always have count 1 */ + +if (GEV(original)-type == GenericEvent) +len += GEV(original)-length * 4; + +ev = xalloc(len); +if (!ev) +FatalError([mi] No memory left for master event.\n); +memcpy(ev, original, len); +*master = ev; + +while(count--) { -int len = sizeof(xEvent); -if (original-u.u.type == GenericEvent) -len += GEV(original)-length * 4; -*master = xalloc(len); -if (!*master) -FatalError([mi] No memory left for master event.\n); -memcpy(*master, original, len); -ChangeDeviceID(mdev, *master); +ChangeDeviceID(mdev, ev); +ev++; } } -- 1.6.0.4 ___ xorg mailing list xorg@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/xorg
[PATCH] dix: purge dead device-based window access code.
Signed-off-by: Peter Hutterer [EMAIL PROTECTED] --- dix/window.c| 17 - include/windowstr.h |9 - 2 files changed, 0 insertions(+), 26 deletions(-) diff --git a/dix/window.c b/dix/window.c index c038799..88ab5e9 100644 --- a/dix/window.c +++ b/dix/window.c @@ -413,12 +413,6 @@ CreateRootWindow(ScreenPtr pScreen) return FALSE; } -pWin-optional-access.perm = NULL; -pWin-optional-access.deny = NULL; -pWin-optional-access.nperm = 0; -pWin-optional-access.ndeny = 0; -pWin-optional-access.defaultRule = 0; - pWin-optional-colormap = pScreen-defColormap; pWin-optional-visual = pScreen-rootVisual; @@ -832,9 +826,6 @@ DisposeWindowOptional (WindowPtr pWin) pWin-optional-deviceCursors = NULL; } -xfree(pWin-optional-access.perm); -xfree(pWin-optional-access.deny); - /* Remove generic event mask allocations */ if (pWin-optional-geMasks) gmask = pWin-optional-geMasks-geClients; @@ -3467,9 +3458,6 @@ CheckWindowOptionalNeed (WindowPtr w) pNode = pNode-next; } } -if (optional-access.nperm != 0 || -optional-access.ndeny != 0) -return; if (optional-geMasks != NULL) return; @@ -3530,11 +3518,6 @@ MakeWindowOptional (WindowPtr pWin) optional-geMasks-eventMasks[i] = 0; } -optional-access.nperm = 0; -optional-access.ndeny = 0; -optional-access.perm = NULL; -optional-access.deny = NULL; -optional-access.defaultRule = 0; parentOptional = FindWindowWithOptional(pWin)-optional; optional-visual = parentOptional-visual; if (!pWin-cursorIsNone) diff --git a/include/windowstr.h b/include/windowstr.h index ccd42a7..b39b351 100644 --- a/include/windowstr.h +++ b/include/windowstr.h @@ -89,14 +89,6 @@ typedef struct _GenericClientMasks { GenericMaskPtr geClients; } GenericClientMasksRec, *GenericClientMasksPtr; -typedef struct _WindowAccessRec { -int defaultRule; /* WindowAccessDenyAll */ -DeviceIntPtr*perm; -int nperm; -DeviceIntPtr*deny; -int ndeny; -} WindowAccessRec, *WindowAccessPtr; - typedef struct _WindowOpt { VisualID visual;/* default: same as parent */ CursorPtr cursor;/* default: window.cursorNone */ @@ -114,7 +106,6 @@ typedef struct _WindowOpt { struct _OtherInputMasks *inputMasks; /* default: NULL */ DevCursorList deviceCursors; /* default: NULL */ struct _GenericClientMasks *geMasks; /* default: NULL */ -WindowAccessRec access; } WindowOptRec, *WindowOptPtr; #define BackgroundPixel2L -- 1.6.0.4 ___ xorg mailing list xorg@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/xorg
[PATCH] Xext: un-export all XGE functions.
These functions are only to be used by X server extensions, so let's not expose them to the world. Signed-off-by: Peter Hutterer [EMAIL PROTECTED] --- Xext/geext.h | 12 ++-- 1 files changed, 6 insertions(+), 6 deletions(-) diff --git a/Xext/geext.h b/Xext/geext.h index 3074431..4d2acaf 100644 --- a/Xext/geext.h +++ b/Xext/geext.h @@ -66,7 +66,7 @@ typedef struct _GEExtension { /* All registered extensions and their handling functions. */ -extern _X_EXPORT GEExtension GEExtensions[MAXEXTENSIONS]; +extern GEExtension GEExtensions[MAXEXTENSIONS]; /* Returns the extension offset from the event */ #define GEEXT(ev) (((xGenericEvent*)(ev))-extension) @@ -95,20 +95,20 @@ extern _X_EXPORT GEExtension GEExtensions[MAXEXTENSIONS]; /* Interface for other extensions */ -extern _X_EXPORT void GEWindowSetMask(ClientPtr pClient, DeviceIntPtr pDev, +extern void GEWindowSetMask(ClientPtr pClient, DeviceIntPtr pDev, WindowPtr pWin, int extension, Mask mask); -extern _X_EXPORT void GERegisterExtension( +extern void GERegisterExtension( int extension, void (*ev_dispatch)(xGenericEvent* from, xGenericEvent* to), void (*ev_fill)(xGenericEvent* ev, DeviceIntPtr pDev, WindowPtr pWin, GrabPtr pGrab) ); -extern _X_EXPORT void GEInitEvent(xGenericEvent* ev, int extension); -extern _X_EXPORT BOOL GEDeviceMaskIsSet(WindowPtr pWin, DeviceIntPtr pDev, +extern void GEInitEvent(xGenericEvent* ev, int extension); +extern BOOL GEDeviceMaskIsSet(WindowPtr pWin, DeviceIntPtr pDev, int extension, Mask mask); -extern _X_EXPORT void GEExtensionInit(void); +extern void GEExtensionInit(void); #endif /* _GEEXT_H_ */ -- 1.6.0.4 Cheers, Peter ___ xorg mailing list xorg@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/xorg
Re: [PATCH] mi: streamline CopyGetMasterEvent(), remove code duplication.
On Mon, Dec 08, 2008 at 06:13:36PM +1000, Peter Hutterer wrote: +int len = count * sizeof(xEvent); +xEvent *ev; + +/* Assumption: GenericEvents always have count 1 */ + +if (GEV(original)-type == GenericEvent) +len += GEV(original)-length * 4; + +ev = xalloc(len); +if (!ev) +FatalError([mi] No memory left for master event.\n); +memcpy(ev, original, len); +*master = ev; + +while(count--) Hi, Would it be possible to do something like we do with GPE and friends where you pessimistically allocate based on the maximum possible number of events and only reallocate upwards when necessary? Having malloc() in the event delivery path is a bit of a loss. Cheers, Daniel signature.asc Description: Digital signature ___ xorg mailing list xorg@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/xorg
Re: X-server doesn't start after boot-up
raman narasimhan [EMAIL PROTECTED] writes: i've a debian etch system.. i'm using the grub loader.. immediately after the boot process when the login screen is to take over, instead of the login screen, i get this This list talks about the development of the X Window system on Linux. You would have more success with support questions in a mailing list dedicated to your distribution. In your case, the list is [EMAIL PROTECTED] F-D ___ xorg mailing list xorg@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/xorg
Get raw data of Xrender Picture structure
Hello, I would like to get the raw data of the Picture structure in Xrender. Basically, I would like to import into a GdkPixbuf, a picture returned by XRenderCreatePicture. There doesn't seem to be any data export function in Xrender. Any pointer how I could achieve this? Grégoire PS: What do I need to do that? Because I want to preview in a gtk+ application the content of a window that is minimized (like Compiz or Vista can do). gdk_pixbuf_get_from_drawable returns garbage with a minimized windows and I think that xrender will return at least the outdated content of the window. My windows and compositing manager is xfwm4 which doesn't support this feature. I'm then trying to shortcut xfwm4 and get what I want directly from Xrender. ___ xorg mailing list xorg@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/xorg
Re: Get raw data of Xrender Picture structure
Gregoire Gentil wrote: gdk_pixbuf_get_from_drawable returns garbage with a minimized windows and I think that xrender will return at least the outdated content of the window. Nope. XRender does not contain any functions that return the contents of a window, minimized or otherwise. Maybe you want the Composite extension. My windows and compositing manager is xfwm4 which doesn't support this feature. I'm then trying to shortcut xfwm4 and get what I want directly from Xrender. Sounds like you're trying to re-implement kompose? You might look there for ideas. http://kompose.berlios.de/ Peter Harris -- Hummingbird Connectivity - A Division of Open Text Peter Harrishttp://connectivity.hummingbird.com Research and DevelopmentPhone: +1 905 762 6001 [EMAIL PROTECTED]Toll Free: 1 877 359 4866 ___ xorg mailing list xorg@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/xorg
Trying to use Radeon driver on Apple eMac
I'm struggling to get the Radeon driver to work on my eMac G4's Radeon 7500 card (the fbdev driver works fine at 1024x768 with no acceleration). On both Fedora 8 and Fedora 10 with default xorg.conf, the screen is blank (the CRT doesn't glow or anything). I have a CRT monitor that supports up to 1280x960. The eMac also has a video out port. I suspect that video may show up on an external monitor, but I can't test that until my adapter arrives. With an unmodified configuration, Xorg accepts clients and the /var/log/Xorg.0.log looks good. However, the screen is blank. I suspect this may be bogus modelines. I tried a modeline I grabbed from fbset in the working radeonfb Linux terminal: $ fbset -x Mode 1024x768 # D: 99.197 MHz, H: 72.090 kHz, V: 89.001 Hz DotClock 99.198 HTimings 1024 1072 1168 1376 VTimings 768 769 772 810 Flags+HSync +VSync EndMode I tried adding this mode through xrandr as follows: $ xrandr --newmode 1024x768j 99.198 1024 1072 1168 1376 768 769 772 810 +HSync +VSync $ xrandr --addmode DVI-0 1024x768j $ xrandr Screen 0: minimum 320 x 200, current 1024 x 768, maximum 2048 x 1024 DVI-1 disconnected (normal left inverted right x axis y axis) DVI-0 connected 1024x768+0+0 (normal left inverted right x axis y axis) 0mm x 0mm 1024x768 59.9*+ 800x60060.3 640x48059.9 1024x768j 89.0 S-video disconnected (normal left inverted right x axis y axis) $ xrandr --output DVI-0 --mode 1024x768j xrandr: Configure crtc 0 failed Just trying to xrandr to a different resolution fails: $ xrandr -s 800x600 Failed to change the screen configuration! And VT-switching to 7 (where Xorg is running) results in Xorg segfaulting whether I do any of the above or not: xauth: creating new authority file /home/joey/.serverauth.19680 X.Org X Server 1.5.3 Release Date: 5 November 2008 X Protocol Version 11, Revision 0 Build Operating System: Linux 2.6.18-92.1.10.el5 ppc Current Operating System: Linux cello 2.6.27.5-117.fc10.ppc #1 Tue Nov 18 11:50:30 EST 2008 ppc Build Date: 16 November 2008 08:30:07PM Build ID: xorg-x11-server 1.5.3-5.fc10 Before reporting problems, check http://wiki.x.org to make sure that you have the latest version. Markers: (--) probed, (**) from config file, (==) default setting, (++) from command line, (!!) notice, (II) informational, (WW) warning, (EE) error, (NI) not implemented, (??) unknown. (==) Log file: /var/log/Xorg.0.log, Time: Mon Dec 8 13:33:24 2008 (==) Using config file: /etc/X11/xorg.conf ** snip ** Leaving Restore TV ** Message: another SSH agent is running at: /tmp/ssh-igRxa19911/agent.19911 Window manager warning: Failed to read saved session file /home/joey/.config/metacity/sessions/1042b409dc9a775ef712287612087368560199110021.ms: Failed to open file '/home/joey/.config/metacity/sessions/1042b409dc9a775ef712287612087368560199110021.ms': No such file or directory Backtrace: 0: /usr/bin/X(xorg_backtrace+0x50) [0x100ffb90] 1: /usr/bin/X(xf86SigHandler+0x68) [0x10082ec8] 2: [0x100364] 3: [0x48002000] 4: /usr/lib/xorg/modules/drivers//radeon_drv.so(radeon_update_dri_buffers+0x8c) [0xe815ffc] 5: /usr/lib/xorg/modules/drivers//radeon_drv.so(RADEONEnterVT+0xb4) [0xe7e4d94] 6: /usr/lib/xorg/modules//libxaa.so [0xe6e2dc8] 7: /usr/bin/X [0x1009cf70] 8: /usr/bin/X [0x1008cf68] 9: /usr/bin/X(xf86Wakeup+0x4dc) [0x10083e2c] 10: /usr/bin/X(WakeupHandler+0x84) [0x10045d44] 11: /usr/bin/X(WaitForSomething+0x210) [0x100fc570] 12: /usr/bin/X(Dispatch+0xf8) [0x100412e8] 13: /usr/bin/X(main+0x43c) [0x1002261c] 14: /lib/libc.so.6 [0xfe0ebc4] 15: /lib/libc.so.6 [0xfe0ed80] Fatal server error: Caught signal 11. Server aborting ** snip ** waiting for X server to shut down I tried adding my magic modeline via xorg.conf, but Xorg doesn't seem to be taking it. Here is my xorg.conf: # Xorg configuration created by system-config-display Section ServerLayout Identifier single head configuration Screen 0 Screen0 0 0 InputDeviceKeyboard0 CoreKeyboard EndSection Section InputDevice Identifier Keyboard0 Driver kbd Option XkbModel pc105 Option XkbLayout us Option XkbVariant dvorak EndSection Section Device Identifier Videocard0 Driver radeon #Option Accel off Option AccelMethod XAA Option AccelDFS0 Option AGPMode 4 Option AGPFastWrite 0 Option GARTSize 64 Option EnablePageFlip 1 Option ColorTiling 1 #Option TVDACLoadDetect TRUE #Option TVStandard ntsc #Option monitor-S-video TV-monitor #Option DPMS 0 #Option UseFBDev true EndSection Section Monitor Identifier eMac Monitor
GLX in Xephyr --or-- is there some other way to catch a desktop in a texture?
I was poking around the 7.4 release notes, and saw, hey, GLX passthrough for Xephyr! Great! I gave the version installed with Ubuntu (Intrepid) a whirl, and while OpenGL applications work*, they aren't accelerated (indirectly or no) which is what I would expect passthrough to mean. So, questions: 1. Am I interpreting GLX passthrough wrong? Is the functionality I'm hoping for even implemented? 2. If so, does it look like Ubuntu is disabling this feature in their build? 3. Or am I failing to enable it on the command line? I've tried most variations on +extension GLX, nodri, and so forth, but I could have missed something. 4. Is there another way to do what I'm trying to do? What I'm trying to do: I want to capture all the windows of some arbitrary X application as GL textures, then render them in some way, without any of this output showing up on screen (except where I finally render things, obviously). To get the window contents, I was going to redirect window contents to a texture with Composite / texture_from_pixmap. This is fine if (1) the app creates only one window, and (2) is quite cooperative with respect to where it draws that window -- like, say, the xscreensaver hacks. If I want to capture Firefox, on the other hand, with dialogs and menus popping up all over the place, it seems like the thing to do to do is run another X server, run a window manager on that server, launch whatever apps I need, then capture the whole screen. Another way of doing this, of course, is to just launch another X server. But I don't know if texture_from_pixmap works across servers, and more saliently, I can't get an X server to launch without switching me to its VT (-novtswitch having no noticeable effect). * - Actually, some of the xscreensaver hacks refuse to draw on the root window, saying it doesn't support GLX visuals. I'm not sure what's up with that, but I'll also happily not care if everything else works. Ideas? ~ violet ___ xorg mailing list xorg@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/xorg
Re: [PATCH] Xext: un-export all XGE functions.
These functions are only to be used by X server extensions, so let's not expose them to the world. This will not work as expected if the X Server is compiled with hidden symbols. For the moment at least, it must be specified as both extern _X_EXPORT (what may be counter intuitive I agree). If no modules are going to access these symbols, then they should really be declared in a non sdk header. Using extern will just cause the sdksyms.sh script to add the symbol address to a vector (to ensure it exists), but without effect, as it is not being exported. Signed-off-by: Peter Hutterer [EMAIL PROTECTED] --- Xext/geext.h | 12 ++-- 1 files changed, 6 insertions(+), 6 deletions(-) diff --git a/Xext/geext.h b/Xext/geext.h index 3074431..4d2acaf 100644 --- a/Xext/geext.h +++ b/Xext/geext.h @@ -66,7 +66,7 @@ typedef struct _GEExtension { /* All registered extensions and their handling functions. */ -extern _X_EXPORT GEExtension GEExtensions[MAXEXTENSIONS]; +extern GEExtension GEExtensions[MAXEXTENSIONS]; /* Returns the extension offset from the event */ #define GEEXT(ev) (((xGenericEvent*)(ev))-extension) @@ -95,20 +95,20 @@ extern _X_EXPORT GEExtension GEExtensions[MAXEXTENSIONS]; /* Interface for other extensions */ -extern _X_EXPORT void GEWindowSetMask(ClientPtr pClient, DeviceIntPtr pDev, +extern void GEWindowSetMask(ClientPtr pClient, DeviceIntPtr pDev, WindowPtr pWin, int extension, Mask mask); -extern _X_EXPORT void GERegisterExtension( +extern void GERegisterExtension( int extension, void (*ev_dispatch)(xGenericEvent* from, xGenericEvent* to), void (*ev_fill)(xGenericEvent* ev, DeviceIntPtr pDev, WindowPtr pWin, GrabPtr pGrab) ); -extern _X_EXPORT void GEInitEvent(xGenericEvent* ev, int extension); -extern _X_EXPORT BOOL GEDeviceMaskIsSet(WindowPtr pWin, DeviceIntPtr pDev, +extern void GEInitEvent(xGenericEvent* ev, int extension); +extern BOOL GEDeviceMaskIsSet(WindowPtr pWin, DeviceIntPtr pDev, int extension, Mask mask); -extern _X_EXPORT void GEExtensionInit(void); +extern void GEExtensionInit(void); #endif /* _GEEXT_H_ */ -- 1.6.0.4 Cheers, Peter Paulo ___ xorg mailing list xorg@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/xorg
Re: GLX in Xephyr --or-- is there some other way to catch a desktop in a texture?
Ashi Krishnan wrote: What I'm trying to do: I want to capture all the windows of some arbitrary X application as GL textures, then render them in some way, without any of this output showing up on screen (except where I finally render things, obviously). Sounds like Project Looking Glass or compiz-fusion. To get the window contents, I was going to redirect window contents to a texture with Composite / texture_from_pixmap. Yes, that would be the way to go about the problem. This is fine if (1) the app creates only one window, and (2) is quite cooperative with respect to where it draws that window -- like, say, the xscreensaver hacks. Maybe I'm dense, but I'm not seeing how that's a problem. Since you're acting as the window manager (you are 'managing' that window), you can manage all the windows of the application. You can decorate and compose them however you see fit. Ideas? Write a compiz-fusion plugin instead of reinventing the entire wheel? Peter Harris -- Hummingbird Connectivity - A Division of Open Text Peter Harrishttp://connectivity.hummingbird.com Research and DevelopmentPhone: +1 905 762 6001 [EMAIL PROTECTED]Toll Free: 1 877 359 4866 ___ xorg mailing list xorg@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/xorg
xf86-video-intel DRI broken in git master ( 'Calling driver entry point failed' )
Hi there! Direct rendering is not working in the X.org i built from git yesterday. It basically complains about 'Calling driver entry point failed' when i try to start anything related to direct rendering and switches to SW rendering. I already made a bug report on this issue see here (maybe I'm being a bit overhasty, dunno): https://bugs.freedesktop.org/show_bug.cgi?id=18959 Is there any (not too old) git revision known to work? Thanks, Christian -- what is, is; what is not is possible. pgpK1vDChOgYO.pgp Description: PGP signature ___ xorg mailing list xorg@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/xorg
Re: GLX in Xephyr --or-- is there some other way to catch a desktop in a texture?
On Mon, Dec 8, 2008 at 2:20 PM, Peter Harris [EMAIL PROTECTED] wrote: Ashi Krishnan wrote: This is fine if (1) the app creates only one window, and (2) is quite cooperative with respect to where it draws that window -- like, say, the xscreensaver hacks. Maybe I'm dense, but I'm not seeing how that's a problem. Since you're acting as the window manager (you are 'managing' that window), you can manage all the windows of the application. You can decorate and compose them however you see fit. But I want to manage all the windows of that application and *only* the windows of that application. And, as far as I'm aware, there's no reliable way of figuring out the pid of the process that owns a given window. Does _NET_WM_PID work reliably enough to be useful? Writing a fusion plugin is a great idea, and I'll look into it, but I don't think it solves that problem. ~ v ___ xorg mailing list xorg@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/xorg
Re: [PATCH] Xext: un-export all XGE functions.
On Mon, Dec 08, 2008 at 09:20:57AM -0800, Alan Coopersmith wrote: Peter Hutterer wrote: These functions are only to be used by X server extensions, so let's not expose them to the world. What about extensions in loadable modules? good point. tbh the main reason for this patch is that I don't think the GE* functions are quite as flexible as I was hoping for when I wrote them months ago (especially regarding event masks). Hiding them from all but internal stuff makes it easier to alter or remove them later. Cheers, Peter ___ xorg mailing list xorg@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/xorg
RE: Get raw data of Xrender Picture structure
-Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Clemens Eisserer Sent: Monday, December 08, 2008 2:27 PM To: xorg list Subject: Re: Get raw data of Xrender Picture structure If its a pixmap, you can read it back using XGetImage or its SHM variation. However keep in mind this is slow and suboptimal. What's the fast and optimal way? Mike McDonald GDC4S/FCS/PVM/SDC ___ xorg mailing list xorg@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/xorg
Re: Get raw data of Xrender Picture structure
McDonald, Michael-p7438c wrote: -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Clemens Eisserer If its a pixmap, you can read it back using XGetImage or its SHM variation. However keep in mind this is slow and suboptimal. What's the fast and optimal way? Don't read it back. Do your image manipulation entirely on the server side. Peter Harris -- Hummingbird Connectivity - A Division of Open Text Peter Harrishttp://connectivity.hummingbird.com Research and DevelopmentPhone: +1 905 762 6001 [EMAIL PROTECTED]Toll Free: 1 877 359 4866 ___ xorg mailing list xorg@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/xorg
Re: [PATCH] Xext: un-export all XGE functions.
On Mon, Dec 08, 2008 at 07:09:13PM -0200, Paulo César Pereira de Andrade wrote: These functions are only to be used by X server extensions, so let's not expose them to the world. This will not work as expected if the X Server is compiled with hidden symbols. For the moment at least, it must be specified as both extern _X_EXPORT (what may be counter intuitive I agree). Can you please summarize what the purpose of _X_EXPORT, _X_HIDDEN and _X_INTERNAL is now, and how the are supposed to be used? I only skimmed your patches and that area was always a bit unclear to me anyway. Cheers, Peter ___ xorg mailing list xorg@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/xorg
[PATCHBOMB] randr 1.3: primary output infrastructure
Not compile-tested, merely syntactically plausible, just wanted to get this out for a second look. This implements the primary output requests in the DIX, and mangles the appropriate protocol requests to sort the primary output to the front. Patch #4 maps the primary output to the RANDR 1.0 first output, which is sort of vaguely defined but seems like the right thing to do. The xf86 DDX also has a compat output which is even more vaguely defined; I'm not yet sure what the correct thing to do with that is. Input appreciated. Updated protocol specs and client-side library are in git on the get-set-primary branches of the appropriate modules. - ajax From 0a40d1959735ee82cdee80ac937bb2c55385af32 Mon Sep 17 00:00:00 2001 From: Adam Jackson [EMAIL PROTECTED] Date: Mon, 8 Dec 2008 16:26:49 -0500 Subject: [PATCH] randr: Add [GS]etOutputPrimary --- randr/randrstr.h|8 randr/rrdispatch.c |2 + randr/rroutput.c| 107 ++- randr/rrsdispatch.c | 27 + 4 files changed, 143 insertions(+), 1 deletions(-) diff --git a/randr/randrstr.h b/randr/randrstr.h index 0cc4ff7..b868144 100644 --- a/randr/randrstr.h +++ b/randr/randrstr.h @@ -2,6 +2,7 @@ * Copyright © 2000 Compaq Computer Corporation * Copyright © 2002 Hewlett-Packard Company * Copyright © 2006 Intel Corporation + * Copyright © 2008 Red Hat, Inc. * * Permission to use, copy, modify, distribute, and sell this software and its * documentation for any purpose is hereby granted without fee, provided that @@ -272,6 +273,7 @@ typedef struct _rrScrPriv { int numOutputs; RROutputPtr *outputs; +RROutputPtr primaryOutput; int numCrtcs; RRCrtcPtr *crtcs; @@ -811,6 +813,12 @@ RROutputDestroy (RROutputPtr output); extern _X_EXPORT int ProcRRGetOutputInfo (ClientPtr client); +extern int +ProcRRSetOutputPrimary (ClientPtr client); + +extern int +ProcRRGetOutputPrimary (ClientPtr client); + /* * Initialize output type */ diff --git a/randr/rrdispatch.c b/randr/rrdispatch.c index 0cc0bca..5a2ea71 100644 --- a/randr/rrdispatch.c +++ b/randr/rrdispatch.c @@ -217,5 +217,7 @@ int (*ProcRandrVector[RRNumberRequests])(ClientPtr) = { ProcRRGetCrtcTransform, /* 27 */ ProcRRGetPanning, /* 28 */ ProcRRSetPanning, /* 29 */ +ProcRRSetOutputPrimary, /* 30 */ +ProcRRGetOutputPrimary, /* 31 */ }; diff --git a/randr/rroutput.c b/randr/rroutput.c index 1ecde31..5eedba3 100644 --- a/randr/rroutput.c +++ b/randr/rroutput.c @@ -1,5 +1,6 @@ /* * Copyright © 2006 Keith Packard + * Copyright © 2008 Red Hat, Inc. * * Permission to use, copy, modify, distribute, and sell this software and its * documentation for any purpose is hereby granted without fee, provided that @@ -426,7 +427,7 @@ RROutputInit (void) } #define OutputInfoExtra (SIZEOF(xRRGetOutputInfoReply) - 32) - + int ProcRRGetOutputInfo (ClientPtr client) { @@ -533,3 +534,107 @@ ProcRRGetOutputInfo (ClientPtr client) return client-noClientException; } + +void +RRSetPrimaryOutput(ScreenPtr pScreen, rrScrPrivPtr pScrPriv, + RROutputPtr output) +{ +if (pScrPriv-primaryOutput == output) + return; + +/* clear the old primary */ +if (pScrPriv-primaryOutput) { + RROutputChanged(pScrPriv-primaryOutput, 0); + pScrPriv-primaryOutput = NULL; +} + +/* set the new primary */ +if (output) { + pScrPriv-primaryOutput = output; + RROutputChanged(output, 0); +} + +rrScrPriv-layoutChanged = TRUE; + +RRTellChanged(pScreen); +} + +int +ProcRRSetOutputPrimary(ClientPtr client) +{ +REQUEST(xRRSetOutputPrimary); +RROutputPtr output = NULL; +WindowPtr pWin; + +REQUEST_SIZE_MATCH(xRRSetOutputPrimary); + +pWin = SecurityLookupIDByType(client, stuff-window, RT_WINDOW, + DixReadAccess); + +if (!pWin) { + client-errorValue = stuff-window; + return BadWindow; +} + +if (stuff-output) { + output = LookupOutput(client, stuff-output, DixReadAccess); + + if (!output) { + client-errorValue = stuff-output; + return RRErrorBase + BadRROutput; + } + + if (output-crtc) { + client-errorValue = stuff-output; + return BadMatch; + } + + if (output-pScreen != pWin-drawable.pScreen) { + client-errorValue = stuff-window; + return BadMatch; + } +} + +RRSetPrimaryOutput(pWin-drawable.pScreen, pScrPriv, output); + +return client-noClientException; +} + +int +ProcRRGetOutputPrimary(ClientPtr client) +{ +REQUEST(xRRGetOutputPrimaryReq); +WindowPtr pWin; +rrScrPrivPtr pScrPriv; +xRRGetOutputPrimary rep; +RROutputPtr primary = NULL; + +REQUEST_SIZE_MATCH(xRRGetOutputPrimary); + +pWin = SecurityLookupIDByType(client, stuff-window, RT_WINDOW, + DixReadAccess); + +if (!pWin) { + client-errorValue = stuff-window; + return BadWindow; +} + +pScrPriv = rrGetScrPriv(pWin-drawable.pScreen); +if (pScrPriv) + primary =
Re: GLX in Xephyr --or-- is there some other way to catch a desktop in a texture?
Ashi Krishnan wrote: On Mon, Dec 8, 2008 at 2:20 PM, Peter Harris [EMAIL PROTECTED] wrote: Ashi Krishnan wrote: This is fine if (1) the app creates only one window, and (2) is quite cooperative with respect to where it draws that window -- like, say, the xscreensaver hacks. Maybe I'm dense, but I'm not seeing how that's a problem. Since you're acting as the window manager (you are 'managing' that window), you can manage all the windows of the application. You can decorate and compose them however you see fit. But I want to manage all the windows of that application and *only* the windows of that application. I'm not sure that's possible without being part of a larger framework (such as compiz-fusion) that manages the other windows. To do window management effectively, you pretty much need to select SubstructureRedirect on the root. Once you've done that, you have to be the window manager for the whole screen. And, as far as I'm aware, there's no reliable way of figuring out the pid of the process that owns a given window. Does _NET_WM_PID work reliably enough to be useful? _NET_WM_PID can be spoofed just as easily as any other property. Better than that, X is network transparent. You can have 30 different applications all running with the same PID, even without any _NET_WM_PID spoofing. I'm inclined to look at WM_NAME and WM_CLASS (in addition to _NET_WM_PID). From there, you can look at TRANSIENT_FOR and/or client mask bits of the xid to associate windows with each other. Writing a fusion plugin is a great idea, and I'll look into it, but I don't think it solves that problem. I'm not sure if compiz-fusion plugins can apply to single applications or not. If not, I'm sure it would still be easier to modify compiz-fusion to allow plugins to do so than to start from scratch. Peter Harris -- Hummingbird Connectivity - A Division of Open Text Peter Harrishttp://connectivity.hummingbird.com Research and DevelopmentPhone: +1 905 762 6001 [EMAIL PROTECTED]Toll Free: 1 877 359 4866 ___ xorg mailing list xorg@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/xorg
Re: Trying to use Radeon driver on Apple eMac
On Mon, Dec 8, 2008 at 2:01 PM, Joseph Adams [EMAIL PROTECTED] wrote: I'm struggling to get the Radeon driver to work on my eMac G4's Radeon 7500 card (the fbdev driver works fine at 1024x768 with no acceleration). On both Fedora 8 and Fedora 10 with default xorg.conf, the screen is blank (the CRT doesn't glow or anything). I have a CRT monitor that supports up to 1280x960. The eMac also has a video out port. I suspect that video may show up on an external monitor, but I can't test that until my adapter arrives. Mac cards don't have a connector table and are always wired up strangely. We'll probably need to add a custom connector table for your card as it's currently falling back to the default which is probably wrong for your card. Can you send me the output of /proc/cpuinfo? Try the following option and let me know which combinations work: Option ConnectorTable i,1,0,1,j,2,0,1 where i and j are one of the following: 96, 100, 104, or 108 and i != j. i and j specify the gpio line used for ddc, so when you get the right combination, you should see the driver picking up an edid if your monitor supports it. If the built in monitor doesn't supply an edid, we'll have to add a quirk for that as well. Alex ___ xorg mailing list xorg@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/xorg
Re: Slow exaOffscreenAlloc ?
2008/12/9 Eric Anholt [EMAIL PROTECTED]: On Mon, 2008-12-08 at 12:32 +0100, Zdenek Kabelac wrote: Hi Recently I've noticed that scrolling in firefox is getting very very slow on some pages - especially those with some static background on the sides of pages. So I've started oprofile - and to my surprise the most of the time has been spent in two Xorg libexa functions: Of course I could be completely wrong in my interpretation of these oprofile results - from the fast look into the exa/exa_offscreen.c it seems like a major time is spent in some loop going through possible quite large list of offScreenAreas? I'm running the latest fedora rawhide xorg-x11-server-Xorg-1.5.3-5.fc10.x86_64 X.Org X Server 1.5.3 Release Date: 5 November 2008 and linus-git kernel tree 2.6.28-rc7 Any ideas, solution ? My suspicion is that firefox is chewing through a lot more temporary pixmaps than it used to. I was just doing some profiling with UXA for scrolling in the slashdot comments section, and while things seem to be better than described by people using EXA, I'm still seeing unimpressive performance and indications that ff is using a lot of pixmaps (working set exceeding my 180MB of aperture space). We've got a few ideas to improve things for UXA performance still, so it may get better. It's already a win over EXA, since EXA's stuck with only 50MB of aperture space. On the other hand I've still got rendering issues with UXA, so you've been warned before you go playing with it. Zdenek CPU: Core 2, speed 2200 MHz (estimated) Counted CPU_CLK_UNHALTED events (Clock cycles when not halted) with a unit mask of 0x00 (Unhalted core cycles) count 10 samples %image name app name symbol name --- 3576626.1526 libexa.soXorg exaOffscreenAlloc 35766100.000 libexa.so Xorg exaOffscreenAlloc [self] This says to me that you're stuck allocating/freeing offscreen memory space to handle a working set that exceeds the size of your EXA offscreen space. UXA makes the pixmap offscreen space be unified with 3D and every other GPU activity. So there is nothing which could improve the performace here - i.e. better allocation logic instead of scanning possible very long list of chunks to allocate/free pixmaps ? Should I open bugzilla for firefox - so they could play more nicely here? Zdenek ___ xorg mailing list xorg@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/xorg
Re: [suggestion] mailing list for newbies
Mikhail Gusarov wrote: Twas brillig at 15:50:35 08.12.2008 UTC+00 when [EMAIL PROTECTED] did gyre and gimble: CL Well certainly something (whether newbies or not) is preventing the CL 'devs' from seeing the wood through the trees. Lack of devs. Lack of dev time, as well. Out of {agd5f, airlied, glisse, nha, me, osiris, onestone}, only two are not students IIRC, and of all of us, only Alex is actually assigned to Radeon stuff. This is why we're behind the Intel drivers all the time. :C Well, okay. That, and I suck. But my point still stands. ~ C. ___ xorg mailing list xorg@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/xorg
sdksyms.sh addition break build on sparc
This change: commit b1dac41fb3853ca8182048ea57b88b6e84ecceb3 Author: Paulo Cesar Pereira de Andrade [EMAIL PROTECTED] Date: Sun Dec 7 02:22:19 2008 -0200 Use libtool convenience libraries and better symbol table. seems to break the build on sparc: sdksyms.c:1740: error: ‘sbus_devtable’ undeclared here (not in a function) The new awk code is not handling: extern _X_EXPORT struct sbus_devtable { int devId; int fbType; char *promName; char *driverName; char *descr; } sbusDeviceTable[]; properly, as it ends up fetching 'sbus_devtable' instead of 'sbusDeviceTable' ___ xorg mailing list xorg@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/xorg
Re: just how much autotools got faster, or: just forget about dolt
On Sun, Nov 23, 2008 at 6:51 AM, Ralf Wildenhues [EMAIL PROTECTED] wrote: For all dolt junkies, and whoever claims autotools and esp. libtool are performance hogs: yes, they are still not the fastest thing in the world. But we are getting better: As an example, I built the ompi/ subdirectory of OpenMPI on a two-way GNU/Linux system using bash, with 1) Autoconf 2.61, Automake 1.10.1, Libtool 1.5.26, 2) git master versions of same tools, doing a) a full 'make -j3', b) measuring just build system overhead, which in case of (2) is pretty well approximated with \time make -k -j3 LIBTOOLFLAGS=-n am__mv=: and in case of (1) involves placing a fake 'mv' program early in $PATH. Just for a data point, here is the same experiment on xserver git with git/old autotools and with/without dolt. This was basically single run of each test, so I'm sure there's tons of statistical error. I did do this while the box was otherwise idle, though. old autotools (full build): real2m59.809s user3m25.916s sys 1m52.775s old autotools + dolt (full build): real2m3.060s user2m50.078s sys 0m38.099s old autotools (dry run): real1m13.512s user0m46.539s sys 1m23.739s old autotools + dolt (dry run): real0m6.719s user0m8.574s sys 0m2.389s git autotools (full build): real1m58.631s user2m58.349s sys 0m30.855s git autotools + dolt (full build): real1m51.437s user2m48.725s sys 0m26.904s git autotools (dry run): real0m16.292s user0m21.050s sys 0m5.069s git autotools + dolt (dry run): real0m7.106s user0m8.859s sys 0m2.615s So, it seems that the autotools have improved dramatically. Well done. This is a Fedora 9 system, so old autotools is autoconf-2.61, automake-1.10.1 and libtool-1.5.24. I had to patch dolt a bit to get the dry run behavior. Basically, just prepend the actual command with : when -n was passed. -- Dan ___ xorg mailing list xorg@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/xorg
RE: Get raw data of Xrender Picture structure
-Original Message- From: Peter Harris [mailto:[EMAIL PROTECTED] Sent: Monday, December 08, 2008 3:47 PM To: McDonald, Michael-p7438c Cc: xorg list Subject: Re: Get raw data of Xrender Picture structure McDonald, Michael-p7438c wrote: -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Clemens Eisserer If its a pixmap, you can read it back using XGetImage or its SHM variation. However keep in mind this is slow and suboptimal. What's the fast and optimal way? Don't read it back. Do your image manipulation entirely on the server side. Works as long as there is only one server side. Otherwise, slow and suboptimal seems to be your only choice. Mike McDonald GDC4S/FCS/PVM/SDC ___ xorg mailing list xorg@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/xorg
Re: Get raw data of Xrender Picture structure
McDonald, Michael-p7438c wrote: From: Peter Harris [mailto:[EMAIL PROTECTED] Don't read it back. Do your image manipulation entirely on the server side. Works as long as there is only one server side. Otherwise, slow and suboptimal seems to be your only choice. Fan out is another possibility. Chromium does this for OpenGL; I'm sure you could do something similar in the 2D space if you needed it. It does have the potential to use more resources on each server. In return you avoid GetImage, which is very slow. Peter Harris -- Hummingbird Connectivity - A Division of Open Text Peter Harrishttp://connectivity.hummingbird.com Research and DevelopmentPhone: +1 905 762 6001 [EMAIL PROTECTED]Toll Free: 1 877 359 4866 ___ xorg mailing list xorg@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/xorg
Re: [PATCH] Xext: un-export all XGE functions.
Peter Hutterer wrote: On Mon, Dec 08, 2008 at 07:09:13PM -0200, Paulo César Pereira de Andrade wrote: These functions are only to be used by X server extensions, so let's not expose them to the world. This will not work as expected if the X Server is compiled with hidden symbols. For the moment at least, it must be specified as both extern _X_EXPORT (what may be counter intuitive I agree). If the X Server is compiled with hidden symbols, and those symbols are accessed by non builtin modules, they must be exported. Can you please summarize what the purpose of _X_EXPORT, _X_HIDDEN and _X_INTERNAL is now, and how the are supposed to be used? I think I did not express myself correctly. The usage has not changed. But to make things more manageable I am trying to keep the _X_EXPORT set on the header files. This mainly because there are several symbols that are expanded from macros, and are not easy to find or figure out what name they will have... _X_INTERNAL must be used with care, as described in the gcc info, symbols with this attribute cannot be accessed indirectly (using pointers) by other shared objects. _X_EXPORT is still used in sources for symbols accessed via LoaderSymbol, like the nameModuleData structures, and a few other cases where the function for sure should not be declared in the sdk. There are two kinds of symbols that must be made available by the X Server. That are the symbols that must be made available to video and input modules, and symbols that should be accessed only by modules built in the X Server tree. The procedure should be the same in the header file, just that the header would not be installed in the sdk. I will try to do as small as possible reorganization on the sdk headers, and add private and not installed headers. Drivers should not have access to functions to manage clients, call the *Init functions, and the like. But it may cause some regressions... (before pushing I would ensure everything builds and works for me, and test with a few different setups). I only skimmed your patches and that area was always a bit unclear to me anyway. Cheers, Peter Paulo ___ xorg mailing list xorg@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/xorg
RE: Get raw data of Xrender Picture structure
-Original Message- From: Peter Harris [mailto:[EMAIL PROTECTED] Sent: Monday, December 08, 2008 5:37 PM To: McDonald, Michael-p7438c Cc: xorg list Subject: Re: Get raw data of Xrender Picture structure Fan out is another possibility. Chromium does this for OpenGL; I'm sure you could do something similar in the 2D space if you needed it. It does have the potential to use more resources on each server. In return you avoid GetImage, which is very slow. I'm trying to do just the opposite: take the output of two or more displays and combine them on a Xserver. Mike McDonald GDC4S/FCS/PVM/SDC ___ xorg mailing list xorg@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/xorg
Re: [PATCH] Xext: un-export all XGE functions.
Hi, On Mon, Dec 08, 2008 at 10:44:52PM -0200, Paulo César Pereira de Andrade wrote: I will try to do as small as possible reorganization on the sdk headers, and add private and not installed headers. Please run these past the list first. Cheers, Daniel signature.asc Description: Digital signature ___ xorg mailing list xorg@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/xorg
[RFC] Xorg symbols that should not be public
Hi, In my Linux x86 computer, using only git master, and with X Server configured with --prefix=/usr --disable-builtin-fonts --enable-dri2 --enable-dri --enable-xephyr With all buildable modules also installed, attached is the list of symbols that are not used by any module. There are 2 main kinds of symbols that should be public: o Symbols accessed by input/video modules o Symbols accessed by extensions or other kind of modules And of course, there is a large amount of symbols in the list that should not be exported. And some should have a stub when some feature is disabled. I think some private headers, for things like libextmod, libxaa, libfb, etc, should be created, still with symbols exported at first, to guarantee binary compatibility. But some symbols that are currently exported should be made private, and not advertised in the sdk, as they are only used in the X Server binary. Paulo F AbortDDX F acceleratePointerLightweight F acceleratePointerPredictable F AccelerationDefaultCleanup F AccessUsingXdmcp F AccessXCancelRepeatKey F AccessXComputeCurveFactor F AccessXFilterPressEvent F AccessXFilterReleaseEvent F AccessXInit F ActivateDevice F ActivateKeyboardGrab F ActivatePointerGrab F AddAuthorization F AddExtensionClient F AddGeneralSocket F AddGlyph F AddHost F AddInputDevice F AddLocalHosts F AddOtherInputDevices F AddPassiveGrabToList F AddScreen F AddTraps F AllModifierKeysAreUp F AllocARGBCursor F AllocateGlyph F AllocateGlyphHash F AllocateGlyphSet F AllocateMotionHistory F AllocColor F AllocColorCells F AllocColorPlanes F AllocGlyphCursor F AllocMasterDevice F AllowSome F AlterSaveSetForClient F AnimCurInit F AnimCursorCreate F AssignTypeAndName F AtomError F AttachDevice F AuditF F AugmentSelf F AuthorizationFromID F AuthorizationIDOfClient F AutoResetServer F BadDeviceMap F BlockHandler F BTramdacRestore F BTramdacSave F BTramdacSetBpp F CallCallbacks F ChangeAccessControl F ChangeDeviceControl F ChangeKeyMapping F ChangePicture F ChangeWindowDeviceCursor F CheckAuthorization F CheckConnections F CheckCursorConfinement F CheckDeviceGrabAndHintWindow F CheckDeviceGrabs F CheckMotion F CheckUserAuthorization F CheckUserParameters F CirculateWindow F client_auth_generation F ClientAuthorized F ClientIsAsleep F ClientSignal F ClientSleep F ClientWakeup F CloseDownClient F CloseDownConnection F CloseDownDevices F CloseDownEvents F CloseDownExtensions F CloseFont F CloseInputDevice F CloseWellKnownConnections F CompareISOLatin1Lowered F CompositeGlyphs F CompositeRects F CompositeTrapezoids F CompositeTriangles F CompositeTriFan F CompositeTriStrip F config_fini F config_init F ConfigureWindow F ConfineToShape F CopyColormapAndFree F CopyISOLatin1Lowered F CopySwap16Write F CopySwap32Write F CoreProcessKeyboardEvent F CoreProcessPointerEvent F CreateBoundingShape F CreateClassesChangedEvent F CreateClipShape F CreateColormap F CreateConicalGradientPicture F CreateDefaultStipple F CreateGCperDepth F CreateGrab F CreateLinearGradientPicture F CreateNewResourceClass F CreateRadialGradientPicture F CreateRootCursor F CreateRootWindow F CreateScratchPixmapsForScreen F CreateSolidPicture F CreateWellKnownSockets F CursorMetricsFromGlyph F DamageDrawInternal F DamageRegionRendered F DamageSetPostRenderingFunctions F DamageSubtract F ddxGiveUp F ddxProcessArgument F DDXRingBell F ddxUseMsg F DeactivateKeyboardGrab F DeactivatePointerGrab F DeepCopyDeviceClasses F DefineInitialRootWindow F DefineSelf F DeleteAllWindowProperties F DeleteCallbackList F DeleteClientFontStuff F DeleteClientFromAnySelections F DeleteFontClientID F DeleteGlyph F DeleteInputDeviceRequest F DeletePassiveGrab F DeletePassiveGrabFromList F DeleteProperty F DeleteWindow F DeleteWindowFromAnyEvents F DeleteWindowFromAnyExtEvents F DeleteWindowFromAnySaveSet F DeleteWindowFromAnySelections F DeliverDeviceEvents F DeliverEvents F DeliverEventsToWindow F DeliverFocusedEvent F DeliverGrabbedEvent F DestroySubwindows F DevHasCursor F DeviceEventSuppressForWindow F DeviceFocusEvent F DeviceIsPointerType F DGAIsDgaEvent F DGAReInitModes F DGAShutdown F DGAStealButtonEvent F DGAStealKeyEvent F DGAStealMotionEvent F DGAVTSwitch F DisableLocalHost F DisableMapUnmapEvents F dixChangeWindowProperty F dixDestroyPixmap F dixLookupClient F dixLookupDevice F dixLookupPrivateAddr F dixLookupPrivateOffset F dixLookupProperty F dixLookupSelection F dixRegisterPrivateDeleteFunc F dixRegisterPrivateInitFunc F dixResetPrivates F dixResetRegistry F DoConfigure F DoFocusEvents F doImageText F doListFontsWithInfo F doPolyText F DoShowOptions F DPMSGet F DPMSSupported F EnableDevice F EnableDisableExtension F EnableDisableExtensionError F EnableLocalHost F EnableMapUnmapEvents F EnqueueEvent F EstablishNewConnections F EventMaskForClient F EventSelectForWindow F EventSuppressForWindow F ExtGrabDevice F FakeAllocColor F FakeFreeColor F Fclose F FindColor F FindGlyph F FindGlyphByHash F FindGlyphHashSet F FindGlyphRef F find_old_font F
Re: MPX window managers?
On Mon, Dec 8, 2008 at 4:58 AM, Colin Guthrie [EMAIL PROTECTED] wrote: 'Twas brillig, and Chris Ball at 07/12/08 18:18 did gyre and gimble: Hi Peter, mpwm is dead, and it's for the better. compiz has recently been picked up and improved: Thanks for the reply. This is disappointing; the compiz work is an unreviewed patchset against unspecified versions of compiz and Xorg, with Xorg patches that the author doesn't plan on submitting upstream. I'd speak to Sam directly about that. I'm not sure it's that he doesn't want to submit them upstream, it's just that they are perhaps not appropriate for upstream in their current form. Well, yes. They are quite buggy at the moment. A lot of the plugins have memory management issues, but I have tried my best to fix them all up. The only ones that have real problems are group and thumbnail, but that is because they are quite complex. The real problem is the transition to MPX in compiz. At the moment, not very many people's X Servers support XI2 (Only if you compile from source). I guess I could fix up the buildsystem to do really accurate detection as to whether both XI2 and Input-Redirection are supported, perhaps after I finish a few other things. As far as I know, the patches won't apply at the moment, however it is the first thing on my todo list to get them to work again once I get home. I doubt it's his long term goal to maintain separate patches into the future. Ideally, I'd like to see them merged in, it just sounds like a lot of work at the moment considering all the other big patches flying around at the moment too (animation reworking, elements, proposed compiz rewrite to c++, NOMAD etc). I've leared a few git tricks (like branching and rebasing on a commit hook) in order to help me maintain more accurate patches. Would love to keep in touch with Peter about this, Regards, Sam. Col -- Colin Guthrie gmane(at)colin.guthr.ie http://colin.guthr.ie/ Day Job: Tribalogic Limited [http://www.tribalogic.net/] Open Source: Mandriva Linux Contributor [http://www.mandriva.com/] PulseAudio Hacker [http://www.pulseaudio.org/] Trac Hacker [http://trac.edgewall.org/] ___ xorg mailing list xorg@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/xorg -- Sam Spilsbury ___ xorg mailing list xorg@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/xorg
Re: [RFC] Xorg symbols that should not be public
On Tue, Dec 09, 2008 at 12:36:01AM -0200, Paulo C?sar Pereira de Andrade wrote: Hi, In my Linux x86 computer, using only git master, and with X Server configured with --prefix=/usr --disable-builtin-fonts --enable-dri2 --enable-dri --enable-xephyr With all buildable modules also installed, attached is the list of symbols that are not used by any module. There are 2 main kinds of symbols that should be public: o Symbols accessed by input/video modules o Symbols accessed by extensions or other kind of modules And of course, there is a large amount of symbols in the list that should not be exported. And some should have a stub when some feature is disabled. I think some private headers, for things like libextmod, libxaa, libfb, etc, should be created, still with symbols exported at first, to guarantee binary compatibility. But some symbols that are currently exported should be made private, and not advertised in the sdk, as they are only used in the X Server binary. Hi Paulo, Of these, we need the following: LoaderGetABIVersion LoaderShouldIgnoreABI miCreateAlphaPicture noRenderExtension PictureMatchVisual xf86AddGeneralHandler xf86DeregisterStateChangeNotificationCallback xf86DisableGeneralHandler xf86EnableGeneralHandler xf86RemoveGeneralHandler XineramaVisualsEqualPtr Thanks, -- Aaron ___ xorg mailing list xorg@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/xorg
Re: Get raw data of Xrender Picture structure
Thanks for all your answers. I appreciate. Unfortunately, so far, I didn't get anything working: - I was thinking of gdk_pixbuf_xlib_get_from_drawable but same story: If the specified drawable is a window, then it must be viewable, i.e. all of its ancestors up to the root window must be mapped. - I tried XGetImage: XImage * x; x = XGetImage(GDK_DISPLAY(), netk_window_get_xid(window), 0, 0, width, height, AllPlanes, ZPixmap); pixbuf = gdk_pixbuf_new_from_data(x-data, GDK_COLORSPACE_RGB, False, 8, width, height, x-bytes_per_line, NULL, NULL); but I receive an xserver error The error was 'BadMatch (invalid parameter attributes)'. when the window is partially hidden or minimized. Note that it's working when the window is fully visible. - So, at this point, I consider more patching/hacking the window/compositing manager xfwm4 to add a screenshot when the window is about to be umapped. Patching something like no more unmap seems overkill for what I want to achieve. Let me know if you have any other comment or idea, Grégoire On Mon, 2008-12-08 at 12:17 -0500, Gregoire Gentil wrote: Hello, I would like to get the raw data of the Picture structure in Xrender. Basically, I would like to import into a GdkPixbuf, a picture returned by XRenderCreatePicture. There doesn't seem to be any data export function in Xrender. Any pointer how I could achieve this? Grégoire PS: What do I need to do that? Because I want to preview in a gtk+ application the content of a window that is minimized (like Compiz or Vista can do). gdk_pixbuf_get_from_drawable returns garbage with a minimized windows and I think that xrender will return at least the outdated content of the window. My windows and compositing manager is xfwm4 which doesn't support this feature. I'm then trying to shortcut xfwm4 and get what I want directly from Xrender. ___ xorg mailing list xorg@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/xorg
Re: [RFC] Xorg symbols that should not be public
Aaron Plattner wrote: I think some private headers, for things like libextmod, libxaa, libfb, etc, should be created, still with symbols exported at first, to guarantee binary compatibility. But some symbols that are currently exported should be made private, and not advertised in the sdk, as they are only used in the X Server binary. Hi Paulo, Hi Aaron, Can you test with a install of the current X Server git master, and check what symbols are missing if any? Just use the script attached. I remember last year/start of this year, when I check, the nvidia driver required miInitializeCompositeWrapper (don't remember if any other symbols). Currently that function is not in the sdk, and the apparently only user, libxaa has it as a hidden symbol, what probably is wrong. libwfb may also need some update, wfbrename.h maybe should not be installed, but I don't remember if the nvidia driver used it. xf86Rename.h probably should not be in the sdk, but bundled with the drivers that provide fallbacks for older servers. Of these, we need the following: LoaderGetABIVersion LoaderShouldIgnoreABI miCreateAlphaPicture noRenderExtension PictureMatchVisual xf86AddGeneralHandler xf86DeregisterStateChangeNotificationCallback xf86DisableGeneralHandler xf86EnableGeneralHandler xf86RemoveGeneralHandler XineramaVisualsEqualPtr I think all of these should always be available. And if one compiles with --disable-xinerama, the xinerama function should not be called. Paulo xorg-symbols.pl Description: Perl program ___ xorg mailing list xorg@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/xorg
Fatal server error: could not open default font 'fixed'
Hi Folks... I´ve been searching along the mailling lists a solution for this damn error... The server is the full 7.4 release of Xorg, compiled under a LFS/VMware. I tried to use mkfontdir and mkfontscale under .../fonts/misc but it still making a '0' file content =/ And also, symlinking with another fonts dir, from my old Xorg (7.3), but it still not working... The console blanks for a while like it being work, but them crashes... Follows the screen. [EMAIL PROTECTED]:~# Xorg _XSERVTransSocketOpenCOTSServer: Unable to open socket for inet6 _XSERVTransOpen: transport open failed for inet6/lfs:0 _XSERVTransMakeAllCOTSServerListeners: failed to open listener for inet6 X.Org X Server 1.5.1 Release Date: 23 September 2008 X Protocol Version 11, Revision 0 Build Operating System: Linux 2.6.27.7 i686 Current Operating System: Linux lfs 2.6.27.7 #2 Thu Nov 27 01:52:18 BRT 2008 i686 Build Date: 09 December 2008 01:14:42AM Before reporting problems, check http://wiki.x.org to make sure that you have the latest version. Module Loader present Markers: (--) probed, (**) from config file, (==) default setting, (++) from command line, (!!) notice, (II) informational, (WW) warning, (EE) error, (NI) not implemented, (??) unknown. (==) Log file: /var/log/Xorg.0.log, Time: Tue Dec 9 02:11:25 2008 (==) Using config file: /etc/X11/xorg.conf Fatal server error: could not open default font 'fixed' [EMAIL PROTECTED]:~# -- Marcos S Cunha Ciência da Computação, Universidade Salvador Programador e Webdesigner - Freelancer MSN e Talk: [EMAIL PROTECTED] Cel.: +55 71 8135 8340 Hackerism exploits everything. Linux User # 434123 ___ xorg mailing list xorg@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/xorg
Re: GLX in Xephyr --or-- is there some other way to catch a desktop in a texture?
Ashi Krishnan wrote: This is fine if (1) the app creates only one window, and (2) is quite cooperative with respect to where it draws that window -- like, say, the xscreensaver hacks. Maybe I'm dense, but I'm not seeing how that's a problem. Since you're acting as the window manager (you are 'managing' that window), you can manage all the windows of the application. You can decorate and compose them however you see fit. But I want to manage all the windows of that application and *only* the windows of that application. And, as far as I'm aware, there's no reliable way of figuring out the pid of the process that owns a given window. Does _NET_WM_PID work reliably enough to be useful? If you don't actually need to know the PID, but just want to be able to distinguish one client from another, you can identify the client from the Window's XID, e.g. using XResQueryClients(). -- Glynn Clements [EMAIL PROTECTED] ___ xorg mailing list xorg@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/xorg
KeyCode is Zero. Problem with irxevent and Xorg
Hello. I cannot get working irxevent. ( http://www.lirc.org/html/irxevent.html ) The problem is that keycode is zero in debug log of irxevent My machine with linux (geexbox distr with X.Org 7.4) without keyboard, I manage it by remote control. Just for check I attached keyboard to machine, and discovered one strange thing, after pressing any key on keyboard , irxevent work fine and KeyCode value is not zero: for example , I just booting geexbox, ( Xorg and other necessary application startup automatic ) and not use keyboard else, irxevent debug log: Received code: c0c4 00 3 /tmp/jvc1 Sending event: name: feh found it by wname 0x341 keyname: N WindowID: 0x341 Key N feh Unmodified String: N, KeySym: 78 KeyCode: 0 state 0x0, keycode 0x0 After pressing any key on keyboard , irxevent work without problem : Received code: c0c4 00 3 /tmp/jvc1 Sending event: name: feh found it by wname 0x341 keyname: N WindowID: 0x341 Key N feh Unmodified String: N, KeySym: 78 KeyCode: 57 state 0x0, keycode 0x39 I don't understand, what happening when I press key on keyboard. I checked all log files, but there is not anything, that help me solved this problem. Irxevent's mouse button emulation work without problem. Sorry for bad english please. ___ xorg mailing list xorg@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/xorg
Re[2]: Signal 11 in xorg server
On Wed, 3 Dec Pat wrote: Backtrace: 0: /usr/bin/X(xf86SigHandler+0x7a) [0x80c8836] 1: [0xe400] 2: /usr/bin/X(Dispatch+0x33d) [0x808a67a] 3: /usr/bin/X(main+0x46f) [0x80719b5] 4: /lib/libc.so.6(__libc_start_main+0xe0) [0xb7c1f630] 5: /usr/bin/X [0x8070dd1] Can you run the X server under a debugger (gdb) or attach to the running X process before the error occurs, that will get u a much better stack traceback. Pat --- I've repeated the error under gdb. Results follows: Program received signal SIGSEGV, Segmentation fault. [Switching to Thread 0xb7b906c0 (LWP 3974)] 0x081476aa in PanoramiXGetGeometry () (gdb) bt #0 0x081476aa in PanoramiXGetGeometry () #1 0x0808a67a in Dispatch () #2 0x080719b5 in main () I'm going to rebuild xserver with debug switched on. And probably repeat the error with -core flag for xserver. ___ xorg mailing list xorg@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/xorg
Re: sdksyms.sh addition break build on sparc
From: Paulo César Pereira de Andrade [EMAIL PROTECTED] Date: Mon, 8 Dec 2008 22:17:27 -0200 (BRST) Thanks. I know about that special definition, but my mind did some trick on me when I wrote the awk code :-) Should be correct now. Yep, seems to work now, thanks. ___ xorg mailing list xorg@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/xorg