Date: Sun, 25 Nov 2007 14:08:01 +0300 From: "Vladimir Timofeev" <vovkasm@gmail.com> To: "Lionel Flandrin" <simias.n@gmail.com> Cc: freebsd-current@freebsd.org Subject: Re: X crash with radeon driver - AGP broken? Message-ID: <c26b523e0711250308l4ead492p572c5e6413532a1e@mail.gmail.com> In-Reply-To: <86oddi3h0o.fsf@simias.hd.free.fr> References: <86lk9fetff.fsf@simias.hd.free.fr> <20071103160137.GA1182@hurx.thc> <86oddi3h0o.fsf@simias.hd.free.fr>
index | next in thread | previous in thread | raw e-mail
[-- Attachment #1 --] Hi, if u have nforce2 chipset on motheboard side, try this patch... with this I can run X, but not test more... How to patch: cd /usr/src patch < latest-agp_nvidia.c.diff my conf: Abit NF7 motheboard, Radeon 9200 video, fbsd 7.0-BETA3, X Server 1.4.0 (from /var/log/Xorg.0.log) On Nov 25, 2007 10:45 AM, Lionel Flandrin <simias.n@gmail.com> wrote: > Christian Jachmann <Jachmann@unitix.org> writes: > > > Sat, Nov 03, 2007 at 07:26:12AM +0100, Simias : > >> > >> Hi > >> > >> Since I csup'd 7.0-BETA1, my computer reboots when I startx with the > >> (open source) radeon driver -- I also tried with a fresh -CURRENT with the > >> same result. > >> > >> My radeon is a 9600 Pro. > >> > >> Any clue ? > > > > Same here: > > jachmann@hurx:~>Xorg -version > > > > X.Org X Server 1.4.0 > > Release Date: 5 September 2007 > > X Protocol Version 11, Revision 0 > > Build Operating System: FreeBSD 7.0-BETA2 i386 > > Current Operating System: FreeBSD hurx.thc 7.0-BETA2 FreeBSD 7.0-BETA2 #0: Fri N > > ov 2 21:15:25 CET 2007 root@hurx.thc:/usr/obj/usr/src/sys/GENERIC i386 > > Build Date: 02 November 2007 10:02:24PM > > > > crashes. > > > > I still have the same problem after several Xorg and freeBSD update, > it's becomming really annoying. I forgot to post the kgdb trace: > > ,---- > | (kgdb) where > | #0 doadump () at pcpu.h:195 > | #1 0xc056c934 in boot (howto=260) at /usr/src/sys/kern/kern_shutdown.c:409 > | #2 0xc056cb34 in panic (fmt=Variable "fmt" is not available. > | ) at /usr/src/sys/kern/kern_shutdown.c:563 > | #3 0xc0741918 in vm_fault (map=0xc1054000, vaddr=3825565696, fault_type=1 '\001', fault_flags=0) at /usr/src/sys/vm/vm_fault.c:275 > | #4 0xc079bcfa in trap_pfault (frame=0xe6592a64, usermode=0, eva=3825565696) at /usr/src/sys/i386/i386/trap.c:774 > | #5 0xc079c6c2 in trap (frame=0xe6592a64) at /usr/src/sys/i386/i386/trap.c:463 > | #6 0xc07862db in calltrap () at /usr/src/sys/i386/i386/exception.s:139 > | #7 0xc07aee97 in agp_nvidia_flush_tlb (dev=0xc3bade00, offset=-1011656432) at /usr/src/sys/pci/agp_nvidia.c:377 > | #8 0xc06eec9f in agp_generic_bind_memory (dev=0xc3bade00, mem=0xc41287c0, offset=0) at agp_if.h:76 > | #9 0xc06ee0f1 in agp_bind_memory (dev=0xc3bade00, handle=0xc41287c0, offset=0) at agp_if.h:128 > | #10 0xc4260b7f in ?? () > | #11 0xc3bade00 in ?? () > | #12 0xc41287c0 in ?? () > | #13 0x00000000 in ?? () > | #14 0x0000014a in ?? () > | #15 0xc3c8acd8 in ?? () > | #16 0xc3c8ac00 in ?? () > | #17 0xc3c8acd8 in ?? () > | #18 0x00000000 in ?? () > | #19 0xe6592b6c in ?? () > | #20 0xc4260c61 in ?? () > | #21 0xc3c8ac00 in ?? () > | #22 0xe6592b5c in ?? () > | #23 0xc4269b5d in ?? () > | #24 0x0000015b in ?? () > | #25 0xc41287c0 in ?? () > | #26 0x00000000 in ?? () > | #27 0xc426b1b0 in ?? () > | #28 0xc4260c10 in ?? () > | #29 0xe6592bc4 in ?? () > | #30 0xc4265cd4 in ?? () > | #31 0xc4118e00 in ?? () > | #32 0x80086436 in ?? () > | #33 0xc3e2d7e0 in ?? () > | #34 0x00000043 in ?? () > | #35 0xc3f0a000 in ?? () > | #36 0x00000444 in ?? () > | #37 0xe6592bc4 in ?? () > | #38 0x00000000 in ?? () > | #39 0xc3c8acd8 in ?? () > | #40 0xc3f0a000 in ?? () > | #41 0x00000043 in ?? () > | #42 0xc3e2d7e0 in ?? () > | #43 0x80086436 in ?? () > | #44 0xc4118e00 in ?? () > | #45 0x00000444 in ?? () > | #46 0x00000036 in ?? () > | #47 0x00000000 in ?? () > | #48 0xc4118e00 in ?? () > | #49 0x80086436 in ?? () > | #50 0xc40f11b0 in ?? () > | #51 0xe6592be4 in ?? () > | #52 0xc053aeea in giant_ioctl (dev=0x0, cmd=3864603484, data=0xc4269b5d "/usr/src/sys/modules/drm/drm/../../../dev/drm/drm_agpsupport.c", > | fflag=347, td=0xc41287c0) at /usr/src/sys/kern/kern_conf.c:349 > | Previous frame inner to this frame (corrupt stack?) > `---- > > on FreeBSD simias.hd.free.fr 7.0-BETA3 FreeBSD 7.0-BETA3 #0: Fri Nov 16 > 05:00:51 CET 2007 > root@simias.hd.free.fr:/usr/obj/usr/src/sys/HOMEBOX_ATHLON i386 > > Thanks in advance, > -- > Lionel > > _______________________________________________ > freebsd-current@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-current > To unsubscribe, send any mail to "freebsd-current-unsubscribe@freebsd.org" > [-- Attachment #2 --] --- sys/pci/agp_nvidia.c 2007-11-08 23:29:53.000000000 +0300 +++ sys/pci/agp_nvidia.c 2007-11-25 13:27:03.000000000 +0300 @@ -25,7 +25,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/pci/agp_nvidia.c,v 1.11.2.1 2007/11/08 20:29:53 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/pci/agp_nvidia.c,v 1.12 2007/10/30 22:09:16 jhb Exp $"); /* * Written using information gleaned from the @@ -346,7 +346,7 @@ { struct agp_nvidia_softc *sc; u_int32_t wbc_reg, temp; - volatile u_int32_t *ag_virtual; + u_int32_t off, step; int i; sc = (struct agp_nvidia_softc *)device_get_softc(dev); @@ -370,13 +370,12 @@ "TLB flush took more than 3 seconds.\n"); } - ag_virtual = (volatile u_int32_t *)sc->gatt->ag_virtual; - /* Flush TLB entries. */ - for(i = 0; i < 32 + 1; i++) - temp = ag_virtual[i * PAGE_SIZE / sizeof(u_int32_t)]; - for(i = 0; i < 32 + 1; i++) - temp = ag_virtual[i * PAGE_SIZE / sizeof(u_int32_t)]; + step = PAGE_SIZE / sizeof(u_int32_t); + for(off = 0; off < sc->gatt->ag_entries; off+=step) + temp = sc->gatt->ag_virtual[off]; + for(off = 0; off < sc->gatt->ag_entries; off+=step) + temp = sc->gatt->ag_virtual[off]; return (0); }help
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?c26b523e0711250308l4ead492p572c5e6413532a1e>
