[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Minios-devel] [UNIKRAFT PATCH v3 0/8] Introduce unikraft library argument
The patch series introduces unikraft library arguments library. This library provides interfaces through which the library developer can pass argument to a unikraft library. We allow arguments of types signed and unsigned integer, char and null terminated string. We also allow for passing an array integers and char. The arrays are delimited by a ' '. This patch also implements the heap_size argument in the linuxu platform as a library argument. Changes since v2: Patch 1: * Split the uk_version into separate patch. Patch 2: * Detect parameter without value * Add additional error messages for the user. Patch 8: * Document the usage of heap_size parameter in Config.uk Changes since v1: Patch 1: * Support the libparam.h with dummy implementation. * Change the PARAM_TYPE macro signature. * Remove section needed for parameter name * Change __u8 data type for the param meta data with __u32 * Move the version implementation to ukboot * Restructure argument processing in function `kernel_arg_fetch`. * Add check for the overflow/underflow * Clean up the debug messages. Patch 2: * Add dummy implementation for the UK_PARAM_STR Patch 3: * Add dummy implementation for the UK_PARAM_ARR * Determine the array size automatically * Prevent overflow of the array elements Patch 4: * Move the build system changes needed to support library parameter to makefile.rules * Remove the platform specific build system functions as the build system can infer if the library belongs to specific platform or not. Patch 5: * Remove ifdef around the heap_size configuration parameter, as the library libparam.h provides dummy implementation of the UK_PARAM* interface. Patch 7: * Add additional example for string and array. This patch is dependent on the patch series "Process linker script and library specific Makefile.rules" [1] https://patchwork.unikraft.org/project/unikraft/list/?series=745 Sharan Santhanam (8): lib/ukboot: Implement uk_version lib/uklibparam: Introduce the library parameter lib/uklibparam: Add support for string datatype lib/uklibparam: Add support for passing array lib/uklibparam: Add linker script for parameter plat/linuxu: Introduce heap size as a lib parameter lib/ukboot: Replace the parser with the uklibparam lib/uklibparam: Add documentation for parameters MAINTAINERS.md | 5 + doc/guides/developers-app.rst | 107 +++++ lib/Config.uk | 1 + lib/Makefile.uk | 1 + lib/ukboot/Makefile.uk | 1 + lib/ukboot/boot.c | 20 +- lib/ukboot/exportsyms.uk | 1 + lib/ukboot/include/uk/version.h | 6 + lib/ukboot/version.c | 11 + lib/uklibparam/Config.uk | 5 + lib/uklibparam/Makefile.rules | 15 + lib/uklibparam/Makefile.uk | 7 + lib/uklibparam/exportsyms.uk | 2 + lib/uklibparam/include/uk/libparam.h | 453 +++++++++++++++++++++ lib/uklibparam/libparam.lds.S | 32 ++ lib/uklibparam/param.c | 580 +++++++++++++++++++++++++++ plat/linuxu/Config.uk | 6 +- plat/linuxu/Makefile.uk | 2 + plat/linuxu/memory.c | 42 +- plat/linuxu/setup.c | 125 ------ support/build/Makefile.rules | 2 +- 21 files changed, 1291 insertions(+), 133 deletions(-) create mode 100644 lib/ukboot/include/uk/version.h create mode 100644 lib/ukboot/version.c create mode 100644 lib/uklibparam/Config.uk create mode 100644 lib/uklibparam/Makefile.rules create mode 100644 lib/uklibparam/Makefile.uk create mode 100644 lib/uklibparam/exportsyms.uk create mode 100644 lib/uklibparam/include/uk/libparam.h create mode 100644 lib/uklibparam/libparam.lds.S create mode 100644 lib/uklibparam/param.c -- 2.20.1 _______________________________________________ Minios-devel mailing list Minios-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/minios-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |