[BUG][-tip] kprobes on module functions hits kernel BUG in text_poke on x86-32

Masami Hiramatsu mhiramat@redhat.com
Sun Apr 5 03:49:00 GMT 2009


Masami Hiramatsu wrote:
> Hmm, ok. AFAICS, fixmap is only for lowmem, and pkmap is only for highmem.

Oops, I mean kmap...


> So, I think we have some options;
> 
> A) Separate text_poke into __text_poke and __text_poke_highmem. And
>   use pkmap_atomic in __text_poke_highmem. This way doesn't require
>   any additional change except adding KM_TEXT_POKE0/1 in km_type.
> 
> B) Add set_fixmap_page and use it in text_poke. This will require
>   changes in paravirt_ops and pgtable.c. We need to ensure there is
>   no side effects.
> 
> C) Change pkmap_atomic_prot to map lowmem only if the page's pgprot
>   is different from user specified pgprot. And use it instead of
>   fixmap. This also requires KM_TEXT_POKE0/1, however we can
>   remove FIX_TEXT_POKE0/1.

same, s/pkmap/kmap/g


-- 
Masami Hiramatsu

Software Engineer
Hitachi Computer Products (America) Inc.
Software Solutions Division

e-mail: mhiramat@redhat.com



More information about the Systemtap mailing list