From owner-freebsd-ppc@FreeBSD.ORG Mon Sep 8 07:29:12 2014 Return-Path: Delivered-To: freebsd-ppc@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 8E2E075D for ; Mon, 8 Sep 2014 07:29:12 +0000 (UTC) Received: from asp.reflexion.net (outbound-240.asp.reflexion.net [69.84.129.240]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 15C851141 for ; Mon, 8 Sep 2014 07:29:11 +0000 (UTC) Received: (qmail 20250 invoked from network); 8 Sep 2014 07:29:10 -0000 Received: from unknown (HELO mail-cs-03.app.dca.reflexion.local) (10.81.19.3) by 0 (rfx-qmail) with SMTP; 8 Sep 2014 07:29:10 -0000 Received: by mail-cs-03.app.dca.reflexion.local (Reflexion email security v7.30.7) with SMTP; Mon, 08 Sep 2014 03:29:10 -0400 (EDT) Received: (qmail 10494 invoked from network); 8 Sep 2014 07:29:09 -0000 Received: from unknown (HELO iron2.pdx.net) (69.64.224.71) by 0 (rfx-qmail) with (DHE-RSA-AES256-SHA encrypted) SMTP; 8 Sep 2014 07:29:09 -0000 X-No-Relay: not in my network X-No-Relay: not in my network X-No-Relay: not in my network Received: from [192.168.1.8] (c-98-246-178-138.hsd1.or.comcast.net [98.246.178.138]) by iron2.pdx.net (Postfix) with ESMTPSA id 481581C402B; Mon, 8 Sep 2014 00:29:08 -0700 (PDT) Mime-Version: 1.0 (Mac OS X Mail 7.3 \(1878.6\)) Subject: Justin Hibbits' changes avoid Xorg/xfce4 failing/quiting on Dual Processor G4 PowerMac's From: Mark Millard In-Reply-To: <20140906180532.35faf018@zhabar.attlocal.net> Date: Mon, 8 Sep 2014 00:29:07 -0700 Message-Id: References: <4D86DDCB-FF04-4EA2-9703-8B74BBF31C7E@dsl-only.net> <540386C6.4060004@freebsd.org> <7AFF7E0F-6BB0-4972-A629-61910CE001C2@dsl-only.net> <540393F3.5060508@freebsd.org> <2B74B670-7463-47D1-B0AF-BDBFEE8823A4@dsl-only.net> <1B729E38-6495-4240-B9E2-A48238E4E830@dsl-only.net> <38A1300F-E5A4-4A71-A9CF-A7BED66E0BDF@dsl-only.net> <5408976A.5080106@freebsd.org> <6DE6C98D-F553-4F59-A72A-AEA881DC1C65@dsl-only.net> <3D7C705D-5792-43FA-835C-9FD88AEAE07E@dsl-only.net> <35DA591A-127B-4F46-B779-D76A0F71DA39@dsl-only.net> <20140906172136.59a531d0@zhabar.attlocal.net> <3B34604D-2EDB-4315-97E9-4C97652E9AE7@dsl-only.net> <20140906180532.35faf018@zhabar.attlocal.net> To: Justin Hibbits X-Mailer: Apple Mail (2.1878.6) Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable X-Content-Filtered-By: Mailman/MimeDel 2.1.18-1 Cc: freebsd-ppc@freebsd.org X-BeenThere: freebsd-ppc@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: Porting FreeBSD to the PowerPC List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 08 Sep 2014 07:29:12 -0000 I built a 10.1-PRERELEASE r271215 that contains Justin Hibbits recent = changes for powerpc and powerpc64. (I also used portsnap and then = rebuilt my ports from scratch.) r271215 includes the change that Justin = expected would fix Xorg UI hangs (really Xorg silently quitting) when = xfce4 starts up. Based on FreeBSD FBSDG4S0 10.1-PRERELEASE FreeBSD 10.1-PRERELEASE #0 r271215: Sat = Sep 6 23:56:15 PDT 2014 root@FBSDG4S0:/usr/obj/usr/src/sys/GENERIC = powerpc Xorg with xfce4 no longer hangs/quits on my Dual Processor PowerMac = G4's. I can still use the G5's. Thanks Justin! (I still have more = PowerMac/Card combinations to check.) Side note for NVIDIA GeForce4 Ti 4600's: The experiment has also shown that there is a separate problem for at = least the NVIDIA GeForce4 Ti 4600 when used at 1680x1050 (at least on an = ADC display from a G4 PowerMac): What should be the last 8 pixels or so = on the right are instead near the left hand side of the display, about 8 = pixels from the left side in fact. (This had been observed before the = fix after a ports update but with the hang/quit status I did not want to = assume much about the incomplete display updates at the time.) In total all the pixels are probably there. There is just a band of = pixels that is way out of place. (So all the pixels after them are then = shifted from where they should be by the width of that band.) Also the about 8 pixel wide bind appears to be shifted down one pixel = from what would be expected. (Easily visible at the edge of the menu bar = across the top.) At 1400x1050 there are no such problem bands. Nor probably at 1280x1024. = (But 1280x1024 is not a nice display in many other ways. I did not look = carefully at 1280x1024.) The Xorg.0.log's do show an alternate Modeline for 1680x1050: [ 73.585] (**) NV(0): *Driver mode "1680x1050": 117.1 MHz, 63.7 kHz, = 59.9 Hz [ 73.585] (II) NV(0): Modeline "1680x1050"x59.9 117.13 1680 1744 = 1776 1840 1050 1053 1056 1062 +hsync +vsync (63.7 kHz ezP) [ 73.585] (**) NV(0): *Driver mode "1680x1050": 119.0 MHz, 64.7 kHz, = 59.9 Hz [ 73.585] (II) NV(0): Modeline "1680x1050"x59.9 119.00 1680 1728 = 1760 1840 1050 1053 1059 1080 +hsync -vsync (64.7 kHz ez) [ 73.585] (**) NV(0): *Default mode "1400x1050": 122.0 MHz, 64.9 kHz, = 60.0 Hz [ 73.585] (II) NV(0): Modeline "1400x1050"x60.0 122.00 1400 1488 = 1640 1880 1050 1052 1064 1082 +hsync +vsync (64.9 kHz zd) [ 73.585] (**) NV(0): *Default mode "1280x1024": 108.0 MHz, 64.0 kHz, = 60.0 Hz [ 73.585] (II) NV(0): Modeline "1280x1024"x60.0 108.00 1280 1328 = 1440 1688 1024 1025 1028 1066 +hsync +vsync (64.0 kHz zd) The Radeon's do not show this display problem at all. (The alternate = pixel counts are not allowed for the Radeon's: just 1680x1050.) =3D=3D=3D Mark Millard markmi@dsl-only.net On Sep 6, 2014, at 6:05 PM, Justin Hibbits wrote: r261095 is only part of it. The part that fixes powerpc32 is the MFC of r263464, "Mask out SRR1 bits that aren't exported in the MSR". What happens is that sometimes an extra exception bit is stashed away in the mcontext, I believe it's the "external interrupt" bit getting set if memory serves me right. I'm not sure why it gets set and stashed in there, but r263464 masks that out, so X will work again (at least it does for me). - Justin On Sat, 6 Sep 2014 18:00:56 -0700 Mark Millard wrote: > If I grab sources from svn it will be the first time that I've done > so. I'd probably make a separate SSD and leave my "as distributed" > powerpc/GENERIC SSD alone (it has other uses). Overall it will be > some time before I've a rebuilt context if I try it. (It is probably > a good thing for me to do at this stage.) >=20 >=20 > The svn-src-stable-10/2014-September signal handling commit comments > that I noticed from you this month are for >=20 > "Fix 32-bit signal handling on ppc64." (r261095) >=20 > and for >=20 > "Set the si_code appropriately for exception-caused > signals" (powerpc/aim/trap.c) (MFC r269701) >=20 > ppc64 (G5) is working and ppc32 (G4) is not working as far as the > processor context goes for what I'me been reporting on. Although it > is the powerpc/GENERIC build used for both contexts, not a > powerpc64/GENERIC64 build for the G5's. (All 10.1-PRERELEASE r270981 > now.) >=20 > So I'm guessing that you are expecting the si_code update to be what > fixes things. If so then more than just LLDB would care about the > ucode=3D??? assignments that were added. >=20 >=20 >=20 > =3D=3D=3D > Mark Millard > markmi at dsl-only.net >=20 > On Sep 6, 2014, at 5:21 PM, Justin Hibbits > wrote: >=20 > On Sat, 6 Sep 2014 17:05:45 -0700 > Mark Millard wrote: >=20 >> I finally asked myself "how many gdb's does FreeBSD have?". This >> lead me to building and using devel/gdb (/usr/local/bin/gdb). >> Experiments indicates /usr/local/bin/gdb works on Xorg on the G4's. >> (Xorg's build installs gcc47 and apparently needs a newer gdb to go >> with it.) >>=20 >> Thus I managed to get a little more information: /usr/local/bin/gdb >> reports for Xorg the likes of: >>=20 >> [Inferior 1 (process 1934) exited with code 026] >=20 > This is the smoking gun. Exit code 026 =3D=3D 22 (decimal), which = just so > happens to be EINVAL, returned by sigreturn(). I finished committing > all my merges to stable/10, so you could try building an updated > kernel, and see that it fixes it. >=20 > - Justin >=20