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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox