NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

re: xsrc/48344: X server crashes with "lockup" on certain i810e-based systems



The following reply was made to PR xsrc/48344; it has been noted by GNATS.

From: "John D. Baker" <jdbaker%mylinuxisp.com@localhost>
To: gnats-bugs%NetBSD.org@localhost
Cc: 
Subject: re: xsrc/48344: X server crashes with "lockup" on certain i810e-based
 systems
Date: Thu, 24 Jul 2014 07:21:53 -0500 (CDT)

 On Tue, 22 Jul 2014, John D. Baker wrote:
 
 > The following patch lets the X server from "netbsd-6" run on Dell
 > Optiplex GX-110 machines.  (Also xf86-video-intel from modular/pkgsrc
 > Xorg unless it's been updated to the version that requires KMS.)
 
 My previous patch was missing a couple of elements, noted by riastradh@
 and included in "pullup-6 #1105".  The updated patch is below.
 
 The X server in modular/pkgsrc Xorg from pkgsrc-2014Q2 works very well
 with the patched kernel driver.
 
 +Index: sys/dev/pci/agp_i810.c
 +===================================================================
 +RCS file: /cvsroot/src/sys/dev/pci/agp_i810.c,v
 +retrieving revision 1.73
 +diff -u -p -r1.73 agp_i810.c
 +--- sys/dev/pci/agp_i810.c    4 Apr 2011 20:37:56 -0000       1.73
 ++++ sys/dev/pci/agp_i810.c    24 Jul 2014 00:37:31 -0000
 +@@ -1028,7 +1028,8 @@ agp_i810_bind_memory(struct agp_softc *s
 +              return EINVAL;
 + 
 +      for (i = 0; i < mem->am_size; i += AGP_PAGE_SIZE)
 +-             agp_i810_write_gtt_entry(isc, i, i | 3);
 ++             agp_i810_write_gtt_entry(isc, offset + i, i | 3);
 ++     mem->am_offset = offset;
 +      mem->am_is_bound = 1;
 +      return 0;
 + }
 +@@ -1057,7 +1058,8 @@ agp_i810_unbind_memory(struct agp_softc 
 +              return EINVAL;
 + 
 +      for (i = 0; i < mem->am_size; i += AGP_PAGE_SIZE)
 +-             agp_i810_write_gtt_entry(isc, i, 0);
 ++             agp_i810_write_gtt_entry(isc, mem->am_offset + i, 0);
 ++     mem->am_offset = 0;
 +      mem->am_is_bound = 0;
 +      return 0;
 + }
 
 
 > NetBSD-current (soon to be NetBSD-7) DRMKMS support on this and similar
 > systems is a subject of ongoing investigation.
 
 An i386 DRMKMS kernel built from sources as of about 201407232030Z
 running on a Dell Optiplex GX-110 produces a plain VGA text-mode console
 and the KMS xf86-video-intel driver for the X server works very well.
 
 The only quirk observed with -current DRMKMS and X is that regions with
 alternating/stippled foreground/background (like XConsole, XTerm scroll
 bars, or TWM inactive-window title bar/frames) are rendered as solid
 black.
 
 Likewise, setting the root window to a modulated pattern such as the
 default fvwm2 root-window pattern:
 
   xsetroot -mod 2 2 -fg rgb:55/40/55 -bg rgb:70/50/70
 
 produces a black display instead.
 
 (But the last few paragraphs are OT for this PR.)
 
 -- 
 |/"\ John D. Baker, KN5UKS               NetBSD     Darwin/MacOS X
 |\ / jdbaker[snail]mylinuxisp[flyspeck]com    OpenBSD            FreeBSD
 | X  No HTML/proprietary data in email.   BSD just sits there and works!
 |/ \ GPGkeyID:  D703 4A7E 479F 63F8 D3F4  BD99 9572 8F23 E4AD 1645
 


Home | Main Index | Thread Index | Old Index