Re: [Bug #12872] pwc mmap always fails with EAGAIN

From: Ingo Molnar
Date: Sun Mar 22 2009 - 16:05:53 EST



* Markus <M4rkusXXL@xxxxxx> wrote:

> > > > Still valid for 2.6.29-rc8-git5.
> > >
> > > And not really likely to change until someone with a pwc camera adds
> lots
> > > of printks to the code to work out why this happens.
> >
> > Or does a bisection to figure out the bad commit, because the report
> > says that 2.6.28 worked.
> >
> > The 'howto bisect' portion of:
> >
> > http://www.kernel.org/doc/local/git-quick.html
>
>
> Well I did a bisect:
> be03d9e8022030c16abf534e33e185bfc3d40eef is first bad commit
> commit be03d9e8022030c16abf534e33e185bfc3d40eef
> Author: Suresh Siddha <suresh.b.siddha@xxxxxxxxx>
> Date: Wed Feb 11 11:20:23 2009 -0800
>
> x86, pat: fix warn_on_once() while mapping 0-1MB range with /dev/mem
>
> Jeff Mahoney reported:
>
> > With Suse's hwinfo tool, on -tip:
> > WARNING: at arch/x86/mm/pat.c:637 reserve_pfn_range+0x5b/0x26d()
>
> reserve_pfn_range() is not tracking the memory range below 1MB
> as non-RAM and as such is inconsistent with similar checks in
> reserve_memtype() and free_memtype()
>
> Rename the pagerange_is_ram() to pat_pagerange_is_ram() and add the
> "track legacy 1MB region as non RAM" condition.
>
> And also, fix reserve_pfn_range() to return -EINVAL, when the pfn
> range is RAM. This is to be consistent with this API design.
>
> Reported-and-tested-by: Jeff Mahoney <jeffm@xxxxxxxx>
> Signed-off-by: Suresh Siddha <suresh.b.siddha@xxxxxxxxx>
> Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@xxxxxxxxx>
> Signed-off-by: Ingo Molnar <mingo@xxxxxxx>
>
> :040000 040000 feb3bf21d762e885284cb1bedb5d2c6c0d16811b
> b4c2143775386ce15dd49b6749c1f7913d8beb00 M arch
>
> So I ran "git bisect reset ; git revert
> be03d9e8022030c16abf534e33e185bfc3d40eef" and rebuild. That worked!
>
> I dont know if this is valid to do, but its working fine.
> Its an amd64 system with CONFIG_X86_PAT=y.
>
> Need some feedback ;)

First thing to check would be whether the latest round of PAT fixes
(not yet upstream) fix the problem:

http://people.redhat.com/mingo/tip.git/README

Suresh, any ideas?

Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/