drivers/ata/pata_buddha.c | 8 ++++---- drivers/i2c/busses/i2c-icy.c | 4 ++-- drivers/net/ethernet/8390/hydra.c | 4 ++-- drivers/net/ethernet/8390/xsurf100.c | 4 ++-- drivers/net/ethernet/8390/zorro8390.c | 6 +++--- drivers/net/ethernet/amd/a2065.c | 8 ++++---- drivers/net/ethernet/amd/ariadne.c | 4 ++-- drivers/scsi/a2091.c | 6 +++--- drivers/scsi/gvp11.c | 17 ++++++++-------- drivers/scsi/zorro7xx.c | 16 +++++++-------- drivers/scsi/zorro_esp.c | 2 +- drivers/video/fbdev/cirrusfb.c | 28 +++++++++++++-------------- drivers/video/fbdev/fm2fb.c | 6 +++--- include/linux/mod_devicetable.h | 6 +++++- 14 files changed, 62 insertions(+), 57 deletions(-)
Hello, this series is about improving the handling of pointers in struct zorro_device_id's driver_data. While it's ok on all current Linux platforms to store a pointer in an unsigned long variable, it involves casting that loses type information. This can be nicely seen in patch #7 where after profiting from patch #6 the compiler notices a missing const. Preparing for that change, all zorro_device_ids are converted to use named initializers, which is also a nice cleanup that could stand for itself, as it improves readability for humans. (That is necessary because an anonymous union can be initialized by name, but not using a list initializer.) My motivation for this series is the CHERI hardware extension. With that pointers are bigger than longs and thus you cannot store pointers in zorro_device_id::driver_data. So this series is also about getting support for CHERI into the mainline, but I hope the clean up effects mentioned above are justification enough to accept this series. The dependencies in this series are as follows: - Patch #5 depends on #1, #2 - Patches #7 and #8 depend on patch #6. So if the ata maintainers agreed to merge their patch #1 via scsi, and Geert agrees to patch #5 and that it's also merged via scsi, patches #1, #2, #6 and #7 can go in without further coordination. Patches #3, #4 and #5 are only about using the same initialization style for all zorro_device_id and can go in without coordination. Best regards Uwe Uwe Kleine-König (The Capable Hub) (8): ata: pata_budda: Use named initializer for zorro_device_id scsi: Use named initializer for zorro_device_id net: Use named initializer for zorro_device_id arrays i2c: icy: Use named initializer for zorro_device_id arrays video: fm2fb: Use named initializer for zorro_device_id array zorro: Simplify storing pointers in device id struct scsi: zorro7xx: Make use of struct zorro_device_id::driver_data_ptr video: cirrusfb: Make use of struct zorro_device_id::driver_data_ptr drivers/ata/pata_buddha.c | 8 ++++---- drivers/i2c/busses/i2c-icy.c | 4 ++-- drivers/net/ethernet/8390/hydra.c | 4 ++-- drivers/net/ethernet/8390/xsurf100.c | 4 ++-- drivers/net/ethernet/8390/zorro8390.c | 6 +++--- drivers/net/ethernet/amd/a2065.c | 8 ++++---- drivers/net/ethernet/amd/ariadne.c | 4 ++-- drivers/scsi/a2091.c | 6 +++--- drivers/scsi/gvp11.c | 17 ++++++++-------- drivers/scsi/zorro7xx.c | 16 +++++++-------- drivers/scsi/zorro_esp.c | 2 +- drivers/video/fbdev/cirrusfb.c | 28 +++++++++++++-------------- drivers/video/fbdev/fm2fb.c | 6 +++--- include/linux/mod_devicetable.h | 6 +++++- 14 files changed, 62 insertions(+), 57 deletions(-) base-commit: d387b06f7c15b4639244ad66b4b0900c6a02b430 -- 2.47.3
Hi Uwe, On 5/26/26 16:17, Uwe Kleine-König (The Capable Hub) wrote: > Hello, > > this series is about improving the handling of pointers in struct > zorro_device_id's driver_data. > > While it's ok on all current Linux platforms to store a pointer in an > unsigned long variable, it involves casting that loses type information. > This can be nicely seen in patch #7 where after profiting from patch #6 > the compiler notices a missing const. > > Preparing for that change, all zorro_device_ids are converted to use > named initializers, which is also a nice cleanup that could stand for > itself, as it improves readability for humans. (That is necessary > because an anonymous union can be initialized by name, but not using a > list initializer.) > > My motivation for this series is the CHERI hardware extension. With that > pointers are bigger than longs and thus you cannot store pointers in > zorro_device_id::driver_data. So this series is also about getting > support for CHERI into the mainline, but I hope the clean up effects > mentioned above are justification enough to accept this series. > > The dependencies in this series are as follows: > > - Patch #5 depends on #1, #2 > - Patches #7 and #8 depend on patch #6. > > So if the ata maintainers agreed to merge their patch #1 via scsi, and > Geert agrees to patch #5 and that it's also merged via scsi, patches #1, > #2, #6 and #7 can go in without further coordination. > > Patches #3, #4 and #5 are only about using the same initialization style > for all zorro_device_id and can go in without coordination. > > Best regards > Uwe > > Uwe Kleine-König (The Capable Hub) (8): > ata: pata_budda: Use named initializer for zorro_device_id > scsi: Use named initializer for zorro_device_id > net: Use named initializer for zorro_device_id arrays > i2c: icy: Use named initializer for zorro_device_id arrays > video: fm2fb: Use named initializer for zorro_device_id array > zorro: Simplify storing pointers in device id struct > scsi: zorro7xx: Make use of struct zorro_device_id::driver_data_ptr > video: cirrusfb: Make use of struct zorro_device_id::driver_data_ptr > > drivers/ata/pata_buddha.c | 8 ++++---- > drivers/i2c/busses/i2c-icy.c | 4 ++-- > drivers/net/ethernet/8390/hydra.c | 4 ++-- > drivers/net/ethernet/8390/xsurf100.c | 4 ++-- > drivers/net/ethernet/8390/zorro8390.c | 6 +++--- > drivers/net/ethernet/amd/a2065.c | 8 ++++---- > drivers/net/ethernet/amd/ariadne.c | 4 ++-- > drivers/scsi/a2091.c | 6 +++--- > drivers/scsi/gvp11.c | 17 ++++++++-------- > drivers/scsi/zorro7xx.c | 16 +++++++-------- > drivers/scsi/zorro_esp.c | 2 +- > drivers/video/fbdev/cirrusfb.c | 28 +++++++++++++-------------- > drivers/video/fbdev/fm2fb.c | 6 +++--- > include/linux/mod_devicetable.h | 6 +++++- > 14 files changed, 62 insertions(+), 57 deletions(-) you may add to the series: Acked-by: Helge Deller <deller@gmx.de> Since it touches various subtrees, I assume you will merge it though your tree? Helge
Hello Helge, On Fri, Jun 05, 2026 at 12:44:04AM +0200, Helge Deller wrote: > On 5/26/26 16:17, Uwe Kleine-König (The Capable Hub) wrote: Your MUA seems to interpret my UTF-8 encoded name as latin1 and converted it to UTF-8 making my ö appear as ö. I *think* the problem is on your side. > > this series is about improving the handling of pointers in struct > > zorro_device_id's driver_data. > > > > While it's ok on all current Linux platforms to store a pointer in an > > unsigned long variable, it involves casting that loses type information. > > This can be nicely seen in patch #7 where after profiting from patch #6 > > the compiler notices a missing const. > > > > Preparing for that change, all zorro_device_ids are converted to use > > named initializers, which is also a nice cleanup that could stand for > > itself, as it improves readability for humans. (That is necessary > > because an anonymous union can be initialized by name, but not using a > > list initializer.) > > > > My motivation for this series is the CHERI hardware extension. With that > > pointers are bigger than longs and thus you cannot store pointers in > > zorro_device_id::driver_data. So this series is also about getting > > support for CHERI into the mainline, but I hope the clean up effects > > mentioned above are justification enough to accept this series. > > > > The dependencies in this series are as follows: > > > > - Patch #5 depends on #1, #2 > > - Patches #7 and #8 depend on patch #6. > > > > So if the ata maintainers agreed to merge their patch #1 via scsi, and > > Geert agrees to patch #5 and that it's also merged via scsi, patches #1, > > #2, #6 and #7 can go in without further coordination. > > > > Patches #3, #4 and #5 are only about using the same initialization style > > for all zorro_device_id and can go in without coordination. > > > > Best regards > > Uwe > > > > Uwe Kleine-König (The Capable Hub) (8): > > ata: pata_budda: Use named initializer for zorro_device_id > > scsi: Use named initializer for zorro_device_id > > net: Use named initializer for zorro_device_id arrays > > i2c: icy: Use named initializer for zorro_device_id arrays > > video: fm2fb: Use named initializer for zorro_device_id array > > zorro: Simplify storing pointers in device id struct > > scsi: zorro7xx: Make use of struct zorro_device_id::driver_data_ptr > > video: cirrusfb: Make use of struct zorro_device_id::driver_data_ptr > > > > drivers/ata/pata_buddha.c | 8 ++++---- > > drivers/i2c/busses/i2c-icy.c | 4 ++-- > > drivers/net/ethernet/8390/hydra.c | 4 ++-- > > drivers/net/ethernet/8390/xsurf100.c | 4 ++-- > > drivers/net/ethernet/8390/zorro8390.c | 6 +++--- > > drivers/net/ethernet/amd/a2065.c | 8 ++++---- > > drivers/net/ethernet/amd/ariadne.c | 4 ++-- > > drivers/scsi/a2091.c | 6 +++--- > > drivers/scsi/gvp11.c | 17 ++++++++-------- > > drivers/scsi/zorro7xx.c | 16 +++++++-------- > > drivers/scsi/zorro_esp.c | 2 +- > > drivers/video/fbdev/cirrusfb.c | 28 +++++++++++++-------------- > > drivers/video/fbdev/fm2fb.c | 6 +++--- > > include/linux/mod_devicetable.h | 6 +++++- > > 14 files changed, 62 insertions(+), 57 deletions(-) > > you may add to the series: > Acked-by: Helge Deller <deller@gmx.de> Thanks! > Since it touches various subtrees, I assume you will merge it though your tree? Well, my plan is that the scsi maintainers pick up patches #1, #2, #6 and #7 and I remind you once #6 (i.e. the dependency for #8) is in Linus' tree. But with your ack the two fb patches can also go in via scsi. To James and Martin: I didn't hear from you about my merge suggestion up to now. The other affected maintainers agreed so far that (assuming you're using b4) and interpreting Helge's ack as agreement that you also pick up the fb patches, you can go for b4 am -l -t -3 -P1,2,5-8 cover.1779803053.git.u.kleine-koenig@baylibre.com If you like I can also pick up these patches (then with your ack please) and send them to Linus for the next merge window. Just tell me about your preference. Best regards Uwe
Hi Uwe,
On Tue, 26 May 2026 at 16:17, Uwe Kleine-König (The Capable Hub)
<u.kleine-koenig@baylibre.com> wrote:
> this series is about improving the handling of pointers in struct
> zorro_device_id's driver_data.
>
> While it's ok on all current Linux platforms to store a pointer in an
> unsigned long variable, it involves casting that loses type information.
> This can be nicely seen in patch #7 where after profiting from patch #6
> the compiler notices a missing const.
>
> Preparing for that change, all zorro_device_ids are converted to use
> named initializers, which is also a nice cleanup that could stand for
> itself, as it improves readability for humans. (That is necessary
> because an anonymous union can be initialized by name, but not using a
> list initializer.)
>
> My motivation for this series is the CHERI hardware extension. With that
> pointers are bigger than longs and thus you cannot store pointers in
> zorro_device_id::driver_data. So this series is also about getting
> support for CHERI into the mainline, but I hope the clean up effects
> mentioned above are justification enough to accept this series.
Thanks for your series!
> The dependencies in this series are as follows:
>
> - Patch #5 depends on #1, #2
s/5/6/?
> - Patches #7 and #8 depend on patch #6.
>
> So if the ata maintainers agreed to merge their patch #1 via scsi, and
> Geert agrees to patch #5 and that it's also merged via scsi, patches #1,
s/5/6/?
> #2, #6 and #7 can go in without further coordination.
>
> Patches #3, #4 and #5 are only about using the same initialization style
> for all zorro_device_id and can go in without coordination.
>
> Best regards
> Uwe
>
> Uwe Kleine-König (The Capable Hub) (8):
> ata: pata_budda: Use named initializer for zorro_device_id
> scsi: Use named initializer for zorro_device_id
> net: Use named initializer for zorro_device_id arrays
> i2c: icy: Use named initializer for zorro_device_id arrays
> video: fm2fb: Use named initializer for zorro_device_id array
> zorro: Simplify storing pointers in device id struct
> scsi: zorro7xx: Make use of struct zorro_device_id::driver_data_ptr
> video: cirrusfb: Make use of struct zorro_device_id::driver_data_ptr
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
On Tue, May 26, 2026 at 05:01:48PM +0200, Geert Uytterhoeven wrote: > Hi Uwe, > > On Tue, 26 May 2026 at 16:17, Uwe Kleine-König (The Capable Hub) > <u.kleine-koenig@baylibre.com> wrote: > > this series is about improving the handling of pointers in struct > > zorro_device_id's driver_data. > > > > While it's ok on all current Linux platforms to store a pointer in an > > unsigned long variable, it involves casting that loses type information. > > This can be nicely seen in patch #7 where after profiting from patch #6 > > the compiler notices a missing const. > > > > Preparing for that change, all zorro_device_ids are converted to use > > named initializers, which is also a nice cleanup that could stand for > > itself, as it improves readability for humans. (That is necessary > > because an anonymous union can be initialized by name, but not using a > > list initializer.) > > > > My motivation for this series is the CHERI hardware extension. With that > > pointers are bigger than longs and thus you cannot store pointers in > > zorro_device_id::driver_data. So this series is also about getting > > support for CHERI into the mainline, but I hope the clean up effects > > mentioned above are justification enough to accept this series. > > Thanks for your series! > > > The dependencies in this series are as follows: > > > > - Patch #5 depends on #1, #2 > > s/5/6/? > > > - Patches #7 and #8 depend on patch #6. > > > > So if the ata maintainers agreed to merge their patch #1 via scsi, and > > Geert agrees to patch #5 and that it's also merged via scsi, patches #1, > > s/5/6/? Yes, indeed. And I tried so hard to get all the numbers right :-\ Best regards Uwe
© 2016 - 2026 Red Hat, Inc.