Forget my folly, please!

Is there any items need hand?



Jeunder Yu wrote
> Hello,
> 
> Here is a patch to fix following problem in booting time,
> 
> WARNING: clock lost 16832 days 
> WARNING: CHECK AND RESET THE DATE! 
> pmap_fault_fixup: va 00008000 ftype 5 u pte 7ff3802e 
> pmap_fault_fixup: va 00008000 ftype 5 u pte 7ff3802e 
> pmap_fault_fixup: va 00008000 ftype 5 u pte 7ff3802e 
> pmap_fault_fixup: va 00008000 ftype 5 u pte 7ff3802e 
> pmap_fault_fixup: va 00008000 ftype 5 u pte 7ff3802e 
> pmap_fault_fixup: va 00008000 ftype 5 u pte 7ff3802e 
> pmap_fault_fixup: va 00008000 ftype 5 u pte 7ff3802e 
> 
> To avoid wrong L1 pde cached in TLB,
> we should flush TLB after L1 pde destroyed (*pl1pd = L1_TYPE_INV)
> 
> Jeunder
> 
> 
> Index: sys/arch/arm/arm/pmap7.c
> ===================================================================
> RCS file: /cvs/src/sys/arch/arm/arm/pmap7.c,v
> retrieving revision 1.27
> diff -u -p -u -r1.27 pmap7.c
> --- sys/arch/arm/arm/pmap7.c  19 Jul 2016 02:26:15 -0000      1.27
> +++ sys/arch/arm/arm/pmap7.c  11 Oct 2016 18:15:37 -0000
> @@ -876,6 +876,8 @@ pmap_free_l2_bucket(pmap_t pm, struct l2
>       if (l1pd == (L1_C_DOM(pm->pm_domain) | L1_TYPE_C)) {
>               *pl1pd = L1_TYPE_INV;
>               PTE_SYNC(pl1pd);
> +             if (curproc && curproc->p_vmspace->vm_map.pmap == pm)
> +                     cpu_tlb_flushID_SE(l1idx << L1_S_SHIFT);
>       }
>  
>       /*





--
View this message in context: 
http://openbsd-archive.7691.n7.nabble.com/Patch-to-fix-armv7-pmap-fault-fixup-va-00008000-ftype-tp306322p306365.html
Sent from the openbsd port - arm mailing list archive at Nabble.com.

Reply via email to