HV: enable multiboot module string as kernel bootargs

Previously the VM kernel bootargs for pre-launched VMs and direct boot mode
of SOS VM are built-in hypervisor binary so end users have no way to change
it. Now we provide another option that the multiboot module string could be
used as bootargs also. This would bring convenience to end users when they
use GRUB as bootloader because the bootargs could be configurable in GRUB
menu.

The usage is if there is any string follows configured kernel_mod_tag in
module string, the string will be used as new kernel bootargs instead of
built-in kernel bootargs. If there is no string follows kernel_mod_tag,
then the built-in bootargs will be the default kernel bootargs.

Please note kernel_mod_tag must be the first word in module string in any
case, it is used to specify the module for which VM.

Tracked-On: #4885

Signed-off-by: Victor Sun <victor.sun@intel.com>
Reviewed-by: Yin Fengwei <fengwei.yin@intel.com>
Reviewed-by: Eddie Dong <eddie.dong@intel.com>
This commit is contained in:
Victor Sun
2020-06-05 15:22:40 +08:00
committed by wenlingz
parent 80262f0602
commit db690e0967
5 changed files with 40 additions and 11 deletions

View File

@@ -29,6 +29,11 @@ static inline bool is_space(char c)
return ((c == ' ') || (c == '\t'));
}
static inline bool is_eol(char c)
{
return ((c == 0x0d) || (c == 0x0a) || (c == '\0'));
}
/* Function prototypes */
int32_t strcmp(const char *s1_arg, const char *s2_arg);
int32_t strncmp(const char *s1_arg, const char *s2_arg, size_t n_arg);