Re: [PATCH v4 1/4] ACPI: NHLT: Device configuration access interface

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Aug 9, 2023 at 11:48 AM Cezary Rojewski
<cezary.rojewski@xxxxxxxxx> wrote:
>
> On 2023-08-09 7:00 AM, andy.shevchenko@xxxxxxxxx wrote:
> > Fri, Jul 21, 2023 at 05:48:10PM +0200, Cezary Rojewski kirjoitti:
> >> Device configuration structures are plenty so declare a struct for each
> >> known variant. As neither of them shall be accessed without verifying
> >> the memory block first, introduce macros to make it easy to do so.
> >>
> >> Link: https://github.com/acpica/acpica/pull/881
> >
> > Thinking of this over night (as I replied in the above)...
> >
> >> Reviewed-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
> >
> > Sorry, but seems I have to retract my tag and even more, NAK to the ACPICA changes.
> >
> > I have thought that this is something new to the header there, but it appears that
> > it duplicates (in a wrong way in my opinion) existing data types.
> >
> > Existing data types are crafted (as far as I get them) in a way to be able to be
> > combined in the union. In the similar way how _CRS is parsed in DSDT (first that
> > comes to my mind). Hence that "simplification" is quite wrong in a few ways:
> > - it breaks ACPICA agreement on naming schema
> > - it duplicates existing data
> > - it made it even partially
> > - it is fine and correct in ACPICA to have long dereferenced data, again see
> >    for the union of acpi_object
> >
> > I trully believe now that the above change in ACPICA must be reverted.
> >
> > Again, sorry for this late bad news from my side. I have no clue why
> > it was merged, perhaps lack of review? Or anything subtle I so miserably
> > missed?
>
> First, you took the review seriously and provided a ton of valid
> feedback. And your reviews and expertise helped me grow as a developer,
> so from my perspective no need to sorry about spotting bad things late.
>
> Now, I admit, a bit surprised given the number of revisions and age of
> the initial patchset. The cover-letter, attached for each revision, made
> the intentions clear.

As you may notice I'm not against code that is done as a part of the
Linux kernel and my surprise is the ACPICA change. My focus for review
was a Linux kernel and it was just by a chance I looked at the PR on
GitHub. There is neither good explanation in the commit message nor
discussion of the change. What I probably miss (and that may help me
to understand better the change) are:
- the examples of the code snippets that are using data types before and after
- explanation why not all data types were covered (there are more
"strange" names like with _a, _b suffix)
- how this is supposed to be maintained as the ACPICA has users
outside of the kernel and how the change
 makes their life easier (to me it's the opposite).

> Our goal is to help actual users of NHLT i.e.:
> audio teams. While part of ACPICA, NHLT-code is hidden within sound/ so
> no one asks questions. Leaving things at status quo does not improve the
> situation.

What situation? To me it makes it worse. (Again, I'm talking solely
for ACPICA change, the rest I have reviewed and I am fine with the
direction taken.)

> Thus I believe simple "no" is not an option here. To make the
> code better overall, relevant pieces should be made part of drivers/acpi.
>
> Original problems stem from the fact that audio teams were not looped in
> during initial integration of NHLT-code. Turned out that no users
> utilize it in its current form. The problems are subtle, but a
> discussion wouldn't hurt.
>
> To avoid double posting, should we continue the discussion here or in
> the PR on github?

Let's do it there, as it's purely about ACPICA.
The kernel part will be affected depending on the result of the discussion.

-- 
With Best Regards,
Andy Shevchenko




[Index of Archives]     [Linux IBM ACPI]     [Linux Power Management]     [Linux Kernel]     [Linux Laptop]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]
  Powered by Linux