From: Dave Jiang <dave.jiang@intel.com>
To: Robert Richter <rrichter@amd.com>
Cc: <linux-cxl@vger.kernel.org>, <dan.j.williams@intel.com>,
<ira.weiny@intel.com>, <vishal.l.verma@intel.com>,
<alison.schofield@intel.com>, <Jonathan.Cameron@huawei.com>,
<dave@stgolabs.net>
Subject: Re: [PATCH v15 19/19] cxl: Check qos_class validity on memdev probe
Date: Thu, 4 Jan 2024 09:12:27 -0700 [thread overview]
Message-ID: <8848eea9-2dd4-4595-8b60-9966692fd927@intel.com> (raw)
In-Reply-To: <ZZawa1FIpYxcyW0O@rric.localdomain>
On 1/4/24 06:19, Robert Richter wrote:
> On 21.12.23 15:04:23, Dave Jiang wrote:
>
>> +static void discard_dpa_perf(struct list_head *list)
>> +{
>> + struct cxl_dpa_perf *dpa_perf, *n;
>> +
>> + list_for_each_entry_safe(dpa_perf, n, list, list) {
>> + list_del(&dpa_perf->list);
>> + kfree(dpa_perf);
>> + }
>> +}
>> +DEFINE_FREE(dpa_perf, struct list_head *, if (!list_empty(_T)) discard_dpa_perf(_T))
>> +
>> +static int cxl_qos_class_verify(struct cxl_memdev *cxlmd)
>> +{
>> + struct cxl_dev_state *cxlds = cxlmd->cxlds;
>> + struct cxl_memdev_state *mds = to_cxl_memdev_state(cxlds);
>> + struct cxl_port *root_port __free(put_device) = NULL;
>
> This one was hard to follow and I hope I am not missing something
> here, but isn't that finally calling:
>
> put_device((struct device *dev)root_port);
>
> And this only works due to:
>
> struct cxl_port {
> struct device dev;
> ...
> }
>
> with dev being the first member?
>
> This black magic at least deserves a comment in struct cxl_port.
>
> Better have a helper like put_cxl_port() or so.
Thanks Robert for pointing that out. See if this makes it better:
https://lore.kernel.org/linux-cxl/170438448564.3436708.17525645430052031684.stgit@djiang5-mobl3/
>
> -Robert
>
next prev parent reply other threads:[~2024-01-04 16:12 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-12-21 22:02 [PATCH v15 00/19] cxl: Add support for QTG ID retrieval for CXL subsystem Dave Jiang
2023-12-21 22:02 ` [PATCH v15 01/19] lib/firmware_table: tables: Add CDAT table parsing support Dave Jiang
2023-12-21 22:02 ` [PATCH v15 02/19] base/node / acpi: Change 'node_hmem_attrs' to 'access_coordinates' Dave Jiang
2023-12-21 22:02 ` [PATCH v15 03/19] acpi: numa: Create enum for memory_target access coordinates indexing Dave Jiang
2023-12-21 22:02 ` [PATCH v15 04/19] acpi: numa: Add genport target allocation to the HMAT parsing Dave Jiang
2023-12-21 22:02 ` [PATCH v15 05/19] acpi: Break out nesting for hmat_parse_locality() Dave Jiang
2023-12-21 22:03 ` [PATCH v15 06/19] acpi: numa: Add setting of generic port system locality attributes Dave Jiang
2023-12-21 22:03 ` [PATCH v15 07/19] acpi: numa: Add helper function to retrieve the performance attributes Dave Jiang
2023-12-21 22:03 ` [PATCH v15 08/19] cxl: Add callback to parse the DSMAS subtables from CDAT Dave Jiang
2023-12-21 22:03 ` [PATCH v15 09/19] cxl: Add callback to parse the DSLBIS subtable " Dave Jiang
2023-12-21 22:03 ` [PATCH v15 10/19] cxl: Add callback to parse the SSLBIS " Dave Jiang
2023-12-21 22:03 ` [PATCH v15 11/19] cxl: Add support for _DSM Function for retrieving QTG ID Dave Jiang
2023-12-21 22:03 ` [PATCH v15 12/19] cxl: Calculate and store PCI link latency for the downstream ports Dave Jiang
2023-12-22 23:31 ` Dan Williams
2023-12-21 22:03 ` [PATCH v15 13/19] tools/testing/cxl: Add hostbridge UID string for cxl_test mock hb devices Dave Jiang
2023-12-21 22:03 ` [PATCH v15 14/19] cxl: Store the access coordinates for the generic ports Dave Jiang
2023-12-21 22:03 ` [PATCH v15 15/19] cxl: Add helper function that calculate performance data for downstream ports Dave Jiang
2023-12-21 22:04 ` [PATCH v15 16/19] cxl: Compute the entire CXL path latency and bandwidth data Dave Jiang
2023-12-21 22:04 ` [PATCH v15 17/19] cxl: Store QTG IDs and related info to the CXL memory device context Dave Jiang
2023-12-21 22:04 ` [PATCH v15 18/19] cxl: Export sysfs attributes for memory device QoS class Dave Jiang
2023-12-21 22:04 ` [PATCH v15 19/19] cxl: Check qos_class validity on memdev probe Dave Jiang
2024-01-04 13:19 ` Robert Richter
2024-01-04 16:12 ` Dave Jiang [this message]
2023-12-29 0:04 ` [PATCH v15 00/19] cxl: Add support for QTG ID retrieval for CXL subsystem Bjorn Helgaas
2024-01-04 1:00 ` Dan Williams
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=8848eea9-2dd4-4595-8b60-9966692fd927@intel.com \
--to=dave.jiang@intel.com \
--cc=Jonathan.Cameron@huawei.com \
--cc=alison.schofield@intel.com \
--cc=dan.j.williams@intel.com \
--cc=dave@stgolabs.net \
--cc=ira.weiny@intel.com \
--cc=linux-cxl@vger.kernel.org \
--cc=rrichter@amd.com \
--cc=vishal.l.verma@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox