* [OE-core][dunfell 0/4] Patch review
@ 2021-10-25 23:31 Steve Sakoman
2021-10-25 23:31 ` [OE-core][dunfell 1/4] rpm: Deterministically set vendor macro entry Steve Sakoman
` (3 more replies)
0 siblings, 4 replies; 8+ messages in thread
From: Steve Sakoman @ 2021-10-25 23:31 UTC (permalink / raw)
To: openembedded-core
Please review this set of patches for dunfell and have comments back by end
of day Wednesday.
Passed a-full on autobuilder:
https://autobuilder.yoctoproject.org/typhoon/#/builders/83/builds/2804
The following changes since commit 62cdc20a2186ecd54d3a7131ec8f6937aa0229ed:
uninative: Upgrade to 3.4 (2021-10-25 10:23:54 +0100)
are available in the Git repository at:
git://git.openembedded.org/openembedded-core-contrib stable/dunfell-nut
http://cgit.openembedded.org/openembedded-core-contrib/log/?h=stable/dunfell-nut
Joshua Watt (1):
classes/reproducible_build: Use atomic rename for SDE file
Richard Purdie (2):
rpm: Deterministically set vendor macro entry
reproducible_build: Work around caching issues
Steve Sakoman (1):
selftest/reproducible: adjust exclusion list for dunfell
meta/classes/reproducible_build.bbclass | 24 +++++++++++---------
meta/lib/oeqa/selftest/cases/reproducible.py | 5 ----
meta/recipes-devtools/rpm/rpm_4.14.2.1.bb | 3 ++-
3 files changed, 15 insertions(+), 17 deletions(-)
--
2.25.1
^ permalink raw reply [flat|nested] 8+ messages in thread
* [OE-core][dunfell 1/4] rpm: Deterministically set vendor macro entry
2021-10-25 23:31 [OE-core][dunfell 0/4] Patch review Steve Sakoman
@ 2021-10-25 23:31 ` Steve Sakoman
2021-10-25 23:31 ` [OE-core][dunfell 2/4] reproducible_build: Work around caching issues Steve Sakoman
` (2 subsequent siblings)
3 siblings, 0 replies; 8+ messages in thread
From: Steve Sakoman @ 2021-10-25 23:31 UTC (permalink / raw)
To: openembedded-core
From: Richard Purdie <richard.purdie@linuxfoundation.org>
On an aarch64 build host, vendor is found to be "unknown", on x86 systems
it is "pc". This filters through to the PLATFORM tag in target rpms.
We saw reproducibility test failures where the PLATFORM tags in noarch
rpms were changing depending upon which host built them. Forcing the
vendor value to a consistent one makes things deterministic.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit f6434075b2bdfc23c683d22281b674b1e6abde77)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
---
meta/recipes-devtools/rpm/rpm_4.14.2.1.bb | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/meta/recipes-devtools/rpm/rpm_4.14.2.1.bb b/meta/recipes-devtools/rpm/rpm_4.14.2.1.bb
index c93654aa8f..ab9f0e8e29 100644
--- a/meta/recipes-devtools/rpm/rpm_4.14.2.1.bb
+++ b/meta/recipes-devtools/rpm/rpm_4.14.2.1.bb
@@ -62,7 +62,8 @@ export PYTHON_ABI
# OE-core patches autoreconf to additionally run gnu-configize, which fails with this recipe
EXTRA_AUTORECONF_append = " --exclude=gnu-configize"
-EXTRA_OECONF_append = " --without-lua --enable-python --with-crypto=openssl"
+# Vendor is detected differently on x86 and aarch64 hosts and can feed into target packages
+EXTRA_OECONF_append = " --without-lua --enable-python --with-crypto=openssl --with-vendor=pc"
EXTRA_OECONF_append_libc-musl = " --disable-nls"
# --sysconfdir prevents rpm from attempting to access machine-specific configuration in sysroot/etc; we need to have it in rootfs
--
2.25.1
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [OE-core][dunfell 2/4] reproducible_build: Work around caching issues
2021-10-25 23:31 [OE-core][dunfell 0/4] Patch review Steve Sakoman
2021-10-25 23:31 ` [OE-core][dunfell 1/4] rpm: Deterministically set vendor macro entry Steve Sakoman
@ 2021-10-25 23:31 ` Steve Sakoman
2021-10-25 23:31 ` [OE-core][dunfell 3/4] classes/reproducible_build: Use atomic rename for SDE file Steve Sakoman
2021-10-25 23:31 ` [OE-core][dunfell 4/4] selftest/reproducible: adjust exclusion list for dunfell Steve Sakoman
3 siblings, 0 replies; 8+ messages in thread
From: Steve Sakoman @ 2021-10-25 23:31 UTC (permalink / raw)
To: openembedded-core
From: Richard Purdie <richard.purdie@linuxfoundation.org>
SOURCE_DATE_EPOCH can be expanded early in the parsing process before
the class extensions are applied. This can mean the directory pointed
to for the SDE can be incorrect until later in parsing. Cache the file
name in the cached value and allow it to dynamically update.
This isn't ideal but avoding expansion of the variable likely isn't
possible and I'm not sure how else to handle this. This works around
the issue until a better solution can be found.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 44dc97cd1223e4d2b635669627ec5f796838d42d)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
---
meta/classes/reproducible_build.bbclass | 11 +++++++----
1 file changed, 7 insertions(+), 4 deletions(-)
diff --git a/meta/classes/reproducible_build.bbclass b/meta/classes/reproducible_build.bbclass
index f06e00d70d..43cf9dc894 100644
--- a/meta/classes/reproducible_build.bbclass
+++ b/meta/classes/reproducible_build.bbclass
@@ -91,11 +91,14 @@ python create_source_date_epoch_stamp() {
}
def get_source_date_epoch_value(d):
- cached = d.getVar('__CACHED_SOURCE_DATE_EPOCH')
- if cached:
+ epochfile = d.getVar('SDE_FILE')
+ cached, efile = d.getVar('__CACHED_SOURCE_DATE_EPOCH') or (None, None)
+ if cached and efile == epochfile:
return cached
- epochfile = d.getVar('SDE_FILE')
+ if cached and epochfile != efile:
+ bb.debug(1, "Epoch file changed from %s to %s" % (efile, epochfile))
+
source_date_epoch = int(d.getVar('SOURCE_DATE_EPOCH_FALLBACK'))
if os.path.isfile(epochfile):
with open(epochfile, 'r') as f:
@@ -113,7 +116,7 @@ def get_source_date_epoch_value(d):
else:
bb.debug(1, "Cannot find %s. SOURCE_DATE_EPOCH will default to %d" % (epochfile, source_date_epoch))
- d.setVar('__CACHED_SOURCE_DATE_EPOCH', str(source_date_epoch))
+ d.setVar('__CACHED_SOURCE_DATE_EPOCH', (str(source_date_epoch), epochfile))
return str(source_date_epoch)
export SOURCE_DATE_EPOCH ?= "${@get_source_date_epoch_value(d)}"
--
2.25.1
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [OE-core][dunfell 3/4] classes/reproducible_build: Use atomic rename for SDE file
2021-10-25 23:31 [OE-core][dunfell 0/4] Patch review Steve Sakoman
2021-10-25 23:31 ` [OE-core][dunfell 1/4] rpm: Deterministically set vendor macro entry Steve Sakoman
2021-10-25 23:31 ` [OE-core][dunfell 2/4] reproducible_build: Work around caching issues Steve Sakoman
@ 2021-10-25 23:31 ` Steve Sakoman
2021-10-25 23:31 ` [OE-core][dunfell 4/4] selftest/reproducible: adjust exclusion list for dunfell Steve Sakoman
3 siblings, 0 replies; 8+ messages in thread
From: Steve Sakoman @ 2021-10-25 23:31 UTC (permalink / raw)
To: openembedded-core
From: Joshua Watt <JPEWhacker@gmail.com>
If an existing source date epoch file was found during do_unpack, it was
deleted and a new one would be written in its place. This causes a race
with check-before-use code in get_source_date_epoch_value. Resolve the
problem by making do_unpack write the new source date epoch to a
temporary file, then do an atomic rename to ensure it's always present,
and change the check-before-use code to use a EAFP exception instead of
checking for file existence.
[YOCTO #14384]
Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 0b5e3b33187bf78a2d62cc886463e4b27d6bd228)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
---
meta/classes/reproducible_build.bbclass | 13 ++++++-------
1 file changed, 6 insertions(+), 7 deletions(-)
diff --git a/meta/classes/reproducible_build.bbclass b/meta/classes/reproducible_build.bbclass
index 43cf9dc894..62655c2a5b 100644
--- a/meta/classes/reproducible_build.bbclass
+++ b/meta/classes/reproducible_build.bbclass
@@ -77,17 +77,16 @@ python create_source_date_epoch_stamp() {
import oe.reproducible
epochfile = d.getVar('SDE_FILE')
- # If it exists we need to regenerate as the sources may have changed
- if os.path.isfile(epochfile):
- bb.debug(1, "Deleting existing SOURCE_DATE_EPOCH from: %s" % epochfile)
- os.remove(epochfile)
+ tmp_file = "%s.new" % epochfile
source_date_epoch = oe.reproducible.get_source_date_epoch(d, d.getVar('S'))
bb.debug(1, "SOURCE_DATE_EPOCH: %d" % source_date_epoch)
bb.utils.mkdirhier(d.getVar('SDE_DIR'))
- with open(epochfile, 'w') as f:
+ with open(tmp_file, 'w') as f:
f.write(str(source_date_epoch))
+
+ os.rename(tmp_file, epochfile)
}
def get_source_date_epoch_value(d):
@@ -100,7 +99,7 @@ def get_source_date_epoch_value(d):
bb.debug(1, "Epoch file changed from %s to %s" % (efile, epochfile))
source_date_epoch = int(d.getVar('SOURCE_DATE_EPOCH_FALLBACK'))
- if os.path.isfile(epochfile):
+ try:
with open(epochfile, 'r') as f:
s = f.read()
try:
@@ -113,7 +112,7 @@ def get_source_date_epoch_value(d):
bb.warn("SOURCE_DATE_EPOCH value '%s' is invalid. Reverting to SOURCE_DATE_EPOCH_FALLBACK" % s)
source_date_epoch = int(d.getVar('SOURCE_DATE_EPOCH_FALLBACK'))
bb.debug(1, "SOURCE_DATE_EPOCH: %d" % source_date_epoch)
- else:
+ except FileNotFoundError:
bb.debug(1, "Cannot find %s. SOURCE_DATE_EPOCH will default to %d" % (epochfile, source_date_epoch))
d.setVar('__CACHED_SOURCE_DATE_EPOCH', (str(source_date_epoch), epochfile))
--
2.25.1
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [OE-core][dunfell 4/4] selftest/reproducible: adjust exclusion list for dunfell
2021-10-25 23:31 [OE-core][dunfell 0/4] Patch review Steve Sakoman
` (2 preceding siblings ...)
2021-10-25 23:31 ` [OE-core][dunfell 3/4] classes/reproducible_build: Use atomic rename for SDE file Steve Sakoman
@ 2021-10-25 23:31 ` Steve Sakoman
3 siblings, 0 replies; 8+ messages in thread
From: Steve Sakoman @ 2021-10-25 23:31 UTC (permalink / raw)
To: openembedded-core
Signed-off-be: Steve Sakoman <steve@sakoman.com>
---
meta/lib/oeqa/selftest/cases/reproducible.py | 5 -----
1 file changed, 5 deletions(-)
diff --git a/meta/lib/oeqa/selftest/cases/reproducible.py b/meta/lib/oeqa/selftest/cases/reproducible.py
index 0e44ce4dbf..c8604a2054 100644
--- a/meta/lib/oeqa/selftest/cases/reproducible.py
+++ b/meta/lib/oeqa/selftest/cases/reproducible.py
@@ -31,7 +31,6 @@ exclude_packages = [
'bootchart2-doc',
'epiphany',
'gcr',
- 'git',
'glide',
'go-dep',
'go-helloworld',
@@ -44,7 +43,6 @@ exclude_packages = [
'libcap-ng',
'libjson',
'libproxy',
- 'lsb-release',
'lttng-tools-dbg',
'lttng-tools-ptest',
'ltp',
@@ -55,15 +53,12 @@ exclude_packages = [
'pybootchartgui',
'qemu',
'quilt-ptest',
- "rpm",
'rsync',
'ruby',
'stress-ng',
'systemd-bootchart',
'systemtap',
'valgrind-ptest',
- 'vim',
- 'webkitgtk',
]
def is_excluded(package):
--
2.25.1
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [OE-core][dunfell 0/4] Patch review
@ 2022-05-25 14:36 Steve Sakoman
0 siblings, 0 replies; 8+ messages in thread
From: Steve Sakoman @ 2022-05-25 14:36 UTC (permalink / raw)
To: openembedded-core
Please review this set of patches for dunfell and have comments back by end
of day Friday.
Passed a-full on autobuilder:
https://autobuilder.yoctoproject.org/typhoon/#/builders/83/builds/3702
The following changes since commit 665f981fccbb09d51349c4bd4cfe4ca91001e3bd:
cve-check: Fix report generation (2022-05-18 05:41:41 -1000)
are available in the Git repository at:
git://git.openembedded.org/openembedded-core-contrib stable/dunfell-nut
http://cgit.openembedded.org/openembedded-core-contrib/log/?h=stable/dunfell-nut
Alexander Kanavin (1):
mobile-broadband-provider-info: upgrade 20220315 -> 20220511
Hitendra Prajapati (1):
pcre2: CVE-2022-1586 Out-of-bounds read
Minjae Kim (1):
libdrm: add libdrm-{nouveau,radeon,intel} to RPROVIDES
Ross Burton (1):
oeqa/selftest/cve_check: add tests for recipe and image reports
meta/lib/oeqa/selftest/cases/cve_check.py | 77 ++++++++++++++++++-
.../mobile-broadband-provider-info_git.bb | 4 +-
meta/recipes-graphics/drm/libdrm_2.4.101.bb | 6 ++
.../libpcre/libpcre2/CVE-2022-1586.patch | 59 ++++++++++++++
.../recipes-support/libpcre/libpcre2_10.34.bb | 1 +
5 files changed, 144 insertions(+), 3 deletions(-)
create mode 100644 meta/recipes-support/libpcre/libpcre2/CVE-2022-1586.patch
--
2.25.1
^ permalink raw reply [flat|nested] 8+ messages in thread
* [OE-core][dunfell 0/4] Patch review
@ 2022-07-21 21:38 Steve Sakoman
0 siblings, 0 replies; 8+ messages in thread
From: Steve Sakoman @ 2022-07-21 21:38 UTC (permalink / raw)
To: openembedded-core
Please review this set of patches for dunfell and have comments back by end
of day Friday. This should be the final set of patches for the 3.1.8 build.
Passed a-full on autobuilder:
https://autobuilder.yoctoproject.org/typhoon/#/builders/83/builds/3944
The following changes since commit bba069463ca3813666d084643b0239b9af0199e1:
classes/cve-check: Move get_patches_cves to library (2022-07-13 05:25:10 -1000)
are available in the Git repository at:
git://git.openembedded.org/openembedded-core-contrib stable/dunfell-nut
http://cgit.openembedded.org/openembedded-core-contrib/log/?h=stable/dunfell-nut
Bruce Ashfield (2):
linux-yocto/5.4: update to v5.4.205
linux-yocto-rt/5.4: fixup -rt build breakage
Ranjitsinh Rathod (1):
cve-extra-exclusions.inc: Use CVE_CHECK_WHITELIST
Robert Joslyn (1):
curl: Fix CVE-2022-32206, CVE-2022-32207, and CVE-2022-32208
.../distro/include/cve-extra-exclusions.inc | 6 +-
.../linux/linux-yocto-rt_5.4.bb | 6 +-
.../linux/linux-yocto-tiny_5.4.bb | 8 +-
meta/recipes-kernel/linux/linux-yocto_5.4.bb | 22 +-
.../curl/curl/CVE-2022-32206.patch | 52 ++++
.../curl/curl/CVE-2022-32207.patch | 284 ++++++++++++++++++
.../curl/curl/CVE-2022-32208.patch | 72 +++++
meta/recipes-support/curl/curl_7.69.1.bb | 3 +
8 files changed, 432 insertions(+), 21 deletions(-)
create mode 100644 meta/recipes-support/curl/curl/CVE-2022-32206.patch
create mode 100644 meta/recipes-support/curl/curl/CVE-2022-32207.patch
create mode 100644 meta/recipes-support/curl/curl/CVE-2022-32208.patch
--
2.25.1
^ permalink raw reply [flat|nested] 8+ messages in thread
* [OE-core][dunfell 0/4] Patch review
@ 2023-04-15 15:33 Steve Sakoman
0 siblings, 0 replies; 8+ messages in thread
From: Steve Sakoman @ 2023-04-15 15:33 UTC (permalink / raw)
To: openembedded-core
Please review this set of patches for dunfell and have comments back by
end of day Tuesday.
Passed a-full on autobuilder:
https://autobuilder.yoctoproject.org/typhoon/#/builders/83/builds/5184
The following changes since commit 4045bf02bbc6e87a05ba689a63c675e49c940772:
bmap-tools: switch to main branch (2023-04-03 07:16:26 -1000)
are available in the Git repository at:
https://git.openembedded.org/openembedded-core-contrib stable/dunfell-nut
http://cgit.openembedded.org/openembedded-core-contrib/log/?h=stable/dunfell-nut
Bhabu Bindu (1):
ffmpeg: fix for CVE-2022-3341
Gaurav Gupta (1):
qemu: fix build error introduced by CVE-2021-3929 fix
Hitendra Prajapati (2):
ruby: CVE-2023-28756 ReDoS vulnerability in Time
curl: CVE-2023-27534 SFTP path ~ resolving discrepancy
meta/recipes-devtools/qemu/qemu.inc | 2 +
.../qemu/qemu/CVE-2021-3929.patch | 33 ++--
.../hw-block-nvme-handle-dma-errors.patch | 146 ++++++++++++++++++
...w-block-nvme-refactor-nvme_addr_read.patch | 55 +++++++
.../ruby/ruby/CVE-2023-28756.patch | 61 ++++++++
meta/recipes-devtools/ruby/ruby_2.7.6.bb | 1 +
.../ffmpeg/ffmpeg/CVE-2022-3341.patch | 67 ++++++++
.../recipes-multimedia/ffmpeg/ffmpeg_4.2.2.bb | 1 +
.../curl/curl/CVE-2023-27534.patch | 123 +++++++++++++++
meta/recipes-support/curl/curl_7.69.1.bb | 1 +
10 files changed, 475 insertions(+), 15 deletions(-)
create mode 100644 meta/recipes-devtools/qemu/qemu/hw-block-nvme-handle-dma-errors.patch
create mode 100644 meta/recipes-devtools/qemu/qemu/hw-block-nvme-refactor-nvme_addr_read.patch
create mode 100644 meta/recipes-devtools/ruby/ruby/CVE-2023-28756.patch
create mode 100644 meta/recipes-multimedia/ffmpeg/ffmpeg/CVE-2022-3341.patch
create mode 100644 meta/recipes-support/curl/curl/CVE-2023-27534.patch
--
2.34.1
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2023-04-15 15:33 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-10-25 23:31 [OE-core][dunfell 0/4] Patch review Steve Sakoman
2021-10-25 23:31 ` [OE-core][dunfell 1/4] rpm: Deterministically set vendor macro entry Steve Sakoman
2021-10-25 23:31 ` [OE-core][dunfell 2/4] reproducible_build: Work around caching issues Steve Sakoman
2021-10-25 23:31 ` [OE-core][dunfell 3/4] classes/reproducible_build: Use atomic rename for SDE file Steve Sakoman
2021-10-25 23:31 ` [OE-core][dunfell 4/4] selftest/reproducible: adjust exclusion list for dunfell Steve Sakoman
-- strict thread matches above, loose matches on Subject: below --
2022-05-25 14:36 [OE-core][dunfell 0/4] Patch review Steve Sakoman
2022-07-21 21:38 Steve Sakoman
2023-04-15 15:33 Steve Sakoman
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox