Received: by 2002:a25:ab43:0:0:0:0:0 with SMTP id u61csp1249012ybi; Fri, 14 Jun 2019 11:08:05 -0700 (PDT) X-Google-Smtp-Source: APXvYqyo3S5yq88v6Zvv0rkPCQT3zMNmfecdA3fXvUgqhgjCuZv5yB4+P782Lkvh87KLVe+CO2dR X-Received: by 2002:a62:160b:: with SMTP id 11mr100175708pfw.30.1560535685079; Fri, 14 Jun 2019 11:08:05 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1560535685; cv=none; d=google.com; s=arc-20160816; b=eRkPoQ4cioL+49p+XktO8+dJNkh/6bWJYNmsgLPuU+OMHlSyFFhrbQd+6lhzdnDY/I dM+uxvIHRFNeb9QCBqtHlZcHOJynLKshzoQvm+UozQCL+kjkdzeLtX53kX3XOjb0gye7 nZCbG3zFKl7LKvRc0dyhr0EeYgGnJbFlKmngtSfFn4YY1Ql/zDhGUZYHH7/uSZYY1o8W HlpHHCQmsOdYS8tyzPoOEsdePyp5EirHQxqfMblLIS2diZE3131ihclld/ZyqVRUtOld gp3lnkpOWYFH56LlNUqHSOIywxKEfNj69YsL21b4uPquy/67LAgCEwjKFyuaTvcLOFwh 6nQQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:subject:cc:to:from:date :dkim-signature; bh=6u3mWzVqiKIvqHULlxY1C85MLfXNyfBlevwK2rEBH34=; b=1Bx1FFZmqZTD3bg/UfNqNgoyNEn2oGiY4vmg8RepiAWIbc/YYN4DOdRu0/rCDDljNU AjRxRA3pBLXfu35J2SgCk6hn9vPHE4ZmdkV5qd9Riggnn0TK9ni1faUUBrVpxSS25iTj VmSJISv89xk88tKJvd4BUU8voPDCZd8h5nbDqsote8O1OgRIycKAatN9OsKhOVvIZ4XY mYPG+TwD4UnlFVQ5jxWJquTL+U34PD0eUZrxUcqpROHgoRvea080MKNEnBncZ683Np4F CVQTgLDdX3McZLI+sSHrf1WqobAv4PhgPpYKii+7Io0K1t6qV7Qgxolt6rSezfq+qaDf O2GA== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@infradead.org header.s=casper.20170209 header.b=c9CVcMTr; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id 59si2963240plp.90.2019.06.14.11.07.49; Fri, 14 Jun 2019 11:08:05 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=fail header.i=@infradead.org header.s=casper.20170209 header.b=c9CVcMTr; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1725889AbfFNSHn (ORCPT + 99 others); Fri, 14 Jun 2019 14:07:43 -0400 Received: from casper.infradead.org ([85.118.1.10]:35586 "EHLO casper.infradead.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725808AbfFNSHn (ORCPT ); Fri, 14 Jun 2019 14:07:43 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=casper.20170209; h=Content-Transfer-Encoding:Content-Type: MIME-Version:References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Sender :Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help: List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=6u3mWzVqiKIvqHULlxY1C85MLfXNyfBlevwK2rEBH34=; b=c9CVcMTrd5qh68PGzm8/cyI1Az 1E86bzW84EvAUdQbm2C2w0eEMHFo1WtoZHj3tI5mhowzy2cfhJkGnc3SupxCP9SearFY/aN3gH8ZD 958kwU/VadVPM98/mPv9xglbMralS78z8X2FDRGGNdAI94SOTT14XT8Nw6Rk151aEK/zf+JPY/Y/d MDVVX9uVkCue0JYpM6vzf87HozsrxVDdxgtXrizNT2NyrOy83VET2Oesb3OLQN2fgEwi41ofmx+5l JxJk2jclPPW3E0ZMhCdcZSfo/eOeVqCHShkXKaqIFZZm1WEvmxe7fBh2fUqw4pIgbtCS4q/UXRvoT GwYrKRIQ==; Received: from 177.133.85.52.dynamic.adsl.gvt.net.br ([177.133.85.52] helo=coco.lan) by casper.infradead.org with esmtpsa (Exim 4.92 #3 (Red Hat Linux)) id 1hbqc0-0008Cj-G3; Fri, 14 Jun 2019 18:07:41 +0000 Date: Fri, 14 Jun 2019 15:07:36 -0300 From: Mauro Carvalho Chehab To: Linux Doc Mailing List , Greg Kroah-Hartman Cc: Mauro Carvalho Chehab , linux-kernel@vger.kernel.org, Jonathan Corbet , Rajat Jain , Bjorn Helgaas Subject: [PATCH v2 00/16] Add support to generate ABI documentation at admin-guide Message-ID: <20190614150736.043cb2dd@coco.lan> In-Reply-To: <3b8d7c64f887ddea01df3c4eeabc745c8ec45406.1560534648.git.mchehab+samsung@kernel.org> References: <3b8d7c64f887ddea01df3c4eeabc745c8ec45406.1560534648.git.mchehab+samsung@kernel.org> X-Mailer: Claws Mail 3.17.3 (GTK+ 2.24.32; x86_64-redhat-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 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