View Single Post
Old 01-01-10, 01:06 PM   #1
Registered User
Join Date: Dec 2009
Location: Germany
Posts: 7
Default FreeBSD 8.0 amd64 with 8GB RAM (deadlock)


I played a bit with the 64bit driver under FreeBD-8.0 (RELENG_8).
RELEASE works perfect, after updating to RELENG_8 I get a hang, which
means, i can't start xorg with nvidia driver. Hang means that machine
stops responding completely, not reacting to keyboard input or network

I have added all kernel debug stuff to my kernel [1] in hope to get
any more information. As that didn't really help I then downgraded
day by day to find out which src/sys commit breaks it seems I found

I wrote a mail to Konstantin (kib@) and explained him my problem,
he told me that he need more infomation.
And he also said that he thinks that this commit is not related to
this problem but he liked to know more about this problem.

We attempted to debug the hung machine using kgdb over firewire. We
were able to successfully attach over firewire with kgdb before
starting X, but firewire host lost connection to the target upon start
of the X. It looks like whole machine become dead.

Upon detailed reading of the dmesg, the nvidia card appeared to share
the interrupt with on-board network controller. Disabling the
controller from the BIOS temporary (until next reboot) enabled the X
to start. Unfortunately, after the reboot, one of the USB controllers
was assigned IRQ18, used by the nvidia card, attempt to start X killed
the machine. We disabled USB in BIOS, and again, were able to start X
once until the reboot.

We were unable to found the way to force card to use MSI to confirm
the natural theory of interrupt sharing causing the hang.

Another test was to disable smp support. i've set kern.smp.disabled=1
in loader.conf nvidia started here and works fine.

About my Hardware:
I've a Asus M4A78T-E with 8 GB ram, the onboard gfx card
is disabled via BIOS.
Nvidia card is a: GeForce 7300 GS

# Debugging for use in -current
options KDB # Enable kernel debugger support.
options DDB # Support DDB.
options GDB # Support remote GDB.
options INVARIANTS # Enable calls of extra sanity checking
options INVARIANT_SUPPORT # Extra sanity checks of internal structures, required by INVARIANTS
options WITNESS # Enable checks to detect deadlocks and cycles
options WITNESS_SKIPSPIN # Don't run witness on spinlocks for speed
#options MP_WATCHDOG
options KSTACK_PAGES=7

here my dmesg where nvidia failed: [2]

here my dmesg where nvidia works:

pciconf -lv

nvidia debug script where nvidia was working:

I found an other people with the same mainboard also 8 GB ram, but a different
gfx card (GeForce 8400 GS), for him works RELENG_8/HEAD fine.

Any Ideas?
miwi is offline   Reply With Quote