diff mbox series

i2c: i801: Annotate apanel_addr as __ro_after_init

Message ID 41efcfe2-7e05-4a11-bd02-40d9e525c415@gmail.com
State Accepted
Delegated to: Andi Shyti
Headers show
Series i2c: i801: Annotate apanel_addr as __ro_after_init | expand

Commit Message

Heiner Kallweit April 12, 2024, 10:21 a.m. UTC
Annotate this variable as __ro_after_init to protect it from being
overwritten later.

Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
---
 drivers/i2c/busses/i2c-i801.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Wolfram Sang April 12, 2024, 10:30 a.m. UTC | #1
>  #if defined CONFIG_X86 && defined CONFIG_DMI

Shouldn't that be on top of "[PATCH v2] i2c: i801: Fix missing Kconfig
dependency" which Andi already merged?
Heiner Kallweit April 12, 2024, 10:48 a.m. UTC | #2
On 12.04.2024 12:30, Wolfram Sang wrote:
>>  #if defined CONFIG_X86 && defined CONFIG_DMI
> 
> Shouldn't that be on top of "[PATCH v2] i2c: i801: Fix missing Kconfig
> dependency" which Andi already merged?
> 
No, this is a different code part here. The other one was
protected with:
#if IS_ENABLED(CONFIG_I2C_MUX_GPIO) && defined CONFIG_DMI
Wolfram Sang April 12, 2024, 10:57 a.m. UTC | #3
> No, this is a different code part here. The other one was

Oh. Sorry for the noise!
Andi Shyti April 15, 2024, 9:05 p.m. UTC | #4
Hi Heiner,

On Fri, Apr 12, 2024 at 12:21:58PM +0200, Heiner Kallweit wrote:
> Annotate this variable as __ro_after_init to protect it from being
> overwritten later.

What is the reason behind this patch? Where is the risk of
overwriting this variable?

Andi
Heiner Kallweit April 15, 2024, 9:20 p.m. UTC | #5
On 15.04.2024 23:05, Andi Shyti wrote:
> Hi Heiner,
> 
> On Fri, Apr 12, 2024 at 12:21:58PM +0200, Heiner Kallweit wrote:
>> Annotate this variable as __ro_after_init to protect it from being
>> overwritten later.
> 
> What is the reason behind this patch? Where is the risk of
> overwriting this variable?
> 
The annotation makes clear that this variable is to be written
by init code only, w/o having to check all usage in the driver.
Currently the variable isn't written later, however the annotation
protects from any such potential attempt in the future.
The original commit message has more arguments for using this
annotation. https://lwn.net/Articles/676145/

> Andi

Heiner
Andi Shyti April 16, 2024, 10:46 p.m. UTC | #6
Hi

On Fri, 12 Apr 2024 12:21:58 +0200, Heiner Kallweit wrote:
> Annotate this variable as __ro_after_init to protect it from being
> overwritten later.
> 
> 

Applied to i2c/i2c-host on

git://git.kernel.org/pub/scm/linux/kernel/git/andi.shyti/linux.git

Thank you,
Andi

Patches applied
===============
[1/1] i2c: i801: Annotate apanel_addr as __ro_after_init
      commit: 08944c074592041873f1cb3e5be5fc3fd4cdc3ad
diff mbox series

Patch

diff --git a/drivers/i2c/busses/i2c-i801.c b/drivers/i2c/busses/i2c-i801.c
index 6d027a77d..e577abc77 100644
--- a/drivers/i2c/busses/i2c-i801.c
+++ b/drivers/i2c/busses/i2c-i801.c
@@ -1060,7 +1060,7 @@  static const struct pci_device_id i801_ids[] = {
 MODULE_DEVICE_TABLE(pci, i801_ids);
 
 #if defined CONFIG_X86 && defined CONFIG_DMI
-static unsigned char apanel_addr;
+static unsigned char apanel_addr __ro_after_init;
 
 /* Scan the system ROM for the signature "FJKEYINF" */
 static __init const void __iomem *bios_signature(const void __iomem *bios)