[PC-BSD Testing] Testing Digest, Vol 37, Issue 32

Ian Robinson fitchkendall at gmail.com
Fri Feb 19 11:00:33 PST 2010


>
> Re:  Follow-up on screen corruption with PCBSD 8.0-RC2-x86 & Nvidia Legacy
> Driver 96.43.13.
>
> Ian Robinson's original post said:
>
> >> -RC2 x64 with Nvidia 192.22 is behaving very nicely for me, but -RC2 and
> >> legacy drivers caused grief when I did a fresh install of -RC2-x86 on an
> >> older computer.  The older computer uses an Nvidia GeoForce 4 card (a Ti
> >> 4200) and the legacy driver installed is 96.43.13 . . . .
> >> The 96.43.xx driver worked well under PCBSD 7.1.1.  Under PCBSD
> >>8.0-Alpha,
> >> it worked but not without some screen corruption such as random

>>speckled
> >> dots across the display and an occasional but not major horizontal line
> >>or
> >> two distorting the text or graphic which would go away if you scrolled
> >>the
> >> item beneath them up or down off the screen and brought it back.  I have
> >>not
> >> tested this computer with 8.0-BETA or 8.0-RC.  The behavior in -RC2 is
> >>worse
> >> that the Alpha series. . . .
> >> After the passage of some minutes, the screen corrupts badly with thick
> >> black horizontal bands across the display.  Ultimately, the system will
> >> freeze.
> >>
> >> I wonder if that is part of the problem?  We all know that FreeBSD is at
> >> RELEASE stage.  Given that Nvidia 96.43.16 is newer than 96.43.13, are
> >>they
> >> both living in a FreeBSD 7.x world rather than FreeBSD 8.0?  That would
> >> explain why the drivers worked great with FreeBSD 7.x and did not work
> >>with
> >> FreeBSD 8.0.  There could be other reasons, though.  Is PCBSD 8.0-RC2
> >> breaking something because of its recent upgrade to xorg-server 1.6.1?
>
> Kris Moore said:
>
> >Ian,
> >
> >Since the driver actually installs and starts to work at first, I'm
> >guessing its a compat issue with the FreeBSD 8.0 base, or the new
> >xorg-server 1.6.5. If you want, you can grab a copy of 8.0-RC, which has
> >the older Xorg-server, that way we can narrow it down to the system
> itself.
>
> ================= Robinson Follow-up #1 =================
>
> I grabbed PCBSD 8.0-RC-x86, put the nVidia card back in and installed the
> -RC with a fresh install using the nVidia 96.43.13.
>
> I have had no problems, so it may well be that the new xorg-server 1.6.5 is
> involved to some degree in causing conflict with 96.43.13.
>
> Ian Robinson
> Salem,  Ohio
>
> > ================= Moore Follow-up=================
> >
> >
> Do you know how to update the freebsd driver? After you are installed,
> do a "portsnap fetch extract update" to grab the latest ports tree,
> download the freebsd 8.0-source then do this:
>
> # cd /usr/ports/x11/nvidia-driver-96/
> # make
> # make deinstall
> # make install
>
> Then reboot, does the 96.43.16 work better?
>
--
> Kris Moore
> PC-BSD Software
> http://www.pcbsd.com
>
> =========== Robinson Update #2 ===============

Kris --

First, I followed your recommendation (update ports, update source, make the
port) but the attempt to update to the 96.43.16 driver failed.  I will give
you the specifics further below.

Second, I also tried an install of -RC2 on another computer with a newer
nVidia card (FX 5500) which takes the 173.14.xx driver.  The xorg
installation failed with the 173.14.xx driver included in -RC2.  I have to
use VESA.  Therefore, I followed the same instruction to update (update
ports, update source, make the port).  It failed for the same reason.

Third make command did not finish.  This is particular version is for the
173.14.25 driver, but the exact same error message occurred with the
96.43.16 driver on the other computer.  The error codes immediately before
halting were:

nvidia_dev.c:144: error: conflicting types for 'nvidia_dev_mmap'
nvidia_dev.c:20: error: previous declaration of 'nvidia_dev_mmap' was here
*** Error code 1

Here is a transcript of the terminal session:

root at pcbsd-7626# portsnap fetch update
Looking up portsnap.FreeBSD.org mirrors... 3 mirrors found.
Fetching snapshot tag from portsnap1.FreeBSD.org... done.
Fetching snapshot metadata... done.
Updating from Fri Feb 19 07:47:21 EST 2010 to Fri Feb 19 09:20:22 EST 2010.
Fetching 4 metadata patches... done.
Applying metadata patches... done.
Fetching 0 metadata files... done.
Fetching 1 patches. done.


< NOTE:  successful finish of portsnap fetch update and the cd to
/usr/ports/x11/nvidia-driver-173 were covered up by the following Options
window>



┌──────────────────────────────────────
│               Options for nvidia-driver 173.14.25
│ ┌─────────────────────────────────────
│  [ ] FREEBSD_AGP  Use FreeBSD AGP GART driver
│  [ ] ACPI_PM      Enable support for ACPI Power Management
│  [X] LINUX        Build with support for Linux compatibility
│  ──────────────────────────────────────
│                       [  OK  ]       Cancel
└──────────────────────────────────────


===>  Vulnerability check disabled, database not found
===>  Found saved configuration for nvidia-driver-173.14.25
=> NVIDIA-FreeBSD-x86-173.14.25.tar.gz doesn't seem to exist in
/usr/port/distfiles/.

=> Attempting to fetch from http://jp.download.nvidia.com/freebsd/173.14.25/.

