Package: nvidia-kernel-source
Version: 190.53-1
Severity: important
Tags: patch
After upgrade to kernel 2.6.32 I was never able to get into X session. I tried
many kernel switches and Xorg changes but screen just freeze after
logging into GDM.
I have two GPUs, three output devices with twinview and xinerama setting.
Today I found solution to this problem on nvnews.net forum, tried it and it
works like a charm.
Include this small patch, please, so it can help users with multiple gpus.
http://www.nvnews.net/vbulletin/showthread.php?t=142656
-- System Information:
Debian Release: squeeze/sid
APT prefers unstable
APT policy: (500, 'unstable')
Architecture: amd64 (x86_64)
Kernel: Linux 2.6.32-trunk-amd64 (SMP w/2 CPU cores)
Locale: LANG=cs_CZ.UTF-8, LC_CTYPE=cs_CZ.UTF-8 (charmap=UTF-8) (ignored: LC_ALL
set to cs_CZ.UTF-8)
Shell: /bin/sh linked to /bin/bash
Versions of packages nvidia-kernel-source depends on:
ii debhelper 7.4.11 helper programs for debian/rules
ii dpatch 2.0.31 patch maintenance system for Debia
ii make 3.81-7 An utility for Directing compilati
ii sed 4.2.1-6 The GNU sed stream editor
Versions of packages nvidia-kernel-source recommends:
ii devscripts 2.10.61 scripts to make the life of a Debi
ii kernel-package 12.032 A utility for building Linux kerne
ii module-assistant 0.11.2 tool to make module package creati
ii nvidia-glx 190.53-1 NVIDIA binary Xorg driver
nvidia-kernel-source suggests no packages.
-- no debconf information
*** nv-linux.h.orig 2009-11-22 19:27:38.000000000 -0800
--- nv-linux.h 2009-12-16 11:02:22.000000000 -0800
***************
*** 83,102 ****
--- 83,105 ----
#if !defined(KERNEL_2_4)
#include <linux/sched.h> /* suser(), capable() replacement */
#include <linux/moduleparam.h> /* module_param() */
#include <linux/smp_lock.h> /* kernel_locked */
#include <asm/tlbflush.h> /* flush_tlb(), flush_tlb_all() */
#include <asm/kmap_types.h> /* page table entry lookup */
#endif
#include <linux/pci.h> /* pci_find_class, etc */
+ #if defined(CONFIG_VGA_ARB)
+ #include <linux/vgaarb.h> /* vga_set_legacy_decoding */
+ #endif
#include <linux/interrupt.h> /* tasklets, interrupt helpers */
#include <linux/timer.h>
#include <asm/div64.h> /* do_div() */
#include <asm/system.h> /* cli, sli, save_flags */
#include <asm/io.h> /* ioremap, virt_to_phys */
#include <asm/uaccess.h> /* access_ok */
#include <asm/page.h> /* PAGE_OFFSET */
#include <asm/pgtable.h> /* pte bit definitions */
*** nv.c.orig 2009-11-22 19:27:36.000000000 -0800
--- nv.c 2009-12-16 11:02:54.000000000 -0800
***************
*** 724,743 ****
--- 724,747 ----
goto failed;
}
entry->data = nv;
entry->read_proc = nv_kern_read_agpinfo;
#if defined(NV_PROC_DIR_ENTRY_HAS_OWNER)
entry->owner = THIS_MODULE;
#endif
}
+ #if defined(CONFIG_VGA_ARB)
+ vga_set_legacy_decoding(dev, VGA_RSRC_NONE);
+ #endif
+
NV_PCI_DEV_PUT(dev);
}
entry = create_proc_entry("version", flags, proc_nvidia);
if (!entry)
goto failed;
entry->read_proc = nv_kern_read_version;
#if defined(NV_PROC_DIR_ENTRY_HAS_OWNER)
entry->owner = THIS_MODULE;