On Wed, Jul 28, 2021 at 7:43 AM Christoph Hellwig <hch@xxxxxx> wrote: > > On Tue, Jul 27, 2021 at 08:09:41PM -0300, Jason Gunthorpe wrote: > > On Tue, Jul 27, 2021 at 03:54:40PM -0600, Alex Williamson wrote: > > > > > I'm still not happy with how this is likely to break users and even > > > downstreams when upgrading to a Kconfig with this change. > > > > I've never heard of Kconfig as stable ABI. Christoph/Arnd, have you > > heard of any cases where we want to keep it stable? > > It isn't an ABI, but we really do try to avoid breaking if we can and > I rember Linus shouting at people if they did that for common options. This is handled in very different ways depending on the maintainers, some people go to great lengths to avoid breaking 'make oldconfig' or 'make defconfig', others don't seem to mind at all. CONFIG_USB_EHCI_TEGRA is an example of an option that was left in place to help users of old config files, another one is CONFIG_EXT3_FS. In both cases the idea is that the original code was changed, but the old option left in place to point to the replacement. I think doing this is generally a good idea, but I would not consider this a stable ABI in the sense that we can never break it. Most users should have migrated to the new option after a few kernel releases, and then I would remove the old one. If a user upgrades across multiple kernel releases at once, usually all hope of reusing an old .config is lost anyway. > However lately for example the completely silly s/THUNDERBOLT/USB4/ > change did slip through and did break my test setup with a vfio passed > through external nvme drive :( Another recent example is CONFIG_FB no longer being selected by the DRM subsystem, which broke a lot of defconfigs. Arnd