On Sep 20, 2015 5:15 PM, "Linus Torvalds" <torvalds@xxxxxxxxxxxxxxxxxxxx> wrote: > > On Sun, Sep 20, 2015 at 5:02 PM, Andy Lutomirski <luto@xxxxxxxxxx> wrote: > > This demotes an OOPS and likely panic due to a failed non-"safe" MSR > > access to a WARN_ON_ONCE and a return of zero (in the RDMSR case). > > We still write a pr_info entry unconditionally for debugging. > > No, this is wrong. > > If you really want to do something like this, then just make all MSR > reads safe. So the only difference between "safe" and "unsafe" is that > the unsafe version just doesn't check the return value, and silently > just returns zero for reads (or writes nothing). > > To quote Obi-Wan: "Use the exception table, Luke". > > Because decoding instructions is just too ugly. We'll do it for CPU > errata where we might have to do it for user space code too (ie the > AMD prefetch mess), but for code that _we_ control? Hell no. > > So NAK on this. My personal preference is to just not do this at all. A couple people disagree. If we make the unsafe variants not oops, then I think we want to have the nice loud warning, since these issues are bugs if they happen. We could certainly use the exception table for this, but it'll result in bigger core, since each MSR access will need an exception table entry and an associated fixup to call some helper that warns and sets the result to zero. I'd be happy to implement that, but only if it'll be applied. Otherwise I'd rather just drop this patch and keep the rest of the series. --Andy -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html