NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: kern/52440 (nouveau blank screen w/some cards after MSI change in 7.99.64)



The following reply was made to PR kern/52440; it has been noted by GNATS.

From: "John D. Baker" <jdbaker%consolidated.net@localhost>
To: gnats-bugs%NetBSD.org@localhost
Cc: 
Subject: Re: kern/52440 (nouveau blank screen w/some cards after MSI change
 in 7.99.64)
Date: Sat, 2 Mar 2019 11:55:07 -0600 (CST)

 On Fri, 1 Mar 2019, John D. Baker wrote:
 
 > Again, I've only been able to test the one machine that never exhibited
 > the original problem.  It still works fine.  I did notice the following
 > in 'dmesg' output either starting the Xserver:
 > 
 > [   153.346307] nouveau0: autoconfiguration error: error: user: nvif_object_map, -12
 > [   153.346307] nouveau0: autoconfiguration error: error: user: channel failed to initialise, -12
 
 With the latest update (8.99.35) this machine works (I still can't get
 access to the two other nVidia-equipped machines).
 
 
 > I could not test with MSI as it is disabled in the HEAD revision of
 > 
 >   sys/external/bsd/drm2/dist/drm/nouveau/nvkm/subdev/pci/nouveau_nvkm_subdev_pci_base.c
 > 
 > I've rolled it back to the previous revision in my test tree for the
 > next round of updates, but that'll take at least 24 hours to build due
 > to the recent kernel bump (8.99.35).
 
 With the above file rolled back and the following patch which I've been
 using since "linux_pci.c" was carved out of "linux_pci.h":
 
 
 +Index: sys/external/bsd/drm2/linux/linux_pci.c
 +===================================================================
 +RCS file: /cvsroot/src/sys/external/bsd/drm2/linux/linux_pci.c,v
 +retrieving revision 1.6
 +diff -u -p -r1.6 linux_pci.c
 +--- sys/external/bsd/drm2/linux/linux_pci.c	28 Aug 2018 03:41:39 -0000	1.6
 ++++ sys/external/bsd/drm2/linux/linux_pci.c	28 Aug 2018 20:07:42 -0000
 +@@ -257,7 +257,6 @@ pci_bus_write_config_byte(struct pci_bus
 + int
 + pci_enable_msi(struct pci_dev *pdev)
 + {
 +-#ifdef notyet
 + 	const struct pci_attach_args *const pa = &pdev->pd_pa;
 + 
 + 	if (pci_msi_alloc_exact(pa, &pdev->pd_intr_handles, 1))
 +@@ -265,9 +264,6 @@ pci_enable_msi(struct pci_dev *pdev)
 + 
 + 	pdev->msi_enabled = 1;
 + 	return 0;
 +-#else
 +-	return -ENOSYS;
 +-#endif
 + }
 + 
 + void
 
 I get a kernel panic.  Unfortunately, the most informative part of the
 backtrace has scrolled off the screen already and trying to use
 <Shift>-<PgUp> to scroll back produces a kernel fault in DDB.  The
 machine has no serial port, so no chance of capturing the fault that
 way.
 
 If I can get access to the other machines that have nVidia graphics cards,
 they both have serial ports, so if they panic the same way, I can capture
 the backtrace.
 
 -- 
 |/"\ John D. Baker, KN5UKS               NetBSD     Darwin/MacOS X
 |\ / jdbaker[snail]consolidated[flyspeck]net  OpenBSD            FreeBSD
 | X  No HTML/proprietary data in email.   BSD just sits there and works!
 |/ \ GPGkeyID:  D703 4A7E 479F 63F8 D3F4  BD99 9572 8F23 E4AD 1645
 


Home | Main Index | Thread Index | Old Index