Intel® ISA Extensions
Use hardware-based isolation and memory encryption to provide more code protection in your solutions.
Welcome to the Intel Community. If you get an answer you like, please mark it as an Accepted Solution to help others. Thank you!
For the latest information on Intel’s response to the Log4j/Log4Shell vulnerability, please see Intel-SA-00646

What does "O" signify in MSR registers description?


A simple question that I haven’t been able to find an answer for. What does R/O signify when discussing MSR (model specific registers)  in the Software developers manual? In volume 4, some MSR’s are identified with (R/W) or (R), or even sometimes (RW-L). Obviously R/W is read/write and R is read-only, but what about the other identifiers?

Attempting to use the wrmsr utility to modify an MSR marked with R/O in the SDMfails in Debian with “CPU cannot set MSR” and in bios-bits with a general protection fault. This leads me to believe R/O is another form for read-only, or signifies its only writeable in SMM (ring-2) mode.

Any information would be appreciated! 

0 Kudos
1 Reply
Black Belt

You really opened up a bag of worms with this one....

Looking through the tables in Vol4 of the SWDM and in the SKX Uncore Performance Monitoring Guide I quickly found about 15 abbreviations used for the R/W attributes, but with no descriptions.  Quite a few of these were puzzling....

A bit more digging led me to the "Intel Xeon Processor Scalable Family Datasheet, Volume 2: Registers" (document 336062-003), where Table 2-1 has descriptions for 27 different "R/W" type attributes.  I don't think that the table includes every single one of the variants that I saw, but the descriptions certainly provide a lot of insight into the different kinds of attributes that these MSRs can possess....