openSUSE Commits
Threads by month
- ----- 2024 -----
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2007 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2006 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
July 2024
- 1 participants
- 1521 discussions
03 Jul '24
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package golang-github-prometheus-prometheus for openSUSE:Factory checked in at 2024-07-03 20:29:20
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/golang-github-prometheus-prometheus (Old)
and /work/SRC/openSUSE:Factory/.golang-github-prometheus-prometheus.new.18349 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "golang-github-prometheus-prometheus"
Wed Jul 3 20:29:20 2024 rev:45 rq:1184874 version:2.53.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/golang-github-prometheus-prometheus/golang-github-prometheus-prometheus.changes 2024-07-01 11:18:35.063156766 +0200
+++ /work/SRC/openSUSE:Factory/.golang-github-prometheus-prometheus.new.18349/golang-github-prometheus-prometheus.changes 2024-07-03 20:29:48.719992793 +0200
@@ -1,0 +2,7 @@
+Fri Jun 28 15:31:44 UTC 2024 - Witek Bedyk <witold.bedyk(a)suse.com>
+
+- Bump go-retryablehttp to version 0.7.7
+ (CVE-2024-6104, bsc#1227038)
+- Add 0003-Bump-go-retryablehttp.patch
+
+-------------------------------------------------------------------
New:
----
0003-Bump-go-retryablehttp.patch
BETA DEBUG BEGIN:
New: (CVE-2024-6104, bsc#1227038)
- Add 0003-Bump-go-retryablehttp.patch
BETA DEBUG END:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ golang-github-prometheus-prometheus.spec ++++++
--- /var/tmp/diff_new_pack.QqLghX/_old 2024-07-03 20:29:50.108043596 +0200
+++ /var/tmp/diff_new_pack.QqLghX/_new 2024-07-03 20:29:50.108043596 +0200
@@ -47,6 +47,8 @@
Patch1: 0001-Do-not-force-the-pure-Go-name-resolver.patch
# Lifted from Debian's prometheus package
Patch2: 0002-Default-settings.patch
+# https://github.com/prometheus/prometheus/pull/14345 (CVE-2024-6104)
+Patch3: 0003-Bump-go-retryablehttp.patch
BuildRequires: fdupes
%if 0%{?suse_version} == 1500 && 0%{?sle_version} < 150300
BuildRequires: firewall-macros
++++++ 0003-Bump-go-retryablehttp.patch ++++++
From 4d25a94faa74e0a16e4bb7874c1d82faaf911d85 Mon Sep 17 00:00:00 2001
From: Daniel Mellado <dmellado(a)redhat.com>
Date: Tue, 25 Jun 2024 16:31:03 +0200
Subject: [PATCH] Bump go-retryablehttp to fix basic auth creds leak
This PR updates go-retryablehttp to version 0.7.7, even if it's used as
an indirect import. Versions previous to that can didn't sanitize urls,
discussed at HDCSEC-2024-12 [1]
[1] https://discuss.hashicorp.com/t/hcsec-2024-12-go-retryablehttp-can-leak-bas…
Signed-off-by: Daniel Mellado <dmellado(a)redhat.com>
---
go.mod | 4 ++--
go.sum | 9 ++++-----
2 files changed, 6 insertions(+), 7 deletions(-)
diff --git a/go.mod b/go.mod
index ac8b4f469d0..ce2f0714a0a 100644
--- a/go.mod
+++ b/go.mod
@@ -146,10 +146,10 @@ require (
github.com/hashicorp/cronexpr v1.1.2 // indirect
github.com/hashicorp/errwrap v1.1.0 // indirect
github.com/hashicorp/go-cleanhttp v0.5.2 // indirect
- github.com/hashicorp/go-hclog v1.5.0 // indirect
+ github.com/hashicorp/go-hclog v1.6.3 // indirect
github.com/hashicorp/go-immutable-radix v1.3.1 // indirect
github.com/hashicorp/go-multierror v1.1.1 // indirect
- github.com/hashicorp/go-retryablehttp v0.7.4 // indirect
+ github.com/hashicorp/go-retryablehttp v0.7.7 // indirect
github.com/hashicorp/go-rootcerts v1.0.2 // indirect
github.com/hashicorp/golang-lru v0.6.0 // indirect
github.com/hashicorp/serf v0.10.1 // indirect
diff --git a/go.sum b/go.sum
index 06db002f55b..956b9d89492 100644
--- a/go.sum
+++ b/go.sum
@@ -369,9 +369,8 @@ github.com/hashicorp/go-cleanhttp v0.5.0/go.mod h1:JpRdi6/HCYpAwUzNwuwqhbovhLtng
github.com/hashicorp/go-cleanhttp v0.5.1/go.mod h1:JpRdi6/HCYpAwUzNwuwqhbovhLtngrth3wmdIIUrZ80=
github.com/hashicorp/go-cleanhttp v0.5.2 h1:035FKYIWjmULyFRBKPs8TBQoi0x6d9G4xc9neXJWAZQ=
github.com/hashicorp/go-cleanhttp v0.5.2/go.mod h1:kO/YDlP8L1346E6Sodw+PrpBSV4/SoxCXGY6BqNFT48=
-github.com/hashicorp/go-hclog v0.9.2/go.mod h1:5CU+agLiy3J7N7QjHK5d05KxGsuXiQLrjA0H7acj2lQ=
-github.com/hashicorp/go-hclog v1.5.0 h1:bI2ocEMgcVlz55Oj1xZNBsVi900c7II+fWDyV9o+13c=
-github.com/hashicorp/go-hclog v1.5.0/go.mod h1:W4Qnvbt70Wk/zYJryRzDRU/4r0kIg0PVHBcfoyhpF5M=
+github.com/hashicorp/go-hclog v1.6.3 h1:Qr2kF+eVWjTiYmU7Y31tYlP1h0q/X3Nl3tPGdaB11/k=
+github.com/hashicorp/go-hclog v1.6.3/go.mod h1:W4Qnvbt70Wk/zYJryRzDRU/4r0kIg0PVHBcfoyhpF5M=
github.com/hashicorp/go-immutable-radix v1.0.0/go.mod h1:0y9vanUI8NX6FsYoO3zeMjhV/C5i9g4Q3DwcSNZ4P60=
github.com/hashicorp/go-immutable-radix v1.3.1 h1:DKHmCUm2hRBK510BaiZlwvpD40f8bJFeZnpfm2KLowc=
github.com/hashicorp/go-immutable-radix v1.3.1/go.mod h1:0y9vanUI8NX6FsYoO3zeMjhV/C5i9g4Q3DwcSNZ4P60=
@@ -383,8 +382,8 @@ github.com/hashicorp/go-multierror v1.1.0/go.mod h1:spPvp8C1qA32ftKqdAHm4hHTbPw+
github.com/hashicorp/go-multierror v1.1.1 h1:H5DkEtf6CXdFp0N0Em5UCwQpXMWke8IA0+lD48awMYo=
github.com/hashicorp/go-multierror v1.1.1/go.mod h1:iw975J/qwKPdAO1clOe2L8331t/9/fmwbPZ6JB6eMoM=
github.com/hashicorp/go-retryablehttp v0.5.3/go.mod h1:9B5zBasrRhHXnJnui7y6sL7es7NDiJgTc6Er0maI1Xs=
-github.com/hashicorp/go-retryablehttp v0.7.4 h1:ZQgVdpTdAL7WpMIwLzCfbalOcSUdkDZnpUv3/+BxzFA=
-github.com/hashicorp/go-retryablehttp v0.7.4/go.mod h1:Jy/gPYAdjqffZ/yFGCFV2doI5wjtH1ewM9u8iYVjtX8=
+github.com/hashicorp/go-retryablehttp v0.7.7 h1:C8hUCYzor8PIfXHa4UrZkU4VvK8o9ISHxT2Q8+VepXU=
+github.com/hashicorp/go-retryablehttp v0.7.7/go.mod h1:pkQpWZeYWskR+D1tR2O5OcBFOxfA7DoAO6xtkuQnHTk=
github.com/hashicorp/go-rootcerts v1.0.0/go.mod h1:K6zTfqpRlCUIjkwsN4Z+hiSfzSTQa6eBIzfwKfwNnHU=
github.com/hashicorp/go-rootcerts v1.0.2 h1:jzhAVGtqPKbwpyCPELlgNWhE1znq+qwJtW5Oi2viEzc=
github.com/hashicorp/go-rootcerts v1.0.2/go.mod h1:pqUvnprVnM5bf7AOirdbb01K4ccR319Vf4pU3K5EGc8=
++++++ vendor.tar.gz ++++++
/work/SRC/openSUSE:Factory/golang-github-prometheus-prometheus/vendor.tar.gz /work/SRC/openSUSE:Factory/.golang-github-prometheus-prometheus.new.18349/vendor.tar.gz differ: char 5, line 1
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-scipy for openSUSE:Factory checked in at 2024-07-03 20:29:17
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-scipy (Old)
and /work/SRC/openSUSE:Factory/.python-scipy.new.18349 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-scipy"
Wed Jul 3 20:29:17 2024 rev:74 rq:1184871 version:1.14.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-scipy/python-scipy.changes 2024-05-29 19:35:37.523996432 +0200
+++ /work/SRC/openSUSE:Factory/.python-scipy.new.18349/python-scipy.changes 2024-07-03 20:29:46.891925885 +0200
@@ -1,0 +2,208 @@
+Mon Jul 1 13:35:29 UTC 2024 - John Paul Adrian Glaubitz <adrian.glaubitz(a)suse.com>
+
+- Update to 1.14.0
+ ## Highlights of this release
+ * SciPy now supports the new Accelerate library introduced in macOS 13.3, and
+ has wheels built against Accelerate for macOS >=14 resulting in significant
+ performance improvements for many linear algebra operations.
+ * A new method, ``cobyqa``, has been added to `scipy.optimize.minimize` - this
+ is an interface for COBYQA (Constrained Optimization BY Quadratic
+ Approximations), a derivative-free optimization solver, designed to
+ supersede COBYLA, developed by the Department of Applied Mathematics, The
+ Hong Kong Polytechnic University.
+ * `scipy.sparse.linalg.spsolve_triangular` is now more than an order of
+ magnitude faster in many cases.
+ ## New features
+ # `scipy.fft` improvements
+ * A new function, `scipy.fft.prev_fast_len`, has been added. This function
+ finds the largest composite of FFT radices that is less than the target
+ length. It is useful for discarding a minimal number of samples before FFT.
+ #`scipy.io` improvements
+ * ``wavfile`` now supports reading and writing of ``wav`` files in the RF64
+ format, allowing files greater than 4 GB in size to be handled.
+ #`scipy.constants` improvements
+ * Experimental support for the array API standard has been added.
+ #`scipy.interpolate` improvements
+ * `scipy.interpolate.Akima1DInterpolator` now supports extrapolation via the
+ ``extrapolate`` argument.
+ #`scipy.optimize` improvements
+ * `scipy.optimize.HessianUpdateStrategy` now also accepts square arrays for
+ ``init_scale``.
+ * A new method, ``cobyqa``, has been added to `scipy.optimize.minimize` - this
+ is an interface for COBYQA (Constrained Optimization BY Quadratic
+ Approximations), a derivative-free optimization solver, designed to
+ supersede COBYLA, developed by the Department of Applied Mathematics, The
+ Hong Kong Polytechnic University.
+ * There are some performance improvements in
+ `scipy.optimize.differential_evolution`.
+ * `scipy.optimize.approx_fprime` now has linear space complexity.
+ #`scipy.signal` improvements
+ * `scipy.signal.minimum_phase` has a new argument ``half``, allowing the
+ provision of a filter of the same length as the linear-phase FIR filter
+ coefficients and with the same magnitude spectrum.
+ #`scipy.sparse` improvements
+ * Sparse arrays now support 1D shapes in COO, DOK and CSR formats.
+ These are all the formats we currently intend to support 1D shapes.
+ Other sparse array formats raise an exception for 1D input.
+ * Sparse array methods min/nanmin/argmin and max analogs now return 1D arrays.
+ Results are still COO format sparse arrays for min/nanmin and
+ dense ``np.ndarray`` for argmin.
+ * Sparse matrix and array objects improve their ``repr`` and ``str`` output.
+ * A special case has been added to handle multiplying a ``dia_array`` by a
+ scalar, which avoids a potentially costly conversion to CSR format.
+ * `scipy.sparse.csgraph.yen` has been added, allowing usage of Yen's K-Shortest
+ Paths algorithm on a directed on undirected graph.
+ * Addition between DIA-format sparse arrays and matrices is now faster.
+ * `scipy.sparse.linalg.spsolve_triangular` is now more than an order of
+ magnitude faster in many cases.
+ #`scipy.spatial` improvements
+ * ``Rotation`` supports an alternative "scalar-first" convention of quaternion
+ component ordering. It is available via the keyword argument ``scalar_first``
+ of ``from_quat`` and ``as_quat`` methods.
+ * Some minor performance improvements for inverting of ``Rotation`` objects.
+ #`scipy.special` improvements
+ * Added `scipy.special.log_wright_bessel`, for calculation of the logarithm of
+ Wright's Bessel function.
+ * The relative error in `scipy.special.hyp2f1` calculations has improved
+ substantially.
+ * Improved behavior of ``boxcox``, ``inv_boxcox``, ``boxcox1p``, and
+ ``inv_boxcox1p`` by preventing premature overflow.
+ #`scipy.stats` improvements
+ * A new function `scipy.stats.power` can be used for simulating the power
+ of a hypothesis test with respect to a specified alternative.
+ * The Irwin-Hall (AKA Uniform Sum) distribution has been added as
+ `scipy.stats.irwinhall`.
+ * Exact p-value calculations of `scipy.stats.mannwhitneyu` are much faster
+ and use less memory.
+ * `scipy.stats.pearsonr` now accepts n-D arrays and computes the statistic
+ along a specified ``axis``.
+ * `scipy.stats.kstat`, `scipy.stats.kstatvar`, and `scipy.stats.bartlett`
+ are faster at performing calculations along an axis of a large n-D array.
+ ## Array API Standard Support
+ * Experimental* support for array libraries other than NumPy has been added to
+ existing sub-packages in recent versions of SciPy. Please consider testing
+ these features by setting an environment variable ``SCIPY_ARRAY_API=1`` and
+ providing PyTorch, JAX, or CuPy arrays as array arguments.
+ * As of 1.14.0, there is support for
+ * `scipy.cluster`
+ * `scipy.fft`
+ * `scipy.constants`
+ * `scipy.special`: (select functions)
+ * `scipy.special.log_ndtr`
+ * `scipy.special.ndtr`
+ * `scipy.special.ndtri`
+ * `scipy.special.erf`
+ * `scipy.special.erfc`
+ * `scipy.special.i0`
+ * `scipy.special.i0e`
+ * `scipy.special.i1`
+ * `scipy.special.i1e`
+ * `scipy.special.gammaln`
+ * `scipy.special.gammainc`
+ * `scipy.special.gammaincc`
+ * `scipy.special.logit`
+ * `scipy.special.expit`
+ * `scipy.special.entr`
+ * `scipy.special.rel_entr`
+ * `scipy.special.xlogy`
+ * `scipy.special.chdtrc`
+ * `scipy.stats`: (select functions)
+ * `scipy.stats.describe`
+ * `scipy.stats.moment`
+ * `scipy.stats.skew`
+ * `scipy.stats.kurtosis`
+ * `scipy.stats.kstat`
+ * `scipy.stats.kstatvar`
+ * `scipy.stats.circmean`
+ * `scipy.stats.circvar`
+ * `scipy.stats.circstd`
+ * `scipy.stats.entropy`
+ * `scipy.stats.variation`
+ * `scipy.stats.sem`
+ * `scipy.stats.ttest_1samp`
+ * `scipy.stats.pearsonr`
+ * `scipy.stats.chisquare`
+ * `scipy.stats.skewtest`
+ * `scipy.stats.kurtosistest`
+ * `scipy.stats.normaltest`
+ * `scipy.stats.jarque_bera`
+ * `scipy.stats.bartlett`
+ * `scipy.stats.power_divergence`
+ * `scipy.stats.monte_carlo_test`
+ ## Deprecated features
+ * `scipy.stats.gstd`, `scipy.stats.chisquare`, and
+ `scipy.stats.power_divergence` have deprecated support for masked array
+ input.
+ * `scipy.stats.linregress` has deprecated support for specifying both samples
+ in one argument; ``x`` and ``y`` are to be provided as separate arguments.
+ * The ``conjtransp`` method for `scipy.sparse.dok_array` and
+ `scipy.sparse.dok_matrix` has been deprecated and will be removed in SciPy
+ 1.16.0.
+ * The option ``quadrature="trapz"`` in `scipy.integrate.quad_vec` has been
+ deprecated in favour of ``quadrature="trapezoid"`` and will be removed in
+ SciPy 1.16.0.
+ * ``scipy.special.{comb,perm}`` have deprecated support for use of ``exact=True`` in
+ conjunction with non-integral ``N`` and/or ``k``.
+ ## Backwards incompatible changes
+ * Many `scipy.stats` functions now produce a standardized warning message when
+ an input sample is too small (e.g. zero size). Previously, these functions
+ may have raised an error, emitted one or more less informative warnings, or
+ emitted no warnings. In most cases, returned results are unchanged; in almost
+ all cases the correct result is ``NaN``.
+ ## Expired deprecations
+ There is an ongoing effort to follow through on long-standing deprecations.
+ The following previously deprecated features are affected:
+ * Several previously deprecated methods for sparse arrays were removed:
+ ``asfptype``, ``getrow``, ``getcol``, ``get_shape``, ``getmaxprint``,
+ ``set_shape``, ``getnnz``, and ``getformat``. Additionally, the ``.A`` and
+ ``.H`` attributes were removed.
+ * ``scipy.integrate.{simps,trapz,cumtrapz}`` have been removed in favour of
+ ``simpson``, ``trapezoid``, and ``cumulative_trapezoid``.
+ * The ``tol`` argument of ``scipy.sparse.linalg.{bcg,bicstab,cg,cgs,gcrotmk,
+ mres,lgmres,minres,qmr,tfqmr}`` has been removed in favour of ``rtol``.
+ Furthermore, the default value of ``atol`` for these functions has changed
+ to ``0.0``.
+ * The ``restrt`` argument of `scipy.sparse.linalg.gmres` has been removed in
+ favour of ``restart``.
+ * The ``initial_lexsort`` argument of `scipy.stats.kendalltau` has been
+ removed.
+ * The ``cond`` and ``rcond`` arguments of `scipy.linalg.pinv` have been
+ removed.
+ * The ``even`` argument of `scipy.integrate.simpson` has been removed.
+ * The ``turbo`` and ``eigvals`` arguments from ``scipy.linalg.{eigh,eigvalsh}``
+ have been removed.
+ * The ``legacy`` argument of `scipy.special.comb` has been removed.
+ * The ``hz``/``nyq`` argument of ``signal.{firls, firwin, firwin2, remez}`` has
+ been removed.
+ * Objects that weren't part of the public interface but were accessible through
+ deprecated submodules have been removed.
+ * ``float128``, ``float96``, and object arrays now raise an error in
+ `scipy.signal.medfilt` and `scipy.signal.order_filter`.
+ * ``scipy.interpolate.interp2d`` has been replaced by an empty stub (to be
+ removed completely in the future).
+ * Coinciding with changes to function signatures (e.g. removal of a deprecated
+ keyword), we had deprecated positional use of keyword arguments for the
+ affected functions, which will now raise an error. Affected functions are:
+ * ``sparse.linalg.{bicg, bicgstab, cg, cgs, gcrotmk, gmres, lgmres, minres,
+ qmr, tfqmr}``
+ * ``stats.kendalltau``
+ * ``linalg.pinv``
+ * ``integrate.simpson``
+ * ``linalg.{eigh,eigvalsh}``
+ * ``special.comb``
+ * ``signal.{firls, firwin, firwin2, remez}``
+ ## Other changes
+ * SciPy now uses C17 as the C standard to build with, instead of C99. The C++
+ standard remains C++17.
+ * macOS Accelerate, which got a major upgrade in macOS 13.3, is now supported.
+ This results in significant performance improvements for linear algebra
+ operations, as well as smaller binary wheels.
+ * Cross-compilation should be smoother and QEMU or similar is no longer needed
+ to run the cross interpreter.
+ * Experimental array API support for the JAX backend has been added to several
+ parts of SciPy.
+- Cherry-pick upstream patch to fix build with GCC 14
+ * https://github.com/scipy/scipy/pull/21063.patch
+- Update BuildRequires from pyproject.toml
+
+-------------------------------------------------------------------
Old:
----
scipy-1.13.1.tar.gz
New:
----
21063.patch
scipy-1.14.0.tar.gz
BETA DEBUG BEGIN:
New:- Cherry-pick upstream patch to fix build with GCC 14
* https://github.com/scipy/scipy/pull/21063.patch
- Update BuildRequires from pyproject.toml
BETA DEBUG END:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-scipy.spec ++++++
--- /var/tmp/diff_new_pack.QaJOJa/_old 2024-07-03 20:29:48.227974785 +0200
+++ /var/tmp/diff_new_pack.QaJOJa/_new 2024-07-03 20:29:48.231974931 +0200
@@ -93,7 +93,7 @@
# TODO explore debundling Boost for standard and hpc
Name: %{package_name}
-Version: 1.13.1
+Version: 1.14.0
Release: 0
Summary: Scientific Tools for Python
License: BSD-3-Clause AND LGPL-2.0-or-later AND BSL-1.0
@@ -101,6 +101,8 @@
Source0: https://files.pythonhosted.org/packages/source/s/scipy/scipy-%{version}.tar…
# Create with pooch: `python3 scipy-%%{version}/scipy/datasets/_download_all.py scipy-datasets/scipy-data; tar czf scipy-datasets.tar.gz scipy-datasets`
Source1: scipy-datasets.tar.gz
+# PATCH-FIX-UPSTREAM - MAINT: gcc-14 test_region5 tol bump
+Patch: https://github.com/scipy/scipy/pull/21063.patch
BuildRequires: %{python_module Cython >= 3.0.8 with %python-Cython < 3.1}
BuildRequires: %{python_module devel >= 3.9}
BuildRequires: %{python_module meson-python >= 0.15.0 with %python-meson-python < 0.18}
@@ -123,7 +125,7 @@
BuildRequires: %{python_module threadpoolctl}
%endif
%if %{without hpc}
-BuildRequires: %{python_module numpy-devel >= 1.18.5 with %python-numpy-devel < 2.3}
+BuildRequires: %{python_module numpy-devel >= 1.23.5 with %python-numpy-devel < 2.3}
%if 0%{?sle_version} && 0%{?sle_version} <= 150600
# The default gcc on SLE15 is gcc7 we need something newer
BuildRequires: gcc10-c++
++++++ 21063.patch ++++++
From c485c78ae3918ed26d4c1208e77b029a7f918f0d Mon Sep 17 00:00:00 2001
From: Tyler Reddy <tyler.je.reddy(a)gmail.com>
Date: Thu, 27 Jun 2024 09:56:23 -0600
Subject: [PATCH] MAINT: gcc-14 test_region5 tol bump
* Fixes #21059
* A small tolerance bump in `TestHyp2f1.test_region5` needed for one
its test cases to pass when compiling SciPy with gcc-14 series.
[ci skip] [skip ci]
---
scipy/special/tests/test_hyp2f1.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/scipy/special/tests/test_hyp2f1.py b/scipy/special/tests/test_hyp2f1.py
index 6c2f6ec103bf..adef4e2584c8 100644
--- a/scipy/special/tests/test_hyp2f1.py
+++ b/scipy/special/tests/test_hyp2f1.py
@@ -2093,7 +2093,7 @@ def test_region4(self, hyp2f1_test_case):
c=-15.5,
z=(0.3413793103448277-0.9482758620689655j),
expected=(-1.0509834850116921-1.1145522325486075j),
- rtol=1e-14,
+ rtol=1.1e-14,
),
),
pytest.param(
++++++ scipy-1.13.1.tar.gz -> scipy-1.14.0.tar.gz ++++++
/work/SRC/openSUSE:Factory/python-scipy/scipy-1.13.1.tar.gz /work/SRC/openSUSE:Factory/.python-scipy.new.18349/scipy-1.14.0.tar.gz differ: char 5, line 1
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package dracut for openSUSE:Factory checked in at 2024-07-03 20:29:14
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/dracut (Old)
and /work/SRC/openSUSE:Factory/.dracut.new.18349 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "dracut"
Wed Jul 3 20:29:14 2024 rev:228 rq:1184860 version:059+suse.628.g20b345b4
Changes:
--------
--- /work/SRC/openSUSE:Factory/dracut/dracut.changes 2024-05-29 19:35:24.695531824 +0200
+++ /work/SRC/openSUSE:Factory/.dracut.new.18349/dracut.changes 2024-07-03 20:29:45.479874204 +0200
@@ -1,0 +2,24 @@
+Tue Jul 02 11:34:22 UTC 2024 - antonio.feijoo(a)suse.com
+
+- Update to version 059+suse.628.g20b345b4:
+ * feat(crypt): force the inclusion of crypttab entries with x-initrd.attach (bsc#1226529)
+ * fix(mdraid): try to assemble the missing raid device (bsc#1226412)
+ * feat(ifcfg): minimize s390-specific network configuration aspects
+ * refactor(ifcfg): delete code duplication using iface_get_subchannels()
+ * fix(znet): append to udev rules so each rd.znet_ifname is effective
+ * feat(qeth_rules): remove qeth handling consolidated in 95znet
+ * docs(dracut.cmdline): generalize description of rd.znet
+ * feat(znet): use zdev for consolidated device configuration
+ * feat(dasd): minimize dasd handling consolidated in s390-tools
+ * feat(dasd_mod): minimize dasd handling consolidated in s390-tools
+ * feat(dasd_rules): remove dasd handling consolidated in s390-tools
+ * feat(zfcp): minimize zfcp handling consolidated in s390-tools
+ * feat(zfcp_rules): remove zfcp handling consolidated in s390-tools
+ * refactor(cms): remove now unnecessary inclusion of full s390utils-base
+ * refactor(cms): use consolidated network config with zdev from s390-tools
+ * refactor(cms): use consolidated dasd config with zdev from s390-tools
+ * refactor(cms): use consolidated zfcp config with zdev from s390-tools
+ * refactor(cms): use zdev to simplify handling CMSDASD=... boot option
+ * fix(dracut-install): continue parsing if ldd prints "cannot be preloaded" (bsc#1208690)
+
+-------------------------------------------------------------------
Old:
----
dracut-059+suse.598.gfe80dac7.obscpio
New:
----
dracut-059+suse.628.g20b345b4.obscpio
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ dracut.spec ++++++
--- /var/tmp/diff_new_pack.F9UY87/_old 2024-07-03 20:29:46.087896458 +0200
+++ /var/tmp/diff_new_pack.F9UY87/_new 2024-07-03 20:29:46.091896604 +0200
@@ -25,7 +25,7 @@
%endif
Name: dracut
-Version: 059+suse.598.gfe80dac7
+Version: 059+suse.628.g20b345b4
Release: 0
Summary: Event driven initramfs infrastructure
License: GPL-2.0-only AND GPL-2.0-or-later AND LGPL-2.1-or-later
@@ -147,11 +147,8 @@
rm -rf %{buildroot}%{dracutlibdir}/modules.d/91zipl
rm -rf %{buildroot}%{dracutlibdir}/modules.d/95dasd
rm -rf %{buildroot}%{dracutlibdir}/modules.d/95dasd_mod
-rm -rf %{buildroot}%{dracutlibdir}/modules.d/95dasd_rules
rm -rf %{buildroot}%{dracutlibdir}/modules.d/95dcssblk
-rm -rf %{buildroot}%{dracutlibdir}/modules.d/95qeth_rules
rm -rf %{buildroot}%{dracutlibdir}/modules.d/95zfcp
-rm -rf %{buildroot}%{dracutlibdir}/modules.d/95zfcp_rules
rm -rf %{buildroot}%{dracutlibdir}/modules.d/95znet
%else
rm -rf %{buildroot}%{dracutlibdir}/modules.d/00warpclock
@@ -434,7 +431,6 @@
%{dracutlibdir}/modules.d/95cifs
%ifarch s390 s390x
%{dracutlibdir}/modules.d/95dasd_mod
-%{dracutlibdir}/modules.d/95dasd_rules
%{dracutlibdir}/modules.d/95dcssblk
%endif
%{dracutlibdir}/modules.d/95debug
@@ -446,9 +442,6 @@
%{dracutlibdir}/modules.d/95nbd
%{dracutlibdir}/modules.d/95nfs
%{dracutlibdir}/modules.d/95nvmf
-%ifarch s390 s390x
-%{dracutlibdir}/modules.d/95qeth_rules
-%endif
%{dracutlibdir}/modules.d/95resume
%{dracutlibdir}/modules.d/95rootfs-block
%{dracutlibdir}/modules.d/95ssh-client
@@ -456,9 +449,6 @@
%{dracutlibdir}/modules.d/95udev-rules
%{dracutlibdir}/modules.d/95virtfs
%{dracutlibdir}/modules.d/95virtiofs
-%ifarch s390 s390x
-%{dracutlibdir}/modules.d/95zfcp_rules
-%endif
%{dracutlibdir}/modules.d/97biosdevname
%ifarch %ix86
%exclude %{dracutlibdir}/modules.d/96securityfs
++++++ README.susemaint ++++++
--- /var/tmp/diff_new_pack.F9UY87/_old 2024-07-03 20:29:46.127897922 +0200
+++ /var/tmp/diff_new_pack.F9UY87/_new 2024-07-03 20:29:46.127897922 +0200
@@ -6,11 +6,13 @@
Patches are added as merge requests on GitHub against the respective maintenance
branch. Currently, these active maintenance branches are:
-- SUSE/044 -> SLE 12 SP5
-- SUSE/049 -> SLE 15 SP2, SLE 15 SP3
-- SUSE/055 -> SLE 15 SP4
-- SLE-15-SP5_Update -> SLE 15 SP5 (based on SUSE/055 plus some specific patches)
-- SUSE/059 -> Tumbleweed
+- SUSE/044 -> SLE 12 SP5
+- SUSE/049 -> SLE 15 SP2, SLE 15 SP3
+- SUSE/055 -> SLE 15 SP4
+- SLE-15-SP5_Update -> SLE 15 SP5 (based on SUSE/055 plus some specific patches)
+- SLE-15-SP6_Update -> SLE 15 SP6
+- SL-Micro-6.0_Update -> SL Micro 6.0
+- SUSE/059 -> Tumbleweed
Rules:
@@ -353,5 +355,23 @@
a45048b8 fix(dracut): move hooks directory from /usr/lib to /var/lib
424717af fix: /etc/modprobe.d --> /run/modprobe.d (partially reverted)
4cc962aa fix(systemd-ask-password): no graphical output in aarch64
+6c55657e refactor(cms): use zdev to simplify handling CMSDASD=... boot option
+53a5d10b refactor(cms): use consolidated zfcp config with zdev from s390-tools
+168c0c66 refactor(cms): use consolidated dasd config with zdev from s390-tools
+0b6d6952 refactor(cms): use consolidated network config with zdev from s390-tools
+166e8a22 refactor(cms): remove now unnecessary inclusion of full s390utils-base
+b5a35f9d feat(zfcp_rules): remove zfcp handling consolidated in s390-tools
+7745a81a feat(zfcp): minimize zfcp handling consolidated in s390-tools
+72c945ca feat(dasd_rules): remove dasd handling consolidated in s390-tools
+2397c479 feat(dasd_mod): minimize dasd handling consolidated in s390-tools
+36e1f884 feat(dasd): minimize dasd handling consolidated in s390-tools
+658a21ac feat(znet): use zdev for consolidated device configuration
+8707a69b docs(dracut.cmdline): generalize description of rd.znet
+198a86c2 feat(qeth_rules): remove qeth handling consolidated in 95znet
+22f51730 fix(znet): append to udev rules so each rd.znet_ifname is effective
+2d8fa8be refactor(ifcfg): delete code duplication using iface_get_subchannels()
+457e66e6 feat(ifcfg): minimize s390-specific network configuration aspects
+3fd43858 fix(mdraid): try to assemble the missing raid device
+61ab3386 feat(crypt): force the inclusion of crypttab entries with x-initrd.attach
++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.F9UY87/_old 2024-07-03 20:29:46.159899093 +0200
+++ /var/tmp/diff_new_pack.F9UY87/_new 2024-07-03 20:29:46.167899386 +0200
@@ -1,6 +1,6 @@
<servicedata>
<service name="tar_scm">
<param name="url">https://github.com/opensuse/dracut.git</param>
- <param name="changesrevision">fe80dac7f926d36c7aa2c5d88c2db71f38b24a07</param></service></servicedata>
+ <param name="changesrevision">ff12ca6328178bbd94018b05958eddc4e0676daa</param></service></servicedata>
(No newline at EOF)
++++++ dracut-059+suse.598.gfe80dac7.obscpio -> dracut-059+suse.628.g20b345b4.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dracut-059+suse.598.gfe80dac7/.github/labeler.yml new/dracut-059+suse.628.g20b345b4/.github/labeler.yml
--- old/dracut-059+suse.598.gfe80dac7/.github/labeler.yml 2024-05-27 14:08:11.000000000 +0200
+++ new/dracut-059+suse.628.g20b345b4/.github/labeler.yml 2024-07-02 13:29:26.000000000 +0200
@@ -382,10 +382,6 @@
- changed-files:
- any-glob-to-any-file: 'modules.d/95dasd_mod/*'
-dasd_rules:
- - changed-files:
- - any-glob-to-any-file: 'modules.d/95dasd_rules/*'
-
dcssblk:
- changed-files:
- any-glob-to-any-file: 'modules.d/95dcssblk/*'
@@ -426,10 +422,6 @@
- changed-files:
- any-glob-to-any-file: 'modules.d/95nvmf/*'
-qeth_rules:
- - changed-files:
- - any-glob-to-any-file: 'modules.d/95qeth_rules/*'
-
resume:
- changed-files:
- any-glob-to-any-file: 'modules.d/95resume/*'
@@ -462,10 +454,6 @@
- changed-files:
- any-glob-to-any-file: 'modules.d/95zfcp/*'
-zfcp_rules:
- - changed-files:
- - any-glob-to-any-file: 'modules.d/95zfcp_rules/*'
-
znet:
- changed-files:
- any-glob-to-any-file: 'modules.d/95znet/*'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dracut-059+suse.598.gfe80dac7/man/dracut.cmdline.7.asc new/dracut-059+suse.628.g20b345b4/man/dracut.cmdline.7.asc
--- old/dracut-059+suse.598.gfe80dac7/man/dracut.cmdline.7.asc 2024-05-27 14:08:11.000000000 +0200
+++ new/dracut-059+suse.628.g20b345b4/man/dracut.cmdline.7.asc 2024-07-02 13:29:26.000000000 +0200
@@ -972,19 +972,38 @@
DASD
~~~~
**rd.dasd=**....::
- same syntax as the kernel module parameter (s390 only)
+ same syntax as the kernel module parameter (s390 only).
+ For more details on the syntax see the IBM book
+ "Linux on IBM Z and IBM LinuxONE - Device Drivers, Features, and Commands"
+ https://www.ibm.com/docs/en/linux-on-systems?topic=overview-device-drivers-….
+ This parameter can be specified multiple times.
++
+NOTE:
+ This parameter is no longer handled by dracut itself but with the exact
+ same syntax by
+ https://github.com/ibm-s390-linux/s390-tools/tree/master/zdev/dracut/95zdev.
ZFCP
~~~~
**rd.zfcp=**__<zfcp adaptor device bus ID>__,__<WWPN>__,__<FCPLUN>__::
rd.zfcp can be specified multiple times on the kernel command
line.
++
+NOTE:
+ This parameter is no longer handled by dracut itself but with the exact
+ same syntax by
+ https://github.com/ibm-s390-linux/s390-tools/tree/master/zdev/dracut/95zdev.
**rd.zfcp=**__<zfcp adaptor device bus ID>__::
If NPIV is enabled and the 'allow_lun_scan' parameter to the zfcp
- module is set to 'Y' then the zfcp adaptor will be initiating a
+ module is set to 'Y' then the zfcp driver will be initiating a
scan internally and the <WWPN> and <FCPLUN> parameters can be omitted.
+
+NOTE:
+ This parameter is no longer handled by dracut itself but with the exact
+ same syntax by
+ https://github.com/ibm-s390-linux/s390-tools/tree/master/zdev/dracut/95zdev.
++
[listing]
.Example
--
@@ -998,9 +1017,12 @@
ZNET
~~~~
**rd.znet=**__<nettype>__,__<subchannels>__,__<options>__::
- The whole parameter is appended to /etc/ccw.conf, which is used on
- RHEL/Fedora with ccw_init, which is called from udev for certain
- devices on z-series.
+ Activates a channel-attached network interface on s390 architecture.
+ <nettype> is one of: qeth, lcs, ctc.
+ <subchannels> is a comma-separated list of ccw device bus-IDs.
+ The list consists of 3 entries with nettype qeth, and 2 for other nettype.
+ <options> is a comma-separated list of <name>=<value> pairs,
+ where <name> refers to a device sysfs attribute to which <value> gets written.
rd.znet can be specified multiple times on the kernel command line.
**rd.znet_ifname=**__<ifname>__:__<subchannels>__::
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dracut-059+suse.598.gfe80dac7/modules.d/45ifcfg/write-ifcfg.sh new/dracut-059+suse.628.g20b345b4/modules.d/45ifcfg/write-ifcfg.sh
--- old/dracut-059+suse.598.gfe80dac7/modules.d/45ifcfg/write-ifcfg.sh 2024-05-27 14:08:11.000000000 +0200
+++ new/dracut-059+suse.628.g20b345b4/modules.d/45ifcfg/write-ifcfg.sh 2024-07-02 13:29:26.000000000 +0200
@@ -10,68 +10,21 @@
# shellcheck disable=SC2174
mkdir -m 0755 -p /tmp/ifcfg-leases/
-get_config_line_by_subchannel() {
- local CHANNELS
- local line
-
- CHANNELS="$1"
- while read -r line || [ -n "$line" ]; do
- if strstr "$line" "$CHANNELS"; then
- echo "$line"
- return 0
- fi
- done < /etc/ccw.conf
- return 1
-}
-
print_s390() {
local _netif
local SUBCHANNELS
- local OPTIONS
- local NETTYPE
- local CONFIG_LINE
local i
- local channel
- local OLD_IFS
_netif="$1"
# if we find ccw channel, then use those, instead of
# of the MAC
- SUBCHANNELS=$({
- for i in /sys/class/net/"$_netif"/device/cdev[0-9]*; do
- [ -e "$i" ] || continue
- channel=$(readlink -f "$i")
- printf '%s' "${channel##*/},"
- done
- })
+ # [iface_get_subchannels() from /lib/net-lib.sh sourced at top of this file]
+ SUBCHANNELS=$(iface_get_subchannels "$_netif")
[ -n "$SUBCHANNELS" ] || return 1
SUBCHANNELS=${SUBCHANNELS%,}
echo "SUBCHANNELS=\"${SUBCHANNELS}\""
- CONFIG_LINE=$(get_config_line_by_subchannel "$SUBCHANNELS")
- # shellcheck disable=SC2181
- [ $? -ne 0 -o -z "$CONFIG_LINE" ] && return 0
-
- OLD_IFS=$IFS
- IFS=","
- # shellcheck disable=SC2086
- set -- $CONFIG_LINE
- IFS=$OLD_IFS
- NETTYPE=$1
- shift
- SUBCHANNELS="$1"
- OPTIONS=""
- shift
- while [ $# -gt 0 ]; do
- case $1 in
- *=*) OPTIONS="$OPTIONS $1" ;;
- esac
- shift
- done
- OPTIONS=${OPTIONS## }
- echo "NETTYPE=\"${NETTYPE}\""
- echo "OPTIONS=\"${OPTIONS}\""
return 0
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dracut-059+suse.598.gfe80dac7/modules.d/80cms/cms-write-ifcfg.sh new/dracut-059+suse.628.g20b345b4/modules.d/80cms/cms-write-ifcfg.sh
--- old/dracut-059+suse.598.gfe80dac7/modules.d/80cms/cms-write-ifcfg.sh 2024-05-27 14:08:11.000000000 +0200
+++ new/dracut-059+suse.628.g20b345b4/modules.d/80cms/cms-write-ifcfg.sh 2024-07-02 13:29:26.000000000 +0200
@@ -81,21 +81,8 @@
fi
# colons in SEARCHDNS already replaced with spaces above for /etc/resolv.conf
[[ $SEARCHDNS ]] && echo "DOMAIN=\"$SEARCHDNS\"" >> "$IFCFGFILE"
- [[ $NETTYPE ]] && echo "NETTYPE=$NETTYPE" >> "$IFCFGFILE"
[[ $PEERID ]] && echo "PEERID=$PEERID" >> "$IFCFGFILE"
- [[ $PORTNAME ]] && echo "PORTNAME=$PORTNAME" >> "$IFCFGFILE"
- [[ $CTCPROT ]] && echo "CTCPROT=$CTCPROT" >> "$IFCFGFILE"
[[ $MACADDR ]] && echo "MACADDR=$MACADDR" >> "$IFCFGFILE"
- optstr=""
- for option in LAYER2 PORTNO; do
- [ -z "${!option}" ] && continue
- [ -n "$optstr" ] && optstr=${optstr}" "
- optstr=${optstr}$(echo ${option} | sed 'y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/')"="${!option}
- done
- # write single quotes since network.py removes double quotes but we need quotes
- echo "OPTIONS='$optstr'" >> "$IFCFGFILE"
- unset option
- unset optstr
unset DNS1
unset DNS2
echo "files /etc/sysconfig/network-scripts" >> /run/initramfs/rwtab
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dracut-059+suse.598.gfe80dac7/modules.d/80cms/cmssetup.sh new/dracut-059+suse.628.g20b345b4/modules.d/80cms/cmssetup.sh
--- old/dracut-059+suse.598.gfe80dac7/modules.d/80cms/cmssetup.sh 2024-05-27 14:08:11.000000000 +0200
+++ new/dracut-059+suse.628.g20b345b4/modules.d/80cms/cmssetup.sh 2024-07-02 13:29:26.000000000 +0200
@@ -1,35 +1,18 @@
#!/bin/bash
type getarg > /dev/null 2>&1 || . /lib/dracut-lib.sh
-
-function sysecho() {
- file="$1"
- shift
- local i=1
- while [ $i -le 10 ]; do
- if [ ! -f "$file" ]; then
- sleep 1
- i=$((i + 1))
- else
- break
- fi
- done
- local status
- read -r status < "$file"
- if [[ $status != "$*" ]]; then
- [ -f "$file" ] && echo "$*" > "$file"
- fi
-}
+type zdev_parse_dasd_list > /dev/null 2>&1 || . /lib/s390-tools/zdev-from-dasd_mod.dasd
function dasd_settle() {
- local dasd_status=/sys/bus/ccw/devices/$1/status
+ local dasd_status
+ dasd_status=$(lszdev dasd "$1" --columns ATTRPATH:status --no-headings --active)
if [ ! -f "$dasd_status" ]; then
return 1
fi
local i=1
while [ $i -le 60 ]; do
local status
- read -r status < "$dasd_status"
+ status=$(lszdev dasd "$1" --columns ATTR:status --no-headings --active)
case $status in
online | unformatted)
return 0
@@ -43,77 +26,23 @@
return 1
}
-function dasd_settle_all() {
- for dasdccw in $(while read -r line || [ -n "$line" ]; do echo "${line%%(*}"; done < /proc/dasd/devices); do
- if ! dasd_settle "$dasdccw"; then
- echo $"Could not access DASD $dasdccw in time"
- return 1
- fi
- done
- return 0
-}
-
-# prints a canonocalized device bus ID for a given devno of any format
-function canonicalize_devno() {
- case ${#1} in
- 3) echo "0.0.0${1}" ;;
- 4) echo "0.0.${1}" ;;
- *) echo "${1}" ;;
- esac
- return 0
-}
-
# read file from CMS and write it to /tmp
function readcmsfile() { # $1=dasdport $2=filename
local dev
- local numcpus
local devname
local ret=0
if [ $# -ne 2 ]; then return; fi
- # precondition: udevd created dasda block device node
- if ! dasd_cio_free -d "$1"; then
- echo $"DASD $1 could not be cleared from device blacklist"
- return 1
- fi
-
- modprobe dasd_mod dasd="$CMSDASD"
- modprobe dasd_eckd_mod
- udevadm settle
-
- # precondition: dasd_eckd_mod driver incl. dependencies loaded,
- # dasd_mod must be loaded without setting any DASD online
- dev=$(canonicalize_devno "$1")
- numcpus=$(
- while read -r line || [ -n "$line" ]; do
- if strstr "$line" "# processors"; then
- echo "${line##*:}"
- break
- fi
- done < /proc/cpuinfo
- )
+ # precondition: udevd created block device node
- if [ "${numcpus}" -eq 1 ]; then
- echo 1 > /sys/bus/ccw/devices/"$dev"/online
- else
- if ! sysecho /sys/bus/ccw/devices/"$dev"/online 1; then
- echo $"DASD $dev could not be set online"
- return 1
- fi
- udevadm settle
- if ! dasd_settle "$dev"; then
- echo $"Could not access DASD $dev in time"
- return 1
- fi
+ dev="$1"
+ chzdev --enable --active --yes --quiet --no-root-update --force dasd "$dev" || return 1
+ if ! dasd_settle "$dev"; then
+ echo $"Could not access DASD $dev in time"
+ return 1
fi
- udevadm settle
-
- devname=$(
- cd /sys/bus/ccw/devices/"$dev"/block || exit
- set -- *
- [ -b /dev/"$1" ] && echo "$1"
- )
- devname=${devname:-dasda}
+ devname=$(lszdev dasd "$dev" --columns NAMES --no-headings --active)
+ [[ -n $devname ]] || return 1
[[ -d /mnt ]] || mkdir -p /mnt
if cmsfs-fuse --to=UTF-8 -a /dev/"$devname" /mnt; then
@@ -125,20 +54,22 @@
ret=1
fi
- if ! sysecho /sys/bus/ccw/devices/"$dev"/online 0; then
- echo $"DASD $dev could not be set offline again"
- #return 1
- fi
- udevadm settle
+ chzdev --disable --active --yes --quiet --no-root-update --force dasd "$dev"
# unbind all dasds to unload the dasd modules for a clean start
(
cd /sys/bus/ccw/drivers/dasd-eckd || exit
- for i in *.*; do echo "$i" > unbind; done
+ for i in *.*; do echo "$i" > unbind 2> /dev/null; done
+ )
+ (
+ cd /sys/bus/ccw/drivers/dasd-fba || exit
+ for i in *.*; do echo "$i" > unbind 2> /dev/null; done
)
udevadm settle
modprobe -r dasd_eckd_mod
udevadm settle
+ modprobe -r dasd_fba_mod
+ udevadm settle
modprobe -r dasd_diag_mod
udevadm settle
modprobe -r dasd_mod
@@ -151,13 +82,19 @@
SUBCHANNELS="$(echo "$SUBCHANNELS" | sed 'y/ABCDEF/abcdef/')"
if [[ $NETTYPE ]]; then
- (
- echo -n "$NETTYPE","$SUBCHANNELS"
- [[ $PORTNAME ]] && echo -n ",portname=$PORTNAME"
- [[ $LAYER2 ]] && echo -n ",layer2=$LAYER2"
- [[ $NETTYPE == "ctc" ]] && [[ $CTCPROT ]] && echo -n ",protocol=$CTCPROT"
- echo
- ) >> /etc/ccw.conf
+ _cms_attrs=""
+ if [[ $PORTNAME ]]; then
+ if [[ $NETTYPE == lcs ]]; then
+ _cms_attrs="$_cms_attrs portno=$PORTNAME"
+ else
+ _cms_attrs="$_cms_attrs portname=$PORTNAME"
+ fi
+ fi
+ [[ $LAYER2 ]] && _cms_attrs="$_cms_attrs layer2=$LAYER2"
+ [[ $CTCPROT ]] && _cms_attrs="$_cms_attrs protocol=$CTCPROT"
+ # shellcheck disable=SC2086
+ chzdev --enable --persistent --yes --no-root-update --force \
+ "$NETTYPE" "$SUBCHANNELS" $_cms_attrs 2>&1 | vinfo
OLDIFS=$IFS
IFS=,
@@ -178,16 +115,13 @@
[[ -f /etc/udev/rules.d/90-net.rules ]] \
|| printf 'SUBSYSTEM=="net", ACTION=="online", RUN+="/sbin/initqueue --onetime --env netif=$name source_hook initqueue/online"\n' >> /etc/udev/rules.d/99-cms.rules
udevadm control --reload
- znet_cio_free
fi
if [[ $DASD ]] && [[ $DASD != "none" ]]; then
- echo "$DASD" | normalize_dasd_arg > /etc/dasd.conf
- echo "options dasd_mod dasd=$DASD" > /etc/modprobe.d/dasd_mod.conf
- dasd_cio_free
+ echo "$DASD" | zdev_parse_dasd_list globals 2>&1 | vinfo
+ echo "$DASD" | zdev_parse_dasd_list ranges 2>&1 | vinfo
fi
- unset _do_zfcp
for i in ${!FCP_*}; do
echo "${!i}" | while read -r port rest || [ -n "$port" ]; do
case $port in
@@ -200,12 +134,24 @@
port="0.0.$port"
;;
esac
- echo "$port" "$rest" >> /etc/zfcp.conf
+ # shellcheck disable=SC2086
+ set -- $rest
+ SAVED_IFS="$IFS"
+ IFS=":"
+ # Intentionally do not dynamically activate now, but only generate udev
+ # rules, which activate the device later during udev coldplug.
+ if [[ -z $rest ]]; then
+ chzdev --enable --persistent \
+ --no-settle --yes --quiet --no-root-update --force \
+ zfcp-host "$port" 2>&1 | vinfo
+ else
+ chzdev --enable --persistent \
+ --no-settle --yes --quiet --no-root-update --force \
+ zfcp-lun "$port:$*" 2>&1 | vinfo
+ fi
+ IFS="$SAVED_IFS"
done
- _do_zfcp=1
done
- [[ $_do_zfcp ]] && zfcp_cio_free
- unset _do_zfcp
}
[[ $CMSDASD ]] || CMSDASD=$(getarg "CMSDASD=")
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dracut-059+suse.598.gfe80dac7/modules.d/80cms/module-setup.sh new/dracut-059+suse.628.g20b345b4/modules.d/80cms/module-setup.sh
--- old/dracut-059+suse.598.gfe80dac7/modules.d/80cms/module-setup.sh 2024-05-27 14:08:11.000000000 +0200
+++ new/dracut-059+suse.628.g20b345b4/modules.d/80cms/module-setup.sh 2024-07-02 13:29:26.000000000 +0200
@@ -4,6 +4,7 @@
check() {
arch=${DRACUT_ARCH:-$(uname -m)}
[ "$arch" = "s390" -o "$arch" = "s390x" ] || return 1
+ require_binaries chzdev lszdev || return 1
return 255
}
@@ -11,13 +12,13 @@
depends() {
arch=${DRACUT_ARCH:-$(uname -m)}
[ "$arch" = "s390" -o "$arch" = "s390x" ] || return 1
- echo znet zfcp dasd dasd_mod bash
+ echo znet bash
return 0
}
# called by dracut
installkernel() {
- instmods zfcp
+ instmods zfcp dasd_mod dasd_eckd_mod dasd_fba_mod dasd_diag_mod
}
# called by dracut
@@ -27,8 +28,8 @@
inst_script "$moddir/cmsifup.sh" /sbin/cmsifup
# shellcheck disable=SC2046
inst_multiple /etc/cmsfs-fuse/filetypes.conf /etc/udev/rules.d/99-fuse.rules /etc/fuse.conf \
- cmsfs-fuse fusermount bash insmod rmmod cat normalize_dasd_arg sed \
- $(rpm -ql s390utils-base) awk getopt
+ cmsfs-fuse fusermount bash insmod rmmod cat /lib/s390-tools/zdev-from-dasd_mod.dasd sed \
+ awk getopt chzdev lszdev
inst_libdir_file "gconv/*"
#inst /usr/lib/locale/locale-archive
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dracut-059+suse.598.gfe80dac7/modules.d/90crypt/module-setup.sh new/dracut-059+suse.628.g20b345b4/modules.d/90crypt/module-setup.sh
--- old/dracut-059+suse.598.gfe80dac7/modules.d/90crypt/module-setup.sh 2024-05-27 14:08:11.000000000 +0200
+++ new/dracut-059+suse.628.g20b345b4/modules.d/90crypt/module-setup.sh 2024-07-02 13:29:26.000000000 +0200
@@ -142,7 +142,7 @@
forceentry=""
while [ $# -gt 0 ]; do
case $1 in
- force)
+ force | x-initrd.attach)
forceentry="yes"
break
;;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dracut-059+suse.598.gfe80dac7/modules.d/90mdraid/mdraid_start.sh new/dracut-059+suse.628.g20b345b4/modules.d/90mdraid/mdraid_start.sh
--- old/dracut-059+suse.598.gfe80dac7/modules.d/90mdraid/mdraid_start.sh 2024-05-27 14:08:11.000000000 +0200
+++ new/dracut-059+suse.628.g20b345b4/modules.d/90mdraid/mdraid_start.sh 2024-07-02 13:29:26.000000000 +0200
@@ -32,11 +32,14 @@
local _md
local _UUID
local _MD_UUID
+ local _LEFT_UUID
+ local _uuid
_MD_UUID=$(getargs rd.md.uuid -d rd_MD_UUID=)
[ -n "$_MD_UUID" ] || getargbool 0 rd.auto || return
if [ -n "$_MD_UUID" ]; then
+ _LEFT_UUID=$(str_replace "$_MD_UUID" "-" ":")
_MD_UUID=$(str_replace "$_MD_UUID" "-" "")
_MD_UUID=$(str_replace "$_MD_UUID" ":" "")
@@ -51,6 +54,9 @@
)
[ -z "$_UUID" ] && continue
+ # remove the UUID already assembled from the list
+ _LEFT_UUID=$(str_replace "$_LEFT_UUID" "$_UUID" "")
+
_UUID=$(str_replace "$_UUID" ":" "")
# check if we should handle this device
@@ -65,6 +71,14 @@
_md_start "${_md}"
done
fi
+
+ # try to assemble all the left md devices that should be assembled
+ # probably failed because of timing issue in the first beginning
+ if [ -n "$_LEFT_UUID" ]; then
+ for _uuid in ${_LEFT_UUID}; do
+ mdadm --assemble --scan --uuid="$_uuid"
+ done
+ fi
}
_md_force_run
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dracut-059+suse.598.gfe80dac7/modules.d/95dasd/module-setup.sh new/dracut-059+suse.628.g20b345b4/modules.d/95dasd/module-setup.sh
--- old/dracut-059+suse.598.gfe80dac7/modules.d/95dasd/module-setup.sh 2024-05-27 14:08:11.000000000 +0200
+++ new/dracut-059+suse.628.g20b345b4/modules.d/95dasd/module-setup.sh 2024-07-02 13:29:26.000000000 +0200
@@ -4,20 +4,18 @@
check() {
local _arch=${DRACUT_ARCH:-$(uname -m)}
[ "$_arch" = "s390" -o "$_arch" = "s390x" ] || return 1
- require_binaries normalize_dasd_arg || return 1
+ require_binaries dasdconf.sh || return 1
return 0
}
# called by dracut
depends() {
- echo "dasd_mod"
return 0
}
# called by dracut
install() {
- inst_hook cmdline 30 "$moddir/parse-dasd.sh"
- inst_multiple dasdinfo dasdconf.sh normalize_dasd_arg
+ inst_multiple dasdconf.sh
conf=/etc/dasd.conf
if [[ $hostonly && -f $conf ]]; then
inst -H $conf
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dracut-059+suse.598.gfe80dac7/modules.d/95dasd/parse-dasd.sh new/dracut-059+suse.628.g20b345b4/modules.d/95dasd/parse-dasd.sh
--- old/dracut-059+suse.598.gfe80dac7/modules.d/95dasd/parse-dasd.sh 2024-05-27 14:08:11.000000000 +0200
+++ new/dracut-059+suse.628.g20b345b4/modules.d/95dasd/parse-dasd.sh 1970-01-01 01:00:00.000000000 +0100
@@ -1,11 +0,0 @@
-#!/bin/sh
-for dasd_arg in $(getargs rd.dasd= -d rd_DASD= DASD=); do
- (
- local OLDIFS="$IFS"
- IFS=","
- # shellcheck disable=SC2086
- set -- $dasd_arg
- IFS="$OLDIFS"
- echo "$@" | normalize_dasd_arg >> /etc/dasd.conf
- )
-done
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dracut-059+suse.598.gfe80dac7/modules.d/95dasd_mod/module-setup.sh new/dracut-059+suse.628.g20b345b4/modules.d/95dasd_mod/module-setup.sh
--- old/dracut-059+suse.598.gfe80dac7/modules.d/95dasd_mod/module-setup.sh 2024-05-27 14:08:11.000000000 +0200
+++ new/dracut-059+suse.628.g20b345b4/modules.d/95dasd_mod/module-setup.sh 2024-07-02 13:29:26.000000000 +0200
@@ -4,7 +4,6 @@
check() {
local _arch=${DRACUT_ARCH:-$(uname -m)}
[ "$_arch" = "s390" -o "$_arch" = "s390x" ] || return 1
- require_binaries grep sed seq
return 0
}
@@ -22,6 +21,5 @@
# called by dracut
install() {
inst_hook cmdline 31 "$moddir/parse-dasd-mod.sh"
- inst_multiple grep sed seq
inst_multiple -o dasd_cio_free
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dracut-059+suse.598.gfe80dac7/modules.d/95dasd_mod/parse-dasd-mod.sh new/dracut-059+suse.628.g20b345b4/modules.d/95dasd_mod/parse-dasd-mod.sh
--- old/dracut-059+suse.598.gfe80dac7/modules.d/95dasd_mod/parse-dasd-mod.sh 2024-05-27 14:08:11.000000000 +0200
+++ new/dracut-059+suse.628.g20b345b4/modules.d/95dasd_mod/parse-dasd-mod.sh 2024-07-02 13:29:26.000000000 +0200
@@ -1,18 +1,4 @@
#!/bin/sh
-mod_args=""
-
-for dasd_arg in $(getargs rd.dasd= -d rd_DASD= DASD=); do
- mod_args="$mod_args,$dasd_arg"
-done
-
-mod_args="${mod_args#*,}"
-
-if [ -x /sbin/dasd_cio_free -a -n "$mod_args" ]; then
- [ -d /etc/modprobe.d ] || mkdir -m 0755 -p /etc/modprobe.d
- echo "options dasd_mod dasd=$mod_args" >> /etc/modprobe.d/dasd_mod.conf
-fi
-
-unset dasd_arg
if [ -x /sbin/dasd_cio_free ]; then
dasd_cio_free
fi
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dracut-059+suse.598.gfe80dac7/modules.d/95dasd_rules/module-setup.sh new/dracut-059+suse.628.g20b345b4/modules.d/95dasd_rules/module-setup.sh
--- old/dracut-059+suse.598.gfe80dac7/modules.d/95dasd_rules/module-setup.sh 2024-05-27 14:08:11.000000000 +0200
+++ new/dracut-059+suse.628.g20b345b4/modules.d/95dasd_rules/module-setup.sh 1970-01-01 01:00:00.000000000 +0100
@@ -1,65 +0,0 @@
-#!/bin/bash
-
-# called by dracut
-cmdline() {
- is_dasd() {
- local _dev=$1
- local _devpath
- _devpath=$(
- cd -P /sys/dev/block/"$_dev" || exit
- echo "$PWD"
- )
-
- [ "${_devpath#*/dasd}" == "$_devpath" ] && return 1
- _ccw="${_devpath%%/block/*}"
- echo "rd.dasd=${_ccw##*/}"
- return 0
- }
- [[ $hostonly ]] || [[ $mount_needs ]] && {
- for_each_host_dev_and_slaves_all is_dasd || return 255
- } | sort | uniq
-}
-
-# called by dracut
-check() {
- local _arch=${DRACUT_ARCH:-$(uname -m)}
- local found=0
- local bdev
- [ "$_arch" = "s390" -o "$_arch" = "s390x" ] || return 1
-
- [[ $hostonly ]] || [[ $mount_needs ]] && {
- for bdev in /sys/block/*; do
- case "${bdev##*/}" in
- dasd*)
- found=$((found + 1))
- break
- ;;
- esac
- done
- [ $found -eq 0 ] && return 255
- }
- return 0
-}
-
-# called by dracut
-depends() {
- echo 'dasd_mod' bash
- return 0
-}
-
-# called by dracut
-install() {
- inst_hook cmdline 30 "$moddir/parse-dasd.sh"
- if [[ $hostonly_cmdline == "yes" ]]; then
- local _dasd
- _dasd=$(cmdline)
- [[ $_dasd ]] && printf "%s\n" "$_dasd" >> "${initdir}/etc/cmdline.d/95dasd.conf"
- fi
- if [[ $hostonly ]]; then
- inst_rules_wildcard "51-dasd-*.rules"
- inst_rules_wildcard "41-dasd-*.rules"
- mark_hostonly /etc/udev/rules.d/51-dasd-*.rules
- mark_hostonly /etc/udev/rules.d/41-dasd-*.rules
- fi
- inst_rules 59-dasd.rules
-}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dracut-059+suse.598.gfe80dac7/modules.d/95dasd_rules/parse-dasd.sh new/dracut-059+suse.628.g20b345b4/modules.d/95dasd_rules/parse-dasd.sh
--- old/dracut-059+suse.598.gfe80dac7/modules.d/95dasd_rules/parse-dasd.sh 2024-05-27 14:08:11.000000000 +0200
+++ new/dracut-059+suse.628.g20b345b4/modules.d/95dasd_rules/parse-dasd.sh 1970-01-01 01:00:00.000000000 +0100
@@ -1,43 +0,0 @@
-#!/bin/bash
-
-allow_device() {
- local ccw=$1
-
- if [ -x /sbin/cio_ignore ] && cio_ignore -i "$ccw" > /dev/null; then
- cio_ignore -r "$ccw"
- fi
-}
-
-if [[ -f /sys/firmware/ipl/ipl_type ]] && [[ $(< /sys/firmware/ipl/ipl_type) == "ccw" ]]; then
- allow_device "$(< /sys/firmware/ipl/device)"
-fi
-
-for dasd_arg in $(getargs root=) $(getargs resume=); do
- [[ $dasd_arg =~ /dev/disk/by-path/ccw-* ]] || continue
-
- ccw_dev="${dasd_arg##*/ccw-}"
- allow_device "${ccw_dev%%-*}"
-done
-
-for dasd_arg in $(getargs rd.dasd=); do
- IFS=',' read -r -a devs <<< "$dasd_arg"
- declare -p devs
- for dev in "${devs[@]}"; do
- case "$dev" in
- autodetect | probeonly) ;;
-
- *-*)
- IFS="-" read -r start end _ <<< "${dev%(ro)}"
- prefix=${start%.*}
- start=${start##*.}
- for rdev in $(seq $((16#$start)) $((16#$end))); do
- allow_device "$(printf "%s.%04x" "$prefix" "$rdev")"
- done
- ;;
- *)
- IFS="." read -r sid ssid chan _ <<< "${dev%(ro)}"
- allow_device "$(printf "%01x.%01x.%04x" $((16#$sid)) $((16#$ssid)) $((16#$chan)))"
- ;;
- esac
- done
-done
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dracut-059+suse.598.gfe80dac7/modules.d/95qeth_rules/module-setup.sh new/dracut-059+suse.628.g20b345b4/modules.d/95qeth_rules/module-setup.sh
--- old/dracut-059+suse.598.gfe80dac7/modules.d/95qeth_rules/module-setup.sh 2024-05-27 14:08:11.000000000 +0200
+++ new/dracut-059+suse.628.g20b345b4/modules.d/95qeth_rules/module-setup.sh 1970-01-01 01:00:00.000000000 +0100
@@ -1,58 +0,0 @@
-#!/bin/bash
-
-# called by dracut
-check() {
- local _arch=${DRACUT_ARCH:-$(uname -m)}
- local _online=0
- [ "$_arch" = "s390" -o "$_arch" = "s390x" ] || return 1
- dracut_module_included network || return 1
-
- [[ $hostonly ]] && {
- for i in /sys/devices/qeth/*/online; do
- [ ! -f "$i" ] && continue
- read -r _online < "$i"
- [ "$_online" -eq 1 ] && return 0
- done
- }
- return 255
-}
-
-# called by dracut
-installkernel() {
- instmods qeth
-}
-
-# called by dracut
-install() {
- ccwid() {
- qeth_path=$(readlink -e -q "$1"/device)
- basename "$qeth_path"
- }
-
- inst_rules_qeth() {
- for rule in /etc/udev/rules.d/{4,5}1-qeth-${1}.rules; do
- # prefer chzdev generated 41- rules
- if [ -f "$rule" ]; then
- inst_rules "$rule"
- break
- fi
- done
- }
-
- has_carrier() {
- carrier=0
- # not readable in qeth interfaces
- # that have just been assembled, ignore
- # read error and assume no carrier
- read -r carrier 2> /dev/null < "$1/carrier"
- [ "$carrier" -eq 1 ] && return 0
- return 1
- }
-
- for dev in /sys/class/net/*; do
- has_carrier "$dev" || continue
- id=$(ccwid "$dev")
- [ -n "$id" ] && inst_rules_qeth "$id"
- done
-
-}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dracut-059+suse.598.gfe80dac7/modules.d/95zfcp/module-setup.sh new/dracut-059+suse.628.g20b345b4/modules.d/95zfcp/module-setup.sh
--- old/dracut-059+suse.598.gfe80dac7/modules.d/95zfcp/module-setup.sh 2024-05-27 14:08:11.000000000 +0200
+++ new/dracut-059+suse.628.g20b345b4/modules.d/95zfcp/module-setup.sh 2024-07-02 13:29:26.000000000 +0200
@@ -5,7 +5,7 @@
arch=${DRACUT_ARCH:-$(uname -m)}
[ "$arch" = "s390" -o "$arch" = "s390x" ] || return 1
- require_binaries zfcp_cio_free grep sed seq || return 1
+ require_binaries zfcp_cio_free sed || return 1
return 0
}
@@ -23,7 +23,7 @@
# called by dracut
install() {
inst_hook cmdline 30 "$moddir/parse-zfcp.sh"
- inst_multiple zfcp_cio_free grep sed seq
+ inst_multiple zfcp_cio_free sed
inst_script /sbin/zfcpconf.sh
inst_rules 56-zfcp.rules
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dracut-059+suse.598.gfe80dac7/modules.d/95zfcp/parse-zfcp.sh new/dracut-059+suse.628.g20b345b4/modules.d/95zfcp/parse-zfcp.sh
--- old/dracut-059+suse.598.gfe80dac7/modules.d/95zfcp/parse-zfcp.sh 2024-05-27 14:08:11.000000000 +0200
+++ new/dracut-059+suse.628.g20b345b4/modules.d/95zfcp/parse-zfcp.sh 2024-07-02 13:29:26.000000000 +0200
@@ -2,15 +2,4 @@
getargbool 1 rd.zfcp.conf -d -n rd_NO_ZFCPCONF || rm /etc/zfcp.conf
-for zfcp_arg in $(getargs rd.zfcp -d 'rd_ZFCP='); do
- echo "$zfcp_arg" | grep '^0\.[0-9a-fA-F]\.[0-9a-fA-F]\{4\}\(,0x[0-9a-fA-F]\{16\},0x[0-9a-fA-F]\{16\}\)\?$' > /dev/null
- test $? -ne 0 && die "For argument 'rd.zfcp=$zfcp_arg'\nSorry, invalid format."
- (
- IFS=","
- # shellcheck disable=SC2086
- set $zfcp_arg
- echo "$@" >> /etc/zfcp.conf
- )
-done
-
zfcp_cio_free
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dracut-059+suse.598.gfe80dac7/modules.d/95zfcp_rules/module-setup.sh new/dracut-059+suse.628.g20b345b4/modules.d/95zfcp_rules/module-setup.sh
--- old/dracut-059+suse.598.gfe80dac7/modules.d/95zfcp_rules/module-setup.sh 2024-05-27 14:08:11.000000000 +0200
+++ new/dracut-059+suse.628.g20b345b4/modules.d/95zfcp_rules/module-setup.sh 1970-01-01 01:00:00.000000000 +0100
@@ -1,80 +0,0 @@
-#!/bin/bash
-
-# called by dracut
-cmdline() {
- is_zfcp() {
- local _dev=$1
- local _devpath
- _devpath=$(
- cd -P /sys/dev/block/"$_dev" || exit
- echo "$PWD"
- )
- local _sdev _scsiid _hostno _lun _wwpn _ccw _port_type
- local _allow_lun_scan _is_npiv
-
- read -r _allow_lun_scan < /sys/module/zfcp/parameters/allow_lun_scan
- [ "${_devpath#*/sd}" == "$_devpath" ] && return 1
- _sdev="${_devpath%%/block/*}"
- [ -e "${_sdev}"/fcp_lun ] || return 1
- _scsiid="${_sdev##*/}"
- _hostno="${_scsiid%%:*}"
- [ -d /sys/class/fc_host/host"${_hostno}" ] || return 1
- read -r _port_type < /sys/class/fc_host/host"${_hostno}"/port_type
- case "$_port_type" in
- NPIV*)
- _is_npiv=1
- ;;
- esac
- read -r _ccw < "${_sdev}"/hba_id
- if [ "$_is_npiv" ] && [ "$_allow_lun_scan" = "Y" ]; then
- echo "rd.zfcp=${_ccw}"
- else
- read -r _lun < "${_sdev}"/fcp_lun
- read -r _wwpn < "${_sdev}"/wwpn
- echo "rd.zfcp=${_ccw},${_wwpn},${_lun}"
- fi
- return 0
- }
- [[ $hostonly ]] || [[ $mount_needs ]] && {
- for_each_host_dev_and_slaves_all is_zfcp
- } | sort | uniq
-}
-
-# called by dracut
-check() {
- local _arch=${DRACUT_ARCH:-$(uname -m)}
- local _ccw
- [ "$_arch" = "s390" -o "$_arch" = "s390x" ] || return 1
-
- [[ $hostonly ]] || [[ $mount_needs ]] && {
- found=0
- for _ccw in /sys/bus/ccw/devices/*/host*; do
- [ -d "$_ccw" ] || continue
- found=$((found + 1))
- done
- [ $found -eq 0 ] && return 255
- }
- return 0
-}
-
-# called by dracut
-depends() {
- echo bash
- return 0
-}
-
-# called by dracut
-install() {
- inst_hook cmdline 30 "$moddir/parse-zfcp.sh"
- if [[ $hostonly_cmdline == "yes" ]]; then
- local _zfcp
-
- for _zfcp in $(cmdline); do
- printf "%s\n" "$_zfcp" >> "${initdir}/etc/cmdline.d/94zfcp.conf"
- done
- fi
- if [[ $hostonly ]]; then
- inst_rules_wildcard "51-zfcp-*.rules"
- inst_rules_wildcard "41-zfcp-*.rules"
- fi
-}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dracut-059+suse.598.gfe80dac7/modules.d/95zfcp_rules/parse-zfcp.sh new/dracut-059+suse.628.g20b345b4/modules.d/95zfcp_rules/parse-zfcp.sh
--- old/dracut-059+suse.598.gfe80dac7/modules.d/95zfcp_rules/parse-zfcp.sh 2024-05-27 14:08:11.000000000 +0200
+++ new/dracut-059+suse.628.g20b345b4/modules.d/95zfcp_rules/parse-zfcp.sh 1970-01-01 01:00:00.000000000 +0100
@@ -1,74 +0,0 @@
-#!/bin/bash
-
-create_udev_rule() {
- local ccw=$1
- local wwpn=$2
- local lun=$3
- local _rule=/etc/udev/rules.d/51-zfcp-${ccw}.rules
- local _cu_type _dev_type
-
- if [ -x /sbin/cio_ignore ] && cio_ignore -i "$ccw" > /dev/null; then
- cio_ignore -r "$ccw"
- fi
-
- if [ -e /sys/bus/ccw/devices/"${ccw}" ]; then
- read -r _cu_type < /sys/bus/ccw/devices/"${ccw}"/cutype
- read -r _dev_type < /sys/bus/ccw/devices/"${ccw}"/devtype
- fi
- if [ "$_cu_type" != "1731/03" ]; then
- return 0
- fi
- if [ "$_dev_type" != "1732/03" ] && [ "$_dev_type" != "1732/04" ]; then
- return 0
- fi
-
- [ -z "$wwpn" ] || [ -z "$lun" ] && return
- m=$(sed -n "/.*${wwpn}.*${lun}.*/p" "$_rule")
- if [ -z "$m" ]; then
- cat >> "$_rule" << EOF
-ACTION=="add", KERNEL=="rport-*", ATTR{port_name}=="$wwpn", SUBSYSTEMS=="ccw", KERNELS=="$ccw", ATTR{[ccw/$ccw]$wwpn/unit_add}="$lun"
-EOF
- fi
-}
-
-if [[ -f /sys/firmware/ipl/ipl_type ]] \
- && [[ $(< /sys/firmware/ipl/ipl_type) == "fcp" ]]; then
- (
- read -r _wwpn < /sys/firmware/ipl/wwpn
- read -r _lun < /sys/firmware/ipl/lun
- read -r _ccw < /sys/firmware/ipl/device
-
- create_udev_rule "$_ccw" "$_wwpn" "$_lun"
- )
-fi
-
-for zfcp_arg in $(getargs rd.zfcp); do
- (
- OLDIFS="$IFS"
- IFS=","
- # shellcheck disable=SC2086
- set $zfcp_arg
- IFS="$OLDIFS"
- create_udev_rule "$1" "$2" "$3"
- )
-done
-
-for zfcp_arg in $(getargs root=) $(getargs resume=); do
- (
- case $zfcp_arg in
- /dev/disk/by-path/ccw-*)
- ccw_arg=${zfcp_arg##*/}
- ;;
- esac
- if [ -n "$ccw_arg" ]; then
- OLDIFS="$IFS"
- IFS="-"
- # shellcheck disable=SC2086
- set -- $ccw_arg
- IFS="$OLDIFS"
- _wwpn=${4%:*}
- _lun=${4#*:}
- create_udev_rule "$2" "$wwpn" "$lun"
- fi
- )
-done
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dracut-059+suse.598.gfe80dac7/modules.d/95znet/module-setup.sh new/dracut-059+suse.628.g20b345b4/modules.d/95znet/module-setup.sh
--- old/dracut-059+suse.598.gfe80dac7/modules.d/95znet/module-setup.sh 2024-05-27 14:08:11.000000000 +0200
+++ new/dracut-059+suse.628.g20b345b4/modules.d/95znet/module-setup.sh 2024-07-02 13:29:26.000000000 +0200
@@ -5,7 +5,7 @@
arch=${DRACUT_ARCH:-$(uname -m)}
[ "$arch" = "s390" -o "$arch" = "s390x" ] || return 1
- require_binaries znet_cio_free grep sed seq readlink || return 1
+ require_binaries grep sed seq readlink chzdev || return 1
return 0
}
@@ -24,6 +24,37 @@
# called by dracut
install() {
inst_hook cmdline 30 "$moddir/parse-ccw.sh"
- inst_rules 81-ccw.rules
- inst_multiple znet_cio_free grep sed seq readlink /lib/udev/ccw_init
+ inst_multiple grep sed seq readlink chzdev
+ if [[ $hostonly ]]; then
+ local _tempfile
+ _tempfile=$(mktemp --tmpdir="${DRACUT_TMPDIR}" dracut-zdev.XXXXXX)
+ {
+ chzdev qeth --export - --configured --persistent --quiet --type
+ chzdev lcs --export - --configured --persistent --quiet --type
+ chzdev ctc --export - --configured --persistent --quiet --type
+ } 2> /dev/null > "$_tempfile"
+ ddebug < "$_tempfile"
+ chzdev --import "$_tempfile" --persistent --base "/etc=$initdir/etc" \
+ --yes --no-root-update --force 2>&1 | ddebug
+ lszdev --configured --persistent --info \
+ --base "/etc=$initdir/etc" 2>&1 | ddebug
+ rm -f "$_tempfile"
+ # these are purely generated udev rules so we have to glob expand
+ # within $initdir and strip the $initdir prefix for mark_hostonly
+ local -a _array
+ # shellcheck disable=SC2155
+ local _nullglob=$(shopt -p nullglob)
+ shopt -u nullglob
+ # shellcheck disable=SC2086
+ readarray -t _array < <(
+ ls -1 $initdir/etc/udev/rules.d/41-*.rules 2> /dev/null
+ )
+ [[ ${#_array[@]} -gt 0 ]] && mark_hostonly "${_array[@]#$initdir}"
+ # shellcheck disable=SC2086
+ readarray -t _array < <(
+ ls -1 $initdir/etc/modprobe.d/s390x-*.conf 2> /dev/null
+ )
+ [[ ${#_array[@]} -gt 0 ]] && mark_hostonly "${_array[@]#$initdir}"
+ $_nullglob
+ fi
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dracut-059+suse.598.gfe80dac7/modules.d/95znet/parse-ccw.sh new/dracut-059+suse.628.g20b345b4/modules.d/95znet/parse-ccw.sh
--- old/dracut-059+suse.598.gfe80dac7/modules.d/95znet/parse-ccw.sh 2024-05-27 14:08:11.000000000 +0200
+++ new/dracut-059+suse.628.g20b345b4/modules.d/95znet/parse-ccw.sh 2024-07-02 13:29:26.000000000 +0200
@@ -1,7 +1,50 @@
#!/bin/bash
+znet_base_args="--no-settle --yes --no-root-update --force"
+
+# at this point in time dracut's vinfo() only logs to journal which is hard for
+# s390 users to find and access on a line mode console such as 3215 mode
+# so use a vinfo alternative that still prints to the console via kmsg
+znet_vinfo() {
+ while read -r _znet_vinfo_line || [ -n "$_znet_vinfo_line" ]; do
+ # Prefix "<30>" represents facility LOG_DAEMON 3 and loglevel INFO 6:
+ # (facility << 3) | level.
+ echo "<30>dracut: $_znet_vinfo_line" > /dev/kmsg
+ done
+}
+
for ccw_arg in $(getargs rd.ccw -d 'rd_CCW=') $(getargs rd.znet -d 'rd_ZNET='); do
- echo "$ccw_arg" >> /etc/ccw.conf
+ (
+ SAVED_IFS="$IFS"
+ IFS=","
+ # shellcheck disable=SC2086
+ set -- $ccw_arg
+ IFS="$SAVED_IFS"
+ type="$1"
+ subchannel1="$2"
+ subchannel2="$3"
+ subchannel3="$4"
+ echo "rd.znet ${ccw_arg} :" | znet_vinfo
+ if [ "$#" -lt 3 ]; then
+ echo "rd.znet needs at least 3 list items: type,subchannel1,subchannel2" | znet_vinfo
+ fi
+ if [ "$1" = "qeth" ]; then
+ if [ "$#" -lt 4 ]; then
+ echo "rd.znet for type qeth needs at least 4 list items: qeth,subchannel1,subchannel2,subchannel3" | znet_vinfo
+ fi
+ subchannels="$subchannel1:$subchannel2:$subchannel3"
+ shift 4
+ # shellcheck disable=SC2086
+ chzdev --enable --persistent $znet_base_args \
+ "$type" "$subchannels" "$@" 2>&1 | znet_vinfo
+ else
+ subchannels="$subchannel1:$subchannel2"
+ shift 3
+ # shellcheck disable=SC2086
+ chzdev --enable --persistent $znet_base_args \
+ "$type" "$subchannels" "$@" 2>&1 | znet_vinfo
+ fi
+ )
done
for ifname in $(getargs rd.znet_ifname); do
@@ -10,16 +53,16 @@
warn "Invalid arguments for rd.znet_ifname="
else
{
- ifname_subchannels=${ifname_subchannels//,/|}
+ ifname_subchannels="${ifname_subchannels//,/|}"
+ # sanitize for use in udev label: replace non-word characters by _
+ ifname_if_label="${ifname_if//[^[:word:]]/_}"
- echo 'ACTION!="add|change", GOTO="ccw_ifname_end"'
- echo 'ATTR{type}!="1", GOTO="ccw_ifname_end"'
- echo 'SUBSYSTEM!="net", GOTO="ccw_ifname_end"'
+ echo "ACTION!=\"add|change\", GOTO=\"ccw_ifname_${ifname_if_label}_end\""
+ echo "ATTR{type}!=\"1\", GOTO=\"ccw_ifname_${ifname_if_label}_end\""
+ echo "SUBSYSTEM!=\"net\", GOTO=\"ccw_ifname_${ifname_if_label}_end\""
echo "SUBSYSTEMS==\"ccwgroup\", KERNELS==\"$ifname_subchannels\", DRIVERS==\"?*\" NAME=\"$ifname_if\""
- echo 'LABEL="ccw_ifname_end"'
+ echo "LABEL=\"ccw_ifname_${ifname_if_label}_end\""
- } > /etc/udev/rules.d/81-ccw-ifname.rules
+ } >> /etc/udev/rules.d/81-ccw-ifname.rules
fi
done
-
-znet_cio_free
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dracut-059+suse.598.gfe80dac7/src/install/dracut-install.c new/dracut-059+suse.628.g20b345b4/src/install/dracut-install.c
--- old/dracut-059+suse.598.gfe80dac7/src/install/dracut-install.c 2024-05-27 14:08:11.000000000 +0200
+++ new/dracut-059+suse.628.g20b345b4/src/install/dracut-install.c 2024-07-02 13:29:26.000000000 +0200
@@ -588,7 +588,7 @@
break;
if (strstr(buf, "cannot be preloaded"))
- break;
+ continue;
if (strstr(buf, destrootdir))
break;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dracut-059+suse.598.gfe80dac7/suse/README.susemaint new/dracut-059+suse.628.g20b345b4/suse/README.susemaint
--- old/dracut-059+suse.598.gfe80dac7/suse/README.susemaint 2024-05-27 14:08:11.000000000 +0200
+++ new/dracut-059+suse.628.g20b345b4/suse/README.susemaint 2024-07-02 13:29:26.000000000 +0200
@@ -6,11 +6,13 @@
Patches are added as merge requests on GitHub against the respective maintenance
branch. Currently, these active maintenance branches are:
-- SUSE/044 -> SLE 12 SP5
-- SUSE/049 -> SLE 15 SP2, SLE 15 SP3
-- SUSE/055 -> SLE 15 SP4
-- SLE-15-SP5_Update -> SLE 15 SP5 (based on SUSE/055 plus some specific patches)
-- SUSE/059 -> Tumbleweed
+- SUSE/044 -> SLE 12 SP5
+- SUSE/049 -> SLE 15 SP2, SLE 15 SP3
+- SUSE/055 -> SLE 15 SP4
+- SLE-15-SP5_Update -> SLE 15 SP5 (based on SUSE/055 plus some specific patches)
+- SLE-15-SP6_Update -> SLE 15 SP6
+- SL-Micro-6.0_Update -> SL Micro 6.0
+- SUSE/059 -> Tumbleweed
Rules:
@@ -353,4 +355,22 @@
a45048b8 fix(dracut): move hooks directory from /usr/lib to /var/lib
424717af fix: /etc/modprobe.d --> /run/modprobe.d (partially reverted)
4cc962aa fix(systemd-ask-password): no graphical output in aarch64
+6c55657e refactor(cms): use zdev to simplify handling CMSDASD=... boot option
+53a5d10b refactor(cms): use consolidated zfcp config with zdev from s390-tools
+168c0c66 refactor(cms): use consolidated dasd config with zdev from s390-tools
+0b6d6952 refactor(cms): use consolidated network config with zdev from s390-tools
+166e8a22 refactor(cms): remove now unnecessary inclusion of full s390utils-base
+b5a35f9d feat(zfcp_rules): remove zfcp handling consolidated in s390-tools
+7745a81a feat(zfcp): minimize zfcp handling consolidated in s390-tools
+72c945ca feat(dasd_rules): remove dasd handling consolidated in s390-tools
+2397c479 feat(dasd_mod): minimize dasd handling consolidated in s390-tools
+36e1f884 feat(dasd): minimize dasd handling consolidated in s390-tools
+658a21ac feat(znet): use zdev for consolidated device configuration
+8707a69b docs(dracut.cmdline): generalize description of rd.znet
+198a86c2 feat(qeth_rules): remove qeth handling consolidated in 95znet
+22f51730 fix(znet): append to udev rules so each rd.znet_ifname is effective
+2d8fa8be refactor(ifcfg): delete code duplication using iface_get_subchannels()
+457e66e6 feat(ifcfg): minimize s390-specific network configuration aspects
+3fd43858 fix(mdraid): try to assemble the missing raid device
+61ab3386 feat(crypt): force the inclusion of crypttab entries with x-initrd.attach
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dracut-059+suse.598.gfe80dac7/suse/dracut.spec new/dracut-059+suse.628.g20b345b4/suse/dracut.spec
--- old/dracut-059+suse.598.gfe80dac7/suse/dracut.spec 2024-05-27 14:08:11.000000000 +0200
+++ new/dracut-059+suse.628.g20b345b4/suse/dracut.spec 2024-07-02 13:29:26.000000000 +0200
@@ -146,11 +146,8 @@
rm -rf %{buildroot}%{dracutlibdir}/modules.d/91zipl
rm -rf %{buildroot}%{dracutlibdir}/modules.d/95dasd
rm -rf %{buildroot}%{dracutlibdir}/modules.d/95dasd_mod
-rm -rf %{buildroot}%{dracutlibdir}/modules.d/95dasd_rules
rm -rf %{buildroot}%{dracutlibdir}/modules.d/95dcssblk
-rm -rf %{buildroot}%{dracutlibdir}/modules.d/95qeth_rules
rm -rf %{buildroot}%{dracutlibdir}/modules.d/95zfcp
-rm -rf %{buildroot}%{dracutlibdir}/modules.d/95zfcp_rules
rm -rf %{buildroot}%{dracutlibdir}/modules.d/95znet
%else
rm -rf %{buildroot}%{dracutlibdir}/modules.d/00warpclock
@@ -433,7 +430,6 @@
%{dracutlibdir}/modules.d/95cifs
%ifarch s390 s390x
%{dracutlibdir}/modules.d/95dasd_mod
-%{dracutlibdir}/modules.d/95dasd_rules
%{dracutlibdir}/modules.d/95dcssblk
%endif
%{dracutlibdir}/modules.d/95debug
@@ -445,9 +441,6 @@
%{dracutlibdir}/modules.d/95nbd
%{dracutlibdir}/modules.d/95nfs
%{dracutlibdir}/modules.d/95nvmf
-%ifarch s390 s390x
-%{dracutlibdir}/modules.d/95qeth_rules
-%endif
%{dracutlibdir}/modules.d/95resume
%{dracutlibdir}/modules.d/95rootfs-block
%{dracutlibdir}/modules.d/95ssh-client
@@ -455,9 +448,6 @@
%{dracutlibdir}/modules.d/95udev-rules
%{dracutlibdir}/modules.d/95virtfs
%{dracutlibdir}/modules.d/95virtiofs
-%ifarch s390 s390x
-%{dracutlibdir}/modules.d/95zfcp_rules
-%endif
%{dracutlibdir}/modules.d/97biosdevname
%ifarch %ix86
%exclude %{dracutlibdir}/modules.d/96securityfs
++++++ dracut.obsinfo ++++++
--- /var/tmp/diff_new_pack.F9UY87/_old 2024-07-03 20:29:46.463910220 +0200
+++ /var/tmp/diff_new_pack.F9UY87/_new 2024-07-03 20:29:46.463910220 +0200
@@ -1,5 +1,5 @@
name: dracut
-version: 059+suse.598.gfe80dac7
-mtime: 1716811691
-commit: fe80dac7f926d36c7aa2c5d88c2db71f38b24a07
+version: 059+suse.628.g20b345b4
+mtime: 1719919766
+commit: 20b345b4e1bcaf1ea71cc67263b13cb4d8e85577
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package openSUSE-MicroOS for openSUSE:Factory checked in at 2024-07-03 20:29:07
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/openSUSE-MicroOS (Old)
and /work/SRC/openSUSE:Factory/.openSUSE-MicroOS.new.18349 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "openSUSE-MicroOS"
Wed Jul 3 20:29:07 2024 rev:76 rq:1184820 version:16.0.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/openSUSE-MicroOS/openSUSE-MicroOS.changes 2024-06-17 19:27:01.516838875 +0200
+++ /work/SRC/openSUSE:Factory/.openSUSE-MicroOS.new.18349/openSUSE-MicroOS.changes 2024-07-03 20:29:39.843667917 +0200
@@ -1,0 +2,10 @@
+Wed Jun 19 09:32:16 UTC 2024 - Alberto Planas Dominguez <aplanas(a)suse.com>
+
+- Refactor config.sh and disk.sh
+
+-------------------------------------------------------------------
+Fri Jun 7 11:02:21 UTC 2024 - Alberto Planas Dominguez <aplanas(a)suse.com>
+
+- Add ignition to fde images
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ openSUSE-MicroOS.kiwi ++++++
--- /var/tmp/diff_new_pack.M5bKiB/_old 2024-07-03 20:29:41.259719745 +0200
+++ /var/tmp/diff_new_pack.M5bKiB/_new 2024-07-03 20:29:41.263719891 +0200
@@ -584,7 +584,7 @@
<volume name="boot/grub2/x86_64-efi" mountpoint="boot/grub2/x86_64-efi"/>
<volume name="boot/writable"/>
<volume name="usr/local"/>
- <volume name="var" copy_on_write="false"/>
+ <volume name="var" copy_on_write="false"/>
</systemdisk>
<vagrantconfig provider="libvirt" virtualsize="24"/>
<size unit="G">24</size>
@@ -693,6 +693,8 @@
<package name="patterns-base-bootloader"/>
</packages>
<packages type="image" profiles="kvm-and-xen-sdboot">
+ <!-- Needed for initial configuration, except on OpenStack-Cloud, where cloud-init is used -->
+ <package name="ignition-dracut"/>
<package name="combustion >= 1.2"/> <!-- New firstboot mechanism -->
<package name="jeos-firstboot"/>
<package name="growpart-generator"/>
++++++ config.sh ++++++
--- /var/tmp/diff_new_pack.M5bKiB/_old 2024-07-03 20:29:41.327722234 +0200
+++ /var/tmp/diff_new_pack.M5bKiB/_new 2024-07-03 20:29:41.331722380 +0200
@@ -183,8 +183,6 @@
if [ -e /etc/default/grub ]; then
sed -i "s#^GRUB_CMDLINE_LINUX_DEFAULT=.*\$#GRUB_CMDLINE_LINUX_DEFAULT=\"${cmdline[*]}\"#" /etc/default/grub
-else
- echo "${cmdline[*]}" > /etc/kernel/cmdline
fi
#======================================
@@ -255,15 +253,21 @@
chown -R vagrant /home/vagrant
fi
+#======================================
+# Configure FDE/BLS specifics
+#--------------------------------------
+# [[ "$kiwi_profiles" == *"kvm-and-xen-"* ]]
if rpm -q sdbootutil; then
- for d in /usr/lib/modules/*; do
- test -d "$d" || continue
- depmod -a "${d##*/}"
- done
- ENTRY_TOKEN=$(. /usr/lib/os-release; echo $ID)
- mkdir -p /etc/kernel
- echo "$ENTRY_TOKEN" > /etc/kernel/entry-token
- # FIXME: kiwi needs /boot/efi to exist before syncing the disk image
- mkdir -p /boot/efi
+ for d in /usr/lib/modules/*; do
+ test -d "$d" || continue
+ depmod -a "${d##*/}"
+ done
+ ENTRY_TOKEN=$(. /usr/lib/os-release; echo $ID)
+ mkdir -p /etc/kernel
+ echo "$ENTRY_TOKEN" > /etc/kernel/entry-token
+ # FIXME: kiwi needs /boot/efi to exist before syncing the disk image
+ mkdir -p /boot/efi
+
+ echo "${cmdline[*]}" > /etc/kernel/cmdline
fi
++++++ disk.sh ++++++
--- /var/tmp/diff_new_pack.M5bKiB/_old 2024-07-03 20:29:41.347722966 +0200
+++ /var/tmp/diff_new_pack.M5bKiB/_new 2024-07-03 20:29:41.351723112 +0200
@@ -1,23 +1,32 @@
#!/bin/bash
set -euxo pipefail
[ -x /usr/bin/sdbootutil ] || exit 0
-echo "#######DISK"
-rootuuid=$(findmnt / -n --output uuid)
-sed -i -e "s,\$, root=UUID=$rootuuid," /etc/kernel/cmdline
-arch="$(uname -m)"
-case "$arch" in
+
+echo "####### BOOTLOADER INSTALL (disk.sh)"
+
+# [[ "$kiwi_profiles" == *"kvm-and-xen-"* ]]
+if rpm -q sdbootutil; then
+ rootuuid=$(findmnt / -n --output uuid)
+ sed -i -e "s,\$, root=UUID=$rootuuid," /etc/kernel/cmdline
+ arch="$(uname -m)"
+ case "$arch" in
aarch64) arch=aa64 ;;
x86_64) arch=x64 ;;
*) echo "Unknown arch $arch"; exit 1 ;;
-esac
-echo "install boot loader"
-sdbootutil -v --no-random-seed --arch "$arch" --esp-path /boot/efi --entry-token=auto --no-variables install
-echo "add kernels"
-export hostonly_l=no # for dracut
-sdbootutil -v --arch "$arch" --esp-path /boot/efi --entry-token=auto add-all-kernels
-# Set a 5s timeout, the "hold a key down" method doesn't work effectively.
-echo "timeout 5" >> /boot/efi/loader/loader.conf
-echo "##### AFTER ####"
-rm -f /boot/mbrid
-find /boot
+ esac
+
+ echo "install boot loader"
+ sdbootutil -v --no-random-seed --arch "$arch" --esp-path /boot/efi --entry-token=auto --no-variables install
+ echo "add kernels"
+ export hostonly_l=no # for dracut
+ sdbootutil -v --arch "$arch" --esp-path /boot/efi --entry-token=auto add-all-kernels
+ # Set a 5s timeout, the "hold a key down" method doesn't work effectively.
+ echo "timeout 5" >> /boot/efi/loader/loader.conf
+
+ rm -f /boot/mbrid
+
+ find /boot
+fi
+
+echo "####### ENDS BOOTLOADER INSTALLER (disk.sh)"
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package open-vm-tools for openSUSE:Factory checked in at 2024-07-03 20:29:00
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/open-vm-tools (Old)
and /work/SRC/openSUSE:Factory/.open-vm-tools.new.18349 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "open-vm-tools"
Wed Jul 3 20:29:00 2024 rev:126 rq:1184375 version:12.4.5
Changes:
--------
--- /work/SRC/openSUSE:Factory/open-vm-tools/open-vm-tools.changes 2024-03-29 13:09:46.152509338 +0100
+++ /work/SRC/openSUSE:Factory/.open-vm-tools.new.18349/open-vm-tools.changes 2024-07-03 20:29:35.343503210 +0200
@@ -1,0 +2,26 @@
+Mon Jul 1 15:07:51 UTC 2024 - Kirk Allan <kallan(a)suse.com>
+
+- Update to 12.4.5 (build 23787635) (boo#1227181)
+ - There are no new features in the open-vm-tools 12.4.5 release. This is
+ primarily a maintenance release that addresses a few critical problems,
+ including:
+
+ - A Github pull request and associated issue has been handled. Please
+ see the Resolved Issues section of the Release Notes.
+
+ - A number of issues flagged by Coverity and ShellCheck have been
+ addressed.
+
+ - A vmtoolsd process hang related to nested logging from an RPC Channel
+ error has been fixed.
+
+ For a more complete list of issues resolved in this release, see the
+ Resolved Issues section of the Release Notes.
+
+ For complete details, see: https://github.com/vmware/open-vm-tools/releases/tag/stable-12.4.5
+
+ Release Notes are available at: https://github.com/vmware/open-vm-tools/blob/stable-12.4.5/ReleaseNotes.md
+
+ The granular changes that have gone into the 12.4.5 release are in the ChangeLog at: https://github.com/vmware/open-vm-tools/blob/stable-12.4.5/open-vm-tools/Ch…
+
+-------------------------------------------------------------------
Old:
----
open-vm-tools-12.4.0.tar.xz
New:
----
open-vm-tools-12.4.5.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ open-vm-tools.spec ++++++
--- /var/tmp/diff_new_pack.fiRUlx/_old 2024-07-03 20:29:36.419542593 +0200
+++ /var/tmp/diff_new_pack.fiRUlx/_new 2024-07-03 20:29:36.419542593 +0200
@@ -38,7 +38,7 @@
%define with_X 1
Name: open-vm-tools
-Version: 12.4.0
+Version: 12.4.5
Release: 0
Summary: Open Virtual Machine Tools
License: BSD-3-Clause AND GPL-2.0-only AND LGPL-2.1-only
++++++ _service ++++++
--- /var/tmp/diff_new_pack.fiRUlx/_old 2024-07-03 20:29:36.467544350 +0200
+++ /var/tmp/diff_new_pack.fiRUlx/_new 2024-07-03 20:29:36.471544496 +0200
@@ -2,9 +2,9 @@
<service name="tar_scm" mode="manual">
<param name="scm">git</param>
<param name="url">https://github.com/vmware/open-vm-tools.git</param>
- <param name="revision">stable-12.4.0</param>
+ <param name="revision">stable-12.4.5</param>
<param name="filename">open-vm-tools</param>
- <param name="versionformat">12.4.0</param>
+ <param name="versionformat">12.4.5</param>
</service>
<service name="recompress" mode="manual">
<param name="file">*.tar</param>
++++++ open-vm-tools-12.4.0.tar.xz -> open-vm-tools-12.4.5.tar.xz ++++++
++++ 2629 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package mariadb-connector-c for openSUSE:Factory checked in at 2024-07-03 20:28:36
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/mariadb-connector-c (Old)
and /work/SRC/openSUSE:Factory/.mariadb-connector-c.new.18349 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "mariadb-connector-c"
Wed Jul 3 20:28:36 2024 rev:48 rq:1184319 version:3.3.10
Changes:
--------
--- /work/SRC/openSUSE:Factory/mariadb-connector-c/mariadb-connector-c.changes 2024-03-09 20:54:51.694977677 +0100
+++ /work/SRC/openSUSE:Factory/.mariadb-connector-c.new.18349/mariadb-connector-c.changes 2024-07-03 20:29:26.815191071 +0200
@@ -1,0 +2,7 @@
+Thu Jun 27 14:43:28 UTC 2024 - Antonio Teixeira <antonio.teixeira(a)suse.com>
+
+- Update to 3.3.10:
+ * https://mariadb.com/kb/en/mariadb-connector-c-3-3-10-release-notes/
+- Remove fix-build-gcc14.patch (fixed upstream)
+
+-------------------------------------------------------------------
Old:
----
fix-build-gcc14.patch
mariadb-connector-c-3.3.8-src.tar.gz
mariadb-connector-c-3.3.8-src.tar.gz.asc
New:
----
mariadb-connector-c-3.3.10-src.tar.gz
mariadb-connector-c-3.3.10-src.tar.gz.asc
BETA DEBUG BEGIN:
Old: * https://mariadb.com/kb/en/mariadb-connector-c-3-3-10-release-notes/
- Remove fix-build-gcc14.patch (fixed upstream)
BETA DEBUG END:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ mariadb-connector-c.spec ++++++
--- /var/tmp/diff_new_pack.aPYlRb/_old 2024-07-03 20:29:27.323209664 +0200
+++ /var/tmp/diff_new_pack.aPYlRb/_new 2024-07-03 20:29:27.327209811 +0200
@@ -25,7 +25,7 @@
%endif
%bcond_with sqlite3
Name: mariadb-connector-c
-Version: 3.3.8
+Version: 3.3.10
Release: 0
Summary: MariaDB connector in C
License: LGPL-2.1-or-later
@@ -38,7 +38,6 @@
Source3: baselibs.conf
Patch1: mariadb-connector-c-2.3.1_unresolved_symbols.patch
Patch4: private_library.patch
-Patch5: fix-build-gcc14.patch
BuildRequires: cmake
BuildRequires: curl-devel
BuildRequires: pkgconfig
++++++ mariadb-connector-c-3.3.8-src.tar.gz -> mariadb-connector-c-3.3.10-src.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mariadb-connector-c-3.3.8-src/.travis.yml new/mariadb-connector-c-3.3.10-src/.travis.yml
--- old/mariadb-connector-c-3.3.8-src/.travis.yml 2023-11-01 11:28:04.000000000 +0100
+++ new/mariadb-connector-c-3.3.10-src/.travis.yml 2024-05-10 10:26:44.000000000 +0200
@@ -1,10 +1,5 @@
-os: linux
-dist: focal
language: c
-services: docker
-addons:
- hosts:
- - mariadb.example.com
+version: ~> 1.0
cache:
apt: true
@@ -12,98 +7,22 @@
directories:
- $HOME/docker
-before_install:
- - git clone https://github.com/mariadb-corporation/connector-test-machine.git
- # Load cached docker images
- - if [[ -d $HOME/docker ]]; then ls $HOME/docker/*.tar.gz | xargs -I {file} sh -c "zcat {file} | docker load"; fi
+env:
+ global: local=0 DB=testc CLEAR_TEXT=0
-install:
- - |-
- if [ -z "$server_branch" ] ; then
- case $TRAVIS_OS_NAME in
- windows)
- connector-test-machine/launch.bat -t "$srv" -v "$v" -d testc
- ;;
- linux)
- source connector-test-machine/launch.sh -t "$srv" -v "$v" -d testc -l "$local" -n "$native"
- ;;
- esac
- fi
-
-
-env: local=0
-
-stages:
- - Minimal
- - name: Enterprise
- if: type = push AND fork = false
- - Community
+import: mariadb-corporation/connector-test-machine:common-build.yml@master
jobs:
- fast_finish: true
- allow_failures:
- - env: srv=maxscale
- - env: srv=skysql
- - env: srv=skysql-ha
- - env: srv=xpand
- - env: srv=mysql v=5.7
- - env: srv=mysql v=8.0
include:
- - stage: Minimal
- env: srv=mariadb v=10.6 packet=8
- name: "CS 10.6"
- - env: srv=mariadb-es
- name: "ES latest"
- if: type = push AND fork = false
- - env: server_branch=10.11
- name: "10.11 Server unit testing"
-
- - stage: Enterprise
- env: srv=mariadb-es v=10.4
- dist: bionic
- name: "ES 10.4"
- - env: srv=mariadb-es v=10.5
- dist: bionic
- name: "ES 10.5"
- - env: srv=mariadb-es v=10.6
- name: "ES 10.6"
- - env: srv=mariadb-es-test v=23.08
- name: "ES 23.08"
- - env: srv=maxscale
- name: "Maxscale"
- - env: srv=xpand
- name: "Xpand"
-
- stage: Community
- env: srv=mariadb v=10.11
- os: windows
- language: shell
- name: "Windows"
- - env: server_branch=10.6
- name: "10.6 Server unit testing"
+ env: srv=mariadb v=10.11 local=1 TEST_OPTION=--ps-protocol
+ name: "CS 10.11 with ps-protocol"
+ - stage: Other
+ env: server_branch=10.6
+ name: "CS 10.6 Server unit testing"
+ - env: server_branch=10.11
+ name: "CS 10.11 Server unit testing"
- env: server_branch=11.3 TEST_OPTION=--ps-protocol
name: "11.3 Server unit testing with ps-protocol"
- - env: srv=mariadb v=10.4 local=1
- dist: bionic
- name: "CS 10.4"
- - env: srv=mariadb v=10.5 local=1
- dist: bionic
- name: "CS 10.5"
- - env: srv=mariadb v=10.9 local=1
- name: "CS 10.9"
- - env: srv=mariadb v=10.10 local=1
- name: "CS 10.10"
- - env: srv=mariadb v=10.11 local=1
- name: "CS 10.11"
- - env: srv=mariadb v=10.11 local=1 TEST_OPTION=--ps-protocol
- name: "CS 10.11 with ps-protocol"
- - env: srv=mariadb v=11.0 local=1
- name: "CS 11.0"
- - env: srv=mariadb v=11.1 local=1
- name: "CS 11.1"
- - env: srv=mysql v=5.7 native=1
- name: "MySQL 5.7"
- - env: srv=mysql v=8.0 native=1
- name: "MySQL 8.0"
script: ./travis.sh
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mariadb-connector-c-3.3.8-src/CMakeLists.txt new/mariadb-connector-c-3.3.10-src/CMakeLists.txt
--- old/mariadb-connector-c-3.3.8-src/CMakeLists.txt 2023-11-01 11:28:04.000000000 +0100
+++ new/mariadb-connector-c-3.3.10-src/CMakeLists.txt 2024-05-10 10:26:44.000000000 +0200
@@ -36,7 +36,7 @@
SET(CPACK_PACKAGE_VERSION_MAJOR 3)
SET(CPACK_PACKAGE_VERSION_MINOR 3)
-SET(CPACK_PACKAGE_VERSION_PATCH 8)
+SET(CPACK_PACKAGE_VERSION_PATCH 10)
SET(CPACK_PACKAGE_VERSION "${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}")
MATH(EXPR MARIADB_PACKAGE_VERSION_ID "${CPACK_PACKAGE_VERSION_MAJOR} * 10000 +
${CPACK_PACKAGE_VERSION_MINOR} * 100 +
@@ -395,7 +395,7 @@
MESSAGE1(SYSTEM_LIBS "SYSTEM_LIBS ${SYSTEM_LIBS}")
MARK_AS_ADVANCED(SYSTEM_LIBS)
-IF(NOT IS_SUBPROJECT)
+IF(NOT IS_SUBPROJECT AND (NOT DEFINED CMAKE_COMPILE_WARNING_AS_ERROR))
IF ((NOT WIN32) AND (CMAKE_C_COMPILER_ID MATCHES "Clang" OR CMAKE_C_COMPILER_ID MATCHES "GNU"))
SET(WARNING_AS_ERROR "-Werror")
ELSEIF(CMAKE_C_COMPILER_ID MATCHES "MSVC")
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mariadb-connector-c-3.3.8-src/cmake/FindZStd.cmake new/mariadb-connector-c-3.3.10-src/cmake/FindZStd.cmake
--- old/mariadb-connector-c-3.3.8-src/cmake/FindZStd.cmake 2023-11-01 11:28:04.000000000 +0100
+++ new/mariadb-connector-c-3.3.10-src/cmake/FindZStd.cmake 2024-05-10 10:26:44.000000000 +0200
@@ -10,7 +10,7 @@
HINTS ${ZSTD_ROOT_DIR}/include)
find_library(ZSTD_LIBRARIES
- NAMES zstd
+ NAMES zstd zstd_static
HINTS ${ZSTD_ROOT_DIR}/lib)
include(FindPackageHandleStandardArgs)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mariadb-connector-c-3.3.8-src/include/CMakeLists.txt new/mariadb-connector-c-3.3.10-src/include/CMakeLists.txt
--- old/mariadb-connector-c-3.3.8-src/include/CMakeLists.txt 2023-11-01 11:28:04.000000000 +0100
+++ new/mariadb-connector-c-3.3.10-src/include/CMakeLists.txt 2024-05-10 10:26:44.000000000 +0200
@@ -17,7 +17,6 @@
ENDIF()
SET(MYSQL_ADDITIONAL_INCLUDES
${CC_SOURCE_DIR}/include/mysql/client_plugin.h
- ${CC_SOURCE_DIR}/include/mysql/plugin_auth_common.h
${CC_SOURCE_DIR}/include/mysql/plugin_auth.h
)
SET(MARIADB_ADDITIONAL_INCLUDES
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mariadb-connector-c-3.3.8-src/include/errmsg.h new/mariadb-connector-c-3.3.10-src/include/errmsg.h
--- old/mariadb-connector-c-3.3.8-src/include/errmsg.h 2023-11-01 11:28:04.000000000 +0100
+++ new/mariadb-connector-c-3.3.10-src/include/errmsg.h 2024-05-10 10:26:44.000000000 +0200
@@ -114,10 +114,11 @@
#define CR_BINLOG_ERROR 5021
#define CR_BINLOG_INVALID_FILE 5022
#define CR_BINLOG_SEMI_SYNC_ERROR 5023
+#define CR_INVALID_CLIENT_FLAG 5024
/* Always last, if you add new error codes please update the
value for CR_MARIADB_LAST_ERROR */
-#define CR_MARIADB_LAST_ERROR CR_BINLOG_INVALID_FILE
+#define CR_MARIADB_LAST_ERROR CR_INVALID_CLIENT_FLAG
#endif
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mariadb-connector-c-3.3.8-src/include/ma_hash.h new/mariadb-connector-c-3.3.10-src/include/ma_hash.h
--- old/mariadb-connector-c-3.3.8-src/include/ma_hash.h 1970-01-01 01:00:00.000000000 +0100
+++ new/mariadb-connector-c-3.3.10-src/include/ma_hash.h 2024-05-10 10:26:44.000000000 +0200
@@ -0,0 +1,22 @@
+#ifndef _ma_hash_h_
+#define _ma_hash_h_
+
+/*! Hash algorithms */
+#define MA_HASH_MD5 1
+#define MA_HASH_SHA1 2
+#define MA_HASH_SHA224 3
+#define MA_HASH_SHA256 4
+#define MA_HASH_SHA384 5
+#define MA_HASH_SHA512 6
+
+/*! Hash digest sizes */
+#define MA_MD5_HASH_SIZE 16
+#define MA_SHA1_HASH_SIZE 20
+#define MA_SHA224_HASH_SIZE 28
+#define MA_SHA256_HASH_SIZE 32
+#define MA_SHA384_HASH_SIZE 48
+#define MA_SHA512_HASH_SIZE 64
+
+#define MA_MAX_HASH_SIZE 64
+
+#endif
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mariadb-connector-c-3.3.8-src/include/mariadb_com.h new/mariadb-connector-c-3.3.10-src/include/mariadb_com.h
--- old/mariadb-connector-c-3.3.8-src/include/mariadb_com.h 2023-11-01 11:28:04.000000000 +0100
+++ new/mariadb-connector-c-3.3.10-src/include/mariadb_com.h 2024-05-10 10:26:44.000000000 +0200
@@ -205,11 +205,17 @@
CLIENT_MULTI_STATEMENTS |\
CLIENT_MULTI_RESULTS |\
CLIENT_PROGRESS |\
- CLIENT_SSL_VERIFY_SERVER_CERT |\
+ CLIENT_SSL_VERIFY_SERVER_CERT |\
CLIENT_REMEMBER_OPTIONS |\
CLIENT_PLUGIN_AUTH |\
CLIENT_SESSION_TRACKING |\
CLIENT_CONNECT_ATTRS)
+#define CLIENT_ALLOWED_FLAGS (CLIENT_SUPPORTED_FLAGS |\
+ CLIENT_PLUGIN_AUTH_LENENC_CLIENT_DATA |\
+ CLIENT_CAN_HANDLE_EXPIRED_PASSWORDS |\
+ CLIENT_ZSTD_COMPRESSION |\
+ CLIENT_PS_MULTI_RESULTS |\
+ CLIENT_REMEMBER_OPTIONS)
#define CLIENT_CAPABILITIES (CLIENT_MYSQL | \
CLIENT_LONG_FLAG |\
CLIENT_TRANSACTIONS |\
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mariadb-connector-c-3.3.8-src/include/mysql/client_plugin.h new/mariadb-connector-c-3.3.10-src/include/mysql/client_plugin.h
--- old/mariadb-connector-c-3.3.8-src/include/mysql/client_plugin.h 2023-11-01 11:28:04.000000000 +0100
+++ new/mariadb-connector-c-3.3.10-src/include/mysql/client_plugin.h 2024-05-10 10:26:44.000000000 +0200
@@ -122,7 +122,7 @@
} MARIADB_PVIO_PLUGIN;
/******** authentication plugin specific declarations *********/
-#include <mysql/plugin_auth_common.h>
+#include <mysql/plugin_auth.h>
struct st_mysql_client_plugin_AUTHENTICATION
{
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mariadb-connector-c-3.3.8-src/include/mysql/plugin_auth_common.h new/mariadb-connector-c-3.3.10-src/include/mysql/plugin_auth_common.h
--- old/mariadb-connector-c-3.3.8-src/include/mysql/plugin_auth_common.h 2023-11-01 11:28:04.000000000 +0100
+++ new/mariadb-connector-c-3.3.10-src/include/mysql/plugin_auth_common.h 1970-01-01 01:00:00.000000000 +0100
@@ -1,110 +0,0 @@
-/* Copyright (C) 2010 Sergei Golubchik and Monty Program Ab
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Library General Public
- License as published by the Free Software Foundation; either
- version 2 of the License, or (at your option) any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Library General Public License for more details.
-
- You should have received a copy of the GNU Library General Public
- License along with this library; if not, write to the Free
- Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
- MA 02111-1301, USA */
-
-
-#ifndef MYSQL_PLUGIN_AUTH_COMMON_INCLUDED
-/**
- @file
-
- This file defines constants and data structures that are the same for
- both client- and server-side authentication plugins.
-*/
-#define MYSQL_PLUGIN_AUTH_COMMON_INCLUDED
-
-/** the max allowed length for a user name */
-#define MYSQL_USERNAME_LENGTH 512
-
-/**
- return values of the plugin authenticate_user() method.
-*/
-
-/**
- Authentication failed. Additionally, all other CR_xxx values
- (libmariadb error code) can be used too.
-
- The client plugin may set the error code and the error message directly
- in the MYSQL structure and return CR_ERROR. If a CR_xxx specific error
- code was returned, an error message in the MYSQL structure will be
- overwritten. If CR_ERROR is returned without setting the error in MYSQL,
- CR_UNKNOWN_ERROR will be user.
-*/
-#define CR_ERROR 0
-/**
- Authentication (client part) was successful. It does not mean that the
- authentication as a whole was successful, usually it only means
- that the client was able to send the user name and the password to the
- server. If CR_OK is returned, the libmariadb reads the next packet expecting
- it to be one of OK, ERROR, or CHANGE_PLUGIN packets.
-*/
-#define CR_OK -1
-/**
- Authentication was successful.
- It means that the client has done its part successfully and also that
- a plugin has read the last packet (one of OK, ERROR, CHANGE_PLUGIN).
- In this case, libmariadb will not read a packet from the server,
- but it will use the data at mysql->net.read_pos.
-
- A plugin may return this value if the number of roundtrips in the
- authentication protocol is not known in advance, and the client plugin
- needs to read one packet more to determine if the authentication is finished
- or not.
-*/
-#define CR_OK_HANDSHAKE_COMPLETE -2
-
-typedef struct st_plugin_vio_info
-{
- enum { MYSQL_VIO_INVALID, MYSQL_VIO_TCP, MYSQL_VIO_SOCKET,
- MYSQL_VIO_PIPE, MYSQL_VIO_MEMORY } protocol;
-#ifndef _WIN32
- int socket; /**< it's set, if the protocol is SOCKET or TCP */
-#else
- SOCKET socket; /**< it's set, if the protocol is SOCKET or TCP */
- HANDLE handle; /**< it's set, if the protocol is PIPE or MEMORY */
-#endif
-} MYSQL_PLUGIN_VIO_INFO;
-
-/**
- Provides plugin access to communication channel
-*/
-typedef struct st_plugin_vio
-{
- /**
- Plugin provides a pointer reference and this function sets it to the
- contents of any incoming packet. Returns the packet length, or -1 if
- the plugin should terminate.
- */
- int (*read_packet)(struct st_plugin_vio *vio,
- unsigned char **buf);
-
- /**
- Plugin provides a buffer with data and the length and this
- function sends it as a packet. Returns 0 on success, 1 on failure.
- */
- int (*write_packet)(struct st_plugin_vio *vio,
- const unsigned char *packet,
- int packet_len);
-
- /**
- Fills in a st_plugin_vio_info structure, providing the information
- about the connection.
- */
- void (*info)(struct st_plugin_vio *vio, struct st_plugin_vio_info *info);
-
-} MYSQL_PLUGIN_VIO;
-
-#endif
-
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mariadb-connector-c-3.3.8-src/libmariadb/ma_default.c new/mariadb-connector-c-3.3.10-src/libmariadb/ma_default.c
--- old/mariadb-connector-c-3.3.8-src/libmariadb/ma_default.c 2023-11-01 11:28:04.000000000 +0100
+++ new/mariadb-connector-c-3.3.10-src/libmariadb/ma_default.c 2024-05-10 10:26:44.000000000 +0200
@@ -135,6 +135,7 @@
end:
return configuration_dirs;
error:
+ release_configuration_dirs();
return NULL;
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mariadb-connector-c-3.3.8-src/libmariadb/ma_errmsg.c new/mariadb-connector-c-3.3.10-src/libmariadb/ma_errmsg.c
--- old/mariadb-connector-c-3.3.8-src/libmariadb/ma_errmsg.c 2023-11-01 11:28:04.000000000 +0100
+++ new/mariadb-connector-c-3.3.10-src/libmariadb/ma_errmsg.c 2024-05-10 10:26:44.000000000 +0200
@@ -53,7 +53,7 @@
/* 2023 */ "",
/* 2024 */ "",
/* 2025 */ "",
-/* 2026 */ "TLS/SSL error: %-.100s",
+/* 2026 */ "TLS/SSL error: %s",
/* 2027 */ "Received malformed packet",
/* 2028 */ "",
/* 2029 */ "",
@@ -118,6 +118,7 @@
/* 5021 */ "Binary log error (File: %.*s start_pos=%ld): %s.",
/* 5022 */ "File '%s' is not a binary log file",
/* 5023 */ "Semi sync request error: %s",
+ /* 5024 */ "Invalid client flags (%lu) specified. Supported flags: %lu",
""
};
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mariadb-connector-c-3.3.8-src/libmariadb/mariadb_async.c new/mariadb-connector-c-3.3.10-src/libmariadb/mariadb_async.c
--- old/mariadb-connector-c-3.3.8-src/libmariadb/mariadb_async.c 2023-11-01 11:28:04.000000000 +0100
+++ new/mariadb-connector-c-3.3.10-src/libmariadb/mariadb_async.c 2024-05-10 10:26:44.000000000 +0200
@@ -140,7 +140,7 @@
{
int ssl_err;
b->events_to_wait_for= 0;
- if (res >= 0)
+ if (res > 0)
return 1;
ssl_err= SSL_get_error(ssl, res);
if (ssl_err == SSL_ERROR_WANT_READ)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mariadb-connector-c-3.3.8-src/libmariadb/mariadb_lib.c new/mariadb-connector-c-3.3.10-src/libmariadb/mariadb_lib.c
--- old/mariadb-connector-c-3.3.8-src/libmariadb/mariadb_lib.c 2023-11-01 11:28:04.000000000 +0100
+++ new/mariadb-connector-c-3.3.10-src/libmariadb/mariadb_lib.c 2024-05-10 10:26:44.000000000 +0200
@@ -241,18 +241,29 @@
}
goto restart;
}
- net->last_errno= last_errno;
- if (pos[0]== '#')
+ if (IS_MYSQL_ERROR(last_errno) || IS_MARIADB_ERROR(last_errno))
{
- ma_strmake(net->sqlstate, pos+1, SQLSTATE_LENGTH);
- pos+= SQLSTATE_LENGTH + 1;
+ /* The server appears to have sent an error code within the
+ * range(s) of error codes that should only be generated
+ * client-side.
+ */
+ my_set_error(mysql, CR_MALFORMED_PACKET, SQLSTATE_UNKNOWN, 0);
}
else
{
- strncpy(net->sqlstate, SQLSTATE_UNKNOWN, SQLSTATE_LENGTH);
+ net->last_errno= last_errno;
+ if (pos[0]== '#')
+ {
+ ma_strmake(net->sqlstate, pos+1, SQLSTATE_LENGTH);
+ pos+= SQLSTATE_LENGTH + 1;
+ }
+ else
+ {
+ strncpy(net->sqlstate, SQLSTATE_UNKNOWN, SQLSTATE_LENGTH);
+ }
+ ma_strmake(net->last_error,(char*) pos,
+ min(len,sizeof(net->last_error)-1));
}
- ma_strmake(net->last_error,(char*) pos,
- min(len,sizeof(net->last_error)-1));
}
else
{
@@ -699,6 +710,7 @@
{{MARIADB_OPT_TLS_PASSPHRASE}, MARIADB_OPTION_STR, "tls-passphrase"},
{{MYSQL_OPT_SSL_ENFORCE}, MARIADB_OPTION_BOOL, "tls-enforce"},
{{MYSQL_OPT_SSL_VERIFY_SERVER_CERT}, MARIADB_OPTION_BOOL,"tls-verify-peer"},
+ {{MARIADB_OPT_RESTRICTED_AUTH}, MARIADB_OPTION_STR, "restricted-auth"},
{{0}, 0, NULL}
};
@@ -1422,6 +1434,14 @@
char *connection_handler= (mysql->options.extension) ?
mysql->options.extension->connection_handler : 0;
+ if ((client_flag & CLIENT_ALLOWED_FLAGS) != client_flag)
+ {
+ my_set_error(mysql, CR_INVALID_CLIENT_FLAG, SQLSTATE_UNKNOWN,
+ ER(CR_INVALID_CLIENT_FLAG),
+ client_flag, CLIENT_ALLOWED_FLAGS);
+ return NULL;
+ }
+
if (!mysql->methods)
mysql->methods= &MARIADB_DEFAULT_METHODS;
@@ -1787,11 +1807,24 @@
*/
if ((pkt_length=ma_net_safe_read(mysql)) == packet_error)
{
- if (mysql->net.last_errno == CR_SERVER_LOST)
+
+ unsigned int code= mysql->net.last_errno;
+ if (code == CR_SERVER_LOST)
my_set_error(mysql, CR_SERVER_LOST, SQLSTATE_UNKNOWN,
ER(CR_SERVER_LOST_EXTENDED),
"handshake: reading initial communication packet",
errno);
+ else if (IS_MYSQL_ERROR(code) || IS_MARIADB_ERROR(code))
+ ; /* not forged - generated on the client side */
+ else if (mysql->options.use_ssl)
+ {
+ char last_error[sizeof(mysql->net.last_error)];
+ strcpy(last_error, mysql->net.last_error);
+ my_set_error(mysql, CR_CONNECTION_ERROR, SQLSTATE_UNKNOWN,
+ "Received error packet before completion of TLS handshake. "
+ "The authenticity of the following error cannot be verified: %d - %s",
+ code, last_error);
+ }
goto error;
}
@@ -1803,17 +1836,6 @@
mysql->protocol_version= end[0];
end++;
- /* Check if server sends an error */
- if (mysql->protocol_version == 0XFF)
- {
- net_get_error(end, pkt_length - 1, net->last_error, sizeof(net->last_error),
- &net->last_errno, net->sqlstate);
- /* fix for bug #26426 */
- if (net->last_errno == 1040)
- memcpy(net->sqlstate, "08004", SQLSTATE_LENGTH);
- goto error;
- }
-
if (mysql->protocol_version < PROTOCOL_VERSION)
{
net->last_errno= CR_VERSION_ERROR;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mariadb-connector-c-3.3.8-src/libmariadb/secure/openssl.c new/mariadb-connector-c-3.3.10-src/libmariadb/secure/openssl.c
--- old/mariadb-connector-c-3.3.8-src/libmariadb/secure/openssl.c 2023-11-01 11:28:04.000000000 +0100
+++ new/mariadb-connector-c-3.3.10-src/libmariadb/secure/openssl.c 2024-05-10 10:26:44.000000000 +0200
@@ -533,7 +533,7 @@
{
int ssl_err;
b->events_to_wait_for= 0;
- if (res >= 0)
+ if (res > 0)
return 1;
ssl_err= SSL_get_error(ssl, res);
if (ssl_err == SSL_ERROR_WANT_READ)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mariadb-connector-c-3.3.8-src/plugins/io/remote_io.c new/mariadb-connector-c-3.3.10-src/plugins/io/remote_io.c
--- old/mariadb-connector-c-3.3.8-src/plugins/io/remote_io.c 2023-11-01 11:28:04.000000000 +0100
+++ new/mariadb-connector-c-3.3.10-src/plugins/io/remote_io.c 2024-05-10 10:26:44.000000000 +0200
@@ -279,11 +279,11 @@
MA_REMOTE_FILE *rf;
(void)operation;
- if (!(file = (MA_FILE *)calloc(sizeof(MA_FILE), 1)))
+ if (!(file = (MA_FILE *)calloc(1, sizeof(MA_FILE))))
return NULL;
file->type= MA_FILE_REMOTE;
- if (!(file->ptr= rf= (MA_REMOTE_FILE *)calloc(sizeof(MA_REMOTE_FILE), 1)))
+ if (!(file->ptr= rf= (MA_REMOTE_FILE *)calloc(1, sizeof(MA_REMOTE_FILE))))
{
free(file);
return NULL;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mariadb-connector-c-3.3.8-src/plugins/pvio/pvio_npipe.c new/mariadb-connector-c-3.3.10-src/plugins/pvio/pvio_npipe.c
--- old/mariadb-connector-c-3.3.8-src/plugins/pvio/pvio_npipe.c 2023-11-01 11:28:04.000000000 +0100
+++ new/mariadb-connector-c-3.3.10-src/plugins/pvio/pvio_npipe.c 2024-05-10 10:26:44.000000000 +0200
@@ -150,19 +150,38 @@
return GetOverlappedResult(file, ov, size, FALSE);
}
+/*
+ Disable posting IO completion event to the port.
+ Handle can be bound to IOCP outside of the connector for other purposes
+ (e.g polling functionality)
+*/
+
+static inline void disable_iocp_notification(HANDLE *h)
+{
+ *h= (HANDLE) ((ULONG_PTR) *h | 1);
+}
+
+static inline void enable_iocp_notification(HANDLE *h)
+{
+ *h= (HANDLE) ((ULONG_PTR) *h & ~1);
+}
+
ssize_t pvio_npipe_read(MARIADB_PVIO *pvio, uchar *buffer, size_t length)
{
BOOL ret;
ssize_t r= -1;
struct st_pvio_npipe *cpipe= NULL;
DWORD size;
+ HANDLE *h;
if (!pvio || !pvio->data)
return -1;
cpipe= (struct st_pvio_npipe *)pvio->data;
-
+ h= &cpipe->overlapped.hEvent;
+ disable_iocp_notification(h);
ret= ReadFile(cpipe->pipe, buffer, (DWORD)length, NULL, &cpipe->overlapped);
+ enable_iocp_notification(h);
ret= complete_io(cpipe->pipe, &cpipe->overlapped, ret, pvio->timeout[PVIO_READ_TIMEOUT], &size);
r= ret? (ssize_t) size:-1;
@@ -175,13 +194,15 @@
struct st_pvio_npipe *cpipe= NULL;
BOOL ret;
DWORD size;
-
+ HANDLE *h;
if (!pvio || !pvio->data)
return -1;
cpipe= (struct st_pvio_npipe *)pvio->data;
-
+ h= &cpipe->overlapped.hEvent;
+ disable_iocp_notification(h);
ret= WriteFile(cpipe->pipe, buffer, (DWORD)length, NULL , &cpipe->overlapped);
+ enable_iocp_notification(h);
ret= complete_io(cpipe->pipe, &cpipe->overlapped, ret, pvio->timeout[PVIO_WRITE_TIMEOUT], &size);
r= ret ? (ssize_t)size : -1;
return r;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mariadb-connector-c-3.3.8-src/plugins/pvio/pvio_socket.c new/mariadb-connector-c-3.3.10-src/plugins/pvio/pvio_socket.c
--- old/mariadb-connector-c-3.3.8-src/plugins/pvio/pvio_socket.c 2023-11-01 11:28:04.000000000 +0100
+++ new/mariadb-connector-c-3.3.10-src/plugins/pvio/pvio_socket.c 2024-05-10 10:26:44.000000000 +0200
@@ -39,7 +39,7 @@
#include <sys/un.h>
#endif
#ifdef HAVE_POLL
-#include <sys/poll.h>
+#include <poll.h>
#endif
#ifdef HAVE_SYS_IOCTL_H
#include <sys/ioctl.h>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mariadb-connector-c-3.3.8-src/plugins/trace/trace_example.c new/mariadb-connector-c-3.3.10-src/plugins/trace/trace_example.c
--- old/mariadb-connector-c-3.3.8-src/plugins/trace/trace_example.c 2023-11-01 11:28:04.000000000 +0100
+++ new/mariadb-connector-c-3.3.10-src/plugins/trace/trace_example.c 2024-05-10 10:26:44.000000000 +0200
@@ -132,7 +132,7 @@
info= (TRACE_INFO *)info->next;
}
- if (!(info= (TRACE_INFO *)calloc(sizeof(TRACE_INFO), 1)))
+ if (!(info= (TRACE_INFO *)calloc(1, sizeof(TRACE_INFO))))
return NULL;
info->thread_id= thread_id;
info->next= trace_info;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mariadb-connector-c-3.3.8-src/unittest/libmariadb/bulk1.c new/mariadb-connector-c-3.3.10-src/unittest/libmariadb/bulk1.c
--- old/mariadb-connector-c-3.3.8-src/unittest/libmariadb/bulk1.c 2023-11-01 11:28:04.000000000 +0100
+++ new/mariadb-connector-c-3.3.10-src/unittest/libmariadb/bulk1.c 2024-05-10 10:26:44.000000000 +0200
@@ -74,8 +74,8 @@
/* allocate memory */
buffer= calloc(TEST_ARRAY_SIZE, sizeof(char *));
- lengths= (unsigned long *)calloc(sizeof(long), TEST_ARRAY_SIZE);
- vals= (unsigned int *)calloc(sizeof(int), TEST_ARRAY_SIZE);
+ lengths= calloc(TEST_ARRAY_SIZE, sizeof *lengths);
+ vals= calloc(TEST_ARRAY_SIZE, sizeof *vals);
for (i=0; i < TEST_ARRAY_SIZE; i++)
{
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mariadb-connector-c-3.3.8-src/unittest/libmariadb/charset.c new/mariadb-connector-c-3.3.10-src/unittest/libmariadb/charset.c
--- old/mariadb-connector-c-3.3.8-src/unittest/libmariadb/charset.c 2023-11-01 11:28:04.000000000 +0100
+++ new/mariadb-connector-c-3.3.10-src/unittest/libmariadb/charset.c 2024-05-10 10:26:44.000000000 +0200
@@ -47,6 +47,9 @@
MYSQL_RES *res;
MYSQL_ROW row;
+ /* MXS-4898: MaxScale sends utf8mb4 in handshake OK packet */
+ SKIP_MAXSCALE;
+
len= mysql_real_escape_string(mysql, out, TEST_BUG8378_IN, 4);
FAIL_IF(memcmp(out, TEST_BUG8378_OUT, len), "wrong result");
@@ -791,6 +794,10 @@
MYSQL_ROW row;
int found= 0;
int mdev27266= 0;
+ int unsupported[]= {
+ 579, /* utf8mb3_general1400_as_ci added in 11.5 */
+ 611, /* utf8mb4_general1400_as_ci added in 11.5 */
+ 0};
SKIP_MYSQL(mysql);
@@ -836,8 +843,11 @@
id= atoi(row[0]);
if (!mariadb_get_charset_by_nr(id))
{
- diag("%04d %s %s", id, row[1], row[2]);
+ int j=0;
found++;
+ for (j=0; unsupported[j]; j++)
+ if (unsupported[j] == id)
+ found--;
}
}
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mariadb-connector-c-3.3.8-src/unittest/libmariadb/connection.c new/mariadb-connector-c-3.3.10-src/unittest/libmariadb/connection.c
--- old/mariadb-connector-c-3.3.8-src/unittest/libmariadb/connection.c 2023-11-01 11:28:04.000000000 +0100
+++ new/mariadb-connector-c-3.3.10-src/unittest/libmariadb/connection.c 2024-05-10 10:26:44.000000000 +0200
@@ -1222,6 +1222,9 @@
int rc;
FILE *fp;
+ /* MXS-4898: MaxScale sends utf8mb4 in handshake OK packet */
+ SKIP_MAXSCALE;
+
if (!(fp= fopen("./mdev13100.cnf", "w")))
return FAIL;
@@ -1240,6 +1243,7 @@
diag("Error: %s", mysql_error(mysql));
return FAIL;
}
+ diag("Default charset: %s", mysql_character_set_name(mysql));
FAIL_IF(strcmp("latin2", mysql_character_set_name(mysql)), "Expected charset latin2");
mysql_close(mysql);
@@ -2190,6 +2194,7 @@
{
MARIADB_CONST_STRING *str= va_arg(ap, MARIADB_CONST_STRING *);
strncpy(data->database, str->str, str->length);
+ data->database[str->length]= 0;
}
break;
case SESSION_TRACK_SYSTEM_VARIABLES:
@@ -2200,6 +2205,7 @@
if (!strncmp(key->str, "character_set_client", key->length))
{
strncpy(data->charset, val->str, val->length);
+ data->charset[val->length]= 0;
}
}
break;
@@ -2301,7 +2307,33 @@
return OK;
}
+static int test_conc505(MYSQL *my __attribute__((unused)))
+{
+ MYSQL *mysql= mysql_init(NULL);
+
+#define CLIENT_DEPRECATE_EOF (1ULL << 24)
+
+ if (my_test_connect(mysql, hostname, username, password, schema, port, socketname, CLIENT_DEPRECATE_EOF))
+ {
+ diag("Error expected: Invalid client flag");
+ mysql_close(mysql);
+ return FAIL;
+ }
+ diag("Error (expected): %s", mysql_error(mysql));
+ FAIL_IF(mysql_errno(mysql) != CR_INVALID_CLIENT_FLAG, "Wrong error number");
+ if (!my_test_connect(mysql, hostname, username, password, schema, port, socketname, CLIENT_MULTI_STATEMENTS | CLIENT_MULTI_RESULTS))
+ {
+ diag("Error: %s", mysql_error(mysql));
+ mysql_close(mysql);
+ return FAIL;
+ }
+
+ mysql_close(mysql);
+ return OK;
+}
+
struct my_tests_st my_tests[] = {
+ {"test_conc505", test_conc505, TEST_CONNECTION_NONE, 0, NULL, NULL},
{"test_conc632", test_conc632, TEST_CONNECTION_NONE, 0, NULL, NULL},
{"test_status_callback", test_status_callback, TEST_CONNECTION_NONE, 0, NULL, NULL},
{"test_conc365", test_conc365, TEST_CONNECTION_NONE, 0, NULL, NULL},
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mariadb-connector-c-3.3.8-src/unittest/libmariadb/ps_bugs.c new/mariadb-connector-c-3.3.10-src/unittest/libmariadb/ps_bugs.c
--- old/mariadb-connector-c-3.3.8-src/unittest/libmariadb/ps_bugs.c 2023-11-01 11:28:04.000000000 +0100
+++ new/mariadb-connector-c-3.3.10-src/unittest/libmariadb/ps_bugs.c 2024-05-10 10:26:44.000000000 +0200
@@ -3257,7 +3257,7 @@
static int test_mem_overun(MYSQL *mysql)
{
- char buffer[10000], field[12];
+ char buffer[10000], field[20];
MYSQL_STMT *stmt;
MYSQL_RES *field_res, *res;
int rc, i, length;
@@ -5159,7 +5159,7 @@
MYSQL_STMT *stmt= mysql_stmt_init(mysql);
MYSQL_BIND* bind;
- bind = calloc(sizeof(MYSQL_BIND), 65535);
+ bind = calloc(65535, sizeof *bind);
rc= mysql_query(mysql, "DROP TABLE IF EXISTS t1");
check_mysql_rc(rc, mysql);
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package ghostscript for openSUSE:Factory checked in at 2024-07-03 20:28:11
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ghostscript (Old)
and /work/SRC/openSUSE:Factory/.ghostscript.new.18349 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ghostscript"
Wed Jul 3 20:28:11 2024 rev:67 rq:1184313 version:10.03.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/ghostscript/ghostscript.changes 2024-03-26 19:29:26.813761651 +0100
+++ /work/SRC/openSUSE:Factory/.ghostscript.new.18349/ghostscript.changes 2024-07-03 20:29:25.351137486 +0200
@@ -1,0 +2,23 @@
+Mon Jul 1 11:56:34 UTC 2024 - Johannes Meixner <jsmeix(a)suse.com>
+
+- Version upgrade to 10.03.1:
+ Highlights in this release include:
+ See 'Recent Changes in Ghostscript' at Ghostscript upstream
+ https://ghostscript.readthedocs.io/en/gs10.03.1/News.html
+ * Fixes for CVE-2024-33869, CVE-2023-52722, CVE-2024-33870,
+ CVE-2024-33871 and CVE-2024-29510
+- Regarding CVE-2024-33869 see bsc#1226946 and
+ https://cgit.ghostscript.com/cgi-bin/cgit.cgi/ghostpdl.git/commit/?id=5ae2e…
+ https://cgit.ghostscript.com/cgi-bin/cgit.cgi/ghostpdl.git/commit/?id=f5336…
+ https://bugs.ghostscript.com/show_bug.cgi?id=707691
+- Regarding CVE-2023-52722 see bsc#1223852 and
+ https://cgit.ghostscript.com/cgi-bin/cgit.cgi/ghostpdl.git/commit/?id=afd71…
+- Regarding CVE-2024-33870 see bsc#1226944 and
+ https://cgit.ghostscript.com/cgi-bin/cgit.cgi/ghostpdl.git/commit/?id=79aef…
+ https://bugs.ghostscript.com/show_bug.cgi?id=707686
+- Regarding CVE-2024-33871 see bsc#1225491 and
+ https://cgit.ghostscript.com/cgi-bin/cgit.cgi/ghostpdl.git/commit/?id=71458…
+- Regarding CVE-2024-29510 see bsc#1226945 and
+ https://cgit.ghostscript.com/cgi-bin/cgit.cgi/ghostpdl.git/commit/?id=3b173…
+
+-------------------------------------------------------------------
Old:
----
ghostscript-10.03.0.tar.xz
New:
----
ghostscript-10.03.1.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ ghostscript.spec ++++++
--- /var/tmp/diff_new_pack.h23HD1/_old 2024-07-03 20:29:26.503179651 +0200
+++ /var/tmp/diff_new_pack.h23HD1/_new 2024-07-03 20:29:26.507179798 +0200
@@ -24,13 +24,19 @@
%bcond_without apparmor
%endif
Name: ghostscript%{psuffix}
-Version: 10.03.0
+Version: 10.03.1
Release: 0
Summary: The Ghostscript interpreter for PostScript and PDF
License: AGPL-3.0-only
Group: Productivity/Office/Other
URL: https://www.ghostscript.com/
-Source0: https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs1…
+# How to manually get Source0:
+# Go to https://www.ghostscript.com
+# -> "The current Ghostscript release 10.03.1 can be downloaded here" https://www.ghostscript.com/releases/index.html
+# -> "Ghostscript" https://www.ghostscript.com/releases/gsdnld.html
+# -> "Ghostscript 10.03.1 Source for all platforms / GNU Affero General Public License" = "Ghostscript AGPL Release"
+# https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs1…
+Source0: https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs1…
Source10: apparmor_ghostscript
# Patch0...Patch9 is for patches from upstream:
# Source10...Source99 is for sources from SUSE which are intended for upstream:
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package libtraceevent for openSUSE:Factory checked in at 2024-07-03 20:26:36
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libtraceevent (Old)
and /work/SRC/openSUSE:Factory/.libtraceevent.new.18349 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libtraceevent"
Wed Jul 3 20:26:36 2024 rev:13 rq:1184269 version:1.8.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/libtraceevent/libtraceevent.changes 2023-06-21 22:37:23.341479225 +0200
+++ /work/SRC/openSUSE:Factory/.libtraceevent.new.18349/libtraceevent.changes 2024-07-03 20:28:48.169776637 +0200
@@ -1,0 +2,52 @@
+Mon Jun 17 12:55:41 UTC 2024 - Daniel Wagner <daniel.wagner(a)suse.com>
+
+- Update to 1.8.2
+ * New APIs:
+ - tep_record_is_event() - A helper function that basically converts
+ int type= tep_data_type(event->tep, record);
+ if (event->id == type) {
+ /* do something */
+ }
+ into:
+ if (tep_record_is_event(record, event)) {
+ /* do something */
+ }
+ - tep_get_sub_buffer_commit_offset() - Add a function to return the
+ offset of where the "commit" is located on the subbuffer
+ so that the application can do its own direct reading of it.
+ - kbuffer_read_buffer() - Add the functionality to the kbuffer to
+ act like the read syscall of the ring buffer. That is, it
+ will load the passed in buffer with the events where the
+ kbuffer left off, and that passed in buffer can be loaded
+ into another kbuffer via kbuffer_load_subbuffer().
+ - kbuffer_dup() - Create a new kbuffer with the same fields of an
+ existing kbuffer. This will allow traversing a subbuffer
+ without modifying the contents of another kbuffer that
+ points to the subbuffer.
+ - kbuffer_subbuffer() - Return the subbuffer that was loaded into
+ a kbuffer via kbuffer_load_subbuffer().
+ - kbuffer_refresh() - In the case of the subbuffer that was loaded
+ into a kbuffer via kbuffer_load_subbuffer() that is still
+ active, this function will refresh the meta data to continue
+ reading events if more were written to it.
+ - Added tep_get_sub_buffer_data_size() helper function
+ * Updates:
+ - Add option to disable building documents for some environments
+ that do not have everything needed to build the documents to
+ not fail the build with meson.
+ - Bump meson version required to build to 0.58.0 as plugins use
+ str.replace that was introduced in that version.
+ - Have the sched_switch plugin parse the format field to figure out
+ what the correct mapping of the "prev_state" field is to produce
+ the proper string output.
+ * Fixes:
+ - Update the default sched_switch "prev_state" string array to match
+ what's been in the kernel for a while now.
+ - Fix tep_kbuffer() to fill in the long_size, otherwise it would default
+ to 32 bit longs and cause a lot of confusion to application developers
+ - Fix tep_kbuffer man page info
+ - Fix some meson dependency issues
+ - Fix kbuffer_read_buffer() timestamp being off in some cases
+ - Fix curr size in kbuffer_refresh()
+
+-------------------------------------------------------------------
Old:
----
libtraceevent-1.7.3.tar.gz
New:
----
libtraceevent-1.8.2.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ libtraceevent.spec ++++++
--- /var/tmp/diff_new_pack.GHWPlV/_old 2024-07-03 20:28:48.881802697 +0200
+++ /var/tmp/diff_new_pack.GHWPlV/_new 2024-07-03 20:28:48.885802844 +0200
@@ -1,7 +1,7 @@
#
# spec file for package libtraceevent
#
-# 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
@@ -22,7 +22,7 @@
%define sodname %{dname}%{sonum}
Name: libtraceevent
-Version: 1.7.3
+Version: 1.8.2
Release: 0
Summary: Linux kernel trace event library
License: GPL-2.0-only AND LGPL-2.1-only
++++++ libtraceevent-1.7.3.tar.gz -> libtraceevent-1.8.2.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libtraceevent-1.7.3/Documentation/libtraceevent-event_find.txt new/libtraceevent-1.8.2/Documentation/libtraceevent-event_find.txt
--- old/libtraceevent-1.7.3/Documentation/libtraceevent-event_find.txt 2023-06-07 21:49:02.000000000 +0200
+++ new/libtraceevent-1.8.2/Documentation/libtraceevent-event_find.txt 2024-01-09 03:32:09.000000000 +0100
@@ -3,7 +3,7 @@
NAME
----
-tep_find_event,tep_find_event_by_name,tep_find_event_by_record -
+tep_find_event,tep_find_event_by_name,tep_find_event_by_record, tep_record_is_event -
Find events by given key.
SYNOPSIS
@@ -15,6 +15,7 @@
struct tep_event pass:[*]*tep_find_event*(struct tep_handle pass:[*]_tep_, int _id_);
struct tep_event pass:[*]*tep_find_event_by_name*(struct tep_handle pass:[*]_tep_, const char pass:[*]_sys_, const char pass:[*]_name_);
struct tep_event pass:[*]*tep_find_event_by_record*(struct tep_handle pass:[*]_tep_, struct tep_record pass:[*]_record_);
+bool *tep_record_is_event*(struct tep_record pass:[*]record, struct tep_event pass:[*]event);
--
DESCRIPTION
@@ -31,12 +32,16 @@
event _name_, under the system _sys_. If the _sys_ is NULL (not specified),
the first event with _name_ is returned.
-The tep_find_event_by_record()* function searches for an event from a given
+The *tep_find_event_by_record()* function searches for an event from a given
_record_.
+The *tep_record_is_event()* function tests if the given _record_ is of the type
+of the _event_. This is normally used to know if the _record_ being processed is
+of an _event_ where further processing should be done.
+
RETURN VALUE
------------
-All these functions return a pointer to the found event, or NULL if there is no
+All these functions except *tep_record_is_event()* return a pointer to the found event, or NULL if there is no
such event.
EXAMPLE
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libtraceevent-1.7.3/Documentation/libtraceevent-handle.txt new/libtraceevent-1.8.2/Documentation/libtraceevent-handle.txt
--- old/libtraceevent-1.7.3/Documentation/libtraceevent-handle.txt 2023-06-07 21:49:02.000000000 +0200
+++ new/libtraceevent-1.8.2/Documentation/libtraceevent-handle.txt 2024-01-09 03:32:09.000000000 +0100
@@ -17,6 +17,7 @@
void *tep_ref*(struct tep_handle pass:[*]_tep_);
void *tep_unref*(struct tep_handle pass:[*]_tep_);
int *tep_get_ref*(struct tep_handle pass:[*]_tep_);
+struct kbuffer pass:[*]*tep_kbuffer*(struct tep_handle pass:[*]_tep_);
--
DESCRIPTION
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libtraceevent-1.7.3/Documentation/libtraceevent-kbuffer-create.txt new/libtraceevent-1.8.2/Documentation/libtraceevent-kbuffer-create.txt
--- old/libtraceevent-1.7.3/Documentation/libtraceevent-kbuffer-create.txt 2023-06-07 21:49:02.000000000 +0200
+++ new/libtraceevent-1.8.2/Documentation/libtraceevent-kbuffer-create.txt 2024-01-09 03:32:09.000000000 +0100
@@ -3,7 +3,8 @@
NAME
----
-kbuffer_alloc, kbuffer_free, kbuffer_load_subbuffer, kbuffer_subbuffer_size, kbuffer_start_of_data - Creating of kbuffer element to parse
+kbuffer_alloc, kbuffer_dup, kbuffer_free, kbuffer_load_subbuffer, kbuffer_subbuffer,
+kbuffer_refresh, kbuffer_subbuffer_size, kbuffer_start_of_data - Creating of kbuffer element to parse
the Linux kernel tracing ring buffer
SYNOPSIS
@@ -28,10 +29,13 @@
struct tep_handle;
struct kbuffer pass:[*]*kbuffer_alloc*(enum kbuffer_long_size _size_, enum kbuffer_endian _endian_);
+struct kbuffer pass:[*]*kbuffer_dup*(struct kbuffer pass:[*]_kbuf_);
void *kbuffer_free*(struct kbuffer pass:[*]_kbuf_);
int *kbuffer_load_subbuffer*(struct kbuffer pass:[*]_kbuf_, void pass:[*]_subbuffer_);
-int *kbuffer_subbuffer_size*(struct kbuffer pass:[*]_kbuf);
+int *kbuffer_subbuffer_size*(struct kbuffer pass:[*]_kbuf_);
+int *kbuffer_refresh*(struct kbuffer pass:[*]_kbuf_);
int *kbuffer_start_of_data*(struct kbuffer pass:[*]_kbuf_);
+void pass:[*]*kbuffer_subbuffer*(struct kbuffer pass:[*]_kbuf);
--
DESCRIPTION
@@ -59,6 +63,11 @@
in it, it will be set to 8 byte long size and not 4 byte. This is because the
ring buffer long size is dependent on the kernel and not user space.
+The *kbuffer_dup()* function will duplicate an existing kbuffer structure with
+an allocated new one. It will have all the properties of the passed in _kbuf_,
+including pointing to the same subbuffer that was loaded in the _kbuf_.
+It must be freed with *kbuffer_free()*.
+
The *kbuffer_free()* function will free the resources created by *kbuffer_alloc()*.
The *kbuffer_load_subbuffer()* will take a _subbuffer_ which is a raw data blob
@@ -70,9 +79,20 @@
The *kbuffer_subbuffer_size()* returns the location of the end of the last event
on the sub-buffer. It does not return the size of the sub-buffer itself.
+The *kbuffer_refresh()* is to be used if more writes were done on the loaded kbuffer
+where the size of the kbuffer needs to be refreshed to be able to read the new
+events that were written since the last *kbuffer_load_subbuffer()* was called on it.
+
+Note, no memory barriers are implemented with this function and any synchronization
+with the writer is the responsibility of the application.
+
The *kbuffer_start_of_data()* function returns the offset of where the actual
data load of the sub-buffer begins.
+The *kbuffer_subbuffer()* function returns the pointer to the currently loaded
+subbuffer. That is, the last subbuffer that was loaded by *kbuffer_load_subbuffer()*.
+If no subbuffer was loaded NULL is returned.
+
RETURN VALUE
------------
*kbuffer_alloc()* returns an allocated kbuffer descriptor or NULL on error.
@@ -86,6 +106,12 @@
*kbuffer_start_of_data()* returns the offset of where the data begins on the
sub-buffer loaded in _kbuf_.
+*kbuffer_subbuffer()* returns the last loaded subbuffer to _kbuf_ that was loaded
+by *kbuffer_load_subbuffer()* or NULL if none was loaded.
+
+*kbuffer_refresh()* returns 0 on success and -1 if _kbuf_ is NULL or it does not
+have a subbuffer loaded via *kbuffer_load_subbuffer()*.
+
EXAMPLE
-------
[source,c]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libtraceevent-1.7.3/Documentation/libtraceevent-kbuffer-read.txt new/libtraceevent-1.8.2/Documentation/libtraceevent-kbuffer-read.txt
--- old/libtraceevent-1.7.3/Documentation/libtraceevent-kbuffer-read.txt 2023-06-07 21:49:02.000000000 +0200
+++ new/libtraceevent-1.8.2/Documentation/libtraceevent-kbuffer-read.txt 2024-01-09 03:32:09.000000000 +0100
@@ -4,7 +4,7 @@
NAME
----
kbuffer_read_event, kbuffer_next_event, kbuffer_missed_events, kbuffer_event_size, kbuffer_curr_size,
-kbuffer_curr_offset, kbuffer_curr_index -
+kbuffer_curr_offset, kbuffer_curr_index, kbuffer_read_buffer -
Functions to read through the kbuffer sub buffer.
SYNOPSIS
@@ -21,6 +21,7 @@
int *kbuffer_curr_size*(struct kbuffer pass:[*]_kbuf_);
int *kbuffer_curr_offset*(struct kbuffer pass:[*]_kbuf_);
int *kbuffer_curr_index*(struct kbuffer pass:[*]_kbuf_);
+int *kbuffer_read_buffer*(struct kbuffer pass:[*]_kbuf_, void pass:[*]_buffer_, int _len_);
--
DESCRIPTION
@@ -64,6 +65,18 @@
portion of the sub-buffer where the current evnet's meta data is located.
The first event will likely be zero, but may not be if there's a timestamp attached to it.
+The *kbuffer_read_buffer()* function will fill the given _buffer_ from the _kbuf_ the same
+way the kernel would do a read system call. That is, if the length _len_ is less than the
+sub buffer size, or the kbuffer current index is non-zero, it will start copying from the
+_kbuf_ current event and create _buffer_ as a new sub buffer (with a timestamp
+and commit header) with that event that was found and including all events after that can
+fit within _len_. The _len_ must include the size of the sub buffer header as well as the
+events to include. That is, _len_ is the allocate size of _buffer_ that can be filled.
+The return from this function is the index of the end of the last event that was added.
+If there are no more events then zero is returned, and if the buffer can not
+copy any events because _len_ was too small, then -1 is returned.
+
+
RETURN VALUE
------------
*kbuffer_read_event()* returns the event that the _kbuf_ descriptor is currently at,
@@ -92,6 +105,10 @@
*kbuf_curr_index()* returns the index of the current record from the beginning of the _kbuf_
data section.
+*kbuf_read_buffer()* returns the index of the end of the last event that was filled in
+_buffer_. If there are no more events to copy from _start_ then 0 is returned. If _len_
+is not big enough to hold any events, then -1 is returned.
+
EXAMPLE
-------
[source,c]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libtraceevent-1.7.3/Documentation/libtraceevent-page_size.txt new/libtraceevent-1.8.2/Documentation/libtraceevent-page_size.txt
--- old/libtraceevent-1.7.3/Documentation/libtraceevent-page_size.txt 2023-06-07 21:49:02.000000000 +0200
+++ new/libtraceevent-1.8.2/Documentation/libtraceevent-page_size.txt 2024-01-09 03:32:09.000000000 +0100
@@ -3,7 +3,7 @@
NAME
----
-tep_get_page_size, tep_set_page_size, tep_get_sub_buffer_size - Get / set the size of a memory page on
+tep_get_page_size, tep_set_page_size, tep_get_sub_buffer_data_size, tep_get_sub_buffer_size - Get / set the size of a memory page on
the machine, where the trace is generated
SYNOPSIS
@@ -15,6 +15,8 @@
int *tep_get_page_size*(struct tep_handle pass:[*]_tep_);
void *tep_set_page_size*(struct tep_handle pass:[*]_tep_, int _page_size_);
int *tep_get_sub_buffer_size*(struct tep_handle pass:[*]_tep_);
+int *tep_get_sub_buffer_data_size*(struct tep_handle pass:[*]_tep_);
+int *tep_get_sub_buffer_commit_offset*(struct tep_handle pass:[*]_tep_);
--
DESCRIPTION
@@ -32,6 +34,14 @@
ring buffer. The Linux kernel ring buffer is broken up into sections called
sub buffers. This returns the size of those buffers.
+The *tep_get_sub_buffer_data_size()* returns the size of just the data portion
+of the sub buffers.
+
+The *tep_get_sub_buffer_commit_offset()* returns the offset on the sub buffer
+that holds the committed portion of data. This number contains the index from
+the data portion of the sub buffer that is the end of the last element on the
+sub buffer.
+
RETURN VALUE
------------
The *tep_get_page_size()* function returns size of the memory page, in bytes.
@@ -39,6 +49,9 @@
The *tep_get_sub_buffer_size()* function returns the number of bytes each sub
buffer is made up of.
+The *tep_get_sub_buffer_commit_offset()* function returns the location on the
+sub buffer that contains the index of the last element.
+
EXAMPLE
-------
[source,c]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libtraceevent-1.7.3/Documentation/libtraceevent.txt new/libtraceevent-1.8.2/Documentation/libtraceevent.txt
--- old/libtraceevent-1.7.3/Documentation/libtraceevent.txt 2023-06-07 21:49:02.000000000 +0200
+++ new/libtraceevent-1.8.2/Documentation/libtraceevent.txt 2024-01-09 03:32:09.000000000 +0100
@@ -27,11 +27,13 @@
int *tep_get_page_size*(struct tep_handle pass:[*]_tep_);
void *tep_set_page_size*(struct tep_handle pass:[*]_tep_, int _page_size_);
int *tep_get_sub_buffer_size*(struct tep_handle pass:[*]_tep_);
+ int *tep_get_sub_buffer_data_size*(struct tep_handle pass:[*]_tep_);
+ int *tep_get_sub_buffer_commit_offset*(struct tep_handle pass:[*]_tep_);
int *tep_get_header_page_size*(struct tep_handle pass:[*]_tep_);
int *tep_get_header_timestamp_size*(struct tep_handle pass:[*]_tep_);
bool *tep_is_old_format*(struct tep_handle pass:[*]_tep_);
int *tep_strerror*(struct tep_handle pass:[*]_tep_, enum tep_errno _errnum_, char pass:[*]_buf_, size_t _buflen_);
- struct kbuffer pass:[*]*tep_kbuffer*(struct tep_handle pass:[*]:_tep_);
+ struct kbuffer pass:[*]*tep_kbuffer*(struct tep_handle pass:[*]_tep_);
Register / unregister APIs:
int *tep_register_function*(struct tep_handle pass:[*]_tep_, char pass:[*]_name_, unsigned long long _addr_, char pass:[*]_mod_);
@@ -83,6 +85,7 @@
struct tep_event pass:[*]*tep_find_event*(struct tep_handle pass:[*]_tep_, int _id_);
struct tep_event pass:[*]*tep_find_event_by_name*(struct tep_handle pass:[*]_tep_, const char pass:[*]_sys_, const char pass:[*]_name_);
struct tep_event pass:[*]*tep_find_event_by_record*(struct tep_handle pass:[*]_tep_, struct tep_record pass:[*]_record_);
+ bool *tep_record_is_event*(struct tep_record pass:[*]record, struct tep_event pass:[*]event);
Parsing of event files:
int *tep_parse_header_page*(struct tep_handle pass:[*]_tep_, char pass:[*]_buf_, unsigned long _size_, int _long_size_);
@@ -179,9 +182,12 @@
kbuffer parsing:
#include <kbuffer.h>
struct kbuffer pass:[*]*kbuffer_alloc*(enum kbuffer_long_size _size_, enum kbuffer_endian _endian_);
+ struct kbuffer pass:[*]*kbuffer_dup*(struct kbuffer pass:[*]_kbuf_);
void *kbuffer_free*(struct kbuffer pass:[*]_kbuf_);
int *kbuffer_load_subbuffer*(struct kbuffer pass:[*]_kbuf_, void pass:[*]_subbuffer_);
int *kbuffer_subbuffer_size*(struct kbuffer pass:[*]_kbuf);
+ void pass:[*]*kbuffer_subbuffer*(struct kbuffer pass:[*]_kbuf);
+ int *kbuffer_refresh*(struct kbuffer pass:[*]_kbuf_);
int *kbuffer_start_of_data*(struct kbuffer pass:[*]_kbuf_);
unsigned long long *kbuffer_timestamp*(struct kbuffer pass:[*]_kbuf_);
unsigned long long *kbuffer_subbuf_timestamp*(struct kbuffer pass:[*]_kbuf_, void pass:[*]_subbuf_);
@@ -193,6 +199,7 @@
int *kbuffer_curr_size*(struct kbuffer pass:[*]_kbuf_);
int *kbuffer_curr_offset*(struct kbuffer pass:[*]_kbuf_);
int *kbuffer_curr_index*(struct kbuffer pass:[*]_kbuf_);
+ int *kbuffer_read_buffer*(struct kbuffer pass:[*]_kbuf_, void pass:[*]_buffer_, int _start_, int _len_);
--
DESCRIPTION
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libtraceevent-1.7.3/Makefile new/libtraceevent-1.8.2/Makefile
--- old/libtraceevent-1.7.3/Makefile 2023-06-07 21:49:02.000000000 +0200
+++ new/libtraceevent-1.8.2/Makefile 2024-01-09 03:32:09.000000000 +0100
@@ -1,8 +1,8 @@
# SPDX-License-Identifier: GPL-2.0
# libtraceevent version
EP_VERSION = 1
-EP_PATCHLEVEL = 7
-EP_EXTRAVERSION = 3
+EP_PATCHLEVEL = 8
+EP_EXTRAVERSION = 2
EVENT_PARSE_VERSION = $(EP_VERSION).$(EP_PATCHLEVEL).$(EP_EXTRAVERSION)
MAKEFLAGS += --no-print-directory
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libtraceevent-1.7.3/include/traceevent/event-parse.h new/libtraceevent-1.8.2/include/traceevent/event-parse.h
--- old/libtraceevent-1.7.3/include/traceevent/event-parse.h 2023-06-07 21:49:02.000000000 +0200
+++ new/libtraceevent-1.8.2/include/traceevent/event-parse.h 2024-01-09 03:32:09.000000000 +0100
@@ -554,6 +554,8 @@
struct tep_cmdline *next);
int tep_cmdline_pid(struct tep_handle *tep, struct tep_cmdline *cmdline);
+bool tep_record_is_event(struct tep_record *record, struct tep_event *event);
+
void tep_print_field_content(struct trace_seq *s, void *data, int size,
struct tep_format_field *field);
void tep_record_print_fields(struct trace_seq *s,
@@ -586,6 +588,8 @@
void tep_set_long_size(struct tep_handle *tep, int long_size);
int tep_get_page_size(struct tep_handle *tep);
int tep_get_sub_buffer_size(struct tep_handle *tep);
+int tep_get_sub_buffer_data_size(struct tep_handle *tep);
+int tep_get_sub_buffer_commit_offset(struct tep_handle *tep);
void tep_set_page_size(struct tep_handle *tep, int _page_size);
bool tep_is_file_bigendian(struct tep_handle *tep);
void tep_set_file_bigendian(struct tep_handle *tep, enum tep_endian endian);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libtraceevent-1.7.3/include/traceevent/kbuffer.h new/libtraceevent-1.8.2/include/traceevent/kbuffer.h
--- old/libtraceevent-1.7.3/include/traceevent/kbuffer.h 2023-06-07 21:49:02.000000000 +0200
+++ new/libtraceevent-1.8.2/include/traceevent/kbuffer.h 2024-01-09 03:32:09.000000000 +0100
@@ -31,8 +31,10 @@
struct kbuffer;
struct kbuffer *kbuffer_alloc(enum kbuffer_long_size size, enum kbuffer_endian endian);
+struct kbuffer *kbuffer_dup(struct kbuffer *kbuf);
void kbuffer_free(struct kbuffer *kbuf);
int kbuffer_load_subbuffer(struct kbuffer *kbuf, void *subbuffer);
+int kbuffer_refresh(struct kbuffer *kbuf);
void *kbuffer_read_event(struct kbuffer *kbuf, unsigned long long *ts);
void *kbuffer_next_event(struct kbuffer *kbuf, unsigned long long *ts);
unsigned long long kbuffer_timestamp(struct kbuffer *kbuf);
@@ -42,6 +44,7 @@
void *kbuffer_translate_data(int swap, void *data, unsigned int *size);
void *kbuffer_read_at_offset(struct kbuffer *kbuf, int offset, unsigned long long *ts);
+int kbuffer_read_buffer(struct kbuffer *kbuf, void *buffer, int len);
int kbuffer_curr_index(struct kbuffer *kbuf);
@@ -50,6 +53,7 @@
int kbuffer_event_size(struct kbuffer *kbuf);
int kbuffer_missed_events(struct kbuffer *kbuf);
int kbuffer_subbuffer_size(struct kbuffer *kbuf);
+void *kbuffer_subbuffer(struct kbuffer *kbuf);
void kbuffer_set_old_format(struct kbuffer *kbuf);
int kbuffer_start_of_data(struct kbuffer *kbuf);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libtraceevent-1.7.3/meson.build new/libtraceevent-1.8.2/meson.build
--- old/libtraceevent-1.7.3/meson.build 2023-06-07 21:49:02.000000000 +0200
+++ new/libtraceevent-1.8.2/meson.build 2024-01-09 03:32:09.000000000 +0100
@@ -4,9 +4,9 @@
project(
'libtraceevent', ['c'],
- meson_version: '>= 0.50.0',
+ meson_version: '>= 0.58.0',
license: 'LGPL-2.1',
- version: '1.7.3',
+ version: '1.8.2',
default_options: [
'c_std=gnu99',
'buildtype=debug',
@@ -45,6 +45,8 @@
subdir('utest')
endif
subdir('samples')
+
+if get_option('doc')
subdir('Documentation')
custom_target(
@@ -52,3 +54,4 @@
output: 'docs',
depends: [html, man],
command: ['echo'])
+endif
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libtraceevent-1.7.3/meson_options.txt new/libtraceevent-1.8.2/meson_options.txt
--- old/libtraceevent-1.7.3/meson_options.txt 2023-06-07 21:49:02.000000000 +0200
+++ new/libtraceevent-1.8.2/meson_options.txt 2024-01-09 03:32:09.000000000 +0100
@@ -16,3 +16,5 @@
description : 'enable bold literals')
option('docbook-suppress-sp', type : 'boolean', value : false,
description : 'docbook suppress sp')
+option('doc', type : 'boolean', value: true,
+ description : 'produce documentation')
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libtraceevent-1.7.3/plugins/plugin_sched_switch.c new/libtraceevent-1.8.2/plugins/plugin_sched_switch.c
--- old/libtraceevent-1.7.3/plugins/plugin_sched_switch.c 2023-06-07 21:49:02.000000000 +0200
+++ new/libtraceevent-1.8.2/plugins/plugin_sched_switch.c 2024-01-09 03:32:09.000000000 +0100
@@ -9,13 +9,143 @@
#include "event-parse.h"
#include "trace-seq.h"
-static void write_state(struct trace_seq *s, int val)
+/*
+ * prev_state is of size long, which is 32 bits on 32 bit architectures.
+ * As it needs to have the same bits for both 32 bit and 64 bit architectures
+ * we can just assume that the flags we care about will all be within
+ * the 32 bits.
+ */
+#define MAX_STATE_BITS 32
+
+static const char *convert_sym(struct tep_print_flag_sym *sym)
{
- const char states[] = "SDTtZXxW";
+ static char save_states[MAX_STATE_BITS + 1];
+
+ memset(save_states, 0, sizeof(save_states));
+
+ /* This is the flags for the prev_state_field, now make them into a string */
+ for (; sym; sym = sym->next) {
+ long bitmask = strtoul(sym->value, NULL, 0);
+ int i;
+
+ for (i = 0; !(bitmask & 1); i++)
+ bitmask >>= 1;
+
+ if (i >= MAX_STATE_BITS)
+ continue;
+
+ save_states[i] = sym->str[0];
+ }
+
+ return save_states;
+}
+
+static struct tep_print_arg_field *
+find_arg_field(struct tep_format_field *prev_state_field, struct tep_print_arg *arg)
+{
+ struct tep_print_arg_field *field;
+
+ if (!arg)
+ return NULL;
+
+ if (arg->type == TEP_PRINT_FIELD)
+ return &arg->field;
+
+ if (arg->type == TEP_PRINT_OP) {
+ field = find_arg_field(prev_state_field, arg->op.left);
+ if (field && field->field == prev_state_field)
+ return field;
+ field = find_arg_field(prev_state_field, arg->op.right);
+ if (field && field->field == prev_state_field)
+ return field;
+ }
+ return NULL;
+}
+
+static struct tep_print_flag_sym *
+test_flags(struct tep_format_field *prev_state_field, struct tep_print_arg *arg)
+{
+ struct tep_print_arg_field *field;
+
+ field = find_arg_field(prev_state_field, arg->flags.field);
+ if (!field)
+ return NULL;
+
+ return arg->flags.flags;
+}
+
+static struct tep_print_flag_sym *
+search_op(struct tep_format_field *prev_state_field, struct tep_print_arg *arg)
+{
+ struct tep_print_flag_sym *sym = NULL;
+
+ if (!arg)
+ return NULL;
+
+ if (arg->type == TEP_PRINT_OP) {
+ sym = search_op(prev_state_field, arg->op.left);
+ if (sym)
+ return sym;
+
+ sym = search_op(prev_state_field, arg->op.right);
+ if (sym)
+ return sym;
+ } else if (arg->type == TEP_PRINT_FLAGS) {
+ sym = test_flags(prev_state_field, arg);
+ }
+
+ return sym;
+}
+
+static const char *get_states(struct tep_format_field *prev_state_field)
+{
+ struct tep_print_flag_sym *sym;
+ struct tep_print_arg *arg;
+ struct tep_event *event;
+
+ event = prev_state_field->event;
+
+ /*
+ * Look at the event format fields, and search for where
+ * the prev_state is parsed via the format flags.
+ */
+ for (arg = event->print_fmt.args; arg; arg = arg->next) {
+ /*
+ * Currently, the __print_flags() for the prev_state
+ * is embedded in operations, so they too must be
+ * searched.
+ */
+ sym = search_op(prev_state_field, arg);
+ if (sym)
+ return convert_sym(sym);
+ }
+ return NULL;
+}
+
+static void write_state(struct trace_seq *s, struct tep_format_field *field,
+ struct tep_record *record)
+{
+ static struct tep_format_field *prev_state_field;
+ static const char *states;
+ unsigned long long val;
int found = 0;
+ int len;
int i;
- for (i = 0; i < (sizeof(states) - 1); i++) {
+ if (!field)
+ return;
+
+ if (!states || field != prev_state_field) {
+ states = get_states(field);
+ if (!states)
+ states = "SDTtXZPI";
+ prev_state_field = field;
+ }
+
+ tep_read_number_field(field, record->data, &val);
+
+ len = strlen(states);
+ for (i = 0; i < len; i++) {
if (!(val & (1 << i)))
continue;
@@ -99,8 +229,8 @@
if (tep_get_field_val(s, event, "prev_prio", record, &val, 1) == 0)
trace_seq_printf(s, "[%d] ", (int) val);
- if (tep_get_field_val(s, event, "prev_state", record, &val, 1) == 0)
- write_state(s, val);
+ field = tep_find_any_field(event, "prev_state");
+ write_state(s, field, record);
trace_seq_puts(s, " ==> ");
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libtraceevent-1.7.3/src/event-parse-api.c new/libtraceevent-1.8.2/src/event-parse-api.c
--- old/libtraceevent-1.7.3/src/event-parse-api.c 2023-06-07 21:49:02.000000000 +0200
+++ new/libtraceevent-1.8.2/src/event-parse-api.c 2024-01-09 03:32:09.000000000 +0100
@@ -263,6 +263,20 @@
}
/**
+ * tep_get_sub_buffer_data_size - get the size of the data portion
+ * @tep: The handle to the tep to get the data size from
+ *
+ * Returns the size of the data portion of the sub buffer
+ */
+int tep_get_sub_buffer_data_size(struct tep_handle *tep)
+{
+ if (!tep)
+ return -1;
+
+ return tep->header_page_data_size;
+}
+
+/**
* tep_get_sub_buffer_size - get the size of a trace buffer page
* @tep: a handle to the tep_handle
*
@@ -278,6 +292,21 @@
}
/**
+ * tep_get_sub_buffer_commit_offset - return offset of the commit location
+ * @tep: the handle to the tep_handle
+ *
+ * Returns the offset of where to find the "commit" field of the offset.
+ * Use tep_get_header_page_size() to find the size of the commit field.
+ */
+int tep_get_sub_buffer_commit_offset(struct tep_handle *tep)
+{
+ if (!tep)
+ return -1;
+
+ return tep->header_page_size_offset;
+}
+
+/**
* tep_is_file_bigendian - return the endian of the file
* @tep: a handle to the tep_handle
*
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libtraceevent-1.7.3/src/event-parse.c new/libtraceevent-1.8.2/src/event-parse.c
--- old/libtraceevent-1.7.3/src/event-parse.c 2023-06-07 21:49:02.000000000 +0200
+++ new/libtraceevent-1.8.2/src/event-parse.c 2024-01-09 03:32:09.000000000 +0100
@@ -6872,6 +6872,21 @@
return comm;
}
+/**
+ * tep_record_is_event - return true if the given record is the given event
+ * @record: The record to see is the @event
+ * @event: The event to test against @record
+ *
+ * Returns true if the record is of the given event, false otherwise
+ */
+bool tep_record_is_event(struct tep_record *record, struct tep_event *event)
+{
+ int type;
+
+ type = tep_data_type(event->tep, record);
+ return event->id == type;
+}
+
static struct tep_cmdline *
pid_from_cmdlist(struct tep_handle *tep, const char *comm, struct tep_cmdline *next)
{
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libtraceevent-1.7.3/src/kbuffer-parse.c new/libtraceevent-1.8.2/src/kbuffer-parse.c
--- old/libtraceevent-1.7.3/src/kbuffer-parse.c 2023-06-07 21:49:02.000000000 +0200
+++ new/libtraceevent-1.8.2/src/kbuffer-parse.c 2024-01-09 03:32:09.000000000 +0100
@@ -86,6 +86,42 @@
ENDIAN_MASK;
}
+static unsigned long long swap_8(unsigned long data)
+{
+ return ((data & 0xffULL) << 56) |
+ ((data & (0xffULL << 8)) << 40) |
+ ((data & (0xffULL << 16)) << 24) |
+ ((data & (0xffULL << 24)) << 8) |
+ ((data & (0xffULL << 32)) >> 8) |
+ ((data & (0xffULL << 40)) >> 24) |
+ ((data & (0xffULL << 48)) >> 40) |
+ ((data & (0xffULL << 56)) >> 56);
+}
+
+static unsigned int swap_4(unsigned int data)
+{
+ return ((data & 0xffULL) << 24) |
+ ((data & (0xffULL << 8)) << 8) |
+ ((data & (0xffULL << 16)) >> 8) |
+ ((data & (0xffULL << 24)) >> 24);
+}
+
+static void write_8(bool do_swap, void *ptr, unsigned long long data)
+{
+ if (do_swap)
+ *(unsigned long long *)ptr = swap_8(data);
+ else
+ *(unsigned long long *)ptr = data;
+}
+
+static void write_4(bool do_swap, void *ptr, unsigned int data)
+{
+ if (do_swap)
+ *(unsigned int *)ptr = swap_4(data);
+ else
+ *(unsigned int *)ptr = data;
+}
+
static unsigned long long __read_8(void *ptr)
{
unsigned long long data = *(unsigned long long *)ptr;
@@ -96,18 +132,8 @@
static unsigned long long __read_8_sw(void *ptr)
{
unsigned long long data = *(unsigned long long *)ptr;
- unsigned long long swap;
- swap = ((data & 0xffULL) << 56) |
- ((data & (0xffULL << 8)) << 40) |
- ((data & (0xffULL << 16)) << 24) |
- ((data & (0xffULL << 24)) << 8) |
- ((data & (0xffULL << 32)) >> 8) |
- ((data & (0xffULL << 40)) >> 24) |
- ((data & (0xffULL << 48)) >> 40) |
- ((data & (0xffULL << 56)) >> 56);
-
- return swap;
+ return swap_8(data);
}
static unsigned int __read_4(void *ptr)
@@ -120,14 +146,8 @@
static unsigned int __read_4_sw(void *ptr)
{
unsigned int data = *(unsigned int *)ptr;
- unsigned int swap;
-
- swap = ((data & 0xffULL) << 24) |
- ((data & (0xffULL << 8)) << 8) |
- ((data & (0xffULL << 16)) >> 8) |
- ((data & (0xffULL << 24)) >> 24);
- return swap;
+ return swap_4(data);
}
static unsigned long long read_8(struct kbuffer *kbuf, void *ptr)
@@ -160,6 +180,7 @@
return (unsigned long)ptr - (unsigned long)kbuf->data;
}
+static int next_event(struct kbuffer *kbuf);
static int __next_event(struct kbuffer *kbuf);
/*
@@ -249,6 +270,26 @@
return kbuf;
}
+/**
+ * kbuffer_dup - duplicate a given kbuffer
+ * @kbuf_orig; The kbuffer to duplicate
+ *
+ * Allocates a new kbuffer based off of anothe kbuffer.
+ * Returns the duplicate on success or NULL on error.
+ */
+struct kbuffer *kbuffer_dup(struct kbuffer *kbuf_orig)
+{
+ struct kbuffer *kbuf;
+
+ kbuf = malloc(sizeof(*kbuf));
+ if (!kbuf)
+ return NULL;
+
+ *kbuf = *kbuf_orig;
+
+ return kbuf;
+}
+
/** kbuffer_free - free an allocated kbuffer
* @kbuf: The kbuffer to free
*
@@ -259,6 +300,33 @@
free(kbuf);
}
+/**
+ * kbuffer_refresh - update the meta data from the subbuffer
+ * @kbuf; The kbuffer to update
+ *
+ * If the loaded subbuffer changed its meta data (the commit)
+ * then update the pointers for it.
+ */
+int kbuffer_refresh(struct kbuffer *kbuf)
+{
+ unsigned long long flags;
+ unsigned int old_size;
+
+ if (!kbuf || !kbuf->subbuffer)
+ return -1;
+
+ old_size = kbuf->size;
+
+ flags = read_long(kbuf, kbuf->subbuffer + 8);
+ kbuf->size = (unsigned int)flags & COMMIT_MASK;
+
+ /* Update next to be the next element */
+ if (kbuf->size != old_size && kbuf->curr == kbuf->next)
+ next_event(kbuf);
+
+ return 0;
+}
+
static unsigned int type4host(struct kbuffer *kbuf,
unsigned int type_len_ts)
{
@@ -295,6 +363,13 @@
return type_len_ts >> 5;
}
+static void set_curr_to_end(struct kbuffer *kbuf)
+{
+ kbuf->curr = kbuf->size;
+ kbuf->next = kbuf->size;
+ kbuf->index = kbuf->size;
+}
+
/*
* Linux 2.6.30 and earlier (not much ealier) had a different
* ring buffer format. It should be obsolete, but we handle it anyway.
@@ -339,9 +414,7 @@
case OLD_RINGBUF_TYPE_TIME_STAMP:
/* should never happen! */
- kbuf->curr = kbuf->size;
- kbuf->next = kbuf->size;
- kbuf->index = kbuf->size;
+ set_curr_to_end(kbuf);
return -1;
default:
if (len)
@@ -703,6 +776,17 @@
}
/**
+ * kbuffer_subbuffer - the currently loaded subbuffer
+ * @kbuf: The kbuffer to read from
+ *
+ * Returns the currently loaded subbuffer.
+ */
+void *kbuffer_subbuffer(struct kbuffer *kbuf)
+{
+ return kbuf->subbuffer;
+}
+
+/**
* kbuffer_curr_index - Return the index of the record
* @kbuf: The kbuffer to read from
*
@@ -846,3 +930,90 @@
return info;
}
+
+/**
+ * kbuffer_read_buffer - read a buffer like the kernel would perform a read
+ * @kbuf: the kbuffer handle
+ * @buffer: where to write the data into
+ * @len; The length of @buffer
+ *
+ * This will read the saved sub buffer within @kbuf like the systemcall
+ * of read() to the trace_pipe_raw would do. That is, if either @len
+ * can not fit the entire buffer, or if the current index in @kbuf
+ * is non-zero, it will write to @buffer a new subbuffer that could be
+ * loaded into kbuffer_load_subbuffer(). That is, it will write into
+ * @buffer a legitimate sub-buffer with a header and all that has the
+ * proper timestamp and commit fields.
+ *
+ * Returns the index after the last element written.
+ * 0 if nothing was copied.
+ * -1 on error (which includes not having enough space in len to
+ * copy the subbuffer header or any of its content. In otherwords,
+ * do not try again!
+ *
+ * @kbuf current index will be set to the next element to read.
+ */
+int kbuffer_read_buffer(struct kbuffer *kbuf, void *buffer, int len)
+{
+ unsigned long long ts;
+ unsigned int type_len_ts;
+ bool do_swap = false;
+ int last_next;
+ int save_curr;
+
+ /* Are we at the end of the buffer */
+ if (kbuf->curr >= kbuf->size)
+ return 0;
+
+ /* If we can not copy anyting, return -1 */
+ if (len < kbuf->start)
+ return -1;
+
+ /* Check if the first event can fit */
+ if (len < (kbuf->next - kbuf->curr) + kbuf->start)
+ return -1;
+
+ if (kbuf->read_8 == __read_8_sw)
+ do_swap = true;
+
+ /* Have this subbuffer timestamp be the current timestamp */
+ write_8(do_swap, buffer, kbuf->timestamp);
+
+ len -= kbuf->start;
+
+ save_curr = kbuf->curr;
+
+ /* Due to timestamps, we must save the current next to use */
+ last_next = kbuf->next;
+
+ while (len >= kbuf->next - save_curr) {
+ last_next = kbuf->next;
+ if (!kbuffer_next_event(kbuf, &ts))
+ break;
+ }
+
+ len = last_next - save_curr;
+ /* No event was found? */
+ if (!len)
+ return 0;
+
+ memcpy(buffer + kbuf->start, kbuf->data + save_curr, len);
+
+ /* Zero out the delta, as the sub-buffer has the timestamp */
+ type_len_ts = read_4(kbuf, buffer + kbuf->start);
+
+ if (kbuf->flags & KBUFFER_FL_BIG_ENDIAN)
+ type_len_ts &= ~(((1 << 27) - 1));
+ else
+ type_len_ts &= ((1 << 5) - 1);
+
+ write_4(do_swap, buffer + kbuf->start, type_len_ts);
+
+ /* Update the size */
+ if (kbuf->read_long == __read_long_8)
+ write_8(do_swap, buffer + 8, len);
+ else
+ write_4(do_swap, buffer + 8, len);
+
+ return last_next;
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libtraceevent-1.7.3/src/meson.build new/libtraceevent-1.8.2/src/meson.build
--- old/libtraceevent-1.7.3/src/meson.build 2023-06-07 21:49:02.000000000 +0200
+++ new/libtraceevent-1.8.2/src/meson.build 2024-01-09 03:32:09.000000000 +0100
@@ -13,10 +13,14 @@
'trace-seq.c',
]
+cc = meson.get_compiler('c')
+dl_dep = cc.find_library('dl')
+
libtraceevent = library(
'traceevent',
sources,
version: library_version,
+ dependencies: [dl_dep],
include_directories: [incdir],
install: true)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libtraceevent-1.7.3/src/parse-utils.c new/libtraceevent-1.8.2/src/parse-utils.c
--- old/libtraceevent-1.7.3/src/parse-utils.c 2023-06-07 21:49:02.000000000 +0200
+++ new/libtraceevent-1.8.2/src/parse-utils.c 2024-01-09 03:32:09.000000000 +0100
@@ -137,6 +137,11 @@
int long_size;
long_size = tep_get_long_size(tep);
+
+ /* If the long_size is not set, then use the commit size */
+ if (!long_size)
+ long_size = tep_get_header_page_size(tep);
+
if (long_size == 8)
long_size = KBUFFER_LSIZE_8;
else
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package systemd for openSUSE:Factory checked in at 2024-07-03 20:26:36
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/systemd (Old)
and /work/SRC/openSUSE:Factory/.systemd.new.18349 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "systemd"
Wed Jul 3 20:26:36 2024 rev:427 rq:1184267 version:255.8
Changes:
--------
--- /work/SRC/openSUSE:Factory/systemd/systemd.changes 2024-06-25 23:06:40.820554396 +0200
+++ /work/SRC/openSUSE:Factory/.systemd.new.18349/systemd.changes 2024-07-03 20:28:37.101371530 +0200
@@ -1,0 +2,12 @@
+Mon Jul 1 08:35:26 UTC 2024 - Franck Bui <fbui(a)suse.com>
+
+- Import commit 5a8eadd0c021758337a020c423f25a353bdb9b3c (merge of v255.8)
+
+ For a complete list of changes, visit:
+ https://github.com/openSUSE/systemd/compare/603cd1d4d81147d4f2eccd5e352064a…
+
+- Drop 5003-Revert-run-pass-the-pty-slave-fd-to-transient-servic.patch as v255.8
+ contains the workaround (commit 639c922ede9485) for the broken commit
+ 28459ba1f4df.
+
+-------------------------------------------------------------------
Old:
----
5003-Revert-run-pass-the-pty-slave-fd-to-transient-servic.patch
systemd-v255.7+suse.33.g603cd1d4d8.tar.xz
New:
----
systemd-v255.8+suse.34.g5a8eadd0c0.tar.xz
BETA DEBUG BEGIN:
Old:
- Drop 5003-Revert-run-pass-the-pty-slave-fd-to-transient-servic.patch as v255.8
contains the workaround (commit 639c922ede9485) for the broken commit
BETA DEBUG END:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ systemd.spec ++++++
--- /var/tmp/diff_new_pack.MNqFS8/_old 2024-07-03 20:28:41.217522183 +0200
+++ /var/tmp/diff_new_pack.MNqFS8/_new 2024-07-03 20:28:41.233522768 +0200
@@ -26,9 +26,9 @@
%define systemd_release %{?release_override}%{!?release_override:0}
%define archive_version %{nil}
%else
-%define systemd_version 255.7
+%define systemd_version 255.8
%define systemd_release 0
-%define archive_version +suse.33.g603cd1d4d8
+%define archive_version +suse.34.g5a8eadd0c0
%endif
%define systemd_major %{sub %systemd_version 1 3}
@@ -233,7 +233,6 @@
# will be removed as soon as a proper fix will be merged by upstream.
Patch: 5001-Revert-udev-update-devlink-with-the-newer-device-nod.patch
Patch: 5002-Revert-udev-revert-workarounds-for-issues-caused-by-.patch
-Patch: 5003-Revert-run-pass-the-pty-slave-fd-to-transient-servic.patch
%endif
%description
++++++ systemd-v255.7+suse.33.g603cd1d4d8.tar.xz -> systemd-v255.8+suse.34.g5a8eadd0c0.tar.xz ++++++
/work/SRC/openSUSE:Factory/systemd/systemd-v255.7+suse.33.g603cd1d4d8.tar.xz /work/SRC/openSUSE:Factory/.systemd.new.18349/systemd-v255.8+suse.34.g5a8eadd0c0.tar.xz differ: char 27, line 1
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package openucx for openSUSE:Factory checked in at 2024-07-03 20:26:35
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/openucx (Old)
and /work/SRC/openSUSE:Factory/.openucx.new.18349 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "openucx"
Wed Jul 3 20:26:35 2024 rev:31 rq:1184228 version:1.17.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/openucx/openucx.changes 2024-06-29 15:16:15.437670627 +0200
+++ /work/SRC/openSUSE:Factory/.openucx.new.18349/openucx.changes 2024-07-03 20:28:26.973000829 +0200
@@ -1,0 +2,5 @@
+Sat Jun 29 16:55:27 UTC 2024 - Andreas Schwab <schwab(a)suse.de>
+
+- Enable build on riscv64
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ openucx.spec ++++++
--- /var/tmp/diff_new_pack.wLEc6t/_old 2024-07-03 20:28:29.241083841 +0200
+++ /var/tmp/diff_new_pack.wLEc6t/_new 2024-07-03 20:28:29.245083988 +0200
@@ -49,7 +49,7 @@
BuildRequires: pkg-config
BuildRequires: zlib-devel
BuildRoot: %{_tmppath}/%{name}-%{version}-build
-ExclusiveArch: aarch64 %power64 x86_64 s390x
+ExclusiveArch: aarch64 %power64 x86_64 s390x riscv64
%description
UCX stands for Unified Communication X. UCX provides a communication
1
0