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

[Minios-devel] [UNIKRAFT PATCH v2 2/7] lib/uklibparam: Add support for string datatype



This patch implements a way to forward strings parameters to the
library

Signed-off-by: Sharan Santhanam <sharan.santhanam@xxxxxxxxx>
Reviewed-by: Florian Schmidt <florian.schmidt@xxxxxxxxx>
---
 lib/uklibparam/include/uk/libparam.h | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)

diff --git a/lib/uklibparam/include/uk/libparam.h 
b/lib/uklibparam/include/uk/libparam.h
index 454cc0d6..1022bf7e 100644
--- a/lib/uklibparam/include/uk/libparam.h
+++ b/lib/uklibparam/include/uk/libparam.h
@@ -108,6 +108,14 @@ extern C {
  */
 #define UK_LIB_PARAM(name, type)
 
+/**
+ * Declare a string library param. This is a dummy implementation.
+ * @param name
+ *     The name of the parameter.
+ */
+#define UK_LIB_PARAM_STR(name)
+
+
 #else /* !CONFIG_LIBUKLIBPARAM */
 /**
  * Each parameter is bit-mapped as follows:
@@ -167,6 +175,8 @@ extern C {
 #define _LIB_PARAM___u32       PARAM_TYPE(0, 0, sizeof(__u32))
 #define _LIB_PARAM___s64       PARAM_TYPE(1, 0, sizeof(__s64))
 #define _LIB_PARAM___u64       PARAM_TYPE(0, 0, sizeof(__u64))
+#define _LIB_PARAM___uptr      PARAM_TYPE(0, 1, sizeof(__uptr))
+#define _LIB_PARAM_charp       _LIB_PARAM___uptr
 
 struct uk_param {
        /* The name of the param */
@@ -402,6 +412,15 @@ void _uk_libparam_lib_add(struct uk_lib_section *lib_sec);
        _LIB_PARAM_NAME_SET(name, _LIB_PARAM_STRING(UK_LIBPARAM_PREFIX, \
                                                    name));             \
        _LIB_UK_PARAM_SET(name, type, 1)
+
+/**
+ * Declare a string library param.
+ * @param name
+ *     The name of the parameter.
+ */
+#define UK_LIB_PARAM_STR(name)                                         \
+       UK_LIB_PARAM(name, __uptr)
+
 #endif /* !__ASSEMBLY__ */
 #endif /* CONFIG_LIBUKLIBPARAM */
 
-- 
2.20.1


_______________________________________________
Minios-devel mailing list
Minios-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/minios-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.