<!DOCTYPE html><html data-lt-installed="true"><head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  </head>
  <body style="padding-bottom: 1px;">
    <p><br>
    </p>
    <div class="moz-cite-prefix">On 5/14/2024 3:47 PM, Konda, SaiKishore
      wrote:<br>
    </div>
    <blockquote type="cite" cite="mid:PH0PR11MB5674E8EF849E5B47A847B70594E32@PH0PR11MB5674.namprd11.prod.outlook.com">
      
      <meta name="Generator" content="Microsoft Word 15 (filtered medium)">
      <!--[if !mso]><style>v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style><![endif]-->
      <style>@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:#0563C1;
        text-decoration:underline;}span.EmailStyle19
        {mso-style-type:personal-reply;
        font-family:"Calibri",sans-serif;
        color:windowtext;}.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;
        mso-ligatures:none;}div.WordSection1
        {page:WordSection1;}</style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
      <div class="WordSection1">
        <p class="MsoNormal"><span style="mso-fareast-language:EN-US">Hi
            <a id="OWAAMB3B24BE1CEFA408B8563DFC28E3AA050" href="mailto:himal.prasad.ghimiray@intel.com" moz-do-not-send="true">
              <span style="font-family:"Calibri",sans-serif;text-decoration:none">@Ghimiray,
                Himal Prasad</span></a><o:p></o:p></span></p>
        <p class="MsoNormal"><span style="mso-fareast-language:EN-US">What
            was the conclusion ?  Will XE team support this ? Sysman
            consumers use single KMD Config and they don’t have
            different configs for different use cases.
          </span></p>
      </div>
    </blockquote>
    <p>I discussed with Saikishore and He will check with XPUM E2E team
      for usages of L0 API which are programming exclusive mode.</p>
    <blockquote type="cite" cite="mid:PH0PR11MB5674E8EF849E5B47A847B70594E32@PH0PR11MB5674.namprd11.prod.outlook.com">
      <div class="WordSection1">
        <p class="MsoNormal"><span style="mso-fareast-language:EN-US"><o:p></o:p></span></p>
        <p class="MsoNormal"><span style="mso-fareast-language:EN-US"><o:p> </o:p></span></p>
        <p class="MsoNormal"><span style="mso-fareast-language:EN-US">Thanks<o:p></o:p></span></p>
        <p class="MsoNormal"><span style="mso-fareast-language:EN-US">SaiKishore<o:p></o:p></span></p>
        <p class="MsoNormal"><span style="mso-fareast-language:EN-US"><o:p> </o:p></span></p>
        <div>
          <div style="border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0cm 0cm 0cm">
            <p class="MsoNormal"><b><span lang="EN-US">From:</span></b><span lang="EN-US"> Ghimiray, Himal Prasad
                <a class="moz-txt-link-rfc2396E" href="mailto:himal.prasad.ghimiray@intel.com"><himal.prasad.ghimiray@intel.com></a>
                <br>
                <b>Sent:</b> Friday, May 10, 2024 3:14 PM<br>
                <b>To:</b> Joonas Lahtinen
                <a class="moz-txt-link-rfc2396E" href="mailto:joonas.lahtinen@linux.intel.com"><joonas.lahtinen@linux.intel.com></a>; De Marchi,
                Lucas <a class="moz-txt-link-rfc2396E" href="mailto:lucas.demarchi@intel.com"><lucas.demarchi@intel.com></a>; Brost, Matthew
                <a class="moz-txt-link-rfc2396E" href="mailto:matthew.brost@intel.com"><matthew.brost@intel.com></a>; Konda, SaiKishore
                <a class="moz-txt-link-rfc2396E" href="mailto:saikishore.konda@intel.com"><saikishore.konda@intel.com></a><br>
                <b>Cc:</b> <a class="moz-txt-link-abbreviated" href="mailto:intel-xe@lists.freedesktop.org">intel-xe@lists.freedesktop.org</a>; Upadhyay,
                Tejas <a class="moz-txt-link-rfc2396E" href="mailto:tejas.upadhyay@intel.com"><tejas.upadhyay@intel.com></a>; Siddiqui, Ayaz A
                <a class="moz-txt-link-rfc2396E" href="mailto:ayaz.siddiqui@intel.com"><ayaz.siddiqui@intel.com></a><br>
                <b>Subject:</b> Re: [PATCH] drm/xe: Modify minimum of
                various scheduler timeout to 0<o:p></o:p></span></p>
          </div>
        </div>
        <p class="MsoNormal"><o:p> </o:p></p>
        <div>
          <p class="MsoNormal"><o:p> </o:p></p>
        </div>
        <div class="MsoNormal" style="text-align:center" align="center">
          <hr width="98%" size="2" align="center">
        </div>
        <div id="divRplyFwdMsg">
          <p class="MsoNormal"><b><span style="color:black">From:</span></b><span style="color:black"> Joonas Lahtinen <<a href="mailto:joonas.lahtinen@linux.intel.com" moz-do-not-send="true" class="moz-txt-link-freetext">joonas.lahtinen@linux.intel.com</a>><br>
              <b>Sent:</b> Friday, May 10, 2024 2:39:56 PM<br>
              <b>To:</b> De Marchi, Lucas <<a href="mailto:lucas.demarchi@intel.com" moz-do-not-send="true" class="moz-txt-link-freetext">lucas.demarchi@intel.com</a>>;
              Brost, Matthew <<a href="mailto:matthew.brost@intel.com" moz-do-not-send="true" class="moz-txt-link-freetext">matthew.brost@intel.com</a>><br>
              <b>Cc:</b> Ghimiray, Himal Prasad <<a href="mailto:himal.prasad.ghimiray@intel.com" moz-do-not-send="true" class="moz-txt-link-freetext">himal.prasad.ghimiray@intel.com</a>>;
              <a href="mailto:intel-xe@lists.freedesktop.org" moz-do-not-send="true" class="moz-txt-link-freetext">intel-xe@lists.freedesktop.org</a>
              <<a href="mailto:intel-xe@lists.freedesktop.org" moz-do-not-send="true" class="moz-txt-link-freetext">intel-xe@lists.freedesktop.org</a>>;
              Upadhyay, Tejas <<a href="mailto:tejas.upadhyay@intel.com" moz-do-not-send="true" class="moz-txt-link-freetext">tejas.upadhyay@intel.com</a>><br>
              <b>Subject:</b> Re: [PATCH] drm/xe: Modify minimum of
              various scheduler timeout to 0</span>
            <o:p></o:p></p>
          <div>
            <p class="MsoNormal"> <o:p></o:p></p>
          </div>
        </div>
        <div>
          <div>
            <p class="MsoNormal">Quoting Matthew Brost (2024-05-09
              19:00:43)<br>
              > On Wed, May 08, 2024 at 08:06:52AM -0500, Lucas De
              Marchi wrote:<br>
              > > On Mon, May 06, 2024 at 07:04:47PM GMT, Himal
              Prasad Ghimiray wrote:<br>
              > > > Remove the min/max configs and change
              minimum values of preemption and<br>
              > > > timeslice to 0. The sysman teams must
              deactivate preemption and<br>
              > > > timeslice to assess exclusivity mode. They
              depend on configuring<br>
              > > > timeslice_duration_us and
              preempt_timeout_us to 0, ensuring these<br>
              > > > values are set at their minimum.<br>
              > > <br>
              > > nack for now, based on this explanation. See
              below.<br>
              > > <br>
              > > > <br>
              > > > Cc: Matthew Brost <<a href="mailto:matthew.brost@intel.com" moz-do-not-send="true" class="moz-txt-link-freetext">matthew.brost@intel.com</a>><br>
              > > > Cc: Tejas Upadhyay <<a href="mailto:tejas.upadhyay@intel.com" moz-do-not-send="true" class="moz-txt-link-freetext">tejas.upadhyay@intel.com</a>><br>
              > > > Cc: Joonas Lahtinen <<a href="mailto:joonas.lahtinen@linux.intel.com" moz-do-not-send="true" class="moz-txt-link-freetext">joonas.lahtinen@linux.intel.com</a>><br>
              > > > Signed-off-by: Himal Prasad Ghimiray <<a href="mailto:himal.prasad.ghimiray@intel.com" moz-do-not-send="true" class="moz-txt-link-freetext">himal.prasad.ghimiray@intel.com</a>><br>
              <br>
              <SNIP><br>
              <br>
              > > > +++ b/drivers/gpu/drm/xe/xe_hw_engine.h<br>
              > > > @@ -10,41 +10,17 @@<br>
              > > > <br>
              > > > struct drm_printer;<br>
              > > > <br>
              > > > -#ifdef CONFIG_DRM_XE_JOB_TIMEOUT_MIN<br>
              > > > -#define XE_HW_ENGINE_JOB_TIMEOUT_MIN
              CONFIG_DRM_XE_JOB_TIMEOUT_MIN<br>
              > > > -#else<br>
              > > > #define XE_HW_ENGINE_JOB_TIMEOUT_MIN 1<br>
              > > > -#endif<br>
              > > > -#ifdef CONFIG_DRM_XE_JOB_TIMEOUT_MAX<br>
              > > > -#define XE_HW_ENGINE_JOB_TIMEOUT_MAX
              CONFIG_DRM_XE_JOB_TIMEOUT_MAX<br>
              > > > -#else<br>
              > > > #define XE_HW_ENGINE_JOB_TIMEOUT_MAX (10 *
              1000)<br>
              > > <br>
              > > previously one could configure a kernel with a
              different max.<br>
              > > And now it's hardcoded. How is this better and
              related to the<br>
              > > motivation in the commit message?<br>
              > > <br>
              > > is this commit doing 2 different things?<br>
              > > <br>
              > > 1) Removing the _MAX from config since nobody is
              or should change that<br>
              > > 2) Modify the min value to 0... That seems weird
              as basically there is<br>
              > >    no minimum.<br>
              > <br>
              > This is true.<br>
              <br>
              Maybe I've missed some discussion but what is wrong with
              the previously<br>
              agreed approach where KConfig would determine hard
              _MIN/_MAX bounds<br>
              (and maybe _DEFAULT) that the kernel can work with, then
              there would be<br>
              sysfs min/max (+ default) which the sysadmin sets as
              comfortable with<br>
              considering the expected use-cases on the system and
              application then<br>
              choose within those bounds (if it wants expedited hang
              detection for an<br>
              example)?<br>
              <br>
              > > I'd like to hear Matt Brost's opinion on that.<br>
              > <br>
              > I chatted with Lucas and second his nack. The
              requirements for this<br>
              > change are coming from sysman and are unclear. If
              sysman needs to set<br>
              > this to 0 (akin to no maximum), why can't sysman
              build the kernel with a<br>
              > Kconfig to allow this? This use case appears to be an
              HPC/AI data center<br>
              > scenario in which the kernel is probably built with a
              non-standard<br>
              > Kconfig anyway. Why can't CONFIG_DRM_*_MIN be set to
              zero? This needs to<br>
              > be addressed clearly and publicly.<br>
              <br>
              I also thought we agreed on doing different build for such
              scenario<br>
              where the interactive desktop is not expected to be used,
              so larger<br>
              delays are more allowable.<br>
            </p>
          </div>
        </div>
      </div>
    </blockquote>
    <p>So you are proposing an server only build where it can be set to
      zero.</p>
    <p>Regards</p>
    <p>-Ayaz</p>
    <p><br>
    </p>
    <blockquote type="cite" cite="mid:PH0PR11MB5674E8EF849E5B47A847B70594E32@PH0PR11MB5674.namprd11.prod.outlook.com">
      <div class="WordSection1">
        <div>
          <div>
            <p class="MsoNormal">
              <br>
              The default build simply can't allow unlimited blocking of
              the HW by<br>
              certain workloads in order to make sure the
              desktop/compositor stays<br>
              operational. That can only be enabled by default build
              when the long-running<br>
              workloads can be isolated so they won't interfere with the
              workloads<br>
              using dma-fences. And I don't think that code exists yet.<br>
              <br>
              Sysman should be able to report a feature missing from the
              kernel if it<br>
              detects that it can't set the limits wanted. This can be
              reported to<br>
              user via error code and/or error message asking to install
              a different<br>
              kernel build.<br>
              <br>
              Same strategy has been applied in the past for various
              kernel features<br>
              like realtime/virtualization etc. <br>
              <br>
              Regards, Joonas<br>
              <br>
              > <br>
              > Matt<br>
              >  <br>
              > > <br>
              > > Lucas De Marchi<br>
              > > <br>
              > > > -#endif<br>
              > > > -#ifdef CONFIG_DRM_XE_TIMESLICE_MIN<br>
              > > > -#define XE_HW_ENGINE_TIMESLICE_MIN
              CONFIG_DRM_XE_TIMESLICE_MIN<br>
              > > > -#else<br>
              > > > -#define XE_HW_ENGINE_TIMESLICE_MIN 1<br>
              > > > -#endif<br>
              > > > -#ifdef CONFIG_DRM_XE_TIMESLICE_MAX<br>
              > > > -#define XE_HW_ENGINE_TIMESLICE_MAX
              CONFIG_DRM_XE_TIMESLICE_MAX<br>
              > > > -#else<br>
              > > > +#define XE_HW_ENGINE_TIMESLICE_MIN 0<br>
              > > > #define XE_HW_ENGINE_TIMESLICE_MAX (10 *
              1000 * 1000)<br>
              > > > -#endif<br>
              > > > #ifdef CONFIG_DRM_XE_PREEMPT_TIMEOUT<br>
              > > > #define XE_HW_ENGINE_PREEMPT_TIMEOUT
              CONFIG_DRM_XE_PREEMPT_TIMEOUT<br>
              > > > #else<br>
              > > > #define XE_HW_ENGINE_PREEMPT_TIMEOUT (640 *
              1000)<br>
              > > > #endif<br>
              > > > -#ifdef CONFIG_DRM_XE_PREEMPT_TIMEOUT_MIN<br>
              > > > -#define XE_HW_ENGINE_PREEMPT_TIMEOUT_MIN
              CONFIG_DRM_XE_PREEMPT_TIMEOUT_MIN<br>
              > > > -#else<br>
              > > > -#define XE_HW_ENGINE_PREEMPT_TIMEOUT_MIN 1<br>
              > > > -#endif<br>
              > > > -#ifdef CONFIG_DRM_XE_PREEMPT_TIMEOUT_MAX<br>
              > > > -#define XE_HW_ENGINE_PREEMPT_TIMEOUT_MAX
              CONFIG_DRM_XE_PREEMPT_TIMEOUT_MAX<br>
              > > > -#else<br>
              > > > +#define XE_HW_ENGINE_PREEMPT_TIMEOUT_MIN 0<br>
              > > > #define XE_HW_ENGINE_PREEMPT_TIMEOUT_MAX
              (10 * 1000 * 1000)<br>
              > > > -#endif<br>
              > > > <br>
              > > > int xe_hw_engines_init_early(struct xe_gt
              *gt);<br>
              > > > int xe_hw_engines_init(struct xe_gt *gt);<br>
              > > > -- <br>
              > > > 2.25.1<br>
              > > > <o:p></o:p></p>
          </div>
        </div>
      </div>
    </blockquote>
  </body>
  <lt-container></lt-container>
</html>