<div dir="ltr">The word control was misspelled as constrol in multiple locations. This bug was discovered because it was causing a udevadm command to fail during execution of the redhat_postinstall.sh script. The below patch corrects these misspellings. Following this change, the udevadm command no longer fails on CentOS 8 during execution of the above referenced script. None of the other corrections of this spelling were tested; so they should be verified prior to incorporation of this patch.<br><br>I'm licensing this patch under the MIT license. Please review. Feedback is welcome. Thanks!<br><br>Timothy Tacker<br><br>---<br> .../Additions/x11/x11include/xorg-server-1.4.2/xf86PciIds.h | 4 ++--<br> .../x11/x11include/xorg-server-1.4.2/xf86PciStdIds.h        | 4 ++--<br> src/VBox/Main/UnattendedTemplates/debian_postinstall.sh     | 2 +-<br> src/VBox/Main/UnattendedTemplates/redhat_postinstall.sh     | 2 +-<br> src/VBox/ValidationKit/bootsectors/bs3kit/bs3kit.h          | 6 +++---<br> 5 files changed, 9 insertions(+), 9 deletions(-)<br><br>diff --git a/src/VBox/Additions/x11/x11include/xorg-server-1.4.2/xf86PciIds.h b/src/VBox/Additions/x11/x11include/xorg-server-1.4.2/xf86PciIds.h<br>index 87d23f4b..e02b93d2 100644<br>--- a/src/VBox/Additions/x11/x11include/xorg-server-1.4.2/xf86PciIds.h<br>+++ b/src/VBox/Additions/x11/x11include/xorg-server-1.4.2/xf86PciIds.h<br>@@ -10,7 +10,7 @@<br>  */<br> <br> /*<br>- * Copyright � 2002 by the XFree86 Project, Inc.<br>+ * Copyright � 2002 by the XFree86 Project, Inc.<br>  *<br>  * The pci.ids file and the data it contains are from the Linux PCI ID's<br>  * Project (<a href="http://pciids.sf.net/">http://pciids.sf.net/</a>).  It is maintained by Martin Mares<br>@@ -13489,7 +13489,7 @@ static const char pci_subsys_11ab_4320_11ab_0321[] = "Marvell RDK-8003";<br> static const char pci_subsys_11ab_4320_11ab_1021[] = "Marvell RDK-8010";<br> #endif<br> #ifdef INIT_SUBSYS_INFO<br>-static const char pci_subsys_11ab_4320_11ab_4320[] = "Marvell Yukon Gigabit Ethernet 10/100/1000Baset-T Constroller (Asus)";<br>+static const char pci_subsys_11ab_4320_11ab_4320[] = "Marvell Yukon Gigabit Ethernet 10/100/1000Baset-T Controller (Asus)";<br> #endif<br> #ifdef INIT_SUBSYS_INFO<br> static const char pci_subsys_11ab_4320_11ab_5021[] = "Marvell Yukon Gigabit Ethernet 10/100/1000Base-T Controller (64 bit)";<br>diff --git a/src/VBox/Additions/x11/x11include/xorg-server-1.4.2/xf86PciStdIds.h b/src/VBox/Additions/x11/x11include/xorg-server-1.4.2/xf86PciStdIds.h<br>index 87d23f4b..e02b93d2 100644<br>--- a/src/VBox/Additions/x11/x11include/xorg-server-1.4.2/xf86PciStdIds.h<br>+++ b/src/VBox/Additions/x11/x11include/xorg-server-1.4.2/xf86PciStdIds.h<br>@@ -10,7 +10,7 @@<br>  */<br> <br> /*<br>- * Copyright � 2002 by the XFree86 Project, Inc.<br>+ * Copyright � 2002 by the XFree86 Project, Inc.<br>  *<br>  * The pci.ids file and the data it contains are from the Linux PCI ID's<br>  * Project (<a href="http://pciids.sf.net/">http://pciids.sf.net/</a>).  It is maintained by Martin Mares<br>@@ -13489,7 +13489,7 @@ static const char pci_subsys_11ab_4320_11ab_0321[] = "Marvell RDK-8003";<br> static const char pci_subsys_11ab_4320_11ab_1021[] = "Marvell RDK-8010";<br> #endif<br> #ifdef INIT_SUBSYS_INFO<br>-static const char pci_subsys_11ab_4320_11ab_4320[] = "Marvell Yukon Gigabit Ethernet 10/100/1000Baset-T Constroller (Asus)";<br>+static const char pci_subsys_11ab_4320_11ab_4320[] = "Marvell Yukon Gigabit Ethernet 10/100/1000Baset-T Controller (Asus)";<br> #endif<br> #ifdef INIT_SUBSYS_INFO<br> static const char pci_subsys_11ab_4320_11ab_5021[] = "Marvell Yukon Gigabit Ethernet 10/100/1000Base-T Controller (64 bit)";<br>diff --git a/src/VBox/Main/UnattendedTemplates/debian_postinstall.sh b/src/VBox/Main/UnattendedTemplates/debian_postinstall.sh<br>index c4e05aeb..8e14cd46 100755<br>--- a/src/VBox/Main/UnattendedTemplates/debian_postinstall.sh<br>+++ b/src/VBox/Main/UnattendedTemplates/debian_postinstall.sh<br>@@ -211,7 +211,7 @@ echo "--------------------------------------------------" >> "${MY_LOGFILE}"<br> echo '** Installing VirtualBox Guest Additions...' | tee -a "${MY_LOGFILE}"<br> MY_IGNORE_EXITCODE=2  # returned if modules already loaded and reboot required.<br> log_command_in_target /bin/bash "${MY_CHROOT_CDROM}/vboxadditions/VBoxLinuxAdditions.run" --nox11<br>-log_command_in_target /bin/bash -c "udevadm constrol --reload-rules" # GAs doesn't yet do this.<br>+log_command_in_target /bin/bash -c "udevadm control --reload-rules" # GAs doesn't yet do this.<br> log_command_in_target /bin/bash -c "udevadm trigger"                 # (ditto)<br> MY_IGNORE_EXITCODE=<br> log_command_in_target usermod -a -G vboxsf "@@VBOX_INSERT_USER_LOGIN@@"<br>diff --git a/src/VBox/Main/UnattendedTemplates/redhat_postinstall.sh b/src/VBox/Main/UnattendedTemplates/redhat_postinstall.sh<br>index 82f77590..a41e8eba 100755<br>--- a/src/VBox/Main/UnattendedTemplates/redhat_postinstall.sh<br>+++ b/src/VBox/Main/UnattendedTemplates/redhat_postinstall.sh<br>@@ -191,7 +191,7 @@ echo "--------------------------------------------------" >> "${MY_LOGFILE}"<br> echo '** Installing VirtualBox Guest Additions...' | tee -a "${MY_LOGFILE}"<br> MY_IGNORE_EXITCODE=2  # returned if modules already loaded and reboot required.<br> log_command_in_target /bin/bash "${MY_CHROOT_CDROM}/vboxadditions/VBoxLinuxAdditions.run" --nox11<br>-log_command_in_target /bin/bash -c "udevadm constrol --reload-rules" # GAs doesn't yet do this.<br>+log_command_in_target /bin/bash -c "udevadm control --reload-rules" # GAs doesn't yet do this.<br> log_command_in_target /bin/bash -c "udevadm trigger"                 # (ditto)<br> MY_IGNORE_EXITCODE=<br> log_command_in_target usermod -a -G vboxsf "@@VBOX_INSERT_USER_LOGIN@@"<br>diff --git a/src/VBox/ValidationKit/bootsectors/bs3kit/bs3kit.h b/src/VBox/ValidationKit/bootsectors/bs3kit/bs3kit.h<br>index 2812b981..b2394794 100644<br>--- a/src/VBox/ValidationKit/bootsectors/bs3kit/bs3kit.h<br>+++ b/src/VBox/ValidationKit/bootsectors/bs3kit/bs3kit.h<br>@@ -2024,7 +2024,7 @@ BS3_CMN_PROTO_STUB(void, Bs3SlabInit,(PBS3SLABCTL pSlabCtl, size_t cbSlabCtl, ui<br>  * Allocates one chunk from a slab.<br>  *<br>  * @returns Pointer to a chunk on success, NULL if we're out of chunks.<br>- * @param   pSlabCtl        The slab constrol structure to allocate from.<br>+ * @param   pSlabCtl        The slab control structure to allocate from.<br>  */<br> BS3_CMN_PROTO_STUB(void BS3_FAR *, Bs3SlabAlloc,(PBS3SLABCTL pSlabCtl));<br> <br>@@ -2033,7 +2033,7 @@ BS3_CMN_PROTO_STUB(void BS3_FAR *, Bs3SlabAlloc,(PBS3SLABCTL pSlabCtl));<br>  *<br>  * @returns Pointer to the request number of chunks on success, NULL if we're<br>  *          out of chunks.<br>- * @param   pSlabCtl        The slab constrol structure to allocate from.<br>+ * @param   pSlabCtl        The slab control structure to allocate from.<br>  * @param   cChunks         The number of contiguous chunks we want.<br>  * @param   fFlags          Flags, see BS3_SLAB_ALLOC_F_XXX<br>  */<br>@@ -2044,7 +2044,7 @@ BS3_CMN_PROTO_STUB(void BS3_FAR *, Bs3SlabAllocEx,(PBS3SLABCTL pSlabCtl, uint16_<br>  *<br>  * @returns Number of chunks actually freed.  When correctly used, this will<br>  *          match the @a cChunks parameter, of course.<br>- * @param   pSlabCtl        The slab constrol structure to free from.<br>+ * @param   pSlabCtl        The slab control structure to free from.<br>  * @param   uFlatChunkPtr   The flat address of the chunks to free.<br>  * @param   cChunks         The number of contiguous chunks to free.<br>  */<br>-- <br><br></div>