Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 01 Dec 2025 03:48:22 +0000
From:      Konstantin Belousov <kib@FreeBSD.org>
To:        src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org
Subject:   git: 05e683f3de7f - stable/15 - exterror(9): add SETEXTERROR_KE() macro
Message-ID:  <692d1006.2fbc5.6e0ec4f2@gitrepo.freebsd.org>

index | next in thread | raw e-mail

The branch stable/15 has been updated by kib:

URL: https://cgit.FreeBSD.org/src/commit/?id=05e683f3de7fb7873c48a4189b47c1d92eae7fe1

commit 05e683f3de7fb7873c48a4189b47c1d92eae7fe1
Author:     Konstantin Belousov <kib@FreeBSD.org>
AuthorDate: 2025-10-25 09:12:33 +0000
Commit:     Konstantin Belousov <kib@FreeBSD.org>
CommitDate: 2025-12-01 03:39:09 +0000

    exterror(9): add SETEXTERROR_KE() macro
    
    (cherry picked from commit 7746b51dae12b09266d02f02f8d3b772282ddaf1)
---
 sys/sys/exterrvar.h | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)

diff --git a/sys/sys/exterrvar.h b/sys/sys/exterrvar.h
index 6783a0d2d84f..5fce8ae7ffbe 100644
--- a/sys/sys/exterrvar.h
+++ b/sys/sys/exterrvar.h
@@ -37,6 +37,26 @@
 #define	SET_ERROR_MSG(mmsg)	NULL
 #endif
 
+#define	_SET_ERROR2_KE(kep, eerror, mmsg, pp1, pp2)	({		\
+	(kep)->error = (eerror);					\
+	(kep)->cat = EXTERR_CATEGORY;					\
+	(kep)->msg = SET_ERROR_MSG(mmsg);				\
+	(kep)->p1 = (pp1);						\
+	(kep)->p2 = (pp2);						\
+	(kep)->src_line = __LINE__;					\
+	(kep)->error;					       		\
+})
+#define	_SET_ERROR0_KE(kep, eerror, mmsg)				\
+	_SET_ERROR2_KE(kep, eerror, mmsg, 0, 0)
+#define	_SET_ERROR1_KE(kep, eerror, mmsg, pp1)				\
+	_SET_ERROR2_KE(kep, eerror, mmsg, pp1, 0)
+
+#define	_EXTERROR_MACRO_KE(kep, eerror, mmsg, _1, _2, NAME, ...)	\
+	NAME
+#define	EXTERROR_KE(...)						\
+	_EXTERROR_MACRO_KE(__VA_ARGS__, _SET_ERROR2_KE, _SET_ERROR1_KE,	\
+	    _SET_ERROR0_KE)(__VA_ARGS__)
+
 #define	_SET_ERROR2(eerror, mmsg, pp1, pp2)				\
 	exterr_set(eerror, EXTERR_CATEGORY, SET_ERROR_MSG(mmsg),	\
 	    (uintptr_t)(pp1), (uintptr_t)(pp2), __LINE__)


help

Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?692d1006.2fbc5.6e0ec4f2>