systemd-256-17
Resolves: RHEL-60896
This commit is contained in:
		
							parent
							
								
									2444ccf6bf
								
							
						
					
					
						commit
						4c9544f7ce
					
				| @ -0,0 +1,53 @@ | |||||||
|  | From e20fddc3c5769ad1babb24392500264de6db59b6 Mon Sep 17 00:00:00 2001 | ||||||
|  | From: Michal Sekletar <msekleta@redhat.com> | ||||||
|  | Date: Tue, 30 Jul 2024 16:22:03 +0200 | ||||||
|  | Subject: [PATCH] socket: fix socket activation of stopped services with pinned | ||||||
|  |  FD store | ||||||
|  | 
 | ||||||
|  | (cherry picked from commit 941a12dcba57f6673230a9c413738c51374d2998) | ||||||
|  | 
 | ||||||
|  | Resolves: RHEL-60896 | ||||||
|  | ---
 | ||||||
|  |  src/core/socket.c                                      |  4 ++-- | ||||||
|  |  .../units/TEST-04-JOURNAL.stopped-socket-activation.sh | 10 ++++++++++ | ||||||
|  |  2 files changed, 12 insertions(+), 2 deletions(-) | ||||||
|  |  create mode 100755 test/units/TEST-04-JOURNAL.stopped-socket-activation.sh | ||||||
|  | 
 | ||||||
|  | diff --git a/src/core/socket.c b/src/core/socket.c
 | ||||||
|  | index 41147d4bf7..0694fe7aad 100644
 | ||||||
|  | --- a/src/core/socket.c
 | ||||||
|  | +++ b/src/core/socket.c
 | ||||||
|  | @@ -2481,7 +2481,7 @@ static int socket_start(Unit *u) {
 | ||||||
|  |                  /* If the service is already active we cannot start the | ||||||
|  |                   * socket */ | ||||||
|  |                  if (!IN_SET(service->state, | ||||||
|  | -                            SERVICE_DEAD, SERVICE_DEAD_BEFORE_AUTO_RESTART, SERVICE_FAILED, SERVICE_FAILED_BEFORE_AUTO_RESTART,
 | ||||||
|  | +                            SERVICE_DEAD, SERVICE_DEAD_BEFORE_AUTO_RESTART, SERVICE_DEAD_RESOURCES_PINNED, SERVICE_FAILED, SERVICE_FAILED_BEFORE_AUTO_RESTART,
 | ||||||
|  |                              SERVICE_AUTO_RESTART, SERVICE_AUTO_RESTART_QUEUED)) | ||||||
|  |                          return log_unit_error_errno(u, SYNTHETIC_ERRNO(EBUSY), | ||||||
|  |                                                      "Socket service %s already active, refusing.", UNIT(service)->id); | ||||||
|  | @@ -3369,7 +3369,7 @@ static void socket_trigger_notify(Unit *u, Unit *other) {
 | ||||||
|  |                  return; | ||||||
|  |   | ||||||
|  |          if (IN_SET(SERVICE(other)->state, | ||||||
|  | -                   SERVICE_DEAD, SERVICE_DEAD_BEFORE_AUTO_RESTART, SERVICE_FAILED, SERVICE_FAILED_BEFORE_AUTO_RESTART,
 | ||||||
|  | +                   SERVICE_DEAD, SERVICE_DEAD_BEFORE_AUTO_RESTART, SERVICE_DEAD_RESOURCES_PINNED, SERVICE_FAILED, SERVICE_FAILED_BEFORE_AUTO_RESTART,
 | ||||||
|  |                     SERVICE_FINAL_SIGTERM, SERVICE_FINAL_SIGKILL, | ||||||
|  |                     SERVICE_AUTO_RESTART, SERVICE_AUTO_RESTART_QUEUED)) | ||||||
|  |                 socket_enter_listening(s); | ||||||
|  | diff --git a/test/units/TEST-04-JOURNAL.stopped-socket-activation.sh b/test/units/TEST-04-JOURNAL.stopped-socket-activation.sh
 | ||||||
|  | new file mode 100755 | ||||||
|  | index 0000000000..083f5fa055
 | ||||||
|  | --- /dev/null
 | ||||||
|  | +++ b/test/units/TEST-04-JOURNAL.stopped-socket-activation.sh
 | ||||||
|  | @@ -0,0 +1,10 @@
 | ||||||
|  | +#!/usr/bin/env bash
 | ||||||
|  | +# SPDX-License-Identifier: LGPL-2.1-or-later
 | ||||||
|  | +set -eux
 | ||||||
|  | +set -o pipefail
 | ||||||
|  | +
 | ||||||
|  | +systemctl stop systemd-journald.service
 | ||||||
|  | +systemd-cat date
 | ||||||
|  | +
 | ||||||
|  | +# shellcheck disable=SC2016
 | ||||||
|  | +timeout 30 bash -xec 'until test "$(systemctl show -p SubState --value systemd-journald.service)" = "running"; do sleep 1; done'
 | ||||||
| @ -48,7 +48,7 @@ Url:            https://systemd.io | |||||||
| # Allow users to specify the version and release when building the rpm by  | # Allow users to specify the version and release when building the rpm by  | ||||||
| # setting the %%version_override and %%release_override macros. | # setting the %%version_override and %%release_override macros. | ||||||
| Version:        %{?version_override}%{!?version_override:256} | Version:        %{?version_override}%{!?version_override:256} | ||||||
| Release:        16%{?dist} | Release:        17%{?dist} | ||||||
| 
 | 
 | ||||||
| %global stable %(c="%version"; [ "$c" = "${c#*.*}" ]; echo $?) | %global stable %(c="%version"; [ "$c" = "${c#*.*}" ]; echo $?) | ||||||
| 
 | 
 | ||||||
| @ -205,6 +205,7 @@ Patch0094: 0094-confidential-virt-split-caching-of-CVM-detection-int.patch | |||||||
| Patch0095: 0095-confidential-virt-add-detection-for-s390x-target.patch | Patch0095: 0095-confidential-virt-add-detection-for-s390x-target.patch | ||||||
| Patch0096: 0096-man-systemd-detect-virt-fix-row-spanning-for-VM-head.patch | Patch0096: 0096-man-systemd-detect-virt-fix-row-spanning-for-VM-head.patch | ||||||
| Patch0097: 0097-man-systemd-detect-virt-list-known-CVM-technologies.patch | Patch0097: 0097-man-systemd-detect-virt-list-known-CVM-technologies.patch | ||||||
|  | Patch0098: 0098-socket-fix-socket-activation-of-stopped-services-wit.patch | ||||||
| 
 | 
 | ||||||
| # Downstream-only patches (9000–9999) | # Downstream-only patches (9000–9999) | ||||||
| 
 | 
 | ||||||
| @ -1139,6 +1140,9 @@ rm -f .file-list-* | |||||||
| rm -f %{name}.lang | rm -f %{name}.lang | ||||||
| 
 | 
 | ||||||
| %changelog | %changelog | ||||||
|  | * Tue Nov 12 2024 systemd maintenance team <systemd-maint@redhat.com> - 256-17 | ||||||
|  | - socket: fix socket activation of stopped services with pinned FD store (RHEL-60896) | ||||||
|  | 
 | ||||||
| * Tue Oct 29 2024 Troy Dawson <tdawson@redhat.com> | * Tue Oct 29 2024 Troy Dawson <tdawson@redhat.com> | ||||||
| - Bump release for October 2024 mass rebuild: | - Bump release for October 2024 mass rebuild: | ||||||
|   Resolves: RHEL-64018 |   Resolves: RHEL-64018 | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user