lkml.org 
[lkml]   [2007]   [Sep]   [5]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH] Fix preemptible lazy mode bug
From
Date
On Thu, 2007-08-23 at 22:46 -0700, Zachary Amsden wrote:
> I recently sent off a fix for lazy vmalloc faults which can happen under
> paravirt when lazy mode is enabled. Unfortunately, I jumped the gun a
> bit on fixing this. I neglected to notice that since the new call to
> flush the MMU update queue is called from the page fault handler, it can
> be pre-empted. Both VMI and Xen use per-cpu variables to track lazy
> mode state, as all previous calls to set, disable, or flush lazy mode
> happened from a non-preemptable state.

Hi Zach,

I don't think this patch does anything. The flush is because we want
the just-completed "set_pte" to have immediate effect, so if preempt is
enabled we're already screwed because we can be moved between set_pte
and the arch_flush_lazy_mmu_mode() call.

Now, where's the problem caller? By my reading or rc4, vmalloc faults
are fixed up before enabling interrupts.

Confused,
Rusty.


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

\
 
 \ /
  Last update: 2007-09-05 22:41    [from the cache]
©2003-2014 Jasper Spaans. Advertise on this site