View Single Post
Old 03-02-11, 01:26 AM   #1
rprabhu
Registered User
 
Join Date: Jan 2011
Posts: 7
Default [BUG] Ioremap error with nvidia in 2.6.38-rc6

When testing 2.6.38-rc6, while starting xorg I noticed following


===========================================
Code:
Feb 27 21:53:12 localhost kernel: [  622.957621] ioremap error for 0xbbffe000-0xbbfff000, requested 0x10, got 0x0
Feb 27 21:53:12 localhost kernel: [  622.957626] ioremap error for 0xbbffe000-0xbbfff000, requested 0x10, got 0x0
Feb 27 21:53:12 localhost kernel: [  622.957631] ioremap error for 0xbbffe000-0xbbfff000, requested 0x10, got 0x0
Feb 27 21:53:12 localhost kernel: [  622.957636] ioremap error for 0xbbffe000-0xbbfff000, requested 0x10, got 0x0
=======================================

Going by the kernel source, I noticed that request and response are differing over the cacheability of the memory region.

Sifting through the kernel git, I noticed

http://git.kernel.org/?p=linux/kerne...69e069dc2e0b8d

So, this looks like the culprit.

For Intel 9 code, they have made following change,

http://git.kernel.org/?p=linux/kerne...c62f65e0851fd3

Now, looking at the nvidia module source code -- os-interface.c I observed call to os_map_kernel_space being made. The bug may be in calling with wrong mode for opregion (the term used in above commits)

Edit:
Is changing NV_IOREMAP_NOCACHE(vaddr, start, size_bytes) to NV_IOREMAP(vaddr, start, size_bytes) for NV_MEMORY_DEFAULT going to fix this ?
rprabhu is offline   Reply With Quote