Sync from SUSE:ALP:Source:Standard:1.0 qclib revision 9546808eb2195911fc0c15d4f107267d

This commit is contained in:
Adrian Schröter 2024-04-20 00:14:17 +02:00
parent 9bf2f07b9d
commit 16d98fa34c
6 changed files with 54 additions and 57 deletions

BIN
qclib-2.4.0.tar.gz (Stored with Git LFS)

Binary file not shown.

BIN
qclib-2.4.1.tar.gz (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -0,0 +1,31 @@
--- qclib-2.4.1.orig/query_capacity_hypfs.c 2023-12-17 23:06:06.000000000 +0100
+++ qclib-2.4.1.changed/query_capacity_hypfs.c 2024-04-19 17:07:09.007848701 +0200
@@ -11,6 +11,7 @@
#include "query_capacity_data.h"
+#define N_PATH_MOUNTED "/proc/self/mounts"
#define QC_HYPFS_LPAR "/s390_hypfs/diag_204"
#define QC_HYPFS_ZVM "/s390_hypfs/diag_2fc"
@@ -830,9 +831,9 @@
}
qc_debug(hdl, "Locate mount point of %s\n", fstype);
*mp = NULL;
- mounts = setmntent(_PATH_MOUNTED, "r");
+ mounts = setmntent(N_PATH_MOUNTED, "r");
if (!mounts) {
- qc_debug(hdl, "Error: Failed to open %s\n", _PATH_MOUNTED);
+ qc_debug(hdl, "Error: Failed to open %s\n", N_PATH_MOUNTED);
return -1;
}
while ((mntbuf = getmntent(mounts)) != NULL) {
@@ -848,7 +849,7 @@
}
endmntent(mounts);
if (!*mp) {
- qc_debug(hdl, "%s not mounted according to '%s'\n", fstype, _PATH_MOUNTED);
+ qc_debug(hdl, "%s not mounted according to '%s'\n", fstype, N_PATH_MOUNTED);
return 1;
}
qc_debug(hdl, "%s mounted at '%s'\n", fstype, *mp);

View File

@ -1,51 +0,0 @@
commit 73f9792009be42fe652ae897d390852f18bf445a
Author: Stefan Raspl <raspl@linux.ibm.com>
Date: Thu Sep 7 22:47:16 2023 +0200
Handle systems with /sys/kernel/security/lockdown enabled
Hypfs becomes inaccessible when /sys/kernel/security/lockdown is enabled, as
is the case with e.g. secure booted systems.
To reproduce, run
echo integrity > /sys/kernel/security/lockdown
Since qclib conceptually only requires access to /proc/sysinfo at a minimum,
we simply skip hypfs in this case.
Signed-off-by: Stefan Raspl <raspl@linux.ibm.com>
diff --git a/query_capacity_hypfs.c b/query_capacity_hypfs.c
index 9845e88b..3907c269 100644
--- a/query_capacity_hypfs.c
+++ b/query_capacity_hypfs.c
@@ -617,7 +617,7 @@ static int qc_read_diag_file(struct qc_handle *hdl, const char *dbgfs, struct hy
out_fail:
free(priv->data);
priv->data = NULL;
- rc = -1;
+ rc = 1;
out:
free(fpath);
@@ -942,14 +942,18 @@ static int qc_hypfs_open(struct qc_handle *hdl, char **buf) {
/* if z/VM diag file exists, the LPAR diag file's content
isn't valid, so we're done after handling the z/VM file */
priv->diag = QC_HYPFS_ZVM;
- if ((rc = qc_read_diag_file(hdl, dbgfs, priv)) != 0)
+ if ((rc = qc_read_diag_file(hdl, dbgfs, priv)) != 0) {
+ rc = 0; // not a fatal error - we just skip this source
goto out;
+ }
priv->avail = HYPFS_AVAIL_BIN_ZVM;
} else {
qc_debug(hdl, "No z/VM diag file found, must be an LPAR\n");
priv->diag = QC_HYPFS_LPAR;
- if ((rc = qc_read_diag_file(hdl, dbgfs, priv)) != 0)
+ if ((rc = qc_read_diag_file(hdl, dbgfs, priv)) != 0) {
+ rc = 0; // not a fatal error - we just skip this source
goto out;
+ }
priv->avail = HYPFS_AVAIL_BIN_LPAR;
}
} else {

View File

@ -1,3 +1,19 @@
-------------------------------------------------------------------
Fri Apr 19 11:55:09 UTC 2024 - Nikolay Gueorguiev <nikolay.gueorguiev@suse.com>
- Applied a patch to change the _PATH_MOUNTED (bsc#1222143)
* qclib-change-_PATH_MOUNTED.patch
-------------------------------------------------------------------
Mon Feb 12 16:48:47 UTC 2024 - Nikolay Gueorguiev <nikolay.gueorguiev@suse.com>
- Upgrade to version 2.4.1 (jsc#PED-3285)
* Handle systems with `/sys/kernel/security/lockdown` enabled
* Consistency check: Fix accounting of reserved cores and CPUs
* Trace: Fix display of version information
* Doxygen config: Remove unused options
- Removed obsolete patch qclib-sys-kernel-security-lockdown-enabled.patch
-------------------------------------------------------------------
Wed Oct 25 06:16:21 UTC 2023 - Nikolay Gueorguiev <nikolay.gueorguiev@suse.com>

View File

@ -1,7 +1,7 @@
#
# spec file for package qclib
#
# Copyright (c) 2023 SUSE LLC
# Copyright (c) 2024 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@ -19,7 +19,7 @@
%global _lto_cflags %{?_lto_cflags} -ffat-lto-objects
Name: qclib
Version: 2.4.0
Version: 2.4.1
Release: 0
Summary: Query Capacity library
License: BSD-3-Clause
@ -37,7 +37,8 @@ BuildRequires: glibc-devel
%endif
#
Patch001: qclib-sys-kernel-security-lockdown-enabled.patch
### Patch001: qclib-sys-kernel-security-lockdown-enabled.patch
Patch001: qclib-change-_PATH_MOUNTED.patch
%description
qclib provides a C API for extraction of system information for Linux on z