6

I'm not sure if this is the right place to ask this, but I'm trying to find a webpage or docs or XYZ that will allow me to see all the API changes/additions/removals between two kernel versions.

I found http://kernelnewbies.org/LinuxChanges , but I'm not sure it lists everything as I know that Netlink API changed somewhere between 3.5 and 3.6 but it doesn't appear on that page.

Regards

alexandernst
  • 14,352
  • 22
  • 97
  • 197

2 Answers2

5

See kernel API/ABI tracker here: http://abi-laboratory.pro/tracker/timeline/linux/

The analysis was done by the abi-compliance-checker and abi-dumper tools.

Analysis reports show added/removed symbols, detailed changes in parameters and data types in the vmlinux binary and basic modules. I maintain this page, so feel free to ask me to check any particular kernel versions.

enter image description here

linuxbuild
  • 15,843
  • 6
  • 60
  • 87
  • I think this is exacly what I need. For my project (https://github.com/alexandernst/procmon) I'll need all the changes between 2.6.33 and current kernel, for both x86 and x64. I understand that this is a lot of work, and that maybe you don't have enough time to do it, so I can help you. :) – alexandernst Sep 30 '13 at 08:12
  • @alexandernst - I'm currently have a time to create and share such report. You can help me by sharing anywhere necessary input files for analysis: vmlinux compiled with minimal debug-info of both versions and both architectures. – linuxbuild Sep 30 '13 at 10:21
  • Ok, I'll start with 3.10. Where can I send you links to the files? Email maybe? – alexandernst Sep 30 '13 at 10:24
  • @alexandernst - email in my profile http://stackoverflow.com/users/241776/aponomarenko – linuxbuild Sep 30 '13 at 10:49
  • Email isn't public :p. Mine is alexandernst@gmail.com – alexandernst Sep 30 '13 at 11:06
  • @alexandernst - I've built necessary kernel versions on x86 and I'll publish reports tomorrow. – linuxbuild Oct 01 '13 at 13:04
1

There is no concentrated effort to collect the details of all API changes.

The LinuxChanges page lists the following change:

packet: nlmon: virtual netlink monitoring device for packet sockets (commit)

LWN.net has overviews for all import changes in a merge window:
3.6 merge window part 1
3.6 merge window part 2
The conclusion of the 3.6 merge window

For 3.6, it has:

  • The NLMSG_NEW() and NLMSG_PUT() macros have been removed from the netlink interface.
CL.
  • 173,858
  • 17
  • 217
  • 259
  • Indeed, but that's not the entire API change that was done between 3.5 and 3.6. From what I get from my tests, at least one more change happened: in ```netlink_kernel_create```. I'll ask in ##kernel too. Thanks for the help :) – alexandernst Sep 29 '13 at 13:16