All of lore.kernel.org
 help / color / mirror / Atom feed
From: Thomas Monjalon <thomas@monjalon.net>
To: Neil Horman <nhorman@tuxdriver.com>
Cc: dev@dpdk.org, john.mcnamara@intel.com,
	bruce.richardson@intel.com, Ferruh Yigit <ferruh.yigit@intel.com>,
	Stephen Hemminger <stephen@networkplumber.org>
Subject: Re: [PATCH v2] checkpatches.sh: Add checks for ABI symbol addition
Date: Sun, 21 Jan 2018 21:29:18 +0100	[thread overview]
Message-ID: <10549424.KHioEKbQpN@xps> (raw)
In-Reply-To: <20180116182225.27133-1-nhorman@tuxdriver.com>

Hi,

16/01/2018 19:22, Neil Horman:
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
>  Developers and Maintainers Tools
>  M: Thomas Monjalon <thomas@monjalon.net>
> +M: Neil Horman <nhorman@tuxdriver.com>
>  F: MAINTAINERS
>  F: devtools/check-dup-includes.sh
>  F: devtools/check-maintainers.sh
> @@ -52,6 +53,7 @@ F: devtools/get-maintainer.sh
>  F: devtools/git-log-fixes.sh
>  F: devtools/load-devel-config
>  F: devtools/test-build.sh
> +F: devtools/validate-new-api.sh
>  F: license/

I really think it should be in the section "ABI versioning""

> --- a/devtools/checkpatches.sh
> +++ b/devtools/checkpatches.sh
> +export VALIDATE_NEW_API=$(dirname $(readlink -e $0))/validate-new-api.sh

Why export?

>  print_usage () {
>  	cat <<- END_OF_HELP
> +	$(dirname $0)
>  	usage: $(basename $0) [-q] [-v] [-nX|patch1 [patch2] ...]]

This dirname is a debug leftover?

> @@ -96,9 +100,25 @@ check () { # <patch> <commit> <title>
>  	else
>  		report=$($DPDK_CHECKPATCH_PATH $options - 2>/dev/null)
>  	fi
> -	[ $? -ne 0 ] || return 0
> +	reta=$?

What means reta?

> +
>  	$verbose || printf '\n### %s\n\n' "$3"
>  	printf '%s\n' "$report" | sed -n '1,/^total:.*lines checked$/p'
> +
> +	echo
> +	echo "Checking API additions/removals:"

You should respect $verbose before printing such header.

> +	if [ -n "$1" ] ; then
> +		report=$($VALIDATE_NEW_API $1)
> +	elif [ -n "$2" ] ; then
> +		report=$(git format-patch \
> +			 --find-renames --no-stat --stdout -1 $commit |
> +			$VALIDATE_NEW_API -)
> +	else
> +		report=$($VALIDATE_NEW_API -)
> +	fi
> +	[ $? -ne 0 -o $reta -ne 0 ] || return 0
> +	printf '%s\n' "$report" | sed -n '1,/^total:.*lines checked$/p'
> +
>  	status=$(($status + 1))
>  }

> --- /dev/null
> +++ b/devtools/validate-new-api.sh

About the file name, is it only for new API?
You don't like check-symbol-change.sh ?
It may be stupid, but I thought "validate" is more related to full test,
like validate-abi.sh does for the ABI, and "check" can be a partial
test like done in checkpatches.sh.

> +		}' > ./$mapdb
> +
> +		sort -u $mapdb > ./$mapdb.2
> +		mv -f $mapdb.2 $mapdb
[...]
> +mapfile=`mktemp mapdb.XXXXXX`
[...]
> +rm -f $mapfile

If you create temporary file, you should remove it in a trap cleanup,
in case of interrupted processing.
The best is to avoid temp file, but use variables instead.

  reply	other threads:[~2018-01-21 20:29 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-01-15 19:05 [PATCH] checkpatches.sh: Add checks for ABI symbol addition Neil Horman
2018-01-15 21:52 ` Thomas Monjalon
2018-01-16  0:37   ` Neil Horman
2018-01-15 22:20 ` Stephen Hemminger
2018-01-16  0:36   ` Neil Horman
2018-01-16 18:22 ` [PATCH v2] " Neil Horman
2018-01-21 20:29   ` Thomas Monjalon [this message]
2018-01-22  1:54     ` Neil Horman
2018-01-22  2:05       ` Thomas Monjalon
2018-01-31 17:27 ` [PATCH v3] " Neil Horman
2018-02-04 14:44   ` Thomas Monjalon
2018-02-05 17:29 ` [PATCH v4] " Neil Horman
2018-02-05 17:57   ` Thomas Monjalon
2018-02-09 15:21 ` [PATCH v5] " Neil Horman
2018-02-13 22:57   ` Thomas Monjalon
2018-02-14 19:19 ` [PATCH v6] " Neil Horman
2018-05-27 19:34   ` Thomas Monjalon
2018-05-27 21:00     ` Neil Horman
2018-05-27 22:01       ` Thomas Monjalon
2018-05-28 17:08         ` Neil Horman
2018-06-05 12:21 ` [PATCH v7] " Neil Horman
2018-06-14 13:30 ` [PATCH v8] " Neil Horman
2018-06-25 23:04   ` Thomas Monjalon
2018-06-27 17:58     ` Neil Horman
2018-06-27 18:01 ` [PATCH v9] " Neil Horman
2018-07-15 23:12   ` Thomas Monjalon
2018-08-14  3:53   ` Rao, Nikhil
2018-08-14 11:04     ` Neil Horman
2018-08-15  6:10       ` Nikhil Rao
2018-08-15 10:48         ` Neil Horman
2018-08-16  6:19           ` Rao, Nikhil
2018-08-16 10:42             ` Neil Horman

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=10549424.KHioEKbQpN@xps \
    --to=thomas@monjalon.net \
    --cc=bruce.richardson@intel.com \
    --cc=dev@dpdk.org \
    --cc=ferruh.yigit@intel.com \
    --cc=john.mcnamara@intel.com \
    --cc=nhorman@tuxdriver.com \
    --cc=stephen@networkplumber.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.