To all
Had this same problem with the 7300GS on Suse 10.1-10.3 but found this solution at NV using the text of the following file. When you run the first run file with the --apply-patch qualilfier it creates a patched "custom" that can now be run normally. What I think the patch might be doing is shutting off agp in order to run the newer style of card PCI Express. (guessing)
Note: I did have to change the names to match the downloaded run file from Nvidia. Since running this patch I haven't had a lockup other than with k3b and its 'second burn lockup'. Any glx app like GoogleEarth or Blender froze the system for sure before the patch. Now I am really enjoying these apps. Hope this helps you others with the problem.
I did try the patch on the latest 100.14.19 without success. Seems that even though the author is at Nvidia the patch is not standard to the driver.
In the middle of a piece of music the old driver (100.14.11) Started a 1 second loop of the song and if I tried to use the keyboard to rescue myself out of X I couldn't even use the 5sec holddown of the off button to turn off and restart the system. I had to go to the back of the machine and toggle the machine off and back on which is the same as pulling the plug out of the wall. Really locked to be sure. ZANDER is the contact person at NVIDIA.
If the patch process works, let others know, If it doesn't also let us know though it does work for me.
To apply the patch, use:
# sh /path/to/NVIDIA-Linux-x86-100.14.11-pkg2.run --apply-patch /path/to/NVIDIA_kernel-100.14.11-336672.diff.txt
# sh NVIDIA-Linux-x86-100.14.11-pkg0-custom.run
---------------------------------------------------------------------------snip------------------------------------------------------
diff -ru usr/src/nv/nv-linux.h usr/src/nv.336672/nv-linux.h
--- usr/src/nv/nv-linux.h 2007-06-13 18:59:58.000000000 -0700
+++ usr/src/nv.336672/nv-linux.h 2007-07-27 19:04:39.174241056 -0700
@@ -1075,6 +1075,7 @@
To all
Had this same problem with the 7300GS on Suse 10.1-10.3 but found this solution at NV using the text of the following file. When you run the first run file with the --apply-patch qualilfier it creates a patched "custom" that can now be run normally. What I think the patch might be doing is shutting off agp in order to run the newer style of card PCI Express. (guessing)
Check out this thread about halfway down. www.nvnews. net/vbulletin/ showthread. php?t=87918& page=7& highlight= freezes
http://
Note: I did have to change the names to match the downloaded run file from Nvidia. Since running this patch I haven't had a lockup other than with k3b and its 'second burn lockup'. Any glx app like GoogleEarth or Blender froze the system for sure before the patch. Now I am really enjoying these apps. Hope this helps you others with the problem.
I did try the patch on the latest 100.14.19 without success. Seems that even though the author is at Nvidia the patch is not standard to the driver.
In the middle of a piece of music the old driver (100.14.11) Started a 1 second loop of the song and if I tried to use the keyboard to rescue myself out of X I couldn't even use the 5sec holddown of the off button to turn off and restart the system. I had to go to the back of the machine and toggle the machine off and back on which is the same as pulling the plug out of the wall. Really locked to be sure. ZANDER is the contact person at NVIDIA.
If the patch process works, let others know, If it doesn't also let us know though it does work for me. NVIDIA- Linux-x86- 100.14. 11-pkg2. run --apply-patch /path/to/ NVIDIA_ kernel- 100.14. 11-336672. diff.txt Linux-x86- 100.14. 11-pkg0- custom. run ------- ------- ------- ------- ------- ------- ------- ------- ------- -----snip- ------- ------- ------- ------- ------- ------- ------- ---- nv/nv-linux. h usr/src/ nv.336672/ nv-linux. h nv/nv-linux. h 2007-06-13 18:59:58.000000000 -0700 nv.336672/ nv-linux. h 2007-07-27 19:04:39.174241056 -0700
To apply the patch, use:
# sh /path/to/
# sh NVIDIA-
-------
diff -ru usr/src/
--- usr/src/
+++ usr/src/
@@ -1075,6 +1075,7 @@
nv_stack_t *timer_sp;
nv_stack_t *isr_sp;
+ nv_stack_t *pci_cfgchk_sp;
nv_stack_t *isr_bh_sp;
/* keep track of any pending bottom halfes */ USE_BAR0_ CFG) \
rm_ check_pci_ config_ space(sp, nv, do_the_bars, NULL); \ pci_config( nv, do_the_bars); \ pci_config_ space(nv, do_the_bars); \
@@ -1172,7 +1173,7 @@
if (nv->flags & NV_FLAG_
else \
- nv_verify_
+ nv_check_
}
/* nv.336672/ nv.c nv.336672/ nv.c 2007-07-27 19:04:39.178241284 -0700
diff -ru usr/src/nv/nv.c usr/src/
--- usr/src/nv/nv.c 2007-06-13 18:59:58.000000000 -0700
+++ usr/src/
@@ -215,7 +215,7 @@
}
-void NV_API_CALL nv_verify_ pci_config( nv_state_ t *nv, BOOL do_the_bars) pci_config_ space(nv_ state_t *nv, BOOL do_the_bars) linux_state_ t *nvl = NV_GET_ NVL_FROM_ NV_STATE( nv);
verify_ pci_bars( nv, nvl->dev);
+static void nv_check_
{
nv_
unsigned short cmd, flag = 0;
@@ -246,6 +246,14 @@
}
+void NV_API_CALL nv_verify_ pci_config( nv_state_ t *nv, BOOL do_the_bars) NVL_FROM_ NV_STATE( nv); PCI_CONFIG_ SPACE(sp, nv, do_the_bars);
+{
+ nv_linux_state_t *nvl = NV_GET_
+ nv_stack_t *sp = nvl->pci_cfgchk_sp;
+
+ NV_CHECK_
+}
+
/***
*** STATIC functions, only in this file
***/
@@ -1959,6 +1967,14 @@
goto failed;
}
+ NV_KMEM_ CACHE_ALLOC_ STACK(nvl- >pci_cfgchk_ sp); NV_DBG_ ERRORS, "NVRM: failed to allocate stack!\n");
NV_KMEM_ CACHE_ALLOC_ STACK(nvl- >isr_bh_ sp);
nvl- >isr_bh_ sp = NULL;
+ if (nvl->pci_cfgchk_sp == NULL)
+ {
+ rc = -ENOMEM;
+ nv_printf(
+ goto failed;
+ }
+
if (nvl->isr_bh_sp == NULL)
{
@@ -2045,6 +2061,12 @@
}
+ if (nvl->pci_cfgchk_sp != NULL) CACHE_FREE_ STACK(nvl- >pci_cfgchk_ sp);
NV_ KMEM_CACHE_ FREE_STACK( nvl->isr_ sp);
+ {
+ NV_KMEM_
+ nvl->pci_cfgchk_sp = NULL;
+ }
+
if (nvl->isr_sp != NULL)
{
@@ -2126,6 +2148,7 @@
+ NV_KMEM_
/*