Port-amd64 archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: dropping d=1 w=0
On Sat, Feb 29, 2020 at 07:47:17AM +0100, Maxime Villard wrote:
> Le 28/02/2020 ? 19:51, is%netbsd.org@localhost a ?crit?:
> > On Fri, Feb 28, 2020 at 07:14:47PM +0100, Maxime Villard wrote:
> >> We need to eliminate the pages that have the "dirty" bit set without the
> >> "writable" bit set.
> >>
> >> The biggest cause of these pages is pmap_write_protect(), which drops
> >> PTE_W but leaves PTE_D.
> >
> > Is this a bug or intentional? - as in
> > "no more changes here, but need still to write what was changed earlier"
>
> Actually, I'm not so sure now. Maybe UVM will have to be fixed too.
I think you probably just need a change in pmap_write_protect() to copy D
into pp_attrs if pmap_pv_tracked() gives you a non-NULL page, no? Then
you'd be fine to clear D on the PTE.
Andrew
> The reason is that the combination of d=1 and w=0 will have a new meaning
> on future x86 CPUs, which will have nothing to do with actual dirtiness
> and readonlyness.
Home |
Main Index |
Thread Index |
Old Index