lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <cover.1748356671.git.waqar.hameed@axis.com>
Date: Tue, 27 May 2025 16:45:41 +0200
From: Waqar Hameed <waqar.hameed@...s.com>
To: Jonathan Cameron <jic23@...nel.org>, Lars-Peter Clausen <lars@...afoo.de>,
	Michael Hennerich <Michael.Hennerich@...log.com>, Haibo Chen
	<haibo.chen@....com>
CC: <kernel@...s.com>, <linux-iio@...r.kernel.org>,
	<linux-kernel@...r.kernel.org>
Subject: [PATCH 0/4] iio: Clean up macro definitions

Currently there are a bunch of drivers using macro definitions for
string literals that are only used once. There seem to be a "style
guide" to not do this, and this is often mentioned during the reviews
(if caught). And since developers most often look at other drivers for
inspiration (or just trying to figure out the "style guide") when
writing a new one, it is desirable to have some consistency.

In this patch series we identify the drivers that have macro definitions
for string literals that are only used once. The most common one is the
driver name. These can be identified by

  rgrep -A 10 "\.driver" drivers/iio/ | grep "\.name" | grep -v '"'

And then count the number of occurrences of the particular macro
definition (e.g. with `grep -c`). Most drivers use these macro
definitions for `.name` in `struct device_driver` and `indio_dev->name`
(which could be justified with a macro definition). However, the ones
with only one occurrence are identified and removed in this patch
series.

There are also drivers that have a mixture, e.g. macro definition for
`indio_dev->name` but in-line string literal for `.name` in `struct
device_driver`). The following have therefore not been touched (but
should maybe use the macro definition for both places):

  drivers/iio/accel/stk8ba50.c
  drivers/iio/accel/mma7660.c
  drivers/iio/humidity/am2315.c
  drivers/iio/light/stk3310.c

Likewise, there are drivers that only use `KBUILD_MODNAME` in one place.
These have also been left for the same reasons.

Finally, while cleaning up these ones, other similar macro definitions
could be identified with the same "style guide" issue: macro definitions
for IRQ name and `regmap` name. There are even unused macro definitions.
All of these are also addressed in this patch series.

Waqar Hameed (4):
  iio: Remove single use of macro definition for driver name
  iio: Remove single use of macro definition for IRQ name
  iio: Remove single use of macro definition for regmap name
  iio: Remove unused macro definition for driver and IRQ name

 drivers/iio/accel/bma180.c             | 3 ---
 drivers/iio/accel/bmc150-accel-core.c  | 5 +----
 drivers/iio/accel/kxcjk-1013.c         | 7 ++-----
 drivers/iio/accel/mma9551.c            | 6 ++----
 drivers/iio/accel/mma9553.c            | 7 ++-----
 drivers/iio/accel/mxc4005.c            | 6 ++----
 drivers/iio/accel/mxc6255.c            | 3 +--
 drivers/iio/accel/sca3300.c            | 4 +---
 drivers/iio/accel/stk8312.c            | 3 +--
 drivers/iio/accel/stk8ba50.c           | 3 +--
 drivers/iio/adc/hi8435.c               | 4 +---
 drivers/iio/adc/max9611.c              | 4 +---
 drivers/iio/adc/vf610_adc.c            | 5 +----
 drivers/iio/chemical/atlas-sensor.c    | 3 +--
 drivers/iio/dac/max517.c               | 4 +---
 drivers/iio/dac/mcp4725.c              | 4 +---
 drivers/iio/gyro/bmg160_core.c         | 4 +---
 drivers/iio/health/max30100.c          | 3 +--
 drivers/iio/health/max30102.c          | 3 +--
 drivers/iio/humidity/dht11.c           | 4 +---
 drivers/iio/imu/kmx61.c                | 7 ++-----
 drivers/iio/light/adux1020.c           | 3 +--
 drivers/iio/light/apds9160.c           | 4 +---
 drivers/iio/light/apds9300.c           | 3 +--
 drivers/iio/light/apds9960.c           | 3 +--
 drivers/iio/light/jsa1212.c            | 3 +--
 drivers/iio/light/ltr501.c             | 8 ++------
 drivers/iio/light/rpr0521.c            | 6 ++----
 drivers/iio/light/stk3310.c            | 6 ++----
 drivers/iio/light/vcnl4035.c           | 6 ++----
 drivers/iio/magnetometer/bmc150_magn.c | 5 +----
 drivers/iio/magnetometer/mmc35240.c    | 3 +--
 drivers/iio/proximity/sx9500.c         | 3 +--
 drivers/iio/resolver/ad2s1200.c        | 3 +--
 34 files changed, 42 insertions(+), 106 deletions(-)


base-commit: 914873bc7df913db988284876c16257e6ab772c6
-- 
2.39.5


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