Message ID | 20211227164317.4146918-1-schnelle@linux.ibm.com |
---|---|
Headers | show |
Series | Kconfig: Introduce HAS_IOPORT and LEGACY_PCI options | expand |
Hi Niklas, On 27/12/2021 16:42, Niklas Schnelle wrote: > I performed the following testing: > > - On s390 this series on top of v5.16-rc7 builds with allyesconfig i.e. the > HAS_IOPORT=n case. Are you sure that allyesconfig gives HAS_IOPORT=n? Indeed I see no mechanism is always disallow HAS_IOPORT for s390 (which I think we would want). > It also builds with defconfig and the resulting kernel > appears fully functional including tests with PCI devices. Thanks, Johnw
On Thu, 2022-01-06 at 17:45 +0000, John Garry wrote: > Hi Niklas, > > On 27/12/2021 16:42, Niklas Schnelle wrote: > > I performed the following testing: > > > > - On s390 this series on top of v5.16-rc7 builds with allyesconfig i.e. the > > HAS_IOPORT=n case. > > Are you sure that allyesconfig gives HAS_IOPORT=n? Indeed I see no > mechanism is always disallow HAS_IOPORT for s390 (which I think we would > want). > > > It also builds with defconfig and the resulting kernel > > appears fully functional including tests with PCI devices. > > Thanks, > Johnw > I checked again by adding config HAS_IOPORT def_bool n in arch/s390/Kconfig and that doesn't seem to make a difference, allyesconfig builds all the same. Also checked for CONFIG_HAS_IOPORT in my .config and that isn't listed with or without the above addition. I think this is because without a help text there is no "config question" and thus nothing that allyesconfig would set to yes. I do agree though that it's better to be explicit and add the above to those Kconfigs that don't support HAS_IOPORT. Thanks, Niklas
On 07/01/2022 07:21, Niklas Schnelle wrote: > I checked again by adding > > config HAS_IOPORT > def_bool n > > in arch/s390/Kconfig and that doesn't seem to make a difference, > allyesconfig builds all the same. Also checked for CONFIG_HAS_IOPORT in > my .config and that isn't listed with or without the above addition. Strange, as I build your branch and I see it: HEAD is now at 9f421b6580ed asm-generic/io.h: drop inb() etc for HAS_IOPORT=n john@localhost:~/kernel-dev5> export ARCH=s390 john@localhost:~/kernel-dev5> export CROSS_COMPILE=/usr/bin/s390x-suse-linux- john@localhost:~/kernel-dev5> make allyesconfig # # configuration written to .config # john@localhost:~/kernel-dev5> more .config | grep HAS_IOPORT CONFIG_HAS_IOPORT=y > > I think this is because without a help text there is no "config > question" and thus nothing that allyesconfig would set to yes. I do > agree though that it's better to be explicit and add the above to those > Kconfigs that don't support HAS_IOPORT. So maybe something like: config HAS_IOPORT def_bool ISA || LEGACY_PCI depends on !S390 Otherwise you can build inb et al from asm-generic/io.h and get the original compile error about arithmetic on NULL pointer, right? But I assume that there is a more elegant way of doing this... Thanks, John