NVIDIA-FreeBSD-x86-173.14.25.tar.gz           100% of   15 MB  584 kBps
00m00s
===>  Extracting for
nvidia-driver-173.14.25
=> MD5 Checksum OK for
NVIDIA-FreeBSD-x86-173.14.25.tar.gz.
=> SHA256 Checksum OK for
NVIDIA-FreeBSD-x86-173.14.25.tar.gz.
tar: Failed to set default
locale
===>  Patching for
nvidia-driver-173.14.25
===>  Applying FreeBSD patches for nvidia-driver-173.14.25
===>   nvidia-driver-173.14.25 depends on shared library: m.3 - found
===>   nvidia-driver-173.14.25 depends on shared library: GL.1 - found
===>  Configuring for nvidia-driver-173.14.25
===>  Building for nvidia-driver-173.14.25
===> src (all)
@ -> /usr/src/sys
machine -> /usr/src/sys/i386/include
awk -f @/tools/makeobjops.awk @/kern/device_if.m -h
awk -f @/tools/makeobjops.awk @/kern/bus_if.m -h
awk -f @/tools/makeobjops.awk @/dev/pci/pci_if.m -h
awk -f @/tools/vnode_if.awk @/kern/vnode_if.src -p
awk -f @/tools/vnode_if.awk @/kern/vnode_if.src -q
awk -f @/tools/vnode_if.awk @/kern/vnode_if.src -h
cc -O2 -pipe -fno-strict-aliasing -DNV_VERSION_STRING=\"173.14.25\"
-D__KERNEL__ -DNVRM -UDEBUG -U_DEBUG -DNDEBUG -O -Werror -D_KERNEL
-DKLD_MODULE -nostdinc  -I/src -I. -I@ -I@/contrib/altq -finline-limit=8000
--param inline-unit-growth=100 --param large-function-growth=1000
-fno-common  -mno-align-long-strings -mpreferred-stack-boundary=2  -mno-mmx
-mno-3dnow -mno-sse -mno-sse2 -mno-sse3 -ffreestanding -fstack-protector
-std=iso9899:1999 -fstack-protector -Wall -Wredundant-decls -Wnested-externs
-Wstrict-prototypes  -Wmissing-prototypes -Wpointer-arith -Winline
-Wcast-qual  -Wundef -Wno-pointer-sign -fformat-extensions -c nvidia_ctl.c
cc -O2 -pipe -fno-strict-aliasing -DNV_VERSION_STRING=\"173.14.25\"
-D__KERNEL__ -DNVRM -UDEBUG -U_DEBUG -DNDEBUG -O -Werror -D_KERNEL
-DKLD_MODULE -nostdinc  -I/src -I. -I@ -I@/contrib/altq -finline-limit=8000
--param inline-unit-growth=100 --param large-function-growth=1000
-fno-common  -mno-align-long-strings -mpreferred-stack-boundary=2  -mno-mmx
-mno-3dnow -mno-sse -mno-sse2 -mno-sse3 -ffreestanding -fstack-protector
-std=iso9899:1999 -fstack-protector -Wall -Wredundant-decls -Wnested-externs
-Wstrict-prototypes  -Wmissing-prototypes -Wpointer-arith -Winline
-Wcast-qual  -Wundef -Wno-pointer-sign -fformat-extensions -c nvidia_dev.c
nvidia_dev.c:144: error: conflicting types for 'nvidia_dev_mmap'
nvidia_dev.c:20: error: previous declaration of 'nvidia_dev_mmap' was here
*** Error code 1

Stop in
/usr/ports/x11/nvidia-driver-173/work/NVIDIA-FreeBSD-x86-173.14.25/src.
*** Error code 1

Stop in /usr/ports/x11/nvidia-driver-173/work/NVIDIA-FreeBSD-x86-173.14.25.
*** Error code 1

Stop in /usr/ports/x11/nvidia-driver-173.
*** Error code 1

Stop in /usr/ports/x11/nvidia-driver-173.
root at pcbsd-7626#

Fourth, I was prematurely enthusiastic about the success of the nVidia
legacy drivers under -BETA.  After further use, I find that after long
periods of hibernation (such as 5 hours or overnight), the screen will
corrupt to the point where nothing can be discerned.

Current Conclusion -- Except for the nVidia 195.22 driver series (which in
my experience work very well in the x64 versions), nVidia drivers for the
older cards are not working with PCBSD-RC or -RC2.  And therefore, the
breakage may have no connection to the change to Xorg Server to 1.6.5.
Moreover, this is not a PCBSD problem, since PCBSD -RC2 works fine with
older cards from other manufacturers that I have tried.

I do not want to give up on the nVidia cards because I like them best and
because nVidia regularly supports BSD.  I will review the nVidia forums to
see if I can find any reporting on the older drivers not working under
FreeBSD 8.0.  I am sure that others must be having this problem just as
earlier reports on the x64 version of 192.22 populated the nVidia forum.

Finally, I want to thank you Kris for your kindness and patience to
everyone.   This is reflected in your replies to everyone, and you are
generous to provide step by step instructions to everyone.  It is
interesting and informative to see seasoned FreeBSD programmers like you
(and Dru Lavigne in her books too) take it slow and use the 'make,' then
'make deinstall' series to protect the existing driver from premature
elimination until you are certain you have a good package to work with.

PCBSD 8.0 will be a great release and should make a great mark in the
desktop world.

Ian Robinson
Salem, Ohio
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.pcbsd.org/pipermail/testing/attachments/20100219/7d574aa9/attachment-0001.html 


More information about the Testing mailing list