[prev in list] [next in list] [prev in thread] [next in thread] 

List:       fwts-devel
Subject:    Re: Issues in fadt check item?
From:       Alex Hung <alex.hung () canonical ! com>
Date:       2016-12-09 5:42:31
Message-ID: CAJ=jquZge3OSgSwGwxzgi1DcxJ6B3ERTeJFvmyn9BUppCgC3PQ () mail ! gmail ! com
[Download RAW message or body]

[Attachment #2 (multipart/alternative)]


FWTS source code is available @ git://kernel.ubuntu.com/hwe/fwts.git

On Thu, Dec 8, 2016 at 5:31 PM, Dong, Eric <eric.dong@intel.com> wrote:

> Hi Jeffrey,
>
>  I agree with your point. My change is not correct for the 6.1 spec.
>
> My proposal just based on the current code implementation, I think it's an
> obvious bug.  It reports failure at first when both addresses set. Then it
> checks whether both addresses are same, if so, it reports pass again. The
> result is not consistent, so I think this is an obvious bug.
>
> I can't find the git repository for the fwts code, so I use old/new
> format. Can you help to forward the link to me so I can propose new change
> for it.
>
> Thanks,
> Eric
>
> > -----Original Message-----
> > From: Jeffrey Hugo [mailto:jhugo@codeaurora.org]
> > Sent: Friday, December 09, 2016 12:45 AM
> > To: Dong, Eric; Alex Hung
> > Cc: fwts-devel@lists.ubuntu.com
> > Subject: Re: Issues in fadt check item?
> >
> > Yes, that is new language with 6.1, but it was added as a clarification.
> >   The original language indicated the X_ (extended) fields superseded
> > the original fields.  This is very common with the ACPI spec.  A lot of
> > the original functionality, particularly in FADT, is 32-bit specific and
> > provides no mechanism to support 64-bit platforms.  In-order to support
> > 64-bit, new fields were added to the spec, with the intent that the new
> > fields would replace the old fields on applicable targets, while the old
> > fields would remain for backwards compatibility.
> >
> > This is aligned with the dictionary definition of superseded - "take the
> > place of (a person or thing previously in authority or use); supplant."
> >
> > Apparently the original language was not clear enough to indicate only
> > one set of fields should be used (how do you wedge a 64-bit value in a
> > 32-bit field?) so it was clarified in 6.1.
> >
> > So while the language in 6.1 is new, it still says the same thing in
> > regards to the use and intent of the fields.
> >
> > Concerning your proposed changes -
> >
> > FYI a patch file from "git format-patch" tends to be the most convenient
> > way to review code changes. You can use "git send-email" to send that
> > directly to the list without having to figure out attachments, etc.
> >
> > I'm not in favor of the proposed code change.  The FADT test could be
> > improved, but I don't think your current proposal is the right way to do
> > so.  You haven't stated explicitly, but I infer you are trying to get
> > the test to pass on some FADT table that provides a 32-bit address in
> > both fields.  While that was never intended, it could be argued it could
> > be valid in pre-6.1 specs.
> >
> > The problem I see with your code change is that it removes the
> > conditions set by the 6.1 version of the spec.  As Alex stated, new
> > platforms should really conform to the latest spec version if possible,
> > but I see some value in using FWTS to test older platform for long term
> > support, etc.
> >
> > If you want to improve the test, my recommendation would be to have it
> > look at the ACPI spec version in the FADT table, and apply the correct
> > tests based on that.  IE platforms advertising compliance with 6.0 or
> > earlier are allowed to specify both values, so long as the values match,
> > and advice is printed indicating that is not recommend.  Platforms
> > advertising compliance with 6.1 or newer will fail if they use both
> fields.
> >
> > If you go about proposing such changes, I would prefer to see updates to
> > all applicable tests, and not just the pm_cnt_blk test.
> >
> > On 12/7/2016 5:44 PM, Dong, Eric wrote:
> > > Hi Alex & Jeffrey,
> > >
> > >
> > >
> > > Thanks for your comments, I don't aware my mark solution not work in
> > > this mail list. Attach my change code for you to reference. I think the
> > > old code logic not consistent.  PS: 12345678
> > >
> > >
> > >
> > > I missed the latest 6.1 spec, I just check the 6.0 spec and not found
> > > this sentence. "If the X_PM1b_CNT_BLK field contains a non-zero value
> > > then this field must be zero." This is new added for 6.1 spec.
> > >
> > >
> > >
> > > Thanks,
> > >
> > > Eric
> > >
> > > *From:*Alex Hung [mailto:alex.hung@canonical.com]
> > > *Sent:* Thursday, December 08, 2016 1:38 AM
> > > *To:* Jeffrey Hugo
> > > *Cc:* Dong, Eric; fwts-devel@lists.ubuntu.com
> > > *Subject:* Re: Issues in fadt check item?
> > >
> > >
> > >
> > > I agree with Jeffrey that's actually not a fix: ACPI 6.1 explicitly
> > > states PM1b_CNT_BLK to meet "If the X_PM1b_CNT_BLK field contains a
> > > non-zero value then this field must be zero." The same also applies to
> > > PM2_CNT_BLK.
> > >
> > > Many systems are shipped before ACPI 6.1's release, and this failure is
> > > odd for them.  I think it is a case this error can be ignored.
> However,
> > > you should try to meet ACPI 6.1 spec if a target system is being
> developed.
> > >
> > >
> > >
> > > On Wed, Dec 7, 2016 at 7:36 AM, Jeffrey Hugo <jhugo@codeaurora.org
> > > <mailto:jhugo@codeaurora.org>> wrote:
> > >
> > > Hi Eric
> > >
> > >
> > >
> > > On 12/7/2016 5:51 AM, Dong, Eric wrote:
> > >
> > > Hi,
> > >
> > >
> > >
> > > When I use fwts to check uefi bios code, it reports some issues related
> > > to fadt check item. After check the uefi code and acpi spec, I didn't
> > > find error for uefi code. So I download fwts code (fwts_16.11.00) and i
> > > think some bugs in the fadt check item.
> > >
> > > One issue like below:
> > >
> > > static void acpi_table_check_fadt_pm2_cnt_blk(fwts_framework *fw)
> > >
> > > {
> > >
> > >                 if (fadt->pm2_cnt_blk == 0 && fadt->header.length <
> 208) {
> > >
> > >                                 fwts_skipped(fw, "FADT PM2_CNT_BLK not
> > > being used.");
> > >
> > >                                 return;
> > >
> > >                 }
> > >
> > >
> > >
> > >                 if (fadt->pm2_cnt_blk == 0 &&
> > > fadt->x_pm2_cnt_blk.address == 0) {
> > >
> > >                                 fwts_skipped(fw, "FADT PM2_CNT_BLK not
> > > being used.");
> > >
> > >                                 return;
> > >
> > >                 }
> > >
> > >
> > >
> > >                 if ((fadt->pm2_cnt_blk != 0 &&
> > > fadt->x_pm2_cnt_blk.address == 0) ||
> > >
> > >                     (fadt->pm2_cnt_blk == 0 &&
> > > fadt->x_pm2_cnt_blk.address != 0))
> > >
> > >                                 fwts_passed(fw,
> > >
> > >                                                     "FADT only one of
> > > the 32-bit or 64-bit "
> > >
> > >                                                     "PM2_CNT_BLK fields
> > > is being used.");
> > >
> > >                 else
> > >
> > >                                 fwts_failed(fw, LOG_LEVEL_MEDIUM,
> > >
> > >
> > > "FADTPm2CntBlkOnlyOneField",
> > >
> > >                                                     "FADT PM2_CNT_BLK
> > > field has both the 32-bit "
> > >
> > >                                                     "and the 64-bit
> > > field set.");
> > >
> > >                 {
> > >
> > >                 if ((uint64_t)fadt->pm2_cnt_blk ==
> > > fadt->x_pm2_cnt_blk.address) {
> > >
> > >                                 fwts_passed(fw,
> > >
> > >                                                     "FADT 32- and
> 64-bit
> > > PM2_CNT_BLK fields are "
> > >
> > >                                                     "at least equal.");
> > >
> > >                                 fwts_advice(fw,
> > >
> > >                                                     "Both FADT 32- and
> > > 64-bit PM2_CNT_BLK "
> > >
> > >                                                     "fields are being
> > > used, but only one should be "
> > >
> > >                                                     "non-zero.
> However,
> > > they are at least equal so "
> > >
> > >                                                     "the kernel will at
> > > least have a usable value.");
> > >
> > >                 } else {
> > >
> > >                                 fwts_failed(fw, LOG_LEVEL_MEDIUM,
> > >
> > >
>  "FADTPm2CntBlkNotSet",
> > >
> > >                                                     "FADT PM2_CNT_BLK
> is
> > > a required field and must "
> > >
> > >                                                     "have either a
> > > 32-bit or 64-bit address set.");
> > >
> > >                                 fwts_advice(fw,
> > >
> > >                                                     "Both FADT 32- and
> > > 64-bit PM2_CNT_BLK "
> > >
> > >                                                     "fields are being
> > > used, but only one should be "
> > >
> > >                                                     "non-zero.  Since
> > > the fields value are not equal "
> > >
> > >                                                     "the kernel cannot
> > > unambiguously determine which "
> > >
> > >                                                     "value is the
> > > correct one.");
> > >
> > >                 }
> > >
> > > }
> > >
> > > }
> > >
> > >
> > >
> > > I think the fix is: remove the red mark code and add green mark code.
> > > what do you think?
> > >
> > >
> > >
> > > I'm curious, can you describe the scenario or scenarios in which you
> > > feel the current code fails?
> > >
> > > Having looked at the ACPI spec and the code you've identified in your
> > > mail, I don't yet see an issue with the current code that you've
> > > identified, and I actually think your "fix" is incorrect at this time.
> > >
> > >
> > >
> > > Thanks,
> > >
> > > Eric
> > >
> > >
> > >
> > > --
> > > Jeffrey Hugo
> > > Qualcomm Datacenter Technologies as an affiliate of Qualcomm
> > > Technologies, Inc.
> > > Qualcomm Technologies, Inc. is a member of the
> > > Code Aurora Forum, a Linux Foundation Collaborative Project.
> > >
> > > --
> > > fwts-devel mailing list
> > > fwts-devel@lists.ubuntu.com <mailto:fwts-devel@lists.ubuntu.com>
> > > Modify settings or unsubscribe at:
> > > https://lists.ubuntu.com/mailman/listinfo/fwts-devel
> > >
> > >
> > >
> > >
> > > --
> > >
> > > Cheers,
> > > Alex Hung
> > >
> >
> >
> > --
> > Jeffrey Hugo
> > Qualcomm Datacenter Technologies as an affiliate of Qualcomm
> > Technologies, Inc.
> > Qualcomm Technologies, Inc. is a member of the
> > Code Aurora Forum, a Linux Foundation Collaborative Project.
>



-- 
Cheers,
Alex Hung

[Attachment #5 (text/html)]

<div dir="ltr"><div class="gmail_default" style="font-family:verdana,sans-serif">FWTS \
source code is available @ git://<a \
href="http://kernel.ubuntu.com/hwe/fwts.git">kernel.ubuntu.com/hwe/fwts.git</a></div></div><div \
class="gmail_extra"><br><div class="gmail_quote">On Thu, Dec 8, 2016 at 5:31 PM, \
Dong, Eric <span dir="ltr">&lt;<a href="mailto:eric.dong@intel.com" \
target="_blank">eric.dong@intel.com</a>&gt;</span> wrote:<br><blockquote \
class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc \
solid;padding-left:1ex">Hi Jeffrey,<br> <br>
  I agree with your point. My change is not correct for the 6.1 spec.<br>
<br>
My proposal just based on the current code implementation, I think it&#39;s an \
obvious bug.   It reports failure at first when both addresses set. Then it checks \
whether both addresses are same, if so, it reports pass again. The result is not \
consistent, so I think this is an obvious bug.<br> <br>
I can&#39;t find the git repository for the fwts code, so I use old/new format. Can \
you help to forward the link to me so I can propose new change for it.<br> <br>
Thanks,<br>
Eric<br>
<div class="HOEnZb"><div class="h5"><br>
&gt; -----Original Message-----<br>
&gt; From: Jeffrey Hugo [mailto:<a \
href="mailto:jhugo@codeaurora.org">jhugo@codeaurora.org</a>]<br> &gt; Sent: Friday, \
December 09, 2016 12:45 AM<br> &gt; To: Dong, Eric; Alex Hung<br>
&gt; Cc: <a href="mailto:fwts-devel@lists.ubuntu.com">fwts-devel@lists.ubuntu.com</a><br>
 &gt; Subject: Re: Issues in fadt check item?<br>
&gt;<br>
&gt; Yes, that is new language with 6.1, but it was added as a clarification.<br>
&gt;     The original language indicated the X_ (extended) fields superseded<br>
&gt; the original fields.   This is very common with the ACPI spec.   A lot of<br>
&gt; the original functionality, particularly in FADT, is 32-bit specific and<br>
&gt; provides no mechanism to support 64-bit platforms.   In-order to support<br>
&gt; 64-bit, new fields were added to the spec, with the intent that the new<br>
&gt; fields would replace the old fields on applicable targets, while the old<br>
&gt; fields would remain for backwards compatibility.<br>
&gt;<br>
&gt; This is aligned with the dictionary definition of superseded - &quot;take \
the<br> &gt; place of (a person or thing previously in authority or use); \
supplant.&quot;<br> &gt;<br>
&gt; Apparently the original language was not clear enough to indicate only<br>
&gt; one set of fields should be used (how do you wedge a 64-bit value in a<br>
&gt; 32-bit field?) so it was clarified in 6.1.<br>
&gt;<br>
&gt; So while the language in 6.1 is new, it still says the same thing in<br>
&gt; regards to the use and intent of the fields.<br>
&gt;<br>
&gt; Concerning your proposed changes -<br>
&gt;<br>
&gt; FYI a patch file from &quot;git format-patch&quot; tends to be the most \
convenient<br> &gt; way to review code changes. You can use &quot;git \
send-email&quot; to send that<br> &gt; directly to the list without having to figure \
out attachments, etc.<br> &gt;<br>
&gt; I&#39;m not in favor of the proposed code change.   The FADT test could be<br>
&gt; improved, but I don&#39;t think your current proposal is the right way to do<br>
&gt; so.   You haven&#39;t stated explicitly, but I infer you are trying to get<br>
&gt; the test to pass on some FADT table that provides a 32-bit address in<br>
&gt; both fields.   While that was never intended, it could be argued it could<br>
&gt; be valid in pre-6.1 specs.<br>
&gt;<br>
&gt; The problem I see with your code change is that it removes the<br>
&gt; conditions set by the 6.1 version of the spec.   As Alex stated, new<br>
&gt; platforms should really conform to the latest spec version if possible,<br>
&gt; but I see some value in using FWTS to test older platform for long term<br>
&gt; support, etc.<br>
&gt;<br>
&gt; If you want to improve the test, my recommendation would be to have it<br>
&gt; look at the ACPI spec version in the FADT table, and apply the correct<br>
&gt; tests based on that.   IE platforms advertising compliance with 6.0 or<br>
&gt; earlier are allowed to specify both values, so long as the values match,<br>
&gt; and advice is printed indicating that is not recommend.   Platforms<br>
&gt; advertising compliance with 6.1 or newer will fail if they use both fields.<br>
&gt;<br>
&gt; If you go about proposing such changes, I would prefer to see updates to<br>
&gt; all applicable tests, and not just the pm_cnt_blk test.<br>
&gt;<br>
&gt; On 12/7/2016 5:44 PM, Dong, Eric wrote:<br>
&gt; &gt; Hi Alex &amp; Jeffrey,<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt; Thanks for your comments, I don't aware my mark solution not work in<br>
&gt; &gt; this mail list. Attach my change code for you to reference. I think the<br>
&gt; &gt; old code logic not consistent.   PS: 12345678<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt; I missed the latest 6.1 spec, I just check the 6.0 spec and not found<br>
&gt; &gt; this sentence. &quot;If the X_PM1b_CNT_BLK field contains a non-zero \
value<br> &gt; &gt; then this field must be zero.&quot; This is new added for 6.1 \
spec.<br> &gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt; Thanks,<br>
&gt; &gt;<br>
&gt; &gt; Eric<br>
&gt; &gt;<br>
&gt; &gt; *From:*Alex Hung [mailto:<a \
href="mailto:alex.hung@canonical.com">alex.hung@canonical.<wbr>com</a>]<br> &gt; &gt; \
*Sent:* Thursday, December 08, 2016 1:38 AM<br> &gt; &gt; *To:* Jeffrey Hugo<br>
&gt; &gt; *Cc:* Dong, Eric; <a \
href="mailto:fwts-devel@lists.ubuntu.com">fwts-devel@lists.ubuntu.com</a><br> &gt; \
&gt; *Subject:* Re: Issues in fadt check item?<br> &gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt; I agree with Jeffrey that&#39;s actually not a fix: ACPI 6.1 explicitly<br>
&gt; &gt; states PM1b_CNT_BLK to meet &quot;If the X_PM1b_CNT_BLK field contains \
a<br> &gt; &gt; non-zero value then this field must be zero.&quot; The same also \
applies to<br> &gt; &gt; PM2_CNT_BLK.<br>
&gt; &gt;<br>
&gt; &gt; Many systems are shipped before ACPI 6.1&#39;s release, and this failure \
is<br> &gt; &gt; odd for them.   I think it is a case this error can be ignored.   \
However,<br> &gt; &gt; you should try to meet ACPI 6.1 spec if a target system is \
being developed.<br> &gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt; On Wed, Dec 7, 2016 at 7:36 AM, Jeffrey Hugo &lt;<a \
href="mailto:jhugo@codeaurora.org">jhugo@codeaurora.org</a><br> &gt; &gt; \
&lt;mailto:<a href="mailto:jhugo@codeaurora.org">jhugo@codeaurora.org</a>&gt;&gt; \
wrote:<br> &gt; &gt;<br>
&gt; &gt; Hi Eric<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt; On 12/7/2016 5:51 AM, Dong, Eric wrote:<br>
&gt; &gt;<br>
&gt; &gt; Hi,<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt; When I use fwts to check uefi bios code, it reports some issues related<br>
&gt; &gt; to fadt check item. After check the uefi code and acpi spec, I didn't<br>
&gt; &gt; find error for uefi code. So I download fwts code (fwts_16.11.00) and i<br>
&gt; &gt; think some bugs in the fadt check item.<br>
&gt; &gt;<br>
&gt; &gt; One issue like below:<br>
&gt; &gt;<br>
&gt; &gt; static void acpi_table_check_fadt_pm2_cnt_<wbr>blk(fwts_framework *fw)<br>
&gt; &gt;<br>
&gt; &gt; {<br>
&gt; &gt;<br>
&gt; &gt;                          if (fadt-&gt;pm2_cnt_blk == 0 &amp;&amp; \
fadt-&gt;header.length &lt; 208) {<br> &gt; &gt;<br>
&gt; &gt;                                                  fwts_skipped(fw, \
&quot;FADT PM2_CNT_BLK not<br> &gt; &gt; being used.&quot;);<br>
&gt; &gt;<br>
&gt; &gt;                                                  return;<br>
&gt; &gt;<br>
&gt; &gt;                          }<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt;                          if (fadt-&gt;pm2_cnt_blk == 0 &amp;&amp;<br>
&gt; &gt; fadt-&gt;x_pm2_cnt_blk.address == 0) {<br>
&gt; &gt;<br>
&gt; &gt;                                                  fwts_skipped(fw, \
&quot;FADT PM2_CNT_BLK not<br> &gt; &gt; being used.&quot;);<br>
&gt; &gt;<br>
&gt; &gt;                                                  return;<br>
&gt; &gt;<br>
&gt; &gt;                          }<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt;                          if ((fadt-&gt;pm2_cnt_blk != 0 &amp;&amp;<br>
&gt; &gt; fadt-&gt;x_pm2_cnt_blk.address == 0) ||<br>
&gt; &gt;<br>
&gt; &gt;                                (fadt-&gt;pm2_cnt_blk == 0 &amp;&amp;<br>
&gt; &gt; fadt-&gt;x_pm2_cnt_blk.address != 0))<br>
&gt; &gt;<br>
&gt; &gt;                                                  fwts_passed(fw,<br>
&gt; &gt;<br>
&gt; &gt;                                                                             \
&quot;FADT only one of<br> &gt; &gt; the 32-bit or 64-bit &quot;<br>
&gt; &gt;<br>
&gt; &gt;                                                                             \
&quot;PM2_CNT_BLK fields<br> &gt; &gt; is being used.&quot;);<br>
&gt; &gt;<br>
&gt; &gt;                          else<br>
&gt; &gt;<br>
&gt; &gt;                                                  fwts_failed(fw, \
LOG_LEVEL_MEDIUM,<br> &gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt; &quot;FADTPm2CntBlkOnlyOneField&quot;,<br>
&gt; &gt;<br>
&gt; &gt;                                                                             \
&quot;FADT PM2_CNT_BLK<br> &gt; &gt; field has both the 32-bit &quot;<br>
&gt; &gt;<br>
&gt; &gt;                                                                             \
&quot;and the 64-bit<br> &gt; &gt; field set.&quot;);<br>
&gt; &gt;<br>
&gt; &gt;                          {<br>
&gt; &gt;<br>
&gt; &gt;                          if ((uint64_t)fadt-&gt;pm2_cnt_blk ==<br>
&gt; &gt; fadt-&gt;x_pm2_cnt_blk.address) {<br>
&gt; &gt;<br>
&gt; &gt;                                                  fwts_passed(fw,<br>
&gt; &gt;<br>
&gt; &gt;                                                                             \
&quot;FADT 32- and 64-bit<br> &gt; &gt; PM2_CNT_BLK fields are &quot;<br>
&gt; &gt;<br>
&gt; &gt;                                                                             \
&quot;at least equal.&quot;);<br> &gt; &gt;<br>
&gt; &gt;                                                  fwts_advice(fw,<br>
&gt; &gt;<br>
&gt; &gt;                                                                             \
&quot;Both FADT 32- and<br> &gt; &gt; 64-bit PM2_CNT_BLK &quot;<br>
&gt; &gt;<br>
&gt; &gt;                                                                             \
&quot;fields are being<br> &gt; &gt; used, but only one should be &quot;<br>
&gt; &gt;<br>
&gt; &gt;                                                                             \
&quot;non-zero.   However,<br> &gt; &gt; they are at least equal so &quot;<br>
&gt; &gt;<br>
&gt; &gt;                                                                             \
&quot;the kernel will at<br> &gt; &gt; least have a usable value.&quot;);<br>
&gt; &gt;<br>
&gt; &gt;                          } else {<br>
&gt; &gt;<br>
&gt; &gt;                                                  fwts_failed(fw, \
LOG_LEVEL_MEDIUM,<br> &gt; &gt;<br>
&gt; &gt;                                                                             \
&quot;FADTPm2CntBlkNotSet&quot;,<br> &gt; &gt;<br>
&gt; &gt;                                                                             \
&quot;FADT PM2_CNT_BLK is<br> &gt; &gt; a required field and must &quot;<br>
&gt; &gt;<br>
&gt; &gt;                                                                             \
&quot;have either a<br> &gt; &gt; 32-bit or 64-bit address set.&quot;);<br>
&gt; &gt;<br>
&gt; &gt;                                                  fwts_advice(fw,<br>
&gt; &gt;<br>
&gt; &gt;                                                                             \
&quot;Both FADT 32- and<br> &gt; &gt; 64-bit PM2_CNT_BLK &quot;<br>
&gt; &gt;<br>
&gt; &gt;                                                                             \
&quot;fields are being<br> &gt; &gt; used, but only one should be &quot;<br>
&gt; &gt;<br>
&gt; &gt;                                                                             \
&quot;non-zero.   Since<br> &gt; &gt; the fields value are not equal &quot;<br>
&gt; &gt;<br>
&gt; &gt;                                                                             \
&quot;the kernel cannot<br> &gt; &gt; unambiguously determine which &quot;<br>
&gt; &gt;<br>
&gt; &gt;                                                                             \
&quot;value is the<br> &gt; &gt; correct one.&quot;);<br>
&gt; &gt;<br>
&gt; &gt;                          }<br>
&gt; &gt;<br>
&gt; &gt; }<br>
&gt; &gt;<br>
&gt; &gt; }<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt; I think the fix is: remove the red mark code and add green mark code.<br>
&gt; &gt; what do you think?<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt; I&#39;m curious, can you describe the scenario or scenarios in which \
you<br> &gt; &gt; feel the current code fails?<br>
&gt; &gt;<br>
&gt; &gt; Having looked at the ACPI spec and the code you&#39;ve identified in \
your<br> &gt; &gt; mail, I don&#39;t yet see an issue with the current code that \
you&#39;ve<br> &gt; &gt; identified, and I actually think your &quot;fix&quot; is \
incorrect at this time.<br> &gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt; Thanks,<br>
&gt; &gt;<br>
&gt; &gt; Eric<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt; --<br>
&gt; &gt; Jeffrey Hugo<br>
&gt; &gt; Qualcomm Datacenter Technologies as an affiliate of Qualcomm<br>
&gt; &gt; Technologies, Inc.<br>
&gt; &gt; Qualcomm Technologies, Inc. is a member of the<br>
&gt; &gt; Code Aurora Forum, a Linux Foundation Collaborative Project.<br>
&gt; &gt;<br>
&gt; &gt; --<br>
&gt; &gt; fwts-devel mailing list<br>
&gt; &gt; <a href="mailto:fwts-devel@lists.ubuntu.com">fwts-devel@lists.ubuntu.com</a> \
&lt;mailto:<a href="mailto:fwts-devel@lists.ubuntu.com">fwts-devel@lists.<wbr>ubuntu.com</a>&gt;<br>
 &gt; &gt; Modify settings or unsubscribe at:<br>
&gt; &gt; <a href="https://lists.ubuntu.com/mailman/listinfo/fwts-devel" \
rel="noreferrer" target="_blank">https://lists.ubuntu.com/<wbr>mailman/listinfo/fwts-devel</a><br>
 &gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt; --<br>
&gt; &gt;<br>
&gt; &gt; Cheers,<br>
&gt; &gt; Alex Hung<br>
&gt; &gt;<br>
&gt;<br>
&gt;<br>
&gt; --<br>
&gt; Jeffrey Hugo<br>
&gt; Qualcomm Datacenter Technologies as an affiliate of Qualcomm<br>
&gt; Technologies, Inc.<br>
&gt; Qualcomm Technologies, Inc. is a member of the<br>
&gt; Code Aurora Forum, a Linux Foundation Collaborative Project.<br>
</div></div></blockquote></div><br><br clear="all"><div><br></div>-- <br><div \
class="gmail_signature" data-smartmail="gmail_signature"><div \
dir="ltr">Cheers,<br>Alex Hung<br></div></div> </div>



-- 
fwts-devel mailing list
fwts-devel@lists.ubuntu.com
Modify settings or unsubscribe at: https://lists.ubuntu.com/mailman/listinfo/fwts-devel


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic