[PATCH locking/atomic 03/19] locking/atomic: Add kernel-doc and docbook_oldnew variables for headers

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The andnot, dec, inc, and try_cmpxchg files in the scripts/atomic/fallbacks
directory do not supply kernel-doc headers.  One reason for this is that
there is currently no reasonably way to document either the ordering or
whether the old or the new value is returned.

Therefore, supply docbook_order and docbook_oldnew sh variables that contain
the needed information.

Signed-off-by: Paul E. McKenney <paulmck@xxxxxxxxxx>
Cc: Will Deacon <will@xxxxxxxxxx>
Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
Cc: Boqun Feng <boqun.feng@xxxxxxxxx>
Cc: Mark Rutland <mark.rutland@xxxxxxx>
---
 scripts/atomic/gen-atomic-fallback.sh     | 17 +++++++++++++++++
 scripts/atomic/gen-atomic-instrumented.sh | 17 +++++++++++++++++
 2 files changed, 34 insertions(+)

diff --git a/scripts/atomic/gen-atomic-fallback.sh b/scripts/atomic/gen-atomic-fallback.sh
index 6e853f0dad8d..697da5f16f98 100755
--- a/scripts/atomic/gen-atomic-fallback.sh
+++ b/scripts/atomic/gen-atomic-fallback.sh
@@ -24,6 +24,23 @@ gen_template_fallback()
 	local params="$(gen_params "${int}" "${atomic}" "$@")"
 	local args="$(gen_args "$@")"
 
+	local docbook_order=full
+	if test "${order}" = "_relaxed"
+	then
+		local docbook_order=no
+	elif test -n "${order}"
+	then
+		docbook_order="`echo $order | sed -e 's/_//'`"
+	fi
+	local docbook_oldnew="new"
+	if test "${pfx}" = "fetch_"
+	then
+		docbook_oldnew="old"
+	elif test "${sfx}" != "_return"
+	then
+		docbook_oldnew="no"
+	fi
+
 	if [ ! -z "${template}" ]; then
 		printf "#ifndef ${atomicname}\n"
 		. ${template}
diff --git a/scripts/atomic/gen-atomic-instrumented.sh b/scripts/atomic/gen-atomic-instrumented.sh
index d9ffd74f73ca..99c72393d362 100755
--- a/scripts/atomic/gen-atomic-instrumented.sh
+++ b/scripts/atomic/gen-atomic-instrumented.sh
@@ -68,6 +68,23 @@ gen_proto_order_variant()
 	local args="$(gen_args "$@")"
 	local retstmt="$(gen_ret_stmt "${meta}")"
 
+	local docbook_order=full
+	if test "${order}" = "_relaxed"
+	then
+		local docbook_order=no
+	elif test -n "${order}"
+	then
+		docbook_order="`echo $order | sed -e 's/_//'`"
+	fi
+	local docbook_oldnew="new"
+	if test "${pfx}" = "fetch_"
+	then
+		docbook_oldnew="old"
+	elif test "${sfx}" != "_return"
+	then
+		docbook_oldnew="no"
+	fi
+
 cat <<EOF
 static __always_inline ${ret}
 ${atomicname}(${params})
-- 
2.40.1




[Index of Archives]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Linux FS]     [Yosemite Forum]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]

  Powered by Linux