* Borislav Petkov <bp@xxxxxxxxx> wrote: > On Sat, Jan 09, 2016 at 05:40:05PM -0800, Tony Luck wrote: > > BUT ... it's all going to be very messy. We don't have any CPUID > > capability bits to say whether we support recovery, or which instructions > > are good/bad choices for recovery. > > We can always define synthetic ones and set them after having checked > MCA capability bits, f/m/s, etc., maybe even based on the list you're > supplying... So such a synthetic CPUID bit would definitely be useful. Also, knowing whether a memcpy function is recoverable or not, should not be delegated to callers: there should be the regular memcpy APIs, plus new APIs that do everything they can to provide recoverable memory copies. Whether it's achieved via flag checking, a function pointer or code patching is an implementation detail that's not visible to drivers making use of the new facility. I'd go for the simplest, most robust solution initially, also perhaps with boot time messages to make sure users know which variant is used and now. Thanks, Ingo -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>