From patchwork Mon Feb 24 15:30:01 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ferruh Yigit X-Patchwork-Id: 66011 X-Patchwork-Delegate: thomas@monjalon.net Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 70D3DA0524; Mon, 24 Feb 2020 16:30:10 +0100 (CET) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id A11282C39; Mon, 24 Feb 2020 16:30:09 +0100 (CET) Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by dpdk.org (Postfix) with ESMTP id B93EA1DBF for ; Mon, 24 Feb 2020 16:30:07 +0100 (CET) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by orsmga102.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 24 Feb 2020 07:30:05 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.70,480,1574150400"; d="scan'208";a="349937317" Received: from silpixa00399752.ir.intel.com (HELO silpixa00399752.ger.corp.intel.com) ([10.237.222.180]) by fmsmga001.fm.intel.com with ESMTP; 24 Feb 2020 07:30:03 -0800 From: Ferruh Yigit To: dev@dpdk.org, Thomas Monjalon Cc: Ferruh Yigit , Sean Morrissey Date: Mon, 24 Feb 2020 15:30:01 +0000 Message-Id: <20200224153001.3941073-1-ferruh.yigit@intel.com> X-Mailer: git-send-email 2.24.1 In-Reply-To: <20200224120227.454547-1-ferruh.yigit@intel.com> References: <20200224120227.454547-1-ferruh.yigit@intel.com> MIME-Version: 1.0 Subject: [dpdk-dev] [PATCH v3] devtools: export title syntax data for check-git-log X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" From: Sean Morrissey Moved title syntax to a separate file so that it improves code readability and allows easy addition. Also logic changed from checking for bad pattern to checking good pattern which documents the expected syntax more clearly, and does not have gaps in the checks. Signed-off-by: Sean Morrissey Signed-off-by: Ferruh Yigit --- v2: * renamed data file to words-case.txt and added to MAINTAINERS file * Updated script * as of now vdpa as file prefix is giving false positive v3: * add check excluding file prefix to address vdpa false positive * remove OCTEON_TX line from words-case.txt which was a mistake --- MAINTAINERS | 1 + devtools/check-git-log.sh | 69 +++++++++------------------------------ devtools/words-case.txt | 47 ++++++++++++++++++++++++++ 3 files changed, 64 insertions(+), 53 deletions(-) create mode 100644 devtools/words-case.txt diff --git a/MAINTAINERS b/MAINTAINERS index 1886b18c3..923b49680 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -95,6 +95,7 @@ F: devtools/check-dup-includes.sh F: devtools/check-maintainers.sh F: devtools/check-forbidden-tokens.awk F: devtools/check-git-log.sh +F: devtools/words-case.txt F: devtools/check-includes.sh F: devtools/check-symbol-maps.sh F: devtools/checkpatches.sh diff --git a/devtools/check-git-log.sh b/devtools/check-git-log.sh index f9d055039..4e65be0e4 100755 --- a/devtools/check-git-log.sh +++ b/devtools/check-git-log.sh @@ -83,57 +83,22 @@ bad=$(echo "$headlines" | grep --color=always \ | sed 's,^,\t,') [ -z "$bad" ] || printf "Wrong headline uppercase:\n$bad\n" -# check headline uppercase (Rx/Tx, VF, L2, MAC, Linux, ARM...) -bad=$(echo "$headlines" | grep -E --color=always \ - -e ':.*\<(rx|tx|RX|TX)\>' \ - -e ':.*\<[pv]f\>' \ - -e ':.*\<[hsf]w\>' \ - -e ':.*\' \ - -e ':.*\' \ - -e ':.*\' \ - -e ':.*\<(Aarch64|AArch64|AARCH64|Aarch32|AArch32|AARCH32)\>' \ - -e ':.*\<(Armv7|ARMv7|ArmV7|armV7|ARMV7)\>' \ - -e ':.*\<(Armv8|ARMv8|ArmV8|armV8|ARMV8)\>' \ - -e ':.*\' \ - -e ':.*\' \ - -e ':.*\' \ - -e ':.*\' \ - -e ':.*\' \ - -e ':.*\' \ - -e ':.*\' \ - -e ':.*\' \ - -e ':.*\' \ - -e ':.*\' \ - -e ':.*\' \ - -e ':.*\' \ - -e ':.*\' \ - -e ':.*\' \ - -e ':.*\' \ - -e ':.*\' \ - -e ':.*\' \ - -e ':.*\' \ - -e ':.*\' \ - -e ':.*\' \ - -e ':.*\' \ - -e ':.*\' \ - -e ':.*\' \ - -e ':.*\' \ - -e ':.*\' \ - -e ':.*\' \ - -e ':.*\' \ - -e ':.*\<[Vv]lan\>' \ - -e ':.*\' \ - -e ':.*\' \ - | grep \ - -v ':.*\' \ - | sed 's,^,\t,') -[ -z "$bad" ] || printf "Wrong headline lowercase:\n$bad\n" - -# special case check for VMDq to give good error message -bad=$(echo "$headlines" | grep -E --color=always \ - -e '\<(vmdq|VMDQ)\>' \ - | sed 's,^,\t,') -[ -z "$bad" ] || printf "Wrong headline capitalization, use 'VMDq':\n$bad\n" +# check headline case (Rx/Tx, VF, L2, MAC, Linux ...) +IFS=' +' +words="$selfdir/words-case.txt" +for word in $(cat $words); do + bad=$(echo "$headlines" | grep -iw $word | grep -v $word) + if [ "$word" = "Tx" ]; then + bad=$(echo $bad | grep -v 'OCTEON\ TX') + fi + for bad_line in $bad; do + bad_word=$(echo $bad_line | cut -d":" -f2 | grep -io $word) + if [ -n "$bad_word" ]; then + printf "Wrong headline case:\n\"$bad_line\": $bad_word --> $word\n" + fi + done +done # check headline length (60 max) bad=$(echo "$headlines" | @@ -187,8 +152,6 @@ done) [ -z "$bad" ] || printf "Missing 'Fixes' tag:\n$bad\n" # check Fixes: reference -IFS=' -' fixtags=$(echo "$tags" | grep '^Fixes: ') bad=$(for fixtag in $fixtags ; do hash=$(echo "$fixtag" | sed 's,^Fixes: \([0-9a-f]*\).*,\1,') diff --git a/devtools/words-case.txt b/devtools/words-case.txt new file mode 100644 index 000000000..6bfb81985 --- /dev/null +++ b/devtools/words-case.txt @@ -0,0 +1,47 @@ +aarch32 +aarch64 +API +Arm +armv7 +armv8 +CRC +DCB +DMA +EEPROM +FreeBSD +FW +HW +IOVA +L2 +L3 +L4 +LACP +Linux +LRO +LSC +MAC +MSS +MTU +NIC +NUMA +NVM +PCI +PF +PHY +PMD +RETA +RSS +Rx +SCTP +SW +TOS +TPID +TSO +TTL +Tx +UDP +vDPA +VF +VLAN +VMDq +VSI