Skip to content

Commit 675b539

Browse files
author
Jos Martin
committed
Update with new RHEL message and better matrix build
1 parent 92ee2c8 commit 675b539

File tree

2 files changed

+28
-33
lines changed

2 files changed

+28
-33
lines changed

.github/workflows/release-all-debian.yaml

Lines changed: 17 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -10,38 +10,23 @@ on:
1010
- cron: '0 0 1 * *'
1111

1212
jobs:
13-
build-debian-stretch:
14-
uses: mathworks/build-glibc-bz-19329-patch/.github/workflows/build-glibc-and-release.yaml@main
13+
build-all-debian:
14+
strategy:
15+
matrix:
16+
dist-base: debian
17+
dist-tag: [ stretch buster bullseye ]
18+
uses: ./.github/workflows/build-glibc-and-release.yaml@main
1519
with:
16-
dist-base: debian
17-
dist-tag: stretch
20+
dist-base: ${{ matrix.dist-base }}
21+
dist-tag: ${{ matrix.dist-tag }}
1822

19-
build-debian-buster:
20-
uses: mathworks/build-glibc-bz-19329-patch/.github/workflows/build-glibc-and-release.yaml@main
23+
build-all-ubuntu:
24+
strategy:
25+
matrix:
26+
dist-base: ubuntu
27+
dist-tag: [ bionic focal hirsute ]
28+
uses: ./.github/workflows/build-glibc-and-release.yaml@main
2129
with:
22-
dist-base: debian
23-
dist-tag: buster
24-
25-
build-debian-bullseye:
26-
uses: mathworks/build-glibc-bz-19329-patch/.github/workflows/build-glibc-and-release.yaml@main
27-
with:
28-
dist-base: debian
29-
dist-tag: bullseye
30-
31-
build-ubuntu-bionic:
32-
uses: mathworks/build-glibc-bz-19329-patch/.github/workflows/build-glibc-and-release.yaml@main
33-
with:
34-
dist-base: ubuntu
35-
dist-tag: bionic
36-
37-
build-ubuntu-focal:
38-
uses: mathworks/build-glibc-bz-19329-patch/.github/workflows/build-glibc-and-release.yaml@main
39-
with:
40-
dist-base: ubuntu
41-
dist-tag: focal
42-
43-
build-ubuntu-hirsute:
44-
uses: mathworks/build-glibc-bz-19329-patch/.github/workflows/build-glibc-and-release.yaml@main
45-
with:
46-
dist-base: ubuntu
47-
dist-tag: hirsute
30+
dist-base: ${{ matrix.dist-base }}
31+
dist-tag: ${{ matrix.dist-tag }}
32+

README.md

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,9 @@
22
## Summary
33
This repository provides a method for working around the sporadic issue seen on older linux distributions: MathWorks® products can trigger an [assert failure at concurrent pthread_create and dlopen (BZ-19329)](https://sourceware.org/bugzilla/show_bug.cgi?id=19329) in the [GNU C Libraries (glibc)](https://www.gnu.org/software/libc/).
44

5-
If you are running an ubuntu-based system and can upgrade to **version 21.10 (Impish Indri)** this is the safest and easiest way to alleviate the issue, since that version contains glibc v2.34 in which the underlying issue is completely fixed.
5+
If you are running
6+
* **ubuntu-based** systems and can upgrade to **version 21.10 (Impish Indri)** this is the safest and easiest way to alleviate the issue, since that version contains glibc v2.34 in which the underlying issue is completely fixed.
7+
* **RHEL-based 8.4 or 8.5** systems (*update 27 June 2022*). It appears that RHEL have patched the `glibc-2.28` packages in release `189` to fix this issue. Ensure that you have installed at least [`glibc-2.28-189.1.el8`](https://git.almalinux.org/rpms/glibc/commit/385bc0f199bf51199143fe12b857f4983db76e48).
68

79
If instead you want to work around this issue, you can use this repository. It provides a build procedure (in an isolated Docker® container) to produce patched versions of the glibc libraries for recent Almalinux, Ubuntu® and Debian® releases. These patched versions [incorporate an initial fix](https://patchwork.ozlabs.org/project/glibc/patch/[email protected]/) proposed on the [libc-alpha mailing list](https://sourceware.org/mailman/listinfo/libc-alpha) that mitigate the issue. In the release area of this repository you can find the debian package build artefacts produced by running the build on Ubuntu 18.04 & 20.04 as well as Debian 9, 10 & 11. You can install these artefacts on an appropriate debian-based machine, virtual machine or docker container, by using `dpkg -i`. For Almalinux you cand find the appropriate `rpm's` which should also work on UBI and CentOS containers.
810

@@ -74,6 +76,8 @@ This repository runs a number of github actions to build artefacts for specific
7476
| `almalinux:8.4` | |
7577
| `almalinux:8.5` | |
7678

79+
*Note*: You should only patch RHEL 8.4 or 8.5 if you cannot get `glibc-2.28-189.1.el8` onto the machine via the normal upgrade procedures.
80+
7781
Here is an example build command (for `debian:9`):
7882
```
7983
DOCKER_BUILDKIT=1 docker build --build-arg DIST_BASE=debian --build-arg DIST_TAG=9 --output type=local,dest=. .
@@ -131,6 +135,12 @@ COPY libc6_2.24-11+deb9u4.custom_amd64.deb /tmp/
131135
RUN dpkg -i /tmp/libc6_2.24-11+deb9u4.custom_amd64.deb
132136
```
133137

138+
### RHEL 8.4 & 8.5 Update (*27 June 2022*)
139+
140+
RHEL have just integrated the bz-19329 patch into [`glibc-2.28-189.1.el8`](https://git.almalinux.org/rpms/glibc/commit/385bc0f199bf51199143fe12b857f4983db76e48). It appear that the change actually went into build [`2.28-175`](https://git.almalinux.org/rpms/glibc/src/commit/385bc0f199bf51199143fe12b857f4983db76e48/SPECS/glibc.spec#L2721) and got released with `2.28-189`.
141+
142+
Unless you need to use a `pre-189` release of the package you should no longer need to use this repository to patch RHEL and AlmaLinux.
143+
134144
## Patch sources
135145
These patches all derive from an [original patch](https://sourceware.org/legacy-ml/libc-alpha/2016-01/msg00480.html) put together by Szabolcs Nagy in January 2016. The 2.24 to 2.28 patches in this repo are derived from this original e-mail and can be downloaded directly from the archive of the `[email protected]` mailing list where they were proposed:
136146

0 commit comments

Comments
 (0)