FS#5427 - nvsound module won't work with kernel 2.6.18

Attached to Project: Arch Linux
Opened by Tom Billiet (mouse256) - Thursday, 21 September 2006, 09:14 GMT
Task Type Bug Report
Category Packages: Extra
Status Closed
Assigned To Tobias Powalowski (tpowa)
Architecture not specified
Severity Medium
Priority Normal
Reported Version 0.7.2 Gimmick
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

modprobe nvsound
FATAL: Error inserting nvsound (/lib/modules/2.6.18-ARCH/kernel/drivers/sound/nvsound.ko): Unknown symbol in module, or unknown parameter (see dmesg)

dmesg:
nvsound: Unknown symbol remap_page_range
This task depends upon

Closed by  Tobias Powalowski (tpowa)
Thursday, 28 September 2006, 07:44 GMT
Reason for closing:  Won't fix
Comment by Tom Billiet (mouse256) - Thursday, 21 September 2006, 09:43 GMT
adding this patch from the gentoo forums changes things somewhat, but still doesn't work:

patch:
--- nvsound.a/NFORCE-Linux-x86-1.0-0310-pkg1/nvsound/main/Makefile.kbuild 2005-10-22 03:59:44.000000000 +0200
+++ nvsound.b/NFORCE-Linux-x86-1.0-0310-pkg1/nvsound/main/Makefile.kbuild 2006-02-22 21:51:33.000000000 +0100
@@ -48,16 +48,16 @@
EXTRA_LDFLAGS := -d

# Figure out how many args remap_page_ranges() wants or new remap call
-ifeq ($(shell sh $(src)/conftest.sh "$(CC)" "$(KERNEL_SOURCES)" "$(KERNEL_OUTPUT)" remap_pfn_range), 1)
- EXTRA_CFLAGS += -DNV_REMAP_PFN_RANGE_PRESENT
-else
- REMAP_PAGE_RANGE := $(shell sh $(src)/conftest.sh "$(CC)" "$(KERNEL_SOURCES)" "$(KERNEL_OUTPUT)" remap_page_range)
-
- ifeq ($(REMAP_PAGE_RANGE),5)
- EXTRA_CFLAGS += -DREMAP_NEW
- endif
+#ifeq ($(shell sh $(src)/conftest.sh "$(CC)" "$(KERNEL_SOURCES)" "$(KERNEL_OUTPUT)" remap_pfn_range), 1)
+EXTRA_CFLAGS += -DNV_REMAP_PFN_RANGE_PRESENT
+#else
+# REMAP_PAGE_RANGE := $(shell sh $(src)/conftest.sh "$(CC)" "$(KERNEL_SOURCES)" "$(KERNEL_OUTPUT)" remap_page_range)
+
+# ifeq ($(REMAP_PAGE_RANGE),5)
+#EXTRA_CFLAGS += -DREMAP_NEW
+# endif

-endif
+#endif

