git: 6ecaa8dfb64b - main - sys/module.h: allow MODULE_DEPEND to accept macros
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Mon, 26 Jan 2026 09:33:20 UTC
The branch main has been updated by vexeduxr:
URL: https://cgit.FreeBSD.org/src/commit/?id=6ecaa8dfb64b796085afdf597ec3a79878bde12f
commit 6ecaa8dfb64b796085afdf597ec3a79878bde12f
Author: Ahmad Khalifa <vexeduxr@FreeBSD.org>
AuthorDate: 2026-01-26 09:27:59 +0000
Commit: Ahmad Khalifa <vexeduxr@FreeBSD.org>
CommitDate: 2026-01-26 09:32:10 +0000
sys/module.h: allow MODULE_DEPEND to accept macros
Allow MODULE_DEPEND to accept macros by adding an extra level of
indirection. Some drivers in the tree actually depend on this being the
case.
Reviewed by: imp
Differential Revision: https://reviews.freebsd.org/D54874
---
sys/sys/module.h | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/sys/sys/module.h b/sys/sys/module.h
index f749455bdf63..b4a08e2fc26f 100644
--- a/sys/sys/module.h
+++ b/sys/sys/module.h
@@ -116,15 +116,17 @@ struct mod_pnp_match_info
}; \
DATA_SET(modmetadata_set, MODULE_METADATA_CONCAT(uniquifier))
+#define MODULE_DEPEND_CONCAT(module, mdepend) _##module##_depend_on_##mdepend
#define MODULE_DEPEND(module, mdepend, vmin, vpref, vmax) \
- static struct mod_depend _##module##_depend_on_##mdepend \
+ static struct mod_depend MODULE_DEPEND_CONCAT(module, mdepend) \
__section(".data") = { \
vmin, \
vpref, \
vmax \
}; \
- MODULE_METADATA(_md_##module##_on_##mdepend, MDT_DEPEND, \
- &_##module##_depend_on_##mdepend, #mdepend)
+ MODULE_METADATA(MODULE_DEPEND_CONCAT(module, mdepend), \
+ MDT_DEPEND, &MODULE_DEPEND_CONCAT(module, mdepend), \
+ __XSTRING(mdepend))
/*
* Every kernel has a 'kernel' module with the version set to