git: e5a7890dc00a - main - zfs: Use a statement expression to implement SET_ERROR()
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Wed, 19 Jun 2024 20:58:10 UTC
The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=e5a7890dc00ac0b158498db92008f7c0b5970eac commit e5a7890dc00ac0b158498db92008f7c0b5970eac Author: Mark Johnston <markj@FreeBSD.org> AuthorDate: 2024-06-19 16:01:54 +0000 Commit: Mark Johnston <markj@FreeBSD.org> CommitDate: 2024-06-19 20:57:30 +0000 zfs: Use a statement expression to implement SET_ERROR() This way we can avoid making assumptions about the SDT probe implementation. No functional change intended. This was submitted upstream as https://github.com/openzfs/zfs/pull/16284 MFC after: 1 week --- sys/contrib/openzfs/include/os/freebsd/spl/sys/sdt.h | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/sys/contrib/openzfs/include/os/freebsd/spl/sys/sdt.h b/sys/contrib/openzfs/include/os/freebsd/spl/sys/sdt.h index 2daa6de1af08..74e03fd5b956 100644 --- a/sys/contrib/openzfs/include/os/freebsd/spl/sys/sdt.h +++ b/sys/contrib/openzfs/include/os/freebsd/spl/sys/sdt.h @@ -31,13 +31,14 @@ #include_next <sys/sdt.h> #ifdef KDTRACE_HOOKS -/* CSTYLED */ +/* BEGIN CSTYLED */ SDT_PROBE_DECLARE(sdt, , , set__error); -#define SET_ERROR(err) \ - ((sdt_sdt___set__error->id ? \ - (*sdt_probe_func)(sdt_sdt___set__error->id, \ - (uintptr_t)err, 0, 0, 0, 0) : 0), err) +#define SET_ERROR(err) ({ \ + SDT_PROBE1(sdt, , , set__error, (uintptr_t)err); \ + err; \ +}) +/* END CSTYLED */ #else #define SET_ERROR(err) (err) #endif