summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2024-02-21linux-yocto/6.6: update CVE exclusionsBruce Ashfield
Data pulled from: https://github.com/nluedtke/linux_kernel_cves 1/1 [ Author: Nicholas Luedtke Email: nicholas.luedtke@uwalumni.com Subject: Update 9Feb24 Date: Fri, 9 Feb 2024 18:02:45 -0500 ] (From OE-Core rev: ed23f800e84e04badfe88b062a16a8b0f51d5aee) Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-02-21linux-yocto/6.6: update to v6.6.17Bruce Ashfield
Updating linux-yocto/6.6 to the latest korg -stable release that comprises the following commits: b2c9bf06474e Linux 6.6.17 b734f7a47aeb netfilter: nft_set_rbtree: skip end interval element from gc d850a1f8dbbe net: stmmac: xgmac: fix a typo of register name in DPP safety handling 2fbdc116640f ALSA: usb-audio: Sort quirk table entries 460951a8e502 net: stmmac: xgmac: use #define for string constants 22ccf61c336e io_uring/net: limit inline multishot retries 7cbd3aa59db5 io_uring/poll: add requeue return code from poll multishot handling eac52bfe2333 io_uring/net: un-indent mshot retry path in io_recv_finish() 0848bf7e539a io_uring/poll: move poll execution helpers higher up 0ceb7a9230d6 io_uring/net: fix sr->len for IORING_OP_RECV with MSG_WAITALL and buffers 7a62d444a252 media: solo6x10: replace max(a, min(b, c)) by clamp(b, a, c) d41ba25cb8b6 Revert "ASoC: amd: Add new dmi entries for acp5x platform" ac589a37bc0c Input: atkbd - skip ATKBD_CMD_SETLEDS when skipping ATKBD_CMD_GETID 38d4dfeb0a8d Input: i8042 - fix strange behavior of touchpad on Clevo NS70PU 4abccba26f63 hrtimer: Report offline hrtimer enqueue f0b1398669a3 usb: dwc3: pci: add support for the Intel Arrow Lake-H f5e7ffa9269a xhci: handle isoc Babble and Buffer Overrun events properly b5595a07ce1b xhci: process isoc TD properly when there was a transaction error mid TD. a78f36f39a76 usb: host: xhci-plat: Add support for XHCI_SG_TRB_CACHE_SIZE_QUIRK b3e8e687d2db usb: dwc3: host: Set XHCI_SG_TRB_CACHE_SIZE_QUIRK 2aed1b6c33af x86/lib: Revert to _ASM_EXTABLE_UA() for {get,put}_user() fixups 7add0db9543e Revert "usb: typec: tcpm: fix cc role at port reset" 2d744a0cf852 USB: serial: cp210x: add ID for IMST iM871A-USB 4d53c5124b82 USB: serial: option: add Fibocom FM101-GL variant 1f2c1cf43e88 USB: serial: qcserial: add new usb-id for Dell Wireless DW5826e dbeb9bf62c95 ALSA: usb-audio: add quirk for RODE NT-USB+ 49ab71ba24b3 ALSA: usb-audio: Add a quirk for Yamaha YIT-W12TX transmitter 790053c73394 ALSA: usb-audio: Add delay quirk for MOTU M Series 2nd revision 27b216130e64 blk-iocost: Fix an UBSAN shift-out-of-bounds warning 89b00dc3d6bb riscv: declare overflow_stack as exported from traps.c bc401f796061 riscv: Fix arch_hugetlb_migration_supported() for NAPOT da9c33a70f09 libceph: just wait for more data to be available on the socket 90731f99f8c1 libceph: rename read_sparse_msg_*() to read_partial_sparse_msg_*() f4b69db0efca riscv: Flush the tlb when a page directory is freed aceb4ab9689b scsi: core: Move scsi_host_busy() out of host lock if it is for per-command d0d1f9a9b937 riscv: Fix hugetlb_mask_last_page() when NAPOT is enabled 21dba4e4f071 riscv: Fix set_huge_pte_at() for NAPOT mapping d37708448b13 riscv: mm: execute local TLB flush after populating vmemmap c4a05cf0ed78 mm: Introduce flush_cache_vmap_early() 9bf829def8cf riscv: Improve flush_tlb_kernel_range() 53a38f8f75ec riscv: Make __flush_tlb_range() loop over pte instead of flushing the whole tlb 72afe05d6265 riscv: Improve tlb_flush() fb7bcd1722bc fs/ntfs3: Fix an NULL dereference bug bab2fb9d6b67 netfilter: nft_set_pipapo: remove scratch_aligned pointer 9af9079ca1fd netfilter: nft_set_pipapo: add helper to release pcpu scratch area e96795240aec netfilter: nft_set_pipapo: store index in scratch maps 28c5407cd2e4 netfilter: nft_ct: reject direction for ct id cd9bd10c59e3 drm/amd/display: Implement bounds check for stream encoder creation in DCN301 3f3c237a7065 drm/amd/display: Add NULL test for 'timing generator' in 'dcn21_set_pipe()' 2e150ccea131 drm/amd/display: Fix 'panel_cntl' could be null in 'dcn21_set_backlight_level()' a600c1ebc464 netfilter: nft_compat: restrict match/target protocol to u16 b3f2e143eb30 netfilter: nft_compat: reject unused compat flag 6a64b8293506 netfilter: nft_compat: narrow down revision to unsigned 8-bits 84bfcb7774b6 selftests: cmsg_ipv6: repeat the exact packet 7e5ef4967076 ppp_async: limit MRU to 64K b74aa9ce13d0 af_unix: Call kfree_skb() for dead unix_(sk)->oob_skb in GC. 888e3524be87 tipc: Check the bearer type before calling tipc_udp_nl_bearer_add() 94cac7da5889 selftests: net: let big_tcp test cope with slow env 024b25117511 rxrpc: Fix counting of new acks and nacks 2868b8e45a89 rxrpc: Fix response to PING RESPONSE ACKs to a dead call 200cb50b9e15 rxrpc: Fix delayed ACKs to not set the reference serial number 2c9dc472e66f rxrpc: Fix generation of serial numbers to skip zero 41d5340cb01e drm/i915/gvt: Fix uninitialized variable in handle_mmio() 4a5e31bdd3c1 inet: read sk->sk_family once in inet_recv_error() 2109eb2d6aaa hwmon: (coretemp) Fix bogus core_id to attr name mapping 853a6503c586 hwmon: (coretemp) Fix out-of-bounds memory access c9b0d253f1ab hwmon: (aspeed-pwm-tacho) mutex for tach reading 76ce07eb215d octeontx2-pf: Fix a memleak otx2_sq_init f9d5410d8f1b atm: idt77252: fix a memleak in open_card_ubr0 510c869ffa40 tunnels: fix out of bounds access when building IPv6 PMTU error 10db3a7e54e2 tsnep: Fix mapping for zero copy XDP_TX action 9ecd0d78ead2 selftests: net: avoid just another constant wait 4bd05772c7dc selftests: net: fix tcp listener handling in pmtu.sh 1000bd0afca1 selftests/net: change shebang to bash to support "source" 9cf2d6d71bee selftests/net: convert pmtu.sh to run it in unique namespace 7be281a41111 selftests/net: convert unicast_extensions.sh to run it in unique namespace 104ab0e82134 selftests: net: cut more slack for gro fwd tests. 004fe5b7f592 net: atlantic: Fix DMA mapping for PTP hwts ring 6eecddd9c3c8 netdevsim: avoid potential loop in nsim_dev_trap_report_work() 4571767d66d6 wifi: brcmfmac: Adjust n_channels usage for __counted_by 3da5fdb61ae9 wifi: iwlwifi: exit eSR only after the FW does 733031cd485c wifi: mac80211: fix waiting for beacons logic fc3432ae8232 wifi: mac80211: fix RCU use in TDLS fast-xmit 7e0ff50131e9 net: stmmac: xgmac: fix handling of DPP safety error for DMA channels 0e7ca435c574 x86/efistub: Avoid placing the kernel below LOAD_PHYSICAL_ADDR c756fd5d460b x86/efistub: Give up if memory attribute protocol returns an error 79592a6e7bdc drm/msm/dpu: check for valid hw_pp in dpu_encoder_helper_phys_cleanup 1449c75720e8 drm/msm/dp: return correct Colorimetry for DP_TEST_DYNAMIC_RANGE_CEA case 1506145c2cd5 drm/msms/dp: fixed link clock divider bits be over written in BPC unknown case 05955a703b75 xfs: respect the stable writes flag on the RT device d7d5ed65364c xfs: clean up FS_XFLAG_REALTIME handling in xfs_ioctl_setattr_xflags 3581868f51a2 xfs: dquot recovery does not validate the recovered dquot d744e578802a xfs: clean up dqblk extraction b28b234276a8 xfs: inode recovery does not validate the recovered inode 5411625f8dde xfs: fix again select in kconfig XFS_ONLINE_SCRUB_STATS 0838177b012b xfs: fix internal error from AGFL exhaustion c86562e6918a xfs: up(ic_sema) if flushing data device fails 767a94d81616 xfs: only remap the written blocks in xfs_reflink_end_cow_extent 005be6684225 xfs: abort intent items when recovery intents fail 23f3d79fc983 xfs: factor out xfs_defer_pending_abort d7d84772c3f0 xfs: allow read IO and FICLONE to run concurrently d4eba134c509 xfs: handle nimaps=0 from xfs_bmapi_write in xfs_alloc_file_space 47b07e51d0c2 xfs: introduce protection for drop nlink 0fbbfe5fbfbe xfs: make sure maxlen is still congruent with prod when rounding down e3aca4536b6b xfs: fix units conversion error in xfs_bmap_del_extent_delay fe327b8234d4 xfs: rt stubs should return negative errnos when rt disabled 6a6bb41b31df xfs: prevent rt growfs when quota is enabled e820b13ba866 xfs: hoist freeing of rt data fork extent mappings 195f22386e19 xfs: bump max fsgeom struct version c778631b4abc MAINTAINERS: add Catherine as xfs maintainer for 6.6.y 73596f5ab35f rust: upgrade to Rust 1.73.0 aacae44644fb rust: print: use explicit link in documentation e8e7a528220a rust: task: remove redundant explicit link 9b33bb254d1b rust: upgrade to Rust 1.72.1 31a254f6920a rust: arc: add explicit `drop()` around `Box::from_raw()` cff97d683a08 cifs: failure to add channel on iface should bump up weight fb708025b1f1 cifs: avoid redundant calls to disable multichannel 14ef61594a5a phy: ti: phy-omap-usb2: Fix NULL pointer dereference for SRP 9851389b1c39 dmaengine: fix is_slave_direction() return false when DMA_DEV_TO_DEV f7799ecf30be perf evlist: Fix evlist__new_default() for > 1 core PMU 6f67140cf7e1 phy: renesas: rcar-gen3-usb2: Fix returning wrong error code 5cd8a51517ce dmaengine: fsl-qdma: Fix a memory leak related to the queue command DMA df6a1dc71c1d dmaengine: fsl-qdma: Fix a memory leak related to the status queue DMA 43ad9840c123 dmaengine: ti: k3-udma: Report short packet errors f24ba6f9f741 dmaengine: fsl-dpaa2-qdma: Fix the size of dma pools ea42d6cffb0d ext4: regenerate buddy after block freeing failed if under fc replay (From OE-Core rev: ee0d0c43b3e682dfe4c3e75e395b042dda9793a1) Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-02-21testimage: log exception when failing to retrieve artifactsAlexis Lothoré
Despite managing to retrieve the failed ptests artifacts, testimage seems to dump some retrieval errors like the following one: WARNING: core-image-ptest-valgrind-1.0-r0 do_testimage: Can not retrieve /usr/lib/valgrind/ptest from test target Log the corresponding exception to help analyzing such issue (From OE-Core rev: 12873e5b1620414a76e4a0e87cc2c806a0513cfe) Signed-off-by: Alexis Lothoré <alexis.lothore@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-02-21lttng-ust: Upgrade 2.13.6 -> 2.13.7Richard Purdie
Update one of the patches to account for upstream changes. (From OE-Core rev: e0ec2f9358be0e8b5979e534ae3a266b138cc172) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-02-21numactl: Upgrade 2.0.17 -> 2.0.18Richard Purdie
(From OE-Core rev: 6e59ddccd728b50aa0503cd262dcefde25946ae4) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-02-21overlayfs: add missing vardepsChristoph Vogtländer
Fixes [YOCTO #15120] Consider OVERLAYFS_WRITABLE_PATHS as dependecy of do_create_overlayfs_units() in order to rebuild the recipe when changing the used mount point. Tested in a local recipe by changing the used mount point and verified that the recipe was re-build: passed (From OE-Core rev: 65423847ac843682d4670d41a94d509f18ce8735) Signed-off-by: Christoph Vogtländer <christoph.vogtlaender@loewensteinmedical.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-02-20meson: use absolute cross-compiler pathsEnguerrand de Ribaucourt
Among the files generated by meson is compile_commands.json. It is not used by bitbake during the build. However, if the devtool workspace is opened inside an IDE, that IDE can use compile_commands.json to configure linting and code completion. This is notably relied on by the new devtool ide-sdk command. The problem is that the IDE using compile_commands.json does not know the $PATH set-up by bitbake, so it won't find the compiler. This results in linting errors, like missing headers. We can fix this by expliciting the absolute compiler paths in meson.cross. The compile_commands.json specification expressly states: "All paths specified in the command or file fields must be either absolute or relative to this directory." Link: https://clang.llvm.org/docs/JSONCompilationDatabase.html An alternative way to implement this is to directly change CXX inside bitbake.conf to make all recipes use absolute compiler paths.Since this would affect all recipes, so I would like to have the maintainers' opinion on this. It could make sense to use absolute compiler paths for all toolchain binaries, we already do so for the sysroot TOOLCHAIN_OPTIONS. Discussions have been opened with meson/ninja maintainers to implement this at their level: - https://github.com/ninja-build/ninja/issues/2383 - https://github.com/mesonbuild/meson/issues/12834 These tools have even less information on the environment so it makes sense for Yocto to provide the absolute paths. (From OE-Core rev: b4e00248049c2627b05eafa9313a48cf253623fa) Signed-off-by: Enguerrand de Ribaucourt <enguerrand.de-ribaucourt@savoirfairelinux.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-02-20devtool: ide: vscode: Configure read-only filesEnguerrand de Ribaucourt
When debugging or browsing files, the user may fall into external sources from other packages in the sysroot or dbg-rootfs. Modifying them will only lead to confusion since they will be overwritten by Yocto. The user should open them in a separate devtool modify session if they want to make changes. Meanwhile, we should prevent write access to them. (From OE-Core rev: 8a95ad9aecb81732c865e00a987bb8bd3d6cb91d) Signed-off-by: Enguerrand de Ribaucourt <enguerrand.de-ribaucourt@savoirfairelinux.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-02-20devtool: ide_sdk: Use bitbake's python3 for generated scriptsEnguerrand de Ribaucourt
The generated scripts use the sys.path configuration found inside bitbake. It can be a different python version than the one used on the host through the IDE. For instance, when running the generated script deploy_target_cmake-example-core2-64 from an eSDK generated on another machine, I got the following exception: AssertionError: SRE module mismatch We need to match the sys.executable to the sys.path. (From OE-Core rev: 45704319661570b45ef69fddd6b4b4fa22ca80d1) Signed-off-by: Enguerrand de Ribaucourt <enguerrand.de-ribaucourt@savoirfairelinux.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-02-20bitbake: Revert "bitbake: wget.py: always use the custom user agent"Alexander Kanavin
This reverts commit 987ab2a446aab235d6e86e97c05f25fb800d7acc. There's been a report that this breaks downloads from Jfrog Artifactory as self.user_agent is set to 'Mozilla Firefox', and when Artifactory sees that, it sends a response tailored for showing in an interactive browser (which in my opinion it has every right to). If we're using wget, we should say so via wget's default; handling uncooperative servers should be done on per-recipe basis, and ideally with tickets to admins of those servers. (Bitbake rev: feef5cd12e877f42ffcace168d44b0e6eb80a907) Signed-off-by: Alexander Kanavin <alex@linutronix.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-02-20bash: rebase the patch to fix ptest failureXiangyu Chen
This fix commit oe-core: 1b69769b -- bash: changes to SIGINT handler while waiting for a child Due to the patch adjust and drop some codes to be applicable the tree, the line number has been changed, that cause test case "run-type" fail. (From OE-Core rev: ecb698ca5b4f76937dd3bee927465b17866d50be) Signed-off-by: Xiangyu Chen <xiangyu.chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-02-20libsdl2: upgrade 2.28.5 -> 2.30.0Yi Zhao
License-Update: Copyright year updated to 2024. ChangeLog (https://github.com/libsdl-org/SDL/releases/tag/release-2.30.0): * Added support for 2 bits-per-pixel indexed surface formats * Added the function SDL_GameControllerGetSteamHandle() to get the Steam API handle for a controller, if available * Added the event SDL_CONTROLLERSTEAMHANDLEUPDATED which is sent when the Steam API handle for a controller changes. This could also change the name, VID, and PID of the controller. * Added the environment variable SDL_LOGGING to control default log output (From OE-Core rev: 7aef0ee68b612203fe5e0788c57642c4cabea1b4) Signed-off-by: Yi Zhao <yi.zhao@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-02-20insane.bbclass: Allow the warning about virtual/ to be disabledPeter Kjellerstedt
Commit f673d3d239799fb1ab50f4aa5d44187666aa0cd7 introduced a warning for virtual/ being used in RPROVIDES and RDEPENDS. Make it possible to disable the warning by removing "virtual-slash from WARN_QA. (From OE-Core rev: 968ffdb9fee5017eecce36ce878ea604c869ce95) Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-02-20recipetool; add support for python_mesonpy classTim Orling
* Add support to detect the "mesonpy" build-backend for recipetool create. * Add oe-selftest case for creating a recipe for "siphash24" from pypi. https://pypi.org/project/siphash24/ This is by far the simplest recipe using the mesonpy build backend. Upstream does not provide LICENSE file(s) and we do not detect the LICENSE so don't check for that result in the test. Likewise, upstream does not define HOMEPAGE, so skip that result. (From OE-Core rev: 256749322671d2f4ea994db671d73c4de10e1723) Signed-off-by: Tim Orling <tim.orling@konsulko.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-02-20python_mesonpy.bbclass: move from meta-pythonTim Orling
Move the PEP-517 back-end bbclass from meta-python to support: [build-system] build-backend = "mesonpy" This is the declared backend in python3-numpy since: https://github.com/numpy/numpy/commit/942fb8caf33a65e449fbf198ecf1cd39be953248 (From OE-Core rev: f0d3478913b092a01eceafe0c20378cf9117f429) Signed-off-by: Tim Orling <tim.orling@konsulko.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-02-20python3-meson-python: move from meta-pythonTim Orling
meson-python is a Python build backend built on top of the Meson build-system. It enables you to use Meson for your Python packages. https://meson-python.readthedocs.io/en/latest/ It is used as the PEP-517 build-backend for python3-numpy and python3-scipy. For other projects using the backend, see: https://meson-python.readthedocs.io/en/latest/projects-using-meson-python.html (From OE-Core rev: 57df1e3fd77a412fb7d585362a7263a4f847fe07) Signed-off-by: Tim Orling <tim.orling@konsulko.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-02-20python3-pyproject-metadata: HOMEPAGE; DESCRIPTIONTim Orling
Add HOMEPAGE and DESCRIPTION that were missing in the original recipe in meta-python (From OE-Core rev: c29a906c510627c5f4598511c34de20230bb230d) Signed-off-by: Tim Orling <tim.orling@konsulko.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-02-20python3-pyproject-metadata: move from meta-pythonTim Orling
This is a dependency for python3-meson-python. (From OE-Core rev: b8c8d384b4622de7b5a4748e6e06665615674ba8) Signed-off-by: Tim Orling <tim.orling@konsulko.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-02-20python: Drop ${PYTHON_PN}Richard Purdie
python 2 is gone and we don't need the abstraction now, drop the remaining usage of this variable. The definition in python3-dir.bbclass is left for now for other layers. (From OE-Core rev: b566b1e32c7993d1ab7795562f648e52ce186a70) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-02-19lib/oe/patch: Use git notes to store the filenames for the patchesPeter Kjellerstedt
The old way of keeping track of the filenames for the patches that correspond to the commits was to add a special comment line to the end of the commit message, e.g., "%% original patch: <filename>", using a temporary git hook. This method had some drawbacks, e.g.: * It caused problems if one wanted to push the commits upstream as the comment line had to be manually removed. * The comment line would end up in patches if someone used git format-path rather than devtool finish to generate the patches. * The comment line could interfere with global Git hooks used to validate the format of the Git commit message. * When regenerating patches with `devtool finish --force-patch-refresh`, the process typically resulted in adding empty lines to the end of the commit messages in the updated patches. A better way of keeping track of the patch filenames is to use Git notes. This way the commit messages remain unaffected, but the information is still shown when, e.g., doing `git log`. A special Git notes space, refs/notes/devtool, is used to not intefere with the default Git notes. It is configured to be shown in, e.g., `git log` and to survive rewrites (i.e., `git commit --amend` and `git rebase`). Since there is no longer any need for a temporary Git hook, the code that manipulated the .git/hooks directory has also been removed. To avoid potential problems due to global Git hooks, --no-verify was added to the `git commit` command. To not cause troubles for those who have done `devtool modify` for a recipe with the old solution and then do `devtool finish` with the new solution, the code will fall back to look for the old strings in the commit message if no Git note can be found. While not technically motivated like above, the way to keep track of ignored commits is also changed to use Git notes to avoid having different methods to store similar information. (From OE-Core rev: f5e6183b9557477bef74024a587de0bfcc2b7c0d) Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-02-19patch.bbclass: Make use of oe.patch.GitApplyTree.commitIgnored()Peter Kjellerstedt
This makes use of the oe.patch.GitApplyTree.commitIgnored() function to create commits that shall be ignored by `devtool finish`. (From OE-Core rev: 2393dc35a93546eccee0dd313a6927c7d1512c3b) Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-02-19devtool: Make use of oe.patch.GitApplyTree.commitIgnored()Peter Kjellerstedt
This makes use of the oe.patch.GitApplyTree.commitIgnored() function to create commits that shall be ignored by `devtool finish`. (From OE-Core rev: 4e1b9289450b5e7946bd5999c95a3ee214aab8a5) Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-02-19lib/oe/patch: Add GitApplyTree.commitIgnored()Peter Kjellerstedt
This function can be used to create a commit that devtool will ignore when creating/updating the patches. (From OE-Core rev: 94f0838b9223b7ece7affaa707e54a5d784da25e) Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-02-19lib/oe/patch: Make extractPatches() not extract ignored commitsPeter Kjellerstedt
If a commit is marked with "%% ignore" it means it is used by devtool to keep track of changes to the source code that are not the result of running do_patch(). These changes need to actually be ignored when extracting the patches as they typically make no sense as actual patches in a recipe. This also adds a new test for oe-selftest that verifies that there are no patches generated from ignored commits. (From OE-Core rev: c3d43de7e54189bf09fbe8e87ddb976e42ebf531) Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-02-19swig: upgrade 4.1.1 -> 4.2.0Anuj Mittal
(From OE-Core rev: 93cf900c697685d0749c3269806213f89fb6526e) Signed-off-by: Anuj Mittal <anuj.mittal@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-02-19overlayfs-etc: add option to skip creation of mount dirsbaruch@tkos.co.il
The 'preinit' script can't create mount directories when rootfs is read-only. Add an option to skip this step. The user must make sure that all required directories are already in the rootfs directory layout. Cc: Vyacheslav Yurkov <uvv.mail@gmail.com> (From OE-Core rev: 3d433d8559467d255bd19af2d0999c65ea24a48d) Signed-off-by: Baruch Siach <baruch@tkos.co.il> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-02-19bitbake: fetch2/git: Make latest_versionstring extract tags with slashes ↵Peter Kjellerstedt
correctly Before, everything up to the last slash was removed when extracting the names of the tags. This would lead to that a tag such as "agent/11.0.0" would be incorrectly identified as "11.0.0", which would then be treated as a correct version matching "^(?P<pver>\d+(\.\d+)+)". (Bitbake rev: 8b21024b9966d5158ac4a77e87ffb935c2a57764) Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-02-19bitbake: fetch2/git: A bit of clean-up of latest_versionstring()Peter Kjellerstedt
This is mostly preparations for the next commit. (Bitbake rev: dcd2abfde55cc59d9869a7c97620b6fc30a52047) Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-02-19bitbake: tests/fetch: Make test_git_latest_versionstring support a max versionPeter Kjellerstedt
In some cases, the version found by latest_versionstring() may be higher than the real version. Make it possible to specify a maximum version so that this case can be detected. (Bitbake rev: 9134d4777109bc78410c3e641420d9a78b485e33) Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-02-19bitbake: fetch2/git.py: add comment in try_premirrorsChen Qi
The purpose of ensuring 'incremental fetch' is not easy to see from the codes. So add comments to explain this. (Bitbake rev: 8b890b87e30cd05ec92ed71ee3691a47b4d77253) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-02-19bitbake: tests/fetch.py: add test case for using premirror in restricted networkChen Qi
We had issue when BB_ALLOWED_NETWORKS is set and `bitbake grpc-native -c fetch' failed even with all contents available in PREMIRRORS. Add a test case to ensure no regression in the future. (Bitbake rev: 80c91ceb81b1cae203067af58d3f1fe9c619ae83) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-02-19bitbake: fetch2/git.py: fix a corner case in try_premirrorChen Qi
For gitsm recipes, it's possible that some URL is used more than once. e.g., A -> B:rev1 (B is a submodule of A) A -> C (C is a submodule of A) C -> B:rev2 (B is a submodule of C) A anc C are both using B as submodules, but on different revs. Now if we have: B:rev1 -> D B:rev2 -> E Then, the mirror will not be fully used. Say we have all repo mirrors for A, B, C, D, E, then in theory it's not necessary to reach out to any network for downloading. But it's not the case. After downloading B(rev1) and its submodule D from mirrors, the fetch process continues to download C, thus B(rev2) and E. Now it finds that B needs an update because its submodule E needs an update. Of course this is true because E is not downloaded yet. Now the problem comes to whether to use mirror or not. The git.py defines try_premirror to return 'False' when the ud.clonedir exists. As B has been cloned, the ud.clonedir exists and try_mirror returns False, resulting in not using mirror and going to upstream directly. We can see that the mirrors are not fully used. This is usually not problem, as the cost is only some network download. But in case the following two settings are there, we get errors. BB_NO_NETWORK = "0" BB_ALLOWED_NETWORKS = "*.some.allowed.domain" In such case, the gitsm recipe A will fail to fetch. Note that all contents that A needs are in mirrors and now it's failing to fetch. This is unexpected. Note that the different revs of the same repo in gitsm recipe is not the only way to reveal this problem. For example, there might be a recipe call B that uses B:rev3. Check the protobuf and grpc recipes as an example. For now, we can use the following steps to reproduce this issue. To be clear, the grpc recipe in meta-oe is now 1.60.0. 1. Add in local.conf: DL_DIR = "${TOPDIR}/downloads-premirror" bitbake grpc -c fetch 2. Comment out the DL_DIR setting in local.conf and add the following lines: PREMIRRORS:append = " \ git://.*/.* git://${TOPDIR}/downloads-premirror/git2/MIRRORNAME;protocol=file \n \ gitsm://.*/.* gitsm://${TOPDIR}/downloads-premirror/git2/MIRRORNAME;protocol=file \n \ " 3. Set BB_NO_NETWORK = "1" and then 'bitbake grpc -c fetch'. This command succeeds and this shows that the premirror holds everything we need. 4. Add the following lines and then 'bitbake grpc -c fetch'. BB_NO_NETWORK = "0" BB_ALLOWED_NETWORKS = "*.some.domain" After step 4, the error message is as below: ERROR: grpc-1.60.0-r0 do_fetch: The URL: 'gitsm://github.com/protocolbuffers/protobuf.git;protocol=https;name=third_party/protobuf;subpath=third_party/protobuf;nobranch=1;lfs=True;bareclone=1;nobranch=1' is not trusted and cannot be used This patch fixes this problem by handling this corner case, that is, if the URL is not trusted from the settings of BB_NO_NETWORK and BB_ALLOWED_NETWORKS, then we should try premirrors because trying to reach upstream is destined to fail. (Bitbake rev: e1be272ad105b47d3131b77168d9172386993fcb) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-02-19ell: update 0.61 -> 0.62Markus Volk
ver 0.62: Add support for cleanup functions and macros. Add support for setting DHCP max attempts. (From OE-Core rev: ae84d13b6c4f33a56cc36715a118a9f938ceb2c4) Signed-off-by: Markus Volk <f_l_k@t-online.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-02-19initramfs-framework: overlayroot: align bootparams with module nameJohannes Schneider
Renaming the 'rootrw' kernel commandline parameter to 'overlayrootrwdev' to both align better with this modules name, and point out the usage of the variable. This patch also includes an if block to migrate the old 'rootrw' block, should it be already used by someone. (From OE-Core rev: a52b7f5c8ff3e50707b55843d9996983ab8efae2) Signed-off-by: Johannes Schneider <johannes.schneider@leica-geosystems.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-02-19initramfs-framework: overlayroot: fix kernel commandline clashJohannes Schneider
The initramfs-framwork takes kernel commandline options and converts them for internal use to variables following the 'bootparam_name' pattern. The overlayroot module uses 'bootparam_rootfstype' and 'bootparam_rootfsflags' which both collide with linux kernel parameters 'rootfstype' and 'rootfsflags'. This collision is solved by putting the variables in the namespace of the initramfs-framework module. (From OE-Core rev: ef20ef719c699b94fc52b81c520faa0b3714efeb) Signed-off-by: Johannes Schneider <johannes.schneider@leica-geosystems.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-02-19bitbake: tests/fetch.py: add multiple fetches testPavel Zhukov
Fetch from premirror few times to emulate multiple machines sharing same clonedir or few rebuilds of the package from (pre)mirror Regression test for [Yocto #15369] (Bitbake rev: 7fcbac574c68f16b95ab7abb2874931d168d3c9e) Signed-off-by: Pavel Zhukov <pavel@zhukoff.net> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-02-19bitbake: fetch2/git.py: Fetch mirror into HEADPavel Zhukov
Fix the issue with using of (pre)mirror in case if clonedir exists but outdated. Previous version of the code fetched new mirror content into FETCH_HEAD instead of branch which caused refetch from the upstream. Add new remote add fetch from it instead so the ref can be found by "_contains_ref" Fixes [Yocto #15369] (Bitbake rev: 69588e2a5c7c200e47b02b2391498dcb72388bd2) Signed-off-by: Pavel Zhukov <pavel@zhukoff.net> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-02-19bitbake: git-make-shallow: support git's safe.bareRepositoryAndré Draszik
When git is configured with safe.bareRepository=explicit [1], the git-make-shallow fails miserably. LWN has an article about the problem that this configuration option addresses and why it is useful in [2]. It also seems that it is being rolled out in some environments as a default for users. In order to allow having this configuration turned on for a user's environment in general, the fetcher has to be tought to use --git-dir= for all relevent git operations. The alternative, implemented here, is to forcibly turn off that option for all git operations. In the future, we could look into converting these to using the --git-dir= command line argument instead. Link: https://git.kernel.org/pub/scm/git/git.git/tree/Documentation/config/safe.txt#n1 [1] Link: https://lwn.net/Articles/892755/ [2] (Bitbake rev: 7c63989db4590564516ed150930f4e2fa503e98f) Signed-off-by: André Draszik <andre.draszik@linaro.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-02-19bitbake: tests/fetch: support git's safe.bareRepositoryAndré Draszik
When git is configured with safe.bareRepository=explicit [1], the bitbake selftests fail miserably. LWN has an article about the problem that this configuration option addresses and why it is useful in [2]. It also seems that it is being rolled out in some environments as a default for users. In order to allow having this configuration turned on for a user's environment in general, the fetcher has to be tought to use --git-dir= for all relevent git operations. The alternative, implemented here, is to forcibly turn off that option for all git operations. In the future, we could look into converting these to using the --git-dir= command line argument instead. Link: https://git.kernel.org/pub/scm/git/git.git/tree/Documentation/config/safe.txt#n1 [1] Link: https://lwn.net/Articles/892755/ [2] (Bitbake rev: a45e14a7343e36101e45639931322e5649587f57) Signed-off-by: André Draszik <andre.draszik@linaro.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-02-19bitbake: fetch/git2: support git's safe.bareRepositoryAndré Draszik
When git is configured with safe.bareRepository=explicit [1], the bitbake git fetcher fails miserably. LWN has an article about the problem that this configuration option addresses and why it is useful in [2]. It also seems that it is being rolled out in some environments as a default for users. In order to allow having this configuration turned on for a user's environment in general, the fetcher has to be tought to use --git-dir= for all relevent git operations. The alternative, implemented here, is to forcibly turn off that option for all git operations. In the future, we could look into converting these to using the --git-dir= command line argument instead. While at it, fix one open-coded invocation of git that wasn't using ud.basecmd Link: https://git.kernel.org/pub/scm/git/git.git/tree/Documentation/config/safe.txt#n1 [1] Link: https://lwn.net/Articles/892755/ [2] (Bitbake rev: 5f3b1d8dc9ee70e707536bd75ee845b547440c97) Signed-off-by: André Draszik <andre.draszik@linaro.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-02-19sanity.conf: Require bitbake 2.7.3Richard Purdie
Due to hashserv API changes in siggen, we need bitbake 2.7.3. (From OE-Core rev: 7172fd527fde440f26dd6cc371cde2720dbaa366) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-02-19sstatesig: Implement new siggen APIJoshua Watt
Implements the new API required for querying unihashes in parallel (From OE-Core rev: 0c66d07238d20dc1b34355e4c472aa7457d2e5fe) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-02-19bitbake: bitbake: Bump version to 2.7.3 for hashserv changesRichard Purdie
(Bitbake rev: c1e0a0b6ddc9667c9d62319bd9ccd4eb8c64c2a6) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-02-19bitbake: bitbake: hashserv: Postgres adaptations for ignoring duplicate insertsTobias Hagelborn
Hash Equivalence server performs unconditional insert also of duplicate hash entries. This causes excessive error log entries in Postgres. Rather ignore the duplicate inserts. The alternate behavior should be isolated to the postgres engine type. (Bitbake rev: e8d2d178d0fe96f9d6031c97328e8be17d752716) Signed-off-by: Tobias Hagelborn <tobiasha@axis.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-02-19bitbake: siggen: Add parallel unihash exist APIJoshua Watt
Adds API to query if unihashes are known to the server in parallel (Bitbake rev: 7e2479109b40ce82507f73b4f935903f7f79fb06) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-02-19bitbake: siggen: Add parallel query APIJoshua Watt
Implements a new API called get_unihashes() that allows for querying multiple unihashes in parallel. The API is also reworked to make it easier for derived classes to interface with the new API in a consistent manner. Instead of overriding get_unihash() to add custom handling for local hash calculating (e.g. caches) derived classes should now override get_cached_unihash(), and return the local unihash or None if there isn't one. (Bitbake rev: 6faf48c09a4003a31b32e450779fb8ac9cc5e946) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-02-19bitbake: hashserv: Add Client PoolJoshua Watt
Implements a Client Pool derived from the AsyncRPC client pool that allows querying for multiple equivalent hashes in parallel (Bitbake rev: ba4c764d8061c7b88cd4985ca493d6ea6e317106) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-02-19bitbake: asyncrpc: Add Client Pool objectJoshua Watt
Adds an abstract base class that can be used to implement a pool of client connections. The class implements a thread that runs an async event loop, and allows derived classes to schedule work on the loop and wait for the work to be finished. (Bitbake rev: f113456417f9ac0a4b44b291a6e22ea8219c3a5f) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-02-19bitbake: hashserv: Add unihash-exists APIJoshua Watt
Adds API to check if the server is aware of the existence of a given unihash. This can be used as an optimization for sstate where a client can query the hash equivalence server to check if a unihash exists before querying the sstate cache. If the hash server isn't aware of the existence of a unihash, then there is very likely not a matching sstate object, so this should be able to significantly cut down on the number of negative hits on the sstate cache. (Bitbake rev: cfe0ac071cfb998e4a1dd263f8860b140843361a) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-02-19bitbake: hashserv: sqlalchemy: Use _execute() helperJoshua Watt
Use the _execute() helper to execute queries. This helper does the logging of the statement that was being done manually everywhere. (Bitbake rev: 0409a00d62f45afb1b172acbcea17bf17942e846) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>