Here are some ideas: I really think we need to include the __init text section too. Built-in device divers may use asm_io_fdc() or asm_io_sync() in their init code. Should we flush the d-cache before mapping r/o again? As discussed abobe, maybe we should simply use flush_tlb_all_local()? It's on the current CPU which will do the patching and needs those new tlb entries. All of the above doesn't explain why Meelis had a crash at boot though... Signed-off-by: Helge Deller <deller@xxxxxx>
The patch does not break boot at least. But since I can not easily reproduce the problem, I have no idea if it influences my boot problem. -- Meelis Roos <mroos@xxxxxxxx>