[PATCH v2 07/12] devtools: check VMDq capability

Thomas Monjalon thomas at monjalon.net
Thu Oct 22 11:44:37 CEST 2026


21/10/2026 12:30, David Marchand:
> --- a/devtools/check-doc-vs-code.sh
> +++ b/devtools/check-doc-vs-code.sh
> @@ -78,6 +78,28 @@ driver_code_dir() # <driver>
>  	esac
>  }
>  
> +doc_code_map=","

What is this comma?

> +for d in $rootdir/doc/guides/nics/features/*.ini; do
> +	drv=$(basename "$d" .ini)
> +	code=$(driver_code_dir $drv)
> +	case $doc_code_map in
> +	*,$code:*)
> +		before=${doc_code_map%,$code:*}
> +		after=${doc_code_map#*,$code:}
> +		drivers=${after%%,*}
> +		rest=${after#*,}
> +		doc_code_map="$before,$code:$drivers $drv,$rest" ;;
> +	*)
> +		doc_code_map="$doc_code_map$code: $drv," ;;
> +	esac
> +done

Please add a comment for this block to explain the goal.

> +
> +docs_for_code() # <code_dir>

Even the name of this function is not self-explanatory.

> +{
> +	tmp=${doc_code_map#*,$1:}
> +	echo ${tmp%%,*}
> +}

[...]
> +all_docs_agree() # <driver> <feature>

all docs agree on what?
a doc is supposed to refer to a single code path

> +{
> +	code=$(driver_code_dir $1)
> +	first=""
> +	for drv in $(docs_for_code $code); do
> +		d=$rootdir/doc/guides/nics/features/$drv.ini
> +		has_doc_feature "$d" "$2" && val=true || val=false
> +		[ -n "$first" ] || first=$val
> +		[ "$first" = "$val" ] || return 1
> +	done
> +	return 0
> +}
> +





More information about the dev mailing list