> That said, there is an open "bug" on i386 in module loading. We really > should insert a call to sync_core during module loading after the > alternative instructions have been patched. In theory, the processor > could prefetch the module code into the icache before any calls are made > into the module, and since the module initialization calls follow > shortly after the alternate patching, there is theoretically a window > where the old code (albeit more conservative) could be executed. The x86 architecture is supposed to handle self modifying code (modulo processor errata). We rely on it in other places too. Calling relying on such a documented property a bug is really harsh. -Andi