output from dmesg after modprobe nvsound:
Nvsound: Nvidia Audio Init Module, 11:40:11 Sep 21 2006 version 1.0-7
PCI: Setting latency timer of device 0000:00:05.0 to 64
Nvsound: NVIDIA nForce2 Controller Mem 0xee000000 and IRQ 5
PCI: Setting latency timer of device 0000:00:06.0 to 64
Nvsound: NVIDIA nForce2 Audio aci 0xe000 and ac97 0xec00, IRQ b
modprobe: page allocation failure. order:2, mode:0x20
[<c0152615>] __alloc_pages+0x1f5/0x2e0
[<c015271e>] __get_free_pages+0x1e/0x40
[<c01083f8>] dma_alloc_coherent+0xd8/0x110
[<e1b2ab6a>] AosMemoryAllocPhysical+0xd9/0x1de [nvsound]
[<e1b21568>] aosAllocateMem+0x18e/0x214 [nvsound]
[<e1b23ff5>] _ZN11CScratchDma7AddPageEPjj+0x5d/0x92 [nvsound]
[<e1b23d55>] _ZN11CScratchDma8AllocateEP8_memdescPj+0x39/0x84 [nvsound]
[<e1b22303>] _ZN14CHalGlobalProc14AllocateMemoryEP8_memdescPj+0x33/0x3c [nvsound]
[<e1b2624c>] _ZN8CHalMCP120AllocateObjectMemoryEP8_memdescjPj+0x42/0x4e [nvsound]
[<e1b21b79>] AllocObjectMemory+0x2d/0x32 [nvsound]
[<e1b2108b>] RmAllocAudioMemory+0x65/0x74 [nvsound]
[<e1b21155>] NvAuAlloc+0x5b/0x1de [nvsound]
[<e1b218c2>] NVARM_Alloc+0x1e/0x28 [nvsound]
[<e1b1f08a>] _ZN22RealMCPXVoiceProcessor9NvRMAllocEjP17NVOS21_PARAMETERS+0x18/0x1c [nvsound]
[<e1ae8d1e>] _ZN7AUDIOFX15AllocScratchMemEjPPv+0xb8/0xdc [nvsound]
[<e1aea405>] _Z20DefaultAfxParametersP18audiofx_parameters+0x8f/0x190 [nvsound]
[<e1ae746d>] _ZN7AUDIOFX9AddModuleEPcPj+0x1e1/0x210 [nvsound]
[<e1ae74c2>] _ZN7AUDIOFX9AddModuleEiPj+0x26/0x2a [nvsound]
[<e1a9c7b9>] _ZN11CNvFxDsEcho4InitEP16INvAudioInternalP12INvFxManagerP35NVFXINST_FXMANAGER_FXADD_DESCRIPTORP21INv3dListenerInternal+0x163/0x1d0 [nvsound]
[<e1ab9b41>] _ZN15CLocalFxManager5FxAddEP35NVFXINST_FXMANAGER_FXADD_DESCRIPTORP9NV3264PTR+0x4a1/0x57e [nvsound]
[<e1ad29b2>] _ZN8CNvAudio13FxManagerInitEv+0x1450/0x3f16 [nvsound]
[<e1b2a489>] AosMemoryAlloc+0x1a/0x48 [nvsound]
[<e1acc998>] _ZN8CNvAudio16InitResourceMapsEv+0x12e/0x16e [nvsound]
[<e1acde46>] _ZN8CNvAudio10InitializeEP14NVAUDIO_CONFIG+0x24a/0x46c [nvsound]
[<e1b0f7b1>] _ZN13CApuExecutive4InitEP9_nvhwbase+0x3b1/0x45c [nvsound]
[<e1b0fa3e>] _Z19ApuInterruptHandlerPvjj+0x0/0x82 [nvsound]
[<e1b20b6f>] _ZN13CApuExecutive6AddRefEv+0x17/0x1c [nvsound]
[<e1a87baf>] _ZN10NvaUnknown8FinishQIEP8IUnknownPPv+0x1f/0x28 [nvsound]
[<e1b0cc86>] Nv_CreateApuExec+0x1b2/0x40e [nvsound]
[<e1b2e376>] Nvaudio_probe+0x587/0x623 [nvsound]
[<c022a1c3>] pci_match_device+0x13/0xd0
[<c021f81f>] kobject_get+0xf/0x20
[<c022a2f6>] pci_device_probe+0x56/0x80
[<c0283184>] driver_probe_device+0x44/0xc0
[<c02832d4>] __driver_attach+0x64/0x70
[<c0282afa>] bus_for_each_dev+0x3a/0x60
[<c02830c6>] driver_attach+0x16/0x20
[<c0283270>] __driver_attach+0x0/0x70
[<c028274c>] bus_add_driver+0x8c/0x140
[<c022a4a6>] __pci_register_driver+0x56/0x80
[<e1366026>] Nvaudio_init_module+0x26/0x2a [nvsound]
[<c01427bd>] sys_init_module+0x15d/0x1ac0
[<c010325d>] sysenter_past_esp+0x56/0x79
Mem-info:
DMA per-cpu:
cpu 0 hot: high 0, batch 1 used:0
cpu 0 cold: high 0, batch 1 used:0
DMA32 per-cpu: empty
Normal per-cpu:
cpu 0 hot: high 186, batch 31 used:150
cpu 0 cold: high 62, batch 15 used:3
HighMem per-cpu: empty
Free pages: 15384kB (0kB HighMem)
Active:103971 inactive:8072 dirty:1553 writeback:0 unstable:0 free:3846 slab:6337 mapped:19853 pagetables:569
DMA free:2020kB min:88kB low:108kB high:132kB active:7988kB inactive:16kB present:16384kB pages_scanned:0 all_unreclaimable? no
lowmem_reserve[]: 0 0 495 495
DMA32 free:0kB min:0kB low:0kB high:0kB active:0kB inactive:0kB present:0kB pages_scanned:0 all_unreclaimable? no
lowmem_reserve[]: 0 0 495 495
Normal free:13364kB min:2804kB low:3504kB high:4204kB active:407896kB inactive:32272kB present:507840kB pages_scanned:0 all_unreclaimable? no
lowmem_reserve[]: 0 0 0 0
HighMem free:0kB min:128kB low:128kB high:128kB active:0kB inactive:0kB present:0kB pages_scanned:0 all_unreclaimable? nolowmem_reserve[]: 0 0 0 0
DMA: 295*4kB 27*8kB 1*16kB 1*32kB 1*64kB 0*128kB 0*256kB 1*512kB 0*1024kB 0*2048kB 0*4096kB = 2020kB
DMA32: empty
Normal: 2077*4kB 598*8kB 1*16kB 0*32kB 0*64kB 0*128kB 1*256kB 0*512kB 0*1024kB 0*2048kB 0*4096kB = 13364kB
HighMem: empty
Swap cache: add 2, delete 2, find 0/0, race 0+0
Free swap = 1975936kB
Total swap = 1975944kB
Free swap: 1975936kB
131056 pages of RAM
0 pages of HIGHMEM
2092 reserved pages
104114 pages shared
0 pages swap cached
1553 pages dirty
0 pages writeback
19853 pages mapped
6337 pages slab
569 pages pagetables
Trying to free already-free IRQ 11
KERN_INFO Nvsound: Release DEV MIXER 0
nforce_audio: probe of 0000:00:06.0 failed with error -12
Comment by Tobias Powalowski (tpowa) - Friday, 22 September 2006, 06:35 GMT
nvidia itself says use the kernel drivers instead, normally kernel .18 should replace nforce drivers and the package should be removed from repos
Comment by Tom Billiet (mouse256) - Friday, 22 September 2006, 08:41 GMT
I am aware of that, but I don't like the decision of nvidia.
The kernel driver works well with all nforce chipset, except the nforce 2 with soundstorm.
on nforce 2 with soundstorm the nvsound driver offers these advantages:
-) hardware mixing
-) much better sound quality
-) ability to use dolby digital encoding (untested for me, I don't use it)

The kernel driver works with nforce2, but the nvsound driver offers some great advantages...
Comment by Tobias Powalowski (tpowa) - Friday, 22 September 2006, 09:06 GMT
are you sure that the kernel driver is not offering that, by parameters perhaps?
Comment by Tom Billiet (mouse256) - Friday, 22 September 2006, 09:48 GMT
To be honest I didn't try everything again on kernel 2.6.18, but some kernels ago I'm sure this was only possible with the nvsound module.
This thread (http://ubuntuforums.org/showthread.php?t=253725&highlight=nvsound) on the ubuntuforums seems to confirm my point that it's still only possible with the nvsound module.
btw: the nvnet module (also in the nforce package) does not seem to add functionality anywhere
Comment by Tobias Powalowski (tpowa) - Friday, 22 September 2006, 09:51 GMT
then please try it on 2.6.18, i set now nforce for replace since it's unsupported now by nvidia
Comment by Tom Billiet (mouse256) - Friday, 22 September 2006, 09:57 GMT
OK, but I'll don't have time before monday to test it...
Comment by Tom Billiet (mouse256) - Tuesday, 26 September 2006, 14:11 GMT
I tested the intel8x0 driver, with the following result:
-) sound quality seems to have improved, but:
*) mixing 2 sound streams reduces quality a lot
*) still some plops in the sound when producing load on the system
-) hardware mixing is still not possible
-) I assume dolby digital encoding is also not possible, but I can't test, I use analog output

So for this reasons (and I've seen the nforce package will be removed from the official repos) I've uploaded an nforce-nvsound package to aur with a patch from the ubuntu forums which make the drivers work in kernel 2.6.18 as the nforce 2 users will still want to use this driver
Comment by Tom Billiet (mouse256) - Tuesday, 26 September 2006, 14:20 GMT
btw: i'll also update the wiki page one of the days ;)

Loading...