* Re: 2.6.23-rc8-mm1, -rc7-mm1 kill audio on HP nx6325 [not found] <200709251353.52723.rjw@sisk.pl> @ 2007-09-25 16:08 ` Andrew Morton 2007-09-26 7:32 ` [discuss] " Jan Beulich 0 siblings, 1 reply; 3+ messages in thread From: Andrew Morton @ 2007-09-25 16:08 UTC (permalink / raw) To: Rafael J. Wysocki; +Cc: Andi Kleen, Takashi Iwai, LKML, discuss On Tue, 25 Sep 2007 13:53:51 +0200 "Rafael J. Wysocki" <rjw@sisk.pl> wrote: > Hi, > > This patch from Andi: > > x86_64-mm-cpa-einval.patch > > makes the hda_intel audio driver stop working on my HP nx6325. > > The following line appears in dmesg (from 2.6.23-rc7-mm1: > > ALSA /home/rafael/src/mm/linux-2.6.23-rc7-mm1/sound/pci/hda/hda_intel.c:1755: hd > a-intel: ioremap error > > and the driver doesn't work afterwards. > > Still, I'm not sure if the patch above is wrong or rather it exposes a problem > in the driver. > Mysterious. ioremap_nocache() does __ioremap(..., _PAGE_PCD);, then __ioremap() does ioremap_page_range(..., _PAGE_PCD | other_stuff) That's one. __ioremap() then does ioremap_change_attr(..., _PAGE_PCD);. That's two. So I _think_ we're setting _PAGE_PCD twice on those pte's? Unclear. The implementation is rather different from i386, too. I dunno why __change_page_attr() failed though. Perhaps this, in change_page_attr_addr(): if (!kernel_map || pte_present(pfn_pte(0, prot))) { should be && Andi's taking a bit of time off, so we may need to park this until he resurfaces. ^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [discuss] 2.6.23-rc8-mm1, -rc7-mm1 kill audio on HP nx6325 2007-09-25 16:08 ` 2.6.23-rc8-mm1, -rc7-mm1 kill audio on HP nx6325 Andrew Morton @ 2007-09-26 7:32 ` Jan Beulich 2007-09-26 8:22 ` Thomas Gleixner 0 siblings, 1 reply; 3+ messages in thread From: Jan Beulich @ 2007-09-26 7:32 UTC (permalink / raw) To: Andrew Morton, Rafael J. Wysocki; +Cc: Andi Kleen, Takashi Iwai, LKML, discuss >>> Andrew Morton <akpm@linux-foundation.org> 25.09.07 18:08 >>> >On Tue, 25 Sep 2007 13:53:51 +0200 "Rafael J. Wysocki" <rjw@sisk.pl> wrote: > >> Hi, >> >> This patch from Andi: >> >> x86_64-mm-cpa-einval.patch >> >> makes the hda_intel audio driver stop working on my HP nx6325. >> >> The following line appears in dmesg (from 2.6.23-rc7-mm1: >> >> ALSA /home/rafael/src/mm/linux-2.6.23-rc7-mm1/sound/pci/hda/hda_intel.c:1755: hd >> a-intel: ioremap error >> >> and the driver doesn't work afterwards. >> >> Still, I'm not sure if the patch above is wrong or rather it exposes a problem >> in the driver. >> > >Mysterious. > >ioremap_nocache() does __ioremap(..., _PAGE_PCD);, then __ioremap() does >ioremap_page_range(..., _PAGE_PCD | other_stuff) That's one. > >__ioremap() then does ioremap_change_attr(..., _PAGE_PCD);. That's two. > >So I _think_ we're setting _PAGE_PCD twice on those pte's? Unclear. The >implementation is rather different from i386, too. > >I dunno why __change_page_attr() failed though. Perhaps this, in >change_page_attr_addr(): > > if (!kernel_map || pte_present(pfn_pte(0, prot))) { > >should be && Definitely not, and this code has been that way for a while. I rather suspect this change - if (!kpte) return 0; + if (!kpte) + return -EINVAL; to be the reason for the failure (and I had already sent a comment to this respect to Andi upon his review request). Jan ^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [discuss] 2.6.23-rc8-mm1, -rc7-mm1 kill audio on HP nx6325 2007-09-26 7:32 ` [discuss] " Jan Beulich @ 2007-09-26 8:22 ` Thomas Gleixner 0 siblings, 0 replies; 3+ messages in thread From: Thomas Gleixner @ 2007-09-26 8:22 UTC (permalink / raw) To: Jan Beulich Cc: Andrew Morton, Rafael J. Wysocki, Andi Kleen, Takashi Iwai, LKML, discuss On Wed, 2007-09-26 at 08:32 +0100, Jan Beulich wrote: > >ioremap_nocache() does __ioremap(..., _PAGE_PCD);, then __ioremap() does > >ioremap_page_range(..., _PAGE_PCD | other_stuff) That's one. > > > >__ioremap() then does ioremap_change_attr(..., _PAGE_PCD);. That's two. > > > >So I _think_ we're setting _PAGE_PCD twice on those pte's? Unclear. The > >implementation is rather different from i386, too. > > > >I dunno why __change_page_attr() failed though. Perhaps this, in > >change_page_attr_addr(): > > > > if (!kernel_map || pte_present(pfn_pte(0, prot))) { > > > >should be && > > Definitely not, and this code has been that way for a while. > > I rather suspect this change > > - if (!kpte) return 0; > + if (!kpte) > + return -EINVAL; > > to be the reason for the failure (and I had already sent a comment to this > respect to Andi upon his review request). This change exposes the problem. The question is why we do not have a page table entry for the address, which was mapped right before that. tglx ^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2007-09-26 8:22 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <200709251353.52723.rjw@sisk.pl>
2007-09-25 16:08 ` 2.6.23-rc8-mm1, -rc7-mm1 kill audio on HP nx6325 Andrew Morton
2007-09-26 7:32 ` [discuss] " Jan Beulich
2007-09-26 8:22 ` Thomas Gleixner
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox