diff --git a/1003-fix-spaces-in-vmware-udev-rule-for-scsi-devices.patch b/1003-fix-spaces-in-vmware-udev-rule-for-scsi-devices.patch new file mode 100644 index 0000000..40bd903 --- /dev/null +++ b/1003-fix-spaces-in-vmware-udev-rule-for-scsi-devices.patch @@ -0,0 +1,25 @@ +From c1bd2508943a462acdde8dd0914a36e9fd5b50c6 Mon Sep 17 00:00:00 2001 +From: Ashish Samant +Date: Mon, 15 Aug 2016 15:59:23 -0400 +Subject: [PATCH] fix spaces in vmware udev rule for scsi devices + +Orabug: 24461968 + +Signed-off-by: Ashish Samant + +patch forward ported to ol9 +Signed-off-by: Darren Archibald +--- + 99-vmware-scsi-timeout.rules | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a//open-vm-tools-11.0.0-1454943499-vmware-scsi-timeout.rules b/open-vm-tools-11.0.0-14549434/99-vmware-scsi-timeout.rules +index 598d57a..e3729c0 100644 +--- a/open-vm-tools-11.0.0-14549434/99-vmware-scsi-timeout.rules ++++ b/open-vm-tools-11.0.0-14549434/99-vmware-scsi-timeout.rules +@@ -1 +1 @@ +-ACTION=="add", SUBSYSTEMS=="scsi", ATTRS{vendor}=="VMware ", ATTRS{model}=="Virtual disk ", RUN+="/bin/sh -c 'echo 180 > /sys$DEVPATH/timeout'" ++ACTION=="add", SUBSYSTEMS=="scsi", ATTRS{vendor}=="VMware ", ATTRS{model}=="Virtual disk ", RUN+="/bin/sh -c 'echo 180 > /sys$DEVPATH/timeout'" +-- +1.8.3.1 + diff --git a/add-vmware-udev-rule-for-scsi-devices.patch b/add-vmware-udev-rule-for-scsi-devices.patch new file mode 100644 index 0000000..5839e41 --- /dev/null +++ b/add-vmware-udev-rule-for-scsi-devices.patch @@ -0,0 +1,31 @@ +From ce9da81c7fef3b30f458d191542c8e1029ada361 Mon Sep 17 00:00:00 2001 +From: Ashish Samant +Date: Fri, 16 Oct 2015 17:02:29 -0700 +Subject: [PATCH] add-vmware-udev-rule-for-scsi-devices + +Increase timeout for scsi devices on VMWare guests. + +Orabug: 21819156 + +Signed-off-by : Ashish Samant +Reviewed-by : Todd Vierling + +patch forward ported to ol9 +Signed-off-by: Darren Archibald +--- + 99-vmware-scsi-timeout.rules | 3 +++ + 1 file changed, 3 insertions(+) + create mode 100644 99-vmware-scsi-timeout.rules + +diff --git a/open-vm-tools-11.0.0-14549434/99-vmware-scsi-timeout.rules b/open-vm-tools-11.0.0-14549434/99-vmware-scsi-timeout.rules +new file mode 100644 +index 0000000..1f12d0b +--- /dev/null ++++ b/open-vm-tools-11.0.0-14549434/99-vmware-scsi-timeout.rules +@@ -0,0 +1,3 @@ ++ACTION=="add", SUBSYSTEMS=="scsi", ATTRS{vendor}=="VMware ", ++ATTRS{model}=="Virtual disk ", RUN+="/bin/sh -c 'echo 180 ++>/sys$DEVPATH/timeout'" +-- +1.8.3.2 + diff --git a/fix-vmware-udev-rule-for-scsi-devices.patch b/fix-vmware-udev-rule-for-scsi-devices.patch new file mode 100644 index 0000000..5ba9c78 --- /dev/null +++ b/fix-vmware-udev-rule-for-scsi-devices.patch @@ -0,0 +1,27 @@ +From 629c5112b52bfe8f157879cfd1290d351e624e8e Mon Sep 17 00:00:00 2001 +From: Ashish Samant +Date: Wed, 24 Feb 2016 11:45:50 -0500 +Subject: [PATCH] fix-vmware-udev-rule-for-scsi-devices + +Orabug: 22815019 + +Signed-off-by: Ashish Samant + +patch forward ported to ol9 +Signed-off-by: Darren Archibald +--- + 99-vmware-scsi-timeout.rules | 4 +--- + 1 file changed, 1 insertion(+), 3 deletions(-) + +diff --git a/open-vm-tools-11.0.0-14549434/99-vmware-scsi-timeout.rules b/open-vm-tools-11.0.0-14549434/99-vmware-scsi-timeout.rules +index 1f12d0b..598d57a 100644 +--- a/open-vm-tools-11.0.0-14549434/99-vmware-scsi-timeout.rules ++++ b/open-vm-tools-11.0.0-14549434/99-vmware-scsi-timeout.rules +@@ -1,3 +1 @@ +-ACTION=="add", SUBSYSTEMS=="scsi", ATTRS{vendor}=="VMware ", +-ATTRS{model}=="Virtual disk ", RUN+="/bin/sh -c 'echo 180 +->/sys$DEVPATH/timeout'" ++ACTION=="add", SUBSYSTEMS=="scsi", ATTRS{vendor}=="VMware ", ATTRS{model}=="Virtual disk ", RUN+="/bin/sh -c 'echo 180 > /sys$DEVPATH/timeout'" +-- +1.8.3.1 + diff --git a/open-vm-tools.spec b/open-vm-tools.spec index 7ee1ef2..4dcd6ad 100644 --- a/open-vm-tools.spec +++ b/open-vm-tools.spec @@ -31,7 +31,7 @@ Name: open-vm-tools Version: %{toolsversion} -Release: 1%{?dist}.1 +Release: 1.0.1%{?dist}.2 Summary: Open Virtual Machine Tools for virtual machines hosted on VMware %if 0%{?bundle_gtkmm3} # atkmm: LGPL-2.1-or-later @@ -69,6 +69,10 @@ Source104: https://kojihub.stream.rdu2.redhat.com/kojifiles/vol/koji02/pa Source105: https://kojihub.stream.rdu2.redhat.com/kojifiles/vol/koji02/packages/pangomm/2.46.4/2.el10/src/pangomm-2.46.4-2.el10.src.rpm Source106: https://kojihub.stream.rdu2.redhat.com/kojifiles/vol/koji02/packages/gtkmm3.0/3.24.8/6.el10/src/gtkmm3.0-3.24.8-6.el10.src.rpm %endif +# Oracle patches +Patch1001: add-vmware-udev-rule-for-scsi-devices.patch +Patch1002: fix-vmware-udev-rule-for-scsi-devices.patch +Patch1003: 1003-fix-spaces-in-vmware-udev-rule-for-scsi-devices.patch %if 0%{?rhel} >= 7 ExclusiveArch: x86_64 aarch64 @@ -80,6 +84,8 @@ ExclusiveArch: %{ix86} x86_64 aarch64 #Patch0: .patch # For RHEL-117383 - [CISA Major Incident] CVE-2025-41244 open-vm-tools: Local privilege escalation in open-vm-tools [rhel-10.1] Patch1: ovt-Address-CVE-2025-41244.patch +# For RHEL-114958 - Cloud-init receives TERM signal from PID 1 in the middle of running user data [rhel-10.1.z] +Patch2: ovt-Handle-new-cloud-init-error-code-and-status.patch # Fix build when compiling with -std=c23 (GCC 15) #Patch1: https://github.com/vmware/open-vm-tools/pull/751.patch @@ -626,6 +632,16 @@ fi %{_bindir}/vmware-vgauth-smoketest %changelog +* Tue Jan 06 2026 EL Errata - 13.0.0-1.0.1 +- Fix spaces in vmware udev rule for scsi devices [Orabug: 24461968] +- Fix vmware udev rule in 99-vmware-scsi-timeout.rules file. [Orabug: 22815019] +- Increase timeout for scsi devices on VMWare guests by adding a udev rule. [Orabug: 21819156] + +* Fri Oct 31 2025 Miroslav Rezanina - 13.0.0-1.el10_1.2 +- ovt-Handle-new-cloud-init-error-code-and-status.patch [RHEL-114958] +- Resolves: RHEL-114958 + (Cloud-init receives TERM signal from PID 1 in the middle of running user data [rhel-10.1.z]) + * Fri Oct 03 2025 Miroslav Rezanina - 13.0.0-1.el10_1.1 - ovt-Address-CVE-2025-41244.patch [RHEL-117383] - Resolves: RHEL-117383 diff --git a/ovt-Handle-new-cloud-init-error-code-and-status.patch b/ovt-Handle-new-cloud-init-error-code-and-status.patch new file mode 100644 index 0000000..07c180c --- /dev/null +++ b/ovt-Handle-new-cloud-init-error-code-and-status.patch @@ -0,0 +1,74 @@ +From 0c50cb41fb5dd9c84d6a1efe880a1ebb618f9356 Mon Sep 17 00:00:00 2001 +From: Pengpeng Sun +Date: Wed, 27 Aug 2025 14:19:58 +0800 +Subject: [PATCH] Handle new cloud-init error code and status + +RH-Author: Ani Sinha +RH-MergeRequest: 66: Handle new cloud-init error code and status +RH-Jira: RHEL-114958 +RH-Acked-by: Miroslav Rezanina +RH-Acked-by: xiachen +RH-Commit: [1/1] bbb640f7b2ce99bddf512f5064e38bec718134f9 + + - A new error code [1] was introduced in cloud-init v23.4, RedHat team reported +that our OVT code shall handle this new error code properly, see +https://github.com/vmware/open-vm-tools/issues/768. +This change follows the backwards-compatible way in +https://cloudinit.readthedocs.io/en/latest/explanation/return_codes.html +to check that the return code is not equal to 1. + + - Running status has been changed from "not run" to "not started" in +cloud-init v24.1, see details in +https://github.com/canonical/cloud-init/commit/d175170aedc1398b85ac767573b8773a5a2e7c6f. +This change adds "not started" match to CLOUDINIT_STATUS_NOT_RUN. + +This patch was sent by John Wolfe over email and is available upstream here: +https://github.com/vmware/open-vm-tools/blob/Handle-new-cloud-init-error-code.patch/ + +It addresses open-vm-tools issue https://github.com/vmware/open-vm-tools/issues/768 + +This change has been tested internally by Amy Chen and is seen to fix the +original issue. + +1. https://cloudinit.readthedocs.io/en/latest/explanation/failure_states.html#error-codes + +Signed-off-by: Ani Sinha +--- + open-vm-tools/libDeployPkg/linuxDeployment.c | 10 +++++++--- + 1 file changed, 7 insertions(+), 3 deletions(-) + +diff --git a/open-vm-tools/libDeployPkg/linuxDeployment.c b/open-vm-tools/libDeployPkg/linuxDeployment.c +index 44cac8ef..82e83957 100644 +--- a/open-vm-tools/libDeployPkg/linuxDeployment.c ++++ b/open-vm-tools/libDeployPkg/linuxDeployment.c +@@ -1313,6 +1313,7 @@ static CLOUDINIT_STATUS_CODE + GetCloudinitStatus() { + // Cloud-init execution status messages + static const char* NOT_RUN = "not run"; ++ static const char* NOT_STARTED = "not started"; + static const char* RUNNING = "running"; + static const char* DONE = "done"; + static const char* ERROR = "error"; +@@ -1326,13 +1327,16 @@ GetCloudinitStatus() { + false, + cloudinitStatusCmdOutput, + MAX_LENGTH_CLOUDINIT_STATUS); +- if (forkExecResult != 0) { +- sLog(log_info, "Unable to get cloud-init status."); +- return CLOUDINIT_STATUS_UNKNOWN; ++ if (forkExecResult == 1) { ++ sLog(log_info, "Cloud-init experienced unrecoverable error."); ++ return CLOUDINIT_STATUS_ERROR; + } else { + if (strstr(cloudinitStatusCmdOutput, NOT_RUN) != NULL) { + sLog(log_info, "Cloud-init status is '%s'.", NOT_RUN); + return CLOUDINIT_STATUS_NOT_RUN; ++ } else if (strstr(cloudinitStatusCmdOutput, NOT_STARTED) != NULL) { ++ sLog(log_info, "Cloud-init status is '%s'.", NOT_STARTED); ++ return CLOUDINIT_STATUS_NOT_RUN; + } else if (strstr(cloudinitStatusCmdOutput, RUNNING) != NULL) { + sLog(log_info, "Cloud-init status is '%s'.", RUNNING); + return CLOUDINIT_STATUS_RUNNING; +-- +2.47.3 +