
The patch from Intel engineer Yu-cheng Yu is changing the cpa_flush() call to call the flush_kernel_range() function directly. The CPA flushing code is for flushing the translation lookaside buffer (TLB) as part of the Change Page Attribute (CPA) code for user and kernel space memory attributes.
With this change, the CPA flush code can make use of the INVLPGB or RAR instructions without any additional changes. INVLPGB at least can be of very nice performance benefit as shown in other testing from past Phoronix articles.
The code is pending via the x86/mm pull request .