Re: [PATCH] x86/kbuild: enable modversions for symbols exported from asm

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





On 12/01/2016 12:09 PM, Nicholas Piggin wrote:
On Thu, 1 Dec 2016 11:48:09 +0100
Stanislav Kozina <skozina@xxxxxxxxxx> 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
--
To unsubscribe from this list: send the line "unsubscribe linux-arch" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Kernel]     [Kernel Newbies]     [x86 Platform Driver]     [Netdev]     [Linux Wireless]     [Netfilter]     [Bugtraq]     [Linux Filesystems]     [Yosemite Discussion]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Device Mapper]

  Powered by Linux