Messages in this thread | | | From | "Pallipadi, Venkatesh" <> | Date | Thu, 21 Aug 2008 15:16:11 -0700 | Subject | RE: [PATCH] x86: {reverve,free}_memtype() take a physical address |
| |
>-----Original Message----- >From: Rene Herman [mailto:rene.herman@keyaccess.nl] >Sent: Thursday, August 21, 2008 3:10 PM >To: Ingo Molnar; Li, Shaohua >Cc: Pallipadi, Venkatesh; Dave Airlie; Yinghai Lu; Andreas >Herrmann; Arjan van de Ven; Linux Kernel; Siddha, Suresh B; >Thomas Gleixner; H. Peter Anvin; Dave Jones >Subject: [PATCH] x86: {reverve,free}_memtype() take a physical address > >On 21-08-08 19:15, Rene Herman wrote: > >> On 21-08-08 14:06, Ingo Molnar wrote: > >>> Would be nice to test tip/master - it has both that patch >included and >>> the latest pageattr-array API (with enablement in AGP drivers) >>> patchset, done by Shaohua Li, based on Dave's original patch. >> >> That patch by itself doesn't help any -- the new >set_memory_array_uc() >> still calls reserve_memtype() for each single page in the array. > >Worse yet, it appears to be broken. {reserve,free}_memtype() >expect phys >addresses but it's being passed virtual ones... > >Rene. >
Yes. Noticed that too and sent a patch here for x86/tip.
http://www.ussg.iu.edu/hypermail/linux/kernel/0808.2/2270.html
It is not very critical as it sounds as only set_memory_uc sets PAT bits for RAM pages. Most other users (devmem mmap, ioramep, pci) set PAT bits on the reserved memory. And there will not be conflicts across RAM and reserveed regions. Regardless, this was a stupid bug that we had missed earlier.
Thanks, Venki
| |