[v1,1/1] math.h: Document abs_diff()

Message ID 20230804050934.83223-1-andriy.shevchenko@linux.intel.com
State New
Headers
Series [v1,1/1] math.h: Document abs_diff() |

Commit Message

Andy Shevchenko Aug. 4, 2023, 5:09 a.m. UTC
  Initially abs_diff() has lack of documentation. Add it.

Suggested-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
---
 include/linux/math.h | 12 ++++++++++++
 1 file changed, 12 insertions(+)
  

Patch

diff --git a/include/linux/math.h b/include/linux/math.h
index 336e3e3678e7..dfba59b59998 100644
--- a/include/linux/math.h
+++ b/include/linux/math.h
@@ -155,6 +155,18 @@  __STRUCT_FRACT(u32)
 	__builtin_types_compatible_p(typeof(x), unsigned type),		\
 	({ signed type __x = (x); __x < 0 ? -__x : __x; }), other)
 
+/**
+ * abs_diff - return absolute value of the difference between the arguments
+ * @a: the first argument
+ * @b: the second argument
+ *
+ * @a and @b has to be of the same type. With this restriction we compare
+ * signed to signed and unsigned to unsigned. The result is the subtraction
+ * the smaller of the two from the bigger, hence result is always a positive
+ * value.
+ *
+ * Return: an absolute value of the difference between the @a and @b.
+ */
 #define abs_diff(a, b) ({			\
 	typeof(a) __a = (a);			\
 	typeof(b) __b = (b);			\