Greg, In time: forgot to add a 00/16 patch... someone come to my desk while I was sending this... sorry for that. That's the second version of the doc ABI updated logic. Changes from version 1: - I updated my e-mail on older patches; - Two new ABI fix patches; - Improved the parser to detect a few more issues I discovered on some ABI files. - There's now a "validate" command at get_abi.pl. It simply runs the parser without any output, except for warnings; - It now runs "get_abi.pl validate" during the build (if enabled). Please notice that the last patch will conflict with another patch merged via docs-next tree, with creates a Documentation/Kconfig and adds a check at Documentation/Makefile for broken documentation links. The conflict is trivial to solve, through: just add the contents on both tress. This series is based on your driver-core git tree. - On this series: - The first two patches contain two extra ABI fixes; - The next 10 patches contain the ABI parsing script. I don't mind if you prefer folding them on a single patch, but IMO, preserving the history may help tracking bugs, if any; - The 13th patch adds the new script to the documentation build system, together with a new python Sphinx extension with calls it; - The 14th patch fixes the python script when running with newer Sphinx versions (1.7 and upper); - The 15th patch fixes an UTF-8 troubles; - The final patch adds a Kconfig var that will check for ABI file problems, if COMPILE_TEST and WARN_ABI_ERRORS are enabled. Mauro Carvalho Chehab (16): ABI: sysfs-bus-pci-devices-aer_stats uses an invalid tag ABI: Fix KernelVersion tags scripts: add an script to parse the ABI files scripts/get_abi.pl: parse files with text at beginning scripts/get_abi.pl: avoid use literal blocks when not needed scripts/get_abi.pl: split label naming from xref logic scripts/get_abi.pl: add support for searching for ABI symbols scripts/get_abi.pl: represent what in tables scripts/get_abi.pl: fix parse issues with some files scripts/get_abi.pl: avoid creating duplicate names scripts/get_abi.pl: add a handler for invalid "where" tag scripts/get_abi.pl: add a validate command doc-rst: add ABI documentation to the admin-guide book docs: sphinx/kernel_abi.py: fix UTF-8 support sphinx/kernel_abi.py: make it compatible with Sphinx 1.7+ docs: Kconfig/Makefile: add a check for broken ABI files Documentation/ABI/testing/pstore | 2 +- .../sysfs-bus-event_source-devices-format | 2 +- .../ABI/testing/sysfs-bus-i2c-devices-hm6352 | 6 +- .../testing/sysfs-bus-pci-devices-aer_stats | 24 +- .../ABI/testing/sysfs-bus-pci-devices-cciss | 22 +- .../testing/sysfs-bus-usb-devices-usbsevseg | 10 +- .../ABI/testing/sysfs-driver-altera-cvp | 2 +- Documentation/ABI/testing/sysfs-driver-ppi | 2 +- Documentation/ABI/testing/sysfs-driver-st | 2 +- Documentation/ABI/testing/sysfs-driver-wacom | 2 +- Documentation/Kconfig | 11 + Documentation/Makefile | 5 + Documentation/admin-guide/abi-obsolete.rst | 10 + Documentation/admin-guide/abi-removed.rst | 4 + Documentation/admin-guide/abi-stable.rst | 13 + Documentation/admin-guide/abi-testing.rst | 19 + Documentation/admin-guide/abi.rst | 11 + Documentation/admin-guide/index.rst | 1 + Documentation/conf.py | 2 +- Documentation/sphinx/kernel_abi.py | 164 ++++++ lib/Kconfig.debug | 2 + scripts/get_abi.pl | 475 ++++++++++++++++++ 22 files changed, 753 insertions(+), 38 deletions(-) create mode 100644 Documentation/Kconfig create mode 100644 Documentation/admin-guide/abi-obsolete.rst create mode 100644 Documentation/admin-guide/abi-removed.rst create mode 100644 Documentation/admin-guide/abi-stable.rst create mode 100644 Documentation/admin-guide/abi-testing.rst create mode 100644 Documentation/admin-guide/abi.rst create mode 100644 Documentation/sphinx/kernel_abi.py create mode 100755 scripts/get_abi.pl -- 2.21.0