Skip to contentSkip to conversation

fix drm ioctl ABI default

PATCH In review Christoph Hellwig 4 participants 8 messages Sep 27, 2002 – Sep 29, 2002 Char and misc drivers

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 fix drm ioctl ABI default

Add a config option to make the i810 drm ioctl ABI XFree4.1 compatible by default (currently that's a module parameter). The XFree folks fucked this up by adding members in the middle of a struct and we have to work around it now. At least we should have the pre-2.4.20 behaviour as default. (And I'd suggest you add that option as y to the defconfig)

drivers/char/drm/Config.in +1 -0
@@ -10,6 +10,7 @@ tristate '  3dfx Banshee/Voodoo3+' CONFI
 tristate '  ATI Rage 128' CONFIG_DRM_R128
 dep_tristate '  ATI Radeon' CONFIG_DRM_RADEON $CONFIG_AGP
 dep_tristate '  Intel I810' CONFIG_DRM_I810 $CONFIG_AGP
+dep_mbool    '    Enabled XFree 4.1 ioctl interface by default' CONFIG_DRM_I810_XFREE_41 $CONFIG_DRM_I810
 dep_tristate '  Intel 830M' CONFIG_DRM_I830 $CONFIG_AGP
 dep_tristate '  Matrox g200/g400' CONFIG_DRM_MGA $CONFIG_AGP
 dep_tristate '  SiS' CONFIG_DRM_SIS $CONFIG_AGP
drivers/char/drm/i810_dma.c +5 -1
@@ -30,6 +30,7 @@
  *
  */
 
+#include <linux/config.h>
 #include "i810.h"
 #include "drmP.h"
 #include "i810_drv.h"
@@ -466,8 +467,11 @@ static int i810_dma_initialize(drm_devic
    	return 0;
 }
 
-
+#ifdef CONFIG_DRM_I810_XFREE_41
+int xfreeversion = 41;
+#else
 int xfreeversion = -1;
+#endif
 
 MODULE_PARM(xfreeversion, "i");
 MODULE_PARM_DESC(xfreeversion, "The version of XFree86 that needs to be supported");
#1 lore raw
Quoted 5 lines · Christoph Hellwig

Add a config option to make the i810 drm ioctl ABI XFree4.1 compatible by default (currently that's a module parameter). The XFree folks fucked this up by adding members in the middle of a struct and we have to work around it now. At least we should have the pre-2.4.20 behaviour as default. (And I'd suggest you add that option as y to the defconfig)

With all the vendors now shipping 4.2 this seems a bad thing to default to the 4,1 interface - especially as the 4.1 server is

o Buggy
o Has security holes that are fixed in 4.2.1 only

Alan

#2 lore raw
Quoted 5 lines · Alan Cox

With all the vendors now shipping 4.2 this seems a bad thing to default to the 4,1 interface - especially as the 4.1 server is

o Buggy
o Has security holes that are fixed in 4.2.1 only

I don't think that's the proper argument. 2.4.20 silently breaking systems that worked fine with 2.4.19 is not the way new linux releases work. Vendors can of course feel free to have the new ABI by default.

#3 lore raw
Quoted 3 lines · Christoph Hellwig

I don't think that's the proper argument. 2.4.20 silently breaking systems that worked fine with 2.4.19 is not the way new linux releases work. Vendors can of course feel free to have the new ABI by default.

Linus did the same during earlier 2.4 when we went from 4.0 to 4.1 DRM. There is a clear precedent for it from the boss 8)

In the general case it will autodetect the problem. There are some additional bitds (see the dri-devel archive) to investigate that may make it even more reliable

#4 lore raw
In reply to Alan Cox
Quoted 9 lines · Alan Cox
Quoted 5 lines · Christoph Hellwig

Add a config option to make the i810 drm ioctl ABI XFree4.1 compatible by default (currently that's a module parameter). The XFree folks fucked this up by adding members in the middle of a struct and we have to work around it now. At least we should have the pre-2.4.20 behaviour as default. (And I'd suggest you add that option as y to the defconfig)

With all the vendors now shipping 4.2 this seems a bad thing to default to the 4,1 interface - especially as the 4.1 server is

No, not all vendors are shipping 4.2 yet.

Quoted 2 lines

o Buggy
o Has security holes that are fixed in 4.2.1 only

...or patched onto 4.1.x from 4.2 source.

4.1 is still out in the wild for most ppl.

Signature · 4 lines
Debian     - http://www.debian.org/
Linux 1394 - http://www.linux1394.org/
Subversion - http://subversion.tigris.org/
Deqo       - http://www.deqo.com/
#5 lore raw
Quoted 3 lines · Ben Collins
Quoted 1 line

o Has security holes that are fixed in 4.2.1 only

...or patched onto 4.1.x from 4.2 source.

I'd hope from 4.2.1 source plus the later errata fix but yes this is a good point. Its not an assumption we can reasonably make

I think Cristoph wins

#6 lore raw
In reply to Alan Cox
Quoted 3 lines · Alan Cox

With all the vendors now shipping 4.2 this seems a bad thing to default to the 4,1 interface - especially as the 4.1 server is
...

Debian 3.0 ships with 4.1 and my personal estimation is that the next release of Debian will be in 2004 (I'm happy if it will be earlier...).

Quoted 1 line

o Has security holes that are fixed in 4.2.1 only

The Debian maintainer of XFree86 claims that at least the Xlib problem doesn't affect 4.1 [1].

Quoted 1 line

Alan

cu
Adrian

[1] http://people.debian.org/~branden/

Signature · 3 lines
You only think this is a free country. Like the US the UK spends a lot of
time explaining its a free country because its a police state.
								Alan Cox
#7 lore raw
Quoted 4 lines · Adrian Bunk
Quoted 1 line

o Has security holes that are fixed in 4.2.1 only

The Debian maintainer of XFree86 claims that at least the Xlib problem doesn't affect 4.1 [1].

Thats the trivial one. The Shm stuff fixed going 4.2 to 4.2.1 is the bad stuff, but I sure Brandon will have ported that over too

We'll all need 4.3 for newer boxes though - stuff like PCI domains and the newer intel chipsets (eg 845G onboard video) simply dont backport 8(