<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic [SOLVED] Safe access to MSR IA32_PRED_CMD in Software Tuning, Performance Optimization &amp; Platform Monitoring</title>
    <link>https://community.intel.com/t5/Software-Tuning-Performance/SOLVED-Safe-access-to-MSR-IA32-PRED-CMD/m-p/1134726#M6473</link>
    <description>&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;In the SDM, the MSR&amp;nbsp;IA32_PRED_CMD (0x49) can be read if CPUID(EAX=07H, ECX=0):EDX[26] equals 1&lt;/P&gt;&lt;P&gt;For example, processor Xeon W3690 of architecture Westmere/Gulftown, microcode version 31,&amp;nbsp;is capable of&amp;nbsp;IBRS &amp;amp; IBPB, according to the EDX register of CPUID leave 7. However, &lt;STRONG&gt;reading the MSR 0x49 will immediately crash processor&lt;/STRONG&gt; [&lt;EM&gt;whereas MSR IA32_SPEC_CTRL (0x48) works as specified&lt;/EM&gt;]&lt;/P&gt;&lt;P&gt;FYI, same issue has been encountered with a i7-6700 Skylake processor&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Question: what are the discriminant bits to safely read the MSR&amp;nbsp;IA32_PRED_CMD ?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thank you&lt;/P&gt;&lt;P&gt;Cyril&lt;/P&gt;</description>
    <pubDate>Sat, 02 Nov 2019 12:01:02 GMT</pubDate>
    <dc:creator>CyrIng</dc:creator>
    <dc:date>2019-11-02T12:01:02Z</dc:date>
    <item>
      <title>[SOLVED] Safe access to MSR IA32_PRED_CMD</title>
      <link>https://community.intel.com/t5/Software-Tuning-Performance/SOLVED-Safe-access-to-MSR-IA32-PRED-CMD/m-p/1134726#M6473</link>
      <description>&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;In the SDM, the MSR&amp;nbsp;IA32_PRED_CMD (0x49) can be read if CPUID(EAX=07H, ECX=0):EDX[26] equals 1&lt;/P&gt;&lt;P&gt;For example, processor Xeon W3690 of architecture Westmere/Gulftown, microcode version 31,&amp;nbsp;is capable of&amp;nbsp;IBRS &amp;amp; IBPB, according to the EDX register of CPUID leave 7. However, &lt;STRONG&gt;reading the MSR 0x49 will immediately crash processor&lt;/STRONG&gt; [&lt;EM&gt;whereas MSR IA32_SPEC_CTRL (0x48) works as specified&lt;/EM&gt;]&lt;/P&gt;&lt;P&gt;FYI, same issue has been encountered with a i7-6700 Skylake processor&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Question: what are the discriminant bits to safely read the MSR&amp;nbsp;IA32_PRED_CMD ?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thank you&lt;/P&gt;&lt;P&gt;Cyril&lt;/P&gt;</description>
      <pubDate>Sat, 02 Nov 2019 12:01:02 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Tuning-Performance/SOLVED-Safe-access-to-MSR-IA32-PRED-CMD/m-p/1134726#M6473</guid>
      <dc:creator>CyrIng</dc:creator>
      <dc:date>2019-11-02T12:01:02Z</dc:date>
    </item>
    <item>
      <title>Registers MSR_IA32_PRED_CMD</title>
      <link>https://community.intel.com/t5/Software-Tuning-Performance/SOLVED-Safe-access-to-MSR-IA32-PRED-CMD/m-p/1134727#M6474</link>
      <description>&lt;P&gt;Registers&amp;nbsp;MSR_IA32_PRED_CMD&amp;nbsp;and&amp;nbsp;MSR_IA32_FLUSH_CMD&amp;nbsp;are &lt;STRONG&gt;write-only&lt;/STRONG&gt;&lt;/P&gt;</description>
      <pubDate>Mon, 04 Nov 2019 16:09:54 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Tuning-Performance/SOLVED-Safe-access-to-MSR-IA32-PRED-CMD/m-p/1134727#M6474</guid>
      <dc:creator>CyrIng</dc:creator>
      <dc:date>2019-11-04T16:09:54Z</dc:date>
    </item>
    <item>
      <title>What kind of crash do you</title>
      <link>https://community.intel.com/t5/Software-Tuning-Performance/SOLVED-Safe-access-to-MSR-IA32-PRED-CMD/m-p/1134728#M6475</link>
      <description>&lt;P&gt;What kind of crash do you mean? &amp;nbsp;(Cleverly not testing this myself, just in case....)&lt;/P&gt;</description>
      <pubDate>Tue, 05 Nov 2019 22:39:52 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Tuning-Performance/SOLVED-Safe-access-to-MSR-IA32-PRED-CMD/m-p/1134728#M6475</guid>
      <dc:creator>McCalpinJohn</dc:creator>
      <dc:date>2019-11-05T22:39:52Z</dc:date>
    </item>
    <item>
      <title>My driver was seg-faulting</title>
      <link>https://community.intel.com/t5/Software-Tuning-Performance/SOLVED-Safe-access-to-MSR-IA32-PRED-CMD/m-p/1134729#M6476</link>
      <description>&lt;P&gt;My driver was seg-faulting because reading this MSR. I fixed it by writing only the register.&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 06 Nov 2019 06:53:47 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Tuning-Performance/SOLVED-Safe-access-to-MSR-IA32-PRED-CMD/m-p/1134729#M6476</guid>
      <dc:creator>CyrIng</dc:creator>
      <dc:date>2019-11-06T06:53:47Z</dc:date>
    </item>
    <item>
      <title>Thanks!  That sounds like the</title>
      <link>https://community.intel.com/t5/Software-Tuning-Performance/SOLVED-Safe-access-to-MSR-IA32-PRED-CMD/m-p/1134730#M6477</link>
      <description>&lt;P&gt;Thanks!&amp;nbsp; That sounds like the normal fault condition for a non-readable MSR (or for writing to any bits of an MSR that is not writable).&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I thought that Intel had configured the "write-only" MSRs to be readable (returning zero), but apparently not all of them!&lt;/P&gt;</description>
      <pubDate>Wed, 06 Nov 2019 23:19:37 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Tuning-Performance/SOLVED-Safe-access-to-MSR-IA32-PRED-CMD/m-p/1134730#M6477</guid>
      <dc:creator>McCalpinJohn</dc:creator>
      <dc:date>2019-11-06T23:19:37Z</dc:date>
    </item>
  </channel>
</rss>

