All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ira Weiny <ira.weiny@intel.com>
To: Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
	<nvdimm@lists.linux.dev>, <linux-kernel@vger.kernel.org>
Cc: Dan Williams <dan.j.williams@intel.com>,
	Vishal Verma <vishal.l.verma@intel.com>,
	Dave Jiang <dave.jiang@intel.com>,
	Ira Weiny <ira.weiny@intel.com>
Subject: Re: [PATCH v1 1/1] libnvdimm: Don't use "proxy" headers
Date: Thu, 26 Jun 2025 16:39:07 -0500	[thread overview]
Message-ID: <685dbdfb80651_2ce8302947e@iweiny-mobl.notmuch> (raw)
In-Reply-To: <20250626153523.323447-1-andriy.shevchenko@linux.intel.com>

Andy Shevchenko wrote:
> Update header inclusions to follow IWYU (Include What You Use)
> principle.
> 
> Note that kernel.h is discouraged to be included as it's written
> at the top of that file.
> 
> While doing that, sort headers alphabetically.
> 
> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
> ---
>  include/linux/libnvdimm.h | 13 ++++++++-----
>  1 file changed, 8 insertions(+), 5 deletions(-)
> 
> diff --git a/include/linux/libnvdimm.h b/include/linux/libnvdimm.h
> index e772aae71843..dce8787fba53 100644
> --- a/include/linux/libnvdimm.h
> +++ b/include/linux/libnvdimm.h
> @@ -6,12 +6,12 @@
>   */
>  #ifndef __LIBNVDIMM_H__
>  #define __LIBNVDIMM_H__
> -#include <linux/kernel.h>
> +
> +#include <linux/ioport.h>

If we are going in this direction why include ioport vs forward declaring
struct resource?

>  #include <linux/sizes.h>
> +#include <linux/spinlock.h>
>  #include <linux/types.h>
>  #include <linux/uuid.h>
> -#include <linux/spinlock.h>
> -#include <linux/bio.h>

I'm leaning toward including bio, module, and sysfs rather than do the
forward declarations.

Are forward declarations preferred these days?

Ira

>  
>  struct badrange_entry {
>  	u64 start;
> @@ -80,7 +80,9 @@ typedef int (*ndctl_fn)(struct nvdimm_bus_descriptor *nd_desc,
>  		struct nvdimm *nvdimm, unsigned int cmd, void *buf,
>  		unsigned int buf_len, int *cmd_rc);
>  
> +struct attribute_group;
>  struct device_node;
> +struct module;
>  struct nvdimm_bus_descriptor {
>  	const struct attribute_group **attr_groups;
>  	unsigned long cmd_mask;
> @@ -121,6 +123,7 @@ struct nd_mapping_desc {
>  	int position;
>  };
>  
> +struct bio;
>  struct nd_region;
>  struct nd_region_desc {
>  	struct resource *res;
> @@ -147,8 +150,6 @@ static inline void __iomem *devm_nvdimm_ioremap(struct device *dev,
>  	return (void __iomem *) devm_nvdimm_memremap(dev, offset, size, 0);
>  }
>  
> -struct nvdimm_bus;
> -
>  /*
>   * Note that separate bits for locked + unlocked are defined so that
>   * 'flags == 0' corresponds to an error / not-supported state.
> @@ -238,6 +239,8 @@ struct nvdimm_fw_ops {
>  	int (*arm)(struct nvdimm *nvdimm, enum nvdimm_fwa_trigger arg);
>  };
>  
> +struct nvdimm_bus;
> +
>  void badrange_init(struct badrange *badrange);
>  int badrange_add(struct badrange *badrange, u64 addr, u64 length);
>  void badrange_forget(struct badrange *badrange, phys_addr_t start,
> -- 
> 2.47.2
> 



  reply	other threads:[~2025-06-26 21:37 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-06-26 15:35 [PATCH v1 1/1] libnvdimm: Don't use "proxy" headers Andy Shevchenko
2025-06-26 21:39 ` Ira Weiny [this message]
2025-06-26 21:56   ` Andy Shevchenko

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=685dbdfb80651_2ce8302947e@iweiny-mobl.notmuch \
    --to=ira.weiny@intel.com \
    --cc=andriy.shevchenko@linux.intel.com \
    --cc=dan.j.williams@intel.com \
    --cc=dave.jiang@intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=nvdimm@lists.linux.dev \
    --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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.