From: Matti Vaittinen <mazziesaccount@gmail.com>
To: Jonathan Cameron <jic23@kernel.org>,
Andy Shevchenko <andriy.shevchenko@intel.com>
Cc: linux-iio@vger.kernel.org, "Nuno Sá" <nuno.sa@analog.com>,
"Andy Shevchenko" <andy@kernel.org>,
"David Lechner" <dlechner@baylibre.com>,
"Jonathan Cameron" <Jonathan.Cameron@huawei.com>
Subject: Re: [PATCH] iio: accel: kionix-kx022a: Apply approximate iwyu principles to includes
Date: Thu, 10 Jul 2025 09:53:01 +0300 [thread overview]
Message-ID: <058aabd0-e2f7-43d3-a91c-9c2baa382a69@gmail.com> (raw)
In-Reply-To: <20250706181322.3ef4d3c0@jic23-huawei>
On 06/07/2025 20:13, Jonathan Cameron wrote:
> On Mon, 30 Jun 2025 13:40:32 +0300
> Andy Shevchenko <andriy.shevchenko@intel.com> wrote:
>
>> On Sun, Jun 29, 2025 at 07:36:49PM +0100, Jonathan Cameron wrote:
>>> From: Jonathan Cameron <Jonathan.Cameron@huawei.com>
>>>
>>> Motivated by the W=1 warning about export.h that was introduced this cycle
>>> this is an attempt to apply an approximation of the principles of including
>>> whatever is used in the file directly.
>>>
>>> Helped by the include-what-you-use tool.
>>>
>>> Reasoning:
>>> - Drop linux/moduleparam.h as completely unused.
>>> - linux/array_size.h for ARRAY_SIZE()
>>> - linux/bitmap.h for for_each_set_bit
>>> - linux/errno.h for error codes.
>>> - linux/export.h for EXPORT_SYMBOL*()
>>> - linux/math64.h for do_div - alternative would be asm/div64.h
>>> - linux/minmax.h for min()
>>> - linux/sysfs.h for sysfs_emit()
>>> - linux/time64.h for USEC_PER_MSEC
>>> - linux/iio/buffer.h for iio_push_to_buffers_with_timestamp()
>>> - asm/byteorder.h for le16_to_cpu()
>>>
>>> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
>>> ---
>>>
>>> I picked this one fairly randomly as an example but longer term I'd like
>>> to look through at least all new drivers with this in mind + all the ones
>>> that are currently messing up my W=1 build logs.
>>>
>>> Note I've been very descriptive in this patch to allow people to suggest
>>> better alternatives for some of the ones that aren't entirely obvious.
>>
>> Thanks for trying it again, very much appreciated!
>>
>> What we actually miss is the database (in any text-based format, even *.d would
>> work I suppose) for the guarantees. For example, if code uses ERR_PTR() and at
>> the same time (very likely) uses something like -EINVAL, the errno.h is implied
>> (and guaranteed!) by err.h. Explicit errno.h is in two cases: 1) nothing is used
>> from err.h, but errno.h; 2) Linux special error codes are in use, e.g. EPROBE_DEFER.
>>
>> Next, what I would really start with is the kernel.h. this is the beast that is
>> happening in many files and old snippets all over the internet, it would be nice
>> to clean it sooner than later. Especially if it's in the headers (should not be
>> as written at the top of that file). So, hence just a priority for these cleanups
>> first.
>>
> Those W=1 warnings are driving me mad, so I'll drive this from point of view
> of cleaning those up. Will sweep around doing others later.
>
> Speaking of which lots of discussion about how to do this - anyone fancy
> giving me a review for this actual patch? :)
>
Sorry, it has been the holiday season for me ;) And still is - until
August. Well, it's already applied - but still wanted to say it looks
very good to me!
Yours,
-- Matti
next prev parent reply other threads:[~2025-07-10 6:53 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-06-29 18:36 [PATCH] iio: accel: kionix-kx022a: Apply approximate iwyu principles to includes Jonathan Cameron
2025-06-29 18:43 ` Jonathan Cameron
2025-06-30 10:42 ` Andy Shevchenko
2025-06-30 14:06 ` Jonathan Cameron
2025-07-12 16:52 ` Tanzir Hasan
2025-06-30 10:40 ` Andy Shevchenko
2025-07-06 17:13 ` Jonathan Cameron
2025-07-10 6:53 ` Matti Vaittinen [this message]
2025-07-07 19:53 ` Andy Shevchenko
2025-07-09 13:32 ` Jonathan Cameron
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=058aabd0-e2f7-43d3-a91c-9c2baa382a69@gmail.com \
--to=mazziesaccount@gmail.com \
--cc=Jonathan.Cameron@huawei.com \
--cc=andriy.shevchenko@intel.com \
--cc=andy@kernel.org \
--cc=dlechner@baylibre.com \
--cc=jic23@kernel.org \
--cc=linux-iio@vger.kernel.org \
--cc=nuno.sa@analog.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.