Current-Users archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: [FIXED] tmpfs breakage in 5.99.53?
"J. Hannken-Illjes" <hannken%eis.cs.tu-bs.de@localhost> wrote:
> Yes, a fault-in is missing. For me this little shell script will expose
> the failure:
>
> <...>
>
> So it looks like a page was unmapped but it is still possible to write it
> without getting a page-fault. Not being a pmap expert I forced an update
> after page removal:
>
> RCS file: /cvsroot/src/sys/uvm/uvm_aobj.c,v
> --- uvm_aobj.c 12 Jun 2011 03:36:02 -0000 1.115
> +++ uvm_aobj.c 18 Jun 2011 13:31:43 -0000
> @@ -888,4 +888,5 @@ uao_put(struct uvm_object *uobj, voff_t
> TAILQ_REMOVE(&uobj->memq, &endmp, listq.queue);
> }
> + pmap_update(pmap_kernel());
> mutex_exit(uobj->vmobjlock);
> return 0;
Thanks a lot for the analysis!
According to current pmap interfaces, pmap_page_protect() should perform
the TLB shootdown itself. Regression was in x86 pmap_page_remove().
Should be fixed now.
--
Mindaugas
Home |
Main Index |
Thread Index |
Old Index