RE: [PATCH v2 4/5] cramfs: add mmap support

From: Nicolas Pitre
Date: Tue Aug 29 2017 - 16:00:36 EST


On Tue, 29 Aug 2017, Chris Brandt wrote:

> On Monday, August 28, 2017, Nicolas Pitre wrote:
> > OK I moved the lock promotion right at the beginning _before_ validating
> > the split point. Also got a reference on the file to make sure that
> > hasn't changed too.
> >
> > > While we are at it, what happens if you mmap 120Kb, then munmap() the
> > middle
> > > 40Kb. Leaving two 40Kb VMAs with 40Kb gap between them, that is. Will
> > your
> > > ->vm_private_data be correct for both?
> >
> > It wouldn't, but I now changed it to contain absolute values so now it
> > will. And if the split point lands in the hole then the code just
> > readjusts the pgoff at the beginning of the remaining part.
> >
> > Here's the revised patch:
>
>
> For whatever it's worth, as soon as I moved to 4.13-rc7,
> CONFIG_CRAMFS_PHYSMEM=y crashes my XIP_KERNEL system before it can even
> get to any console output.
>
> (both the old patch and the new patch)
>
> If CONFIG_CRAMFS_PHYSMEM is not set, my XIP system boots fine.
>
> However, if I boot -rc7 as a uImage, the new patch works just as good as
> the old patch.

When not a uImage, do you mean by that a XIP kernel? If so you should
know by now from that other thread on LAK that the XIP linker script is
broken and probably just worked by luck till now. Still, if you could
bisect between -rc4 and -rc7 and pinpoint the change that makes it not
work that would be better than speculations.


Nicolas