Messages in this thread | | | Date | Wed, 5 Mar 2008 07:48:14 +0100 | From | Ingo Molnar <> | Subject | Re: preempt bug in set_pmd_pfn? |
| |
* Jeremy Fitzhardinge <jeremy@goop.org> wrote:
> Ingo Molnar wrote: >> * Jeremy Fitzhardinge <jeremy@goop.org> wrote: >> >> >>> I think set_pmd_pfn, which is only called by __set_fixmap, might have a >>> preempt bug in it. >>> >> >> yes, and we had similar preemption bugs in the past. I guess most places >> are either infrequent or have some natural atomicity anyway. Wanna send a >> patch? > > Sure. Should it just disable preemption, or take a lock? It calls > set_pte_at without holding any pte locks; that seems to be relatively > common. Is it OK when you're operating on init_mm?
no, it's not OK to modify the kernel pagetable without locking - taking the pgd_lock should do the trick. Could you send the stacktrace that shows the place that is preemptible?
Ingo
| |