Messages in this thread | | | Subject | Re: [PATCH] x86/kbuild: enable modversions for symbols exported from asm | From | Stanislav Kozina <> | Date | Thu, 1 Dec 2016 12:33:02 +0100 |
| |
On 12/01/2016 12:09 PM, Nicholas Piggin wrote: > On Thu, 1 Dec 2016 11:48:09 +0100 > Stanislav Kozina <skozina@redhat.com> wrote: > >> On 12/01/2016 05:13 AM, Don Zickus wrote: >> >> ... >> >>> I think GregKH pointed to one such tool, libabigail? We are working on >>> others too. >> I should mention one of the others here: >> https://github.com/skozina/kabi-dw >> >> It's quite comparable to libabigail in the way it works, the main >> differences are: >> - written in pure C >> - depends only on elf-utils and flex/yacc >> - it's much simpler (4k LOC) >> - stores the type information in the text files and compares those >> instead of directly comparing two sets of DWARF data > Now this seems much better for distro ABI checking. > > The next question is, do they need any kernel support for rare cases > where they do have to break the ABI of an export? Simple rename of the > function with a _v2 postfix might be enough. We could retain some per > symbol versioning in the kernel if needed, but how much would it > actually help?
The biggest pain point AFAICT is to identify what types (functions, structs, enums, ...) should be considered a part of the stable ABI. And the problem with modversions is that it pulls in just everything which gets (accidentally?) #included in the source file. The actual ABI maintenance is a different problem, but there are many possible approaches, the _v2 suffix being one of them.
Regards, -Stanislav
| |