On March 31, 2025 3:17:30 AM PDT, Ingo Molnar <mi...@kernel.org> wrote:
>
>* Xin Li (Intel) <x...@zytor.com> wrote:
>
>> -    __wrmsr      (MSR_AMD_DBG_EXTN_CFG, val | 3ULL << 3, val >> 32);
>> +    native_wrmsrl(MSR_AMD_DBG_EXTN_CFG, val | 3ULL << 3);
>
>This is an improvement.
>
>> -    __wrmsr      (MSR_IA32_PQR_ASSOC, rmid_p, plr->closid);
>> +    native_wrmsrl(MSR_IA32_PQR_ASSOC, (u64)plr->closid << 32 | rmid_p);
>
>> -    __wrmsr      (MSR_IA32_PQR_ASSOC, rmid_p, closid_p);
>> +    native_wrmsrl(MSR_IA32_PQR_ASSOC, (u64)closid_p << 32 | rmid_p);
>
>This is not an improvement.
>
>Please provide a native_wrmsrl() API variant where natural [rmid_p, closid_p]
>high/lo parameters can be used, without the shift-uglification...
>
>Thanks,
>
>       Ingo

Directing this question primarily to Ingo, who is more than anyone else the 
namespace consistency guardian:

On the subject of msr function naming ... *msrl() has always been misleading. 
The -l suffix usually means 32 bits; sometimes it means the C type "long" 
(which in the kernel is used instead of size_t/uintptr_t, which might end up 
being "fun" when 128-bit architectures appear some time this century), but for 
a fixed 64-but type we normally use -q.

Should we rename the *msrl() functions to *msrq() as part of this overhaul?

Reply via email to