* Andi Kleen <andi@xxxxxxxxxxxxxx> wrote: > > > > OK, so how about we use something like: > > > > is_kernel_text() || is_module_text_address() > > is_module_text_address() has to walk all modules. > A random system with a distro kernel I checked has 101 modules loaded. I checked another random distro and it had 30 modules loaded. > 16 * 101 = too much > > I don't think you want to spend that many cycles in the NMI > handler for a dubious feature. Ok in theory you could > add something with binary search, but that would be quite > a bit of effort and it would be probably challenging > to do that all NMI safe. If anyone using LBR sees that overhead it can be improved. You or others who care can improve it. (Or if the hardware gets fully fixed, it can be removed for that hardware.) > Also it wouldn't work for all these new kernel JITs people are doing of > course. They'll miss the filtering, until they offer the proper is_kernel_jit_text() primitive that is. > Still think my patch is the best so far? (plus the missing root check) Your patch simply disables the filtering for kernel addresses, it's the worst of all options so far. Anyway, what Peter asked for is a trivial change that solves the bug - are you willing to respond to his review feedback and submit an updated series? Thanks, Ingo -- To unsubscribe from this list: send the line "unsubscribe stable" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html