Philip Balister [Wed, 3 Jan 2024 11:20:07 +0000 (06:20 -0500)]
sanity.bbclass: Check for additional native perl modules.
Since we use the build systems native perl, we need to check that all
perl modules required for a build are installed. For a default Fedora 39
install, autoconf-native and libxcrypt both fail to build due to missing
perl modules. After taking careful notes, this commits adds checks for
File::Compare, File::Copy, open, and FindBin.
[YOCTO #14691]
Signed-off-by: Philip Balister <philip@balister.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Trevor Gamblin [Tue, 2 Jan 2024 16:52:58 +0000 (11:52 -0500)]
scripts/runqemu: fix regex escape sequences
When invoking runqemu with Python 3.12, the following warning is
encountered:
|SyntaxWarning: invalid escape sequence '\.'
This is because the interpreter scans the string before it is processed
by the regex module, and it interprets the backslash as part of an
escape sequence, but not a standard one. This will be registered as an
error rather than a warning in future Python versions. To avoid the it,
simply add an extra backslash so that Python doesn't misinterpret the
string, while the regex parser still sees an escaped '.' character.
Signed-off-by: Trevor Gamblin <tgamblin@baylibre.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Chen Qi [Tue, 2 Jan 2024 08:40:02 +0000 (16:40 +0800)]
devtool: use straight print in check-upgrade-status output
'devtool check-upgrade-status' is for reporting upgradable
status for recipes. The output should always be printed out. So
we should just use 'print' instead of 'logger.info' as the latter
will be suppressed if '-q' parameter is supplied to devtool.
Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Simone Weiß [Mon, 11 Dec 2023 16:45:53 +0000 (16:45 +0000)]
patchtest: Add test for deprecated CVE_CHECK_IGNORE
If a recipes was modified recommand the use of `CVE_STATUS` instead if
`CVE_CHECK_IGNORE` is used. This is a depreacted variable and will
result in a warning from the cve-check.class and should hence not be
used anymore. [YOCTO #15311]
Signed-off-by: Simone Weiß <simone.p.weiss@posteo.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Wang Mingyu [Fri, 29 Dec 2023 03:25:44 +0000 (11:25 +0800)]
aspell: upgrade 0.60.8 -> 0.60.8.1
CVE-2019-25051.patch
removed since it's included in 0.60.8.1
Changelog:
============
-Fix memory leak in suggestion code introduced in 0.60.8.
-Various documentation fixes.
-Fix various warnings when compiling with -Wall.
-Fix two buffer overflows found by Google's OSS-Fuzz.
-Other minor updates.
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Alex Kiernan [Fri, 29 Dec 2023 11:44:31 +0000 (11:44 +0000)]
rust: Upgrade 1.71.1 -> 1.72.0
Drop getrandom-open64.patch (merged upstream).
Revert https://github.com/rust-lang/cc-rs/commit/c4f414f449bb7cffba3bc923f277704d1d08a8ec
("Map source absolute paths to OUT_DIR as relative. (#684)") which
causes hashed versions of the build path to be used as part of the
filename of generated objects and hence reproducibility issues.
Wang Mingyu [Wed, 27 Dec 2023 13:11:43 +0000 (21:11 +0800)]
python3-lxml: upgrade 4.9.3 -> 4.9.4
Changelog:
===========
* LP#2046398: Inserting/replacing an ancestor into a node's children could loop indefinitely.
* LP#1980767, GH#379: "TreeBuilder.close()" could fail with a "TypeError" after
parsing incorrect input.
* LP#1522052: A file-system specific test is now optional and should no longer fail
on systems that don't support it.
* Wheels include zlib 1.3, libxml2 2.10.3 and libxslt 1.1.39
(zlib 1.2.12, libxml2 2.10.3 and libxslt 1.1.37 on Windows).
* Built with Cython 0.29.37.
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Changelog:
==========
-Corrected the interface for SimplePath to encompass the expectations of
locate_file and PackagePath.
-Fixed type annotations to allow strings.
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Wang Mingyu [Wed, 27 Dec 2023 13:07:30 +0000 (21:07 +0800)]
dhcpcd: upgrade 10.0.5 -> 10.0.6
0001-dhcpcd.8-Fix-conflict-error-when-enable-multilib.patch
0001-remove-INCLUDEDIR-to-prevent-build-issues.patch
refreshed for 10.0.6
Changelog:
==========
-privsep: Stop proxying stderr to console and fix some detachment issues
-non-privsep: Fix launcher hangup
-DHCP6: Allow the invalid interface name - to mean don't assign an address from a delegated prefix
-DHCP6: Load the configuration for the interface being activated from prefix delegation
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Changelog:
===========
- fix: Properly fix -Wpedantic warnings
- fix: Set ppoll timeout minimum to 1ms
#459)
- fix: Revert "ping: use random value for the identifier field" to use PID
again
- fix: Fix support for DSCP (Traffic Class, option -Q)
- fix: Fix the errno handling for strtod
- fix: Drop redundant setsockopt(IPV6_TCLASS) call
- fix: Fix overflow on negative -i
- fix: Fix sporadically missing DNS record on targets with multiple IP
addresses
- fix: Handle interval correctly in the first second after booting
- fix: Fix presentation of IPv6 addresses with no reverse DNS
- fix: Add missing whitespace in IPv6 output
- fix: Allow to localize help
- fix: Use print target when empty ai_canonname
- fix: Restore the MTU probing behavior")
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Saul Wold [Sun, 24 Dec 2023 01:12:07 +0000 (17:12 -0800)]
package.py: OEHasPackage: Add MLPREFIX to packagename
FIXES [YOCTO #12342]
When testing a Multilib image, the package manifest list contains
the fully qualified package name which includes the Multilib Prefix.
This patch adds the MLPREFIX to the package names that are passed
into the @OEHasPackage() decorator to ensure the set isdisjoint()
matches correctly.
Joshua Watt [Wed, 20 Dec 2023 18:02:35 +0000 (11:02 -0700)]
classes-global/insane: Look up all runtime providers for file-rdeps
Uses the new foreach_runtime_provider_pkgdata() API to look up all
possible runtime providers of a given dependency when resolving
file-rdeps. This allows the check to correctly handle RPROVIDES for
non-virtual dependencies
Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Robert Yang [Fri, 22 Dec 2023 07:31:49 +0000 (23:31 -0800)]
archiver.bbclass: Drop tarfile module to improve performance
* The tarfile module doesn't support xz options or environment varible
XZ_DEFAULTS, this makes do_ar_patched incrediblely slow when the file is
large, for example, chromium-x11 is about 3GB:
- "bitbake chromium-x11 -car_patched" hasn't been done after 3 hours on my
host, I checked the partial tar.xz file is only 1.5GB, so maybe more than 6
hours is required to complete the task.
- Now only less than 4 minutes is needed on the same host.
* Need add xz to HOSTTOOLS when archiver.bbclass is enabled and compression is xz.
Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
That's not really correct because the synchronization should happen before
interrupts are reenabled to ensure that a pending interrupt observes the
complete update of the opcodes.
It's not entirely clear whether the interrupt entry provides enough
serialization already, but moving the sync_core() invocation into interrupt
disabled region does no harm and is obviously correct.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
]
2/2 [
Author: Thomas Gleixner
Email: tglx@linutronix.de
Subject: x86/alternatives: Disable interrupts and sync when optimizing NOPs in place
Date: Thu, 7 Dec 2023 20:49:26 +0100
apply_alternatives() treats alternatives with the ALT_FLAG_NOT flag set
special as it optimizes the existing NOPs in place.
Unfortunately this happens with interrupts enabled and does not provide any
form of core synchronization.
So an interrupt hitting in the middle of the update and using the affected
code path will observe a half updated NOP and crash and burn. The following
3 NOP sequence was observed to expose this crash halfways reliably under
QEMU 32bit:
Where only #1 and #4 are true NOPs. The same problem exists for 64bit obviously.
Disable interrupts around this NOP optimization and invoke sync_core()
before reenabling them.
Fixes: 270a69c4485d ("x86/alternative: Support relocations in alternatives") Reported-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Cc: stable@vger.kernel.org Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
]
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Bruce Ashfield [Thu, 21 Dec 2023 14:25:06 +0000 (09:25 -0500)]
linux-yocto/6.1: update to v6.1.66
Updating to the latest korg -stable release that comprises
the following commits:
6c6a6c7e211c Linux 6.1.66 ea574927fc0b iomap: update ki_pos a little later in iomap_dio_complete adf0ecebf00a x86/apic/msi: Fix misconfigured non-maskable MSI quirk b3b839fb636b x86/xen: fix percpu vcpu_info allocation 00bc8b2cf44c xen: simplify evtchn_do_upcall() call maze 9311a0ff388a xen: Allow platform PCI interrupt to be shared 402b8323461c r8169: fix deadlock on RTL8125 in jumbo mtu mode 22ee0ddb2af7 r8169: disable ASPM in case of tx timeout 10ce6301009f drm/amd/display: Fix MPCC 1DLUT programming 8332cb6c6339 drm/amd/display: Fix the delta clamping for shaper LUT 442a4d4d0157 drm/amd/display: clean code-style issues in dcn30_set_mpc_shaper_3dlut 6cd736272165 drm/amd/display: Expand kernel doc for DC 8b01195be4a9 mmc: sdhci-sprd: Fix vqmmc not shutting down after the card was pulled 38d3216032c9 mmc: core: add helpers mmc_regulator_enable/disable_vqmmc 0e0a95166882 drm/amd/pm: fix a memleak in aldebaran_tables_init 59862b869275 iommu/vt-d: Make context clearing consistent with context mapping ee2c2247690c iommu/vt-d: Disable PCI ATS in legacy passthrough mode 8f39d297a26a iommu/vt-d: Add device_block_translation() helper 3787b3168b6c iommu/vt-d: Allocate pasid table in device probe path 681aeeda413d iommu/vt-d: Omit devTLB invalidation requests when TES=0 8aaed5b81d26 cpufreq: imx6q: Don't disable 792 Mhz OPP unnecessarily d3788f6e9d5a cpufreq: imx6q: don't warn for disabling a non-existing frequency 195514bda626 drm/amd/display: Guard against invalid RPTR/WPTR being set 395a63ca1ad2 drm/amd/display: Restore rptr/wptr for DMCUB as workaround 4ec4508db975 spi: Fix null dereference on suspend b57eebfb80e8 fbdev: stifb: Make the STI next font pointer a 32-bit signed offset 5bc8d96fedce PCI: qcom-ep: Add dedicated callback for writing to DBI2 registers 10c3d86fea04 octeontx2-af: Initialize 'cntr_val' to fix uninitialized symbol error 1c8f75ee9233 PCI: Lengthen reset delay for VideoPropulsion Torrent QN16e card 7545ddda9c98 KVM: x86: Fix lapic timer interrupt lost after loading a snapshot. 21feaf558f93 net: ravb: Keep reverse order of operations in ravb_remove() 8d04278ff48b net: ravb: Stop DMA in case of failures on ravb_open() 52b751686cbf net: ravb: Start TX queues after HW initialization succeeded e2db25d16cdd net: ravb: Make write access to CXR35 first before accessing other EMAC registers f5c649ce7975 net: ravb: Use pm_runtime_resume_and_get() 149b2fe12aca net: ravb: Check return value of reset_control_deassert() 7ed2e4c2d016 ravb: Fix races between ravb_tx_timeout_work() and net related ops 8b1d088be5f1 r8169: prevent potential deadlock in rtl8169_close 9c4ac2d98a48 octeontx2-pf: Restore TC ingress police rules when interface is up aef2d5b3e56e octeontx2-af: Install TC filter rules in hardware based on priority 662b88708408 octeontx2-pf: Fix adding mbox work queue entry when num_vfs > 64 5d5bcfb1ca8d net: stmmac: xgmac: Disable FPE MMC interrupts 334e6378c28c octeontx2-af: Fix possible buffer overflow c3e974e9c4bb selftests/net: mptcp: fix uninitialized variable warnings 12dd4c1bf3bd selftests/net: unix: fix unused variable compiler warning 4e999af7cf8a selftests/net: fix a char signedness issue 249ceee95caf selftests/net: ipsec: fix constant out of range e01249a83939 uapi: propagate __struct_group() attributes to the container union fd91b48f108d dpaa2-eth: increase the needed headroom to account for alignment 94445d958307 ipv4: igmp: fix refcnt uaf issue when receiving igmp query packet f89fef7710b2 usb: config: fix iteration issue in 'usb_get_bos_descriptor()' 9aff7c51b440 USB: core: Change configuration warnings to notices c89b34eef336 USB: xhci-plat: fix legacy PHY double init 307a6525c82a wifi: cfg80211: fix CQM for non-range use e8c1105c0ccc serial: sc16is7xx: add missing support for rs485 devicetree properties 55061c323075 serial: sc16is7xx: Put IOControl register into regmap_volatile a491c7be35ed auxdisplay: hd44780: move cursor home after clear display command 7f2116777541 Input: xpad - add HyperX Clutch Gladiate Support 7a105de27538 btrfs: fix 64bit compat send ioctl arguments not initializing version member 32912ee86931 btrfs: make error messages more clear when getting a chunk map 4fc9c61c02c0 btrfs: send: ensure send_fd is writable 86742a963fe6 btrfs: fix off-by-one when checking chunk map includes logical address 9fe447c485ed btrfs: ref-verify: fix memory leaks in btrfs_ref_tree_mod() 3f26d9b257ad btrfs: add dmesg output for first mount and last unmount of a filesystem 0ad7d59e7901 parisc: Mark altinstructions read-only and 32-bit aligned cf2ae6494d1f parisc: Ensure 32-bit alignment on parisc unwind section 2acfff573042 parisc: Mark jump_table naturally aligned 3793cd2ded7c parisc: Drop the HP-UX ENOSYM and EREMOTERELEASE error codes 79a1fdf4c212 parisc: Mark lock_aligned variables 16-byte aligned on SMP 41d7852a0a39 parisc: Use natural CPU alignment for bug_table c7c78a4aa60a parisc: Mark ex_table entries 32-bit aligned in uaccess.h 645e4b693b5e parisc: Mark ex_table entries 32-bit aligned in assembly.h c23b9eaca80c powerpc: Don't clobber f0/vs0 during fp|altivec register save e6bc42fae6b8 KVM: PPC: Book3S HV: Fix KVM_RUN clobbering FP/VEC user registers 59419ebcc0a6 iommu/vt-d: Add MTL to quirk list to skip TE disabling 0b48970ce102 bcache: revert replacing IS_ERR_OR_NULL with IS_ERR fc98ea2699c0 dma-buf: fix check in dma_resv_add_fence 4da1556996fa cpufreq/amd-pstate: Fix the return value of amd_pstate_fast_switch() 9d4c721c1866 powercap: DTPM: Fix unneeded conversions to micro-Watts a62ca58bb3cc nvme: check for valid nvme_identify_ns() before using it 82b5e603edd4 dm verity: don't perform FEC for failed readahead IO 6f5a9fc94bfc dm verity: initialize fec io before freeing it 7cfc3884a8bb drm/amd/display: fix ABM disablement 859a3a9f1e6b drm/amd/display: Update min Z8 residency time to 2100 for DCN314 6ef7f13c72df drm/amd/display: Use DRAM speed from validation for dummy p-state a67c18704706 drm/amd/display: Remove min_dst_y_next_start check for Z8 33ed892f0cde drm/amd/display: Include udelay when waiting for INBOX0 ACK c5cf436c8969 drm/amdgpu: Force order between a read and write to the same address c60884296300 drm/amd: Enable PCIe PME from D3 cebccbe80165 scsi: sd: Fix system start for ATA devices 181fd67dc5b9 scsi: Change SCSI device boolean fields to single bit flags 7d2faae81b57 dm-verity: align struct dm_verity_fec_io properly da9f55393f69 ALSA: hda/realtek: Add supported ALC257 for ChromeOS f4b130213497 ALSA: hda/realtek: Headset Mic VREF to 100% 65654af4c8a6 ALSA: hda: Disable power-save on KONTRON SinglePC ba911edc6c0c mmc: block: Be sure to wait while busy in CQE error recovery eab9ec644637 mmc: block: Do not lose cache flush during CQE error recovery e121f6d73d2e mmc: block: Retry commands in CQE error recovery 3a9a9c256f02 mmc: cqhci: Fix task clearing in CQE error recovery def67fd8efde mmc: cqhci: Warn of halt or task clear failure 2ebc8b758c7d mmc: cqhci: Increase recovery halt timeout d2fc10e262b5 mmc: sdhci-pci-gli: Disable LPM during initialization 87ceaa8521fc firewire: core: fix possible memory leak in create_units() db0b69e46da6 pinctrl: avoid reload of p state in list iteration 74820f7406a1 smb: client: report correct st_size for SMB and NFS symlinks 60fed17ca5b8 cifs: Fix FALLOC_FL_INSERT_RANGE by setting i_size after EOF moved 6406cce4b22d cifs: Fix FALLOC_FL_ZERO_RANGE by setting i_size if EOF moved
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Commit ade8a0f59844 ("drm/i915: Make all GPU resets atomic") added a
preempt disable section over the hardware reset callback to prepare the
driver for being able to reset from atomic contexts.
In retrospect I can see that the work item at a time was about removing
the struct mutex from the reset path. Code base also briefly entertained
the idea of doing the reset under stop_machine in order to serialize
userspace mmap and temporary glitch in the fence registers (see eb8d0f5af4ec ("drm/i915: Remove GPU reset dependence on struct_mutex"),
but that never materialized and was soon removed in 2caffbf11762
("drm/i915: Revoke mmaps and prevent access to fence registers across
reset") and replaced with a SRCU based solution.
As such, as far as I can see, today we still have a requirement that
resets must not sleep (invoked from submission tasklets), but no need to
support invoking them from a truly atomic context.
Given that the preemption section is problematic on RT kernels, since the
uncore lock becomes a sleeping lock and so is invalid in such section,
lets try and remove it. Potential downside is that our short waits on GPU
to complete the reset may get extended if CPU scheduling interferes, but
in practice that probably isn't a deal breaker.
In terms of mechanics, since the preemption disabled block is being
removed we just need to replace a few of the wait_for_atomic macros into
busy looping versions which will work (and not complain) when called from
non-atomic sections.
Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com> Cc: Chris Wilson <chris.p.wilson@intel.com> Cc: Paul Gortmaker <paul.gortmaker@windriver.com> Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de> Acked-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de> Link: https://lore.kernel.org/r/20230705093025.3689748-1-tvrtko.ursulin@linux.intel.com Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
[PG: backport from v6.4-rt ; minor context fixup caused by b7d70b8b06ed] Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: Clark Williams <williams@redhat.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
]
2/17 [
Author: Clark Williams
Email: clrkwllms@kernel.org
Subject: 'Linux 6.1.33-rt11'
Date: Mon, 12 Jun 2023 10:40:02 -0500
Signed-off-by: Clark Williams <clrkwllms@kernel.org> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
]
5/17 [
Author: Sebastian Andrzej Siewior
Email: bigeasy@linutronix.de
Subject: io-mapping: don't disable preempt on RT in io_mapping_map_atomic_wc().
Date: Fri, 10 Mar 2023 17:29:05 +0100
io_mapping_map_atomic_wc() disables preemption and pagefaults for
historical reasons. The conversion to io_mapping_map_local_wc(), which
only disables migration, cannot be done wholesale because quite some call
sites need to be updated to accommodate with the changed semantics.
On PREEMPT_RT enabled kernels the io_mapping_map_atomic_wc() semantics are
problematic due to the implicit disabling of preemption which makes it
impossible to acquire 'sleeping' spinlocks within the mapped atomic
sections.
PREEMPT_RT replaces the preempt_disable() with a migrate_disable() for
more than a decade. It could be argued that this is a justification to do
this unconditionally, but PREEMPT_RT covers only a limited number of
architectures and it disables some functionality which limits the coverage
further.
Limit the replacement to PREEMPT_RT for now. This is also done
kmap_atomic().
6/17 [
Author: Sebastian Andrzej Siewior
Email: bigeasy@linutronix.de
Subject: locking/rwbase: Mitigate indefinite writer starvation
Date: Tue, 21 Mar 2023 17:11:40 +0100
On PREEMPT_RT, rw_semaphore and rwlock_t locks are unfair to writers.
Readers can indefinitely acquire the lock unless the writer fully acquired
the lock, which might never happen if there is always a reader in the
critical section owning the lock.
Mel Gorman reported that since LTP-20220121 the dio_truncate test case
went from having 1 reader to having 16 readers and that number of readers
is sufficient to prevent the down_write ever succeeding while readers
exist. Eventually the test is killed after 30 minutes as a failure.
Mel proposed a timeout to limit how long a writer can be blocked until
the reader is forced into the slowpath.
Thomas argued that there is no added value by providing this timeout. From
a PREEMPT_RT point of view, there are no critical rw_semaphore or rwlock_t
locks left where the reader must be preferred.
Mitigate indefinite writer starvation by forcing the READER into the
slowpath once the WRITER attempts to acquire the lock.
Reported-by: Mel Gorman <mgorman@techsingularity.net> Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de> Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Ingo Molnar <mingo@kernel.org> Acked-by: Mel Gorman <mgorman@techsingularity.net> Link: https://lore.kernel.org/877cwbq4cq.ffs@tglx Link: https://lore.kernel.org/r/20230321161140.HMcQEhHb@linutronix.de Cc: Linus Torvalds <torvalds@linux-foundation.org>
(cherry picked from commit 286deb7ec03d941664ac3ffaff58814b454adf65) Signed-off-by: Clark Williams <clark.williams@gmail.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
]
7/17 [
Author: Paolo Abeni
Email: pabeni@redhat.com
Subject: revert: "softirq: Let ksoftirqd do its job"
Date: Mon, 8 May 2023 08:17:44 +0200
Due to the mentioned commit, when the ksoftirqd processes take charge
of softirq processing, the system can experience high latencies.
In the past a few workarounds have been implemented for specific
side-effects of the above:
commit 1ff688209e2e ("watchdog: core: make sure the watchdog_worker is not deferred")
commit 8d5755b3f77b ("watchdog: softdog: fire watchdog even if softirqs do not get to run")
commit 217f69743681 ("net: busy-poll: allow preemption in sk_busy_loop()")
commit 3c53776e29f8 ("Mark HI and TASKLET softirq synchronous")
but the latency problem still exists in real-life workloads, see the
link below.
The reverted commit intended to solve a live-lock scenario that can now
be addressed with the NAPI threaded mode, introduced with commit 29863d41bb6e ("net: implement threaded-able napi poll loop support"),
and nowadays in a pretty stable status.
While a complete solution to put softirq processing under nice resource
control would be preferable, that has proven to be a very hard task. In
the short term, remove the main pain point, and also simplify a bit the
current softirq implementation.
Note that this change also reverts commit 3c53776e29f8 ("Mark HI and
TASKLET softirq synchronous") and commit 1342d8080f61 ("softirq: Don't
skip softirq execution when softirq thread is parking"), which are
direct follow-ups of the feature commit. A single change is preferred to
avoid known bad intermediate states introduced by a patch series
reverting them individually.
There is an explicit wait-type violation in debug_object_fill_pool()
for PREEMPT_RT=n kernels which allows them to more easily fill the
object pool and reduce the chance of allocation failures.
Lockdep's wait-type checks are designed to check the PREEMPT_RT
locking rules even for PREEMPT_RT=n kernels and object to this, so
create a lockdep annotation to allow this to stand.
Specifically, create a 'lock' type that overrides the inner wait-type
while it is held -- allowing one to temporarily raise it, such that
the violation is hidden.
9/17 [
Author: Wander Lairson Costa
Email: wander@redhat.com
Subject: sched: avoid false lockdep splat in put_task_struct()
Date: Wed, 14 Jun 2023 09:23:22 -0300
In put_task_struct(), a spin_lock is indirectly acquired under the kernel
stock. When running the kernel in real-time (RT) configuration, the
operation is dispatched to a preemptible context call to ensure
guaranteed preemption. However, if PROVE_RAW_LOCK_NESTING is enabled
and __put_task_struct() is called while holding a raw_spinlock, lockdep
incorrectly reports an "Invalid lock context" in the stock kernel.
This false splat occurs because lockdep is unaware of the different
route taken under RT. To address this issue, override the inner wait
type to prevent the false lockdep splat.
Signed-off-by: Wander Lairson Costa <wander@redhat.com> Suggested-by: Oleg Nesterov <oleg@redhat.com> Suggested-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de> Suggested-by: Peter Zijlstra <peterz@infradead.org> Cc: Steven Rostedt <rostedt@goodmis.org> Cc: Luis Goncalves <lgoncalv@redhat.com> Link: https://lore.kernel.org/r/20230614122323.37957-3-wander@redhat.com Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
(cherry picked from commit a5e446e728e89d5f5c5e427cc919bc7813c64c28) Signed-off-by: Clark Williams <clark.williams@gmail.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
]
10/17 [
Author: Sebastian Andrzej Siewior
Email: bigeasy@linutronix.de
Subject: mm/page_alloc: Use write_seqlock_irqsave() instead write_seqlock() + local_irq_save().
Date: Fri, 23 Jun 2023 22:15:17 +0200
__build_all_zonelists() acquires zonelist_update_seq by first disabling
interrupts via local_irq_save() and then acquiring the seqlock with
write_seqlock(). This is troublesome and leads to problems on
PREEMPT_RT. The problem is that the inner spinlock_t becomes a sleeping
lock on PREEMPT_RT and must not be acquired with disabled interrupts.
The API provides write_seqlock_irqsave() which does the right thing in
one step.
printk_deferred_enter() has to be invoked in non-migrate-able context to
ensure that deferred printing is enabled and disabled on the same CPU.
This is the case after zonelist_update_seq has been acquired.
There was discussion on the first submission that the order should be:
local_irq_disable();
printk_deferred_enter();
write_seqlock();
to avoid pitfalls like having an unaccounted printk() coming from
write_seqlock_irqsave() before printk_deferred_enter() is invoked. The
only origin of such a printk() can be a lockdep splat because the
lockdep annotation happens after the sequence count is incremented.
This is exceptional and subject to change.
It was also pointed that PREEMPT_RT can be affected by the printk
problem since its write_seqlock_irqsave() does not really disable
interrupts. This isn't the case because PREEMPT_RT's printk
implementation differs from the mainline implementation in two important
aspects:
- Printing happens in a dedicated threads and not at during the
invocation of printk().
- In emergency cases where synchronous printing is used, a different
driver is used which does not use tty_port::lock.
Acquire zonelist_update_seq with write_seqlock_irqsave() and then defer
printk output.
Fixes: 1007843a91909 ("mm/page_alloc: fix potential deadlock on zonelist_update_seq seqlock") Acked-by: Michal Hocko <mhocko@suse.com> Reviewed-by: David Hildenbrand <david@redhat.com> Link: https://lore.kernel.org/r/20230623201517.yw286Knb@linutronix.de Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
(cherry picked from commit 4d1139baae8bc4fff3728d1d204bdb04c13dbe10) Signed-off-by: Clark Williams <clark.williams@gmail.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
]
11/17 [
Author: Sebastian Andrzej Siewior
Email: bigeasy@linutronix.de
Subject: bpf: Remove in_atomic() from bpf_link_put().
Date: Wed, 14 Jun 2023 10:34:30 +0200
bpf_free_inode() is invoked as a RCU callback. Usually RCU callbacks are
invoked within softirq context. By setting rcutree.use_softirq=0 boot
option the RCU callbacks will be invoked in a per-CPU kthread with
bottom halves disabled which implies a RCU read section.
On PREEMPT_RT the context remains fully preemptible. The RCU read
section however does not allow schedule() invocation. The latter happens
in mutex_lock() performed by bpf_trampoline_unlink_prog() originated
from bpf_link_put().
It was pointed out that the bpf_link_put() invocation should not be
delayed if originated from close(). It was also pointed out that other
invocations from within a syscall should also avoid the workqueue.
Everyone else should use workqueue by default to remain safe in the
future (while auditing the code, every caller was preemptible except for
the RCU case).
Let bpf_link_put() use the worker unconditionally. Add
bpf_link_put_direct() which will directly free the resources and is used
by close() and from within __sys_bpf().
12/17 [
Author: Thomas Gleixner
Email: tglx@linutronix.de
Subject: posix-timers: Ensure timer ID search-loop limit is valid
Date: Thu, 1 Jun 2023 20:58:47 +0200
posix_timer_add() tries to allocate a posix timer ID by starting from the
cached ID which was stored by the last successful allocation.
This is done in a loop searching the ID space for a free slot one by
one. The loop has to terminate when the search wrapped around to the
starting point.
But that's racy vs. establishing the starting point. That is read out
lockless, which leads to the following problem:
So CPU1 can observe a negative start value, i.e. -1, and the loop break
never happens because the condition can never be true:
if (sig->posix_timer_id == start)
break;
While this is unlikely to ever turn into an endless loop as the ID space is
huge (INT_MAX), the racy read of the start value caught the attention of
KCSAN and Dmitry unearthed that incorrectness.
Rewrite it so that all id operations are under the hash lock.
Reported-by: syzbot+5c54bd3eb218bb595aa9@syzkaller.appspotmail.com Reported-by: Dmitry Vyukov <dvyukov@google.com> Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Reviewed-by: Frederic Weisbecker <frederic@kernel.org> Link: https://lore.kernel.org/r/87bkhzdn6g.ffs@tglx
(cherry picked from commit 8ce8849dd1e78dadcee0ec9acbd259d239b7069f) Signed-off-by: Clark Williams <clark.williams@gmail.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
]
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Ludovic Jozeau [Thu, 21 Dec 2023 14:24:21 +0000 (15:24 +0100)]
image-live.bbclass: LIVE_ROOTFS_TYPE support compression
The task for fstypes with compression is the same as the task for the
uncompressed fstypes, e.g. when adding tar.xz to `IMAGE_FSTYPES`, it will
be included into the do_image_tar task and not creating a separate
do_image_tar.xz task.
This commit fixes `LIVE_ROOTFS_TYPE` with compressed fstypes by
depending on the actual task instead of the non-existent
do_image_<fstype>.<compression> task.
Ross Burton [Thu, 21 Dec 2023 17:01:58 +0000 (17:01 +0000)]
nativesdk: don't unset MACHINE_FEATURES, let machine-sdk/ set it
There is actually a use for nativesdk MACHINE_FEATURES; for example
qemu-usermode being supported, as this is needed to build profile-guided
optimised code.
We shouldn't use the target MACHINE_FEATURES for this because the target
and the SDK can be entirely different, so instead set the
MACHINE_FEATURES in nativesdk.bbclass to SDK_MACHINE_FEATURES (which
defaults to "") and let the conf/machine-sdk/*.conf files set that as
appropriate.
Ross Burton [Thu, 21 Dec 2023 17:01:57 +0000 (17:01 +0000)]
nativesdk: ensure features don't get backfilled
nativesdk aims to run in a slightly different environment than the
target build, so it resets MACHINE_FEATURES and filters DISTRO_FEATURES
with DISTRO_FEATURES_NATIVESDK.
However, feature backfill happens _after_ these operations:
$ bitbake-getvar -r nativesdk-glib-2.0 MACHINE_FEATURES
#
# $MACHINE_FEATURES [5 operations]
# set /home/ross/Yocto/poky/meta/conf/machine/include/qemu.inc:14
# "alsa bluetooth usbgadget screen vfat"
# set /home/ross/Yocto/poky/meta/conf/documentation.conf:284
# [doc] "Specifies the list of hardware features the MACHINE supports."
# set? /home/ross/Yocto/poky/meta/conf/bitbake.conf:893
# ""
# set /home/ross/Yocto/poky/meta/classes-recipe/nativesdk.bbclass:18
# ""
# append utils.py:132 [features_backfill]
# " rtc qemu-usermode"
# pre-expansion value:
# " rtc qemu-usermode"
MACHINE_FEATURES=" rtc qemu-usermode"
This is not intentional nor desired as the target machine features are
unrelated to the nativesdk environment.
Changqing Li [Thu, 21 Dec 2023 05:44:15 +0000 (13:44 +0800)]
man-pages: remove conflict pages
Remove the pages which libxcrypt and shadow already have to avoid
following conflicts during install man-pages and libxcrypt/shadow at the
same time.
Error: Transaction test error:
file /usr/share/man/man3/crypt.3 from install of
libcrypt-doc-4.4.33-r0.x86_64 conflicts with file from package
man-pages-6.04-r0.x86_64
Signed-off-by: Changqing Li <changqing.li@windriver.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Notes:
* This version breaks API and bumps the SONAME of libappstream!
Applications using AppStream will have to be ported to the new API.
The 1.0 release is coinstallable with the stable 0.16.x series.
Features:
* Autoformat C and C++ sources
* Remove all deprecated symbols
* Drop support for many deprecated AppStream XML features
* Use GPtrArray to expose keywords list
* Add length argument to raw metadata parsing functions
* Add component array container class
* Remove named values for display_length relations
* Make AsPool only accept/return component boxes
* Port all API away from per-entity locale overrides
* Reduce appstream.conf to its essentials, make it work on stateless systems
* Hide search engine details from public API
* Wrap release entries in AsReleaseList container class
* Make AsMetadata handle AsReleaseList objects
* Refactor is_satisfied result into new RelationCheckResult class
* Add a method to check all relations of a component and get the result
* Add algorithm to score compatibility with a system, add chassis templates
* ascli: Add new check-syscompat command to check chassis compatibility
* Implement environment property for component screenshots
* Autogenerate translatable DE and gui-environment-style C arrays
* Expose more advanced markup conversion function, update function names
* Allow BLAKE3 and SHA512 checksums for release artifacts
* Stop supporting mailto: URLs in <url/> tags
* validator: Improve API and simplify it
* validator: Parse XML in pedantic mode when validating
* validator: Check screenshot environment property
* validator: Only apply summary-has-dot-suffix check to untranslated strings
* compose: Allow creating metadata with complete URLs and no base URL
* spdx: Add API to retrieve a translated license name from an SPDX ID
* qt: Switch to building with Qt6
* qt: Make it possible to iterate ComponentBox
* qt: Implement AppStream::ComponentBox::erase
* qt: Allow concatenating two ComponentBoxes
* qt: Allow loading Pool asynchronously
* qt: Use ComponentBox/Releases in Qt bindings as well
* qt: Add support for the new API to check relation satisfaction
* qt: Maintenance and namespace fixes, use cPtr() to get C pointers everywhere
* bundle: Add linglong as a new type of bundle
* Add GUI environment IDs for macOS and Microsoft Windows
* validator: Check if Release Description is inside description tag
* validator: Add validation for content_rating
* Add support for building on Win32
* win32: change some file/path-related code for portability
* Implement the developer element for unique developer IDs
* Implement scaling factor for screenshots
* component-box: Allow removal of components by-index
* Implement support for external references and citations
* Implement usertags for release data as well
* Move ValueFlags to the context, instead of tieing them to components
* pool: search: Add additional weight for exact substring matches on names
* sysinfo: Add memory size detection support for macOS
* Add support for Zstd for on-disk data compression
* utils: Make tar unpacker independent of zstd binary presence
* Drop Python2 provided tag support
* data: Add ‘Endless’ to the list of desktops
* Add NetBSD support
Specification:
* Drop (most) deprecated information
* docs: Clarify environment-based screenshot ordering
* Add new 'snapshot' release kind
* docs: Build all API documentation with gi-docgen
* spec: Document the new "developer" element
* spec: Document the "reference" tag for registry references
* docs: Add example of YAML for references elements
* Allow hyphens in the last segment of a component-ID
* docs: Drop outdated information from l10n quickstart guide
Bugfixes:
* meson: check for docbook xsl stylesheets
* Fix tweaking of appstream.pc when building as subproject
* Fix crash in asc_l10n_search_translations_qt()
* qt: Make Qt6 dependency a system dependency.
* meson: do not rely on an exe wrapper
* meson: do not -I/usr/include when !stemmer
* meson: Prevent building attempts with MSVC
* meson: Use an SPDX license indentifier in project(license:)
* Add meson overrides
* compose: Set lower-cased CID for synthesized components again
* compose: Set lower-cased CID in desktop-entry parse function
* compose: Honor prefix in font search
* compose: Select the correct default icon glyphs for fonts
* Don't crash when non-YAML documents are read as YAML
* Do not override default-priority when parsing multiple metadata files
* Ensure stemmer always has the right locale and token-search works
* Require a more recent libxmlb to avoid crashes
* Rename component get_releases to indicate that releases may not be loaded from the web
* Prevent string-id validation functions from matching source comments
* Don't define _POSIX_C_SOURCE when building for NetBSD
Miscellaneous:
* Explain metainfo-ancient error in more detail
* Make sed invocation more portable
* Add FreeBSD CI
* Allow variable shadowing in C++ code
* Drop the catchall as-enums unit
* vapi: Drop unneeded metadata
* Make AsMetadata return a component box for multiple components
* apt: Make item descriptions more human-friendly
* Streamline README
Contributors:
Aleix Pol, Alessandro Astone, Alexander Wilms, Dan Yeaw, Daniel Drake,
Gary Wang, Gleb Popov, Ingo Klöcker, JakobDev, Jeremy Whiting, Kai Uwe Broulik,
Marc-André Lureau, Matthias Klumpp, Philip Withnall, Tao Zuhong,
Thomas Klausner, Tristan Partin, and thanks to all translators mentioned
in the respective l10n files!
Version 0.16.4
~~~~~~~~~~~~~~
Released: 2023-11-10
Features:
* Allow hyphens in the last segment of a component-ID
* Implement the developer element for unique developer IDs
* Add meson overrides
Bugfixes:
* meson: Prevent building attempts with MSVC
* meson: Avoid potentially bad sed backup filename when fixing .pc file
Miscellaneous:
* Make sed invocation more portable
Markus Volk [Fri, 15 Dec 2023 17:30:55 +0000 (18:30 +0100)]
libadwaita: update 1.4.0 -> 1.4.2
=============
Version 1.4.2
=============
- Really fix build with libappstream 1.0
=============
Version 1.4.1
=============
- Fix build with MSVC
- Fix build with libappstream 1.0
- AdwCarousel
- Fix carousel scroll behavior with page reordering
- AdwComboRow
- Fix focus when opening the popover
- Set the correct state on the selected checkmark
- AdwNavigationView
- Fix a warning message
- AdwTabOverview
- Allow child focus on out animations
- AdwTabView
- Keep view alive during ::page-detached
- Fix crashes when using :pages
- Docs
- Fix erroneous <child> use in breakpoints migration guide
- Translation updates
- Russian
- Serbian
Signed-off-by: Markus Volk <f_l_k@t-online.de> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Joshua Watt [Wed, 20 Dec 2023 18:01:02 +0000 (11:01 -0700)]
lib/packagedata.py: Fix broken symlinks for providers with a '/'
If a package had a provider with a '/' in it (e.g. "/bin/sh",
"/bin/bash", etc.), the generated symlinks were broken due to being at a
hard coded depth. Use oe.path.relsymlink() instead to make a correct
relative symbolic link
Wang Mingyu [Tue, 19 Dec 2023 07:39:14 +0000 (15:39 +0800)]
diffoscope: upgrade 252 -> 253
Changelog:
============
* Improve DOS/MBR extraction by adding support for 7z.
* Process objdump symbol comment filter inputs as the Python "bytes" type
(and not str).
* Add a missing RequiredToolNotFound import.
* Update copyright years.
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Joshua Watt [Wed, 20 Dec 2023 21:31:19 +0000 (14:31 -0700)]
ipk: Switch to using zstd compression
Converts IPK package generation to use zstd instead of xz. zstd has a
much larger compression/speed tradeoff range allowing users to choose
what suits them best, and fast decompression speeds. It also continues
to support parallel compression as xz did.
A new variable called ZSTD_DEFAULTS is provided to set the defaults for
places that want to use zstd for compression; the zst image conversion
command is also modified to use this.
Finally, in order for this to function properly, opkg must include zstd
support, so it is enabled all the time with no PACKAGECONFIG to turn it
off.
Tim Orling [Sun, 17 Dec 2023 22:58:49 +0000 (14:58 -0800)]
oeqa: add runtime 'maturin develop' test case
Similar to the sdk test case, build the "guessing-game" example from
https://maturin.rs/tutorial
This test case:
* creates a python3 venv
* echoes "nameserver 8.8.8.8" to /etc/resolv.conf as we need to have
functional DNS to fetch the crates on target
* fetches crates, builds guessing-game crate and wheel
Wang Mingyu [Tue, 19 Dec 2023 10:16:43 +0000 (18:16 +0800)]
ttyrun: upgrade 2.29.0 -> 2.30.0
Changelog:
===========
- lspai: Tool to display PAI counter sets
- s390-tools: Provide a ShellCheck configuration
- cpumf/pai: Add command line option for realtime scheduling
- dbginfo.sh: enhance ethtool collection for ROCE
- libutil/util_lockfile: add routine to return owning pid of file lock
- lszcrypt: Improve lszcrypt output on SE guests
- rust: Use a single workspace for all rust tools
- zdev: limit the derivation of ZDEV_SITE_ID
- zdump/df_s390: Update 'zgetdump -i' output with zlib info
- zdump/dfi_s390: Support reading compressed s390_ext dumps
- zipl/boot: Integrate zlib compression to single volume DASD dumper
- zipl/boot: compile the bootloaders only if HOST_ARCH is s390x
- zipl: Add --no-compress option to zipl command
- zkey: Also check for deconfigured and check-stopped cards
- ap_tools/ap-check: handle get-attributes between pre and post event
- libutil: fix util_file_read_*() using wrong format specifiers
- rust/pv: fix Invalid write of size 1
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Wang Mingyu [Tue, 19 Dec 2023 09:58:58 +0000 (17:58 +0800)]
python3-psutil: upgrade 5.9.6 -> 5.9.7
Changelog:
===========
-enforce Ruff rule raw-string-in-exception, which helps providing clearer
tracebacks when exceptions are raised by psutil.
-[PyPy]: psutil did not compile on PyPy due to missing
PyErr_SetExcFromWindowsErrWithFilenameObject cPython API.
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Changelog:
============
-Removed EntryPoint access by numeric index
-Added Distribution.origin supplying the direct_url.json in a SimpleNamespace.
-Added diagnose script.
-Added EntryPoints.__repr__
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Wang Mingyu [Tue, 19 Dec 2023 09:40:58 +0000 (17:40 +0800)]
python3-hatchling: upgrade 1.18.0 -> 1.20.0
Changelog:
==========
-Add bypass-selection option to the wheel build target to allow for empty
(metadata-only) wheels
-Fix regression in 1.19.1 that allowed exclude to count toward inclusion
selection, thus bypassing the default inclusion selection heuristics
-Fix writing optional dependency core metadata in situations where there
are multiple environment markers
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Wang Mingyu [Tue, 19 Dec 2023 09:40:22 +0000 (17:40 +0800)]
python3-dbusmock: upgrade 0.29.1 -> 0.30.0
Changelog:
============
-api: Add pytest support and helpers
-api: Factor the server spawning into a new SpawnedMock object
-doc: generate sphinx docs on https://martinpitt.github.io/python-dbusmock/
-cli: Add support for running custom commands on the mock environment
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Wang Mingyu [Tue, 19 Dec 2023 09:39:06 +0000 (17:39 +0800)]
python3-babel: upgrade 2.13.1 -> 2.14.0
Changelog:
============
-CLDR/Numbers: Add support of local numbering systems for number symbols
-CLDR: Upgrade to CLDR 43
-Frontend: Allow last_translator to be passed as an option to extract_message
-Frontend: Decouple pybabel CLI frontend from distutils/setuptools
-Numbers: Improve parsing of malformed decimals
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Wang Mingyu [Tue, 19 Dec 2023 09:36:04 +0000 (17:36 +0800)]
sysstat: upgrade 12.7.4 -> 12.7.5
Changelog:
===========
* [Quan quan Cao]: sar/sadc: Add new metrics pgprom/s and pgdem/s.
* sar: Remove %vmeff metric.
* sadf: Update various output formats to take into account metrics
that have been added or removed.
* Update DTD and XSD documents.
* Update sar manual page.
* sar: Add a cron entry and a new systemd service and timer to rotate
daily data file at midnight.
* Option -V with sysstat commands also displays environment contents.
* [Sam Morris]: Use correct encoding to produce hyphen-minus when
rendering man pages.
* Add UMASK variable definition to sysstat(5) manual page.
* Update non regression tests.
* Add --getenv option to commands that didn't have it.
* Update README file for Debian-based distros.
* Update link to my personal web page in README and manual pages.
* NLS: Translations updated.
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Wang Mingyu [Tue, 19 Dec 2023 09:33:46 +0000 (17:33 +0800)]
kea: upgrade 2.4.0 -> 2.4.1
Changelog:
=========
-The library version numbers have been bumped up for the Kea 2.4.1 stable release.
-Fixed interface redetection which had stopped working since Kea 2.3.6.
-Fixed a race condition in free lease queue allocator
fix-multilib-conflict.patch
fix_pid_keactrl.patch
refreshed for 2.4.
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Wang Mingyu [Tue, 19 Dec 2023 09:33:12 +0000 (17:33 +0800)]
gpgme: upgrade 1.23.1 -> 1.23.2
Changelog:
============
* Preserve more specific existing failure code.
* qt: Start dirmngr with gpgconf to avoid multiple instances.
* qt: On Windows, use UTF-8 when logging the error text.
* qt: Remove left-over partial files more persistently.
* qt: Use a temporary file name when creating signed or encrypted
archives.
* qt: Build Qt 6 bindings with -fPIC if requested or Qt 6 was built with
this flag.
0001-autogen.sh-remove-unknown-in-version.patch0001-pkgconfig.patch
0001-pkgconfig.patch
0001-use-closefrom-on-linux-and-glibc-2.34.patch
0003-Correctly-install-python-modules.patch
0005-gpgme-config-skip-all-lib-or-usr-lib-directories-in-.patch
0006-fix-build-path-issue.patch
0008-do-not-auto-check-var-PYTHON.patch
refreshed for 1.23.2
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Wang Mingyu [Tue, 19 Dec 2023 09:28:20 +0000 (17:28 +0800)]
libatomic-ops: upgrade 7.8.0 -> 7.8.2
Changelog:
=========
* Eliminate 'atomic_thread_fence is unsupported with tsan' gcc-11 warning
* Eliminate 'comparing signed/unsigned values' lcc warning in add_chunk_as
* Fix 'undefined reference to AO_pt_lock' if configure is using clang-16
* Fix 'undefined reference to __atomic_load/store/cas_16' Mingw64-gcc error
* Fix 'undefined reference' linker errors if shared build on OpenBSD (CMake)
* Fix get_chunk for case of mmap area is located before AO_initial_heap
* Fix typo in AO_HAVE_compare_and_swap_double name in atomic_ops_stack.h
* Fix typo in comment of run_one_test of test_stack
* Fix typos in comments of atomic_ops_malloc.c and atomic_ops_stack.c/h
* Update cmake minimum required version to 3.5
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Lee Chee Yang [Fri, 15 Dec 2023 09:40:21 +0000 (17:40 +0800)]
curl: update to 8.5.0
update include fix for CVE-2023-46218.
skip test 1477 which check that libcurl-errors.3 and the public
header files have the same set of error codes.
Notes: This test is not included in the source tarball.
https://github.com/curl/curl/issues/12462
Release Notes:
curl and libcurl 8.5.0
Public curl releases: 253
Command line options: 258
curl_easy_setopt() options: 303
Public functions in libcurl: 93
Contributors: 3039
This release includes the following changes:
o gnutls: support CURLSSLOPT_NATIVE_CA [31]
o HTTP3: ngtcp2 builds are no longer experimental [77]
This release includes the following bugfixes:
o appveyor: make VS2008-built curl tool runnable [93]
o asyn-thread: use pipe instead of socketpair for IPC when available [4]
o autotools: accept linker flags via `CURL_LDFLAGS_{LIB,BIN}` [128]
o autotools: avoid passing `LDFLAGS` twice to libcurl [127]
o autotools: delete LCC compiler support bits [137]
o autotools: fix/improve gcc and Apple clang version detection [136]
o autotools: stop setting `-std=gnu89` with `--enable-warnings` [135]
o autotools: update references to deleted `crypt-auth` option [46]
o BINDINGS: add V binding [54]
o build: add `src/.checksrc` to source tarball [1]
o build: add more picky warnings and fix them [172]
o build: always revert `#pragma GCC diagnostic` after use [143]
o build: delete `HAVE_STDINT_H` and `HAVE_INTTYPES_H` [107]
o build: delete support bits for obsolete Windows compilers [106]
o build: fix 'threadsafe' feature detection for older gcc [19]
o build: fix builds that disable protocols but not digest auth [174]
o build: fix compiler warning with auths disabled [85]
o build: fix libssh2 + `CURL_DISABLE_DIGEST_AUTH` + `CURL_DISABLE_AWS` [120]
o build: picky warning updates [125]
o build: require Windows XP or newer [86]
o cfilter: provide call to tell connection to forget a socket [65]
o checksrc.pl: support #line instructions
o CI: add autotools, out-of-tree, debug build to distro check job [14]
o CI: ignore test 286 on Appveyor gcc 9 build [6]
o cmake: add `CURL_DISABLE_BINDLOCAL` option [146]
o cmake: add test for `DISABLE` options, add `CURL_DISABLE_HEADERS_API` [138]
o cmake: dedupe Windows system libs [114]
o cmake: fix `HAVE_H_ERRNO_ASSIGNABLE` detection [2]
o cmake: fix CURL_DISABLE_GETOPTIONS [12]
o cmake: fix multiple include of CURL package [96]
o cmake: fix OpenSSL quic detection in quiche builds [56]
o cmake: option to disable install & drop `curlu` target when unused [72]
o cmake: pre-fill rest of detection values for Windows [50]
o cmake: replace `check_library_exists_concat()` [23]
o cmake: speed up threads setup for Windows [68]
o cmake: speed up zstd detection [69]
o config-win32: set `HAVE_SNPRINTF` for mingw-w64 [123]
o configure: better --disable-http [80]
o configure: check for the fseeko declaration too [55]
o conncache: use the closure handle when disconnecting surplus connections [173]
o content_encoding: make Curl_all_content_encodings allocless [101]
o cookie: lowercase the domain names before PSL checks [160]
o curl.h: delete Symbian OS references [162]
o curl.h: on FreeBSD include sys/param.h instead of osreldate.h [21]
o curl.rc: switch out the copyright symbol for plain ASCII [167]
o curl: improved IPFS and IPNS URL support [87]
o curl_easy_duphandle.3: clarify how HSTS and alt-svc are duped [99]
o Curl_http_body: cleanup properly when Curl_getformdata errors [152]
o curl_setup: disallow Windows IPv6 builds missing getaddrinfo [57]
o curl_sspi: support more revocation error names in error messages [95]
o CURLINFO_PRETRANSFER_TIME_T.3: fix time explanation [181]
o CURLMOPT_MAX_CONCURRENT_STREAMS: make sure the set value is within range [165]
o CURLOPT_CAINFO_BLOB.3: explain what CURL_BLOB_COPY does [113]
o CURLOPT_WRITEFUNCTION.3: clarify libcurl returns for CURL_WRITEFUNC_ERROR [45]
o CURPOST_POSTFIELDS.3: add CURLOPT_COPYPOSTFIELDS in SEE ALSO
o docs/example/keepalive.c: show TCP keep-alive options [73]
o docs/example/localport.c: show off CURLOPT_LOCALPORT [83]
o docs/examples/interface.c: show CURLOPT_INTERFACE use [84]
o docs/libcurl: fix three minor man page format mistakes [26]
o docs/libcurl: SYNSOPSIS cleanup [150]
o docs: add supported version for the json write-out [92]
o docs: clarify that curl passes on input unfiltered [47]
o docs: fix function typo in curl_easy_option_next.3 [36]
o docs: KNOWN_BUGS cleanup
o docs: make all examples in all libcurl man pages compile [175]
o docs: preserve the modification date when copying the prebuilt man page [89]
o docs: remove bold from some man page SYNOPSIS sections [90]
o docs: use SOURCE_DATE_EPOCH for generated manpages [16]
o doh: provide better return code for responses w/o addresses [133]
o doh: use PIPEWAIT when HTTP/2 is attempted [63]
o duphandle: also free 'outcurl->cookies' in error path [122]
o duphandle: make dupset() not return with pointers to old alloced data [109]
o duphandle: use strdup to clone *COPYPOSTFIELDS if size is not set [132]
o easy: in duphandle, init the cookies for the new handle [131]
o easy: remove duplicate wolfSSH init call [37]
o easy_lock: add a pthread_mutex_t fallback [13]
o examples/rtsp-options.c: add [157]
o fopen: create new file using old file's mode [153]
o fopen: create short(er) temporary file name [155]
o getenv: PlayStation doesn't have getenv() [41]
o GHA: move mod_h2 version in CI to v2.0.25 [43]
o hostip: show the list of IPs when resolving is done [35]
o hostip: silence compiler warning `-Wparentheses-equality` [62]
o hsts: skip single-dot hostname [67]
o HTTP/2, HTTP/3: handle detach of onoing transfers [134]
o http2: header conversion tightening [33]
o http2: provide an error callback and failf the message [53]
o http2: safer invocation of populate_binsettings [8]
o http: allow longer HTTP/2 request method names [112]
o http: avoid Expect: 100-continue if Upgrade: is used [15]
o http: consider resume with CURLOPT_FAILONERRROR and 416 to be fine [81]
o http: fix `-Wunused-parameter` with no auth and no proxy [149]
o http: fix `-Wunused-variable` compiler warning [115]
o http: fix empty-body warning [76]
o http_aws_sigv4: canonicalise valueless query params [88]
o hyper: temporarily remove HTTP/2 support [139]
o INSTALL: update list of ports and CPU archs
o IPFS: fix IPFS_PATH and file parsing [119]
o keylog: disable if unused [145]
o lib: add and use Curl_strndup() [97]
o lib: apache style infof and trace macros/functions [71]
o lib: fix gcc warning in printf call [7]
o libcurl-errors.3: sync with current public headers [156]
o libcurl-thread.3: simplify the TLS section [79]
o Makefile.am: drop vc10, vc11 and vc12 projects from dist [103]
o Makefile.mk: fix `-rtmp` option for non-Windows
o mime: store "form escape" as a single bit [170]
o misc: fix -Walloc-size warnings [118]
o msh3: error when built with CURL_DISABLE_SOCKETPAIR set [61]
o multi: during ratelimit multi_getsock should return no sockets [182]
o multi: use pipe instead of socketpair to *wakeup() [18]
o ngtcp2: fix races in stream handling [178]
o ngtcp2: ignore errors on unknown streams [158]
o ntlm_wb: use pipe instead of socketpair when possible [44]
o openldap: move the alloc of ldapconninfo to *connect() [29]
o openldap: set the callback argument in oldap_do [30]
o openssl: avoid BN_num_bits() NULL pointer derefs [9]
o openssl: fix building with v3 `no-deprecated` + add CI test [161]
o openssl: fix infof() to avoid compiler warning for %s with null [70]
o openssl: identify the "quictls" backend correctly [82]
o openssl: include SIG and KEM algorithms in verbose [52]
o openssl: make CURLSSLOPT_NATIVE_CA import Windows intermediate CAs [58]
o openssl: two multi pointer checks should probably rather be asserts [91]
o openssl: when a session-ID is reused, skip OCSP stapling [142]
o page-footer: clarify exit code 25 [51]
o projects: add VC14.20 project files [104]
o pytest: use lower count in repeat tests [98]
o quic: make eyeballers connect retries stop at weird replies [140]
o quic: manage connection idle timeouts [5]
o quiche: use quiche_conn_peer_transport_params() [116]
o rand: fix build error with autotools + LibreSSL [111]
o resolve.d: drop a multi use-sentence [100]
o RTSP: improved RTP parser [32]
o rustls: implement connect_blocking [154]
o sasl: fix `-Wunused-function` compiler warning [124]
o schannel: add CA cache support for files and memory blobs [121]
o setopt: check CURLOPT_TFTP_BLKSIZE range on set [171]
o setopt: remove outdated cookie comment [64]
o setopt: remove superfluous use of ternary expressions [169]
o socks: better buffer size checks for socks4a user and hostname [20]
o socks: make SOCKS5 use the CURLOPT_IPRESOLVE choice [38]
o symbols-in-versions: the CLOSEPOLICY options are deprecated
o test1683: remove commented-out check alternatives
o test3103: add missing quotes around a test tag attribute
o test613: stop showing an error on missing output file
o tests/README: SOCKS tests are not using OpenSSH, it has its own server [48]
o tests/server: add more SOCKS5 handshake error checking [27]
o tests: Fix Windows test helper tool search & use it for handle64 [17]
o tidy-up: casing typos, delete unused Windows version aliases [144]
o tool: fix --capath when proxy support is disabled [28]
o tool: support bold headers in Windows [117]
o tool_cb_hdr: add an additional parsing check [129]
o tool_cb_prg: make the carriage return fit for wide progress bars [159]
o tool_cb_wrt: fix write output for very old Windows versions [24]
o tool_getparam: limit --rate to be smaller than number of ms [3]
o tool_operate: do not mix memory models [108]
o tool_operate: fix links in ipfs errors [22]
o tool_parsecfg: make warning output propose double-quoting [164]
o tool_urlglob: fix build for old gcc versions [25]
o tool_urlglob: make multiply() bail out on negative values [11]
o tool_writeout_json: fix JSON encoding of non-ascii bytes [179]
o transfer: abort pause send when connection is marked for closing [183]
o transfer: avoid calling the read callback again after EOF [130]
o transfer: only reset the FTP wildcard engine in CLEAR state [42]
o url: don't touch the multi handle when closing internal handles [40]
o url: find scheme with a "perfect hash" [141]
o url: fix `-Wzero-length-array` with no protocols [147]
o url: fix builds with `CURL_DISABLE_HTTP` [148]
o url: protocol handler lookup tidy-up [66]
o url: proxy ssl connection reuse fix [94]
o urlapi: avoid null deref if setting blank host to url encode [75]
o urlapi: skip appending NULL pointer query [74]
o urlapi: when URL encoding the fragment, pass in the right length [59]
o urldata: make maxconnects a 32 bit value [166]
o urldata: move async resolver state from easy handle to connectdata [34]
o urldata: move cookielist from UserDefined to UrlState [126]
o urldata: move hstslist from 'set' to 'state' [105]
o urldata: move the 'internal' boolean to the state struct [39]
o vssh: remove the #ifdef for Curl_ssh_init, use empty macro
o vtls: cleanup SSL config management [78]
o vtls: consistently use typedef names for OpenSSL structs [176]
o vtls: late clone of connection ssl config [60]
o vtls: use ALPN "http/1.1" for HTTP/1.x, including HTTP/1.0 [102]
o VULN-DISCLOSURE-POLICY: escape sequences are not a security flaw [110]
o windows: use built-in `_WIN32` macro to detect Windows [163]
o wolfssh: remove redundant static prototypes [168]
o wolfssl: add default case for wolfssl_connect_step1 switch [49]
o wolfssl: require WOLFSSL_SYS_CA_CERTS for loading system CA [10]
Signed-off-by: Lee Chee Yang <chee.yang.lee@intel.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Alex Bennée [Wed, 20 Dec 2023 16:14:50 +0000 (16:14 +0000)]
qemurunner: more cleanups for output blocking
If we are only tracking stdout and are not using self.readsock we end
up throwing an exception blocking further action from the thread. Fix
this by checking self.readsock is not None first.
While we are at it split even into fd, event to make things clearer
and handle the fail path of stringify_event by echoing the hex value
of the unknown flag.
Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Cc: Mikko Rapeli <mikko.rapeli@linaro.org> Cc: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Tue, 19 Dec 2023 21:24:57 +0000 (21:24 +0000)]
qemu: Ensure pip and the python venv aren't used for meson
Qemu wants to use a supported python version and a specific meson version
to "help" users and uses pip and creates a venv to do this. This is a nightmare
for us. Our versions stay up to date and should be supported so we don't
really need/want this wrapping. Tweak things to disable it.
which would crash. The issue is the change in configuration removes pieces
from the sysroot but pyc files remainm as do pieces of pip which causes
problems.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The PGO (Profile-guided Optimization) collect data about the typical execution of a program
and then use this data to inform optimizations such as inlining, machine-code layout,
register allocation, etc.
This optimization is by default disabled in rust sources but enabled in Yocto and causing
the reproducibility issue in rustdoc binary. To fix the issue this optimization is set to
it's default 'false'.
More about the optimization: https://doc.rust-lang.org/rustc/profile-guided-optimization.html
With the reproducibility issue fixed, we can enable the reproducibility tests again.
Signed-off-by: Sundeep KOKKONDA <sundeep.kokkonda@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>