Compare commits

..

531 Commits

Author SHA1 Message Date
Steve Sakoman
3e95f268ce build-appliance-image: Update to langdale head revision
(From OE-Core rev: 78211cda40eb018a3aa535c75b61e87337236628)

Signed-off-by: Steve Sakoman <steve@sakoman.com>
2023-04-28 04:13:28 -10:00
Steve Sakoman
1516e498fe poky.conf: bump version for 4.1.4
(From meta-yocto rev: 92dc7f57bd05815477c61203ec9cdc3824506063)

Signed-off-by: Steve Sakoman <steve@sakoman.com>
2023-04-28 04:01:16 -10:00
Christoph Lauer
1cfbc292b9 populate_sdk_base: add zip options
Add SDK_ZIP_OPTIONS to remove symbolic link creation in zip archive or add options, e.g. for encryption of the zip archive.

(From OE-Core rev: 04b62f9459b401c276255f166d0738b6f902a576)

(From OE-Core rev: 4632b0d43fa383bcf404a36c5dd5c58dc89f6295)

Signed-off-by: Christoph Lauer <christoph.lauer@xtronic.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2023-04-28 04:01:15 -10:00
Marek Vasut
09ec133221 cpio: Fix wrong CRC with ASCII CRC for large files
Due to signedness, the checksum is not computed when filesize is bigger
a 2GB. Pick a fix for this problem from CPIO ML, where the fix has been
posted for 5 years. Since CPIO upstream is effectively unresponsive and
any and all attempts to communicate with the maintainer and get the fix
applied upstream failed, add the fix here instead.

(From OE-Core rev: bdd1d3c8a0ef1e2086ea15e5c1b38628cfda5121)

Signed-off-by: Marek Vasut <marex@denx.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit bfff138af4bdd356ac66571e6ad91c1a5599b935)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2023-04-28 04:01:15 -10:00
Mikko Rapeli
aa45ff43fc oeqa ping.py: fail test if target IP address has not been set
It is possible to call exported tests with --target-ip set to ":22"
where IP address is not set at all. Detect this case and fail the test
instead of calling ping without an IP address.

(From OE-Core rev: b14b8f38da9195852e9a2fd6b2e446ed8a1fa0b8)

Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 17c995c53775b8cee279ca4ced916092067e1195)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2023-04-28 04:01:15 -10:00
Mikko Rapeli
99213e4254 oeqa ping.py: avoid busylooping failing ping command
Use a sleep on error path before trying again. For example
when oeqa runtime tests are executed without setting target
IP address correctly, the tests are drowning logs with messages:

2023-04-04 07:19:24,985 - runtime - INFO - test_ping (ping.PingTest.test_ping)
ping: usage error: Destination address required
ping: usage error: Destination address required
ping: usage error: Destination address required
ping: usage error: Destination address required
ping: usage error: Destination address required
ping: usage error: Destination address required
ping: usage error: Destination address required
ping: usage error: Destination address required
ping: usage error: Destination address required
ping: usage error: Destination address required
ping: usage error: Destination address required
ping: usage error: Destination address required
...
2023-04-04 07:19:55,002 - runtime - INFO -  ... FAIL
2023-04-04 07:19:55,002 - runtime - INFO - Traceback (most recent call
last):
  File \"/lava-62618/3/tests/3_oeqa-runtime-tests/image/lib/oeqa/runtime/cases/ping.py\", line 23, in test_ping
    output += proc.communicate()[0].decode('utf-8')
              ^^^^^^^^^^^^^^^^^^
  File \"/usr/lib/python3.11/subprocess.py\", line 1194, in communicate
    stdout = self.stdout.read()
             ^^^^^^^^^^^^^^^^^^
  File \"/lava-62618/3/tests/3_oeqa-runtime-tests/image/lib/oeqa/core/decorator/oetimeout.py\", line 18, in _timeoutHandler
    raise OEQATimeoutError(\"Timed out after %s \"
oeqa.core.exception.OEQATimeoutError: Timed out after 30 seconds of execution

(From OE-Core rev: 5e5975b199e161936471824aabc43da5097219fa)

Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 87ec75710b5cd7b3f35d886003844d62d3182b54)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2023-04-28 04:01:15 -10:00
Chris Elledge
3eaa4cef1f busybox: move hwclock init earlier in startup
hwclock.sh had default update-rc parameters which made it run after
other tasks that work with the clock such as connman. This causes a
time obtained by NTP to be clobbered by a potentially incorrect time
in the RTC.

Provide non-default INITSCRIPT_PARAMS to have hwclock.sh run during
the rc startup before runlevel initscripts start.

(From OE-Core rev: 0f8cd527966f22c3fa19d6efd7ff1524f3630976)

Signed-off-by: Chris Elledge <celledge@siteworx.io>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 3012bac35ada9a9f66d9e6e2fecaee09527b9d44)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2023-04-28 04:01:15 -10:00
Bruce Ashfield
a3e1b785b6 linux-yocto/5.15: update to v5.15.108
Updating  to the latest korg -stable release that comprises
the following commits:

    3299fb36854f Linux 5.15.108
    adef0cebea85 nvme-pci: avoid the deepest sleep state on ZHITAI TiPro5000 SSDs
    c6897dfe2bb6 counter: Add the necessary colons and indents to the comments of counter_compi
    fa934784fb65 counter: fix docum. build problems after filename change
    0cf283340023 panic, kexec: make __crash_kexec() NMI safe
    9e1e511119b1 kexec: turn all kexec_mutex acquisitions into trylocks
    6fc7a53fcc4c nvme-pci: add NVME_QUIRK_BOGUS_NID for T-FORCE Z330 SSD
    fa43e0591900 nvme-pci: mark Lexar NM760 as IGNORE_DEV_SUBNQN
    a814fc9e6e59 nvme-pci: add NVME_QUIRK_BOGUS_NID for Lexar NM760
    972e06d09e86 nvme-pci: add NVME_QUIRK_BOGUS_NID for Lexar NM610
    cf773832139b nvme-pci: Crucial P2 has bogus namespace ids
    5a19b9a49aea nvme-pci: avoid the deepest sleep state on ZHITAI TiPro7000 SSDs
    65f5dc5dff29 nvme-pci: add NVME_QUIRK_BOGUS_NID for ADATA XPG GAMMIX S50
    3daaa5f7aae2 i2c: ocores: generate stop condition after timeout in polling mode
    0af686415ca2 x86/rtc: Remove __init for runtime functions
    b11ff3ef4d09 sched/fair: Fix imbalance overflow
    90e3dc510106 sched/fair: Move calculate of avg_load to a better location
    6d1353781bba powerpc/papr_scm: Update the NUMA distance table for the target node
    0b031f5983f8 ubi: Fix deadlock caused by recursively holding work_sem
    85d7a7044b75 ubi: Fix failure attaching when vid_hdr offset equals to (sub)page size
    f0b4a4086cf2 mptcp: stricter state check in mptcp_worker
    925e1a510a2e mptcp: use mptcp_schedule_work instead of open-coding it
    f4f2a1d491e9 cgroup/cpuset: Wake up cpuset_attach_wq tasks in cpuset_cancel_attach()
    19c7f9329bdb x86/PCI: Add quirk for AMD XHCI controller that loses MSI-X state in D3hot
    05143d90ac90 scsi: ses: Handle enclosure with just a primary component gracefully
    aaae6d303150 net: phy: nxp-c45-tja11xx: fix unsigned long multiplication overflow
    b1ca14361d49 net: phy: nxp-c45-tja11xx: add remove callback
    0359e505bcd7 net: sfp: initialize sfp->i2c_block_size at sfp allocation
    a42f565c0e96 riscv: add icache flush for nommu sigreturn trampoline
    6eeb1cba4c9d drm/i915: fix race condition UAF in i915_perf_add_config_ioctl
    9b344cf6aea0 i915/perf: Replace DRM_DEBUG with driver specific drm_dbg call
    6b337a13c144 tracing: Have tracing_snapshot_instance_cond() write errors to the appropriate instance
    1403518ed0d9 tracing: Add trace_array_puts() to write into instance
    670e54151b7a counter: 104-quad-8: Fix Synapse action reported for Index signals
    6e25d374cd95 counter: Internalize sysfs interface code
    c4153e662883 counter: stm32-timer-cnt: Provide defines for slave mode selection
    4c1010848b12 counter: stm32-lptimer-cnt: Provide defines for clock polarities
    189ada57e88c ACPI: resource: Add Medion S17413 to IRQ override quirk
    248a18a895e2 wifi: iwlwifi: mvm: fix mvmtxq->stopped handling
    0efd9ed92926 asymmetric_keys: log on fatal failures in PE/pkcs7
    ae2b44aeade1 verify_pefile: relax wrapper length check
    744f80ae0716 drm: panel-orientation-quirks: Add quirk for Lenovo Yoga Book X90F
    05a24344296e efi: sysfb_efi: Add quirk for Lenovo Yoga Book X91F/L
    0f9d2fc58824 i2c: hisi: Avoid redundant interrupts
    d21a46212009 i2c: imx-lpi2c: clean rx/tx buffers upon new message
    8451da304b4a wifi: mwifiex: mark OF related data as maybe unused
    9aeff275b7f7 power: supply: cros_usbpd: reclassify "default case!" as debug
    788f4a3d3987 ARM: 9290/1: uaccess: Fix KASAN false-positives
    53967ac8080b libbpf: Fix single-line struct definition output in btf_dump
    906a6689bb01 skbuff: Fix a race between coalescing and releasing SKBs
    7ccc58a1a756 net: macb: fix a memory corruption in extended buffer descriptor mode
    ed2ec39e46fe udp6: fix potential access to stale information
    e97ff11b396c RDMA/core: Fix GID entry ref leak when create_ah fails
    6109f5b13ce3 sctp: fix a potential overflow in sctp_ifwdtsn_skip
    c6a796ee5a63 net: qrtr: Fix an uninit variable access bug in qrtr_tx_resume()
    9b1ca43bcf3d qlcnic: check pci_reset_function result
    ffa4f32952e2 drm/armada: Fix a potential double free in an error handling path
    a94f5d35fdbb tcp: restrict net.ipv4.tcp_app_win
    a08ec4ed3b6e niu: Fix missing unwind goto in niu_alloc_channels()
    e35ae49bc198 9p/xen : Fix use after free bug in xen_9pfs_front_remove due to race condition
    b41da67451b0 bpf: tcp: Use sock_gen_put instead of sock_put in bpf_iter_tcp
    48e8e7851dc0 RDMA/cma: Allow UD qp_type to join multicast only
    1569a4cdb973 IB/mlx5: Add support for 400G_8X lane speed
    f6711bc5c016 RDMA/irdma: Add ipv4 check to irdma_find_listener()
    c8c7a7aee861 RDMA/irdma: Increase iWARP CM default rexmit count
    810250c9c661 RDMA/irdma: Fix memory leak of PBLE objects
    aa2607bae45f clk: sprd: set max_register according to mapping range
    0004a50c535f drm/i915/dsi: fix DSS CTL register offsets for TGL+
    1bb4a52c3caa KVM: arm64: PMU: Restore the guest's EL0 event counting after migration
    c7acce3a0eeb mtd: rawnand: stm32_fmc2: use timings.mode instead of checking tRC_min
    7233b5baba10 mtd: rawnand: stm32_fmc2: remove unsupported EDO mode
    5ded9b750f30 mtd: rawnand: meson: fix bitmask for length in command word
    0162836a51bb mtdblock: tolerate corrected bit-flips
    ad574345ce26 fbmem: Reject FB_ACTIVATE_KD_TEXT from userspace
    a55a95365e08 btrfs: fix fast csum implementation detection
    6da03c237d56 btrfs: print checksum type and implementation at mount time
    0efb276d5848 Bluetooth: Fix race condition in hidp_session_thread
    ac6725a634f7 Bluetooth: L2CAP: Fix use-after-free in l2cap_disconnect_{req,rsp}
    d98498ad5695 ALSA: hda/sigmatel: fix S/PDIF out on Intel D*45* motherboards
    c5797c87e74e ALSA: emu10k1: don't create old pass-through playback device on Audigy
    f1ef453157b4 ALSA: firewire-tascam: add missing unwind goto in snd_tscm_stream_start_duplex()
    7901d787e455 ALSA: i2c/cs8427: fix iec958 mixer control deactivation
    d8697aa12ae6 ALSA: hda/sigmatel: add pin overrides for Intel DP45SG motherboard
    34a0ada0a8b2 ALSA: emu10k1: fix capture interrupt handler unlinking
    55e4eef5545d Revert "pinctrl: amd: Disable and mask interrupts on resume"

(From OE-Core rev: bbdea728c2e7f81660220ff0fd196c87886abacc)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 5339d44b0b0b23f30cb0f8ab395da62e83733c40)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2023-04-28 04:01:15 -10:00
Bruce Ashfield
cb3fe78611 linux-yocto/5.15: update to v5.15.107
Updating  to the latest korg -stable release that comprises
the following commits:

    4fdad925aa1a Linux 5.15.107
    c862d7debe55 bpftool: Print newline before '}' for struct with padding only fields
    1585f3fc24b5 ocfs2: fix freeing uninitialized resource on ocfs2_dlm_shutdown
    b97e4100be37 kbuild: fix single directory build
    326b80bd2267 mm: take a page reference when removing device exclusive entries
    1fc9263ad795 drm/bridge: lt9611: Fix PLL being unable to lock
    4bdf1514b426 mm/swap: fix swap_info_struct race between swapoff and get_swap_pages()
    cbe5f7fed7f7 ring-buffer: Fix race while reader and writer are on the same page
    23ed5af5767a drm/nouveau/disp: Support more modes by checking with lower bpc
    6f2180c5273a drm/panfrost: Fix the panfrost_mmu_map_fault_addr() error path
    a184df0de132 mm: vmalloc: avoid warn_alloc noise caused by fatal signal
    d88d7a9fcf20 ASoC: hdac_hdmi: use set_stream() instead of set_tdm_slots()
    33d5d4e67a0e tracing: Free error logs of tracing instances
    c74065da695e can: isotp: isotp_ops: fix poll() to not report false EPOLLOUT events
    4fe1d9b6231a can: j1939: j1939_tp_tx_dat_new(): fix out-of-bounds memory access
    0af8fae81d8b fs: drop peer group ids under namespace lock
    33a503b7c339 ftrace: Fix issue that 'direct->addr' not restored in modify_ftrace_direct()
    20c5e10950e9 ftrace: Mark get_lock_parent_ip() __always_inline
    a007b7dc19de perf/core: Fix the same task check in perf_event_set_output
    8417eb9aaf1e cifs: sanitize paths in cifs_update_super_prepath.
    df23c702d11c smb3: lower default deferred close timeout to address perf regression
    1d9cad9c5873 smb3: allow deferred close timeout to be configurable
    5e5c5f472972 scsi: iscsi_tcp: Check that sock is valid before iscsi_set_param()
    ae73c4dd48f2 scsi: qla2xxx: Fix memory leak in qla2x00_probe_one()
    c8c17991dab0 iio: adc: ad7791: fix IRQ flags
    bc61cce6a658 coresight-etm4: Fix for() loop drvdata->nr_addr_cmp range bug
    97302eb6ca48 coresight: etm4x: Do not access TRCIDR1 for identification
    fd23e9bbfccc ALSA: hda/realtek: Add quirk for Clevo X370SNW
    f204f38212dc ksmbd: do not call kvmalloc() with __GFP_NORETRY | __GFP_NO_WARN
    091b3e31275b dt-bindings: serial: renesas,scif: Fix 4th IRQ for 4-IRQ SCIFs
    d540aea451ab nilfs2: fix sysfs interface lifetime
    92684e02654c nilfs2: fix potential UAF of struct nilfs_sc_info in nilfs_segctor_thread()
    ba3a88b444cd tty: serial: fsl_lpuart: avoid checking for transfer complete when UARTCTRL_SBK is asserted in lpuart32_tx_empty
    ad142624ccc3 tty: serial: sh-sci: Fix Rx on RZ/G2L SCI
    1184bd5c5ee4 tty: serial: sh-sci: Fix transmit end interrupt handler
    1f49173be32d iio: light: cm32181: Unregister second I2C client if present
    77593b4e963c iio: dac: cio-dac: Fix max DAC write value check for 12-bit
    73742a446e08 iio: adc: ti-ads7950: Set `can_sleep` flag for GPIO chip
    7a1e21d26104 iio: adis16480: select CONFIG_CRC32
    4d3841fe16c4 USB: serial: option: add Quectel RM500U-CN modem
    7151d2af0656 USB: serial: option: add Telit FE990 compositions
    e1aa1c1bc51f usb: typec: altmodes/displayport: Fix configure initial pin assignment
    9cd66aa2fa04 USB: serial: cp210x: add Silicon Labs IFS-USB-DATACABLE IDs
    f8d59e2a36ac usb: dwc3: pci: add support for the Intel Meteor Lake-S
    11453332fa40 usb: cdnsp: Fixes error: uninitialized symbol 'len'
    83637720ea20 xhci: also avoid the XHCI_ZERO_64B_REGS quirk with a passthrough iommu
    1122474b757a usb: xhci: tegra: fix sleep in atomic call
    f5c5934580e7 kbuild: refactor single builds of *.ko
    e62d179b9177 gve: Secure enough bytes in the first TX desc for all TCP pkts
    40c6802d7dae ethtool: reset #lanes when lanes is omitted
    4eada1dabdfb ice: Reset FDIR counter in FDIR init stage
    391d28c0e38c ice: fix wrong fallback logic for FDIR
    e215928a510c NFSD: callback request does not use correct credential for AUTH_SYS
    bbca64f2052e sunrpc: only free unix grouplist after RCU settles
    ca7c3b4ae03e net: stmmac: fix up RX flow hash indirection table when setting channels
    3a997c0d2341 net: ethernet: ti: am65-cpsw: Fix mdio cleanup in probe
    0ae8cdf0153c gpio: davinci: Add irq chip flag to skip set wake
    1c19a42b2863 platform/x86: think-lmi: Clean up display of current_value on Thinkstation
    cccdb30935c8 platform/x86: think-lmi: Fix memory leaks when parsing ThinkStation WMI strings
    b9396d991abe platform/x86: think-lmi: Fix memory leak when showing current settings
    d65ff2fe877c ipv6: Fix an uninit variable access bug in __ip6_make_skb()
    926c8299ac3d net: qrtr: Do not do DEL_SERVER broadcast after DEL_CLIENT
    667eb99cf7c1 sctp: check send stream number after wait_for_sndbuf
    9692e16b5991 net: dsa: mv88e6xxx: Reset mv88e6393x force WD event bit
    5d1007e81fb6 net: don't let netpoll invoke NAPI if in xmit context
    e150a5c9f44c icmp: guard against too small mtu
    a64160124d5a NFSD: Avoid calling OPDESC() with ops->opnum == OP_ILLEGAL
    b9ba5906c420 net: qrtr: Fix a refcount bug in qrtr_recvmsg()
    3ef52e4bcfd7 net: qrtr: combine nameservice into main module
    30c5a016a37a wifi: mac80211: fix invalid drv_sta_pre_rcu_remove calls for non-uploaded sta
    32a8dc8d9ebe KVM: s390: pv: fix external interruption loop not always detected
    fcd6c7476e43 pwm: sprd: Explicitly set .polarity in .get_state()
    a8ab13c73259 pwm: cros-ec: Explicitly set .polarity in .get_state()
    c373e49fbb87 Drivers: vmbus: Check for channel allocation before looking up relids
    b50cd6789dbb gpio: GPIO_REGMAP: select REGMAP instead of depending on it
    0a473f834393 bpf: hash map, avoid deadlock with suitable hash mask
    543d66a54dbf serial: exar: Add support for Sealevel 7xxxC serial cards
    7773bb08e8b6 serial: 8250_exar: derive nr_ports from PCI ID for Acces I/O cards
    c73db89da686 iavf/iavf_main: actually log ->src mask when talking about it
    b2d29830db30 iavf: return errno code instead of status code
    cdf3f5ef1893 platform/x86: int3472/discrete: Ensure the clk/power enable pins are in output mode
    7798cd69cfc3 platform/x86: int3472: Split into 2 drivers
    5cc70e78bbcc RDMA/irdma: Do not request 2-level PBLEs for CQ alloc
    c22ac849aabb NFSD: pass range end to vfs_fsync_range() instead of count
    34a14759d90c NFSD: Fix sparse warning
    8059e200259e ocfs2: fix memory leak in ocfs2_mount_volume()
    b613d8dcdff3 ocfs2: rewrite error handling of ocfs2_fill_super
    05abe9c0bf38 ocfs2: ocfs2_mount_volume does cleanup job before return error

(From OE-Core rev: b5790f72f1a3e2c180ba6fcb54f0e96bdcdb4445)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 214643f386a3e4f226acd25903cde14a2c0a7376)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2023-04-28 04:01:15 -10:00
Bruce Ashfield
1a2b24c8db linux-yocto/5.15: update to v5.15.106
Updating  to the latest korg -stable release that comprises
the following commits:

    d86dfc4d95cd Linux 5.15.106
    06a948b8347c x86/PVH: avoid 32-bit build warning when obtaining VGA console info
    3abdf6d71fdb hsr: ratelimit only when errors are printed
    fcc09ef87e79 libbpf: Fix btf_dump's packed struct determination
    74059587b25d selftests/bpf: Add few corner cases to test padding handling of btf_dump
    c74ae8678dfa libbpf: Fix BTF-to-C converter's padding logic
    17a61d1e9431 selftests/bpf: Test btf dump for struct with padding only fields
    6777291c7b14 zonefs: Fix error message in zonefs_file_dio_append()
    71ab5c1d506d KVM: x86: Purge "highest ISR" cache when updating APICv state
    61e0863dc8dd KVM: x86: Inject #GP on x2APIC WRMSR that sets reserved bits 63:32
    4483dc41d123 KVM: VMX: Move preemption timer <=> hrtimer dance to common x86
    a58d4e66712b s390/uaccess: add missing earlyclobber annotations to __clear_user()
    1dfccde646aa KVM: arm64: Disable interrupts while walking userspace PTs
    25e74e728168 drm/amd/display: Add DSC Support for Synaptics Cascaded MST Hub
    3bfedfdbf92b drm/etnaviv: fix reference leak when mmaping imported buffer
    fd1f48613e9f rcu: Fix rcu_torture_read ftrace event
    9097ba15ea5c xtensa: fix KASAN report for show_stack
    8861429f883e ALSA: hda/realtek: Add quirk for Lenovo ZhaoYang CF4620Z
    77ab3e5f9873 ALSA: hda/realtek: Add quirks for some Clevo laptops
    f775413ffeff ALSA: usb-audio: Fix regression on detection of Roland VS-100
    b39d42ed67d5 ALSA: hda/conexant: Partial revert of a quirk for Lenovo
    305a171cf617 NFSv4: Fix hangs when recovering open state after a server reboot
    7624973bc15b powerpc: Don't try to copy PPR for task with NULL pt_regs
    3a9510113f5b pinctrl: at91-pio4: fix domain name assignment
    6c1bc7b50e02 pinctrl: amd: Disable and mask interrupts on resume
    45ed4e5149e8 net: phy: dp83869: fix default value for tx-/rx-internal-delay
    0f75ef136169 xen/netback: don't do grant copy across page boundary
    8a581b71cf68 can: j1939: prevent deadlock by moving j1939_sk_errqueue()
    a3373a681d9a zonefs: Always invalidate last cached page on append write
    c1310fc7abe6 btrfs: scan device in non-exclusive mode
    c976f9233ef9 btrfs: fix race between quota disable and quota assign ioctls
    1484852ca152 Input: goodix - add Lenovo Yoga Book X90F to nine_bytes_report DMI table
    b64305185b76 cifs: fix DFS traversal oops without CONFIG_CIFS_DFS_UPCALL
    0a2e0baf3677 cifs: prevent infinite recursion in CIFSGetDFSRefer()
    a5075c097de1 Input: focaltech - use explicitly signed char type
    cf43bc826159 Input: alps - fix compatibility with -funsigned-char
    16c951f3eba4 iommu/vt-d: Allow zero SAGAW if second-stage not supported
    e4fbeaa31362 pinctrl: ocelot: Fix alt mode for ocelot
    76f09582a191 net: ethernet: mtk_eth_soc: fix flow block refcounting logic
    9caf3cbf1224 net: dsa: mv88e6xxx: Enable IGMP snooping on user ports only
    4c6c0e8510a2 bnxt_en: Add missing 200G link speed reporting
    c519174366a3 bnxt_en: Fix typo in PCI id to device description string mapping
    24722a0e0925 bnxt_en: Fix reporting of test result in ethtool selftest
    3e3654bf679f i40e: fix registers dump after run ethtool adapter self test
    8d7b0b22ea22 net: ipa: compute DMA pool size properly
    81d2a7e93c83 ALSA: ymfpci: Fix BUG_ON in probe function
    95642872c466 ALSA: ymfpci: Create card with device-managed snd_devm_card_new()
    9cb4f23e4f7a ice: fix invalid check for empty list in ice_sched_assoc_vsi_to_agg()
    938eba5b434d ice: add profile conflict check for AVF FDIR
    0ea60b230d19 smsc911x: avoid PHY being resumed when interface is not up
    41f77a6d9841 net: mvpp2: parser fix PPPoE
    ec117d22f143 net: mvpp2: parser fix QinQ
    18d6e95fbb08 net: mvpp2: classifier flow fix fragmentation flags
    aa45d3dd74e9 loop: LOOP_CONFIGURE: send uevents for partitions
    83ee49ab185d loop: suppress uevents while reconfiguring the device
    aa2bff25e9bb s390/vfio-ap: fix memory leak in vfio_ap device driver
    bf70e0eab64c can: bcm: bcm_tx_setup(): fix KMSAN uninit-value in vfs_write
    959348f7c300 platform/x86/intel/pmc: Alder Lake PCH slp_s0_residency fix
    c8e7ff3071bf drm/i915/tc: Fix the ICL PHY ownership check in TC-cold state
    61e2e6d444cd net: stmmac: don't reject VLANs when IFF_PROMISC is set
    2d5cebf57296 net/net_failover: fix txq exceeding warning
    829a0d013c00 regulator: Handle deferred clk
    75155f4d8dcd r8169: fix RTL8168H and RTL8107E rx crc error
    4597e104a365 net: dsa: microchip: ksz8863_smi: fix bulk access
    c0de1a26e659 ptp_qoriq: fix memory leak in probe()
    d84796008a89 scsi: mpt3sas: Don't print sense pool info twice
    27b1ae000bf1 scsi: megaraid_sas: Fix crash after a double completion
    d63a83146d25 sfc: ef10: don't overwrite offload features at NIC reset
    7ea88e90dabb SUNRPC: fix shutdown of NFS TCP client socket
    34c554376ec9 mtd: rawnand: meson: invalidate cache on polling ECC bit
    dae47bf0222e platform/x86: think-lmi: Add possible_values for ThinkStation
    e91ffea491af platform/x86: think-lmi: only display possible_values if available
    fbfd5f59fa5c platform/x86: think-lmi: use correct possible_values delimiters
    2c67f08bdc5f platform/x86: think-lmi: add missing type attribute
    cb1baad60e5d ALSA: usb-audio: Fix recursive locking at XRUN during syncing
    65b723644294 mips: bmips: BCM6358: disable RAC flush for TP1
    e38b0ab9dba3 ca8210: Fix unsigned mac_len comparison with zero in ca8210_skb_tx()
    5362344e1c2c tracing: Fix wrong return in kprobe_event_gen_test.c
    19c71156fa92 tools/power turbostat: fix decoding of HWP_STATUS
    f8580c0a3279 tools/power turbostat: Fix /dev/cpu_dma_latency warnings
    6494344d7ef7 fbdev: au1200fb: Fix potential divide by zero
    f9c5deee4b66 fbdev: lxfb: Fix potential divide by zero
    86c8db5d12f4 fbdev: intelfb: Fix potential divide by zero
    c22a8d3ae54a fbdev: nvidia: Fix potential divide by zero
    9de1325bc2cc sched_getaffinity: don't assume 'cpumask_size()' is fully initialized
    f9584dcc5549 fbdev: tgafb: Fix potential divide by zero
    d23f65f08247 ALSA: hda/ca0132: fixup buffer overrun at tuning_ctl_set()
    cb1bc1223906 ALSA: asihpi: check pao in control_message()
    1ec57d1bed38 net: hsr: Don't log netdev_err message on unknown prp dst node
    4e90e52616f6 x86/PVH: obtain VGA console info in Dom0
    5175ed17a5a8 md: avoid signed overflow in slot_store()
    da35a4e6eee5 ASoC: codecs: tx-macro: Fix for KASAN: slab-out-of-bounds
    0725daaa9a87 xfrm: Zero padding when dumping algos and encap
    7258c58f6e25 bus: imx-weim: fix branch condition evaluates to a garbage value
    07987422023e ksmbd: don't terminate inactive sessions after a few seconds
    0c873ab68fcb kcsan: avoid passing -g for test
    b27e663cf1e5 kernel: kcsan: kcsan_test: build without structleak plugin
    1450c82a16bb usb: dwc3: gadget: Add 1ms delay after end transfer command without IOC
    1536e51c30ad usb: dwc3: gadget: move cmd_endtransfer to extra function
    0f7fddb5a9b7 fsverity: don't drop pagecache at end of FS_IOC_ENABLE_VERITY
    c957cbb87315 Linux 5.15.105
    ec5b78143535 NFSD: fix use-after-free in __nfs42_ssc_open()
    a9e53869cb43 ocfs2: fix data corruption after failed write
    5229bb42fba2 mm: kfence: fix using kfence_metadata without initialization in show_object()
    7a74603c248d sched/fair: Sanitize vruntime of entity being migrated
    ab938a0c81eb sched/fair: sanitize vruntime of entity being placed
    1ac20290f6b4 dm crypt: avoid accessing uninitialized tasklet
    eb485b7404a2 dm crypt: add cond_resched() to dmcrypt_write()
    443c9d522397 dm stats: check for and propagate alloc_percpu failure
    272dc775a52f i2c: xgene-slimpro: Fix out-of-bounds bug in xgene_slimpro_i2c_xfer()
    8e69fae32e88 firmware: arm_scmi: Fix device node validation for mailbox transport
    02b296978a21 tee: amdtee: fix race condition in amdtee_open_session
    9c7ee9471550 riscv: Handle zicsr/zifencei issues between clang and binutils
    c10023682096 riscv: mm: Fix incorrect ASID argument when flushing TLB
    555ec88c75ad drm/i915: Preserve crtc_state->inherited during state clearing
    476b3f03dca8 drm/i915/active: Fix missing debug object activation
    ef3c38f33b62 drm/amdgpu/nv: Apply ASPM quirk on Intel ADL + AMD Navi
    fdd5b4e37200 drm/meson: fix missing component unbind on bind errors
    071a69cde196 drm/bridge: lt8912b: return EPROBE_DEFER if bridge is not found
    5bb105cc72be nilfs2: fix kernel-infoleak in nilfs_ioctl_wrap_copy()
    8ec5e996c2f8 wifi: mac80211: fix qos on mesh interfaces
    51a8534c0f35 ksmbd: return unsupported error on smb1 mount
    496e186bc005 ksmbd: return STATUS_NOT_SUPPORTED on unsupported smb2.0 dialect
    604a4a6f8414 ksmbd: set FILE_NAMED_STREAMS attribute in FS_ATTRIBUTE_INFORMATION
    52e7ac849971 KVM: x86: hyper-v: Avoid calling kvm_make_vcpus_request_mask() with vcpu_mask==NULL
    6f682b070f46 kfence: avoid passing -g for test
    7dd27aed9c45 usb: ucsi: Fix NULL pointer deref in ucsi_connector_change()
    27c40c3aa4b0 usb: chipidea: core: fix possible concurrent when switch role
    ef74a7ffe77c usb: chipdea: core: fix return -EINVAL if request role is the same with current role
    76e8bd0f5544 usb: cdnsp: changes PCI Device ID to fix conflict with CNDS3 driver
    e4df290deb33 usb: cdnsp: Fixes issue with redundant Status Stage
    5662d139e6e1 usb: cdns3: Fix issue with using incorrect PCI device function
    bb579b3f75c6 usb: typec: tcpm: fix warning when handle discover_identity message
    0f84b0b71179 dm thin: fix deadlock when swapping to thin device
    66e5577cabc3 igb: revert rtnl_lock() that causes deadlock
    a179d3450c0c arm64: dts: imx8mm-nitrogen-r2: fix WM8960 clock name
    ed1869a25286 lockd: set file_lock start and end when decoding nlm4 testargs
    0bfadbbcd7a5 fsverity: Remove WQ_UNBOUND from fsverity read workqueue
    992a3f3e8a0c fscrypt: destroy keyring after security_sb_delete()
    287bb9a918e2 mm/slab: Fix undefined init_cache_node_node() for NUMA and !SMP
    408dcd7c3883 efi: sysfb_efi: Fix DMI quirks not working for simpledrm
    b131989797f7 usb: gadget: u_audio: don't let userspace block driver unbind
    cba76e1fb896 usb: dwc2: fix a devres leak in hw_enable upon suspend resume
    c83f7ba71d38 scsi: core: Add BLIST_SKIP_VPD_PAGES for SKhynix H28U74301AMR
    df0462e4b361 cifs: print session id while listing open files
    9a45df4ec39b cifs: empty interface list when server doesn't support query interfaces
    169a41073993 act_mirred: use the backlog for nested calls to mirred ingress
    5b347652aebd net/sched: act_mirred: better wording on protection against excessive stack growth
    f6cf5f13fa5b sh: sanitize the flags on sigreturn
    91bcae3df2a4 net: usb: qmi_wwan: add Telit 0x1080 composition
    f631af07cfc9 net: usb: cdc_mbim: avoid altsetting toggling for Telit FE990
    41b67e621b93 scsi: storvsc: Handle BlockSize change in Hyper-V VHD/VHDX file
    60643ef5a139 scsi: lpfc: Avoid usage of list iterator variable after loop
    67b8343998b8 scsi: lpfc: Check kzalloc() in lpfc_sli4_cgn_params_read()
    d758f543cea2 scsi: ufs: core: Add soft dependency on governor_simpleondemand
    0267cd047133 scsi: hisi_sas: Check devm_add_action() return value
    83e7b1db4523 scsi: target: iscsi: Fix an error message in iscsi_check_key()
    40c216efb327 selftests/bpf: check that modifier resolves after pointer
    8bf8d5dade4c m68k: Only force 030 bus error if PC not in exception table
    8c1d378b8c22 HID: intel-ish-hid: ipc: Fix potential use-after-free in work function
    d143e327c972 ca8210: fix mac_len negative array access
    3056af1a2d46 HID: cp2112: Fix driver not registering GPIO IRQ chip as threaded
    3e9aac5e935f drm/cirrus: NULL-check pipe->plane.state->fb in cirrus_pipe_update()
    a4c639012ad0 riscv: Bump COMMAND_LINE_SIZE value to 1024
    c2cf47dc0822 ACPI: x86: utils: Add Cezanne to the list for forcing StorageD3Enable
    8dc1c6efd7d2 thunderbolt: Rename shadowed variables bit to interrupt_bit and auto_clear_bit
    a74a2e124c48 thunderbolt: Use const qualifier for `ring_interrupt_index`
    752007df40ca thunderbolt: Add missing UNSET_INBOUND_SBTX for retimer access
    8f7525a8b98c thunderbolt: Disable interrupt auto clear for rings
    56cba129dd11 thunderbolt: Call tb_check_quirks() after initializing adapters
    d50a527b4815 thunderbolt: Use scale field when allocating USB3 bandwidth
    7ab026561cb0 uas: Add US_FL_NO_REPORT_OPCODES for JMicron JMS583Gen 2
    d6f7377528d2 scsi: qla2xxx: Perform lockless command completion in abort path
    6295b3ec64a3 scsi: qla2xxx: Synchronize the IOCB count to be in order
    f1e2ab24c4ea hwmon (it87): Fix voltage scaling for chips with 10.9mV ADCs
    5662f50cd9e9 hwmon: fix potential sensor registration fail if of_node is missing
    8f6b943f9fc9 entry/rcu: Check TIF_RESCHED _after_ delayed RCU wake-up
    eb57d0dcd5da entry: Snapshot thread flags
    d9c53eb46217 thread_info: Add helpers to snapshot thread flags
    ebea2e16504f platform/chrome: cros_ec_chardev: fix kernel data leak from ioctl
    8efae2112d91 Bluetooth: btsdio: fix use after free bug in btsdio_remove due to unfinished work
    c35fd1b9b90a Bluetooth: L2CAP: Fix responding with wrong PDU type
    b203ee4be2f1 Bluetooth: btqcomsmd: Fix command timeout after setting BD address
    771d3c1c949b net: mdio: thunder: Add missing fwnode_handle_put()
    b433fbf17603 net: dsa: mt7530: move setting ssc_delta to PHY_INTERFACE_MODE_TRGMII case
    01c727402ddc net: dsa: mt7530: move lowering TRGMII driving to mt7530_setup()
    5163bb8e4c6b net: dsa: mt7530: move enabling disabling core clock to mt7530_pll_setup()
    a76d35f3448c gve: Cache link_speed value from device
    c33344b79722 ksmbd: fix possible refcount leak in smb2_open()
    96039c44ae47 ksmbd: add low bound validation to FSCTL_QUERY_ALLOCATED_RANGES
    d897216325d7 ksmbd: add low bound validation to FSCTL_SET_ZERO_DATA
    7a83bb6d56a5 hvc/xen: prevent concurrent accesses to the shared ring
    29e80d7964cf nvme-tcp: fix nvme_tcp_term_pdu to match spec
    c7037dea19f0 net/sonic: use dma_mapping_error() for error check
    b41f37dbd9cd erspan: do not use skb_mac_header() in ndo_start_xmit()
    4a8286baf22e atm: idt77252: fix kmemleak when rmmod idt77252
    48f52431af99 net: dsa: tag_brcm: legacy: fix daisy-chained switches
    388188fb58be net/mlx5: E-Switch, Fix an Oops in error handling code
    6068a6db3a96 net/mlx5: Read the TC mapping of all priorities on ETS query
    4df1f2d36bdc net/mlx5: Fix steering rules cleanup
    2b0f1716c107 net/mlx5e: Set uplink rep as NETNS_LOCAL
    54869daa6a43 bpf: Adjust insufficient default bpf_jit_limit
    9b2e9105230f i40e: fix flow director packet filter programming
    7a29799fc141 iavf: fix hang on reboot with ice
    ce19c70f308f keys: Do not cache key in task struct if key is requested from kernel thread
    0cb68c307e72 bootconfig: Fix testcase to increase max node
    90874b76e5f8 octeontx2-vf: Add missing free for alloc_percpu
    77d2f5ff9365 net/ps3_gelic_net: Use dma_mapping_error
    cc8531d0e223 net/ps3_gelic_net: Fix RX sk_buff length
    8c4a180dc123 net: qcom/emac: Fix use after free bug in emac_remove due to race condition
    e686b78a003a drm/i915/gt: perform uc late init after probe error injection
    cbb8bac2388a net: mdio: fix owner field for mdio buses registered using ACPI
    b94af62cdd50 net: mdio: fix owner field for mdio buses registered using device-tree
    0bdf593390e7 net: phy: Ensure state transitions are processed from phy_stop()
    4ab9e85a5ce0 xirc2ps_cs: Fix use after free bug in xirc2ps_detach
    e42d3bde4ec0 qed/qed_sriov: guard against NULL derefs from qed_iov_get_vf_info
    ba6c40227108 net: usb: smsc95xx: Limit packet length to skb->len
    9bbb3d3f218f net: dsa: b53: mmap: fix device tree support
    9311e7a554df scsi: scsi_dh_alua: Fix memleak for 'qdata' in alua_activate()
    257738627a9b i2c: hisi: Only use the completion interrupt to finish the transfer
    c0deddabb278 i2c: imx-lpi2c: check only for enabled interrupt flags
    b82b0a0eea27 igc: fix the validation logic for taprio's gate list
    68ebdcba619a igbvf: Regard vf reset nack as success
    9630432b427f intel/igbvf: free irq on the error path in igbvf_request_msix()
    2afe7aebf642 iavf: fix non-tunneled IPv6 UDP packet type and hashing
    078e049c49a6 iavf: fix inverted Rx hash condition leading to disabled hash
    3cfc3564411a xsk: Add missing overflow check in xdp_umem_reg
    1d59b8fae0c3 arm64: dts: imx8mn: specify #sound-dai-cells for SAI nodes
    98c9bca167e6 ARM: dts: imx6sl: tolino-shine2hd: fix usbotg1 pinctrl
    ed5f3c0b95bd ARM: dts: imx6sll: e60k02: fix usbotg1 pinctrl
    0fdb1cc4fe52 power: supply: da9150: Fix use after free bug in da9150_charger_remove due to race condition
    4ca3fd39c72e power: supply: bq24190: Fix use after free bug in bq24190_remove due to race condition
    10ce6db6253d power: supply: bq24190_charger: using pm_runtime_resume_and_get instead of pm_runtime_get_sync
    0b54d75aa43a net: tls: fix possible race condition between do_tls_getsockopt_conf() and do_tls_setsockopt_conf()
    2ebe231abaf1 trace/hwlat: Do not start per-cpu thread if it is already running
    7743dd873f2a trace/hwlat: make use of the helper function kthread_run_on_cpu()
    909c5eb6ed76 kthread: add the helper function kthread_run_on_cpu()
    09b51f10bc1f serial: 8250: ASPEED_VUART: select REGMAP instead of depending on it
    cfb64de61f07 serial: 8250: SERIAL_8250_ASPEED_VUART should depend on ARCH_ASPEED
    90530e7214c8 tty: serial: fsl_lpuart: fix race on RX DMA shutdown
    b7d0fbe4976d tty: serial: fsl_lpuart: switch to new dmaengine_terminate_* API
    90a77bca4240 serial: fsl_lpuart: Fix comment typo
    bde1ae240751 tracing/hwlat: Replace sched_setaffinity with set_cpus_allowed_ptr
    5255e6d49ff9 perf: fix perf_event_context->time
    ac5f88642cb2 perf/core: Fix perf_output_begin parameter is incorrectly invoked in perf_event_bpf_output
    d2430d45f1a0 interconnect: qcom: osm-l3: fix icc_onecell_data allocation
    115472395b0a Linux 5.15.104
    de3ef7ba684a perf: Fix check before add_event_to_groups() in perf_group_detach()
    02904e8a2f65 HID: uhid: Over-ride the default maximum data buffer value with our own
    3df32812eb4b HID: core: Provide new max_buffer_size attribute to over-ride the default
    ffe2318405e6 PCI/DPC: Await readiness of secondary bus after reset
    09795f82aecc PCI: Unify delay handling for reset and resume
    f4ba55411cc8 io_uring: avoid null-ptr-deref in io_arm_poll_handler
    6ab7d3361755 drm/i915/active: Fix misuse of non-idle barriers as fence trackers
    71dffdd4764c drm/i915: Don't use stolen memory for ring buffers with LLC
    86db319d25db x86/resctrl: Clear staged_config[] before and after it is used
    0186f7656940 x86/mm: Fix use of uninitialized buffer in sme_enable()
    09d3a46c8c02 x86/mce: Make sure logged MCEs are processed after sysfs update
    8575c98224b2 cpuidle: psci: Iterate backwards over list in psci_pd_remove()
    b3d042638049 net: phy: nxp-c45-tja11xx: fix MII_BASIC_CONFIG_REV bit
    f3de49782612 trace/hwlat: Do not wipe the contents of per-cpu thread data
    cb72b4bd81b9 fbdev: stifb: Provide valid pixelclock and add fb_check_var() checks
    e9cdd3f722b6 mmc: sdhci_am654: lower power-on failed message severity
    b02de083c7c7 mm/userfaultfd: propagate uffd-wp bit when PTE-mapping the huge zeropage
    87b9ac7bd301 ice: avoid bonding causing auxiliary plug/unplug under RTNL lock
    520e134431ac nvme-pci: add NVME_QUIRK_BOGUS_NID for Netac NV3000
    2a0d71fabfeb ftrace: Fix invalid address access in lookup_rec() when index is 0
    ad7f9c6982b1 mptcp: fix lockdep false positive in mptcp_pm_nl_create_listen_socket()
    f4afee17de43 mptcp: avoid setting TCP_CLOSE state twice
    64473c18d27a mptcp: add ro_after_init for tcp{,v6}_prot_override
    c1df4bed3d91 mptcp: fix possible deadlock in subflow_error_report
    ccf44ffbbf25 drm/amd/pm: Fix sienna cichlid incorrect OD volage after resume
    64ef8aa3910b drm/sun4i: fix missing component unbind on bind errors
    5cfb617967b0 drm/shmem-helper: Remove another errant put in error path
    d1d826954475 riscv: asid: Fixup stale TLB entry cause application crash
    aeefcfc57978 Revert "riscv: mm: notify remote harts about mmu cache updates"
    882cbe0c5d6a ALSA: hda/realtek: Fix the speaker output on Samsung Galaxy Book2 Pro
    36d75e1f7357 ALSA: hda: intel-dsp-config: add MTL PCI id
    9c2f09add608 KVM: nVMX: add missing consistency checks for CR0 and CR4
    77fcc52d2919 cifs: Fix smb2_set_path_size()
    9b9a118cc428 tracing: Make tracepoint lockdep check actually test something
    2846bf67cd24 tracing: Check field value in hist_field_name()
    2dd00dbc6a5a tracing: Make splice_read available again
    fd4738ae1a0c interconnect: exynos: fix node leak in probe PM QoS error path
    2e0b13a18272 interconnect: fix mem leak when freeing nodes
    62b74cf8bcee s390/ipl: add missing intersection check to ipl_report handling
    86afb633beaa firmware: xilinx: don't make a sleepable memory allocation from an atomic context
    250a11f9c43b serial: 8250_fsl: fix handle_irq locking
    4c23bf093449 serial: 8250_em: Fix UART port type
    53a5ab3a8991 tty: serial: fsl_lpuart: skip waiting for transmission complete when UARTCTRL_SBK is asserted
    1c93c42c7bb2 ext4: fix possible double unlock when moving a directory
    bec1bea2fa97 drm/amd/display: fix shift-out-of-bounds in CalculateVMAndRowBytes
    f9252605b8f3 sh: intc: Avoid spurious sizeof-pointer-div warning
    0fc608a115ce net/9p: fix bug in client create for .L
    2fece63b55c5 drm/amdkfd: Fix an illegal memory access
    1aec41c98cce ext4: fix task hung in ext4_xattr_delete_inode
    499fef2030fb ext4: update s_journal_inum if it changes after journal replay
    088da6b80539 ext4: fail ext4_iget if special inode unallocated
    eccd017165db jffs2: correct logic when creating a hole in jffs2_write_begin
    4392e87c47e8 mmc: atmel-mci: fix race between stop command and start of next command
    0c511f926b00 media: m5mols: fix off-by-one loop termination error
    233058efee02 hwmon: (ltc2992) Set `can_sleep` flag for GPIO chip
    b576de01da80 hwmon: (adm1266) Set `can_sleep` flag for GPIO chip
    c80b2acdb049 kconfig: Update config changed flag before calling callback
    52f64c5fc0d6 hwmon: tmp512: drop of_match_ptr for ID table
    3f3576e25bfe hwmon: (ucd90320) Add minimum delay between bus accesses
    9cc4aa40b58c hwmon: (ina3221) return prober error code
    7091951c2ca9 hwmon: (xgene) Fix use after free bug in xgene_hwmon_remove due to race condition
    a8e42dbfc493 hwmon: (adt7475) Fix masking of hysteresis registers
    d1f4eda1ae85 hwmon: (adt7475) Display smoothing attributes in correct order
    93c8cbeb1b2b bonding: restore bond's IFF_SLAVE flag if a non-eth dev enslave fails
    d424c7b1c478 bonding: restore IFF_MASTER/SLAVE flags on bond enslave ether type change
    8a1ce024f1f6 ethernet: sun: add check for the mdesc_grab()
    030393041f8c qed/qed_mng_tlv: correctly zero out ->min instead of ->hour
    a7836253349e selftests: net: devlink_port_split.py: skip test if no suitable device available
    3cfdefdaaa4b net/iucv: Fix size of interrupt data
    7bf0eac3fdd2 net: usb: smsc75xx: Move packet length check to prevent kernel panic in skb_pull
    c99779740100 ipv4: Fix incorrect table ID in IOCTL path
    340dd8f1942a sh_eth: avoid PHY being resumed when interface is not up
    d5236286398d ravb: avoid PHY being resumed when interface is not up
    7059be754873 net: dsa: mv88e6xxx: fix max_mtu of 1492 on 6165, 6191, 6220, 6250, 6290
    b89a453c6918 ice: xsk: disable txq irq before flushing hw
    d1bfd4cf6bb8 block: sunvdc: add check for mdesc_grab() returning NULL
    f1d5888a5efe nvmet: avoid potential UAF in nvmet_req_complete()
    07eac3310e00 nvme: fix handling single range discard request
    fff9441da1c3 block: null_blk: Fix handling of fake timeout request
    6d3ff07347d3 drm/bridge: Fix returned array size name for atomic_get_input_bus_fmts kdoc
    105db6574281 net: usb: smsc75xx: Limit packet length to skb->len
    b615238e5bc0 net/smc: fix deadlock triggered by cancel_delayed_work_syn()
    84dd9cc34014 nfc: st-nci: Fix use after free bug in ndlc_remove due to race condition
    edc0a34e277b net: phy: smsc: bail out in lan87xx_read_status if genphy_read_status fails
    e0a557fc1daf net: tunnels: annotate lockless accesses to dev->needed_headroom
    407badf73ec9 loop: Fix use-after-free issues
    a0316de981ce net: dsa: mt7530: set PLL frequency and trgmii only when trgmii is used
    f48468b27c0b net: dsa: mt7530: remove now incorrect comment regarding port 5
    6ffa05700100 qed/qed_dev: guard against a possible division by zero
    b108bd9e6be0 net/smc: fix NULL sndbuf_desc in smc_cdc_tx_handler()
    d59d2561da73 drm/i915/psr: Use calculated io and fast wake lines
    297ae18bd2cd drm/i915/display: clean up comments
    21d679cb983e drm/i915/display/psr: Handle plane and pipe restrictions at every page flip
    8c80b12e697f drm/i915/display/psr: Use drm damage helpers to calculate plane damaged area
    eea001d88ffd drm/i915/display: Workaround cursor left overs with PSR2 selective fetch enabled
    437bb839e36c PCI: s390: Fix use-after-free of PCI resources with per-function hotplug
    ee6ef8137789 vdpa_sim: set last_used_idx as last_avail_idx in vdpasim_queue_ready
    1cdbaf18a5e4 vdpa_sim: not reset state in vdpasim_queue_ready
    4ff826952665 i40e: Fix kernel crash during reboot when adapter is in recovery mode
    ecaa1bf50635 ipvlan: Make skb->skb_iif track skb->dev for l3s mode
    2bee84369b76 nfc: pn533: initialize struct pn533_out_arg properly
    ad07290d63ff tcp: tcp_make_synack() can be called from process context
    2a764d55e938 scsi: core: Fix a procfs host directory removal regression
    a219cabadaee netfilter: nft_redir: correct value of inet type `.maxattrs`
    de03d130176b netfilter: nft_redir: correct length for loading protocol registers
    d2a2ad64b9b6 netfilter: nft_masq: correct length for loading protocol registers
    343fe451e6d3 netfilter: nft_nat: correct length for loading protocol registers
    256bcf626b7c ALSA: hda: Match only Intel devices with CONTROLLER_IN_GPU()
    9937f784a608 scsi: mpt3sas: Fix NULL pointer access in mpt3sas_transport_port_add()
    29cb0f6c1dd8 docs: Correct missing "d_" prefix for dentry_operations member d_weak_revalidate
    a5a1a7112e98 clk: HI655X: select REGMAP instead of depending on it
    0f78e36f652a drm/meson: fix 1px pink line on GXM when scaling video overlay
    630f8a857578 cifs: Move the in_send statistic to __smb_send_rqst()
    418bde7227dd drm/panfrost: Don't sync rpm suspension after mmu flushing
    b9cd2f875525 xfrm: Allow transport-mode states with AF_UNSPEC selector

(From OE-Core rev: 95d731e4d9c244b392c3b85b9aab0f59546c84df)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit d04122e76e21654caef2ec42ab5612bc9883d5f7)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2023-04-28 04:01:15 -10:00
Ross Burton
aec8ff5fc3 screen: backport fix for CVE-2023-24626
(From OE-Core rev: c72eb91464b1a0792f87e6321bbdd02f0012ffd7)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
(cherry picked from commit 05c7f446ca790f3695d04665aad118e42b7a52be)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2023-04-28 04:01:15 -10:00
Ross Burton
71719963b9 xserver-xorg: backport fix for CVE-2023-1393
(From OE-Core rev: e4670a8bf33243326b75e79f3d739c869d329659)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 7828f7026b4cd3ae97ebe5d849c09fabbc17272d)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2023-04-28 04:01:15 -10:00
Robert Yang
965c2ec095 bitbake: fetch/git: Fix local clone url to make it work with repo
The "git clone /path/to/git/objects_symlink" couldn't work after the following
change:

6f054f9fb3

But repo command manages the git repo as symlinks, so check whether the objects
is an symlink to fix the problem:

* Nothing is changed if git/objects is not a symlink
* Use "git clone file://" when git/objects is a symlink

(Bitbake rev: 5b105e76dd7de3b9a25b17b397f2c12c80048894)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit a0d8108eba8d542707740d00c66c1c5f5b963f18)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2023-04-14 06:51:44 -10:00
Mingli Yu
0f1f69eabe report-error: catch Nothing PROVIDES error
Make the report-error catch Nothing PROVIDES error and then
we can check it directly via error report web.

(From OE-Core rev: 5f2d74856e6790e8742f7d6049f7a21c4c17d987)

Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit a57d8f82b83554c821a83eacc02f9c73b263ff02)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2023-04-14 06:30:30 -10:00
Martin Jansa
bc0bc0504e runqemu: respect IMAGE_LINK_NAME
* when searching for qemuboot.conf
* don't assume that IMAGE_LINK_NAME is always
  <rootfs>-<machine> (with <rootfs>-<machine>.qemuboot.conf)

* runqemu: use IMAGE_LINK_NAME set by testimage.bbclass or query with bitbake -e

* testimage.bbclass was setting DEPLOY_DIR which I don't see used
  anywhere else, so I assume it was supposed to be DEPLOY_DIR_IMAGE as mentioned
  in corresponding runqemu code, do the same with IMAGE_LINK_NAME variable

* add virtual/kernel as bitbake -e target in run_bitbake_env to make
  sure IMAGE_LINK_NAME is defined (kernel-artifact-names.bbclass inherits
  image-artifact-names.bbclass as well)

* improve .qemuboot.conf search
  1st search for file matching the rootfs and only when not found
  try again with .rootfs suffix removed

[YOCTO #12937]

(From OE-Core rev: 82b7a8d5e81d766d0a5c2d0fef0f4c13a8f80c31)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 716eb55bb963db7b02d985849cb025898aabc855)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2023-04-14 06:30:30 -10:00
Soumya
d4e7033be5 shadow: Fix can not print full login timeout message
When we do not enter password during login, it is expected to display message "Login timed out after 60 seconds". But it prints only first few bytes(like "Login t") when write is immediately followed by exit.
Fix - Calling exit from new handler provides enough time to display full message.

Upstream-Status: Accepted [670cae8348]

(From OE-Core rev: e5c1b64ea66fb1cbdb6403fa26d4d42b9d64e44f)

Signed-off-by: Soumya <soumya.sambu@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 644cfe9dcf351bfa6c67f4b4d1e7dec416a59021)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2023-04-14 06:30:30 -10:00
Ross Burton
6310d789e6 oeqa/runtime: clean up deprecated backslash expansion
(From OE-Core rev: bed045277b835d38048021e7ad158f27dd3ae9bb)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 77085a05240c3f8226b9f2199c977f2555807789)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2023-04-14 06:30:30 -10:00
Martin Jansa
d1064ebac9 selftest: runqemu: use better error message when asserts fail
* It was showing whole log and that the runqemu command failed, but not
  where the log file is, nor why it thinks the runqemu failed

[YOCTO #12937]

(From OE-Core rev: c79334f7bd52db6edf05f05616c5a3398d32a55c)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit ad4b72e6524114a3bdee10cab71f194ea143cd24)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2023-04-14 06:30:30 -10:00
Martin Jansa
8764b68756 selftest: runqemu: better check for ROOTFS: in the log
* it was searching for line like this:
  ROOTFS: [/OE/build/poky/build/build-st-2023-03-20-esdk-runqemu-patch1/runqemu.RunqemuTests.test_boot_machine_ext4/build-st/tmp/deploy/images/qemux86-64/core-image-minimal-qemux86-64-20230320081121.rootfs.ext4]
  but with IMAGE_NAME_SUFFIX changed to something else than default ".rootfs"
  or with my pending changes the line looks like this:
  ROOTFS: [/OE/build/poky/build/build-st-2023-03-20-esdk-runqemu-patch2/runqemu.RunqemuTests.test_boot_machine_ext4/build-st/tmp/deploy/images/qemux86-64/core-image-minimal-qemux86-64.rootfs-20230320085744.ext4]
  and test was failing.

* Check for whole line starting with ROOTFS: and ending just with .ext4

[YOCTO #12937]

(From OE-Core rev: 1079fade975c54b62b0187b1acd9c9475a5bbe7e)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 7a0f622f23aff2c4eeca0606e7682931eb53287a)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2023-04-14 06:30:30 -10:00
Enrico Jörns
cd8f969669 oeqa/utils/qemurunner: replace hard-coded user 'root' in debug output
Since login user is configurable with boot_patterns['send_login_user'],
unconditionally using 'root' in the debug message can be confusing.

Also fix the debug message to say 'Logged in' instead of 'Logged'.

(From OE-Core rev: 386f55d2ba5783038c810dfde98b421191fa00de)

Signed-off-by: Enrico Jorns <ejo@pengutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 900e3d42b918b5a33d8d952b3a8078fbe72ba98f)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2023-04-14 06:30:30 -10:00
Enrico Jörns
b0716ad948 oeqa/utils/commands: remove unused imports
(From OE-Core rev: 9faa5ad7ea61a2edd121b526c688f964e0b656ac)

Signed-off-by: Enrico Jorns <ejo@pengutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 0c00b5cdd57c3d9c47d4780d6627c74221911b72)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2023-04-14 06:30:30 -10:00
Enrico Jörns
3a7ddfca01 oeqa/utils/commands: fix usage of undefined EPIPE
(From OE-Core rev: d0eeb32cb0d990698287955dd7cac643bcebdafc)

Signed-off-by: Enrico Jorns <ejo@pengutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 1cb17e37e275794e26debed2d171c2394d8bb945)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2023-04-14 06:30:30 -10:00
Enrico Jörns
2e26dcb7ed oeqa/targetcontrol: remove unused imports
(From OE-Core rev: 6659360828b5d022b90e71883159a75f4def7382)

Signed-off-by: Enrico Jorns <ejo@pengutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 46b42edbf814d15be3a18283018ede2d4f817bc6)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2023-04-14 06:30:29 -10:00
Enrico Jörns
565850740c oeqa/targetcontrol: do not set dump_host_cmds redundantly
This is already set above, thus simply use the set value from there.

(From OE-Core rev: ddcd9061ec11a53bbb4b7c9ffc1b7880f45a17d5)

Signed-off-by: Enrico Jorns <ejo@pengutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 2f6571ffb23b1a0b5bd6a1212fc108e536f04539)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2023-04-14 06:30:29 -10:00
Enrico Jörns
ab3f78f960 oeqa/targetcontrol: fix misspelled RuntimeError
(From OE-Core rev: 21c513fccbf743f9000c3b7b13fc4962c3ae5c7d)

Signed-off-by: Enrico Jorns <ejo@pengutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 92ffc35052768c753a89b4839c70db87072437a2)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2023-04-14 06:30:29 -10:00
Enrico Jörns
3f20a7cc1f oeqa/selftest/cases/runqemu: update imports
'tempfile' and 'oeqa.utils.command.runCmd' are unused while 'os' is
actually used.

(From OE-Core rev: 21a31082b7100f82280c1e0b225e6d82b9f6e4f9)

Signed-off-by: Enrico Jorns <ejo@pengutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 50f766233e83528eebeca92877277374c7193530)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2023-04-14 06:30:29 -10:00
Tobias Hagelborn
5e4a87d6e9 lib/oe/gpg_sign.py: Avoid race when creating .sig files in detach_sign
Move the signature file into place only after it is successfully signed.
This to avoid race and corrupted .sig files in cases multiple onging
builds write to a shared sstate-cache dir.

(From OE-Core rev: bbb20a6d74aebff830fcb0c69739a10fd64d9cf3)

Signed-off-by: Tobias Hagelborn <tobiasha@axis.com>
Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit b4ec08ea9efebac262d43f47d95a356fe2829de9)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2023-04-14 06:30:29 -10:00
Khem Raj
75d03fe483 Revert "runqemu: Add workaround for APIC hang on pre 4.15 kernels on qemux86"
This reverts commit 82e67b82ea8e12aa0b7b9db1d84fec0436dec71b.

It was commited as part of https://bugzilla.yoctoproject.org/show_bug.cgi?id=12301
for kernels < 4.15, as of now oldest builder kernel we have is 4.15 on
ubuntu 18.04 so we should not require this workaround. Moreover, this
fixes an smp problem with qemux86 where no matter what -smp <x> option
is used, qemu always starts with single core.

(From OE-Core rev: 3479caf1eb1a67c53722ca774bfd94145b3669b5)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit fa8a7c0608fc800c48d0ff1cd832ad63c51eeab1)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2023-04-14 06:30:29 -10:00
Fawzi KHABER
78fe6339e8 oeqa/selftest/cases/package.py: adding unittest for package rename conflicts
This Unittest tries to rename a package, using an already used name and
fails on do_package.

Reviewed-by: Yoann CONGAL <yoann.congal@smile.fr>
(From OE-Core rev: efcb5c2b6009632c1ca1c7b401944ccf9fe2eb44)

Signed-off-by: Fawzi KHABER <fawzi.khaber@smile.fr>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit c3fe173d5196506d89aa464ba56aabcf581a60db)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2023-04-14 06:30:29 -10:00
Fawzi KHABER
684dfc79ff package.bbclass: check packages name conflict in do_package
It is possible to rename packages with the macro PKG:${PN} and result in
a package name conflict if the target name exists already.

Add a fatal check to prevent this issue to go unnoticed.

Fix [Yocto #12060]

Reviewed-by: Yoann CONGAL <yoann.congal@smile.fr>
(From OE-Core rev: c6cdb13c8cf31dd2613817b0dab9599f77f59921)

Signed-off-by: Fawzi KHABER <fawzi.khaber@smile.fr>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit f6cb63d3a871c4eef52d981131a56bf41aa1dcdf)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2023-04-14 06:30:29 -10:00
Arturo Buzarra
517c97a80e run-postinsts: Set dependency for ldconfig to avoid boot issues
If a package with a postsints script requires ldconfig, the package class adds
a ldconfig postinst fragment to initialize it before. Systemd has its own
ldconfig.service to initialize it and sometimes if both services are running
at the same time in the first boot, the first one will work, but the second
one will fail with the following error:

    ldconfig[141]: /sbin/ldconfig: Renaming of /etc/ld.so.cache~ to /etc/ld.so.cache failed: No such file or directory

This commit adds a ordering dependency between them to make sure that only one
service is running at the same time.

(From OE-Core rev: 8362859236d7b9f312f2d36f2437f4abbdeb5716)

Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 4e9d812e127dc6743f52f4881e509e8e2e833afe)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2023-04-14 06:30:29 -10:00
Jose Quaresma
74595f27bd oeqa/selftest/reproducible: Split different packages from missing packages output
When we provide sstate_targets recipes they are reported as missing
which is not quite correct because they are proveided to cut build/debugging time.

(From OE-Core rev: a623217aa3297eb6c0616723901788dfd706e1d7)

Signed-off-by: Jose Quaresma <jose.quaresma@foundries.io>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit fd70a564d6946fa460638dd04ce2daecf4566cf3)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2023-04-14 06:30:29 -10:00
Jose Quaresma
980e07f096 oeqa/selftest: OESelftestTestContext: convert relative to full path when newbuilddir is provided
Relative paths in BBLAYERS only works when the new build dir are on the same
ascending directory node:
 .
 ├── build
 ├── build-st

It works because they share the same ascending relative directory node.

So use the full path when the argument newbuilddir is provided
to make the oe-selftest work everywere regardless of the location chosen.

(From OE-Core rev: 41f169ea23078cc8f4a6b6fc6b59230f05cb758b)

Signed-off-by: Jose Quaresma <jose.quaresma@foundries.io>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 2e022c1977bc1006c00a87e08a2dca5b69db4801)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2023-04-14 06:30:29 -10:00
Jose Quaresma
ee5fc31a74 oeqs/selftest: OESelftestTestContext: replace the os.environ after subprocess.check_output
No function change but is needed to simplify the next patch.

(From OE-Core rev: 273cc6d6a11c4f11f80830f23489a287f38c1a17)

Signed-off-by: Jose Quaresma <jose.quaresma@foundries.io>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 193d8f0d6383f54c61f90d58eeb8f41580c2360a)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2023-04-14 06:30:29 -10:00
Andrew Geissler
ab086e9bd6 filemap.py: enforce maximum of 4kb block size
The logic in this script validates that the length of data sections are
evenly divisible by the block size. On most systems the block size is
4KB and all is good. Some systems though, such as ppc64le, have a block
size larger then 4KB. For example on a POWER9 based ppc64le system, the
block size is 64KB.

This results in this script failing with errors like this when building
wic images:
|440, in _do_get_mapped_ranges
|     assert extent_len % self.block_size == 0
|            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
| AssertionError

In this case the data section size was 268KB and the block size was
64KB, resulting in the above assert failure.

Resolves https://bugzilla.yoctoproject.org/show_bug.cgi?id=15075

(From OE-Core rev: 303cc9ce3a9d7ca85542f12ebfda27eeb449e73b)

Signed-off-by: Andrew Geissler <geissonator@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 1e23b803af6991fc20e4a4e88a0ef0541399e722)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2023-04-14 06:30:29 -10:00
Michael Halstead
8c1fa12568 uninative: Upgrade to 3.9 to include glibc 2.37
Update uninative to work with the new glibc 2.37.

(From OE-Core rev: e8bcd269f42f7c8e7a67dd1c28f76cca682efab0)

Signed-off-by: Michael Halstead <mhalstead@linuxfoundation.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2023-04-14 06:30:29 -10:00
Ross Burton
3c9ec6f130 tzdata: upgrade to 2023c
Drop a backport patch as it is now integrated.

(From OE-Core rev: b8c2ec59f0cf18f5bfaea87d4cef3e8be093d98b)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 80d26d1da47dcd9213a7083d9493a7bce0897a57)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2023-04-14 06:30:29 -10:00
Richard Purdie
1419753c1b xdg-utils: Fix CVE number
In the previous commit I somehow mixed up and used an incorrect CVE number.
Use the correct one.

(From OE-Core rev: 2d03615127bb58d7865e04230ff42421b56a4c43)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit b3e2729f686ff6e16e11590bcd701c057ae5f1e2)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2023-04-14 06:30:29 -10:00
Richard Purdie
b97bbc68e0 xdg-utils: Add a patch for CVE-2020-27748
Take a patch submitted upstream for the issue while upstream decide what
to do. We don't use thunderbird integration so this isn't an issue for us.

(From OE-Core rev: 5b14528e7bfe2f0a29cc2d40253e49be5202efcf)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit b85b7714a44caa70beb2f115483ee52745aa1b97)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2023-04-14 06:30:29 -10:00
Ross Burton
b99bc8c33f scripts/lib/buildstats: handle top-level build_stats not being complete
If we try to parse a buildstats directory which was either aborted or
is still being built then the top-level build_stats file doesn't
contain an elapsed value which causes an exception:

UnboundLocalError: local variable 'elapsed' referenced before assignment

Default both start and elapsed to 0 so that the parse succeeds.

(From OE-Core rev: 6c9ca2f2de98c84d11beccbfde7c1e26cb25dfb6)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 701d985aa8f2e9c2b9c0736fa25b424f3701889e)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-04-04 17:46:24 +01:00
Peter Marko
c8dcc24807 gcc-shared-source: do not use ${S}/.. in deploy_source_date_epoch
This function is referencing '${S}/..'.
It uses ${S} only as good known directory path to start
traversing from, and it does not need it to exist or be populated.
If ${S} does not exist yet, the function will fail because
it cannot evaluate path .. from non-existing directory.

Reproducer (verified in master and kirkstone):
  bitbake gcc -c deploy_source_date_epoch
  bitbake gcc -c cleansstate
  rm -rf build/tmp
  bitbake gcc -c deploy_source_date_epoch

(From OE-Core rev: 6134af5739c8a373db709bdbe2ba897d1ccaf39a)

Signed-off-by: Peter Marko <peter.marko@siemens.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 42661a59cda164b2d236ffc35b4d8cf43312b677)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-04-04 17:46:24 +01:00
Wang Mingyu
acfdf3ccab xcb-proto: Fix install conflict when enable multilib.
Error: Transaction test error:
  file /usr/share/pkgconfig/xcb-proto.pc conflicts between attempted installs of lib32-xcb-proto-dev-1.15.2-r0.armv7ahf_neon and xcb-proto-dev-1.15.2-r0.cortexa57

The differences between the two files are as follows:
@@ -2,7 +2,7 @@
 exec_prefix=/usr
 datarootdir=${prefix}/share
 datadir=/usr/share
-libdir=/usr/lib64
+libdir=/usr/lib
 xcbincludedir=${pc_sysrootdir}${datadir}/xcb
 PYTHON_PREFIX=${prefix}
 pythondir=${pc_sysrootdir}${libdir}/python3.11/site-packages

(From OE-Core rev: a9fdbd8d5a2017248f519784e4236b3983e5ecac)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 4876189dd2ae5a04a296b11b537b9f613159c6bf)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-04-04 17:46:24 +01:00
Martin Jansa
699b3001ec bmap-tools: switch to main branch
* master branch was removed upstream:
  downloads/git2/github.com.intel.bmap-tools $ git remote prune origin
  Pruning origin
  URL: https://github.com/intel/bmap-tools
   * [pruned] refs/heads/master
   * [pruned] refs/pull/73/merge

* downloads/git2/github.com.intel.bmap-tools $ git branch -a --contains c0673962a8ec1624b5189dc1d24f33fe4f06785a
  main
  release-3.0

(From OE-Core rev: 8fe9e9967c47270c869347581dd5c5b31d4fa623)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 369fee186d6916322b9be9d936b654d0c5910cb3)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-04-04 17:46:24 +01:00
Martin Jansa
d239ff71f9 selftest: devtool: set BB_HASHSERVE_UPSTREAM when setting SSTATE_MIRROR
* with my build/conf/local.conf:
  SSTATE_DIR = "/OE/build/poky/build/sstate-cache"
  these devtool tests will first set own SSTATE_DIR and the original one set as SSTATE_MIRROR:

2023-03-11 11:51:46,837 - oe-selftest - INFO - test_devtool_update_recipe_append (devtool.DevtoolUpdateTests.test_devtool_update_recipe_append)
2023-03-11 11:51:46,846 - oe-selftest - DEBUG - Appending to: /OE/build/poky/build/build-st-2023-03-11-patch2/devtool.DevtoolUpdateTests.test_devtool_update_recipe_append/build-st/conf/selftest.inc
SSTATE_DIR = "/OE/build/poky/build/build-st-2023-03-11-patch2/devtool.DevtoolUpdateTests.test_devtool_update_recipe_append/build-st/sstate_devtool"
SSTATE_MIRRORS += "file://.* file:////OE/build/poky/build/sstate-cache/PATH"

* but that unfortunately leads to a warning from sanity.bbclass
  about SSTATE_MIRRORS without matching BB_HASHSERVE, because
  BB_HASHSERVE is set to "auto" by default

  these tests failing with:

2023-03-11 11:55:39,610 - oe-selftest - INFO - ======================================================================
2023-03-11 11:55:39,610 - oe-selftest - INFO - FAIL: test_devtool_update_recipe_append_git (devtool.DevtoolUpdateTests.test_devtool_update_recipe_append_git)
2023-03-11 11:55:39,610 - oe-selftest - INFO - ----------------------------------------------------------------------
2023-03-11 11:55:39,611 - oe-selftest - INFO - Traceback (most recent call last):
  File "/OE/build/poky/meta/lib/oeqa/selftest/cases/devtool.py", line 1118, in test_devtool_update_recipe_append_git
    self.assertNotIn('WARNING:', result.output)
AssertionError: 'WARNING:' unexpectedly found in 'NOTE: Starting bitbake server...\nWARNING: You are using a local hash equivalence server but have configured an sstate mirror. This will likely mean no sstate will match from the mirror. You may wish to disable the hash equivalence use (BB_HASHSERVE), or use a hash equivalence server alongside the sstate mirror.\nLoading cache...done.\nLoaded 0 entries from dependency cache.\nParsing recipes...done.\nParsing of 947 .bb files complete (0 cached, 947 parsed). 1764 targets, 52 skipped, 0 masked, 0 errors.\n\nSummary: There was 1 WARNING message.\nINFO: Updating SRCREV in recipe mtd-utils-selftest_git.bb\nNOTE: Writing append file /tmp/devtoolqa1m2lh02v/layer/recipes-devtools/mtd/mtd-utils-selftest_git.bbappend'
----------------------------------------------------------------------

* just setting BB_HASHSERVE to empty doesn't work, because then we
  would need to disable OEEquivHash as well as it fails with:

  ERROR: OEEquivHash requires BB_HASHSERVE to be set

(From OE-Core rev: 14c727e4cafd7e1a945913bcc69747bb2efe3c71)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 96d4392ee9c5c3674e5c4c4512f527a2ca6765e4)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-04-04 17:46:24 +01:00
Bruce Ashfield
dbaac8ff1c kernel-devsrc: fix mismatched compiler warning
When building a module on target, we use the native compiler
(always "gcc") versus the same compiler, but named in a cross
compiler manner, for the kernel build.

The kernel captures the compiler string in several places,
some of which we are already fixing, but others we are not
(as they don't cause issues).

But when building an on target module, the main kernel Makefile
compares compiler strings and outputs a warning similar to:

  warning: the compiler differs from the one used to build the kernel
    The kernel was built by: x86_64-poky-linux-gcc (GCC) 11.3.0
    You are using:           gcc (GCC) 11.3.0

We drop the cross compilation prefix from the captured compiler
string, and we avoid the warning.

RP: tweaked one sed expression to fix quoting issue with 5.15
(From OE-Core rev: a122e5b914d59ceaa10ddb66e8611c31f0fb958d)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 70419f281a4571d01975bd79a47a6ed7ae70b1ae)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-04-04 17:46:24 +01:00
Randy MacLeod
97334413f4 vim: upgrade 9.0.1403 -> 9.0.1429
Fixes: CVE-2023-1127, CVE-2023-1170, CVE-2023-1175,
       CVE-2023-1264, CVE-2023-1355

(From OE-Core rev: 5b866019573b99306e32ea5734015040c9ed3868)

Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 2415072c3800feb164dd4d1fa0b56bd141a5cbd8)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-04-04 17:46:24 +01:00
Bruce Ashfield
18c62d23b2 lttng-modules: update to v2.13.9
Bumping lttng-modules to version v2.13.9-4-g12f43cab, which comprises the following commits:

    da1f5a26 Version 2.13.9
    dc2d1294 fix: jbd2: use the correct print format (v5.4.229)
    d04c1211 fix: jbd2 upper bound for v5.10.163
    4b8864fc fix: jbd2: use the correct print format (v5.10.163)
    69d3aa79 fix: btrfs: move accessor helpers into accessors.h (v6.2)

We drop our previously backported commits as well, since they are part
of the release.

(From OE-Core rev: 28c844143b6f32313f15a2f1bb31dda4fd680714)

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>
(cherry picked from commit 79d8e93adde07ff3a4a239d66649ee566a2437d6)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-04-04 17:46:24 +01:00
Bruce Ashfield
cad6e77ddf linux-yocto/5.15: update to v5.15.103
Updating  to the latest korg -stable release that comprises
the following commits:

    8020ae3c051d Linux 5.15.103
    10a72c677bce Makefile: use -gdwarf-{4|5} for assembler for DEBUG_INFO_DWARF{4|5}
    6e7bc50f97c9 KVM: VMX: Fix crash due to uninitialized current_vmcs
    61e5087231f3 KVM: VMX: Introduce vmx_msr_bitmap_l01_changed() helper
    1f47cba9364f KVM: nVMX: Don't use Enlightened MSR Bitmap for L3
    2153dd644ce4 fs: hold writers when changing mount's idmapping
    8c3be6925a92 UML: define RUNTIME_DISCARD_EXIT
    f616fa79d536 xfs: remove xfs_setattr_time() declaration
    5588657f418c KVM: fix memoryleak in kvm_init()
    4441a9009193 tools bpftool: Fix compilation error with new binutils
    1c27fab24333 tools bpf_jit_disasm: Fix compilation error with new binutils
    97f005c0bdba tools perf: Fix compilation error with new binutils
    451c9d7b1616 tools include: add dis-asm-compat.h to handle version differences
    51b99dc38c1a tools build: Add feature test for init_disassemble_info API changes
    381492ef0c51 sh: define RUNTIME_DISCARD_EXIT
    1e49bb9ba912 s390: define RUNTIME_DISCARD_EXIT to fix link error with GNU ld < 2.36
    d517faf3db23 powerpc/vmlinux.lds: Don't discard .rela* for relocatable builds
    4e6708a0f36e powerpc/vmlinux.lds: Define RUNTIME_DISCARD_EXIT
    0bfde8c9bb27 arch: fix broken BuildID for arm64 and riscv
    560a2744cbbf ext4: block range must be validated before use in ext4_mb_clear_bb()
    270422f3e183 ext4: add strict range checks while freeing blocks
    2da16af37847 ext4: add ext4_sb_block_valid() refactored out of ext4_inode_block_valid()
    09546886a0ea ext4: refactor ext4_free_blocks() to pull out ext4_mb_clear_bb()
    48302ee67dd7 filelocks: use mount idmapping for setlease permission check
    513572bb89e8 media: rc: gpio-ir-recv: add remove function
    5f328c9d32b1 media: ov5640: Fix analogue gain control
    4cb302546556 scripts: handle BrokenPipeError for python scripts
    405ec99d1d25 PCI: Add SolidRun vendor ID
    2c75e258adb9 macintosh: windfarm: Use unsigned type for 1-bit bitfields
    6c6f956c9295 alpha: fix R_ALPHA_LITERAL reloc for large modules
    adb939031af3 powerpc/kcsan: Exclude udelay to prevent recursive instrumentation
    e3a62a35f903 powerpc/iommu: fix memory leak with using debugfs_lookup()
    93aa548a339c MIPS: Fix a compilation issue
    e69d841d143b fs: use consistent setgid checks in is_sxid()
    78eecf2e5cd4 attr: use consistent sgid stripping checks
    449badcf876d attr: add setattr_should_drop_sgid()
    7e8a9b53141e fs: move should_remove_suid()
    93395e1184ed attr: add in_group_or_capable()
    0123712492f6 fs: move S_ISGID stripping into the vfs_*() helpers
    9c3a620bbf0c fs: add mode_strip_sgid() helper
    79821ab3284a xfs: set prealloc flag in xfs_alloc_file_space()
    a881c1ef16f1 xfs: fallocate() should call file_modified()
    f8937e4d1d46 xfs: remove XFS_PREALLOC_SYNC
    95aab524e12e xfs: use setattr_copy to set vfs inode attributes
    2115c14c93ec tpm/eventlog: Don't abort tpm_read_log on faulty ACPI address
    b43cb0f08767 watch_queue: fix IOC_WATCH_QUEUE_SET_SIZE alloc error paths
    d15c9ae1c6d9 staging: rtl8723bs: Fix key-store index handling
    7fa3bb1bcabe staging: rtl8723bs: fix placement of braces
    962293f5443c Staging: rtl8723bs: Placing opening { braces in previous line
    890e24564c0a staging: rtl8723bs: clean up comparsions to NULL
    c513043e0afe iommu/amd: Add a length limitation for the ivrs_acpihid command-line parameter
    0fd72f1d1b94 iommu/amd: Fix ill-formed ivrs_ioapic, ivrs_hpet and ivrs_acpihid options
    2af17167804c iommu/amd: Add PCI segment support for ivrs_[ioapic/hpet/acpihid] commands
    ce4bbb2aa9d8 nbd: use the correct block_device in nbd_bdev_reset
    7889dfc19492 irqdomain: Fix mapping-creation race
    a2bc806e95bd ext4: Fix deadlock during directory rename
    07b0aba4adf0 RISC-V: Don't check text_mutex during stop_machine
    d1b47f735f60 s390/ftrace: remove dead code
    3a9418d2c93c riscv: Use READ_ONCE_NOCHECK in imprecise unwinding stack mode
    f3969427fb06 af_unix: fix struct pid leaks in OOB support
    a9f99eacf79f af_unix: Remove unnecessary brackets around CONFIG_AF_UNIX_OOB.
    6a29d71ab421 net: dsa: mt7530: permit port 5 to work without port 6 on MT7621 SoC
    ad7e40ee157b SUNRPC: Fix a server shutdown leak
    64d4eb412761 octeontx2-af: Unlock contexts in the queue context cache in case of fault detection
    03c1cc6f554d net/smc: fix fallback failed while sendmsg with fastopen
    dafde1072202 platform: x86: MLX_PLATFORM: select REGMAP instead of depending on it
    36bcbcaf01d8 netfilter: conntrack: adopt safer max chain length
    a316da050d80 scsi: megaraid_sas: Update max supported LD IDs to 240
    2adc29350a5b net: ethernet: mtk_eth_soc: fix RX data corruption issue
    fe8787c1e4f6 net: phy: smsc: fix link up detection in forced irq mode
    d83813f724ec net: phy: smsc: Cache interrupt mask
    18ab31b8cd37 btf: fix resolving BTF_KIND_VAR after ARRAY, STRUCT, UNION, PTR
    2662c5b1f0ef netfilter: tproxy: fix deadlock due to missing BH disable
    bef8cf77e21c netfilter: ctnetlink: revert to dumping mark regardless of event type
    20fd0607acbf bnxt_en: Avoid order-5 memory allocation for TPA data
    98fa707a52a3 net: phylib: get rid of unnecessary locking
    67431417617d net: stmmac: add to set device wake up flag when stmmac init phy
    af5c333c84e5 drm/msm/dpu: fix len of sc7180 ctl blocks
    4a476285f6d2 bpf, sockmap: Fix an infinite loop error when len is 0 in tcp_bpf_recvmsg_parser()
    c813f7a31614 ice: copy last block omitted in ice_get_module_eeprom()
    3f14457e1584 net: caif: Fix use-after-free in cfusbl_device_notify()
    c2c71922c5e9 net: lan78xx: fix accessing the LAN7800's internal phy specific registers from the MAC driver
    c026917887d1 perf stat: Fix counting when initial delay configured
    fdecfb2603d0 selftests: nft_nat: ensuring the listening side is up before starting the client
    91aceb3844d4 ila: do not generate empty messages in ila_xlat_nl_cmd_get_mapping()
    a5a7f6e6e126 powerpc: dts: t1040rdb: fix compatible string for Rev A boards
    4357bbb921fe nfc: fdp: add null check of devm_kmalloc_array in fdp_nci_i2c_read_device_properties
    04bfc5bcdfc0 bgmac: fix *initial* chip reset to support BCM5358
    60530bfdb647 drm/msm/a5xx: fix context faults during ring switch
    7f854b4803e5 drm/msm/a5xx: fix the emptyness check in the preempt code
    bf66e98285f7 drm/msm/a5xx: fix highest bank bit for a530
    2e8efe8c8dab drm/msm/a5xx: fix setting of the CP_PREEMPT_ENABLE_LOCAL register
    b77c764b4371 drm/msm: Fix potential invalid ptr free
    ced1f5dd6c1d drm/nouveau/kms/nv50: fix nv50_wndw_new_ prototype
    e974d8755578 drm/nouveau/kms/nv50-: remove unused functions
    c50fc503ee1b ext4: Fix possible corruption when moving a directory
    cfb89ceb22fd regulator: core: Use ktime_get_boottime() to determine how long a regulator was off
    e1a078cac3e9 regulator: core: Fix off-on-delay-us for always-on/boot-on regulators
    67a791df1457 regulator: Flag uncontrollable regulators as always_on
    e471e928de97 scsi: core: Remove the /proc/scsi/${proc_name} directory earlier
    463ae58d7c80 riscv: Add header include guards to insn.h
    4dd43ee784a1 riscv: Avoid enabling interrupts in die()
    5ab1d0528b04 RISC-V: Avoid dereferening NULL regs in die()
    6a72729ed6ac arm64: efi: Make efi_rt_lock a raw_spinlock
    14ddb4e6e9de brd: mark as nowait compatible
    5089247d6cf3 block/brd: add error handling support for add_disk()
    5c65f0971247 iommu/vt-d: Fix PASID directory pointer coherency
    8ff7db51d3ed irqdomain: Refactor __irq_domain_alloc_irqs()
    62e4ba36a3d7 ipmi:ssif: Add a timer between request retries
    2fb8b122ba8f ipmi:ssif: Increase the message retry time
    a6ef5a9d7263 f2fs: retry to update the inode page given data corruption
    a517c651f116 f2fs: do not bother checkpoint by f2fs_get_node_info
    e55332319825 f2fs: avoid down_write on nat_tree_lock during checkpoint
    31b5793ca2de udf: Fix off-by-one error when discarding preallocation
    30e29af746ee fs: dlm: start midcomms before scand
    9c9dd2b3ba83 fs: dlm: add midcomms init/start functions
    2e0415522835 fs: dlm: fix log of lowcomms vs midcomms
    c5a23d43c23a KVM: SVM: Process ICR on AVIC IPI delivery failure due to invalid target
    a78a355052ab KVM: SVM: Don't rewrite guest ICR on AVIC IPI virtualization failure
    45bcf4a4f2b1 KVM: Register /dev/kvm as the _very_ last thing during initialization
    0a0ecaf0988b KVM: Pre-allocate cpumasks for kvm_make_all_cpus_request_except()
    3e48a6349d29 KVM: Optimize kvm_make_vcpus_request_mask() a bit
    339e480baafc nfc: change order inside nfc_se_io error path
    01a821aacc64 ext4: zero i_disksize when initializing the bootloader inode
    ca500cf2eceb ext4: fix WARNING in ext4_update_inline_data
    d16576142fb9 ext4: move where set the MAY_INLINE_DATA flag is set
    c5d7c31e1722 ext4: fix another off-by-one fsmap error on 1k block filesystems
    df621af95e89 ext4: fix RENAME_WHITEOUT handling for inline directories
    7349cc5ab32e ext4: fix cgroup writeback accounting with fs-layer encryption
    fd7b8ebc1dd5 staging: rtl8723bs: Pass correct parameters to cfg80211_get_bss()
    0b22cbc05ce2 drm/connector: print max_requested_bpc in state debugfs
    5e0eed414156 drm/amdgpu: fix error checking in amdgpu_read_mm_registers for soc15
    328d069e9c35 x86/CPU/AMD: Disable XSAVES on AMD family 0x17
    92d1caad9f78 fork: allow CLONE_NEWTIME in clone3 flags
    7ba76b2ac187 perf inject: Fix --buildid-all not to eat up MMAP2
    2072e75b4942 btrfs: fix percent calculation for bg reclaim message
    f8cd8754a03a fs: prevent out-of-bounds array speculation when closing a file descriptor
    2ddbd0f967b3 Linux 5.15.102
    cbecbd884e81 staging: rtl8192e: Remove call_usermodehelper starting RadioPower.sh
    515017e952ea staging: rtl8192e: Remove function ..dm_check_ac_dc_power calling a script
    528dbd80ac21 wifi: cfg80211: Partial revert "wifi: cfg80211: Fix use after free for wext"
    bbf9f29bac04 Linux 5.15.101
    cba6bbf501be Revert "drm/i915: Don't use BAR mappings for ring buffers with LLC"
    d214f240b0f6 Linux 5.15.100
    acf252c1f5c3 usb: gadget: uvc: fix missing mutex_unlock() if kstrtou8() fails
    1c7988d5c79f malidp: Fix NULL vs IS_ERR() checking
    545d72ba4c2c scsi: mpt3sas: Remove usage of dma_get_required_mask() API
    953841f959e3 scsi: mpt3sas: re-do lost mpt3sas DMA mask fix
    de1afc58a905 scsi: mpt3sas: Don't change DMA mask while reallocating pools
    8e6612ff8b5d Revert "scsi: mpt3sas: Fix return value check of dma_get_required_mask()"
    72bf6d493c95 drm/virtio: Fix error code in virtio_gpu_object_shmem_init()
    8e62139840c0 media: uvcvideo: Fix race condition with usb_kill_urb
    a1ddee82de80 Bluetooth: hci_sock: purge socket queues in the destruct() callback
    22d021232657 drm/display/dp_mst: Fix down message handling after a packet reception error
    db35e49413a4 drm/display/dp_mst: Fix down/up message handling after sink disconnect
    e23fa593f1ab x86/resctl: fix scheduler confusion with 'current'
    be5d5d0637fd net: tls: avoid hanging tasks on the tx_lock
    e1a3cfdbf5b3 soundwire: cadence: Drain the RX FIFO after an IO timeout
    ecb33d7a5b58 soundwire: cadence: Remove wasted space in response_buf
    473efca280d4 phy: rockchip-typec: Fix unsigned comparison with less than zero
    ffcd94262e0e PCI: Add ACS quirk for Wangxun NICs
    19c4d6c7b049 PCI: loongson: Add more devices that need MRRS quirk
    bb99db06b8b6 kernel/fail_function: fix memory leak with using debugfs_lookup()
    7f1e53f88e8b drivers: base: dd: fix memory leak with using debugfs_lookup()
    09709a49283f drivers: base: component: fix memory leak with using debugfs_lookup()
    b94b39bf3d54 misc: vmw_balloon: fix memory leak with using debugfs_lookup()
    cf042964c2fa tty: pcn_uart: fix memory leak with using debugfs_lookup()
    49ae24f44713 PCI: Take other bus devices into account when distributing resources
    dba6280105e1 PCI: Align extra resources for hotplug bridges properly
    92d6e6bf9cf1 usb: gadget: uvc: Make bSourceID read/write
    14cbfd08551a usb: uvc: Enumerate valid values for color matching
    7e902b949600 USB: ene_usb6250: Allocate enough memory for full object
    95ee8cb26db5 usb: host: xhci: mvebu: Iterate over array indexes instead of using pointer math
    8da78a60f332 USB: gadget: pxa27x_udc: fix memory leak with using debugfs_lookup()
    6236a6d2cdfb USB: gadget: pxa25x_udc: fix memory leak with using debugfs_lookup()
    036ada6ca9ee USB: gadget: lpc32xx_udc: fix memory leak with using debugfs_lookup()
    b0a2663ecbe8 USB: gadget: bcm63xx_udc: fix memory leak with using debugfs_lookup()
    30f9ba2396a1 USB: gadget: gr_udc: fix memory leak with using debugfs_lookup()
    fb284bee1e21 USB: isp1362: fix memory leak with using debugfs_lookup()
    6f12097467ea USB: isp116x: fix memory leak with using debugfs_lookup()
    4a71b15744b8 USB: fotg210: fix memory leak with using debugfs_lookup()
    bb4d5eefb670 USB: sl811: fix memory leak with using debugfs_lookup()
    c6af1dbc99ad USB: uhci: fix memory leak with using debugfs_lookup()
    4322661af6d7 USB: chipidea: fix memory leak with using debugfs_lookup()
    cf52c320cf74 USB: dwc3: fix memory leak with using debugfs_lookup()
    baec889a81b8 PCI: loongson: Prevent LS7A MRRS increases
    19da678d38d2 soundwire: bus_type: Avoid lockdep assert in sdw_drv_probe()
    587b48b18a8a iio: accel: mma9551_core: Prevent uninitialized variable in mma9551_read_config_word()
    2b59fdcaaf24 iio: accel: mma9551_core: Prevent uninitialized variable in mma9551_read_status_word()
    9e58ebb12210 tools/iio/iio_utils:fix memory leak
    54179274476d mei: bus-fixup:upon error print return values of send and receive
    49b326ce8a68 serial: sc16is7xx: setup GPIO controller later in probe
    45083b86141e tty: serial: fsl_lpuart: disable the CTS when send break signal
    f9d9d25ad1f0 tty: fix out-of-bounds access in tty_driver_lookup_tty()
    4be3213e9d79 staging: emxx_udc: Add checks for dma_alloc_coherent()
    6683327b51a6 USB: fix memory leak with using debugfs_lookup()
    b32d922f86f3 media: uvcvideo: Silence memcpy() run-time false positive warnings
    c1343a879cce media: uvcvideo: Quirk for autosuspend in Logitech B910 and C910
    cdccb1c3fcd2 media: uvcvideo: Handle errors from calls to usb_string
    31a8d11d28b5 media: uvcvideo: Handle cameras with invalid descriptors
    57b0ff53f4de media: uvcvideo: Remove format descriptions
    1f11ed61d69d iommu/amd: Fix error handling for pdev_pri_ats_enable()
    77d567091ec3 IB/hfi1: Update RMT size calculation
    5a47bb71b1a9 mfd: arizona: Use pm_runtime_resume_and_get() to prevent refcnt leak
    1b46c2a76c21 bootconfig: Increase max nodes of bootconfig from 1024 to 8192 for DCC support
    0a65cd7379a2 firmware/efi sysfb_efi: Add quirk for Lenovo IdeaPad Duet 3
    2e07fa2e30d4 kernel/printk/index.c: fix memory leak with using debugfs_lookup()
    ba279dc7e47a tracing: Add NULL checks for buffer in ring_buffer_free_read_page()
    9c28c74fbd67 thermal: intel: BXT_PMIC: select REGMAP instead of depending on it
    5eaf55b38691 thermal: intel: quark_dts: fix error pointer dereference
    d11f9f030fd8 ASoC: mediatek: mt8195: add missing initialization
    488bc1b823c7 ASoC: zl38060 add gpiolib dependency
    69e997420cb9 ASoC: zl38060: Remove spurious gpiolib select
    35b855381898 ASoC: adau7118: don't disable regulators on device unbind
    3e7d0968203d loop: loop_set_status_from_info() check before assignment
    746d4e369e04 rtc: allow rtc_read_alarm without read_alarm callback
    6e47bb21b63b scsi: ipr: Work around fortify-string warning
    c775a5246151 genirq: Add and use an irq_data_update_affinity helper
    00340ccb5407 genirq: Refactor accessors to use irq_data_get_affinity_mask
    2163cf142272 rtc: sun6i: Always export the internal oscillator
    660e8f2eeafa vc_screen: modify vcs_size() handling in vcs_read()
    72db07cf0d6b tcp: tcp_check_req() can be called from process context
    ac7014af85aa ARM: dts: spear320-hmi: correct STMPE GPIO compatible
    dff967aee88a net/sched: act_sample: fix action bind logic
    850f914efe04 net/sched: act_mpls: fix action bind logic
    da4df0cbdf7c net/sched: act_pedit: fix action bind logic
    5654a12277b0 net/sched: transition act_pedit to rcu and percpu stats
    c494365432dc nfc: fix memory leak of se_io context in nfc_genl_se_io
    6398bd3c4a50 net/mlx5: Geneve, Fix handling of Geneve object id as error code
    48a8c76c7dc6 net/mlx5e: Verify flow_source cap before using it
    2721d966680a 9p/rdma: unmap receive dma buffer in rdma_request()/post_recv()
    8d3fc907d060 9p/xen: fix connection sequence
    fc772313f2da 9p/xen: fix version parsing
    df192270eb72 net: fix __dev_kfree_skb_any() vs drop monitor
    ada4f805c9e4 octeontx2-pf: Use correct struct reference in test condition
    bf5540cbd20e sctp: add a refcnt in sctp_stream_priorities to avoid a nested loop
    dcdddb5f4908 ipv6: Add lwtunnel encap size of all siblings in nexthop calculation
    e306dbee4c98 netfilter: x_tables: fix percpu counter block leak on error path when creating new netns
    dbb3cbbf03b3 netfilter: ebtables: fix table blob use-after-free
    af41b3cd9a92 netfilter: ctnetlink: fix possible refcount leak in ctnetlink_create_conntrack()
    041fdbe73de9 watchdog: sbsa_wdog: Make sure the timeout programming is within the limits
    3e765f7ff256 watchdog: pcwd_usb: Fix attempting to access uninitialized memory
    23cc41c3f19c watchdog: Fix kmemleak in watchdog_cdev_register
    dd7605dd48e5 watchdog: at91sam9_wdt: use devm_request_irq to avoid missing free_irq() in error path
    a27e95a6ff3f um: virt-pci: properly remove PCI device from bus
    6c738b8805c6 um: virtio_uml: move device breaking into workqueue
    b7d5712cf9f4 um: virtio_uml: mark device as unregistered when breaking it
    1b1ef45d48e1 um: virtio_uml: free command if adding to virtqueue failed
    8ba6b0fade97 x86: um: vdso: Add '%rcx' and '%r11' to the syscall clobber list
    ed1d288ec85d netfilter: nf_tables: allow to fetch set elements when table has an owner
    98db4a032244 ext4: use ext4_fc_tl_mem in fast-commit replay path
    aa4d726af72a f2fs: fix to avoid potential memory corruption in __update_iostat_latency()
    3afaaf6f5867 ubi: ubi_wl_put_peb: Fix infinite loop when wear-leveling work failed
    79548ccdd992 ubi: Fix UAF wear-leveling entry in eraseblk_count_seq_show()
    003bb9868a51 ubi: fastmap: Fix missed fm_anchor PEB in wear-leveling after disabling fastmap
    79db0e8323b5 ubifs: ubifs_writepage: Mark page dirty after writing inode failed
    10b6c359e374 ubifs: dirty_cow_znode: Fix memleak in error handling path
    aeb92507ea25 ubifs: Re-statistic cleaned znode count if commit failed
    5ec4c8aca5a2 ubi: Fix possible null-ptr-deref in ubi_free_volume()
    3e29634eb56e ubifs: Fix memory leak in alloc_wbufs()
    95a72417dd13 ubi: Fix unreferenced object reported by kmemleak in ubi_resize_volume()
    53818746e549 ubi: Fix use-after-free when volume resizing failed
    91bc31579e9f ubifs: Reserve one leb for each journal head while doing budget
    2b6d85db0e07 ubifs: do_rename: Fix wrong space budget when target inode's nlink > 1
    8e30559876d8 ubifs: Fix wrong dirty space budget for dirty inode
    8e166cc9b64b ubifs: Rectify space budget for ubifs_xrename()
    de6d6bf150b7 ubifs: Rectify space budget for ubifs_symlink() if symlink is encrypted
    8c3ebc5e3cd0 ubifs: Fix build errors as symbol undefined
    701bb3ed5a88 ubi: ensure that VID header offset + VID header size <= alloc, size
    276a7298af6a um: vector: Fix memory leak in vector_config
    354dfc05bd5f f2fs: allow set compression option of files without blocks
    add8515d59a1 fs: f2fs: initialize fsdata in pagecache_write()
    06fa1a839fae f2fs: use memcpy_{to,from}_page() where possible
    804817f02e2f pwm: stm32-lp: fix the check on arr and cmp registers update
    81ea09ae3040 pwm: sifive: Always let the first pwm_apply_state succeed
    852703ed6d81 pwm: sifive: Reduce time the controller lock is held
    3a75866a5cef objtool: Fix memory leak in create_static_call_sections()
    ea30508b7bb1 fs/jfs: fix shift exponent db_agl2size negative
    8311961a1724 auxdisplay: hd44780: Fix potential memory leak in hd44780_remove()
    7c183dc0af47 net/sched: Retire tcindex classifier
    abddfcf701a5 Linux 5.15.99
    d2fb2739e956 kbuild: Port silent mode detection to future gnu make.
    2da950a044ee wifi: ath9k: use proper statements in conditionals
    7e6eeb5fb3aa arm64: dts: qcom: ipq8074: fix Gen2 PCIe QMP PHY
    6ac2adcc2bff iommu/vt-d: Fix an unbalanced rcu_read_lock/rcu_read_unlock()
    26f8b1ef30f6 media: uvcvideo: Fix memory leak of object map on error exit path
    2137e7c83ed6 qede: avoid uninitialized entries in coal_entry array
    a8da5a8900fa perf intel-pt: pkt-decoder: Add CFE and EVD packets
    922bd6b37276 drm/edid: fix AVI infoframe aspect ratio handling
    4eb6789f9177 drm/i915: Don't use BAR mappings for ring buffers with LLC
    64bcaffa2d5c drm/radeon: Fix eDP for single-display iMac11,2
    6a5f31c3fbf3 drm/i915/quirks: Add inverted backlight quirk for HP 14-r206nv
    5f63c879ca95 vfio/type1: restore locked_vm
    7329ab7f0249 vfio/type1: track locked_vm per dma
    eafb81c50da8 vfio/type1: prevent underflow of locked_vm via exec()
    2fd6f6c8cb35 iommu/vt-d: Avoid superfluous IOTLB tracking in lazy mode
    77ffe5501e02 PCI: Avoid FLR for AMD FCH AHCI adapters
    99eefc2c62e0 PCI: hotplug: Allow marking devices as disconnected during bind/unbind
    2bb559f12e54 PCI/PM: Observe reset delay irrespective of bridge_d3
    b07ded08cd9c MIPS: DTS: CI20: fix otg power gpio
    71f81b6842af riscv: ftrace: Reduce the detour code size to half
    4accfc428fec riscv: ftrace: Remove wasted nops for !RISCV_ISA_C
    f6b5db68b256 riscv, mm: Perform BPF exhandler fixup on page fault
    043d1657cc51 riscv: jump_label: Fixup unaligned arch_static_branch function
    ac5ff022d916 riscv: mm: fix regression due to update_mmu_cache change
    59b83f7b057d RISC-V: add a spin_shadow_stack declaration
    0595cdb58772 scsi: ses: Fix slab-out-of-bounds in ses_intf_remove()
    584892fd29a4 scsi: ses: Fix possible desc_ptr out-of-bounds accesses
    384aa697d8f2 scsi: ses: Fix possible addl_desc_ptr out-of-bounds accesses
    2b28a7d261cb scsi: ses: Fix slab-out-of-bounds in ses_enclosure_data_process()
    6fce2307650a scsi: ses: Don't attach if enclosure has no components
    cb121c4137b2 scsi: qla2xxx: Remove increment of interface err cnt
    5f40ca617ef5 scsi: qla2xxx: Fix erroneous link down
    77a11df33c48 scsi: qla2xxx: Remove unintended flag clearing
    77302fb0e357 scsi: qla2xxx: Fix DMA-API call trace on NVMe LS requests
    476126f14dfe scsi: qla2xxx: Check if port is online before sending ELS
    c54e9311ee0b scsi: qla2xxx: Fix link failure in NPIV environment
    37a38ff7edf4 tools/bootconfig: fix single & used for logical condition
    d41db100bc38 ring-buffer: Handle race between rb_move_tail and rb_check_pages
    145999aed74f ktest.pl: Add RUN_TIMEOUT option with default unlimited
    aab7db9e1e08 ktest.pl: Fix missing "end_monitor" when machine check fails
    0c2f4a234bb2 ktest.pl: Give back console on Ctrt^C on monitor
    fe463fe6aa80 mm/thp: check and bail out if page in deferred queue already
    ef1fcad8548d mm: memcontrol: deprecate charge moving
    d0d794371bde docs: gdbmacros: print newest record
    a16bd95eeb2e remoteproc/mtk_scp: Move clk ops outside send_lock
    505627bebd45 media: ipu3-cio2: Fix PM runtime usage_count in driver unbind
    d15f73b01bce mips: fix syscall_get_nr
    34dbf5dd0711 dax/kmem: Fix leak of memory-hotplug resources
    7eb171ada303 alpha: fix FEN fault handling
    efa228b2e6a4 ceph: update the time stamps and try to drop the suid/sgid
    a73783e4e0c4 rbd: avoid use-after-free in do_rbd_add() when rbd_dev_create() fails
    c6cc86c6d847 fuse: add inode/permission checks to fileattr_get/fileattr_set
    cfa97a3b266a ARM: dts: exynos: correct TMU phandle in Odroid HC1
    70e18548311c ARM: dts: exynos: correct TMU phandle in Odroid XU
    816f83bd2868 ARM: dts: exynos: correct TMU phandle in Exynos5250
    269926de8454 ARM: dts: exynos: correct TMU phandle in Odroid XU3 family
    78a5fa65a5d7 ARM: dts: exynos: correct TMU phandle in Exynos4
    52739e0f7413 ARM: dts: exynos: correct TMU phandle in Exynos4210
    89e99f0b031f ARM: dts: qcom: sdx55: Add Qcom SMMU-500 as the fallback for IOMMU node
    0e22e0477479 dm flakey: fix a bug with 32-bit highmem systems
    ff60b2bb680e dm flakey: don't corrupt the zero page
    673ca7e7872f dm flakey: fix logic when corrupting a bio
    8cbbe0651971 thermal: intel: powerclamp: Fix cur_state for multi package system
    935ba268ac0b qede: fix interrupt coalescing configuration
    fd081afd21eb wifi: cfg80211: Fix use after free for wext
    60e49fe9b7e4 wifi: ath11k: allow system suspend to survive ath11k
    f592cd2f1390 wifi: rtl8xxxu: Use a longer retry limit of 48
    931dc7e232b2 dm: add cond_resched() to dm_wq_work()
    d71a0899e497 dm: send just one event on resize, not two
    61d44a4db2f5 mtd: spi-nor: Fix shift-out-of-bounds in spi_nor_set_erase_type
    afd61540ba77 mtd: spi-nor: spansion: Consider reserved bits in CFR5 register
    73a4cbf91e04 mtd: spi-nor: sfdp: Fix index value for SCCR dwords
    116008ada3d0 ext4: refuse to create ea block when umounted
    a6744e14ce70 ext4: optimize ea_inode block expansion
    c325350d0c54 jbd2: fix data missing when reusing bh which is ready to be checkpointed
    83c4e017fbfd ALSA: hda/realtek: Add quirk for HP EliteDesk 800 G6 Tower PC
    ff9657b1e845 ALSA: ice1712: Do not left ice->gpio_mutex locked in aureon_add_controls()
    345fb368e5f5 io_uring/poll: allow some retries for poll triggering spuriously
    7e8cd208e9c2 io_uring: remove MSG_NOSIGNAL from recvmsg
    dde0d0dfbde2 io_uring/rsrc: disallow multi-source reg buffers
    abd54d87daba io_uring: add a conditional reschedule to the IOPOLL cancelation loop
    337eb887c74d io_uring: mark task TASK_RUNNING before handling resume/task work
    54df6c5edf87 io_uring: handle TIF_NOTIFY_RESUME when checking for task_work
    7697139d5dfd crypto: qat - fix out-of-bounds read
    ffc9d001fed1 irqdomain: Fix domain registration race
    a2a46bd4f40c irqdomain: Drop bogus fwspec-mapping error handling
    27842d6884d7 irqdomain: Look for existing mapping only once
    562e332dd306 irqdomain: Fix disassociation race
    ee82369e29fb irqdomain: Fix association race
    1cb936fee7e7 ima: Align ima_file_mmap() parameters with mmap_file LSM hook
    cb104b880d78 brd: return 0/-error from brd_insert_page()
    113d4b0e12f4 Documentation/hw-vuln: Document the interaction between IBRS and STIBP
    e7f1ddebd9f5 x86/speculation: Allow enabling STIBP with legacy IBRS
    be2710deaed3 x86/microcode/AMD: Fix mixed steppings support
    5830ff467ab3 x86/microcode/AMD: Add a @cpu parameter to the reloading functions
    865af457dd89 x86/microcode/amd: Remove load_microcode_amd()'s bsp parameter
    e1d35d0d1830 x86/kprobes: Fix arch_check_optimized_kprobe check within optimized_kprobe range
    c5a2c2bf0b4f x86/kprobes: Fix __recover_optprobed_insn check optimizing logic
    f46a42130c03 x86/reboot: Disable SVM, not just VMX, when stopping CPUs
    5427c3cee789 x86/reboot: Disable virtualization in an emergency if SVM is supported
    1e3edbabf57a x86/crash: Disable virt in core NMI crash handler to avoid double shootdown
    83a27cd866dd x86/virt: Force GIF=1 prior to disabling SVM (for reboot flows)
    6e46d9ff3ed3 KVM: s390: disable migration mode when dirty tracking is disabled
    21c95b736058 KVM: SVM: hyper-v: placate modpost section mismatch error
    033a4c062124 KVM: SVM: Fix potential overflow in SEV's send|receive_update_data()
    11d4b35674c6 KVM: x86: Inject #GP if WRMSR sets reserved bits in APIC Self-IPI
    999439fd5da5 KVM: Destroy target device if coalesced MMIO unregistration fails
    ac791643e77b RDMA/siw: Fix user page pinning accounting
    a155ad9506f9 udf: Fix file corruption when appending just after end of preallocated extent
    37e74003d81e udf: Detect system inodes linked into directory hierarchy
    e6574337df78 udf: Preserve link count of system files
    c5787d77a5c2 udf: Do not update file length for failed writes to inline files
    9a8d602f0723 udf: Do not bother merging very long extents
    e43adce883e1 udf: Truncate added extents on failed expansion
    aa502e760c26 selftests/landlock: Test ptrace as much as possible with Yama
    6249f305cd34 selftests/landlock: Skip overlayfs tests when not supported
    597ecd95b1f2 ocfs2: fix non-auto defrag path not working issue
    33665d104266 ocfs2: fix defrag path triggering jbd2 ASSERT
    f901c39e670b f2fs: fix cgroup writeback accounting with fs-layer encryption
    117d4f6687b1 f2fs: fix information leak in f2fs_move_inline_dirents()
    936a8383a021 fs: dlm: send FIN ack back in right cases
    e9463d46af47 fs: dlm: move sending fin message into state change handling
    3ed92883b387 fs: dlm: don't set stop rx flag after node reset
    19e99109fb77 exfat: fix inode->i_blocks for non-512 byte sector size device
    9717df94d7d0 exfat: redefine DIR_DELETED as the bad cluster number
    c2c3d86bd4a9 exfat: fix unexpected EOF while reading dir
    0d3902cbcf80 exfat: fix reporting fs error when reading dir beyond EOF
    05103d88482d fs: hfsplus: fix UAF issue in hfsplus_put_super
    2cab8db14566 hfs: fix missing hfs_bnode_get() in __hfs_bnode_create
    6817d13c62db ARM: dts: exynos: correct HDMI phy compatible in Exynos4
    851c34f19c0a ksmbd: do not allow the actual frame length to be smaller than the rfc1002 length
    f9b816c55bea ksmbd: fix wrong data area length for smb2 lock request
    db1c5ec57611 locking/rwsem: Prevent non-first waiter from spinning in down_write() slowpath
    79a0583a31ae btrfs: hold block group refcount during async discard
    0eba9b4a86e8 cifs: Fix uninitialized memory read in smb3_qfs_tcon()
    2c00c08a081e s390/kprobes: fix current_kprobe never cleared after kprobes reenter
    f12874e6a169 s390/kprobes: fix irq mask clobbering on kprobe reenter from post_handler
    76c683864bea s390: discard .interp section
    61e64c322739 s390/extmem: return correct segment type in __segment_load()
    49be6b25acb7 ipmi_ssif: Rename idle state and check
    66db2b9a2dc5 ipmi:ssif: resend_msg() cannot fail
    db44fae4cb19 rtc: pm8xxx: fix set-alarm race
    8b44b4d81598 block: don't allow multiple bios for IOCB_NOWAIT issue
    ce3eb3c37b2c firmware: coreboot: framebuffer: Ignore reserved pixel color bits
    d44d34a22ff0 wifi: rtl8xxxu: fixing transmisison failure for rtl8192eu
    90ca3fa30fc4 drm/shmem-helper: Revert accidental non-GPL export
    bde7dcd77807 nfsd: zero out pointers after putting nfsd_files on COPY setup error
    8c5f6c699241 dm cache: add cond_resched() to various workqueue loops
    01663c215843 dm thin: add cond_resched() to various workqueue loops
    f0c8b85af2f6 drm: panel-orientation-quirks: Add quirk for Lenovo IdeaPad Duet 3 10IGL5
    fbc357c9ad67 HID: logitech-hidpp: Don't restart communication if not necessary
    5a46d8bdaf03 scsi: snic: Fix memory leak with using debugfs_lookup()
    73dbd0f325af pinctrl: at91: use devm_kasprintf() to avoid potential leaks
    52ea47a0ddfb hwmon: (coretemp) Simplify platform device handling
    c713ebf2fe3f gfs2: Improve gfs2_make_fs_rw error handling
    a4b3893e4183 regulator: s5m8767: Bounds check id indexing into arrays
    88001ac08e69 regulator: max77802: Bounds check regulator id against opmode
    4e8c955abc52 ASoC: kirkwood: Iterate over array indexes instead of using pointer math
    9576b7ccc203 ASoC: soc-compress: Reposition and add pcm_mutex
    204233695407 docs/scripts/gdb: add necessary make scripts_gdb step
    5dfe7a5386fd drm/msm/dsi: Add missing check for alloc_ordered_workqueue
    9ae15ebaefc4 drm: amd: display: Fix memory leakage
    a40b97acb817 Revert "fbcon: don't lose the console font across generic->chip driver switch"
    51ab4eb1a25e scsi: lpfc: Fix use-after-free KFENCE violation during sysfs firmware write
    cda2f7efbc2d drm/radeon: free iio for atombios when driver shutdown
    340d1cc503f6 drm/tiny: ili9486: Do not assume 8-bit only SPI controllers
    1f09c5321f03 HID: Add Mapping for System Microphone Mute
    fc4f90d6ebd0 drm/omap: dsi: Fix excessive stack usage
    bb9a5562beb9 drm/amd/display: Fix potential null-deref in dm_resume
    54ba1ec7ed34 drm/amd/display: Revert Reduce delay when sink device not able to ACK 00340h write
    93be5b2dda27 scm: add user copy checks to put_cmsg()
    ad01fa14f65c hv_netvsc: Check status in SEND_RNDIS_PKT completion message
    90c260fddc65 Bluetooth: btusb: Add VID:PID 13d3:3529 for Realtek RTL8821CE
    84e4d4885d0a PM: EM: fix memory leak with using debugfs_lookup()
    dddc132eb0dc PM: domains: fix memory leak with using debugfs_lookup()
    dc39fbd865a9 time/debug: Fix memory leak with using debugfs_lookup()
    49aa49952116 s390/idle: mark arch_cpu_idle() noinstr
    eb1fbdf985cc uaccess: Add minimum bounds check on kernel buffer size
    ce1fb07b7130 coda: Avoid partial allocation of sig_inputArgs
    dca8fd0f7d70 net/mlx5: fw_tracer: Fix debug print
    4d9d7e5e4c79 ACPI: video: Fix Lenovo Ideapad Z570 DMI match
    90fa009c6d51 wifi: mt76: dma: free rx_head in mt76_dma_rx_cleanup
    634986c94c57 tools/power/x86/intel-speed-select: Add Emerald Rapid quirk
    2493966c877f netfilter: nf_tables: NULL pointer dereference in nf_tables_updobj()
    fcf9fb5242d2 m68k: Check syscall_trace_enter() return code
    124ca24e0de9 net: bcmgenet: Add a check for oversized packets
    bcb03f2be982 crypto: hisilicon: Wipe entire pool on error
    f1e093291cd6 clocksource: Suspend the watchdog temporarily when high read latency detected
    e6900ee15d87 thermal: intel: intel_pch: Add support for Wellsburg PCH
    31f4c98ecd17 ACPI: Don't build ACPICA with '-Os'
    57bb8235ba8f ice: add missing checks for PF vsi type
    38f564996906 ice: restrict PTP HW clock freq adjustments to 100, 000, 000 PPB
    b279fa1ceadb inet: fix fast path in __inet_hash_connect()
    1a1f43059afa wifi: mt7601u: fix an integer underflow
    a0f0ce1c8ab9 wifi: brcmfmac: ensure CLM version is null-terminated to prevent stack-out-of-bounds
    f5df8d35b228 x86/bugs: Reset speculation control settings on init
    aa70d1e0f941 timers: Prevent union confusion from unexpected restart_syscall()
    599a9dcef8a7 thermal: intel: Fix unsigned comparison with less than zero
    208065148930 wifi: ath11k: debugfs: fix to work with multiple PCI devices
    4a84fcea596d rcu-tasks: Make rude RCU-Tasks work well with CPU hotplug
    0d9fc1397f71 rcu: Suppress smp_processor_id() complaint in synchronize_rcu_expedited_wait()
    6f2ce125c760 rcu: Make RCU_LOCKDEP_WARN() avoid early lockdep checks
    3a3a5e3f9406 wifi: brcmfmac: Fix potential stack-out-of-bounds in brcmf_c_preinit_dcmds()
    634a5471a6bd wifi: ath9k: Fix use-after-free in ath9k_hif_usb_disconnect()
    a2e4b48d6f9b trace/blktrace: fix memory leak with using debugfs_lookup()
    3538ade9d8c2 blk-iocost: fix divide by 0 error in calc_lcoefs()
    2e68a0f7bc57 ARM: dts: exynos: Use Exynos5420 compatible for the MIPI video phy
    1492fc9b50a4 udf: Define EFSCORRUPTED error code
    de23e98c1c34 rpmsg: glink: Avoid infinite loop on intent for missing channel
    6d24202b8d3d media: saa7134: Use video_unregister_device for radio_dev
    114f768e7314 media: usb: siano: Fix use after free bugs caused by do_submit_urb
    d2512e1c9073 media: i2c: ov7670: 0 instead of -EINVAL was returned
    29962c478e8b media: rc: Fix use-after-free bugs caused by ene_tx_irqsim()
    09fc82a6a7a8 media: imx-jpeg: Apply clk_bulk api instead of operating specific clk
    8f9722ffa432 media: v4l2-jpeg: ignore the unknown APP14 marker
    ecefc14dd1c9 media: v4l2-jpeg: correct the skip count in jpeg_parse_app14_data
    5ed8dde3aa5b media: i2c: imx219: Fix binning for RAW8 capture
    800bb32c7636 media: i2c: imx219: Split common registers from mode tables
    1da495101ef7 media: i2c: ov772x: Fix memleak in ov772x_probe()
    ba54908ae822 media: ov5675: Fix memleak in ov5675_init_controls()
    3969b2ebc660 media: ov2740: Fix memleak in ov2740_init_controls()
    5897fe3ebe82 media: max9286: Fix memleak in max9286_v4l2_register()
    956186b8e2c1 builddeb: clean generated package content
    edc6f486be31 s390/vdso: Drop '-shared' from KBUILD_CFLAGS_64
    4ecc0a347da7 s390/vdso: remove -nostdlib compiler flag
    a26436b90808 powerpc: Remove linker flag from KBUILD_AFLAGS
    60abe015c3b5 media: platform: ti: Add missing check for devm_regulator_get
    954f27086c07 media: ti: cal: fix possible memory leak in cal_ctx_create()
    d4f4aa9ec112 remoteproc: qcom_q6v5_mss: Use a carveout to authenticate modem headers
    bd57756a7e43 IB/hfi1: Fix sdma.h tx->num_descs off-by-one errors
    08210a63eb4f IB/hfi1: Fix math bugs in hfi1_can_pin_pages()
    a495b6a5d027 iommu/vt-d: Allow to use flush-queue when first level is default
    990c539e9c33 iommu/vt-d: Use second level for GPA->HPA translation
    727fb414fe9f iommu/vt-d: Check FL and SL capability sanity in scalable mode
    b0a2bf28af77 iommu/vt-d: Remove duplicate identity domain flag
    db05a58ed435 iommu/vt-d: Fix error handling in sva enable/disable paths
    0bb33c5fe4a0 dmaengine: dw-axi-dmac: Do not dereference NULL structure
    ad222c9af25e dmaengine: sf-pdma: pdma_desc memory leak fix
    f119ef452e2d iommu: Fix error unwind in iommu_group_alloc()
    76e0396313c7 iw_cxgb4: Fix potential NULL dereference in c4iw_fill_res_cm_id_entry()
    3df71bb7e8ad phy: rockchip-typec: fix tcphy_get_mode error case
    295ab6d49ee5 dmaengine: dw-edma: Fix readq_ch() return value truncation
    3d41d9b256ae tty: serial: imx: disable Ageing Timer interrupt request irq
    908e091e1b66 tty: serial: imx: Handle RS485 DE signal active high
    3fe888ce8152 serial: fsl_lpuart: fix RS485 RTS polariy inverse issue
    87674a359ad1 RDMA/irdma: Cap MSIX used to online CPUs + 1
    d9e1dae1e278 usb: max-3421: Fix setting of I/O pins
    9dca64042d85 RDMA/cxgb4: Fix potential null-ptr-deref in pass_establish()
    16603bced2d1 power: supply: remove faulty cooling logic
    c4f590e84a60 iommu/vt-d: Set No Execute Enable bit in PASID table entry
    7bd1d1305c89 usb: gadget: configfs: Restrict symlink creation is UDC already binded
    da589849cfdd usb: gadget: configfs: remove using list iterator after loop body as a ptr
    3d0127aca18f usb: gadget: configfs: use to_usb_function_instance() in cfg (un)link func
    c955f9cf75b7 usb: gadget: configfs: use to_config_usb_cfg() in os_desc_link()
    f12829e5130f usb: musb: mediatek: don't unregister something that wasn't registered
    2aff0632ac6b RDMA/cxgb4: add null-ptr-check after ip_dev_find()
    fcbbf34d7820 tty: serial: fsl_lpuart: Fix the wrong RXWATER setting for rx dma case
    e8fb0f13e45c usb: early: xhci-dbc: Fix a potential out-of-bound memory access
    49bf49312b30 dmaengine: dw-edma: Fix missing src/dst address of interleaved xfers
    834af318db66 fotg210-udc: Add missing completion handler
    b4fe158259fb firmware: dmi-sysfs: Fix null-ptr-deref in dmi_sysfs_register_handle
    ca39a7c65944 drivers: base: transport_class: fix resource leak when transport_add_device() fails
    817b415f481b drivers: base: transport_class: fix possible memory leak
    8d389e363075 driver core: fix resource leak in device_add()
    6cdcee7393d4 misc/mei/hdcp: Use correct macros to initialize uuid_le
    a3c89e8c69a5 VMCI: check context->notify_page after call to get_user_pages_fast() to avoid GPF
    b1cdf1113e21 firmware: stratix10-svc: add missing gen_pool_destroy() in stratix10_svc_drv_probe()
    7f9416f14e86 applicom: Fix PCI device refcount leak in applicom_init()
    4a77ce51f9a8 eeprom: idt_89hpesx: Fix error handling in idt_init()
    4143de03d397 Revert "char: pcmcia: cm4000_cs: Replace mdelay with usleep_range in set_protocol"
    c177d5f24723 serial: tegra: Add missing clk_disable_unprepare() in tegra_uart_hw_init()
    7159dced6ffb tty: serial: fsl_lpuart: clear LPUART Status Register in lpuart32_shutdown()
    d5dcc89c8df8 tty: serial: fsl_lpuart: disable Rx/Tx DMA in lpuart32_shutdown()
    707d954d9b5c PCI: switchtec: Return -EFAULT for copy_to_user() errors
    53b65fa40c01 PCI/IOV: Enlarge virtfn sysfs name buffer
    645384e26f20 usb: typec: intel_pmc_mux: Don't leak the ACPI device reference count
    2a023b47d9f5 usb: typec: intel_pmc_mux: Use the helper acpi_dev_get_memory_resources()
    2dc1dba1d8d3 ACPI: resource: Add helper function acpi_dev_get_memory_resources()
    950c6df6ec6e coresight: cti: Add PM runtime call in enable_store
    ec4808025406 coresight: cti: Prevent negative values of enable count
    4f125de654c4 coresight: etm4x: Fix accesses to TRCSEQRSTEVR and TRCSEQSTR
    4ff283009f55 media: uvcvideo: Check for INACTIVE in uvc_ctrl_is_accessible()
    5052fe8a95a4 media: uvcvideo: Check controls flags before accessing them
    bd3a78ace9bd media: uvcvideo: Use control names from framework
    5f0b4c77e70d media: uvcvideo: Add support for V4L2_CTRL_TYPE_CTRL_CLASS
    c7121f186c1c media: uvcvideo: refactor __uvc_ctrl_add_mapping
    d9eacd945f16 media: uvcvideo: Remove s_ctrl and g_ctrl
    07ab366a9aaf media: uvcvideo: Do not check for V4L2_CTRL_WHICH_DEF_VAL
    0305bf6af005 alpha/boot/tools/objstrip: fix the check for ELF header
    89a0079049f5 kobject: Fix slab-out-of-bounds in fill_kobj_path()
    e8bfba508cf3 kobject: modify kobject_get_path() to take a const *
    2c59650d078b driver core: fix potential null-ptr-deref in device_add()
    18f50b830408 soundwire: cadence: Don't overflow the command FIFOs
    83ce72f41464 i2c: designware: fix i2c_dw_clk_rate() return size to be u32
    d725bc59db96 usb: gadget: fusb300_udc: free irq on the error path in fusb300_probe()
    806d41135051 iio: light: tsl2563: Do not hardcode interrupt trigger type
    0d6282dc2bd3 dmaengine: HISI_DMA should depend on ARCH_HISI
    d901a7fb4069 dmaengine: idxd: Set traffic class values in GRPCFG on DSA 2.0
    6a8a02dcfae1 mfd: pcf50633-adc: Fix potential memleak in pcf50633_adc_async_read()
    413f8b1f8be6 mfd: cs5535: Don't build on UML
    41aed1bddcec objtool: add UACCESS exceptions for __tsan_volatile_read/write
    1ca4adf2e099 printf: fix errname.c list
    3927846a2a53 selftests/ftrace: Fix bash specific "==" operator
    b41a42d11df7 sparc: allow PM configs for sparc32 COMPILE_TEST
    1f3d6661f3f4 perf tools: Fix auto-complete on aarch64
    f9a35cd8f017 perf intel-pt: Do not try to queue auxtrace data on pipe
    bb0a6b5bcebf perf intel-pt: Add support for emulated ptwrite
    6d60fdc1e6a1 perf intel-pt: Add link to the perf wiki's Intel PT page
    ceecd014a8cc perf intel-pt: Add documentation for Event Trace and TNT disable
    b51f0131fd41 perf inject: Use perf_data__read() for auxtrace
    690efcb5827c leds: led-core: Fix refcount leak in of_led_get()
    1cdf973d2b3a perf llvm: Fix inadvertent file creation
    321b8b2b0b2b gfs2: jdata writepage fix
    7cbd5bdb5bd4 cifs: Fix warning and UAF when destroy the MR list
    46cd6c639cdd cifs: Fix lost destroy smbd connection when MR allocate failed
    22f55cbb0605 nfsd: fix race to check ls_layouts
    4abe8b100407 drm/shmem-helper: Fix locking for drm_gem_shmem_get_pages_sgt()
    350f0fc9052d hid: bigben_probe(): validate report count
    0fd999805292 HID: bigben: use spinlock to safely schedule workers
    be0b3f4a10bc HID: bigben_worker() remove unneeded check on report_field
    4dccaf1e45e1 HID: bigben: use spinlock to protect concurrent accesses
    547d18473a16 ASoC: soc-dapm.h: fixup warning struct snd_pcm_substream not declared
    78b4d1e54531 spi: synquacer: Fix timeout handling in synquacer_spi_transfer_one()
    91758289faad NFS: fix disabling of swap
    c78cfb19c9a2 nfs4trace: fix state manager flag printing
    ccbf841c73ef NFSv4: keep state manager thread active if swap is enabled
    24ff9c5cdea9 dm: remove flush_scheduled_work() during local_exit()
    6739473a05ba ASoC: tlv320adcx140: fix 'ti,gpio-config' DT property init
    75eef8cb9d07 hwmon: (mlxreg-fan) Return zero speed for broken fan
    528181646644 spi: bcm63xx-hsspi: Fix multi-bit mode setting
    caed289f95f2 ASoC: codecs: lpass: fix incorrect mclk rate
    110589ecae84 ASoC: codecs: tx-macro: move to individual clks from bulk
    b1c7f77e2831 ASoC: codecs: rx-macro: move to individual clks from bulk
    05fd63e7f640 ASoC: codecs: tx-macro: move clk provider to managed variants
    8ca893710c67 ASoC: codecs: rx-macro: move clk provider to managed variants
    bed34709711a ASoC: codecs: Change bulk clock voting to optional voting in digital codecs
    bf29fda763a9 HID: retain initial quirks set up when creating HID devices
    2098a330b2a6 HID: multitouch: Add quirks for flipped axes
    f6e9b77257c1 scsi: aic94xx: Add missing check for dma_map_single()
    378cc0eec4aa scsi: mpt3sas: Fix a memory leak
    2dc8d09c1e68 drm/amdgpu: fix enum odm_combine_mode mismatch
    8b9415aecb1f hwmon: (ltc2945) Handle error case in ltc2945_value_store
    9cd1a9b7de20 ASoC: dt-bindings: meson: fix gx-card codec node regex
    fecd236ef6be ASoC: mchp-spdifrx: Fix uninitialized use of mr in mchp_spdifrx_hw_params()
    2b346cc075ec ASoC: rsnd: fixup #endif position
    fa077baab8ea ASoC: mchp-spdifrx: disable all interrupts in mchp_spdifrx_dai_remove()
    667782d7ef5b ASoC: mchp-spdifrx: fix controls that works with completion mechanism
    12396e9300da ASoC: mchp-spdifrx: fix return value in case completion times out
    0c4e4d2ccb88 ASoC: mchp-spdifrx: fix controls which rely on rsr register
    e4d1c3ce2fe3 spi: dw_bt1: fix MUX_MMIO dependencies
    5f54a1d08e26 gpio: vf610: connect GPIO label to dev name
    0b64984dfbc4 ASoC: soc-compress.c: fixup private_data on snd_soc_new_compress()
    49cf87919dae drm/mediatek: Clean dangling pointer on bind error path
    62952905e195 drm/mediatek: mtk_drm_crtc: Add checks for devm_kcalloc
    cd98ea8fa15b drm/mediatek: Drop unbalanced obj unref
    088a31fe1edb drm/mediatek: Use NULL instead of 0 for NULL pointer
    2a83e2b5b121 drm/mediatek: dsi: Reduce the time of dsi from LP11 to sending cmd
    be30b05c4a33 drm/msm/dpu: set pdpu->is_rt_pipe early in dpu_plane_sspp_atomic_update()
    f50858d1b66a drm/tegra: firewall: Check for is_addr_reg existence in IMM check
    6f3614226430 gpu: host1x: Don't skip assigning syncpoints to channels
    11d6f70f07b0 pinctrl: mediatek: Initialize variable *buf to zero
    47a117028113 pinctrl: mediatek: Initialize variable pullen and pullup to zero
    b5b81fc1ac08 pinctrl: mediatek: fix coding style
    58151b609821 pinctrl: bcm2835: Remove of_node_put() in bcm2835_of_gpio_ranges_fallback()
    82943a0730e0 drm/msm/mdp5: Add check for kzalloc
    c7ee1772e3c3 drm/msm/dpu: Add check for pstates
    d4ba50614cb3 drm/msm/dpu: Add check for cstate
    f0e9f3e1d6c8 drm/msm: use strscpy instead of strncpy
    c9b6a75aae4d drm/msm/dsi: Allow 2 CTRLs on v2.5.0
    ce9fedc3099e drm: exynos: dsi: Fix MIPI_DSI*_NO_* mode flags
    3a40fd51e81e drm/mipi-dsi: Fix byte order of 16-bit DCS set/get brightness
    15edaafbff75 drm/bridge: lt9611: pass a pointer to the of node
    75b3c2777dbb drm/bridge: lt9611: fix clock calculation
    a2c196f05a30 drm/bridge: lt9611: fix programming of video modes
    24e51dea9885 drm/bridge: lt9611: fix polarity programming
    77ba2d294e16 drm/bridge: lt9611: fix HPD reenablement
    1b5adc8752b0 drm/bridge: lt9611: fix sleep mode setup
    bf661c5e3bc4 drm/msm/dpu: Disallow unallocated resources to be returned
    436fb91cadb8 drm/msm/gem: Add check for kmalloc
    525c43e67d47 ALSA: hda/ca0132: minor fix for allocation size
    399d01375659 drm/msm/adreno: Fix null ptr access in adreno_gpu_cleanup()
    e69f8e959b72 ASoC: fsl_sai: initialize is_dsp_mode flag
    6fd4144985fc ASoC: fsl_sai: Update to modern clocking terminology
    d58b45bbbea8 scsi: qla2xxx: Fix exchange oversubscription for management commands
    2232e689f9d9 scsi: qla2xxx: Fix exchange oversubscription
    9b2aab3da463 scsi: qla2xxx: edif: Fix I/O timeout due to over-subscription
    09af894bc3bd drm/msm: clean event_thread->worker in case of an error
    e76fbfdad503 drm/vc4: hdmi: Correct interlaced timings again
    55f2645e4e12 drm/vc4: hvs: Fix colour order for xRGB1555 on HVS5
    ae8b24e8289b drm/vc4: hvs: Set AXI panic modes
    0f735f232ff5 pinctrl: rockchip: Fix refcount leak in rockchip_pinctrl_parse_groups
    af54707c0cca pinctrl: stm32: Fix refcount leak in stm32_pctrl_get_irq_domain
    b31ad2ecc4f7 pinctrl: qcom: pinctrl-msm8976: Correct function names for wcss pins
    9a01ecc312e7 drm/msm/hdmi: Add missing check for alloc_ordered_workqueue
    1721badebfc8 hwmon: (ftsteutates) Fix scaling of measurements
    11226ab2f99f gpu: ipu-v3: common: Add of_node_put() for reference returned by of_graph_get_port_by_id()
    262f8e5940c6 drm: tidss: Fix pixel format definition
    d2991e6b3002 drm/vc4: dpi: Fix format mapping for RGB565
    8e04aaffb6de drm/vc4: dpi: Add option for inverting pixel clock and output enable
    1f9836f95271 drm/vkms: Fix null-ptr-deref in vkms_release()
    bad13de76488 drm/vkms: Fix memory leak in vkms_init()
    309e785bae07 drm/bridge: megachips: Fix error handling in i2c_register_driver()
    b02742255620 drm: mxsfb: DRM_MXSFB should depend on ARCH_MXS || ARCH_MXC
    da56b06f3828 drm/bridge: ti-sn65dsi83: Fix delay after reset deassert to match spec
    d72f8548a613 drm/fourcc: Add missing big-endian XRGB1555 and RGB565 formats
    d06e827a65a6 drm: Fix potential null-ptr-deref due to drmm_mode_config_init()
    50c75e7ce64c sefltests: netdevsim: wait for devlink instance after netns removal
    1a452b449a29 selftest: fib_tests: Always cleanup before exit
    96cf406dea06 net: bcmgenet: fix MoCA LED control
    f6df58aa15f7 l2tp: Avoid possible recursive deadlock in l2tp_tunnel_register()
    f7854541b02e selftests/net: Interpret UDP_GRO cmsg data as an int value
    75ee94229062 irqchip/irq-bcm7120-l2: Set IRQ_LEVEL for level triggered interrupts
    3a413b05c66e irqchip/irq-brcmstb-l2: Set IRQ_LEVEL for level triggered interrupts
    95ab0725c521 bpf: Fix global subprog context argument resolution logic
    bfc344d1e78c can: esd_usb: Move mislocated storage of SJA1000_ECC_SEG bits in case of a bus error
    f5aaf140ab1c thermal/drivers/hisi: Drop second sensor hi3660
    2d20f9b6dd81 wifi: mac80211: make rate u32 in sta_set_rate_info_rx()
    62ff301aa492 crypto: crypto4xx - Call dma_unmap_page when done
    74fe2bf6746e ACPI: resource: Do IRQ override on all TongFang GMxRGxx
    b577d0bde456 ACPI: resource: Add IRQ overrides for MAINGEAR Vector Pro 2 models
    e0ae2d90bc0c selftests/bpf: Fix out-of-srctree build
    15fe03e5dd05 wifi: mwifiex: fix loop iterator in mwifiex_update_ampdu_txwinsize()
    f15ef0ebcf56 wifi: iwl4965: Add missing check for create_singlethread_workqueue()
    505c74c4c0b1 wifi: iwl3945: Add missing check for create_singlethread_workqueue
    5ac2f1e3bbe6 RISC-V: time: initialize hrtimer based broadcast clock event device
    e97dd92c3611 m68k: /proc/hardware should depend on PROC_FS
    b677cb4f0b6b crypto: rsa-pkcs1pad - Use akcipher_request_complete
    99e8e6fd70a1 rds: rds_rm_zerocopy_callback() correct order for list_add_tail()
    d7bd166859fe libbpf: Fix alen calculation in libbpf_nla_dump_errormsg()
    b8f6c28ce1cf s390/ap: fix status returned by ap_qact()
    900a0c25a653 s390/ap: fix status returned by ap_aqic()
    0e872b4da7c6 Bluetooth: hci_qca: get wakeup status from serdev device handle
    31a288a4df7f Bluetooth: L2CAP: Fix potential user-after-free
    bf1b79d57e44 OPP: fix error checking in opp_migrate_dentry()
    db6efde0ab80 tap: tap_open(): correctly initialize socket uid
    67f9f02928a3 tun: tun_chr_open(): correctly initialize socket uid
    a8353cfb4eec net: add sock_init_data_uid()
    15a66714bf28 s390/vmem: fix empty page tables cleanup under KASAN
    6ce9a22fc021 s390/mem_detect: fix detect_memory() error handling
    856fc2195494 irqchip/ti-sci: Fix refcount leak in ti_sci_intr_irq_domain_probe
    88cb93d3a16f irqchip/irq-mvebu-gicp: Fix refcount leak in mvebu_gicp_probe
    d6c66c468897 irqchip/alpine-msi: Fix refcount leak in alpine_msix_init_domains
    4401b4858557 irqchip: Fix refcount leak in platform_irqchip_probe
    a7724a7c2236 net/mlx5: Enhance debug print in page allocation failure
    a25ff23ba2d7 mt76: mt7915: fix polling firmware-own status
    9af6aa18b4e8 bpftool: profile online CPUs instead of possible
    457139238f34 crypto: ccp - Flush the SEV-ES TMR memory before giving it to firmware
    68c1cfd01332 crypto: ccp - Refactor out sev_fw_alloc()
    13cb7851a5b1 leds: led-class: Add missing put_device() to led_put()
    912eb10b6564 crypto: xts - Handle EBUSY correctly
    55a7f88059c8 x86/microcode: Adjust late loading result reporting message
    36b6fc833437 x86/microcode: Check CPU capabilities after late microcode update correctly
    de6e20f3f33e x86/microcode: Add a parameter to microcode_check() to store CPU capabilities
    a9e76b276b10 x86/microcode: Print previous version of microcode after reload
    6d2b3a319144 x86/microcode: Default-disable late loading
    dce39c10d885 x86/microcode: Rip out the OLD_INTERFACE
    54aa76ad5f01 x86: Mark stop_this_cpu() __noreturn
    e4de2b98c4bd powercap: fix possible name leak in powercap_register_zone()
    36ec108b7bd7 crypto: seqiv - Handle EBUSY correctly
    840a1d3b77c1 crypto: essiv - Handle EBUSY correctly
    416eb7cc967d crypto: ccp - Failure on re-initialization due to duplicate sysfs filename
    3496c1b3f500 ACPI: battery: Fix missing NUL-termination with large strings
    ac75c78f8f76 wifi: cfg80211: Fix extended KCK key length check in nl80211_set_rekey_data()
    53c8a256e5d3 wifi: ath11k: Fix memory leak in ath11k_peer_rx_frag_setup
    1af7eacfad45 wifi: ath9k: Fix potential stack-out-of-bounds write in ath9k_wmi_rsp_callback()
    61490d271027 wifi: ath9k: hif_usb: clean up skbs if ath9k_hif_usb_rx_stream() fails
    f1cdbe94f728 ath9k: htc: clean up statistics macros
    4adfc9eb8a45 ath9k: hif_usb: simplify if-if to if-else
    c0c0614f143b wifi: ath9k: htc_hst: free skb in ath9k_htc_rx_msg() if there is no callback function
    88f6608c7ede wifi: orinoco: check return value of hermes_write_wordrec()
    35fb0e275af1 wifi: rtl8xxxu: Fix memory leaks with RTL8723BU, RTL8192EU
    ae17414de71b thermal/drivers/tsens: limit num_sensors to 9 for msm8939
    80726a391973 thermal/drivers/tsens: fix slope values for msm8939
    e991430d2375 thermal/drivers/tsens: Sort out msm8976 vs msm8956 data
    df56f5265e73 thermal/drivers/tsens: Add compat string for the qcom,msm8960
    21cb4e5700be thermal/drivers/tsens: Drop msm8976-specific defines
    801d10065b8a ACPICA: nsrepair: handle cases without a return value correctly
    0cf3af4de06a crypto: ccp - Avoid page allocation failure warning for SEV_GET_ID2
    9ae0f82aa70b lib/mpi: Fix buffer overrun when SG is too long
    d215e32fe18a rcu-tasks: Fix synchronize_rcu_tasks() VS zap_pid_ns_processes()
    f7dc606a47d3 rcu-tasks: Remove preemption disablement around srcu_read_[un]lock() calls
    a0818534fb64 rcu-tasks: Improve comments explaining tasks_rcu_exit_srcu purpose
    bcaa8b8fc1f1 genirq: Fix the return type of kstat_cpu_irqs_sum()
    4222cc9e7912 ACPICA: Drop port I/O validation for some regions
    2b56df9102a8 crypto: x86/ghash - fix unaligned access in ghash_setkey()
    4f47453c39f3 wifi: wl3501_cs: don't call kfree_skb() under spin_lock_irqsave()
    f19c9ed16294 wifi: libertas: cmdresp: don't call kfree_skb() under spin_lock_irqsave()
    b9294aedfb17 wifi: libertas: main: don't call kfree_skb() under spin_lock_irqsave()
    e9c889b0c458 wifi: libertas: if_usb: don't call kfree_skb() under spin_lock_irqsave()
    068e986f2ba8 wifi: libertas_tf: don't call kfree_skb() under spin_lock_irqsave()
    ddb864ea9ca2 wifi: brcmfmac: unmap dma buffer in brcmf_msgbuf_alloc_pktid()
    e8ef89e5b89e wifi: brcmfmac: fix potential memory leak in brcmf_netdev_start_xmit()
    5706d00fde3f wifi: wilc1000: fix potential memory leak in wilc_mac_xmit()
    9424ea9d557e wifi: ipw2200: fix memory leak in ipw_wdev_init()
    345692e96bb7 wifi: ipw2x00: don't call dev_kfree_skb() under spin_lock_irqsave()
    d78d85d84a44 libbpf: Fix btf__align_of() by taking into account field offsets
    0c962dcd6bf6 wifi: rtlwifi: Fix global-out-of-bounds bug in _rtl8812ae_phy_set_txpower_limit()
    507ad94346da wifi: rtl8xxxu: don't call dev_kfree_skb() under spin_lock_irqsave()
    037f84c0bfae wifi: libertas: fix memory leak in lbs_init_adapter()
    8722f96adece wifi: iwlegacy: common: don't call dev_kfree_skb() under spin_lock_irqsave()
    53aa5137560a wifi: rtlwifi: rtl8723be: don't call kfree_skb() under spin_lock_irqsave()
    993cd8cf5442 wifi: rtlwifi: rtl8188ee: don't call kfree_skb() under spin_lock_irqsave()
    7d2cb8abaad7 wifi: rtlwifi: rtl8821ae: don't call kfree_skb() under spin_lock_irqsave()
    b56e60b3b158 wifi: rsi: Fix memory leak in rsi_coex_attach()
    3d30678a59af block: bio-integrity: Copy flags when bio_integrity_payload is cloned
    cabad071ab17 arm64: dts: qcom: pmk8350: Use the correct PON compatible
    0e12d7725d58 arm64: dts: qcom: pmk8350: Specify PBS register for PON
    2936952fa626 KEYS: asymmetric: Fix ECDSA use via keyctl uapi
    a5fa5a41791c x86/perf/zhaoxin: Add stepping check for ZXC
    2c36c390a749 sched/rt: pick_next_rt_entity(): check list_entry
    3f191c2cc567 sched/deadline,rt: Remove unused parameter from pick_next_[rt|dl]_entity()
    544a552be086 s390/dasd: Fix potential memleak in dasd_eckd_init()
    a00cf3619f19 arm64: dts: qcom: msm8992-lg-bullhead: Correct memory overlaps with the SMEM and MPSS memory regions
    8173defc3635 blk-mq: correct stale comment of .get_budget
    7dd5f83c1149 blk-mq: remove stale comment for blk_mq_sched_mark_restart_hctx
    5eb99e7a80fc blk-mq: avoid sleep in blk_mq_alloc_request_hctx
    20b9d7b4e0e6 arm64: dts: mediatek: mt7622: Add missing pwm-cells to pwm node
    88022f659f63 arm64: dts: mt8192: Fix CPU map for single-cluster SoC
    770e769834e1 ARM: dts: imx7s: correct iomuxc gpr mux controller cells
    2fe22748d511 ARM: dts: sun8i: nanopi-duo2: Fix regulator GPIO reference
    762c821b97a7 arm64: dts: meson: bananapi-m5: switch VDDIO_C pin to OPEN_DRAIN
    e29709ba5847 arm64: dts: renesas: beacon-renesom: Fix gpio expander reference
    3f5ec3c335dd locking/rwsem: Disable preemption in all down_read*() and up_read() code paths
    ab4d47a343da locking/rwsem: Optimize down_read_trylock() under highly contended case
    ac0e5a181eff arm64: dts: amlogic: meson-sm1-odroid-hc4: fix active fan thermal trip
    f4891e5725a0 arm64: dts: amlogic: meson-gxbb-kii-pro: fix led node name
    665bdfabec52 arm64: dts: amlogic: meson-gxl-s905d-phicomm-n1: fix led node name
    f0b5101a6432 arm64: dts: amlogic: meson-sm1-bananapi-m5: fix adc keys node names
    ae03ae3b6b93 arm64: dts: amlogic: meson-gx-libretech-pc: fix update button name
    5be0df1849b6 arm64: dts: amlogic: meson-gxl: add missing unit address to eth-phy-mux node name
    7a5b8cd5622b arm64: dts: amlogic: meson-gx: add missing unit address to rng node name
    5c1ce648c6c3 arm64: dts: amlogic: meson-gxl-s905d-sml5442tw: drop invalid clock-names property
    d089142bcc73 arm64: dts: amlogic: meson-gx: add missing SCPI sensors compatible
    f562cc37f0f0 arm64: dts: amlogic: meson-axg: fix SCPI clock dvfs node name
    334bb3461204 arm64: dts: amlogic: meson-gx: fix SCPI clock dvfs node name
    88083a25d80a ARM: imx: Call ida_simple_remove() for ida_simple_get
    abfdfa339675 ARM: dts: exynos: correct wr-active property in Exynos3250 Rinato
    70aac3c6b14d arm64: dts: ti: k3-j7200: Fix wakeup pinmux range
    c42defea2db0 ARM: s3c: fix s3c64xx_set_timer_source prototype
    af48760133f1 ARM: bcm2835_defconfig: Enable the framebuffer
    37858e17e45e ARM: OMAP1: call platform_device_put() in error case in omap1_dm_timer_init()
    89895442387d arm64: dts: meson: remove CPU opps below 1GHz for G12A boards
    69c7a270357a arm64: dts: qcom: ipq8074: correct PCIe QMP PHY output clock names
    feb8c71f015d arm64: dts: qcom: ipq8074: fix Gen3 PCIe node
    1563af0f28af arm64: dts: qcom: ipq8074: correct Gen2 PCIe ranges
    e88204931d9a arm64: dts: qcom: ipq8074: fix Gen3 PCIe QMP PHY
    d9df682bcea5 arm64: dts: qcom: ipq8074: fix PCIe PHY serdes size
    a55a645aa303 arm64: dts: qcom: Fix IPQ8074 PCIe PHY nodes
    dd3d021ae547 arm64: dts: qcom: ipq8074: correct USB3 QMP PHY-s clock output names
    8a5d81afa6e1 arm64: dts: qcom: msm8992-bullhead: Disable dfps_data_mem
    76e794cfd137 arm64: dts: qcom: msm8992-bullhead: Fix cont_splash_mem size
    10c5fae6f99d arm64: dts: msm8992-bullhead: add memory hole region
    410028a170f3 arm64: dts: meson-gx: Fix the SCPI DVFS node name and unit address
    a240ab41b3bc arm64: dts: meson-g12a: Fix internal Ethernet PHY unit name
    472c333be2c2 arm64: dts: meson-gx: Fix Ethernet MAC address unit name
    b63bb187696c arm64: dts: qcom: sc7280: correct SPMI bus address cells
    9e4063237957 arm64: dts: qcom: sc7180: correct SPMI bus address cells
    6ca79943f5e3 arm64: dts: qcom: sdm845-db845c: fix audio codec interrupt pin name
    e192005e3f69 arm64: dts: mediatek: mt8183: Fix systimer 13 MHz clock description
    1cc12d10d13a ARM: zynq: Fix refcount leak in zynq_early_slcr_init
    a1d42650cf29 arm64: dts: imx8m: Align SoC unique ID node unit address
    61ecb2df6923 arm64: dts: qcom: sm6125: Reorder HSUSB PHY clocks to match bindings
    738a716d2de6 arm64: dts: qcom: sm8150-kumano: Panel framebuffer is 2.5k instead of 4k
    a7d6e757169f arm64: dts: qcom: msm8996-tone: Fix USB taking 6 minutes to wake up
    795a9a93ed8d arm64: dts: qcom: qcs404: use symbol names for PCIe resets
    10fcdad2b9f3 ARM: OMAP2+: Fix memory leak in realtime_counter_init()
    e2f62d8302bb powerpc/mm: Rearrange if-else block to avoid clang warning
    3959316f8ceb HID: asus: use spinlock to safely schedule workers
    d2ce7b6f3ae4 HID: asus: use spinlock to protect concurrent accesses

(From OE-Core rev: e413ba27d4ca294173612a7718afc2fd2a9891e6)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 7be1bc5ce77b31bb634bd3572d8553cad127f38e)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-04-04 17:46:24 +01:00
Bruce Ashfield
32a2f0bd30 linux-yocto/5.15: update to v5.15.98
Updating  to the latest korg -stable release that comprises
the following commits:

    d9b4a0c83a2d Linux 5.15.98
    937c15e27a63 io_uring: ensure that io_init_req() passes in the right issue_flags
    bf7123dd26a0 Linux 5.15.97
    cf7f9cd50013 io_uring: add missing lock in io_get_file_fixed
    77358093331e USB: core: Don't hold device lock while reading the "descriptors" sysfs file
    3b24c980dc07 usb: gadget: u_serial: Add null pointer check in gserial_resume
    2d72795ccde2 USB: serial: option: add support for VW/Skoda "Carstick LTE"
    02190d23b731 usb: dwc3: pci: add support for the Intel Meteor Lake-M
    cc09a7d5a6a1 scripts/tags.sh: fix incompatibility with PCRE2
    1aee4ab2c107 scripts/tags.sh: Invoke 'realpath' via 'xargs'
    06740b433d9d vc_screen: don't clobber return value in vcs_read
    e7f460696340 net: Remove WARN_ON_ONCE(sk->sk_forward_alloc) from sk_stream_kill_queues().
    16d319ec18b0 bpf: bpf_fib_lookup should not return neigh in NUD_FAILED state
    6dd1de27d771 staging: mt7621-dts: change palmbus address to lower case
    07f0c6f9c357 x86/cpu: Add Lunar Lake M
    e1b09162f268 HID: core: Fix deadloop in hid_apply_multiplier.
    f1ee47003075 neigh: make sure used and confirmed times are valid
    2590058fb058 IB/hfi1: Assign npages earlier
    4534ea429ed8 ASoC: rt715-sdca: fix clock stop prepare timeout issue
    e430f058d90c btrfs: send: limit number of clones and allocated memory size
    d454a7212e17 ACPI: NFIT: fix a potential deadlock during NFIT teardown
    435e8fabd19a HID: elecom: add support for TrackBall 056E:011C
    6bd2f1754393 ARM: dts: rockchip: add power-domains property to dp node on rk3288
    839a9c0047a1 arm64: dts: rockchip: drop unused LED mode property from rk3328-roc-cc
    503e3d93cf35 Fix XFRM-I support for nested ESP tunnels
    765b3a0e0a81 ionic: refactor use of ionic_rx_fill()

(From OE-Core rev: 0ed52357cdc913224a298144fe5118525de7e0e1)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 4961d295599b1c3822752c42891006a49aea8ff3)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-04-04 17:46:24 +01:00
Geoffrey GIRY
8c4d029f75 cve-check: Fix false negative version issue
NVD DB store version and update in the same value, separated by '_'.
The proposed patch check if the version from NVD DB contains a "_",
ie 9.2.0_p1 is convert to 9.2.0p1 before version comparison.

[YOCTO #14127]

Reviewed-by: Yoann CONGAL <yoann.congal@smile.fr>
(From OE-Core rev: 423ba02b0c2a15bf771db2271df17e12c5adabb2)

Signed-off-by: Geoffrey GIRY <geoffrey.giry@smile.fr>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 7d00f6ec578084a0a0e5caf36241d53036d996c4)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-04-04 17:46:24 +01:00
Geoffrey GIRY
9cb390c458 cve-extra-exclusions: ignore inapplicable linux-yocto CVEs
Multiple CVE are patched in kernel but appears as active because the NVD
database is not up to date

In common file cve-extra-exclusion.inc, CVE are ignored if and only if
all  versions of kernel used by langdale are patched

Also ignore CVEs with wrong CPE (applied to kernel but actually are for
 another package)

In cve-exclusion_5.15.inc, only ignore CVE that are patched in v5.15,
and not patched in v5.19
Recipes of version 5.15 include this file

Reviewed-by: Yoann CONGAL <yoann.congal@smile.fr>
(From OE-Core rev: 58d99257bc5b417c518049c6a79144aecc4e9224)

Signed-off-by: Geoffrey GIRY <geoffrey.giry@smile.fr>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-04-04 17:46:24 +01:00
Siddharth Doshi
cbe5fda5a7 openssl: Security fix for CVE-2023-0464, CVE-2023-0465, CVE-2023-0466
Upstream-Status:
- CVE-2023-0464: Backport from [https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=959c59c7a0164117e7f8366466a32bb1f8d77ff1]
- CVE-2023-0465: Backport from [https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=1dd43e0709fece299b15208f36cc7c76209ba0bb]
- CVE-2023-0466: Backport from [https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=51e8a84ce742db0f6c70510d0159dad8f7825908]

(From OE-Core rev: c650340c11567ae145151683a65ee54afdcf08e8)

Signed-off-by: Siddharth Doshi <sdoshi@mvista.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-04-04 17:46:24 +01:00
Narpat Mali
79dd246cc5 python3-setuptools: fix for CVE-2022-40897
Python Packaging Authority (PyPA) setuptools before 65.5.1 allows remote attackers
to cause a denial of service via HTML in a crafted package or custom PackageIndex
page. There is a Regular Expression Denial of Service (ReDoS) in package_index.py.

CVE: CVE-2022-40897

Upstream-Status: Backport [43a9c9bfa6]

cherry-pick and modify from OE-Core rev: f574d8d57ff3fbc38e350e7a90913993081c4fdf

(From OE-Core rev: f2230ead6c145efc902336b2b9d5a4f0ecb749de)

Signed-off-by: Narpat Mali <narpat.mali@windriver.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Chee Yang Lee <chee.yang.lee@intel.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-04-04 17:46:24 +01:00
Piotr Łobacz
a7d90a69d9 systemd: fix wrong nobody-group assignment
The generated /etc/group file had a wrong group name for nobody-group
which was nobody with same id as nogroup groupd. This was leading to
duplcate groups, with same ids and different names.

More can be read on this link:
https://bugzilla.yoctoproject.org/show_bug.cgi?id=11766

(From OE-Core rev: a0ef4386d37f84e8f169cbe3cfa9307010b89bbd)

Signed-off-by: Piotr Łobacz <p.lobacz@welotec.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit d69fccf2e5d108dd7c6059310924588d36a45865)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-25 23:00:14 +00:00
Frederic Martinsons
2929a3bb19 cargo.bbclass: use offline mode for building
There should not be any network access during the build step so
specify this explicitely to cargo.
This will allow better error message, e.g:

| Caused by:
|  can't checkout from 'ssh://git@.../fmartinsons/zbus-git-dep-test.git': you are in  the offline mode (--offline)

Instead of

|   Updating git repository `ssh://git@.../fmartinsons/zbus-git-dep-test.git`
| warning: spurious network error (2 tries remaining): failed to resolve address for gitlab.com: Temporary failure in name resolution;class=Net (12)

(From OE-Core rev: bad6361b2f90e7916e344148976a968559375eda)

Signed-off-by: Frederic Martinsons <frederic.martinsons@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 8e9ec03c73e8c09e223d6f6cce297df363991350)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-25 23:00:14 +00:00
Tim Orling
84cfe291ad cracklib: update github branch to 'main'
(From OE-Core rev: 726bd3b50209660151be7743533bddaa2d0da360)

Signed-off-by: Tim Orling <tim.orling@konsulko.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit ab041ca5d036c2a1a1514893c6ffb5c7188ff00f)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-25 23:00:14 +00:00
Mingli Yu
8e2787313f mdadm: Fix raid0 tests
Backport patches to fix raid0 tests:
  tests/00raid0
  tests/00readonly
  tests/03r0assem
  tests/04r0update
  tests/04update-metadata

(From OE-Core rev: 4bacfa12a832e3b4d0b1b0ee0ad64ed8b830b339)

Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
(cherry picked from commit a5c38968e1a188f7d186c42c38ee49fb749f2b97)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-25 23:00:14 +00:00
Mingli Yu
f456da3798 mdadm: fix tests/02lineargrow
Backport patch [1] to fix tests/02lineargrow.

[1] https://git.kernel.org/pub/scm/utils/mdadm/mdadm.git/commit/?id=a2c832465fc75202e244327b2081231dfa974617

(From OE-Core rev: fd3aaff0e52fad6075b5e1c516ed2aff2a3742fc)

Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
(cherry picked from commit 3c2d554f141eb64785e86c8d1e5d85c65caaf322)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-25 23:00:14 +00:00
Mingli Yu
a1010b0e32 mdadm: Fix testcase 06wrmostly
Backport patch [1] to fix the failure of the 06wrmostly test.

[1] https://git.kernel.org/pub/scm/utils/mdadm/mdadm.git/commit/?id=41edf6f45895193f4a523cb0a08d639c9ff9ccc9

(From OE-Core rev: 04e4465fa36d2c0a4cbbaf89b5dd2b816b20a61a)

Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
(cherry picked from commit 9c73484cb12f39662a8f10027a55c63b95373066)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-25 23:00:14 +00:00
Richard Purdie
d2072e8b57 pybootchart: Fix extents handling to account for cpu/io/mem pressure changes
The previous addition of pressure values to the chart didn't fix the extents
function which meant the bottom of the chart was cut off. Fix that.

(From OE-Core rev: abbeea66297cfaf77bca9550400be37b39486b57)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit cc8cef69e717e08f80d10f775f0fffc644267b59)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-25 23:00:14 +00:00
Richard Purdie
8937564eac pybootchartui: Fix python syntax issue
Fix:

scripts/pybootchartgui/pybootchartgui/parsing.py:134: SyntaxWarning: "is" with a literal. Did you mean "=="?
  if pid is 0:

(From OE-Core rev: ea87507b74effff0521e72c6484e7d6107e5786e)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit c9a6511ae618035b8efad01646e37ba28ce1e3f8)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-25 23:00:14 +00:00
Martin Jansa
a48303dc6f tzcode-native: fix build with gcc-13 on host
* passing -std=c2x to avoid build failure with gcc-13 on host
  works as well, but the resulting zic then segfaults when
  used in tzdata, use a fix from upstream instead

* reported upstream in https://mm.icann.org/pipermail/tz/2023-March/032690.html

* fixes:
  http://errors.yoctoproject.org/Errors/Details/697913/

(From OE-Core rev: 8aa68cd570212969959131578d105b53d0859e47)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 5dabf677f38c209fb6a8ba837d5a66fd89f57d4d)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-25 23:00:14 +00:00
Martin Jansa
fc00176657 tzdata: use separate B instead of WORKDIR for zic output
* avoid copying whole exec_prefix over base_prefix as there
  were only zoneinfo files anyway

(From OE-Core rev: 9b6dcbf40c10bfb640f51ecf2a1a8ea7d487a0f3)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 37846f8735683ed0fab5ef5c12d77c6041348801)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-25 23:00:14 +00:00
Martin Jansa
8f216292e6 timezone: use 'tz' subdir instead of ${WORKDIR} directly
(From OE-Core rev: 28b0d58d95242d7c67e18f984f84806aef4bbf85)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit bc53ccaf82c57826acac5f9c2557e403ec367807)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-25 23:00:14 +00:00
Ross Burton
b249219226 lib/resulttool: fix typo breaking resulttool log --ptest
ptestresult_get_log() looked for a key called 'ptestresuls.sections',
which should be 'ptestresult.sections'

(From OE-Core rev: dc5097e6692ff123a48d9af749f4e66b58056b04)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 7c8c9f7283e54bf8b1521fbaad7dceb66a8fcdbb)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-25 23:00:14 +00:00
Mikko Rapeli
69973e7cb0 oeqa rtc.py: skip if read-only-rootfs
hwclock command fails on read-only-rootfs:

AssertionError: 1 != 0 : Failed to reset RTC time, output: hwclock: cannot open /etc/adjtime: Read-only file system

(From OE-Core rev: 0bb93dce6abdaf09d73d2f9f71781ca20d111601)

Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 017bf8c160f6ab67d9f8e8d9e30b15bf84f73807)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-25 23:00:14 +00:00
Romuald Jeanne
50bd6e11c4 image_types: fix multiubi var init
Make sure to expand all MKUBIFS_ARGS_<label> and UBINIZE_ARGS_<label> vars
in 'do_image_multiubi' task to use them to init the local 'mkubifs_args'
and 'ubinize_args' vars.

See [YOCTO #15065]

(From OE-Core rev: 417b096d5cf51f5b947bccc32e6be97a93aed9d6)

Signed-off-by: Romuald JEANNE <romuald.jeanne@st.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 09d05215cf61981c7bc828cc0ff64c2fd5edc43c)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-25 23:00:14 +00:00
Khem Raj
8e560a0f4a systemd.bbclass: Add /usr/lib/systemd to searchpaths as well
Some packages like lirc places its unit files into $systemd_user_unitdir
and also uses them in SYSTEMD_SERVICE list in recipe. This fails in
do_package

ERROR: Didn't find service unit 'lircmd.service', specified in SYSTEMD_SERVICE:lirc.

here lircmd.service is installed in /usr/lib/systemd/system/lircmd.service

(From OE-Core rev: 612e2cff28852d9d3dfc947ee07dbe4111748239)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 12808a4159835b67d8d53d32bc9135811701a779)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-25 23:00:14 +00:00
Alexander Kanavin
a870d77486 devtool/upgrade: do not delete the workspace/recipes directory
If it exists, there is no need to delete it, and if it does not,
devtool prints an ugly traceback.

(From OE-Core rev: bb350782ba1a66f1cf0d3e043000f5e1535cf961)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit af82e59e8f08369aabd5fa6eb43022982d4e59a7)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-25 23:00:14 +00:00
Romuald JEANNE
02d2cfd198 image_types: fix vname var init in multiubi_mkfs() function
As vname var is needed in multiubi_mkfs() function, we need to keep it
defined and use it as parameter to the new write_ubi_config() function.

See [YOCTO #15027]

(From OE-Core rev: 705b5c51610a1d5a267a3f6559667a5f70fbadf5)

Signed-off-by: Romuald JEANNE <romuald.jeanne@st.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 8b5e1cce35e129b21d871ab45b03811fdb6eaf8f)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-25 23:00:14 +00:00
Sudip Mukherjee
1c6ddbf7b2 libgit2: update license information
The LICENSE did not have complete information.
Some examples of missing license:

Zlib: deps/zlib/
ISC: tests/clar/clar.c
LGPL-2.1-or-later: src/libgit2/xdiff/xdiffi.c
CC0-1.0: src/util/rand.c

(From OE-Core rev: a45bc475c7d983aef57c51dc51cb24902959e6f6)

Signed-off-by: Sudip Mukherjee <sudipm.mukherjee@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 5560a0e15bd860a59671a66cc76ad1bb7e07c9d1)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-25 23:00:14 +00:00
Chee Yang Lee
02861c178c go: upgrade to 1.19.7
upgrade include fix for CVE-2022-41722 CVE-2022-41723 CVE-2022-41724
CVE-2022-41725 CVE-2023-24532

Release notes:

go1.19.5 (released 2023-01-10) includes fixes to the compiler, the
linker, and the crypto/x509, net/http, sync/atomic, and syscall
packages. See the Go 1.19.5 milestone on our issue tracker for details.

go1.19.6 (released 2023-02-14) includes security fixes to the
crypto/tls, mime/multipart, net/http, and path/filepath packages, as
well as bug fixes to the go command, the linker, the runtime, and the
crypto/x509, net/http, and time packages. See the Go 1.19.6 milestone on
our issue tracker for details.

go1.19.7 (released 2023-03-07) includes a security fix to the
crypto/elliptic package, as well as bug fixes to the linker, the
runtime, and the crypto/x509 and syscall packages. See the Go 1.19.7
milestone on our issue tracker for details.

(From OE-Core rev: 3bee5e8c76f7da2d967ac01dbd5e7ed8d00589d3)

Signed-off-by: Chee Yang Lee <chee.yang.lee@intel.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-25 23:00:14 +00:00
Chee Yang Lee
9417857902 tiff: Fix CVE-2023-0795 CVE-2023-0796 CVE-2023-0797 CVE-2023-0798 CVE-2023-0799
import patch from ubuntu to fix multiple CVEs
http://archive.ubuntu.com/ubuntu/pool/main/t/tiff/tiff_4.4.0-4ubuntu3.3.debian.tar.xz

(From OE-Core rev: 7634c800819f23f0cb1676bf46efca19e9176df1)

Signed-off-by: Chee Yang Lee <chee.yang.lee@intel.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-25 23:00:14 +00:00
Chee Yang Lee
280fcacbb5 git: ignore CVE-2023-22743
(From OE-Core rev: 70adf86b515934168a6185dcff4a8edb39a40017)

Signed-off-by: Chee Yang Lee <chee.yang.lee@intel.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-25 23:00:14 +00:00
Richard Purdie
ea5aa22abf base-files: Drop localhost.localdomain from hosts file
This was likely something we took inspiration from elsewhere with.
It was added in:

https://git.openembedded.org/openembedded/commit/packages/netbase/netbase/hosts?id=c8e5702127e507e82e6f68a4b8c546803accea9d

in 2005. Debian added this entry around 2004 and discussed and dropped
it in 2005:

https://lists.debian.org/debian-devel/2005/10/msg00559.html

resulting in:

3c15ee521b

We should drop this for some of the reasons in those threads,
it doesn't seem to be doing anything too helpful and isn't what most
applications expect.

(From OE-Core rev: 61f268be804795fadafbc918b465561819b592ec)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit e730d005fa8aec07f9ae25c58d4566eaa92a6997)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-21 14:26:31 +00:00
Wang Mingyu
0e53fa9c62 dhcpcd: Fix install conflict when enable multilib.
Error: Transaction test error:
   file /usr/share/man/man8/dhcpcd.8 conflicts between attempted installs of dhcpcd-doc-9.4.1-r0.cortexa57 and lib32-dhcpcd-doc-9.4.1-r0.armv7ahf_neon

The differences between the two files are as follows:
@@ -821,7 +821,7 @@
 If you always use the same options, put them here.
 .It Pa /usr/libexec/dhcpcd-run-hooks
 Bourne shell script that is run to configure or de-configure an interface.
-.It Pa /usr/lib64/dhcpcd/dev
+.It Pa /usr/lib/dhcpcd/dev
 Linux
 .Pa /dev
 management modules.

(From OE-Core rev: ae3aa0ded86ae13060989d19e64795b00946cd2e)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 65ca2c4b7349a4f7dcfcc580d926a99c673deb60)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-21 14:26:31 +00:00
Kenfe-Mickael Laventure
de8c168e5f populate_sdk_ext: Handle spaces within user $PATH
The script generated by the sdk_ext_postinst function was not quoting
the user existing PATH when updating it causing the export command to
fail.

Add necessary double quotes around $PATH.

(From OE-Core rev: 679835b6f692d7e344c115da72ddf4553657ac54)

Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 00e96bf250eaaded839caf465dbc0af5b604aed7)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-21 14:26:31 +00:00
Kenfe-Mickael Laventure
54c6dc4ebf toolchain-scripts: Handle spaces within user $PATH
The environment-setup script generated by the recipe was not quoting the
user existing PATH when updating it causing the export command to fail.

Add necessary double quotes around $PATH.

(From OE-Core rev: a4129420a7fcc1f56c20b0c64a22dd06d5ffdfa3)

Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 42177ff2d45ee70ad00917bb6fbabca49dae4f59)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-21 14:26:31 +00:00
Kenfe-Mickael Laventure
a768eac53c buildtools-tarball: Handle spaces within user $PATH
The environment-setup script generated by the recipe was not quoting the
user existing PATH when updating it causing the export command to fail.

Add necessary double quotes around $PATH.

(From OE-Core rev: fd41d4690dab401e87240390b7d4c5d610932a1e)

Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 2d4c032bf3187aaa953a0c33a999074e695f54bb)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-21 14:26:31 +00:00
Alexander Kanavin
096afd44d2 apt: re-enable version check
2.6.0 is out and so we can check for latest version again.

(From OE-Core rev: fa5d357becb222a600380c902f4fe8f4a856d404)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 9851579eeebbdced9e770c4828f521b359e0306f)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-21 14:26:31 +00:00
Zoltan Boszormenyi
95dde790d3 piglit: Fix build time dependency
Replace explicit opencl-icd-loader with virtual/opencl-icd.

(From OE-Core rev: 843848cc502fdaf013a87f73871b45a9633f861e)

Signed-off-by: Zoltán Böszörményi <zboszor@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 0ded85c2e4d0888e459bc98d1c8e55429f542dba)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-21 14:26:31 +00:00
Trevor Woerner
611d542177 cups: add/fix web interface packaging
cups includes a web server. Users can surf to port 631 (default) of a
machine running cups to (potentially, based on configuration, default off)
view jobs, add printers, and perform other forms of administration.

The location of the various resources that are used by the built-in web server
(e.g. index.html) are installed under ${datadir}/doc/cups. By default these
artifacts would be included in the ${PN}-doc package. The comments in this
recipe, however, would suggest an attempt was made to have them added to
${PN}; albeit unsuccessfully.

These resources add roughly 1.8M to an image.

Since cups does include a configuration option to disable the web interface
(--enable-webif), add a PACKAGECONFIG (default off) to allow the user to
decide whether or not they would like the web interface configured and its
pieces added to the image. Enabling this PACKAGECONFIG both enables the
web interface to be configured and built into cups, and also adds (by way
of a recommendation) the web interface package to the image. Considering
that the previous intention was not working, defaulting this option to off
preserves the existing behaviour. Previously in order to have the web
interface data included in an image, a user would have needed to explicitly
add the ${PN}-doc package to their image.

(From OE-Core rev: dd7c7fe83490758df0b30f0d8748746b32cd3d09)

Signed-off-by: Trevor Woerner <twoerner@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 2c9bd267ec532cd86a4a1be1d4e499e2aae89aba)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-21 14:26:31 +00:00
Trevor Woerner
c7202a46da cups: check PACKAGECONFIG for pam feature
The cups' PACKAGECONFIG is populated based on DISTRO_FEATURES, but a user
is free to enable or disable PACKAGECONFIGs at will. In theory it is
possible that pam is enabled globally in DISTRO_FEATURES but disabled in
cups' PACKAGECONFIG. Checking the PACKAGECONFIG to determine whether or not
pam is enabled would be a safer check rather than relying on DISTRO_FEATURES.

(From OE-Core rev: 2dd5c6ccdce2e402de234df3695a9058a8a126db)

Signed-off-by: Trevor Woerner <twoerner@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit a053dd177ddc99ced11e68914079be0ffe261262)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-21 14:26:31 +00:00
Trevor Woerner
28b0c61d7d cups: use BUILDROOT instead of DESTDIR
The cups documentation is clear that the correct way to install into an
alternate root directory is to use the BUILDROOT variable. From INSTALL.md:

	Use the `BUILDROOT` variable to install to an alternate root directory:

	    make BUILDROOT=/some/other/root/directory install

DESTDIR works, but we should use the mechanism the project specifically
created for this purpose.

(From OE-Core rev: 992c571fc2f69c62d8f916440251a5189fae3aa1)

Signed-off-by: Trevor Woerner <twoerner@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit f8fc70674e0ea5df46969a06da62f8ed135cae4e)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-21 14:26:31 +00:00
Ross Burton
c62fb8d607 meson: remove obsolete RPATH stripping patch
As per the release notes for 0.55.0[1], this patch is no longer needed
as Meson now only removes the RPATHs that it adds itself, any RPATHs
added via LDFLAGS or pkgconfig files are left untouched.

[1] https://mesonbuild.com/Release-notes-for-0-55-0.html#rpath-removal-now-more-careful

(From OE-Core rev: 737edc7304884c9c5a094971f344d8e459049ec5)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 4011c0fadec98f1001046079f59e4e2a4a3a3fcf)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-21 14:26:31 +00:00
Richard Purdie
72b0c20c4a selftest/recipetool: Stop test corrupting tinfoil class
Running recipetool.RecipetoolTests.test_recipetool_handle_license_vars
followed by wic.Wic2.test_biosplusefi_plugin_qemu would show a failure of:

  File "/media/build/poky/meta/lib/oeqa/utils/commands.py", line 351, in runqemu
    qemu = oeqa.targetcontrol.QemuTarget(recipedata, targetlogger, image_fstype)
  File "/media/build/poky/meta/lib/oeqa/targetcontrol.py", line 116, in __init__
    use_kvm = oe.types.qemu_use_kvm(d.getVar('QEMU_USE_KVM'), d.getVar('TARGET_ARCH'))
  File "/media/build/poky/meta/lib/oe/types.py", line 182, in qemu_use_kvm
    if kvm and boolean(kvm):
  File "/media/build/poky/meta/lib/oe/types.py", line 128, in boolean
    raise ValueError("Invalid boolean value '%s'" % value)
ValueError: Invalid boolean value '/media/build/poky/meta/files/common-licenses'

which made no sense until you realise the recipetool test is corrupting
the tinfoil class. Work on a copy instead to avoid this.

(From OE-Core rev: 76930f40ffeabea07f495c0011a3e6231ea3eddc)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 7fe76fe17f67c1bbd108d02836692fed20d24771)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-21 14:26:31 +00:00
Michael Halstead
071d627f24 selftest/runtime_test/virgl: Disable for all Rocky Linux
RHEL compatible kernels do not support vgem so we disable virgl headless
testing.

(From OE-Core rev: 21220564ab2c6966959d6e97a37f7fe22d48c65b)

Signed-off-by: Michael Halstead <mhalstead@linuxfoundation.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 78bc1ba2361249ec845d1b9e28d429a37dd83910)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-21 14:26:31 +00:00
Richard Purdie
7ed00474a0 glibc: Add missing binutils dependency
glibc has it's dependencies handled more manually due to it's place
in the toolchain bootstrap. It depends upon the compiler and indirectly
through that to binutils. This did mean that if binutils changes and the
compiler does not, sstate and hash equivalence could mean that glibc
wouldn't rebuild.

Add a direct dependency on binutils that if it changes, it forces glibc
to rebuild, as it should.

(From OE-Core rev: b49f0a29be4f81009b0812f0649b1d9301d1ea1a)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit c4a7b3decff636292f5e76e95406a22b6fe4a994)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-21 14:26:31 +00:00
Richard Purdie
2c7ac273d3 staging/multilib: Fix manifest corruption
The previous fix wasn't enough to address all the possible ways the
manifests might be ordered. Rework the previous fix so it is tied
to the multilib cross-canadian code which is causing the problem.

RECIPE_SYSROOT_MANIFEST_SUBDIR is not documented as I'd hope nobody
ever needs to use this outside the core multilib code.

(From OE-Core rev: 2b2da04c5e88529c74b44569919fdcc136c48cca)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit beab42e00713880cd95a04729c892f8662fbcbed)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-21 14:26:31 +00:00
Richard Purdie
3aa430708e staging: Separate out different multiconfig manifests
"""
require conf/multilib.conf
MACHINE = "qemuarm64"
MULTILIBS = "multilib:lib32"
DEFAULTTUNE:virtclass-multilib-lib32 = "armv7athf-neon"

bitbake gcc-cross-canadian-arm
"""

and then inspecting the lib32* manifest files under recipe-sysroot-native shows
them referencing lib32-recipe-sysroot instead of recipe-sysroot as used by
gcc-cross-canadian recipes.

To fix this separate out the manifest by multilib. It is caching mechanism to
optimise disk usage so this doesn't break anything, just separated out some files.

(From OE-Core rev: f586498fbaff190d48e4fc927e324c5371df4b17)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 891d3faa3ed3d1cc231da58e5fa1325f05d5ade5)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-21 14:26:31 +00:00
Ross Burton
9790bf51a3 vim: set modified-by to the recipe MAINTAINER
Clause II.3 of the Vim license states that any distribution of Vim that
has been extended or modified must _at least_ indicate in the :version
output that this is the case.

Handily, Vim has a --with-modified-by argument to add a line in that
text, so use MAINTAINER.  This is the distribution maintainer contact,
by default it is OE-Core Developers
<openembedded-core@lists.openembedded.org>.

(From OE-Core rev: 9f328a42a289dd7d77bd6f08605b0ccb813b2056)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit acc007e23445aa53182e13902dd9509c39dd5645)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-21 14:26:31 +00:00
Ross Burton
87201486d4 vim: upgrade to 9.0.1403
This incorporates fixes for CVE-2023-1127, CVE-2023-1170, CVE-2023-1175.

Also remove runtime/doc/uganda.txt from the license checksum: the Vim
license is also in the top-level LICENSE file so this is redundant.

(From OE-Core rev: 6752b83f62129b3d60d5189cb6e67a0865d876d9)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 71111e6b62d37c5e6853d7940dec2993df127a35)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-21 14:26:31 +00:00
Alexander Kanavin
58ce8aa4b0 pango: upgrade 1.50.12 -> 1.50.13
Overview of changes in 1.50.13, 20-02-2023
==========================================
- win32: Add back fallback for empty fontsets
- win32: Improve DirectWrite support
- Fix word segmentation for Japanese
- Don't set backspace-deletes-char for math symbols
- coretext: Fix a crash
- cairo: Apply metrics hinting to underlines too
- Treat COLRv1 fonts as color fonts

(From OE-Core rev: 81a0bb83605cc545d93be93b5a234f4d4882a633)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 9fcb353216a70b76584a47463d419464489c5a8c)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-21 14:26:31 +00:00
Alexander Kanavin
c8f70344db libdnf: update 0.69.0 -> 0.70.0
- Security fixes:
  - Allow change of architecture for packages during security updates with noarch involved (RhBug:2124483)

- Bug fixes:
  - "dnf_keyring_add_public_keys": reset localError to NULL after free (RhBug:2121222)
  - context: Get RPM db path from RPM
  - Fix memory leak of SolvUserdata

Drop the patch as issue addressed upstream.

(From OE-Core rev: 7f4f1455ecc5cef1f4938efc3af27086d5b55d86)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit b5a4c652448284253ab1444d05fdf6bfebfa4273)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-21 14:26:31 +00:00
Xiangyu Chen
9606f36781 sudo: update 1.9.13p2 -> 1.9.13p3
(From OE-Core rev: d45cbfe4f6ab93f83056ebbf8450be1259c73dd6)

Signed-off-by: Xiangyu Chen <xiangyu.chen@windriver.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 7d5193a9437dedb3f2cf35cb466acfe29cfa654e)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-21 14:26:31 +00:00
Alexander Kanavin
c69cb1bf9b sudo: update 1.9.12p2 -> 1.9.13p2
License-update: copyright years, formatting.

(From OE-Core rev: 3195339a5cba9f141eb6e2835537897535b5bef9)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 1476813725cce6754334b4a6727675640a7a1e44)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-21 14:26:31 +00:00
Siddharth
e0b2ca5867 harfbuzz: Security fix for CVE-2023-25193
Upstream-Status: Backport from [8708b9e081]
(From OE-Core rev: cadcb982dbeb1489affe4e594d4b84386f6cd4fe)

Signed-off-by: Siddharth Doshi <sdoshi@mvista.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-21 14:26:31 +00:00
Michael Opdenacker
830eb87816 migration-guides: update release notes
(From yocto-docs rev: da685fc5e69d49728e3ffd6c4d623e7e1745059d)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-20 12:53:49 +00:00
Tim Orling
375055b2d7 bitbake: toaster: Add refreshed oe-core and poky fixtures
After updating gen_fixtures.py, run ./gen_fixtures.py --all

This includes the latest stable/supported releases.

(Bitbake rev: 88a9cc0318c6ef01976d8b09dfc1a92cf0a1e498)

Signed-off-by: Tim Orling <tim.orling@konsulko.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-15 23:15:31 +00:00
Tim Orling
67dcd704b1 bitbake: toaster: fixtures/gen_fixtures.py: update branches
Re-introduce Dunfell since it is supported until April 2024
Drop Honister and Hardknott as they are both EOL
Add Langdale as it is the latest stable release

(Bitbake rev: 2dda597de3fcf6911e4022a8c279ae00413ec747)

Signed-off-by: Tim Orling <tim.orling@konsulko.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-15 23:15:31 +00:00
Tim Orling
624cd9b348 bitbake: toaster: fixtures/README: django 1.8 -> 3.2
We should reference the docs for the current LTS version we are using.

(Bitbake rev: add4569195f8f64000555679e282b0b12d1ca3f8)

Signed-off-by: Tim Orling <tim.orling@konsulko.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-15 23:15:31 +00:00
Wang Mingyu
d5a0300902 vala: Fix install conflict when enable multilib.
Error: Transaction test error:
   file /usr/bin/vala-gen-introspect-0.56 conflicts between attempted installs of lib32-vala-0.56.3-r0.armv7ahf_neon and vala-0.56.3-r0.aarch64
   file /usr/bin/vapigen-wrapper conflicts between attempted installs
   of lib32-vala-0.56.3-r0.armv7ahf_neon and vala-0.56.3-r0.aarch64

The differences of vala-gen-introspect-0.56 are as follows:
@@ -2,7 +2,7 @@

 prefix=/usr
 exec_prefix=/usr
-libdir=/usr/lib64
+libdir=/usr/lib
 pkglibdir=${libdir}/vala-0.56

 if [ $# -ne 2 ]

The wrapper isn't used on target so we can simply delete it.

(From OE-Core rev: 21e8a662e6232e7fdd642b1d86d4f8f980be1a09)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 3cf894b8a9c4fa14fcc7c7445e85e9ae3192b398)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-14 17:47:40 +00:00
Wang Mingyu
77e6375b6e lua: Fix install conflict when enable multilib.
Error: Transaction test error:
  file /usr/include/luaconf.h conflicts between attempted installs of lua-dev-5.4.4-r0.aarch64 and lib32-lua-dev-5.4.4-r0.armv7ahf_neon

The differences between the two files are as follows:
@@ -219,7 +219,7 @@

 #define LUA_ROOT       "/usr/"
 #define LUA_LDIR       LUA_ROOT "share/lua/" LUA_VDIR "/"
-#define LUA_CDIR       LUA_ROOT "lib64/lua/" LUA_VDIR "/"
+#define LUA_CDIR       LUA_ROOT "lib/lua/" LUA_VDIR "/"

 #if !defined(LUA_PATH_DEFAULT)
 #define LUA_PATH_DEFAULT  \

(From OE-Core rev: 7726945826ee15338aa5b2dddd6857eb960b6dd5)

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>
(cherry picked from commit b58d86f9902a7eb7a821a3e36ba298c082c0f1f1)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-14 17:47:40 +00:00
Ming Liu
886ea6970e linux: inherit pkgconfig in kernel.bbclass
pkgconfig is being required to find dependencies for building kernel
native tools, move "inherit pkgconfig" to kernel.bbclass so BSP kernel
recipes can also benefit from it.

(From OE-Core rev: 9a1ae305719a4dc2344dbbad46caf99ca8155e98)

Signed-off-by: Ming Liu <liu.ming50@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 8a84bd98e3fbc16c782f83064801e469d086911e)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-14 17:47:40 +00:00
Tom Hochstein
05df291218 oeqa/sdk: Improve Meson test
The meson wrapper setup command detection is broken in the case of an
implicit setup command with an option with a space-separated argument,
but the test was not detecting it since the case was not covered.

Add the option `--warnlevel 1` to the meson command line to cover this
case.

(From OE-Core rev: 25d48a686f710655241e9c42acf5c31063b2af4b)

Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 54e9ee8a0c6c9fc89cbb743f0e4fc18607d503cf)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-14 17:47:40 +00:00
Tom Hochstein
0830f994b3 meson: Fix wrapper handling of implicit setup command
From an SDK, running a meson setup build without an explicit setup
command can result in a native build when a cross build is expected.

The problem is in meson-wrapper where it tries to detect whether a
setup command is being used. The logic looks through all arguments for
a command, and the first argument it finds that doesn't start with a -
is treated as the command. This doesn't work for an implicit setup
command if any option with a space-separated argument exists. In this
case, the argument is incorrectly selected as the command, causing the
setup command options for the cross build to be excluded from the
command line, and thus a native build.

Improve the logic by just looking at the first argument. If it is
a known comand, then record it. Otherwise just assume it is the
implicit setup command.

Note that this fix does not address the possibility of a new meson
command. Two new echo statements are included to help the user in case
of trouble:

```
~/git/weston-imx$ meson --warnlevel 3 --prefix=/usr -Ddoc=false -Dbackend-drm-screencast-vaapi=false -Dcolor-management-lcms=false -Dpipewire=false -Dbackend-x11=false -Dxwayland=true -Dsimple-clients=all -Dbackend-wayland=false  -Dbackend-default=drm -Dbackend-rdp=false -Dtest-junit-xml=false -Dlauncher-libseat=false -Dimage-jpeg=false -Dimage-webp=false -Drenderer-g2d=true build
meson-wrapper: Implicit setup command assumed
meson-wrapper: Running meson with setup options: " --cross-file=/opt/fsl-imx-internal-xwayland/6.1-langdale/sysroots/x86_64-pokysdk-linux/usr/share/meson/aarch64-poky-linux-meson.cross --native-file=/opt/fsl-imx-internal-xwayland/6.1-langdale/sysroots/x86_64-pokysdk-linux/usr/share/meson/meson.native "
The Meson build system
Version: 0.63.3
```

(From OE-Core rev: 1e5f847a770d0f8d7d8a964037e0cd0e0188de30)

Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 9338bd66a3c9ab5cb781f2ee588306c5b31a3cb5)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-14 17:47:40 +00:00
Khem Raj
97dcdbe446 rpm: Fix hdr_hash function prototype
(From OE-Core rev: 9af6c9a375efbdd039ec8a76eae4cb59fe1f40e5)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 0e812b4c22ac077f2defd6842f82b5c993db24c2)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-14 17:47:40 +00:00
Khem Raj
0022faf631 libcomps: Fix callback function prototype for PyCOMPS_hash
(From OE-Core rev: faa4aa99d1642ee7331ccbb429b438a60576a916)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 5e1f6fd8a93e38ec3ee1271ab319ea2d125c442b)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-14 17:47:40 +00:00
Carlos Alberto Lopez Perez
25459a169c mesa-demos: packageconfig weston should have a dependency on wayland-protocols
wayland-protocols is a required depency of mesa-demos when the 'wayland'
packageconfig option is enabled. Usually this doesn't lead to a build
failure because mesa itself depends on wayland-protocols, but when using
other graphics drivers this can cause the following build falure:

| ../mesa-demos-8.5.0/meson.build:69:2: ERROR: Dependency "wayland-protocols" not found, tried pkgconfig
| ERROR: meson failed

(From OE-Core rev: 11d57d8a303b4da4713744b3f5f090459d81488d)

Signed-off-by: Carlos Alberto Lopez Perez <clopez@igalia.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 89615b56899eed7b5c6ad731e2168d99a30fba6c)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-14 17:47:40 +00:00
Ross Burton
187c4fb062 vim: add missing pkgconfig inherit
Vim uses pkgconfig to find dependencies but it wasn't present, so it
silently doesn't enable features like GTK+ UI.

[ YOCTO #15044 ]

(From OE-Core rev: a2ad52661e8d9dcab210ab6062a26b7b7357154e)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 70900616298f5e70732a34e7406e585e323479ed)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-14 17:47:40 +00:00
Peter Marko
2c4fd25010 systemd: add group sgx to udev package
>From NEWS for v250:
* Device nodes for the Software Guard eXtension enclaves (sgx_vepc) are
  now also owned by the system group "sgx".

>From NEWS for v248:
* Intel SGX enclave device nodes (which expose a security feature of
  newer Intel CPUs) will now be owned by a new system group "sgx".

Fixes following journal error entry during startup:
  /lib/udev/rules.d/50-udev-default.rules:43 Unknown group 'sgx', ignoring
This is seen already on kirkstone.

(From OE-Core rev: 46334b526678ebfc8ef9cb184886eba47797eb6e)

Signed-off-by: Peter Marko <peter.marko@siemens.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit bab455cd9b1b82e778f8523a767eb281edf6689e)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-14 17:47:40 +00:00
Dmitry Baryshkov
e3f24d438b ffmpeg: fix build failure when vulkan is enabled
The patch fixes the following errors observed when building ffmpeg in
vulkan-enabled distros:

| src/libavutil/hwcontext_vulkan.c:363:7: error: 'VK_EXT_VIDEO_DECODE_H264_EXTENSION_NAME' undeclared here (not in a function); did you mean 'VK_EXT_VIDEO_ENCODE_H264_EXTENSION_NAME'?
|   363 |     { VK_EXT_VIDEO_DECODE_H264_EXTENSION_NAME,                FF_VK_EXT_NO_FLAG                },
|       |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|       |       VK_EXT_VIDEO_ENCODE_H264_EXTENSION_NAME
| src/libavutil/hwcontext_vulkan.c:364:7: error: 'VK_EXT_VIDEO_DECODE_H265_EXTENSION_NAME' undeclared here (not in a function); did you mean 'VK_EXT_VIDEO_ENCODE_H265_EXTENSION_NAME'?
|   364 |     { VK_EXT_VIDEO_DECODE_H265_EXTENSION_NAME,                FF_VK_EXT_NO_FLAG                },
|       |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|       |       VK_EXT_VIDEO_ENCODE_H265_EXTENSION_NAME

(From OE-Core rev: 9389031c7bae92565cc4a29af7f58dc49c3f9762)

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit b16c8696be9d56edb5ff77210abfff9a784fad89)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-14 17:47:40 +00:00
Richard Purdie
0861b0d866 oeqa/selftest/prservice: Improve debug output for failure
We keep seeing this failure on the autobuilder but the output amounts
to "False is not True". Improve the debug message on the chance it may
make the issue clearer.

(From OE-Core rev: 8547304ca874e00714701f647c2a5229a730dfb1)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit d03f4cf19c2cc96e9d942252a451521dfec42ebc)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-14 17:47:40 +00:00
Pavel Zhukov
16f5acebf3 u-boot: Map arm64 into map for u-boot dts installation
While arm64 is a valid UBOOT_ARCH (according to mkimage -A) u-boot
keeps arm64 specific dts under 'arch/arm' directory.
As the result the recipe tries to install arch/arm64 (if UBOOT_DTB
was specified) and fails with [1]. Remapping "arm64" to "arm" to fix this
issue.

[1]
| install: cannot stat '.../u-boot/1_2023.01-r0/build/arch/arm64/dts/u-boot.dtb': No such file or directory

(From OE-Core rev: 2f4ceab401c4602671ba9e04bd3bcd632308662f)

Signed-off-by: Pavel Zhukov <pavel@zhukoff.net>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 3ca99403d5f320c6d7ae59b107f3b3bf183b4089)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-14 17:47:40 +00:00
Richard Purdie
44ce72fd4b binutils: Fix nativesdk ld.so search
Currently binutils in buildtools is searching for /etc/etc/ld.so.conf
which makes no sense. ld_sysconfdir already contains /etc so we need to
drop the /etc from the fixed string.

(From OE-Core rev: 54ff75f4dafa733bdb777a037c12000d09559d9c)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit ccd28c418ab8390118d738fbe914395b5c2a1f75)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-14 17:47:40 +00:00
Wang Mingyu
df34da3e2f libmicrohttpd: upgrade 0.9.75 -> 0.9.76
Changelog:
============
Fix potential DoS vector in MHD_PostProcessor.
Releasing GNU libmicrohttpd 0.9.76 hotfix.

(From OE-Core rev: 2ff341a7f43e4f458ef2ced0d79e1f18a690022d)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit f5b5c77d797ce09e2322ad744f0e4fa3ffd50f19)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-14 17:47:40 +00:00
Wang Mingyu
e38106cf96 iso-codes: upgrade 4.12.0 -> 4.13.0
Added
=========
- ISO 3166-1: Add missing common names for Laos, Iran, and Syria.
  Fixes #32

Changed
===========
- Translation updates for ISO 3166-1
  - Kazakh from Debian BTS. Closes: #1025423
  - Catalan from Debian BTS. Closes: #1026972
- Translation updates for ISO 3166-2
- Translation updates for ISO 3166-3
- Translation updates for ISO 639-2
- Translation updates for ISO 639-3
- Translation updates for ISO 639-5
- Translation updates for ISO 4217
- Translation updates for ISO 15924

Fixed
==========
- ISO 3166-3: Fix withdrawal dates of AN, CS and YU. Fixes #28

(From OE-Core rev: b70351ff5054337f8fb281cc6f684c3e1983ac56)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit f2c8b9c9a97ba5ec9c5da94da84ebe216650d6cc)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-14 17:47:40 +00:00
Bruce Ashfield
1975f9ded8 linux-yocto-rt/5.15: update to -rt59
Integrating the following commit(s) to linux-yocto/5.15:

    4d335265c101 'Linux 5.15.94-rt59'
    c3b4464f5d2b 'Linux 5.15.93-rt58'
    c67bd325f576 'Linux 5.15.92-rt57'
    48e551ae0f55 'Linux 5.15.86-rt56'
    977a63a270ad 'Linux 5.15.85-rt55'
    adaa1d9e19a5 'Linux 5.15.79-rt54'
    ff3c61c5ead1 'Linux 5.15.76-rt53'
    e17260e8d340 'Linux 5.15.73-rt52'
    c83f436b7981 'Linux 5.15.71-rt51'
    e01c9e3ba82d 'Linux 5.15.70-rt50'
    debedeb4264e mm/memcg: Only perform the debug checks on !PREEMPT_RT
    1ef2cd0b8676 mm/memcg: Add a comment regarding the release `obj'.
    f8d153e08d42 mm/memcg: Add missing counter index which are not update in interrupt.
    11624404f67a mm/memcg: Disable migration instead of preemption in drain_all_stock().
    0a1f4de6ed4f mm/memcg: Protect memcg_stock with a local_lock_t
    3f15202f27da mm/memcg: Opencode the inner part of obj_cgroup_uncharge_pages() in drain_obj_stock()
    40dbbd2f9773 mm/memcg: Protect per-CPU counter by disabling preemption on PREEMPT_RT where needed.
    6269831106f5 mm/memcg: Disable threshold event handlers on PREEMPT_RT
    8da0e71b7b7d mm/memcg: Revert ("mm/memcg: optimize user context object stock access")

(From OE-Core rev: 4c3b1ab4503dc2c299587cb7d8f4cb24a85e6068)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit f318c27fdc4ac276743bd37c466e3fc7296bcfd5)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-14 17:47:40 +00:00
Bruce Ashfield
b4e0545cdf linux-yocto/5.15: update to v5.15.96
Updating  to the latest korg -stable release that comprises
the following commits:

    d383d0f28eca Linux 5.15.96
    49ce63694cae bpf: add missing header file include
    80569627ce46 Revert "net/sched: taprio: make qdisc_leaf() see the per-netdev-queue pfifo child qdiscs"
    0c168d7f36d5 lib/Kconfig.debug: Allow BTF + DWARF5 with pahole 1.21+
    6ba3de5a8a02 lib/Kconfig.debug: Use CONFIG_PAHOLE_VERSION
    0f59e08070ba scripts/pahole-flags.sh: Use pahole-version.sh
    3597fd5f9217 kbuild: Add CONFIG_PAHOLE_VERSION
    c98077f7598a ext4: Fix function prototype mismatch for ext4_feat_ktype
    43cb0369c84a audit: update the mailing list in MAINTAINERS
    b5ef61edb1e5 wifi: mwifiex: Add missing compatible string for SD8787
    a24eb3f99063 nbd: fix possible overflow on 'first_minor' in nbd_dev_add()
    d518ca02542f binder: Gracefully handle BINDER_TYPE_FDA objects with num_fds=0
    367d0456c792 binder: Address corner cases in deferred copy and fixup
    b345b2200288 binder: fix pointer cast warning
    c194fc351fec binder: defer copies of pre-patched txn data
    d107b4352284 binder: read pre-translated fds from sender buffer
    41d8b591d70a uaccess: Add speculation barrier to copy_from_user()
    0d3d5099a50b drm/i915/gvt: fix double free bug in split_2MB_gtt_entry
    d835f9c4ede2 powerpc/64s/radix: Fix RWX mapping with relocated kernel
    87b3e4f845a2 powerpc/64s/radix: Fix crash with unaligned relocated kernel
    0b0e9b5adc8e powerpc/vmlinux.lds: Add an explicit symbol for the SRWX boundary
    b6fff8fa4f5b powerpc/vmlinux.lds: Ensure STRICT_ALIGN_SIZE is at least page aligned
    e7f5e3b60c30 powerpc: use generic version of arch_is_kernel_initmem_freed()
    fc58616b198b powerpc: dts: t208x: Disable 10G on MAC1 and MAC2
    62302ac5777a can: kvaser_usb: hydra: help gcc-13 to figure out cmd_len
    6b539a7dbb49 KVM: VMX: Execute IBPB on emulated VM-exit when guest has IBRS
    78c1d35ed66c KVM: SVM: Skip WRMSR fastpath on VM-Exit if next RIP isn't valid
    676248836577 KVM: x86: Fail emulation during EMULTYPE_SKIP on any exception
    5456f0d53b4a random: always mix cycle counter in add_latent_entropy()
    d2edb20b003e clk: mxl: syscon_node_to_regmap() returns error pointers
    04d31929df12 powerpc: dts: t208x: Mark MAC1 and MAC2 as 10G
    8ae31d36516b clk: mxl: Fix a clk entry by adding relevant flags
    a0583edea4fd clk: mxl: Add option to override gate clks
    ef1219115128 clk: mxl: Remove redundant spinlocks
    e5580a805472 clk: mxl: Switch from direct readl/writel based IO to regmap based IO
    20ea32ad9c99 drm/edid: Fix minimum bpc supported with DSC1.2 for HDMI sink
    28985cd17ac7 wifi: rtl8xxxu: gen2: Turn on the rate control
    d04d19cf0ead drm/etnaviv: don't truncate physical page address
    60b502b3ffea Linux 5.15.95
    3f94c70333f6 platform/x86/amd: pmc: add CONFIG_SERIO dependency
    1c202909c8b0 net: sched: sch: Fix off by one in htb_activate_prios()
    180a1632b6c7 ASoC: SOF: Intel: hda-dai: fix possible stream_tag leak
    68c2db8ef56d alarmtimer: Prevent starvation by small intervals and SIG_IGN
    35351e3060d6 kvm: initialize all of the kvm_debugregs structure before sending it to userspace
    1cbb51d83f56 net/sched: tcindex: search key must be 16 bits
    cd9569062d8e i40e: Add checking for null for nlmsg_find_attr()
    290e7084926c net/sched: act_ctinfo: use percpu stats
    22d0cb47047a flow_offload: fill flags to action structure
    d53360d443be drm/i915/gen11: Wa_1408615072/Wa_1407596294 should be on GT list
    8174915c7bf3 drm/i915/gen11: Moving WAs to icl_gt_workarounds_init()
    43dd56f7bfcb mm/filemap: fix page end in filemap_get_read_batch
    a158782b56b0 nilfs2: fix underflow in second superblock position calculations
    13bc7dd5b365 ipv6: Fix tcp socket connection with DSCP.
    f3326fa5e480 ipv6: Fix datagram socket connection with DSCP.
    9c35c81fd6f0 ixgbe: add double of VLAN header when computing the max MTU
    59a74da8da75 net: mpls: fix stale pointer if allocation fails during device rename
    bf8b820ea0ca net: stmmac: Restrict warning on disabling DMA store and fwd mode
    269520bee744 bnxt_en: Fix mqprio and XDP ring checking logic
    0428aabbcc15 net: stmmac: fix order of dwmac5 FlexPPS parametrization sequence
    1563e998a938 net: openvswitch: fix possible memory leak in ovs_meter_cmd_set()
    338f826d3afe net/usb: kalmia: Don't pass act_len in usb_bulk_msg error path
    59e30d2bd309 dccp/tcp: Avoid negative sk_forward_alloc by ipv6_pinfo.pktoptions.
    becf55394f6a net/sched: tcindex: update imperfect hash filters respecting rcu
    3d5f95be49c5 sctp: sctp_sock_filter(): avoid list_entry() on possibly empty list
    fa56f164455e net: ethernet: ti: am65-cpsw: Add RX DMA Channel Teardown Quirk
    2603a5ca6223 net: bgmac: fix BCM5358 support by setting correct flags
    a5e4f2b284dc i40e: add double of VLAN header when computing the max MTU
    1f23ca5dba6c ixgbe: allow to increase MTU to 3K with XDP enabled
    65d07ae69bd3 revert "squashfs: harden sanity check in squashfs_read_xattr_id_table"
    50267cf35ba0 net: Fix unwanted sign extension in netdev_stats_to_stats64()
    3775c95ffbc6 Revert "mm: Always release pages to the buddy allocator in memblock_free_late()."
    57081f83849c selftest/lkdtm: Skip stack-entropy test if lkdtm is not available
    9197daee9eb6 of: reserved_mem: Have kmemleak ignore dynamically allocated reserved mem
    8b29a1866f64 hugetlb: check for undefined shift on 32 bit architectures
    cca2b3feb701 sched/psi: Fix use-after-free in ep_remove_wait_queue()
    c5f2151afb2a ALSA: hda/realtek - fixed wrong gpio assigned
    1a3f8c85cd2a ALSA: hda/conexant: add a new hda codec SN6180
    ecad2fafd424 mmc: mmc_spi: fix error handling in mmc_spi_probe()
    1e06cf04239e mmc: sdio: fix possible resource leaks in some error paths
    732e3b293ca3 mmc: jz4740: Work around bug on JZ4760(B)
    fdaf88531cfd tcp: Fix listen() regression in 5.15.88.
    9a1d92cbeac3 netfilter: nft_tproxy: restrict to prerouting hook
    3fc9dc0340e0 platform/x86/amd: pmc: Disable IRQ1 wakeup for RN/CZN
    c2cb2c71da50 platform/x86: amd-pmc: Correct usage of SMU version
    2dcf115681d4 platform/x86: amd-pmc: Fix compilation when CONFIG_DEBUGFS is disabled
    32e3a6c4a756 platform/x86: amd-pmc: Export Idlemask values based on the APU
    1723efa4c375 drm/amd/display: Fail atomic_check early on normalize_zpos error
    178993157e8c aio: fix mremap after fork null-deref
    3cfc5e84ac6f mptcp: do not wait for bare sockets' timeout
    e0e93c8599c5 xfs: don't leak btree cursor when insrec fails after a split
    294c022a070a xfs: purge dquots after inode walk fails during quotacheck
    96f0651a264b xfs: assert in xfs_btree_del_cursor should take into account error
    88ccad17784a xfs: don't assert fail on perag references on teardown
    ddf1e0fd43b2 xfs: avoid unnecessary runtime sibling pointer endian conversions
    5f0e21a4a885 xfs: validate v5 feature fields
    ea0ce7c13610 xfs: set XFS_FEAT_NLINK correctly
    0cc9f9cc8d91 xfs: detect self referencing btree sibling pointers
    4e96f5ace9ac xfs: fix potential log item leak
    8abef857eb91 xfs: zero inode fork buffer at allocation
    63b8e4cc31fd nvmem: core: fix return value
    eac1ad2f5e21 nvmem: core: fix registration vs use race
    8f9c4b2a3b13 nvmem: core: fix cleanup after dev_set_name()
    14eea6449473 nvmem: core: add error handling for dev_set_name
    36a5ae5cf90a platform/x86: touchscreen_dmi: Add Chuwi Vi8 (CWI501) DMI match
    f1cb549bcd0b drm/amd/display: Properly handle additional cases where DCN is not supported
    5ca46a04a5c3 nvme-fc: fix a missing queue put in nvmet_fc_ls_create_association
    9ed522143f95 s390/decompressor: specify __decompress() buf len to avoid overflow
    99875ea9b5b4 net: sched: sch: Bounds check priority
    5027084bc097 drm/nouveau/devinit/tu102-: wait for GFW_BOOT_PROGRESS == COMPLETED
    4fdc19e4fa23 net: stmmac: do not stop RX_CLK in Rx LPI state for qcs404 SoC
    6769cd8a7488 net/rose: Fix to not accept on connected socket
    2ddb9fa56665 tools/virtio: fix the vringh test for virtio ring changes
    a35c241065ee ASoC: cs42l56: fix DT probe
    f312367f5246 bpf, sockmap: Don't let sock_map_{close,destroy,unhash} call itself
    e909f5f2aa55 ALSA: hda: Do not unset preset when cleaning up codec
    5541d35f5d03 selftests/bpf: Verify copy_register_state() preserves parent/live fields
    7814e28c4183 ASoC: Intel: sof_cs42l42: always set dpcm_capture for amplifiers
    d15ab7320892 ASoC: Intel: sof_rt5682: always set dpcm_capture for amplifiers
    06f2a84d626a ACPI / x86: Add support for LPS0 callback handler
    14a2de5c16f3 riscv: kprobe: Fixup misaligned load text
    b5d5f1ad057e kprobes: treewide: Cleanup the error messages for kprobes
    2a6853c0ea03 mptcp: fix locking for in-kernel listener creation

(From OE-Core rev: 5f82a892ecb492da0470ac3f5d7c7b2ad8694763)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 020944ef921ae2b6923b139bad5f7a79217dace1)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-14 17:47:40 +00:00
Bruce Ashfield
17854f6b10 linux-yocto/5.15: update to v5.15.94
Updating  to the latest korg -stable release that comprises
the following commits:

    e2c1a934fd8e Linux 5.15.94
    17170acdc7c8 Documentation/hw-vuln: Add documentation for Cross-Thread Return Predictions
    5122e0e44363 KVM: x86: Mitigate the cross-thread return address predictions bug
    8f12dcab90e8 x86/speculation: Identify processors vulnerable to SMT RSB predictions
    e63c434de8b6 drm/i915: Fix VBT DSI DVO port handling
    fc88c6838183 drm/i915: Initialize the obj flags for shmem objects
    2e557c8ca2c5 drm/amdgpu/fence: Fix oops due to non-matching drm_sched init/fini
    3af734f3eac6 Fix page corruption caused by racy check in __free_pages
    c94ce5ea68dc arm64: dts: meson-axg: Make mmc host controller interrupts level-sensitive
    b796c02df37e arm64: dts: meson-g12-common: Make mmc host controller interrupts level-sensitive
    5d9b771f53c1 arm64: dts: meson-gx: Make mmc host controller interrupts level-sensitive
    ac39dce11912 rtmutex: Ensure that the top waiter is always woken up
    86f7e4239336 powerpc/64s/interrupt: Fix interrupt exit race with security mitigation switch
    2907cf3f2ec7 riscv: Fixup race condition on PG_dcache_clean in flush_icache_pte
    beb1cefa3ccd ceph: flush cap releases when the session is flushed
    86733ab23933 clk: ingenic: jz4760: Update M/N/OD calculation algorithm
    239e927eb2ea usb: typec: altmodes/displayport: Fix probe pin assign check
    48aecce116e4 usb: core: add quirk for Alcor Link AK9563 smartcard reader
    a8178bb1c776 btrfs: free device in btrfs_close_devices for a single device filesystem
    8d13f2c3e2ba mptcp: be careful on subflow status propagation on errors
    25141fb41191 net: USB: Fix wrong-direction WARNING in plusb.c
    d1fba1e096ff cifs: Fix use-after-free in rdata->read_into_pages()
    1b83e7e174d8 pinctrl: intel: Restore the pins that used to be in Direct IRQ mode
    f5f025b703e2 spi: dw: Fix wrong FIFO level setting for long xfers
    71668706fbe7 pinctrl: single: fix potential NULL dereference
    a2a1065739e9 pinctrl: aspeed: Fix confusing types in return value
    99450163bcf6 pinctrl: mediatek: Fix the drive register definition of some Pins
    9f0d2c268488 ASoC: topology: Return -ENOMEM on memory allocation failure
    1a52ef89e369 riscv: stacktrace: Fix missing the first frame
    5fb815433450 ALSA: pci: lx6464es: fix a debug loop
    105ea562f6cf selftests: forwarding: lib: quote the sysctl values
    528e3f3a4b53 rds: rds_rm_zerocopy_callback() use list_first_entry()
    48d6d8f2f609 igc: Add ndo_tx_timeout support
    62ff7dd961ab net/mlx5: Serialize module cleanup with reload and remove
    95d2394f84f1 net/mlx5: fw_tracer, Zero consumer index when reloading the tracer
    ab7f3f6a9d9b net/mlx5: fw_tracer, Clear load bit when freeing string DBs buffers
    193528646ed2 net/mlx5e: IPoIB, Show unknown speed instead of error
    7c6e8eb617c1 net/mlx5: Bridge, fix ageing of peer FDB entries
    49ece61a078f net/mlx5e: Update rx ring hw mtu upon each rx-fcs flag change
    31172267bab0 net/mlx5e: Introduce the mlx5e_flush_rq function
    e4e4e93d31b3 net/mlx5e: Move repeating clear_bit in mlx5e_rx_reporter_err_rq_cqe_recover
    3f18b9ed8c83 net: mscc: ocelot: fix VCAP filters not matching on MAC with "protocol 802.1Q"
    6acb5d853b41 net: dsa: mt7530: don't change PVC_EG_TAG when CPU port becomes VLAN-aware
    ca834a017851 ice: Do not use WQ_MEM_RECLAIM flag for workqueue
    70d48c7992ca uapi: add missing ip/ipv6 header dependencies for linux/stddef.h
    3cec44036f48 ionic: clean interrupt before enabling queue to avoid credit race
    fad12afe877a net: phy: meson-gxl: use MMD access dummy stubs for GXL, internal PHY
    d23385a200e6 bonding: fix error checking in bond_debug_reregister()
    11006d9d083f net: phylink: move phy_device_free() to correctly release phy device
    fb022d7b1c79 xfrm: fix bug with DSCP copy to v6 from v4 tunnel
    6fe1ad42afa8 RDMA/usnic: use iommu_map_atomic() under spin_lock()
    8f5fe1cd8e6a RDMA/irdma: Fix potential NULL-ptr-dereference
    1b4ef90cbcfa IB/IPoIB: Fix legacy IPoIB due to wrong number of queues
    5dc688fae6b7 xfrm/compat: prevent potential spectre v1 gadget in xfrm_xlate32_attr()
    9bae58d58b6b IB/hfi1: Restore allocated resources on failed copyout
    558b1fa01cdc xfrm: compat: change expression for switch in xfrm_xlate64
    238b38e89fff can: j1939: do not wait 250 ms if the same addr was already claimed
    d859184b60d4 of/address: Return an error when no valid dma-ranges are found
    70f37b3118de tracing: Fix poll() and select() do not work on per_cpu trace_pipe and trace_pipe_raw
    df017495039a ALSA: hda/realtek: Enable mute/micmute LEDs on HP Elitebook, 645 G9
    ca9d54220345 ALSA: hda/realtek: Fix the speaker output on Samsung Galaxy Book2 Pro 360
    706b6d86a6f8 ALSA: emux: Avoid potential array out-of-bound in snd_emux_xg_control()
    731fc29de6a2 ALSA: hda/realtek: Add Positivo N14KP6-TG
    b93805980714 btrfs: zlib: zero-initialize zlib workspace
    e65faa7e39a2 btrfs: limit device extents to the device size
    2e4dd07fda7a migrate: hugetlb: check for hugetlb shared PMD in node migration
    072e7412e857 mm/migration: return errno when isolate_huge_page failed
    85d7786c66b6 Linux 5.15.93
    6e2fac197de2 bpf: Skip invalid kfunc call in backtrack_insn
    46c9088cabd4 gfs2: Always check inode size of inline inodes
    8eb2e58a92e0 gfs2: Cosmetic gfs2_dinode_{in,out} cleanup
    e4991910f150 wifi: brcmfmac: Check the count value of channel spec to prevent out-of-bounds reads
    97ccfffcc061 f2fs: fix to do sanity check on i_extra_isize in is_alive()
    64fa364ad324 fbdev: smscufx: fix error handling code in ufx_usb_probe
    a77141a06367 ovl: Use "buf" flexible array for memcpy() destination
    1692fedd0f66 fs/ntfs3: Validate attribute data and valid sizes
    a5b9cb72769b powerpc/imc-pmu: Revert nest_init_lock to being a mutex
    3691f43a0959 iio:adc:twl6030: Enable measurement of VAC
    8c84f50390b2 bpf: Do not reject when the stack read size is different from the tracked scalar size
    14b6198abbd5 bpf: Fix incorrect state pruning for <8B spill/fill
    575a9f6fefd9 phy: qcom-qmp-combo: fix runtime suspend
    e58df87394be phy: qcom-qmp-combo: fix broken power on
    368ea32e0ad0 phy: qcom-qmp-usb: fix memleak on probe deferral
    2f27d3811a41 phy: qcom-qmp-combo: fix memleak on probe deferral
    0cb10ddab7df phy: qcom-qmp-combo: disable runtime PM on unbind
    0ef5ffe11682 serial: 8250_dma: Fix DMA Rx rearm race
    e30328f599b9 serial: 8250_dma: Fix DMA Rx completion race
    a5a171f61a04 nvmem: core: fix cell removal on error
    6d9fa3ff6548 nvmem: core: remove nvmem_config wp_gpio
    adf80e072c95 nvmem: core: initialise nvmem->id early
    e3ebc3e23bd9 drm/i915: Fix potential bit_17 double-free
    997bed0f3cde Squashfs: fix handling and sanity checking of xattr_ids count
    7a0cfaf9d457 highmem: round down the address passed to kunmap_flush_on_unmap()
    5dbe1ebd5647 mm/swapfile: add cond_resched() in get_swap_pages()
    daf82418045f fpga: stratix10-soc: Fix return value check in s10_ops_write_init()
    afd32b683154 x86/debug: Fix stack recursion caused by wrongly ordered DR7 accesses
    066ecbf1a53e kernel/irq/irqdomain.c: fix memory leak with using debugfs_lookup()
    481bf49f58bb usb: gadget: f_uac2: Fix incorrect increment of bNumEndpoints
    fdf40e582442 mm: hugetlb: proc: check for hugetlb shared PMD in /proc/PID/smaps
    6c300351c55d riscv: disable generation of unwind tables
    a5c275add96b parisc: Wire up PTRACE_GETREGS/PTRACE_SETREGS for compat case
    a964decd1307 parisc: Fix return code of pdc_iodc_print()
    488eaf0625d9 nvmem: qcom-spmi-sdam: fix module autoloading
    8569beb66fe6 iio: imu: fxos8700: fix MAGN sensor scale and unit
    8aa5cdcfaf6a iio: imu: fxos8700: remove definition FXOS8700_CTRL_ODR_MIN
    4112ba1ad5ca iio: imu: fxos8700: fix failed initialization ODR mode assignment
    abf7b2ba51f5 iio: imu: fxos8700: fix incorrect ODR mode readback
    412757741c22 iio: imu: fxos8700: fix swapped ACCEL and MAGN channels readback
    34909532b12e iio: imu: fxos8700: fix map label of channel type to MAGN sensor
    8346eb4987e5 iio: imu: fxos8700: fix IMU data bits returned to user space
    7567cdf3ce21 iio: imu: fxos8700: fix incomplete ACCEL and MAGN channels readback
    6969852220af iio: imu: fxos8700: fix ACCEL measurement range selection
    cdacfb220556 iio:adc:twl6030: Enable measurements of VUSB, VBAT and others
    9988063dcefd iio: adc: berlin2-adc: Add missing of_node_put() in error path
    c691a5c0fd03 iio: hid: fix the retval in gyro_3d_capture_sample
    ef80a34699cd iio: hid: fix the retval in accel_3d_capture_sample
    c4eae85c73be efi: Accept version 2 of memory attributes table
    710db8206351 ALSA: hda/realtek: Add Acer Predator PH315-54
    3fbddf86d924 watchdog: diag288_wdt: fix __diag288() inline assembly
    700dd5bc72d3 watchdog: diag288_wdt: do not use stack buffers for hardware data
    21bc51e29e66 net: qrtr: free memory on error path in radix_tree_insert()
    dccbd062d716 fbcon: Check font dimension limits
    5d7500d99164 Input: i8042 - add Clevo PCX0DX to i8042 quirk table
    fc9e27f3ba08 vc_screen: move load of struct vc_data pointer in vcs_read() to avoid UAF
    9ba1188a719a usb: gadget: f_fs: Fix unbalanced spinlock in __ffs_ep0_queue_wait
    fe86480e903f usb: dwc3: qcom: enable vbus override when in OTG dr-mode
    a412fe7baf40 iio: adc: stm32-dfsdm: fill module aliases
    994465939830 drm/amd/display: Fix timing not changning when freesync video is enabled
    a3967128bc65 net/x25: Fix to not accept on connected socket
    396ea318e7fa platform/x86: gigabyte-wmi: add support for B450M DS3H WIFI-CF
    1577524633c7 platform/x86: dell-wmi: Add a keymap for KEY_MUTE in type 0x0010 table
    540cea9f9b6d i2c: rk3x: fix a bunch of kernel-doc warnings
    0aaabdb900c7 scsi: iscsi_tcp: Fix UAF during login when accessing the shost ipaddress
    17b738590b97 scsi: iscsi_tcp: Fix UAF during logout when accessing the shost ipaddress
    8cd0499f9c33 perf/x86/intel: Add Emerald Rapids
    709351537096 scsi: target: core: Fix warning on RT kernels
    b7960f54362b i2c: mxs: suppress probe-deferral error message
    b9b87fc34b7f i2c: designware-pci: Add new PCI IDs for AMD NAVI GPU
    d8fc0b5fb3e8 efi: fix potential NULL deref in efi_mem_reserve_persistent
    f423c2efd51d net: openvswitch: fix flow memory leak in ovs_flow_cmd_new
    798502864789 virtio-net: Keep stop() to follow mirror sequence of open()
    5d884f9e80ff selftests: net: udpgso_bench_tx: Cater for pending datagrams zerocopy benchmarking
    63aa63af3a1e selftests: net: udpgso_bench: Fix racing bug between the rx/tx programs
    d41a3f9cc242 selftests: net: udpgso_bench_rx/tx: Stop when wrong CLI args are provided
    5af98283e554 selftests: net: udpgso_bench_rx: Fix 'used uninitialized' compiler warning
    89e0701e03c5 ata: libata: Fix sata_down_spd_limit() when no link speed is reported
    9ab896775f98 can: j1939: fix errant WARN_ON_ONCE in j1939_session_deactivate
    02d77d98e020 igc: return an error if the mac type is unknown in igc_ptp_systim_to_hwtstamp()
    04a735582095 riscv: kprobe: Fixup kernel panic when probing an illegal position
    206c367b6a2e ip/ip6_gre: Fix non-point-to-point tunnel not generating IPv6 link local address
    90178bc0f28f ip/ip6_gre: Fix changing addr gen mode not generating IPv6 link local address
    dfe2f0ea3851 net: phy: meson-gxl: Add generic dummy stubs for MMD register access
    b7398efe24a9 squashfs: harden sanity check in squashfs_read_xattr_id_table
    89a69216f170 netfilter: br_netfilter: disable sabotage_in hook after first suppression
    cdb444e73fdc drm/i915/adlp: Fix typo for reference clock
    960f20d8582e drm/i915/guc: Fix locking when searching for a hung request
    c27e0eac568a netrom: Fix use-after-free caused by accept on already connected socket
    511c922c5bf6 block, bfq: fix uaf for bfqq in bic_set_bfqq()
    a62c129dcbfa block, bfq: replace 0/1 with false/true in bic apis
    37a744a068c9 block/bfq-iosched.c: use "false" rather than "BLK_RW_ASYNC"
    2cd1e9c013ec net: phy: dp83822: Fix null pointer access on DP83825/DP83826 devices
    18c18c2110ea sfc: correctly advertise tunneled IPv6 segmentation
    878b06f60a08 dpaa2-eth: execute xdp_do_flush() before napi_complete_done()
    3b5774cd6b94 dpaa_eth: execute xdp_do_flush() before napi_complete_done()
    5a7040a649c8 virtio-net: execute xdp_do_flush() before napi_complete_done()
    94add5b27290 qede: execute xdp_do_flush() before napi_complete_done()
    a273f8e3ab90 ice: Prevent set_channel from changing queues while RDMA active
    b432e183c26e fix "direction" argument of iov_iter_kvec()
    d8b8306e963e fix iov_iter_bvec() "direction" argument
    389c7c0ef9cc READ is "data destination", not source...
    7a3649bf5bef WRITE is "data source", not destination...
    83cc6a7bb75c vhost/net: Clear the pending messages when the backend is removed
    7c7d344bc386 scsi: Revert "scsi: core: map PQ=1, PDT=other values to SCSI_SCAN_TARGET_PRESENT"
    4b199dc09416 drm/vc4: hdmi: make CEC adapter name unique
    dc1f8ab25a17 arm64: dts: imx8mm: Fix pad control for UART1_DTE_RX
    c681d7a4ed3d bpf, sockmap: Check for any of tcp_bpf_prots when cloning a listener
    34ad5d8885f5 bpf: Fix to preserve reg parent/live fields when copying range info
    7b86f9ab5692 bpf: Support <8-byte scalar spill and refill
    1b9256c96220 ALSA: hda/via: Avoid potential array out-of-bound in add_secret_dac_path()
    b7abeb691637 bpf: Fix a possible task gone issue with bpf_send_signal[_thread]() helpers
    cfcc2390dbc5 ASoC: Intel: bytcr_wm5102: Drop reference count of ACPI device after use
    b4b204565a45 ASoC: Intel: bytcr_rt5640: Drop reference count of ACPI device after use
    1f1e7635c54d ASoC: Intel: bytcr_rt5651: Drop reference count of ACPI device after use
    41d323c352ac ASoC: Intel: bytcht_es8316: Drop reference count of ACPI device after use
    6a9990e1d92b ASoC: Intel: bytcht_es8316: move comment to the right place
    ffcdf354555b ASoC: Intel: boards: fix spelling in comments
    bd0b17ab1b76 bus: sunxi-rsb: Fix error handling in sunxi_rsb_init()
    5f4543c9382a firewire: fix memory leak for payload of request subaction to IEC 61883-1 FCP region
    e515b9902f5f Linux 5.15.92
    c7caf669b89d net: mctp: purge receive queues on sk destruction
    046de74f9af9 net: fix NULL pointer in skb_segment_list
    7ab3376703ce selftests: Provide local define of __cpuid_count()
    e92e311ced6f selftests/vm: remove ARRAY_SIZE define from individual tests
    c9e52db90031 tools: fix ARRAY_SIZE defines in tools and selftests hdrs
    c1aa0dd52db4 Bluetooth: fix null ptr deref on hci_sync_conn_complete_evt
    02e61196c578 ACPI: processor idle: Practically limit "Dummy wait" workaround to old Intel systems
    79dd676b445f extcon: usbc-tusb320: fix kernel-doc warning
    c2bd60ef20de ext4: fix bad checksum after online resize
    4cd1e18bc04a cifs: fix return of uninitialized rc in dfs_cache_update_tgthint()
    43acd767bd90 dmaengine: imx-sdma: Fix a possible memory leak in sdma_transfer_init
    a54c5ad007ea HID: playstation: sanity check DualSense calibration data.
    6d7686cc11b7 blk-cgroup: fix missing pd_online_fn() while activating policy
    2144859229c1 erofs/zmap.c: Fix incorrect offset calculation
    0dfef5031335 bpf: Skip task with pid=1 in send_signal_common()
    e8bb772f745e firmware: arm_scmi: Clear stale xfer->hdr.status
    80cb9f1a76aa arm64: dts: imx8mq-thor96: fix no-mmc property for SDHCI
    162fad24d2e1 arm64: dts: freescale: Fix pca954x i2c-mux node names
    82ad105e1a55 ARM: dts: vf610: Fix pca9548 i2c-mux node names
    5aee5f33e03a ARM: dts: imx: Fix pca9547 i2c-mux node name

(From OE-Core rev: fbe103e571291bbbcc3a2cc676daa22d37bcdd07)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit f5deb914ba17c131c4880da8d9a1184c2d2a3ef6)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-14 17:47:40 +00:00
Ross Burton
85bb6467d4 shadow: ignore CVE-2016-15024
This recently got an updated CPE which matches this recipe, but the issue
is related to an entirely different shadow project so ignore it.

(From OE-Core rev: 8dce0c01d9a0f6855e6a70a65412a43208b034a8)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 2331e98abb09cbcd56625d65c4e5d258dc29dd04)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-14 17:47:40 +00:00
Siddharth Doshi
816438bfdd epiphany: Security fix for CVE-2023-26081
Upstream-Status: Backport from [53363c3c81]
(From OE-Core rev: 412f9b5732f0ff659fc7ed81fe936755fa9d2773)

Signed-off-by: Siddharth Doshi <sdoshi@mvista.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-14 17:47:40 +00:00
Bhabu Bindu
35e3fd7912 qemu: Fix CVE-2022-4144
Add patch to fix CVE-2022-4144

Link: https://security-tracker.debian.org/tracker/CVE-2022-4144

(From OE-Core rev: 4cb3874abf4fdeb04337a48a14c765ba9b2269d4)

(From OE-Core rev: 0af05af0fc0789860b1a52d77a572bac6075fbea)

Signed-off-by: Bhabu Bindu <bhabu.bindu@kpit.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Chee Yang Lee <chee.yang.lee@intel.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-14 17:47:40 +00:00
Hitendra Prajapati
340409bbb3 libxml2: Fix CVE-2022-40303 && CVE-2022-40304
Upstream-Status: Backport from c846986356 && 1b41ec4e94

(From OE-Core rev: b46d0b7a599ee5d3009cca302ad5322d64eb94b9)

(From OE-Core rev: 35ccaf2f3f6178afc7701038b0b03d8bf07ae0ad)

Signed-off-by: Hitendra Prajapati <hprajapati@mvista.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Chee Yang Lee <chee.yang.lee@intel.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-14 17:47:40 +00:00
Chee Yang Lee
ec1d8a1956 tiff: fix multiple CVEs
import patch from debian to fix
CVE-2022-48281
http://security.debian.org/debian-security/pool/updates/main/t/tiff/tiff_4.2.0-1+deb11u4.debian.tar.xz

import patch from fedora to fix
CVE-2023-0800
CVE-2023-0801
CVE-2023-0802
CVE-2023-0803
CVE-2023-0804
91856895aa

(From OE-Core rev: d9ce9b37236f5c16ffba4572ad720aeb50edeee9)

Signed-off-by: Chee Yang Lee <chee.yang.lee@intel.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-14 17:47:40 +00:00
Richard Purdie
9e4cc20109 bitbake: cookerdata: Drop dubious exception handling code
This code appears to be dangerous, it swallows exceptions, turning them into
"handled" versions which then show no errors to the user. This is a pretty
poor user experience and I can't see why this code should be swallowing
such things. Drop the worst bits of code.

(Bitbake rev: 2b239555f76e4e98ca704e7ef60e796d0f19463c)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-14 15:25:03 +00:00
Richard Purdie
191d4f2577 bitbake: cookerdata: Improve early exception handling
Martin Jansa reported that if you put a syntax error into an imported
module such as qa.py in OE, no error is shown.

Part of the issue appears to be that the catch_parse_error() decorator only
catches certain exceptions and SyntaxError isn't one of them. As far as I can
tell we should remove all the special cases and use the more advanced code
in all cases, not just expansion errors.

I confirmed this now prints a proper error message for a qa.py syntax error.

(Bitbake rev: 4b922345a40f7cc803eb46c4906269691d408940)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-14 15:25:03 +00:00
Richard Purdie
0ade79619e bitbake: cookerdata: Remove incorrect SystemExit usage
Calling SystemExit doesn't work well with server/client usage since the string
isn't printed to the right place. Use bb.fatal() instead which prints the right
log output and raises and handled exception which then shows correctly on the
UI.

(Bitbake rev: 8001c9b5d3a3111f1134557f221325fe2593c2d9)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-14 15:25:03 +00:00
Richard Purdie
dde7a392c5 bitbake: utils: Allow to_boolean to support int values
Some variables may be set as:

X = 1

as well the more usual

X = "1"

so add support to to_boolean to handle this case.

(Bitbake rev: 3cc9fe911f764e4553078dbeed9497f6f08336ce)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-14 15:25:03 +00:00
Frank de Brabander
69553e4365 bitbake: bin/utils: Ensure locale en_US.UTF-8 is available on the system
Get rid of the duplicate code and add extra check that the
locale en_US.UTF-8 is available on the system. This new helper
method is now located right above the method filter_environment()
which sets LC_ALL environment variable to 'en_US.UTF-8'.

[YOCTO #10165]

(Bitbake rev: 2fe0c90da89b0a4e2e133f8ffa7a93d71097bb32)

Signed-off-by: Frank de Brabander <debrabander@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit a4ce040a6fd540a1cac52f808f909f9fcf8c961c)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-14 15:25:03 +00:00
Richard Purdie
91d0157d6d build-appliance-image: Update to langdale head revision
(From OE-Core rev: b995ea45773211bd7bdd60eabcc9bbffda6beb5c)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-06 15:17:15 +00:00
Steve Sakoman
96b735de07 poky.conf: bump version for 4.1.3
(From meta-yocto rev: f507cfd7db1aca197f2382a1f96132980ddcca56)

Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-06 15:16:59 +00:00
Mikko Rapeli
b6627dbcc1 runqemu: kill qemu if it hangs
qemu doesn't always behave well and can hang too.
kill it with force if it was still alive. Move clean up
commands into cleanup() function.

(From OE-Core rev: 9047a07bc8a8c440cb30c6bb49710362eae41330)

Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 079c2935d2f585ce49e1c7daab2155fcf0094c48)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-06 15:09:42 +00:00
Mikko Rapeli
cdd824093f oeqa ssh.py: fix hangs in run()
When qemu machine hangs, the ssh commands done by tests
are not timing out. do_testimage() task has last logs like this:

DEBUG: time: 1673531086.3155053, endtime: 1673531686.315502

The test process is stuck for hours, or for ever if the
executing command or test case did not set a timeout correctly.
The default 300 second timeout is not working when target hangs.
Note that timeout is really a "inactive timeout" since data returned
by the process will reset the timeout.

Make the process stdout non-blocking so read() will always return
right away using os.set_blocking() available in python 3.5 and later.

Then change from python codec reader to plain read() and make
the ssh subprocess stdout non-blocking. Even with select()
making sure the file had input to be read, the codec reader was
trying to find more stuff and blocking for ever when process hangs.

While at it, add a small timeout to read data in larger chunks if
possible. This avoids reading data one or few characters at a time
and makes the debug logs more readable.

close() the stdout file in all cases after read loop is complete.

Then make sure to wait or kill the ssh subprocess in all cases.
Just reading the output stream and receiving EOF there does not mean
that the process exited, and wait() needs a timeout if the process
is hanging. In the end kill the process and return the return value
and captured output utf-8 encoded, just like before these changes.

This fixes ssh run() related deadlocks when a qemu target hangs
completely.

(From OE-Core rev: 3e1a4d572922eadc85ff6ac169722ad7ab118cf4)

Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 9c63970fce3a3d6029745252a6ec2bf9b9da862d)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-06 15:09:42 +00:00
Narpat Mali
4a93913116 libseccomp: fix for the ptest result format
The output of libseccomp ptest should follow a unified format as
per this https://wiki.yoctoproject.org/wiki/Ptest

Replaced the test results SUCCESS, FAILURE & SKIPPPED with PASS,
FAIL & SKIP and printing the ptest result with the below format
result: testname

(From OE-Core rev: 13a567a0bf191e9ad82ed93180d4b21bb2c5875a)

Signed-off-by: Narpat Mali <narpat.mali@windriver.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 30d025a8641cfcce5412b5f021478777620b55f1)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-06 15:09:42 +00:00
Ulrich Ölmann
c0d004ef35 kernel-yocto: fix kernel-meta data detection
Fixes: 7ef7af5c03ba ("kernel-yocto: restore kernel-meta data detection for SRC_URI elements")
(From OE-Core rev: a075bf43ddbbd79cfdcaa257bb2dae49a5b6e0f7)

Signed-off-by: Ulrich Ölmann <u.oelmann@pengutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit c77754f23e3fb49a62602a6c6a04d5525d1cf457)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-06 15:09:42 +00:00
Ross Burton
a0652e7549 cml1: remove redundant addtask
The configure task is added by base.bbclass, no need to do it again.

(From OE-Core rev: 70051189bb4ecae5475ce45eabe37113f417257e)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 2d7897bcab2b70d850bfe02ded42b20eb695eda8)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-06 15:09:42 +00:00
Ross Burton
011aa08841 lib/buildstats: handle tasks that never finished
If a task is aborted the buildstats file isn't complete, so calculate
when the build finished and use that as a end time.

(From OE-Core rev: 51e5e085400bb818d43ad82ffcf8548665bbd1d0)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 23ebaec476dc46aebe5997f025661137f3e341bd)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-06 15:09:42 +00:00
Alexis Lothoré
f2cfb8c433 oeqa/selftest/resulttooltests: fix minor typo
(From OE-Core rev: fdabdb6bd5d190446d15bdefd1032add81c2ebf3)

Signed-off-by: Alexis Lothoré <alexis.lothore@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 80cfa56d133bd3abbb1f37272607d8e15ce70861)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-06 15:09:42 +00:00
Richard Purdie
4369249661 libssh2: Clean up ptest patch/coverage
Martin Jansa spotted patchreview.py reports Malformed Upstream-Status in a
patch in this recipe. The patch is not being applied since there is no ptest
override.

The test in question was also disabled due to an issue with new versions of
openssh.

Add a workaround for the broken test, enable it, drop the broken patch.

(From OE-Core rev: c2d2d973b3465f0c61741861d198065081bb7dd9)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit e9f2cc084638ce9cb5339df611e473c30f0e40b1)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-06 15:09:42 +00:00
Bruce Ashfield
c103aca050 lttng-modules: fix for kernel 6.2+
Backporting a patching from the 2.13.x stable branch of lttng
to fix the build against kernel 6.2+.

(From OE-Core rev: 5d36b42406d7cbc152008c9de364eb4187c64b3b)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 3aed7dfe5ff6f52497dcffa58bc2f06cf709ea18)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-06 15:09:42 +00:00
Xiangyu Chen
14dd5acab2 dhcpcd: fix dhcpcd start failure on qemuppc64
Backport patch to fix dhcpcd start failed on qemuppc64.

(From OE-Core rev: add5856e9a2d0646869756abf1a6b1d7d9629176)

Signed-off-by: Xiangyu Chen <xiangyu.chen@windriver.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit a31d658198566de12cdd1aad18776b8da8065787)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-06 15:09:42 +00:00
Mateusz Marciniec
ac46c1d54f sstatesig: Improve output hash calculation
Symbolic links to the files are included during the output hash
calculation but symlinks to the directories are missed.
So if the new symlink to a directory was the only change made,
then the output hash won't change,
and the Hash Equivalence server may change unihash.
In the next run bitbake may use an older package from sstate-cache.

To fix this followlinks=True flag could be set for os.walk
but it can lead to infinite recursion if link points
to a parent directory of itself.
Also, all files from a directory to which symlink points
would be included in depsig file.
Therefore another solution was applied, I added code that will loop
through directories and process those that are symlinks.

(From OE-Core rev: f1f24e9dc4d4016702d40ec5567cf65d9c04000d)

Signed-off-by: Mateusz Marciniec <mateuszmar2@gmail.com>
Signed-off-by: Tomasz Dziendzielski <tomasz.dziendzielski@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit ee729163f31f26b1462a47e1e53f7a0f9de9b464)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-06 15:09:42 +00:00
Saul Wold
4c792c4398 busybox: Fix depmod patch
The original patch was actually allowing .debug modules
though which was in-correct. This change blocks the
parsing of .debug modules (which is correct). As noted in
[YOCTO #15022] this should address the empty modules.dep
when using the BusyBox depmod.

(From OE-Core rev: e8c4cf47ab7d7b7c7944908a4a2beae39b48eafe)

Signed-off-by: Saul Wold <saul.wold@windriver.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 339c3c3abe8d405cfe7b3f34db9b3547bcaaf878)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-06 15:09:42 +00:00
Alexander Kanavin
ac646d8c1e bblayers/makesetup: skip git repos that are submodules
(From OE-Core rev: 0bbcc17f68943655a95913b0d4c214c0227d24c0)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit d8bc9cd4ca8ae268a61024f8ac5083a2bbdc432f)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-06 15:09:42 +00:00
Adrian Freihofer
28206ebda5 bblayers/setupwriters/oe-setup-layers: create dir if not exists
Without this patch:

$ bitbake-layers create-layers-setup /home/adrian/temp/poky-clone
NOTE: Starting bitbake server...
Traceback (most recent call last):
  File "/home/adrian/projects/poky/bitbake/lib/bb/process.py", line 169, in run
    pipe = Popen(cmd, **options)
  File "/home/adrian/projects/poky/bitbake/lib/bb/process.py", line 73, in __init__
    subprocess.Popen.__init__(self, *args, **options)
  File "/usr/lib64/python3.10/subprocess.py", line 971, in __init__
    self._execute_child(args, executable, preexec_fn, close_fds,
  File "/usr/lib64/python3.10/subprocess.py", line 1847, in _execute_child
    raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: '/home/adrian/temp/poky-clone'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/adrian/projects/poky/bitbake/bin/bitbake-layers", line 95, in <module>
    ret = main()
  File "/home/adrian/projects/poky/bitbake/bin/bitbake-layers", line 88, in main
    return args.func(args)
  File "/home/adrian/projects/poky/meta/lib/bblayers/makesetup.py", line 90, in do_make_setup
    p.do_write(self, args)
  File "/home/adrian/projects/poky/meta/lib/bblayers/setupwriters/oe-setup-layers.py", line 36, in do_write
    repos = parent.make_repo_config(args.destdir, args.include_layer_repo)
  File "/home/adrian/projects/poky/meta/lib/bblayers/makesetup.py", line 55, in make_repo_config
    destdir_repo = self._get_repo_path(destdir)
  File "/home/adrian/projects/poky/meta/lib/bblayers/makesetup.py", line 30, in _get_repo_path
    repo_path, _ = bb.process.run('git rev-parse --show-toplevel', cwd=layer_path)
  File "/home/adrian/projects/poky/bitbake/lib/bb/process.py", line 172, in run
    raise NotFoundError(cmd)
bb.process.NotFoundError: Execution of 'git rev-parse --show-toplevel' failed: command not found

with this patch:

$ bitbake-layers create-layers-setup /home/adrian/temp/poky-clone
NOTE: Starting bitbake server...
NOTE: Created /home/adrian/temp/poky-clone/setup-layers.json
NOTE: Created /home/adrian/temp/poky-clone/setup-layers

(From OE-Core rev: bd8920b3a93167ad80f41572b84d120538da22e4)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 2da12ccada46443d58dd8fab463156fa763b84cc)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-06 15:09:42 +00:00
Pavel Zhukov
2656e872c9 wic: Fix usage of fstype=none in wic
This allows to specify partition with fstype=none in the wks file
to have partition created but without following mkfs. The none fstype
is in the list already but the usage is not documented.

Example;
part /data --ondisk mmcblk0 --fstype=none  --align 4096 --fixed-size 512

will create a partition, filesystem may be created manualy on the host
or target and data will be preserved if the device is reflashed using
same wks. Works with bmaptool and probably does not work with dd.
Use case is persistent filesystem/data between reflashing of the image.

(From OE-Core rev: 5f7239eebe61aabbd3dbf4e6e1cf703c71273a35)

Signed-off-by: Pavel Zhukov <pavel@zhukoff.net>
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 351cb64da37aa43113e5192605d04436652aa3b8)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-06 15:09:42 +00:00
Federico Pellegrin
ba494bb185 curl: fix dependencies when building with ldap/ldaps
openldap is added as a dependency so the build will not fail,
as otherwise ldap headers are not found during configure phase

Note: due to upstream bug (now fixed) building LDAP/LDAPS support
with minimal configurations can sometimes not work, see details at:
https://github.com/curl/curl/pull/10445

(From OE-Core rev: 6a4f55bb305e3cb2fb3f60471ff0adaef5adbc9f)

Signed-off-by: Federico Pellegrin <fede@evolware.org>
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit a999f62f5692687a5557f7a50c7c768c50f3d7d3)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-06 15:09:42 +00:00
Joshua Watt
1b578df123 classes/populate_sdk_base: Append cleandirs
Append to cleandirs in do_populate_sdk so that other classes
(specifically, create-spdx-2.2) can add additional directories

(From OE-Core rev: d64e3cf57d80f4f399350d91fc3e39198014f5eb)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 5e6f74b1910a6ddd359b037b975ba29406e1651b)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-06 15:09:42 +00:00
Alexander Kanavin
3c74738899 wireless-regdb: upgrade 2022.08.12 -> 2023.02.13
(From OE-Core rev: 187b3a810cd52c7031df7985ef2285cc1dfa89ea)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit a8e8ea1b4b100b6f0ba5ca9441a8f3f1ac31fbfd)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-06 15:09:42 +00:00
Alexander Kanavin
7262a77b9e linux-firmware: upgrade 20230117 -> 20230210
License-Update: additional firmwares

(From OE-Core rev: 0c69a2117cc7773a042bea5f79478c726b143f4c)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 8e6134d39b840d96e1c37d3df21a522afea8bc76)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-06 15:09:42 +00:00
Dmitry Baryshkov
6124017d65 linux-firmware: add yamato fw files to qcom-adreno-a2xx package
Newest linux-firmware release got firmware for Adreno A200. Add these
two files to the ${PN}-qcom-adreno-a2xx package. As these files are
licensed under a separate BSD-3-Clause license, add separate license
package too.

(From OE-Core rev: 873971539fa5248e4eabb964e642afec59040749)

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 56e1b2b06ef7f22d4ac5899046f650ae8ec0d547)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-06 15:09:42 +00:00
Dmitry Baryshkov
b02948949b linux-firmware: properly set license for all Qualcomm firmware
It is not enough to depend on the ${PN}-qcom-license package. Set
LICENSE variable for all the qcom packages to point to the proper
license.

(From OE-Core rev: 2a9659695b28030a6004d81be1e75e7fd89ebbab)

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 9dc41e18dc138a7cce920f8e4c85eb3130c0d553)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-06 15:09:42 +00:00
Siddharth Doshi
f9f0c69406 openssl: Upgrade 3.0.7 -> 3.0.8
OpenSSL 3.0.8 fixes 1 HIGH level security vulnerability and 7 MODERATE level security vulnerability [1].

Upgrade the recipe to point to 3.0.8.

CVE-2022-3996 is reported fixed in 3.0.8, so drop the patch for that as
well.

[1] https://www.openssl.org/news/vulnerabilities.html

CVEs Fixed:
https://www.openssl.org/news/secadv/20230207.txt

(From OE-Core rev: f5dce7274bfd65c05df932f36a5e43cfc884fd41)

Signed-off-by: Siddharth Doshi <sdoshi@mvista.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 8461466f63200a0b1c9c247b70fdf5819651544c)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-06 15:09:42 +00:00
Alexander Kanavin
070aa4dfb6 dbus: upgrade 1.14.4 -> 1.14.6
Denial of service fixes:

• Fix an incorrect assertion that could be used to crash dbus-daemon or
  other users of DBusServer prior to authentication, if libdbus was compiled
  with assertions enabled.
  We recommend that production builds of dbus, for example in OS distributions,
  should be compiled with checks but without assertions.
  (dbus#421, Ralf Habacker; thanks to Evgeny Vereshchagin)

Other fixes:

• When connected to a dbus-broker, stop dbus-monitor from incorrectly
  replying to Peer method calls that were sent to the dbus-broker with
  a NULL destination (dbus#301, Kai A. Hiller)

• Fix out-of-bounds varargs read in the dbus-daemon's config-parser.
  This is not attacker-triggerable and appears to be harmless in practice,
  but is technically undefined behaviour and is detected as such by
  AddressSanitizer. (dbus!357, Evgeny Vereshchagin)

• Avoid a data race in multi-threaded use of DBusCounter
  (dbus#426, Ralf Habacker)

• Fix a crash with some glibc versions when non-auditable SELinux events
  are logged (dbus!386, Jeremi Piotrowski)

• If dbus_message_demarshal() runs out of memory while validating a message,
  report it as NoMemory rather than InvalidArgs (dbus#420, Simon McVittie)

• Use C11 _Alignof if available, for better standards-compliance
  (dbus!389, Khem Raj)

• Stop including an outdated copy of pkg.m4 in the git tree
  (dbus!365, Simon McVittie)

• Documentation:
  · Consistently use Gitlab bug reporting URL (dbus!372, Marco Trevisan)

• Tests fixes:
  · Fix the test-apparmor-activation test after dbus#416
    (dbus!380, Dave Jones)

Internal changes:

• Fix CI builds with recent git versions (dbus#447, Simon McVittie)

(From OE-Core rev: 83e9bd1507fd5f79c680dde30b0f66df84cde6b0)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 31245df3061c1a913bffe5e11ad6ac7fa9c83915)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-06 15:09:42 +00:00
Wang Mingyu
ac953a3f78 xwayland: upgrade 22.1.7 -> 22.1.8
xwayland 22.1.8 - Security fix for CVE-2023-0494

(From OE-Core rev: 964ca02debe1e85cb91789dee1d08344f4fcf33a)

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>
(cherry picked from commit e0ca374267cce807d12d706564989900fe61bd97)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-06 15:09:42 +00:00
Wang Mingyu
eb0d1b7cfb libjpeg-turbo: upgrade 2.1.5 -> 2.1.5.1
Changelog:
==========
1. The SIMD dispatchers in libjpeg-turbo 2.1.4 and prior stored the list of
supported SIMD instruction sets in a global variable, which caused an innocuous
race condition whereby the variable could have been initialized multiple times
if 'jpeg_start_*compress()' was called simultaneously in multiple threads.
libjpeg-turbo 2.1.5 included an undocumented attempt to fix this race condition
by making the SIMD support variable thread-local.  However, that caused another
issue whereby, if 'jpeg_start_*compress()' was called in one thread and
'jpeg_read_*()' or 'jpeg_write_*()' was called in a second thread, the SIMD
support variable was never initialized in the second thread.  On x86 systems,
this led the second thread to incorrectly assume that AVX2 instructions were
always available, and when it attempted to use those instructions on older x86
CPUs that do not support them, an illegal instruction error occurred.  The SIMD
dispatchers now ensure that the SIMD support variable is initialized before
dispatching based on its value.

(From OE-Core rev: d57de2a7169de369105ed9bce19a43dad68f350a)

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>
(cherry picked from commit 009a1b0390d791d614b8d4a1407e7479c261f60d)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-06 15:09:42 +00:00
Alexander Kanavin
b5aa5fc52a vim: update 9.0.1211 -> 9.0.1293 to resolve open CVEs
(From OE-Core rev: 855f629bcd2caed708f2ebd19a81059fed546428)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 6d77dbe499ee362b6e28902f1efcf52b961037a5)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-06 15:09:42 +00:00
Kai Kang
c4c4e197cf xserver-xorg: 21.1.6 -> 21.1.7
According to the ANNOUNCE of xorg-server 21.1.7[1]:

This release contains the fix for CVE-2023-0494 in today's security
advisory: https://lists.x.org/archives/xorg-announce/2023-February/003320.html
It also fixes a second possible OOB access during EnqueueEvent and a
crasher caused by ResourceClientBits not correctly honouring the
MaxClients value in the configuration file.

Finally, a bunch of Xquartz updates including the ability to correctly detect
ssh-tunneled clients as remote.

[1]: https://lists.x.org/archives/xorg-announce/2023-February/003321.html

(From OE-Core rev: 0cb63762057bae8bf3b1ce088ba4d31f6ebd770f)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 60737bee6466e206d8f3c751910dfce00b60d703)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-06 15:09:42 +00:00
Ross Burton
3c71926777 less: backport the fix for CVE-2022-46663
(From OE-Core rev: 78c44993a190a706a775e70fa59fd4664b20c9cb)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 56d31067a34bc1942c7eb4940a41ecfc81110e58)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-06 15:09:42 +00:00
Fawzi KHABER
08d954474b ref-manual: update DEV_PKG_DEPENDENCY in variables
Since release 4.1, the variable DEV_PKG_DEPENDENCY sets RRECOMMENDS instead
of RDEPENDS for the -dev package on the main package, this change fixes the
documentation to match the actual state

Reviewed-by: Yoann CONGAL <yoann.congal@smile.fr>
(From yocto-docs rev: 3de2ad1f8ff87aeec30088779267880306a0f31a)

Signed-off-by: Fawzi KHABER <fawzi.khaber@smile.fr>
Reviewed-by: Quentin Schulz <foss+yocto@0leil.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-27 23:38:56 +00:00
Mikko Rapeli
53fc7b320c oeqa qemurunner.py: try to avoid reading one character at a time
Read from serial console with a small delay to bundle data to e.g.
full lines. Reading one character at a time is not needed and causes
busy looping.

(From OE-Core rev: ab1e3000cee9f5f3496a7e67cc59b2e08a681a89)

Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org>
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
(cherry picked from commit 0049f6757f6f956fb4cc77b3df6a672c20b53cf4)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-24 16:41:51 +00:00
Mikko Rapeli
f5c3677f70 oeqa qemurunner.py: add timeout to QMP calls
When a qemu machine hangs, the QMP calls can hang for ever
too, and when this happens any failing test commands from ssh
runner may be followed by dump_monitor() calls which
then also hang. Hangs followed by hangs.

Use runqemutime at setup and run_monitor() specific timeout
for later calls.

(From OE-Core rev: cd6bb88d98b1dc8d751cf75b9ddcca39c84738c6)

Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org>
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
(cherry picked from commit 3a07bdf77dc6ecbf4c620b051dd032abaaf1e4ff)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-24 16:41:51 +00:00
Mikko Rapeli
d0ae99feb8 oeqa qemurunner: read more data at a time from serial
Use a short sleep to bundle serial console reads so that
we are not reading one character at a time which reduces busy
looping.

(From OE-Core rev: 62df87d3544b7fc3717743b131a62c6092359ec5)

Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org>
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
(cherry picked from commit cafe65d8cf7544edbd387f7f5f6d77c64c6b18fa)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-24 16:41:51 +00:00
Mikko Rapeli
f3437cb740 oeqa dump.py: add error counter and stop after 5 failures
If test target qemu machine hangs completely, dump_target() calls
over serial console are taking a long time to time out, possibly
for every failing ssh command execution and a lot of test cases,
and same with dump_monitor().

Instead of trying for ever, count errors and after 5 stop trying
to dump_target() and dump_monitor() completely.

These help to end testing earlier when a test target is completely
deadlocked and all ssh, serial and QMP communication with it are
failing.

(From OE-Core rev: d570e8f3d6ac05be200f5f4acbbd1a15a95fc122)

Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org>
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
(cherry picked from commit d9ad0a055abba983c6cee1dca4d2f0a8a3c48782)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-24 16:41:51 +00:00
Mikko Rapeli
57ecad65f5 oeqa ssh.py: add connection keep alive options to ssh client
Configure ssh client to test that connection with server is up.
If the server does not respond within a minute then the connection,
target machine or sshd daemon are stuck and it's better to exit
the command execution with errors.

Some tests can execute a long time without returning stdout/stderror
data and it's difficult to adjust timers for those cases if
connection to target machine or the target machine itself hangs
and output is not expected in minutes or even hours.

(From OE-Core rev: 07db4a45918eb82503b0bbc7003258c0a03bd5fe)

Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org>
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
(cherry picked from commit ba68ff04c5786eca7cd8dd44056705867dea8ac4)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-24 16:41:51 +00:00
Mikko Rapeli
18c21c6089 oeqa ssh.py: move output prints to new line
The output from is garbled otherwise and it's not
easy to remove debug output form real command output on target.

(From OE-Core rev: 5346b927a9fba57b2bb41406fcac09cd6369f26c)

Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org>
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
(cherry picked from commit 917a70cbc43ac1c70c477b220c4115735457ef04)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-24 16:41:51 +00:00
Peter Kjellerstedt
3add175a8e devshell: Do not add scripts/git-intercept to PATH
The use of scripts/git-intercept was introduced in commit 3266c327df
(install/devshell: Introduce git intercept script due to fakeroot
issues) and later reverted in commit af27c81eaf (scripts: Make git
intercept global).

(From OE-Core rev: 54dfb8bf6836013ac7fc6112fce9daaf6e719515)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
(cherry picked from commit f6c260c8e2a33e282a35afc99de4ef8cc1791b08)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-24 16:41:51 +00:00
Chen Qi
551595a3f3 ffmpeg: fix configure failure on noexec /tmp host
The configure scripts uses /tmp to execute some generated files.
If /tmp is noexec, then we meet the following error.

  | Unable to create and execute files in /tmp.  Set the TMPDIR environment
  | variable to another directory and make sure that it is not mounted noexec.
  | Sanity test failed.

(From OE-Core rev: 20231fece4b7f15bae574d89a362506f39cfd967)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 6099b88c4decb285fd3519d5565909c15d935030)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-24 16:41:51 +00:00
Ulrich Ölmann
a707115995 update-alternatives: fix typos
(From OE-Core rev: 5dab1edf6df6eaba59c3c6a996ca19213e0a4743)

Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit d3ca05b072c152b76a86edaaddebabdef312ea95)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-24 16:41:51 +00:00
Mauro Queiros
03759a65ce image.bbclass: print all QA functions exceptions
For the QA checks in `image.bbclass`, all exceptions
other than `oe.utils.ImageQAFailed` always print the
following generic message:
"Image QA function func_name failed"

This can be very misleading, as it may hide
python syntax errors and other kind of issues that are
hard to detect without more explicit error messages.

This change makes sure that the error message of all
exceptions are displayed.

Before this change:
 "Image QA function func_name failed"

After this change:
 "Image QA function func_name failed: f-string: empty expression not allowed (<string>, line 13)"

(From OE-Core rev: c2cdbf0a0b2d27778f55db8fc685e62c2515e805)

Signed-off-by: Mauro Queiros <maurofrqueiros@gmail.com>
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 3d85b30d8704d38b86f5b006748cebc74bd2a4fa)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-24 16:41:51 +00:00
Alexander Kanavin
c4d3f42c7c libgit2: upgrade 1.5.0 -> 1.5.1
Fixes:

libgit2, when compiled using the optional, included libssh2 backend, fails to verify SSH keys by default.

Description:

When using an SSH remote with the optional, included libssh2 backend, libgit2 does not perform certificate checking by default. Prior versions of libgit2 require the caller to set the certificate_check field of libgit2's git_remote_callbacks structure - if a certificate check callback is not set, libgit2 does not perform any certificate checking. This means that by default - without configuring a certificate check callback, clients will not perform validation on the server SSH keys and may be subject to a man-in-the-middle attack.
Beginning in libgit2 v1.4.5 and v1.5.1, libgit2 will now perform host key checking by default. Users can still override the default behavior using the certificate_check function.
The libgit2 security team would like to thank the Julia and Rust security teams for responsibly disclosing this vulnerability and assisting with fixing the vulnerability.

(From OE-Core rev: 63cb8eb147088ae171ffa2b6005410742e50e4e6)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit f59486310cf33c586671a16cf52862c19c3c4c31)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-24 16:41:51 +00:00
Alexander Kanavin
4a74d441fe sudo: upgrade 1.9.12p1 -> 1.9.12p2
Changes:

Fixed a compilation error on Linux/aarch64. GitHub issue #197.

Fixed a potential crash introduced in the fix GitHub issue #134. If a user’s sudoers entry did not have any RunAs user’s set, running sudo -U otheruser -l would dereference a NULL pointer.

Fixed a bug introduced in sudo 1.9.12 that could prevent sudo from creating a I/O files when the iolog_file sudoers setting contains six or more Xs.

Fixed a compilation issue on AIX with the native compiler. GitHub issue #231.

Fixed CVE-2023-22809, a flaw in sudo’s -e option (aka sudoedit) that could allow a malicious user with sudoedit privileges to edit arbitrary files

(From OE-Core rev: 9f01e75b2d249a5885b313bcb4ba76df750b0d56)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 5a3f5f4f607f5e06af772287109b68579154fb2f)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-24 16:41:51 +00:00
Sakib Sajal
013d677512 git: upgrade 2.37.5 -> 2.37.6
Upgrade git to latest 2.37.x release to address
security issues CVE-2022-23521 and CVE-2022-41903.

(From OE-Core rev: 936354cade974b59b964ea55aca22a04fa44a2a5)

Signed-off-by: Sakib Sajal <sakib.sajal@windriver.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-24 16:41:51 +00:00
Alexander Kanavin
f26a72d7ae linux-firmware: upgrade 20221214 -> 20230117
License-Update: additional firmwares, copyright years

(From OE-Core rev: 3291c8ecf3ecf48f88175466425f2f0b0be69cdf)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit fdb8c12fc71b4a985372f5d02ce59a1402c14c4a)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-24 16:41:51 +00:00
Alexander Kanavin
6cccef54a6 pkgconf: upgrade 1.9.3 -> 1.9.4
Changes from 1.9.3 to 1.9.4:
----------------------------

* Fix a buffer overflow vulnerability involving very large variable expansions.
  CVE-2023-24056

* Fix a bunch of minor regressions with the solver.

* Create separate solutions for `--cflags` and `--libs` when `--static` is not
  used.

* Remove final trailing whitespace in pkgconf_fragment_render_buf().

* Revert broken pkg.m4 change involving querying module versions in
  PKG_CHECK_MODULES.

* Fix handling of tildes in version strings.

* Various C99 formatting string fixes involving SIZE_FMT_SPECIFIER.

(From OE-Core rev: 7b7cdf017d10c1c387f5ae4a35c763b437ef2673)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit ea19dd90b367eda92aa01bc5131d126ed6d22280)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-24 16:41:51 +00:00
Alexander Kanavin
a682c2f7a3 libjpeg-turbo: upgrade 2.1.4 -> 2.1.5
Significant changes relative to 2.1.4

Fixed issues in the build system whereby, when using the Ninja Multi-Config CMake generator, a static build of libjpeg-turbo (a build in which ENABLE_SHARED is 0) could not be installed, a Windows installer could not be built, and the Java regression tests failed.

Fixed a regression introduced by 2.0 beta1[15] that caused a buffer overrun in the progressive Huffman encoder when attempting to transform a specially-crafted malformed 12-bit-per-component JPEG image into a progressive 12-bit-per-component JPEG image using a 12-bit-per-component build of libjpeg-turbo (-DWITH_12BIT=1.) Given that the buffer overrun was fully contained within the progressive Huffman encoder structure and did not cause a segfault or other user-visible errant behavior, given that the lossless transformer (unlike the decompressor) is not generally exposed to arbitrary data exploits, and given that 12-bit-per-component builds of libjpeg-turbo are uncommon, this issue did not likely pose a security risk.

Fixed an issue whereby, when using a 12-bit-per-component build of libjpeg-turbo (-DWITH_12BIT=1), passing samples with values greater than 4095 or less than 0 to jpeg_write_scanlines() caused a buffer overrun or underrun in the RGB-to-YCbCr color converter.

Fixed a floating point exception that occurred when attempting to use the jpegtran -drop and -trim options to losslessly transform a specially-crafted malformed JPEG image.

Fixed an issue in tjBufSizeYUV2() whereby it returned a bogus result, rather than throwing an error, if the align parameter was not a power of 2. Fixed a similar issue in tjCompressFromYUV() whereby it generated a corrupt JPEG image in certain cases, rather than throwing an error, if the align parameter was not a power of 2.

Fixed an issue whereby tjDecompressToYUV2(), which is a wrapper for tjDecompressToYUVPlanes(), used the desired YUV image dimensions rather than the actual scaled image dimensions when computing the plane pointers and strides to pass to tjDecompressToYUVPlanes(). This caused a buffer overrun and subsequent segfault if the desired image dimensions exceeded the scaled image dimensions.

Fixed an issue whereby, when decompressing a 12-bit-per-component JPEG image (-DWITH_12BIT=1) using an alpha-enabled output color space such as JCS_EXT_RGBA, the alpha channel was set to 255 rather than 4095.

Fixed an issue whereby the Java version of TJBench did not accept a range of quality values.

Fixed an issue whereby, when -progressive was passed to TJBench, the JPEG input image was not transformed into a progressive JPEG image prior to decompression.

(From OE-Core rev: ce9a7ce6edc0477aab7716df183232d8057758fa)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit f779689c2c766b609be31222d71110c1a15145a8)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-24 16:41:51 +00:00
Alexander Kanavin
5bf2e07e35 bind: upgrade 9.18.10 -> 9.18.11
Stable branch update

License-update: copyright years

(From OE-Core rev: 3aea7767cc0c3eceb748699ecead324fab4284a3)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 63e8a8952c3d1b3b5c481be6bba52a3f4d65648e)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-24 16:41:51 +00:00
Alexander Kanavin
745c174582 apr-util: update 1.6.1 -> 1.6.3
Changes with APR-util 1.6.3

  *) Correct a packaging issue in 1.6.2. The contents of the release were
     correct, but the top level directory was misnamed.

Changes with APR-util 1.6.2

  *) SECURITY: CVE-2022-25147 (cve.mitre.org)
     Integer Overflow or Wraparound vulnerability in apr_base64 functions
     of Apache Portable Runtime Utility (APR-util) allows an attacker to
     write beyond bounds of a buffer.

  *) Teach configure how to find and build against MariaDB 10.2. PR 61517
     [Kris Karas <bugs-a17 moonlit-rail.com>]

  *) apr_crypto_commoncrypto: Remove stray reference to -lcrypto that
     prevented commoncrypto being enabled. [Graham Leggett]

  *) Add --tag=CC to libtool invocations. PR 62640. [Michael Osipov]

  *) apr_dbm_gdbm: Fix handling of error codes. This makes gdbm 1.14 work.
     apr_dbm_gdbm will now also return error codes starting with
     APR_OS_START_USEERR, as apr_dbm_berkleydb does, instead of always
     returning APR_EGENERAL. [Stefan Fritsch]

Drop backport.

(From OE-Core rev: da972ff634132943de71241e130bdccd3e4cfa47)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit dca707f9fecc805503e17f6db3e4c88069ac0125)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-24 16:41:51 +00:00
Alexander Kanavin
e412e58117 apr: update 1.7.0 -> 1.7.2
Changes for APR 1.7.2

  *) Correct a packaging issue in 1.7.1. The contents of the release were
     correct, but the top level directory was misnamed.

Changes for APR 1.7.1

  *) SECURITY: CVE-2022-24963 (cve.mitre.org)
     Integer Overflow or Wraparound vulnerability in apr_encode functions of
     Apache Portable Runtime (APR) allows an attacker to write beyond bounds
     of a buffer.

  *) SECURITY: CVE-2022-28331 (cve.mitre.org)
     On Windows, Apache Portable Runtime 1.7.0 and earlier may write beyond
     the end of a stack based buffer in apr_socket_sendv(). This is a result
     of integer overflow.

  *) SECURITY: CVE-2021-35940 (cve.mitre.org)
     Restore fix for out-of-bounds array dereference in apr_time_exp*() functions.
     (This issue was addressed as CVE-2017-12613 in APR 1.6.3 and
     later 1.6.x releases, but was missing in 1.7.0.)  [Stefan Sperling]

  *) configure: Fix various build issues for compilers enforcing
     strict C99 compliance.  PR 66396, 66408, 66426.
     [Florian Weimer <fweimer redhat.com>, Sam James <sam gentoo.org>]

  *) apr_atomic_read64(): Fix non-atomic read on 32-bit Windows [Ivan Zhakov]

  *) configure: Prefer posix name-based shared memory over SysV IPC.
     [Jim Jagielski]

  *) configure: Add --disable-sctp argument to forcibly disable SCTP
     support, or --enable-sctp which fails if SCTP support is not
     detected.  [Lubos Uhliarik <luhliari redhat.com>, Joe Orton]

  *) Fix handle leak in the Win32 apr_uid_current implementation.
     PR 61165. [Ivan Zhakov]

  *) Add error handling for lseek() failures in apr_file_write() and
     apr_file_writev().  [Joe Orton]

  *) Don't silently set APR_FOPEN_NOCLEANUP for apr_file_mktemp() created file
     to avoid a fd and inode leak when/if later passed to apr_file_setaside().
     [Yann Ylavic]

  *) APR's configure script uses AC_TRY_RUN to detect whether the return type
     of strerror_r is int. When cross-compiling this defaults to no.

     This commit adds an AC_CACHE_CHECK so users who cross-compile APR may
     influence the outcome with a configure variable. [Sebastian Kemper
     <sebastian_ml gmx net>]

  *) Add a cache check with which users who cross-compile APR
     can influence the outcome of the /dev/zero test by setting the variable
     ac_cv_mmap__dev_zero=yes [Sebastian Kemper <sebastian_ml gmx net>]

  *) Trick autoconf into printing the correct default prefix in the help.
     [Stefan Fritsch]

  *) Don't try to use PROC_PTHREAD by default when cross compiling.
     [Yann Ylavic]

  *) Add the ability to cross compile APR. [Graham Leggett]

  *) While cross-compiling, the tools/gen_test_char could not
     be executed at build time, use AX_PROG_CC_FOR_BUILD to
     build native tools/gen_test_char

     Support explicit libtool by variable assigning before buildcheck.sh,
     it is helpful for cross-compiling (such as libtool=aarch64-linux-libtool)
     [Hongxu Jia <hongxu.jia windriver.com>]

  *) Avoid an overflow on 32 bit platforms. [René Hjortskov Nielsen
     <r... hjortskov.dk>]

  *) Use AC_CHECK_SIZEOF, so as to support cross compiling. PR 56053.
     [Mike Frysinger <vapier gentoo.org>]

  *) Add --tag=CC to libtool invocations. PR 62640. [Michael Osipov]

  *) apr_pools: Fix pool debugging output so that creation events are
     always emitted before allocation events and subpool destruction
     events are emitted on pool clear/destroy for proper accounting.
     [Brane Čibej]

  *) apr_socket_listen: Allow larger listen backlog values on Windows 8+.
     [Evgeny Kotkov <evgeny.kotkov visualsvn.com>]

  *) Fixed: apr_get_oslevel() was returning APR_WIN_XP on Windows 10

  *) Fix attempt to free invalid memory on exit when apr_app is used
     on Windows. [Ivan Zhakov]

  *) Fix double free on exit when apr_app is used on Windows. [Ivan Zhakov]

  *) Fix a regression in apr_stat() for root path on Windows. [Ivan Zhakov]

Dropped patches have all been merged, addressed separately or are backports.

(From OE-Core rev: a308e10ef4ad9e097b025f009866eae178259781)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 3ffae93f24bb1e3954b232099153fd059cfd7daf)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-24 16:41:51 +00:00
Alexander Kanavin
559a45c9e3 lttng-tools: update 2.13.8 -> 2.13.9
2023-01-13 (National Sticker Day) LTTng modules 2.13.8
	* fix: jbd2: use the correct print format
	* Fix: in_x32_syscall was introduced in v4.7.0
	* Explicitly skip tracing x32 system calls
	* fix: kallsyms wrapper on ppc64el
	* fix: Adjust ranges for RHEL 8.6 kernels
	* fix: kvm-x86 requires CONFIG_KALLSYMS_ALL
	* fix: mm/slab_common: drop kmem_alloc & avoid dereferencing fields when not using (v6.1)

Drop determinism.patch as issue resolved upstream via linked ticket.

(From OE-Core rev: 73eee649fcdb653c8fc9ba71673e3bbdea35959f)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit cd9e72a390efb778a6278e2e6c9604ab29d6feb9)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-24 16:41:51 +00:00
Alexander Kanavin
a5e6a88829 diffutils: update 3.8 -> 3.9
NEWS

* Noteworthy changes in release 3.9 (2023-01-15) [stable]

** Bug fixes

  diff -c and -u no longer output incorrect timezones in headers
  on platforms like Solaris where struct tm lacks tm_gmtoff.
  [bug#51228 introduced in 3.4]

Drop patch as issue fixed upstream.

(From OE-Core rev: 7059580cac6798dd42c4fe0f6dd5c4db035585c0)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit e5ec5de7217de28bccf3243496df6b41ca8a1d0b)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-24 16:41:51 +00:00
Rodolfo Quesada Zumbado
7b70517743 tar: CVE-2022-48303
Fixes CVE-2022-48303 by checking Base-256 encoding is at least
2 bytes long. GNU Tar through 1.34 has a one-byte out-of-bounds
read that results in use of uninitialized memory for a conditional
jump. Exploitation to change the flow of control has not been
demonstrated. The issue occurs in from_header in list.c via a
V7 archive in which mtime has approximately 11 whitespace characters.

Reference:
https://nvd.nist.gov/vuln/detail/CVE-2022-48303

Upstream patch:
https://savannah.gnu.org/bugs/?62387
https://git.savannah.gnu.org/cgit/tar.git/patch/src/list.c?id=3da78400eafcccb97e2f2fd4b227ea40d794ede8

(From OE-Core rev: 5223319b43811228d83c2bdac3e542b9a8852dfd)

Signed-off-by: Rodolfo Quesada Zumbado <rodolfo.zumbado@windriver.com>
Signed-off-by: Joe Slater <joe.slater@windriver.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-24 16:41:51 +00:00
Michael Opdenacker
c0644f13a7 dev-manual: common-tasks.rst: add link to FOSDEM 2023 video
(From yocto-docs rev: 25d7e3a09552c355a7a98618cd1d8f8ac3387190)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
CC: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-23 12:18:37 +00:00
Steve Sakoman
8427e795cf system-requirements.rst: Add Fedora 36, AlmaLinux 8.7 & 9.1, and OpenSUSE 15.4 to list of supported distros
(From yocto-docs rev: 87f416fcbacbd4ae137c9f54eb207eae42cc7885)

Signed-off-by: Steve Sakoman <steve@sakoman.com>
Reviewed-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-23 08:17:06 +00:00
Niko Mauno
dcbf03b6d0 ref-manual: Fix invalid feature name
Replace the invalid feature name with correct one which helps to avoid
following bitbake error

  ERROR: Nothing PROVIDES 'core-image-minimal'
  core-image-minimal was skipped: 'empty-root-passwd' in IMAGE_FEATURES (added via EXTRA_IMAGE_FEATURES) is not a valid image feature.

(From yocto-docs rev: 1992c8ed063184961ddae590fe8b10137051d411)

Signed-off-by: Niko Mauno <niko.mauno@vaisala.com>
Reviewed-by: Quentin Schulz <foss+yocto@0leil.net>
Reviewed-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-22 11:25:52 +00:00
Steve Sakoman
920a16b1f2 poky.conf: Update SANITY_TESTED_DISTROS to match autobuilder
The autobuilder workers change over time, update the sanity testing list
to match the current autobuilder workers OS list.

(From meta-yocto rev: d169215c41642de15b10875110d3895106f40520)

Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-22 11:22:20 +00:00
Etienne Cordonnier
3a60944caf bitbake: siggen: Fix inefficient string concatenation
As discussed in https://stackoverflow.com/a/4435752/1710392 , CPython
has an optimization for statements in the form "a = a + b" or "a += b".
It seems that this line does not get optimized, because it has a form a = a + b + c:
data = data + "./" + f.split("/./")[1]

For that reason, it does a copy of data for each iteration, potentially copying megabytes
of data for each iteration.

Changing this line causes SignatureGeneratorBasic::get_taskhash to take 0.06 seconds
instead of 45 seconds on my test setup where SRC_URI points to a big directory.

Note that PEP8 recommends explicitely not to use this optimization which is specific to CPython:
"do not rely on CPython’s efficient implementation of in-place string concatenation for statements in the form a += b or a = a + b"

However, the PEP8 recommended form using "join()" also does not avoid the copy and takes 45 seconds in my test setup:
data = ''.join((data, "./", f.split("/./")[1]))

I have changed the other lines to also use += for consistency only, however those were in the form a = a + b
and were optimized already.

Co-authored-by: JJ Robertson <jrobertson@snap.com>
(Bitbake rev: 592ee222a1c6da42925fb56801f226884b6724ec)

Signed-off-by: Etienne Cordonnier <ecordonnier@snap.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 195750f2ca355e29d51219c58ecb2c1d83692717)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-17 15:05:12 +00:00
Mikko Rapeli
68e6eceb98 oeqa context.py: fix --target-ip comment to include ssh port number
Providing ssh port number is supported too with
"--target-ip 192.168.0.10:22".

(From OE-Core rev: 62b894d75fb3361ed4d5473ae69188bce390980a)

Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 637919b9df0abc06da5b2f9b389cf25376bd6b7c)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-15 21:47:00 +00:00
Ulrich Ölmann
e1a8911af9 lsof: fix old override syntax
(From OE-Core rev: 6712dfadb37fd22c683824995449efa844531460)

Signed-off-by: Ulrich Ölmann <u.oelmann@pengutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 052f767f85eddab9b6e5d78268d2732f4a65d446)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-15 21:47:00 +00:00
Ulrich Ölmann
7ff0e3f587 recipe_sanity: fix old override syntax
(From OE-Core rev: 6779319cfae0ea75cba3419f0aedf94838ccf80f)

Signed-off-by: Ulrich Ölmann <u.oelmann@pengutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 18eeea6fcd8ade49390a978134f51646da2f7764)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-15 21:47:00 +00:00
Harald Seiler
d9f169585c bootchart2: Fix usrmerge support
bootchart2 introduced a variable EARLY_PREFIX for supporting systems
with usrmerge [1].  Right now, the recipe here is sidestepping this
feature and trying to replicate it by overwriting other variables and
even patching the sources.  This wasn't enough, however, as there are
still problems:  For example, some setup code in the bootchart-collector
fails because it expects EARLY_PREFIX to be used [2].

Cleanup the recipe to set EARLY_PREFIX and remove the other workarounds.

[1]: 56a638ace1
[2]: 3d2136d033/collector/collector.c (L670-L672)

Fixes: 4157600d31 ("bootchart2: switch to add patch from change source in do_install")
(From OE-Core rev: 5e1dbd44d1aaaeaa9bca7d99ad21499cc57e21d3)

Signed-off-by: Harald Seiler <hws@denx.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 7031bc65b10040877392ed774a0cdddef85c12e0)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-15 21:47:00 +00:00
Richard Purdie
71ae4a2fb5 libc-locale: Fix on target locale generation
If on target locale generation is used, it fails at first boot showing
errors about a missing directory. Ensure the directory exists.

(From OE-Core rev: 99b3e9101dc931e8d68158e7cf268dd7c6fee84c)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit f2844c9f1bbb729562063d96a3d1cc9d44dafa0a)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-15 21:47:00 +00:00
Richard Purdie
4ad361341c perf: Enable debug/source packaging
This was disabled in 2014[1] due to an error message which as far
as I can tell, no longer occurs.

Having debug information and source files present will make debugging
reproducibility issues much easier so remove this line as it appears
no longer needed.

Fix up a few files which have buildpaths in them to avoid QA warnings
and reproducubility issues.

[1] OE-Core revision c1b5a262c0201faf2c6bf545d6acb32dfe383ba3

(From OE-Core rev: c1f148fa51c541bd806376f5eec93fd348e87583)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 95983108121c8b96f5659d110498bf2afc6189d9)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-15 21:47:00 +00:00
Alejandro Hernandez Samaniego
39d2f28d27 testimage: Fix error message to reflect new syntax
(From OE-Core rev: 7b37e52d95cea7759e7302afce99165b127b4abb)

Signed-off-by: Alejandro Enedino Hernandez Samaniego <alejandro@enedino.org>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit ec73d19d78e8f30ff9b817490c23bcdf8ea47c86)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-15 21:47:00 +00:00
Tobias Hagelborn
27b8dc45e8 sstate.bbclass: Fetch non-existing local .sig files if needed
For the case of a global shared state cache and a local sstate cache
with a mix of signed and un-signed entries, there is a case where
a .sig is missing locally, but may exist in the global sstate cache.

For this case, do not just fail sstate fetch, but rather backfill
the .sig file from the global sstate cache.

If this case is detected, re-run the fetch operation to get the
global .sig file (if it exists).

(From OE-Core rev: 51c7e5c9f292278f5bdf35bdbd251c50482d55dc)

Signed-off-by: Tobias Hagelborn <tobias.hagelborn@axis.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit d5ea1a5396bf9fd4303cae46bc0e042be8de8d67)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-15 21:47:00 +00:00
Louis Rannou
f05a8bc29e oeqa/selftest/locales: Add selftest for locale generation/presence
[YOCTO #9070]

Add a new selftest to validate locale generation. This selftest builds a
complete target with GLIBC_GENERATE_LOCALES, IMAGE_LINGUAS,
ENABLE_BINARY_LOCALE_GENERATION set.

(From OE-Core rev: cbb6344c583a4aaef6514120b4f38f376859368d)

Signed-off-by: Louis Rannou <lrannou@baylibre.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 53258fd810bea6475af9f908f7b712a13a02b628)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-15 21:47:00 +00:00
Changqing Li
ab54592407 apt: fix do_package_qa failure
bitbake nativesdk-apt failed with error:
ERROR: nativesdk-apt-2.4.5-r0 do_package_qa: QA Issue: nativesdk-apt installs files in /usr/local/oe-sdk-hardcoded-buildpath/sysroots/x86_64-pokysdk-linux/var/volatile, but it is expected to be empty [empty-dirs]

an empty dir apt is installed under /var/log/, fix the failure
by removing the empty dir apt as what we have done for target.
apt will create it when it does not exist.

(From OE-Core rev: 92f001f231a905e0a5c035c9de0e1ca502ba5a8c)

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 5b035a59d7915da784f1e6678ee130f30d7ceb8a)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-15 21:47:00 +00:00
Martin Jansa
bd6d3f9950 meta: remove True option to getVar and getVarFlag calls (again)
* True is default since 2016 and most layers were already updated
  not to pass this parameter where not necessary, e.g. oe-core was
  updated couple times, first in:
  https://git.openembedded.org/openembedded-core/commit/?id=7c552996597faaee2fbee185b250c0ee30ea3b5f

  Updated with the same regexp as later oe-core update:
  https://git.openembedded.org/openembedded-core/commit/?id=9f551d588693328e4d99d33be94f26684eafcaba

  with small modification to replace not only d.getVar, but also data.getVar as in e.g.:
  e.data.getVar('ERR_REPORT_USERNAME', True)

  and for getVarFlag:
  sed -e 's|\(d\.getVarFlag \?\)( \?\([^,()]*, \?[^,()]*\), \?True)|\1(\2)|g' \
      -i $(git grep -E 'getVarFlag ?\( ?([^,()]*), ?([^,()]*), ?True\)' \
          | cut -d':' -f1 \
          | sort -u)

(From OE-Core rev: f12fcb8a3f3d11c981c223569f8f40ec705c837a)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 26c74fd10614582e177437608908eb43688ab510)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-15 21:47:00 +00:00
Mingli Yu
6dbb08c7a4 glslang: branch rename master -> main
Branch name is changed from master to main.

(From OE-Core rev: 4daadcc7c8daf687b29a0958a7aaacdae45ae3cf)

Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 65ee4c1067ee5d73c198eed8ed2f1c9a60d5df96)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-15 21:47:00 +00:00
Ross Burton
a15fd63dfc httpserver: add error handler that write to the logger
(From OE-Core rev: d3656cf1f749fea837ac2e263f505fcb18965839)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit a4bcca3123685f410fc99e5cc23f2b8f39fd0a63)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-15 21:47:00 +00:00
Ross Burton
c7e7b27363 sdkext/cases/devtool: pass a logger to HTTPService
Pass our logger to the HTTPService instance so we can see the requests
and any errors.

(From OE-Core rev: 66b2875e080e9166d176cbe358906523f619ab5e)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 3485df2ff61143aac03d92300b7bac4e5d6b2427)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-15 21:47:00 +00:00
Alexander Kanavin
444863e78b oeqa/qemurunner: do not use Popen.poll() when terminating runqemu with a signal
This does not actually guarantee that the child runqemu process has completely exited:
poll() may return prematurely while the SIGTERM handler in runqemu is still running.
This thwarts the rest of the processing, and may terminate the handler before
it completes.

Use Popen.communicate() instead: this is what python documentation recommends as well:
https://docs.python.org/3/library/subprocess.html#subprocess.Popen.communicate

(From OE-Core rev: b228cdf9d4b00411d772a7b605566d33a3a1b82b)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit cd3e55606c427287f37585c5d7cde936471e52f4)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-15 21:47:00 +00:00
Khem Raj
cfc9e80853 scons.bbclass: Make MAXLINELENGTH overridable
older scons do not support MAXLINELENGTH and some packages still may be
using older scons, these recipes can clear SCONS_MAXLINELENGTH in them
and get going. Set

SCONS_MAXLINELENGTH = ""

in such recipes.

(From OE-Core rev: 625ed0898518bcd699cb16f6e1cc0813eca0c48f)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Cc: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 34de57d12c0a752f66c962d29e5335c1035db066)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-15 21:47:00 +00:00
Khem Raj
30bf380dec scons: Pass MAXLINELENGTH to scons invocation
This helps in overcoming a problem when using scons with ccache enabled.
When commands get longer, then it resorts to using response files to do
the operations e.g. @/tmp/tmp96j6icra.lnk when this response file is
inboked by compiler it works ok, however, this does not when ccache is
used to invoke the complilation. We see errors e.g.

ccache @/tmp/tmppsyij_0v.lnk
ccache: error: execute_noreturn of @/tmp/tmppsyij_0v.lnk failed: No such file or directory

Using MAXLINELENGTH setting ensures that we can use ARG_MAX to extend
the length of commandline and hence avoid using response files. This
issue is also reported in mongodb [1]

[1] https://jira.mongodb.org/browse/SERVER-38389

(From OE-Core rev: d361b7ddfb92e2b14e217377e02ca06cb936a54f)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 29558f6218f4676b459f2c78f82d245339d51c8c)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-15 21:47:00 +00:00
Richard Purdie
50c9b503bc make-mod-scripts: Ensure kernel build output is deterministic
The definitions in linux-kernel-base are needed to ensure the generated headers
are consistent. This was a small step that was missing from the previous
changes to linux-kernel-base as both kernel-devsrc and make-mod-scripts
need this information defined consistently.

(From OE-Core rev: 8153db20ebf3e3d03b754868caec4eb6968b4420)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 0d79d4883f924cef0d0ba361506ad75d441b9721)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-15 21:47:00 +00:00
Alexander Kanavin
30ba524416 gdk-pixbuf: do not use tools from gdk-pixbuf-native when building tests
The patch that allows to do so has not been accepted upstream, and wasn't correctly
working as it was running a native executable (gdk-pixbuf-query-loaders) with target .so plugins.

On the other hand, out of 20+ (currently 23) tests only three require
running binaries at build time to produce special test-specific input data:

cve-2015-4491
pixbuf-pixdata
pixbuf-resource

So let's simply omit these from the build: this can be done with a far
less invasive patch which has a chance of being accepted upstream.

gdk-pixbuf-print-mime-types is no longer installed
(the replaced patch was doing that).

(From OE-Core rev: 467a826b9b55f81c74476f57fa0d423701510af5)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 0d926508e75095eb446699b612729d0243eacc91)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-15 21:47:00 +00:00
Pawel Zalewski
3cc6ed84cb classes/fs-uuid: Fix command output decoding issue
The default return value from subprocess.check_output is an encoded byte.
The applied fix will decode the value to a string.

(From OE-Core rev: 2bde03a1a58be6636d36229a75450e08492e7a89)

Signed-off-by: Pawel Zalewski <pzalewski@thegoodpenguin.co.uk>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 046769fa952a511865c416b80d10af6287147fb7)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-15 21:47:00 +00:00
Ross Burton
6fba96cb03 buildtools-tarball: set pkg-config search path
The buildtools-tarball includes a native sysroot with .pc files, and
in the case of buildtools-extended-tarball a pkg-config binary too.

If we're using the host pkg-config then it doesn't know to search in the
native sysroot.  If we're using our pkg-config then it searches in the
build-time prefix and not the actual SDK installation location.

Neither of these are correct, so set PKG_CONFIG_LIBDIR to search:
- The native sysroot
- The host pkg-config's default search path, if present
- Falling back to /usr/lib/pkgconfig, if not

In an ideal world this would be handled by the generic toolchain script,
but that is slightly more involved.

[ YOCTO #15007 ]

(From OE-Core rev: 407e859edabb4e3527740a96a0dc8e0383c77f99)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 8f768a3f4c7ff477e994d60800e5a1b83891615a)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-15 21:47:00 +00:00
Alexander Kanavin
98ba4716e9 vulkan-samples: branch rename master -> main
(From OE-Core rev: 4037cb9cad74394eddf7a676060a9311282d2a89)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 74bf535ca5cbcfb38c18775ece863d53dd216008)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-15 21:47:00 +00:00
Arnout Vandecappelle
36389ac010 python3-pytest: depend on python3-tomli instead of python3-toml
Since version 7.0.0 [1], pytest switched from the toml package to the
tomli package for parsing pyproject.toml configuration files [2].

This change is not immediately noticable during tests, because the
toml/tomli module is only important if a pyproject.toml is actually
present in a project.

[1] https://docs.pytest.org/en/latest/changelog.html#pytest-7-0-0rc1-2021-12-06
[2] https://github.com/pytest-dev/pytest/issues/8789

(From OE-Core rev: 04e31f0035ad29afc3cdcf9730cd76cd725b8a20)

Signed-off-by: Arnout Vandecappelle <arnout@mind.be>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-15 21:47:00 +00:00
Richard Purdie
3384c7fb3f kernel/linux-kernel-base: Fix kernel build artefact determinism issues
With the 6.1 kernel we've seen reproducibility/determinism issues where the kernel
seems to rebuild headers referencing the hostname or local user. kernel-devsrc
building after the kernel seemed to trigger it in some cases.

Moving the definitions to the bbclass used by all the kernel recipe code including
kernel-devsrc seems to be the best way to ensure this doesn't happen.

(From OE-Core rev: 0fe1eaf485c2470a4578e19278cc60cf1406fe77)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 60681baa97daf4f3856453c34d6be08b6771a81b)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-15 21:47:00 +00:00
Bruce Ashfield
74855e55af linux-yocto/5.15: update to v5.15.91
Updating  to the latest korg -stable release that comprises
the following commits:

    9cf4111cdf94 Linux 5.15.91
    14cc13e433e1 perf/x86/amd: fix potential integer overflow on shift of a int
    033636b32258 netfilter: conntrack: unify established states for SCTP paths
    0b08201158f1 x86/i8259: Mark legacy PIC interrupts with IRQ_LEVEL
    b57740036792 block: fix and cleanup bio_check_ro
    1d152437e46f kbuild: Allow kernel installation packaging to override pkg-config
    a1964688582d cpufreq: governor: Use kobject release() method to free dbs_data
    7c513ced0dec cpufreq: Move to_gov_attr_set() to cpufreq.h
    cf7a08622d2b Revert "Input: synaptics - switch touchpad on HP Laptop 15-da3001TU to RMI mode"
    53c5d61198c1 tools: gpio: fix -c option of gpio-event-mon
    a7d1a303ff0f treewide: fix up files incorrectly marked executable
    046fe53907c5 net: mdio-mux-meson-g12a: force internal PHY off on mux switch
    86bdccde7842 net/tg3: resolve deadlock in tg3_reset_task() during EEH
    4364bf79d829 thermal: intel: int340x: Add locking to int340x_thermal_get_trip_type()
    e69c3a0d9d3d net: mctp: mark socks as dead on unhash, prevent re-add
    954cc215cd7a net: ravb: Fix possible hang if RIS2_QFF1 happen
    0f7218bf0a00 net: ravb: Fix lack of register setting after system resumed for Gen3
    3db4ca2938eb ravb: Rename "no_ptp_cfg_active" and "ptp_cfg_active" variables
    621f296f11cf gpio: mxc: Unlock on error path in mxc_flip_edge()
    071a8392869f nvme: fix passthrough csi check
    614471b7f7cd riscv/kprobe: Fix instruction simulation of JALR
    3391bd42351b sctp: fail if no bound addresses can be used for a given scope
    b0784860e145 net/sched: sch_taprio: do not schedule in taprio_reset()
    d2d3ab1b1de3 netrom: Fix use-after-free of a listening socket.
    9df5ab02c65e netfilter: conntrack: fix vtag checks for ABORT/SHUTDOWN_COMPLETE
    ca3cf947760d ipv4: prevent potential spectre v1 gadget in fib_metrics_match()
    d50e7348b44f ipv4: prevent potential spectre v1 gadget in ip_metrics_convert()
    ead06e3449f2 netlink: annotate data races around sk_state
    c4eb423c6b9b netlink: annotate data races around dst_portid and dst_group
    fac9b69a9370 netlink: annotate data races around nlk->portid
    8a13595600f7 netfilter: nft_set_rbtree: skip elements in transaction from garbage collection
    2bf1435fa19d netfilter: nft_set_rbtree: Switch to node list walk for overlap detection
    e481654426b6 drm/i915/selftest: fix intel_selftest_modify_policy argument types
    66689a72ba73 net: fix UaF in netns ops registration error path
    41b74e95f297 netlink: prevent potential spectre v1 gadgets
    2f29d780bd69 i2c: designware: use casting of u64 in clock multiplication to avoid overflow
    b03f7ed9af6e scsi: ufs: core: Fix devfreq deadlocks
    858d7e9218e1 net: mana: Fix IRQ name - add PCI and queue number
    bff5243bd326 EDAC/qcom: Do not pass llcc_driv_data as edac_device_ctl_info's pvt_info
    5eedf4568d34 EDAC/device: Respect any driver-supplied workqueue polling value
    4b7dfd0a6811 ARM: 9280/1: mm: fix warning on phys_addr_t to void pointer assignment
    7807871f28f8 ipv6: fix reachability confirmation with proxy_ndp
    f9a22f6fa187 thermal: intel: int340x: Protect trip temperature from concurrent updates
    036093c08d83 KVM: arm64: GICv4.1: Fix race with doorbell on VPE activation/deactivation
    c56683c0623e KVM: x86/vmx: Do not skip segment attributes if unusable bit is set
    e91308e63710 ovl: fail on invalid uid/gid mapping at copy up
    33a9657d67a4 ksmbd: limit pdu length size according to connection status
    8d83a758ee21 ksmbd: downgrade ndr version error message to debug
    87a7f38a9058 ksmbd: do not sign response to session request for guest login
    4210c3555db4 ksmbd: add max connections parameter
    cc6742b160fa ksmbd: add smbd max io size parameter
    3c8a5648a591 i2c: mv64xxx: Add atomic_xfer method to driver
    e619ab4fb3e9 i2c: mv64xxx: Remove shutdown method from driver
    4b83bc6f87ee cifs: Fix oops due to uncleared server->smbd_conn in reconnect
    89042d3d8542 ftrace/scripts: Update the instructions for ftrace-bisect.sh
    592ba7116fa6 trace_events_hist: add check for return value of 'create_hist_field'
    b0af180514ed tracing: Make sure trace_printk() can output as soon as it can be used
    91135d723388 module: Don't wait for GOING modules
    85ee9919add9 KVM: SVM: fix tsc scaling cache logic
    f0227eca972c scsi: hpsa: Fix allocation size for scsi_host_alloc()
    e5af9a458a13 drm/amdgpu: complete gfxoff allow signal during suspend without delay
    62b9e9f92109 Bluetooth: hci_sync: cancel cmd_timer if hci_open failed
    21998acd31fb exit: Use READ_ONCE() for all oops/warn limit reads
    e82b1598eb2c docs: Fix path paste-o for /sys/kernel/warn_count
    1c51698ad6f6 panic: Expose "warn_count" to sysfs
    0691ddae56cd panic: Introduce warn_limit
    7b98914a6c26 panic: Consolidate open-coded panic_on_warn checks
    fc636b136272 exit: Allow oops_limit to be disabled
    339f8a8e5211 exit: Expose "oops_count" to sysfs
    f80fb0001f11 exit: Put an upper limit on how often we can oops
    2857ce7f475f panic: Separate sysctl logic from CONFIG_SMP
    e156d4dcb036 ia64: make IA64_MCA_RECOVERY bool instead of tristate
    9024f772248e csky: Fix function name in csky_alignment() and die()
    2ea497d153da h8300: Fix build errors from do_exit() to make_task_dead() transition
    a452ca0228bb hexagon: Fix function name in die()
    3b39f47474a2 objtool: Add a missing comma to avoid string concatenation
    39a26d872178 exit: Add and use make_task_dead.
    b5c1acaa43b6 kasan: no need to unset panic_on_warn in end_report()
    b5c967dc6822 ubsan: no need to unset panic_on_warn in ubsan_epilogue()
    e4cd2100324e panic: unset panic_on_warn inside panic()
    191f1f1f6a42 kernel/panic: move panic sysctls to its own file
    654f6e851271 sysctl: add a new register_sysctl_init() interface
    3aa991cde94b fs: reiserfs: remove useless new_opts in reiserfs_remount
    d830531f8fff x86: ACPI: cstate: Optimize C3 entry on AMD CPUs
    1f5476223100 drm/i915: Remove unused variable
    6e1012709320 Revert "selftests/bpf: check null propagation only neither reg is PTR_TO_BTF_ID"
    619ee31b9641 drm/i915: Allow switching away via vga-switcheroo if uninitialized
    ea435ba9eb85 firmware: coreboot: Check size of table entry and use flex-array
    a4e70bcf2e87 lockref: stop doing cpu_relax in the cmpxchg loop
    b0ee61f5eeab platform/x86: asus-nb-wmi: Add alternate mapping for KEY_SCREENLOCK
    e8d2f7f56691 platform/x86: touchscreen_dmi: Add info for the CSL Panther Tab HD
    2e0a8bacbe1d r8152: add vendor/device ID pair for Microsoft Devkit
    d4b717e34dac scsi: hisi_sas: Set a port invalid only if there are no devices attached when refreshing port id
    e15750aa28a6 KVM: s390: interrupt: use READ_ONCE() before cmpxchg()
    9300c65207f3 spi: spidev: remove debug messages that access spidev->spi without locking
    48ff5d381298 ASoC: fsl-asoc-card: Fix naming of AC'97 CODEC widgets
    5001ffb31d63 ASoC: fsl_ssi: Rename AC'97 streams to avoid collisions with AC'97 CODEC
    b76120e20683 cpufreq: armada-37xx: stop using 0 as NULL pointer
    eda26fa8560d perf/x86/intel/uncore: Add Emerald Rapids
    544f9d4e9d8a perf/x86/msr: Add Emerald Rapids
    b1eb964d785f s390: expicitly align _edata and _end symbols on page boundary
    fb45ec279b00 s390/debug: add _ASM_S390_ prefix to header guard
    cd488abed97e drm: Add orientation quirk for Lenovo ideapad D330-10IGL
    ff7ab370b855 net: usb: cdc_ether: add support for Thales Cinterion PLS62-W modem
    d6935084e444 ASoC: fsl_micfil: Correct the number of steps on SX controls
    ac07316b2d57 cpufreq: Add SM6375 to cpufreq-dt-platdev blocklist
    f0e6dcae1491 kcsan: test: don't put the expect array on the stack
    c51c0b37543a cpufreq: Add Tegra234 to cpufreq-dt-platdev blocklist
    28e4e8ca9e95 scsi: iscsi: Fix multiple iSCSI session unbind events sent to userspace
    14b1df2004fe tcp: fix rate_app_limited to default to 1
    120b8e527e07 net: stmmac: enable all safety features by default
    a7d736cc3c6c thermal: core: call put_device() only after device_register() fails
    ed08f958e481 thermal/core: fix error code in __thermal_cooling_device_register()
    108a6f91e276 thermal: Validate new state in cur_state_store()
    bd0ea77edf46 thermal/core: Rename 'trips' to 'num_trips'
    521c6ebd4f6e thermal/core: Remove duplicate information when an error occurs
    6504afa2632a net: dsa: microchip: ksz9477: port map correction in ALU table entry register
    18346db1854a selftests/net: toeplitz: fix race on tpacket_v3 block close
    caa28c7c83e3 driver core: Fix test_async_probe_init saves device in wrong array
    89c62cee5d4d w1: fix WARNING after calling w1_process()
    3d0eafe413a7 w1: fix deadloop in __w1_remove_master_device()
    7701a4bd45c1 device property: fix of node refcount leak in fwnode_graph_get_next_endpoint()
    ed0d8f731e0b ptdma: pt_core_execute_cmd() should use spinlock
    29e9c67bf327 octeontx2-pf: Fix the use of GFP_KERNEL in atomic context on rt
    03bff5819ad3 tcp: avoid the lookup process failing to get sk in ehash table
    5bd69d2ea897 nvme-pci: fix timeout request state check
    39178dfe8677 drm/amd/display: fix issues with driver unload
    9a5a537e1444 phy: phy-can-transceiver: Skip warning if no "max-bitrate"
    4095065b59bc dmaengine: xilinx_dma: call of_node_put() when breaking out of for_each_child_of_node()
    5bd3c1c1bce1 cifs: fix potential deadlock in cache_refresh_path()
    1a2a47b85cab HID: betop: check shape of output reports
    b2a730974373 l2tp: prevent lockdep issue in l2tp_tunnel_register()
    edf0e509cedd virtio-net: correctly enable callback during start_xmit
    d3401c7624ec net: macb: fix PTP TX timestamp failure due to packet padding
    71c601965532 dmaengine: Fix double increment of client_count in dma_chan_get()
    1e7919f0b156 drm/panfrost: fix GENERIC_ATOMIC64 dependency
    a1b3e50e2140 net: mlx5: eliminate anonymous module_init & module_exit
    09e3fb6f53bc net/mlx5: E-switch, Fix setting of reserved fields on MODIFY_SCHEDULING_ELEMENT
    01a6e108101f net: ipa: disable ipa interrupt during suspend
    98aec50ff7f6 Bluetooth: Fix possible deadlock in rfcomm_sk_state_change
    0e59f60b74cd usb: gadget: f_fs: Ensure ep0req is dequeued before free_request
    ae8e136bcaae usb: gadget: f_fs: Prevent race during ffs_ep0_queue_wait
    f25cd2b731d7 HID: revert CHERRY_MOUSE_000C quirk
    39483511fd59 pinctrl: rockchip: fix mux route data for rk3568
    1dae88a0b4df net: stmmac: fix invalid call to mdiobus_get_phy()
    6716838bf801 HID: check empty report_list in bigben_probe()
    2b4956825436 HID: check empty report_list in hid_validate_values()
    ad67de330d83 net: mdio: validate parameter addr in mdiobus_get_phy()
    486912937933 net: usb: sr9700: Handle negative len
    2827c4eb429d octeontx2-pf: Avoid use of GFP_KERNEL in atomic context
    77e8ed776cdb l2tp: close all race conditions in l2tp_tunnel_register()
    af22d2c0b47f l2tp: convert l2tp_tunnel_list to idr
    22c7d45ca3d7 l2tp: Don't sleep and disable BH under writer-side sk_callback_lock
    87d9205d9a57 l2tp: Serialize access to sk_user_data with sk_callback_lock
    c53acbf2facf net/sched: sch_taprio: fix possible use-after-free
    40516d042b65 net: stmmac: Fix queue statistics reading
    620aa67f8059 pinctrl: rockchip: fix reading pull type on rk3568
    ddca674af1ba pinctrl/rockchip: add error handling for pull/drive register getters
    259ab8fb8c7e pinctrl/rockchip: Use temporary variable for struct device
    8cbf932c5c40 wifi: rndis_wlan: Prevent buffer overflow in rndis_query_oid
    f792d26e5ce7 gpio: mxc: Always set GPIOs used as interrupt source to INPUT mode
    8335f877efe7 gpio: mxc: Protect GPIO irqchip RMW with bgpio spinlock
    fb4fb3d267c9 gpio: use raw spinlock for gpio chip shadowed data
    52e3eebfe670 sch_htb: Avoid grafting on htb_destroy_class_offload when destroying htb
    8232e5a84d25 net: enetc: avoid deadlock in enetc_tx_onestep_tstamp()
    95347e41cac6 net: wan: Add checks for NULL for utdm in undo_uhdlc_init and unmap_si_regs
    7f129927feaf net: nfc: Fix use-after-free in local_cleanup()
    397aaac88469 phy: rockchip-inno-usb2: Fix missing clk_disable_unprepare() in rockchip_usb2phy_power_on()
    01bdcc73dbe7 bpf: Fix pointer-leak due to insufficient speculative store bypass mitigation
    261e2f12b653 amd-xgbe: Delay AN timeout during KR training
    a8cf4af5441f amd-xgbe: TX Flow Ctrl Registers are h/w ver dependent
    8e897cb67421 ARM: dts: at91: sam9x60: fix the ddr clock for sam9x60
    0a27dcd53430 NFSD: fix use-after-free in nfsd4_ssc_setup_dul()
    24af570c99b4 phy: ti: fix Kconfig warning and operator precedence
    631fc3668539 arm64: dts: qcom: msm8992-libra: Fix the memory map
    dda20ffec8fb arm64: dts: qcom: msm8992-libra: Add CPU regulators
    37ba5e929349 arm64: dts: qcom: msm8992: Don't use sfpb mutex
    bab87524f6d4 PM: AVS: qcom-cpr: Fix an error handling path in cpr_probe()
    b7a479c76481 affs: initialize fsdata in affs_truncate()
    623d1116898e IB/hfi1: Remove user expected buffer invalidate race
    47d5fc0dcd57 IB/hfi1: Immediately remove invalid memory from hardware
    85caef2cfd1d IB/hfi1: Fix expected receive setup error exit issues
    cb193984d424 IB/hfi1: Reserve user expected TIDs
    891ddfae39f1 IB/hfi1: Reject a zero-length user expected buffer
    362c9489720b RDMA/core: Fix ib block iterator counter overflow
    e26c571c3b0d tomoyo: fix broken dependency on *.conf.default
    7dfe83ecc341 firmware: arm_scmi: Harden shared memory access in fetch_notification
    a653dbb70cce firmware: arm_scmi: Harden shared memory access in fetch_response
    caffa7fed139 EDAC/highbank: Fix memory leak in highbank_mc_probe()
    95de286200b2 reset: uniphier-glue: Fix possible null-ptr-deref
    4773a8cf9a53 reset: uniphier-glue: Use reset_control_bulk API
    7b33accc8ff9 soc: imx8m: Fix incorrect check for of_clk_get_by_name()
    f07427f8d9c6 arm64: dts: imx8mm-venice-gw7901: fix USB2 controller OC polarity
    c4cb73febe35 HID: intel_ish-hid: Add check for ishtp_dma_tx_map
    25f97c9883bf ARM: imx: add missing of_node_put()
    3e9d79ded9d6 arm64: dts: imx8mm-beacon: Fix ecspi2 pinmux
    538135076191 ARM: dts: imx6qdl-gw560x: Remove incorrect 'uart-has-rtscts'
    0e4bba1656a4 ARM: dts: imx7d-pico: Use 'clock-frequency'
    108cf4c6d510 ARM: dts: imx6ul-pico-dwarf: Use 'clock-frequency'
    207c9e64edba arm64: dts: imx8mp-phycore-som: Remove invalid PMIC property
    7ce380fe7574 dmaengine: ti: k3-udma: Do conditional decrement of UDMA_CHAN_RT_PEER_BCNT_REG
    edba9b7a7037 memory: mvebu-devbus: Fix missing clk_disable_unprepare in mvebu_devbus_probe()
    e66f6949da63 memory: atmel-sdramc: Fix missing clk_disable_unprepare in atmel_ramc_probe()
    eda11ab55614 memory: tegra: Remove clients SID override programming
    aabd5ba7e9b0 Linux 5.15.90
    4b6f8263e931 io_uring/rw: remove leftover debug statement
    b10acfcd61b2 io_uring/rw: ensure kiocb_end_write() is always called
    124fb13cc757 io_uring: fix double poll leak on repolling
    e944f1e37b97 io_uring: Clean up a false-positive warning from GCC 9.3.0
    940e8922c1f5 mm/khugepaged: fix collapse_pte_mapped_thp() to allow anon_vma
    e83cc8a780e6 soc: qcom: apr: Make qcom,protection-domain optional again
    982c8b1e95c0 Revert "wifi: mac80211: fix memory leak in ieee80211_if_add()"
    40a4797e08ec block: mq-deadline: Rename deadline_is_seq_writes()
    3abf10b4c473 net/mlx5: fix missing mutex_unlock in mlx5_fw_fatal_reporter_err_work()
    1aab00aa4192 net/ulp: use consistent error code when blocking ULP
    2e4c95a404f3 io_uring/net: fix fast_iov assignment in io_setup_async_msg()
    311b298a3337 io_uring: io_kiocb_update_pos() should not touch file for non -1 offset
    487a086595b5 tracing: Use alignof__(struct {type b;}) instead of offsetof()
    430443f8565e x86/fpu: Use _Alignof to avoid undefined behavior in TYPE_ALIGN
    f114717dfa74 Revert "drm/amdgpu: make display pinning more flexible (v2)"
    7a993c1be595 efi: rt-wrapper: Add missing include
    de2af657cab9 arm64: efi: Execute runtime services from a dedicated stack
    9cca110cf8bb fs/ntfs3: Fix attr_punch_hole() null pointer derenference
    d4d112e5c458 drm/amdgpu: drop experimental flag on aldebaran
    c82fa690da7c drm/amd/display: Fix COLOR_SPACE_YCBCR2020_TYPE matrix
    88c33752248e drm/amd/display: Calculate output_color_space after pixel encoding adjustment
    87e605b16111 drm/amd/display: Fix set scaling doesn's work
    8687b8cdc3a3 drm/i915/display: Check source height is > 0
    5d961791663d drm/i915: re-disable RC6p on Sandy Bridge
    e9a7ec188b26 mei: me: add meteor lake point M DID
    eb0421d90f91 gsmi: fix null-deref in gsmi_get_variable
    b8d99cda526b serial: atmel: fix incorrect baudrate setup
    b85498385afc serial: amba-pl011: fix high priority character transmission in rs486 mode
    0f150134dd79 dmaengine: idxd: Let probe fail when workqueue cannot be enabled
    1e8c127c2e81 dmaengine: tegra210-adma: fix global intr clear
    473e2281f712 dmaengine: lgm: Move DT parsing after initialization
    73337724cbd8 serial: pch_uart: Pass correct sg to dma_unmap_sg()
    4307a41cbc44 dt-bindings: phy: g12a-usb3-pcie-phy: fix compatible string documentation
    c9d55f564a69 dt-bindings: phy: g12a-usb2-phy: fix compatible string documentation
    78aa45bb7a42 usb-storage: apply IGNORE_UAS only for HIKSEMI MD202 on RTL9210
    a69c8dfb85b4 usb: gadget: f_ncm: fix potential NULL ptr deref in ncm_bitrate()
    1ab67e87b178 usb: gadget: g_webcam: Send color matching descriptor per frame
    b08167d8f07c usb: typec: altmodes/displayport: Fix pin assignment calculation
    7fb1322e7a8c usb: typec: altmodes/displayport: Add pin assignment helper
    59f9ee379640 usb: typec: tcpm: Fix altmode re-registration causes sysfs create fail
    a1c8a5c2f8aa usb: host: ehci-fsl: Fix module alias
    f073d10cd5a7 usb: cdns3: remove fetched trb from cache before dequeuing
    73f4bde9730f USB: serial: cp210x: add SCALANCE LPE-9000 device id
    a2e075f40122 USB: gadgetfs: Fix race between mounting and unmounting
    2da67bff29ab tty: fix possible null-ptr-defer in spk_ttyio_release
    cb53a3366eb2 tty: serial: qcom-geni-serial: fix slab-out-of-bounds on RX FIFO buffer
    f322dd2e4a1c staging: mt7621-dts: change some node hex addresses to lower case
    6508788b2c3b bpf: restore the ebpf program ID for BPF_AUDIT_UNLOAD and PERF_BPF_EVENT_PROG_UNLOAD
    7b122c33bd31 riscv: dts: sifive: fu740: fix size of pcie 32bit memory
    701f9c3da692 thunderbolt: Use correct function to calculate maximum USB3 link rate
    5b1b03a3d3e4 cifs: do not include page data when checking signature
    64287cd456a2 btrfs: fix race between quota rescan and disable leading to NULL pointer deref
    f2e0e1615d65 btrfs: do not abort transaction on failure to write log tree when syncing log
    f653abe6195c mmc: sdhci-esdhc-imx: correct the tuning start tap and step setting
    9881436f01ce mmc: sunxi-mmc: Fix clock refcount imbalance during unbind
    33bd0db750fc ACPI: PRM: Check whether EFI runtime is available
    87e1ee6058e5 comedi: adv_pci1760: Fix PWM instruction handling
    b5d24a8e4a61 usb: core: hub: disable autosuspend for TI TUSB8041
    61a0890cb95a misc: fastrpc: Fix use-after-free race condition for maps
    1b7b7bb400dd misc: fastrpc: Don't remove map on creater_process and device_release
    e7e41fcf909f USB: misc: iowarrior: fix up header size for USB_DEVICE_ID_CODEMERCS_IOW100
    f3de34d90d90 staging: vchiq_arm: fix enum vchiq_status return types
    16d09c4bc99b USB: serial: option: add Quectel EM05CN modem
    34d769f0c607 USB: serial: option: add Quectel EM05CN (SG) modem
    768d56ed2411 USB: serial: option: add Quectel EC200U modem
    829916f069a7 USB: serial: option: add Quectel EM05-G (RS) modem
    eb8808f769c6 USB: serial: option: add Quectel EM05-G (CS) modem
    6e0430db195e USB: serial: option: add Quectel EM05-G (GR) modem
    f01aefe374d3 prlimit: do_prlimit needs to have a speculation check
    418e2c756d65 xhci: Detect lpm incapable xHC USB3 roothub ports from ACPI tables
    10cb7d53be5f usb: acpi: add helper to check port lpm capability using acpi _DSM
    1818e2a97dab xhci: Add a flag to disable USB3 lpm on a xhci root port level.
    8911ff796336 xhci: Add update_hub_device override for PCI xHCI hosts
    c462ac871f49 xhci: Fix null pointer dereference when host dies
    f39c813af0b6 usb: xhci: Check endpoint is valid before dereferencing it
    0f175cebc46c xhci-pci: set the dma max_seg_size
    89a410dbd0f1 io_uring/rw: defer fsnotify calls to task context
    05d69b372b3b io_uring: do not recalculate ppos unnecessarily
    ff8a070253d9 io_uring: update kiocb->ki_pos at execution time
    b7958caf415b io_uring: remove duplicated calls to io_kiocb_ppos
    86e2d6901a37 io_uring: ensure that cached task references are always put on exit
    30b90689344b io_uring: fix async accept on O_NONBLOCK sockets
    a79b13f24967 io_uring: allow re-poll if we made progress
    3c1a3d02690f io_uring: support MSG_WAITALL for IORING_OP_SEND(MSG)
    390b8816317f io_uring: add flag for disabling provided buffer recycling
    9b7b0f2116d5 io_uring: ensure recv and recvmsg handle MSG_WAITALL correctly
    cdc68e714d0b io_uring: improve send/recv error handling
    ccf06b5a981c io_uring: pass in EPOLL_URING_WAKE for eventfd signaling and wakeups
    77baf39227c0 eventfd: provide a eventfd_signal_mask() helper
    a2d8ff00a7b0 eventpoll: add EPOLL_URING_WAKE poll wakeup flag
    a9aa4aa7a5b2 io_uring: don't gate task_work run on TIF_NOTIFY_SIGNAL
    bd9a23a4bb8a hugetlb: unshare some PMDs when splitting VMAs
    393d9e3ed10c drm/amd: Delay removal of the firmware framebuffer
    865e244e06c7 drm/amdgpu: disable runtime pm on several sienna cichlid cards(v2)
    560373fb1e9a ALSA: hda/realtek: fix mute/micmute LEDs don't work for a HP platform
    26264260a80b ALSA: hda/realtek: fix mute/micmute LEDs for a HP ProBook
    1026756321bd efi: fix userspace infinite retry read efivars after EFI runtime services page fault
    45627a1a6450 nilfs2: fix general protection fault in nilfs_btree_insert()
    350d66d9e730 zonefs: Detect append writes at invalid locations
    5054d001ffaf Add exception protection processing for vd in axi_chan_handle_err function
    a12fd43bd175 wifi: mac80211: sdata can be NULL during AMPDU start
    f96a6c009ed9 wifi: brcmfmac: fix regression for Broadcom PCIe wifi devices
    908d1742b6e6 Bluetooth: hci_qca: Fix driver shutdown on closed serdev
    7530fbc05ff5 fbdev: omapfb: avoid stack overflow warning
    e1df7f0b27c2 perf/x86/rapl: Treat Tigerlake like Icelake
    2c129e868992 f2fs: let's avoid panic if extent_tree is not created
    58bac7440251 x86/asm: Fix an assembler warning with current binutils
    fdb4a70bb768 btrfs: always report error in run_one_delayed_ref()
    f641067ea2af RDMA/srp: Move large values to a new enum for gcc13
    793f8ac21874 r8169: move rtl_wol_enable_rx() and rtl_prepare_power_down()
    dc072762f900 net/ethtool/ioctl: return -EOPNOTSUPP if we have no phy stats
    308d24d87599 vduse: Validate vq_num in vduse_validate_config()
    8e1eb926a093 virtio_pci: modify ENOENT to EINVAL
    64a6f3689d0d tools/virtio: initialize spinlocks in vring_test.c
    95fc28a8e921 selftests/bpf: check null propagation only neither reg is PTR_TO_BTF_ID
    d4a9d2944f2e pNFS/filelayout: Fix coalescing test for single DS
    6a3319af6b36 btrfs: fix trace event name typo for FLUSH_DELAYED_REFS

(From OE-Core rev: 03be035016d95fb7d3c7cbe535e187971a6b8d1e)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 60c0f2100303bce62711c05efe9c8b775a804045)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-15 21:47:00 +00:00
Bruce Ashfield
c557faca67 linux-yocto/5.15: update to v5.15.89
Updating  to the latest korg -stable release that comprises
the following commits:

    3bcc86eb3ed9 Linux 5.15.89
    37c18ef49ec3 pinctrl: amd: Add dynamic debugging for active GPIOs
    a5841b81adfa Revert "usb: ulpi: defer ulpi_register on ulpi_read_id timeout"
    7ec9a45fc4ee block: handle bio_split_to_limits() NULL return
    ba86db02d408 io_uring/io-wq: only free worker if it was allocated for creation
    bb135bcc9499 io_uring/io-wq: free worker if task_work creation is canceled
    63c2fa09b856 scsi: mpt3sas: Remove scsi_dma_map() error messages
    e2ea55564229 efi: fix NULL-deref in init error path
    94b6cf84db42 arm64: cmpxchg_double*: hazard against entire exchange variable
    3891fa4982b9 arm64: atomics: remove LL/SC trampolines
    61e86339af2a arm64: atomics: format whitespace consistently
    ed4629d1e968 io_uring: lock overflowing for IOPOLL
    fbf501514182 KVM: x86: Do not return host topology information from KVM_GET_SUPPORTED_CPUID
    ee16841134be Documentation: KVM: add API issues section
    b8f3b3cffb4a mm: Always release pages to the buddy allocator in memblock_free_late().
    d2dc110deabe platform/surface: aggregator: Add missing call to ssam_request_sync_free()
    cfd5978411ed igc: Fix PPS delta between two synchronized end-points
    0bf52601ced1 perf build: Properly guard libbpf includes
    205f35eee7be net/mlx5e: Don't support encap rules with gbp option
    0526fc9330fe net/mlx5: Fix ptp max frequency adjustment range
    9e2c38827cdc net/sched: act_mpls: Fix warning during failed attribute validation
    e3bb44beafde tools/nolibc: fix the O_* fcntl/open macro definitions for riscv
    1e6ec75bb3b5 tools/nolibc: restore mips branch ordering in the _start block
    bd0431a66c39 tools/nolibc: Remove .global _start from the entry point code
    a77c54f5b50c tools/nolibc/arch: mark the _start symbol as weak
    da51e086d154 tools/nolibc/arch: split arch-specific code into individual files
    8591e788bea3 tools/nolibc/types: split syscall-specific definitions into their own files
    4fceecdeaa8a tools/nolibc/std: move the standard type definitions to std.h
    1792136f228e tools/nolibc: use pselect6 on RISCV
    487386a49e01 tools/nolibc: x86-64: Use `mov $60,%eax` instead of `mov $60,%rax`
    27af4f2260cd tools/nolibc: x86: Remove `r8`, `r9` and `r10` from the clobber list
    a60b24192b1f af_unix: selftest: Fix the size of the parameter to connect()
    39ae73e58111 nfc: pn533: Wait for out_urb's completion in pn533_usb_send_frame()
    f6003784b1f6 hvc/xen: lock console list traversal
    79c58b74244d octeontx2-af: Fix LMAC config in cgx_lmac_rx_tx_enable
    303d06288122 tipc: fix unexpected link reset due to discovery messages
    e79d0f97cc6e ALSA: usb-audio: Relax hw constraints for implicit fb sync
    c9557906bd3b ALSA: usb-audio: Make sure to stop endpoints before closing EPs
    83e758105bc8 ASoC: wm8904: fix wrong outputs volume after power reactivation
    7c26d218729b scsi: ufs: core: WLUN suspend SSU/enter hibern8 fail recovery
    513fdf0b8e20 scsi: ufs: Stop using the clock scaling lock in the error handler
    13259b60b71b scsi: mpi3mr: Refer CONFIG_SCSI_MPI3MR in Makefile
    470f6a9175f1 regulator: da9211: Use irq handler when ready
    24107ad469df x86/resctrl: Fix task CLOSID/RMID update race
    cd3da505fb35 EDAC/device: Fix period calculation in edac_device_reset_delay_period()
    ab0d02c53a60 x86/boot: Avoid using Intel mnemonics in AT&T syntax asm
    a90d339f1f66 powerpc/imc-pmu: Fix use of mutex in IRQs disabled section
    511cf17b2447 netfilter: ipset: Fix overflow before widen in the bitmap_ip_create() function.
    b22faa21b623 sched/core: Fix use-after-free bug in dup_user_cpus_ptr()
    d766ccadbe85 iommu/mediatek-v1: Fix an error handling path in mtk_iommu_v1_probe()
    c929a230c844 iommu/iova: Fix alloc iova overflows issue
    4b51aa263ae4 usb: ulpi: defer ulpi_register on ulpi_read_id timeout
    9a8bf443f6a2 bus: mhi: host: Fix race between channel preparation and M0 event
    456e3794e08a ipv6: raw: Deduct extension header length in rawv6_push_pending_frames
    4c93422a54cd ixgbe: fix pci device refcount leak
    e97da5d97a97 platform/x86: sony-laptop: Don't turn off 0x153 keyboard backlight during probe
    f3b1e04daf86 dt-bindings: msm/dsi: Don't require vcca-supply on 14nm PHY
    52a5f596c6cc dt-bindings: msm/dsi: Don't require vdds-supply on 10nm PHY
    984ad875db80 drm/msm/dp: do not complete dp_aux_cmd_fifo_tx() if irq is not for aux transfer
    92ae83665e9e platform/x86: ideapad-laptop: Add Legion 5 15ARH05 DMI id to set_fn_lock_led_list[]
    e38b5f81dfa8 dt-bindings: msm: dsi-phy-28nm: Add missing qcom, dsi-phy-regulator-ldo-mode
    bb32ab40cb7f dt-bindings: msm: dsi-controller-main: Fix description of core clock
    3fb8d10beef9 dt-bindings: msm: dsi-controller-main: Fix power-domain constraint
    dc5b651cad66 drm/msm/adreno: Make adreno quirks not overwrite each other
    757d665ee1fe dt-bindings: msm: dsi-controller-main: Fix operating-points-v2 constraint
    c90cf47d309a platform/x86: dell-privacy: Fix SW_CAMERA_LENS_COVER reporting
    25b5f693bc2d platform/surface: aggregator: Ignore command messages not intended for us
    ee7b8ce2cc28 platform/x86: dell-privacy: Only register SW_CAMERA_LENS_COVER if present
    e0072068adaf cifs: Fix uninitialized memory read for smb311 posix symlink create
    f3495b5e9e68 net/mlx5e: Set action fwd flag when parsing tc action goto
    1a8431cc202a drm/i915/gt: Reset twice
    011ecdbcd520 drm/virtio: Fix GEM handle creation UAF
    798dfeeae33d s390/percpu: add READ_ONCE() to arch_this_cpu_to_op_simple()
    a400593eb373 s390/cpum_sf: add READ_ONCE() semantics to compare and swap loops
    d4fa65960a9d ASoC: qcom: lpass-cpu: Fix fallback SD line index handling
    8400b91c11db s390/kexec: fix ipl report address for kdump
    c07e0babd1df perf auxtrace: Fix address filter duplicate symbol selection
    e81d82da619a net: stmmac: add aux timestamps fifo clearance wait
    44167b74a8a3 docs: Fix the docs build with Sphinx 6.0
    24176bf2a145 efi: tpm: Avoid READ_ONCE() for accessing the event log
    01b966b14c6e selftests: kvm: Fix a compile error in selftests/kvm/rseq_test.c
    c773ebe11c39 KVM: arm64: nvhe: Fix build with profile optimization
    c1d6a72fc810 KVM: arm64: Fix S1PTW handling on RO memslots
    e04e6cd8830f ALSA: hda/realtek: Enable mute/micmute LEDs on HP Spectre x360 13-aw0xxx
    b983c9a9714e ALSA: hda/realtek - Turn on power early
    9ab3696881ca ALSA: control-led: use strscpy in set_led_id()
    a8acfe2c6fb9 netfilter: nft_payload: incorrect arithmetics when fetching VLAN header bits
    90bb4f8f399f Linux 5.15.88
    cbd3e6d5e516 ALSA: hda - Enable headset mic on another Dell laptop with ALC3254
    b98dee474642 ALSA: hda/hdmi: Add a HP device 0x8715 to force connect list
    26350c21bc5e ALSA: pcm: Move rwsem lock inside snd_ctl_elem_read to prevent UAF
    dadd0dcaa67d net/ulp: prevent ULP without clone op from entering the LISTEN status
    04941c1d5bb5 net: sched: disallow noqueue for qdisc classes
    068b51219362 serial: fixup backport of "serial: Deassert Transmit Enable on probe in driver-specific way"
    46aa1557581f selftests/vm/pkeys: Add a regression test for setting PKRU through ptrace
    3c1940c54922 x86/fpu: Emulate XRSTOR's behavior if the xfeatures PKRU bit is not set
    3f1c81426a9f x86/fpu: Allow PKRU to be (once again) written by ptrace.
    b29773d6b0bb x86/fpu: Add a pkru argument to copy_uabi_to_xstate()
    9813c5fc22bc x86/fpu: Add a pkru argument to copy_uabi_from_kernel_to_xstate().
    fea26e83a196 x86/fpu: Take task_struct* in copy_sigframe_from_user_to_xstate()
    d4d152017e1d parisc: Align parisc MADV_XXX constants with all other architectures

(From OE-Core rev: 204f75167fd46928dd2e185572c082b64f5fa31d)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 6398ae4f5c5d07500ffdf0ae1bc0ecf80b63dbca)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-15 21:47:00 +00:00
Chee Yang Lee
40dcfce791 git: upgrade to 2.37.5
upgrade include fix for CVE-2022-23521 and CVE-2022-41903

(From OE-Core rev: de304c5617aee26028a4fd8474ccc2d177c85278)

Signed-off-by: Chee Yang Lee <chee.yang.lee@intel.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-15 21:47:00 +00:00
Ross Burton
1ee507463a git: ignore CVE-2022-41953
This is specific to Git-for-Windows.

(From OE-Core rev: e06bed59b2ad4f6ac152c50b445092a208c43ee5)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit c8849af809e0213d43e18e5d01067eeeb61b330d)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-15 21:47:00 +00:00
Michael Opdenacker
36e6d081b8 manuals: update patchwork instance URL
https://patchwork.openembedded.org/ has been since long discontinued
Also better to mention https://patchwork.yoctoproject.org/
than the patchwork home page.

(From yocto-docs rev: 98213c63f1ec770b2403fdb5bfe4923bcc866809)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-15 10:26:54 +00:00
Michael Opdenacker
a92283e6ae bsp-guide: fix broken git URLs and missing word
(From yocto-docs rev: 36a6fc70e41be517860d0eca4ff51e0b8054d2d4)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-15 10:26:54 +00:00
Michael Opdenacker
848f80153b profile-manual: update WireShark hyperlinks
(From yocto-docs rev: fdfedc258cef32aa37ed0c88cf194cd7ffd7b73a)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-15 10:26:54 +00:00
Lee Chee Yang
881ecb5f41 migration-guides: add release-notes for 4.0.7
(From yocto-docs rev: 16799b4ed00ba90e2753bdd6251515a76f94e812)

Signed-off-by: Lee Chee Yang <chee.yang.lee@intel.com>
Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Suggested-by: Takayasu Ito <ito@lineo.co.jp>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-15 10:26:54 +00:00
Michael Opdenacker
bc86cc0843 ref-manual: variables.rst: fix broken hyperlink
(From yocto-docs rev: 9446de9ab2d03af1f232ac42cb79cea1b04deb8c)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-15 10:26:54 +00:00
Michael Opdenacker
deba71a1f2 dev-manual: fix old override syntax
(From yocto-docs rev: 6d0d6c839a344dfa616acfa78eed56817e7d315d)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Reported-by: Ulrich Ölmann <u.oelmann@pengutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-10 11:04:06 +00:00
Niko Mauno
b69d0e77e2 Fix missing leading whitespace with ':append'
Mitigate occurences where ':append' operator is used and leading
whitespace character is obviously missing, risking inadvertent
string concatenation.

(From OE-Core rev: ab39d244cb844c9d183296945a095c17fdfef29e)

Signed-off-by: Niko Mauno <niko.mauno@vaisala.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit fcd340ec53ff8352b8cae0eb351810072b025a08)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-04 23:32:28 +00:00
Khem Raj
872fbf4ccc libusb1: Strip trailing whitespaces
(From OE-Core rev: 2ba7a2e7f2472bc9d8ceac4d7b499d8b3c9c89ca)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 2b24ffade16fc23ddb77e26d8967c26d62f4ed6d)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-04 23:32:28 +00:00
Khem Raj
90c818e400 libusb1: Link with latomic only if compiler has no atomic builtins
This makes build use compiler to decide from where to get atomics
instead of assuming that it should always come from libatomic, helps
sharing build artifacts with OSes which may not have libatomic installed
because it is not required on those hosts.

(From OE-Core rev: f66b0fd1ba7c017e9db7bb94d767d8becb41a455)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit a026d9afcbe07a8324ca951ba3439373dcb3771c)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-04 23:32:28 +00:00
Peter Kjellerstedt
4e02e9cfbb librsvg: Only enable the Vala bindings if GObject Introspection is enabled
This avoids the following error:

  configure: error: Vala bindings require GObject Introspection

(From OE-Core rev: 3bf9e22c0ca34595106f5421654cccbce7920cf7)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 31daea70b18b2b2266bf94063b655aaf142a6166)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-04 23:32:28 +00:00
Richard Purdie
1b6051e261 native: Drop special variable handling
Back when it was merged in https://git.yoctoproject.org/poky/commit/?id=c4257ed8b1040a5a0e9a95846d81961741239116
it appeared special handling in setVar was necessary. Likely due to
other fixes and improvements it no longer appears to be. The results of
"bitbake world -g" before and after this change are identical for oe-core
and meta-openembedded. Therefore drop the "parsing=True" special parameter to
setVar() meaning overrides can now be cleared.

This means that something like:

DEPENDS:append = " bash"

now functions as expected, adding bash to the target recipe and bash-native to
the native BBCLASSEXTENDED version.

Without this change, it would add bash to the native version as well as
bash-native which is clearly incorrect.

[YOCTO #15010]

(From OE-Core rev: 6e307036a130b6b3f7162ca81746a90efb7b30e3)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 99a5105f7b5303cd36077b5910c662a865c1782c)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-04 23:32:27 +00:00
Ross Burton
ddd6ab4ac7 quilt: use upstreamed faildiff.test fix
(From OE-Core rev: 05a062c0112788b7c1f819e28bf7e9da47ad7e6a)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 50b81a263187af4452d3b99967bffd01c6ddb476)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-04 23:32:27 +00:00
Khem Raj
445cb473af libtirpc: Check if file exists before operating on it
In some cases (e.g. mingw) this file may not be installed

(From OE-Core rev: f7c2e4c768bb6870992a86bc500d960d4c88f929)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 547f3a13ee9268bbdd439c96108ba1fe9ab78873)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-04 23:32:27 +00:00
Xiangyu Chen
70a4161818 numactl: skip test case when target platform doesn't have 2 CPU node
when current test platform doesn't have 2 or more CPU node, the test
case would report FAIL, according to numa test script and numademo
code, when return code=77 should be skip test, so using SKIP instead
of FAIL in test script.

(From OE-Core rev: da48bc443fec5bbc1fce356c3d5fd551a38a0705)

Signed-off-by: Xiangyu Chen <xiangyu.chen@windriver.com>
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit fd0a82400d419bce8605a9445db9b20b8ddc01a7)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-04 23:32:27 +00:00
Thomas Roos
1168dc9211 devtool: fix devtool finish when gitmodules file is empty
When a .gitmodules file exists but is empty then devtool finish fails.
Add an additional check for this.

[YOCTO #14999]

(From OE-Core rev: 7bc6bb2d3f01f3c9fe42417b6cfad194f9931a3a)

Signed-off-by: Thomas Roos <throos@amazon.de>
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit b4f0f7c4934bade9e4d4a1086f9d8b29d8e9ad45)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-04 23:32:27 +00:00
Ross Burton
59a697e99d spirv-headers/spirv-tools: set correct branch name
As of last week, the SPIRV repositories have renamed their master
branches to main:

https://github.com/KhronosGroup/SPIRV-Headers/issues/313

(From OE-Core rev: f9167e9c31d55c60d6713aa4f601b012663926e3)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 2957da09f13607ac00ddd4a87ec9ad0014326507)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-04 23:32:27 +00:00
Khem Raj
3989d7d8d5 createrepo-c: Include missing rpm/rpmstring.h
(From OE-Core rev: 0a5f5816ffde087c31e2889483fe38e8c740d300)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit b122f4ab5d8750dd64814da0ae7c9035b7620e4c)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-04 23:32:27 +00:00
Ross Burton
61f3c3b121 quilt: fix intermittent failure in faildiff.test
This test assumes that if a child process writes one line to stderr and
then another line to stdout, and stderr is redirected to stdout, that
the order the lines will be read is stable.

This isn't the case and occasionally the lines will be read in a
different order.  Change the test to ignore line ordering.

[ YOCTO #14469 ]

(From OE-Core rev: 199df863c16044875709b9bc0221941cd24edc70)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 1ddbe4d2bd8d8da10dac8a054f130fcd1d242219)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-04 23:32:27 +00:00
Armin Kuster
3f4d926300 lttng-modules: Fix for 5.10.163 kernel version
(From OE-Core rev: cdbe68d4a9b29a1b2073587c24dd22a82e7c5189)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 4ad1f430abe1e7706b43b36405f036fa23a4e6fd)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-04 23:32:27 +00:00
He Zhe
cf62c62f23 lttng-modules: update 2.13.7 -> 2.13.8
2023-01-13 (National Sticker Day) LTTng modules 2.13.8
	* fix: jbd2: use the correct print format
	* Fix: in_x32_syscall was introduced in v4.7.0
	* Explicitly skip tracing x32 system calls
	* fix: kallsyms wrapper on ppc64el
	* fix: Adjust ranges for RHEL 8.6 kernels
	* fix: kvm-x86 requires CONFIG_KALLSYMS_ALL
	* fix: mm/slab_common: drop kmem_alloc & avoid dereferencing fields when not using (v6.1)

Drop backported 0001-fix-mm-slab_common-drop-kmem_alloc-avoid-dereferenci.patch
0009-Rename-genhd-wrapper-to-blkdev.patch is present only on the master branch
and not on 2.13 branch, so keep it in the recipe.

(From OE-Core rev: da386f40a8207654dbc9886e56b7b6cc065b701d)

Signed-off-by: He Zhe <zhe.he@windriver.com>
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 5b04d4cea291b8d816a3a8d880004506fbf2b390)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-04 23:32:27 +00:00
Bruce Ashfield
4e503511b0 linux-yocto/5.15: update to v5.15.87
Updating  to the latest korg -stable release that comprises
the following commits:

    d57287729e22 Linux 5.15.87
    24186c682288 drm/mgag200: Fix PLL setup for G200_SE_A rev >=4
    e326ee018a24 io_uring: Fix unsigned 'res' comparison with zero in io_fixup_rw_res()
    b2b6eefab43d efi: random: combine bootloader provided RNG seed with RNG protocol output
    99c0759495a0 mbcache: Avoid nesting of cache->c_list_lock under bit locks
    d50d6c193adb net: hns3: fix return value check bug of rx copybreak
    d4e6a13eb9a3 btrfs: make thaw time super block check to also verify checksum
    70a1dccd0e58 selftests: set the BUILD variable to absolute path
    58fef3ebc83c ext4: don't allow journal inode to have encrypt flag
    bd5dc96fea4e mptcp: use proper req destructor for IPv6
    78bd6ab52c03 mptcp: dedicated request sock for subflow in v6
    6e9c1aef3e32 Revert "ACPI: PM: Add support for upcoming AMD uPEP HID AMDI007"
    e32f867b37da ksmbd: check nt_len to be at least CIFS_ENCPWD_SIZE in ksmbd_decode_ntlmssp_auth_blob
    4136f1ac1ecd ksmbd: fix infinite loop in ksmbd_conn_handler_loop()
    f10defb0be6a hfs/hfsplus: avoid WARN_ON() for sanity check, use proper error handling
    48d9e2e6de01 hfs/hfsplus: use WARN_ON for sanity check
    f5a9bbf962e2 drm/i915/gvt: fix vgpu debugfs clean in remove
    ae9a61511736 drm/i915/gvt: fix gvt debugfs destroy
    eb3e943a3243 riscv, kprobes: Stricter c.jr/c.jalr decoding
    620a229f576a riscv: uaccess: fix type of 0 variable on error in get_user()
    8e05a993f8aa thermal: int340x: Add missing attribute for data rate base
    c3222fd28225 io_uring: fix CQ waiting timeout handling
    b7b9bc93055d block: don't allow splitting of a REQ_NOWAIT bio
    e1358c878711 fbdev: matroxfb: G200eW: Increase max memory from 1 MB to 16 MB
    682a7d064f35 nfsd: fix handling of readdir in v4root vs. mount upcall timeout
    cb42aa7b5f72 x86/bugs: Flush IBP in ib_prctl_set()
    554a880a1fff x86/kexec: Fix double-free of elf header buffer
    264241a61045 btrfs: check superblock to ensure the fs was not modified at thaw time
    69f4bda5f4e6 nvme: also return I/O command effects from nvme_command_effects
    a6a4b057cd47 nvmet: use NVME_CMD_EFFECTS_CSUPP instead of open coding it
    f9309dcaa9c0 io_uring: check for valid register opcode earlier
    4df413d46960 nvme: fix multipath crash caused by flush request when blktrace is enabled
    03ce7921285e ASoC: Intel: bytcr_rt5640: Add quirk for the Advantech MICA-071 tablet
    0dca7375e2b9 udf: Fix extension of the last extent in the file
    dc1bc903970b caif: fix memory leak in cfctrl_linkup_request()
    bce3680b48d2 drm/i915: unpin on error in intel_vgpu_shadow_mm_pin()
    da6a3653b82c perf stat: Fix handling of --for-each-cgroup with --bpf-counters to match non BPF mode
    11cd4ec6359d usb: rndis_host: Secure rndis_query check against int overflow
    6ea5273c71dd octeontx2-pf: Fix lmtst ID used in aura free
    4e5f2c74cbbf drivers/net/bonding/bond_3ad: return when there's no aggregator
    8414983c2e64 fs/ntfs3: don't hold ni_lock when calling truncate_setsize()
    a23e8376e613 drm/imx: ipuv3-plane: Fix overlay plane width
    a8f7fd322f56 perf tools: Fix resources leak in perf_data__open_dir()
    a1e1521b4639 netfilter: ipset: Rework long task execution when adding/deleting entries
    6f19a3848367 netfilter: ipset: fix hash:net,port,net hang with /0 subnet
    774d259749d7 net: sparx5: Fix reading of the MAC address
    04dc4003e5df net: sched: cbq: dont intepret cls results when asked to drop
    f02327a4877a net: sched: atm: dont intepret cls results when asked to drop
    95da1882ce93 gpio: sifive: Fix refcount leak in sifive_gpio_probe
    da9c9883ec96 ceph: switch to vfs_inode_has_locks() to fix file lock bug
    54e72ce5f1d7 filelock: new helper: vfs_inode_has_locks
    f34b03ce3a86 drm/meson: Reduce the FIFO lines held when AFBC is not used
    05a8410b0fce RDMA/mlx5: Fix validation of max_rd_atomic caps for DC
    8d89870d6375 RDMA/mlx5: Fix mlx5_ib_get_hw_stats when used for device
    4d112f001612 net: phy: xgmiitorgmii: Fix refcount leak in xgmiitorgmii_probe
    e5fbeb3d16b4 net: ena: Update NUMA TPH hint register upon NUMA node update
    7840b93cfd4c net: ena: Set default value for RX interrupt moderation
    d09b7a9d2f34 net: ena: Fix rx_copybreak value update
    0e7ad9b006d7 net: ena: Use bitmask to indicate packet redirection
    5d4964984b99 net: ena: Account for the number of processed bytes in XDP
    f17d9aec07de net: ena: Don't register memory info on XDP exchange
    a4aa727ad0b2 net: ena: Fix toeplitz initial hash value
    0bec17f1ce31 net: amd-xgbe: add missed tasklet_kill
    cb2f74685f76 net/mlx5e: Fix hw mtu initializing at XDP SQ allocation
    6c72abb78b01 net/mlx5e: Always clear dest encap in neigh-update-del
    b36783bc11d1 net/mlx5e: TC, Refactor mlx5e_tc_add_flow_mod_hdr() to get flow attr
    f8c10eeba31b net/mlx5e: IPoIB, Don't allow CQE compression to be turned on by default
    7227bbb7c140 net/mlx5: Avoid recovery in probe flows
    9369b9afa8b0 net/mlx5: Add forgotten cleanup calls into mlx5_init_once() error path
    d966f2ee4b8e net/mlx5: E-Switch, properly handle ingress tagged packets on VST
    6a37a01aba5d vdpa_sim: fix vringh initialization in vdpasim_queue_ready()
    e3462410c36d vhost: fix range used in translate_desc()
    13871f60ec2f vringh: fix range used in iotlb_translate()
    e05d4c8c287a vhost/vsock: Fix error handling in vhost_vsock_init()
    586e6fd7d581 vdpa_sim: fix possible memory leak in vdpasim_net_init() and vdpasim_blk_init()
    b63bc2db244c nfc: Fix potential resource leaks
    945e58bdaf6f net: dsa: mv88e6xxx: depend on PTP conditionally
    95df720e64a6 qlcnic: prevent ->dcb use-after-free on qlcnic_dcb_enable() failure
    6c55953e232e net: sched: fix memory leak in tcindex_set_parms
    d14a4b24d58e net: hns3: fix VF promisc mode not update when mac table full
    7ed205b9478d net: hns3: fix miss L3E checking for rx packet
    47868cb77f8f net: hns3: extract macro to simplify ring stats update code
    7457c5a7761a net: hns3: refactor hns3_nic_reuse_page()
    4a6e9fb534c5 net: hns3: add interrupts re-initialization while doing VF FLR
    5e48ed805c4f nfsd: shut down the NFSv4 state objects before the filecache
    7e2825f5fb84 veth: Fix race with AF_XDP exposing old or uninitialized descriptors
    ac95cdafaca8 netfilter: nf_tables: honor set timeout and garbage collection updates
    49677ea1513e vmxnet3: correctly report csum_level for encapsulated packet
    9d30cb442156 netfilter: nf_tables: perform type checking for existing sets
    c3bfb7784a09 netfilter: nf_tables: add function to create set stateful expressions
    996cd779c2a4 netfilter: nf_tables: consolidate set description
    4f1105ee72d8 drm/panfrost: Fix GEM handle creation ref-counting
    df493f676fb0 bpf: pull before calling skb_postpull_rcsum()
    d7e817e689b1 btrfs: fix an error handling path in btrfs_defrag_leaves()
    4d69cdba2c27 SUNRPC: ensure the matching upcall is in-flight upon downcall
    af0265dfeffa drm/i915/migrate: fix length calculation
    8b25a526a5e9 drm/i915/migrate: fix offset calculation
    a3d1e6f9b678 drm/i915/migrate: don't check the scratch page
    5bc0b2fda4b4 ext4: fix deadlock due to mbcache entry corruption
    a6e4094faf3c mbcache: automatically delete entries from cache on freeing
    187254912971 ext4: correct inconsistent error msg in nojournal mode
    761f88f82e0f ext4: goto right label 'failed_mount3a'
    eb16602140f0 ravb: Fix "failed to switch device to config mode" message during unbind
    4216995dbd93 perf probe: Fix to get the DW_AT_decl_file and DW_AT_call_file as unsinged data
    d8bbbf2b52b2 perf probe: Use dwarf_attr_integrate as generic DWARF attr accessor
    b131b5f1361e media: s5p-mfc: Fix in register read and write for H264
    ff27800c0a6d media: s5p-mfc: Clear workbit to handle error condition
    4653ba32adcd media: s5p-mfc: Fix to handle reference queue during finishing
    1bd7283dc0be x86/MCE/AMD: Clear DFR errors found in THR handler
    5ddcd349d9af x86/mce: Get rid of msr_ops
    b8e7ed42bc3c btrfs: fix extent map use-after-free when handling missing device in read_one_chunk
    9c3beebd21f3 btrfs: move missing device handling in a dedicate function
    7528b21cebe0 btrfs: replace strncpy() with strscpy()
    4cef44525f4f phy: qcom-qmp-combo: fix out-of-bounds clock access
    855edc4ec64c ARM: renumber bits related to _TIF_WORK_MASK
    18f28f13301d ext4: fix off-by-one errors in fast-commit block filling
    b205332b6b87 ext4: fix unaligned memory access in ext4_fc_reserve_space()
    9c197dcbacc4 ext4: add missing validation of fast-commit record lengths
    6220ec405571 ext4: don't set up encryption key during jbd2 transaction
    6482d42baff5 ext4: disable fast-commit of encrypted dir operations
    6969367c1500 ext4: fix potential out of bound read in ext4_fc_replay_scan()
    818175ae3bd2 ext4: factor out ext4_fc_get_tl()
    ffd84d0bc5dc ext4: introduce EXT4_FC_TAG_BASE_LEN helper
    37914e029bec ext4: use ext4_debug() instead of jbd_debug()
    b0ed9a032e52 ext4: remove unused enum EXT4_FC_COMMIT_FAILED
    394514ddf90e tracing: Fix issue of missing one synthetic field
    5234dd5d205b block: mq-deadline: Fix dd_finish_request() for zoned devices
    78623b10fc9f drm/amdgpu: make display pinning more flexible (v2)
    6363da2c854a drm/amdgpu: handle polaris10/11 overlap asics (v2)
    2771c7a0eedc ext4: allocate extended attribute value in vmalloc area
    e995ff918e66 ext4: avoid unaccounted block allocation when expanding inode
    877247222a0c ext4: initialize quota before expanding inode in setproject ioctl
    322cf639b0b7 ext4: fix inode leak in ext4_xattr_inode_create() on an error path
    6380a93b57db ext4: fix kernel BUG in 'ext4_write_inline_data_end()'
    dc3bbc9753f4 ext4: avoid BUG_ON when creating xattrs
    844c40555297 ext4: fix error code return to user-space in ext4_get_branch()
    b870b28e29f6 ext4: fix corruption when online resizing a 1K bigalloc fs
    d440d6427a5e ext4: fix delayed allocation bug in ext4_clu_mapped for bigalloc + inline
    def7a39091e6 ext4: init quota for 'old.inode' in 'ext4_rename'
    3c31d8d3ad95 ext4: fix uninititialized value in 'ext4_evict_inode'
    871800770d7f ext4: fix leaking uninitialized memory in fast-commit journal
    d480a49c15c4 ext4: fix bug_on in __es_tree_search caused by bad boot loader inode
    91009e361e8c ext4: check and assert if marking an no_delete evicting inode dirty
    820eacbc4e4f ext4: fix reserved cluster accounting in __es_remove_extent()
    0dcbf4dc3d54 ext4: fix bug_on in __es_tree_search caused by bad quota inode
    06a20a68bb6d ext4: add helper to check quota inums
    f7e6b5548f91 ext4: add EXT4_IGET_BAD flag to prevent unexpected bad inode
    205ac16628ac ext4: fix undefined behavior in bit shift for ext4_check_flag_values
    cf0e0817b0f9 ext4: fix use-after-free in ext4_orphan_cleanup
    970bfd7a4188 fs: ext4: initialize fsdata in pagecache_write()
    744bbde378a5 ext4: remove trailing newline from ext4_msg() message
    7192afa5e4bf ext4: add inode table check in __ext4_get_inode_loc to aovid possible infinite loop
    0d041b7251c1 ext4: silence the warning when evicting inode with dioread_nolock
    af4ceb00ebea drm/ingenic: Fix missing platform_driver_unregister() call in ingenic_drm_init()
    c919e1154b8c drm/i915/dsi: fix VBT send packet port selection for dual link DSI
    6948e570f54f drm/vmwgfx: Validate the box size for the snooped cursor
    5594fde1ef53 drm/connector: send hotplug uevent on connector cleanup
    317ebe61a6d4 device_cgroup: Roll back to original exceptions after copy failure
    ac838c663ba1 parisc: led: Fix potential null-ptr-deref in start_task()
    2c1881f0816a remoteproc: core: Do pm_relax when in RPROC_OFFLINE state
    9b615f957ca7 iommu/amd: Fix ivrs_acpihid cmdline parsing code
    35b792179b10 phy: qcom-qmp-combo: fix sc8180x reset
    dfd05a133556 driver core: Fix bus_type.match() error handling in __driver_attach()
    44618a339741 crypto: ccp - Add support for TEE for PCI ID 0x14CA
    c55507a94bc6 crypto: n2 - add missing hash statesize
    48307506964e riscv: mm: notify remote harts about mmu cache updates
    16b6d9525da6 riscv: stacktrace: Fixup ftrace_graph_ret_addr retp argument
    657b440a270c PCI/sysfs: Fix double free in error path
    67fd41bbb0f5 PCI: Fix pci_device_is_present() for VFs by checking PF
    bfce073089cb ipmi: fix use after free in _ipmi_destroy_user()
    3b4984035c40 ima: Fix a potential NULL pointer access in ima_restore_measurement_list
    a843699f1665 mtd: spi-nor: Check for zero erase size in spi_nor_find_best_erase_type()
    24f4649cd8fc ipmi: fix long wait in unload when IPMI disconnect
    fa6bbb4894b9 ipu3-imgu: Fix NULL pointer dereference in imgu_subdev_set_selection()
    cdb208b090f3 ASoC: jz4740-i2s: Handle independent FIFO flush bits
    2d0d083d8ae6 wifi: wilc1000: sdio: fix module autoloading
    2e4a088804c1 efi: Add iMac Pro 2017 to uefi skip cert quirk
    c49fb9b760d3 md/bitmap: Fix bitmap chunk size overflow issues
    94fe975d54ab block: mq-deadline: Do not break sequential write streams to zoned HDDs
    8e91679f7bd2 rtc: ds1347: fix value written to century register
    5eb8296d73da cifs: fix missing display of three mount options
    cfa9f66f9172 cifs: fix confusing debug message
    8b45a3b19a2e media: dvb-core: Fix UAF due to refcount races at releasing
    acf984a3718c media: dvb-core: Fix double free in dvb_register_device()
    5fac317bee18 ARM: 9256/1: NWFPE: avoid compiler-generated __aeabi_uldivmod
    ce50c6124580 staging: media: tegra-video: fix device_node use after free
    6b16758215f6 staging: media: tegra-video: fix chan->mipi value on error
    4f5de49d8c52 tracing: Fix infinite loop in tracing_read_pipe on overflowed print_trace_line
    17becbc4dd67 tracing/probes: Handle system names with hyphens
    2442e655a693 tracing/hist: Fix wrong return value in parse_action_params()
    2a81ff5ce893 tracing: Fix complicated dependency of CONFIG_TRACER_MAX_TRACE
    fe8c35c6ffa2 tracing: Fix race where eprobes can be called before the event
    eb20f6ed3733 x86/kprobes: Fix optprobe optimization check with CONFIG_RETHUNK
    3e0fbc06db12 x86/kprobes: Fix kprobes instruction boudary check with CONFIG_RETHUNK
    6268a0704b97 ftrace/x86: Add back ftrace_expected for ftrace bug reports
    c95cf30dd447 x86/microcode/intel: Do not retry microcode reloading on the APs
    f8fe2f41784b KVM: nVMX: Properly expose ENABLE_USR_WAIT_PAUSE control to L1
    ca3483d71bd5 KVM: nVMX: Inject #GP, not #UD, if "generic" VMXON CR0/CR4 check fails
    2c73b349fd78 KVM: VMX: Resume guest immediately when injecting #GP on ECREATE
    4a19f48bee09 of/kexec: Fix reading 32-bit "linux,initrd-{start,end}" values
    7eddcdb09f62 perf/core: Call LSM hook after copying perf_event_attr
    15697f653399 tracing/hist: Fix out-of-bound write on 'action_data.var_ref_idx'
    fd52b86a7248 dm cache: set needs_check flag after aborting metadata
    d2a0b298ebf8 dm cache: Fix UAF in destroy()
    856edd0e92f3 dm clone: Fix UAF in clone_dtr()
    9215b25f2e10 dm integrity: Fix UAF in dm_integrity_dtr()
    34cd15d83b72 dm thin: Fix UAF in run_timer_softirq()
    ac362c40e3e9 dm thin: resume even if in FAIL mode
    4b710e8481ad dm thin: Use last transaction's pmd->root when commit failed
    f8c26c33fef5 dm thin: Fix ABBA deadlock between shrink_slab and dm_pool_abort_metadata
    28d307f380df dm cache: Fix ABBA deadlock between shrink_slab and dm_cache_metadata_abort
    a9e89a567f48 mptcp: remove MPTCP 'ifdef' in TCP SYN cookies
    13b9fd0dee93 mptcp: mark ops structures as ro_after_init
    b2120ed7fd75 fs: dlm: retry accept() until -EAGAIN or error returns
    5b4478615f70 fs: dlm: fix sock release if listen fails
    b7ede8a63dd9 ALSA: hda/realtek: Apply dual codec fixup for Dell Latitude laptops
    dbd1f301915f ALSA: patch_realtek: Fix Dell Inspiron Plus 16
    8fb4c98f20df cpufreq: Init completion before kobject_init_and_add()
    876c6ab96782 PM/devfreq: governor: Add a private governor_data for governor
    0e945ea733ea selftests: Use optional USERCFLAGS and USERLDFLAGS
    31697c5953ff arm64: dts: qcom: sdm850-lenovo-yoga-c630: correct I2C12 pins drive strength
    163049866030 ARM: ux500: do not directly dereference __iomem
    99590f29b2b7 btrfs: fix resolving backrefs for inline extent followed by prealloc
    1f9cf4daf2d3 mmc: sdhci-sprd: Disable CLK_AUTO when the clock is less than 400K
    58d53ff30a00 arm64: dts: qcom: sdm845-db845c: correct SPI2 pins drive strength
    a777b90a0575 perf/x86/intel/uncore: Clear attr_update properly
    ca77ac238c1e perf/x86/intel/uncore: Disable I/O stacks to PMU mapping on ICX-D
    df06e7777cf9 jbd2: use the correct print format
    8e75b1dd4b16 ktest.pl minconfig: Unset configs instead of just removing them
    55e5e8b44561 kest.pl: Fix grub2 menu handling for rebooting
    823fed7c400f soc: qcom: Select REMAP_MMIO for LLCC driver
    8dabeeb1ff89 media: stv0288: use explicitly signed char
    d167ebea9086 net/af_packet: make sure to pull mac header
    9ff46c36df2e net/af_packet: add VLAN support for AF_PACKET SOCK_RAW GSO
    cd0f597c8aa8 rcu-tasks: Simplify trc_read_check_handler() atomic operations
    593ca696687c ASoC/SoundWire: dai: expand 'stream' concept beyond SoundWire
    a7874dac6ba6 ASoC: Intel/SOF: use set_stream() instead of set_tdm_slots() for HDAudio
    ae4f70b2fed4 kcsan: Instrument memcpy/memset/memmove with newer Clang
    d01fa993eb7f SUNRPC: Don't leak netobj memory when gss_read_proxy_verf() fails
    43135fb09812 tpm: tpm_tis: Add the missed acpi_put_table() to fix memory leak
    986cd9a9b954 tpm: tpm_crb: Add the missed acpi_put_table() to fix memory leak
    638cd298dfeb tpm: acpi: Call acpi_put_table() to fix memory leak
    d58289fc77f8 mmc: vub300: fix warning - do not call blocking ops when !TASK_RUNNING
    7eb57bc92f1b f2fs: allow to read node block after shutdown
    acc13987fdea f2fs: should put a page when checking the summary info
    35d8a89862e6 mm, compaction: fix fast_isolate_around() to stay within boundaries
    91bd504128a5 md: fix a crash in mempool_free
    29328fbce56c mfd: mt6360: Add bounds checking in Regmap read/write call-backs
    c24cc476acd8 pnode: terminate at peers of source
    0c9118e381ff ALSA: line6: fix stack overflow in line6_midi_transmit
    ac4b4fdf3262 ALSA: line6: correct midi status byte when receiving data from podxt
    83c44f0ebfd0 ovl: Use ovl mounter's fsuid and fsgid in ovl_link()
    fcb94283e014 binfmt: Fix error return code in load_elf_fdpic_binary()
    ed9947277b2d hfsplus: fix bug causing custom uid and gid being unable to be assigned with mount
    76d52b54127c pstore/zone: Use GFP_ATOMIC to allocate zone buffer
    74b0a2fcc31a pstore: Properly assign mem_type property
    d25aac3489af HID: plantronics: Additional PIDs for double volume key presses quirk
    9d4294545c1d HID: multitouch: fix Asus ExpertBook P2 P2451FA trackpoint
    7280fdb80bf0 powerpc/rtas: avoid scheduling in rtas_os_term()
    d8939315b734 powerpc/rtas: avoid device tree lookups in rtas_os_term()
    23a249b1185c objtool: Fix SEGFAULT
    ed686e7a26dd fs/ntfs3: Fix slab-out-of-bounds in r_page
    dd34665cb004 fs/ntfs3: Delete duplicate condition in ntfs_read_mft()
    a9847a11b683 fs/ntfs3: Use __GFP_NOWARN allocation at ntfs_fill_super()
    abd2ee2cf42f fs/ntfs3: Use __GFP_NOWARN allocation at wnd_init()
    d7ce7bb6881a fs/ntfs3: Validate index root when initialize NTFS security
    f29676cc3a46 soundwire: dmi-quirks: add quirk variant for LAPBC710 NUC15
    9c8471a17f1f fs/ntfs3: Fix slab-out-of-bounds read in run_unpack
    3a52f1786772 fs/ntfs3: Validate resident attribute name
    3cd9e5b41b83 fs/ntfs3: Validate buffer length while parsing index
    c878a915bcb9 fs/ntfs3: Validate attribute name offset
    f62506f5e45a fs/ntfs3: Add null pointer check for inode operations
    2dd9ccfb06bc fs/ntfs3: Fix memory leak on ntfs_fill_super() error path
    ea6b3598406c fs/ntfs3: Add null pointer check to attr_load_runs_vcn
    de5e0955248f fs/ntfs3: Validate data run offset
    d4489ba8fb80 fs/ntfs3: Add overflow check for attribute size
    af7a195deae3 fs/ntfs3: Validate BOOT record_size
    8e228ac90c39 nvmet: don't defer passthrough commands with trivial effects to the workqueue
    f068a7315a9e nvme: fix the NVME_CMD_EFFECTS_CSE_MASK definition
    576502f25f79 ata: ahci: Fix PCS quirk application for suspend
    7949b0df3dd9 block, bfq: fix uaf for bfqq in bfq_exit_icq_bfqq
    ff3d9ab51cd5 ACPI: resource: do IRQ override on Lenovo 14ALC7
    698a0813ce69 ACPI: resource: do IRQ override on XMG Core 15
    a9ac7633bbe5 ACPI: resource: do IRQ override on LENOVO IdeaPad
    5fe31f29501c ACPI: resource: Skip IRQ override on Asus Vivobook K3402ZA/K3502ZA
    4c5fee0d883a nvme-pci: fix page size checks
    9141144b37f3 nvme-pci: fix mempool alloc size
    f17cf8fa2c9d nvme-pci: fix doorbell buffer value endianness
    ead99ec669b5 Revert "selftests/bpf: Add test for unstable CT lookup API"
    bf0543b93740 cifs: fix oops during encryption
    56f6de394f0f usb: dwc3: qcom: Fix memory leak in dwc3_qcom_interconnect_init
    90ffbb727c51 Linux 5.15.86
    3082f8705e82 pwm: tegra: Fix 32 bit build
    caa40d1f8524 mfd: qcom_rpm: Use devm_of_platform_populate() to simplify code
    408dbaa06578 extcon: usbc-tusb320: Call the Type-C IRQ handler only if a port is registered
    2471a44769b5 media: dvbdev: fix refcnt bug
    579fb0a3320b media: dvbdev: fix build warning due to comments
    1115e77c4fdd net: stmmac: fix errno when create_singlethread_workqueue() fails
    d3871af13aa0 scsi: qla2xxx: Fix crash when I/O abort times out
    50f993da9450 btrfs: do not BUG_ON() on ENOMEM when dropping extent items for a range
    1c65d50315db ovl: fix use inode directly in rcu-walk mode
    88ec6d11052d fbdev: fbcon: release buffer when fbcon_do_set_font() failed
    ca8bcb348aa8 gcov: add support for checksum field
    f36d8c865150 floppy: Fix memory leak in do_floppy_init()
    4193a6745b83 regulator: core: fix deadlock on regulator enable
    ce5d0ef1cf56 iio: adc128s052: add proper .data members in adc128_of_match table
    aec1058f2a92 iio: adc: ad_sigma_delta: do not use internal iio_dev lock
    dc6afd6070f3 iio: fix memory leak in iio_device_register_eventset()
    38c257ee6a5a reiserfs: Add missing calls to reiserfs_security_free()
    8a4236456a3a security: Restrict CONFIG_ZERO_CALL_USED_REGS to gcc or clang > 15.0.6
    1cabce56626a 9p: set req refcount to zero to avoid uninitialized usage
    dd2157a98f92 loop: Fix the max_loop commandline argument treatment when it is set to 0
    fd03bd4c7b0a HID: mcp2221: don't connect hidraw
    6c886be1ff76 HID: wacom: Ensure bootloader PID is usable in hidraw mode
    4d640eb1129d xhci: Prevent infinite loop in transaction errors recovery for streams
    936c5f96c896 usb: dwc3: core: defer probe on ulpi_read_id timeout
    e6bf6c40225a usb: dwc3: Fix race between dwc3_set_mode and __dwc3_set_mode
    0e883f3bc897 arm64: dts: qcom: sm8250: fix USB-DP PHY registers
    ffb14aac2658 usb: xhci-mtk: fix leakage of shared hcd when fail to set wakeup irq
    fcacd970e011 usb: cdnsp: fix lack of ZLP for ep0
    bcac79df0838 ALSA: hda/hdmi: Add HP Device 0x8711 to force connect list
    50c23a110779 ALSA: hda/realtek: Add quirk for Lenovo TianYi510Pro-14IOB
    76574b34657e ALSA: usb-audio: add the quirk for KT0206 device
    9e787dab98b6 ima: Simplify ima_lsm_copy_rule
    2cd365029c23 pstore: Make sure CONFIG_PSTORE_PMSG selects CONFIG_RT_MUTEXES
    2068d41a3de9 afs: Fix lost servers_outstanding count
    0def8af038c1 perf debug: Set debug_peo_args and redirect_to_stderr variable to correct values in perf_quiet_option()
    41cccae10e10 pstore: Switch pmsg_lock to an rt_mutex to avoid priority inversion
    8877df8135b7 LoadPin: Ignore the "contents" argument of the LSM hooks
    584202b0f1a1 drm/i915/display: Don't disable DDI/Transcoder when setting phy test pattern
    b253e075b13d ASoC: rt5670: Remove unbalanced pm_runtime_put()
    59f797a913dc ASoC: rockchip: spdif: Add missing clk_disable_unprepare() in rk_spdif_runtime_resume()
    132844d92fed ASoC: wm8994: Fix potential deadlock
    82f7c814edda ASoC: mediatek: mt8183: fix refcount leak in mt8183_mt6358_ts3a227_max98357_dev_probe()
    e5d6bf3e5ad0 ASoC: rockchip: pdm: Add missing clk_disable_unprepare() in rockchip_pdm_runtime_resume()
    85eb5c952b7f ASoC: audio-graph-card: fix refcount leak of cpu_ep in __graph_for_each_link()
    9ff07316cad2 ASoC: mediatek: mt8173-rt5650-rt5514: fix refcount leak in mt8173_rt5650_rt5514_dev_probe()
    7643909cf06d ASoC: Intel: Skylake: Fix driver hang during shutdown
    33ff0f9f9cb5 ALSA: hda: add snd_hdac_stop_streams() helper
    78649a624dfa ALSA/ASoC: hda: move/rename snd_hdac_ext_stop_streams to hdac_stream.c
    98b0f50fec38 hwmon: (jc42) Fix missing unlock on error in jc42_write()
    5e6923350830 KVM: selftests: Fix build regression by using accessor function
    6215904fe295 tools/include: Add _RET_IP_ and math definitions to kernel.h
    c8853267289c orangefs: Fix kmemleak in orangefs_{kernel,client}_debug_init()
    39529b79b023 orangefs: Fix kmemleak in orangefs_prepare_debugfs_help_string()
    a075c21ee026 drm/sti: Fix return type of sti_{dvo,hda,hdmi}_connector_mode_valid()
    f3c14b99f33a drm/fsl-dcu: Fix return type of fsl_dcu_drm_connector_mode_valid()
    9a8862820cbf hugetlbfs: fix null-ptr-deref in hugetlbfs_parse_param()
    4f6b206998c5 scsi: elx: libefc: Fix second parameter type in state callbacks
    23f0e9f86303 scsi: ufs: Reduce the START STOP UNIT timeout
    2cf66428a254 scsi: lpfc: Fix hard lockup when reading the rx_monitor from debugfs
    2b3e3ecdb402 crypto: hisilicon/hpre - fix resource leak in remove process
    adf6a00859d0 clk: st: Fix memory leak in st_of_quadfs_setup()
    6c8aee0c8fcc media: si470x: Fix use-after-free in si470x_int_in_callback()
    58b6496a745f mmc: renesas_sdhi: better reset from HS400 mode
    c33c904124c4 mmc: f-sdh30: Add quirks for broken timeout clock capability
    69346de0eb95 wifi: mt76: do not run mt76u_status_worker if the device is not running
    feb847e6591e regulator: core: fix use_count leakage when handling boot-on
    474e70bd90cf libbpf: Avoid enum forward-declarations in public API in C++ mode
    62095428690c drm/amd/display: Use the largest vready_offset in pipe group
    eff45bfbc25a blk-mq: fix possible memleak when register 'hctx' failed
    d0af6220bb1e media: dvb-usb: fix memory leak in dvb_usb_adapter_init()
    88a6f8a72d16 media: dvbdev: adopts refcnt to avoid UAF
    438cd29fec3e media: dvb-frontends: fix leak of memory fw
    a96841f5aa45 ethtool: avoiding integer overflow in ethtool_phys_id()
    b327c68ace71 bpf: Prevent decl_tag from being referenced in func_proto arg
    4b8f3b939266 ppp: associate skb with a device at tx
    5d5a481a7fd0 mrp: introduce active flags to prevent UAF when applicant uninit
    222cc0435698 ipv6/sit: use DEV_STATS_INC() to avoid data-races
    8a3b0237107a net: add atomic_long_t to net_device_stats fields
    58dd11f62427 drm/amd/display: fix array index out of bound error in bios parser
    a3cc41e05e8a md/raid1: stop mdx_raid1 thread when raid1 array run failed
    b621d17fe8b0 drivers/md/md-bitmap: check the return value of md_bitmap_get_counter()
    5afac74f153b drm/mediatek: Fix return type of mtk_hdmi_bridge_mode_valid()
    072508e99dad drm/sti: Use drm_mode_copy()
    673a3e019908 drm/rockchip: Use drm_mode_copy()
    b9b07900d249 drm/msm: Use drm_mode_copy()
    5ad774fb823c s390/lcs: Fix return type of lcs_start_xmit()
    dfbf0122ea1b s390/netiucv: Fix return type of netiucv_tx()
    8131d1880c09 s390/ctcm: Fix return type of ctc{mp,}m_tx()
    f9084e9930db drm/amdgpu: Fix type of second parameter in odn_edit_dpm_table() callback
    b74580d6184e drm/amdgpu: Fix type of second parameter in trans_msg() callback
    314f7092b277 igb: Do not free q_vector unless new one was allocated
    0b12d2aa264b wifi: brcmfmac: Fix potential shift-out-of-bounds in brcmf_fw_alloc_request()
    19bb9e98e103 hamradio: baycom_epp: Fix return type of baycom_send_packet()
    a413ebb6049e net: ethernet: ti: Fix return type of netcp_ndo_start_xmit()
    5d3f4478d22b bpf: make sure skb->len != 0 when redirecting to a tunneling device
    be2803dd29bd qed (gcc13): use u16 for fid to be big enough
    a8bc0ac43833 Revert "drm/amd/display: Limit max DSC target bpp for specific monitors"
    cc8deb82cca5 drm/amd/display: prevent memory leak
    49dd0e8029e8 ipmi: fix memleak when unload ipmi driver
    68871c005f3c ASoC: codecs: rt298: Add quirk for KBL-R RVP platform
    3eca9697c2f3 wifi: ar5523: Fix use-after-free on ar5523_cmd() timed out
    c319196a0e34 wifi: ath9k: verify the expected usb_endpoints are present
    10c4b63d09a5 brcmfmac: return error when getting invalid max_flowrings from dongle
    ad31bc146f0e media: imx-jpeg: Disable useless interrupt to avoid kernel panic
    6e1a6880e1e9 drm/etnaviv: add missing quirks for GC300
    367296925c76 hfs: fix OOB Read in __hfs_brec_find
    ebe16676e1dc acct: fix potential integer overflow in encode_comp_t()
    8b6ef451b570 nilfs2: fix shift-out-of-bounds due to too large exponent of block size
    b47f5c579c81 nilfs2: fix shift-out-of-bounds/overflow in nilfs_sb2_bad_offset()
    5777432ebaaf ACPICA: Fix error code path in acpi_ds_call_control_method()
    10b87da8fae7 fs: jfs: fix shift-out-of-bounds in dbDiscardAG
    5059ea84a8a8 jfs: Fix fortify moan in symlink
    e7a6a53c8714 udf: Avoid double brelse() in udf_rename()
    0536f76a2bca fs: jfs: fix shift-out-of-bounds in dbAllocAG
    88cea1676a09 binfmt_misc: fix shift-out-of-bounds in check_special_flags
    cadb938a5e50 x86/hyperv: Remove unregister syscore call from Hyper-V cleanup
    659747f6f610 video: hyperv_fb: Avoid taking busy spinlock on panic path
    9d05c20b0ac9 arm64: make is_ttbrX_addr() noinstr-safe
    98a5b1265a36 rcu: Fix __this_cpu_read() lockdep warning in rcu_force_quiescent_state()
    d238f94b2b61 HID: amd_sfh: Add missing check for dma_alloc_coherent
    9da204cd67c4 net: stream: purge sk_error_queue in sk_stream_kill_queues()
    f47426250fc0 myri10ge: Fix an error handling path in myri10ge_probe()
    1ec0a7d5b020 rxrpc: Fix missing unlock in rxrpc_do_sendmsg()
    5478eb7adcc5 net_sched: reject TCF_EM_SIMPLE case for complex ematch module
    4f05d8e2fb3a mailbox: zynq-ipi: fix error handling while device_register() fails
    550f403e4604 mailbox: arm_mhuv2: Fix return value check in mhuv2_probe()
    28604a960c90 mailbox: mpfs: read the system controller's status
    8fb773eed490 skbuff: Account for tail adjustment during pull operations
    dc0f38957aa2 arm64: dts: mt8183: Fix Mali GPU clock
    790b396f6bde soc: mediatek: pm-domains: Fix the power glitch issue
    0133615a0600 openvswitch: Fix flow lookup to use unmasked key
    04e454bd97e2 selftests: devlink: fix the fd redirect in dummy_reporter_test
    d52646a46c4d rtc: mxc_v2: Add missing clk_disable_unprepare()
    ac95c4e35fb2 igc: Set Qbv start_time and end_time to end_time if not being configured in GCL
    af599851388e igc: Lift TAPRIO schedule restriction
    4d50d640eda4 igc: recalculate Qbv end_time by considering cycle time
    1ef941695715 igc: allow BaseTime 0 enrollment for Qbv
    c0df8e7ba6aa igc: Add checking for basetime less than zero
    5b46b53f45f9 igc: Use strict cycles for Qbv scheduling
    fd7d02943659 igc: Enhance Qbv scheduling by using first flag bit
    9b5b50329e2e r6040: Fix kmemleak in probe and remove
    1b428ba31b91 unix: Fix race in SOCK_SEQPACKET's unix_dgram_sendmsg()
    aae9c24ebd90 nfc: pn533: Clear nfc_target before being used
    bcf2c1dc5358 net: enetc: avoid buffer leaks on xdp_do_redirect() failure
    f463a1295c4f selftests/bpf: Add test for unstable CT lookup API
    094f3d9314d6 block, bfq: fix possible uaf for 'bfqq->bic'
    cf48cb8debb2 mISDN: hfcmulti: don't call dev_kfree_skb/kfree_skb() under spin_lock_irqsave()
    560735375165 mISDN: hfcpci: don't call dev_kfree_skb/kfree_skb() under spin_lock_irqsave()
    ada4022f4891 mISDN: hfcsusb: don't call dev_kfree_skb/kfree_skb() under spin_lock_irqsave()
    0578f9929fd3 net: macsec: fix net device access prior to holding a lock
    a472f069ced8 nfsd: under NFSv4.1, fix double svc_xprt_put on rpc_create failure
    f8f1d037d63d rtc: pcf85063: fix pcf85063_clkout_control
    35a174552bde rtc: pic32: Move devm_rtc_allocate_device earlier in pic32_rtc_probe()
    eea105c4e4b6 rtc: st-lpc: Add missing clk_disable_unprepare in st_rtc_probe()
    74248b556006 netfilter: flowtable: really fix NAT IPv6 offload
    5c940632cabf mfd: pm8008: Fix return value check in pm8008_probe()
    ec10848e2638 mfd: pm8008: Remove driver data structure pm8008_data
    38959417d350 mfd: qcom_rpm: Fix an error handling path in qcom_rpm_probe()
    b95ae3543e51 mfd: bd957x: Fix Kconfig dependency on REGMAP_IRQ
    615d3c8a469d powerpc/pseries/eeh: use correct API for error log size
    68de42e00821 powerpc/eeh: Drop redundant spinlock initialization
    2b157b4b13b4 remoteproc: qcom: q6v5: Fix missing clk_disable_unprepare() in q6v5_wcss_qcs404_power_on()
    4b191533f57f remoteproc: qcom_q6v5_pas: Fix missing of_node_put() in adsp_alloc_memory_region()
    d7628ebca817 remoteproc: qcom_q6v5_pas: detach power domains on remove
    fdf47f462ad0 remoteproc: qcom_q6v5_pas: disable wakeup on probe fail or remove
    098ebb9089c4 remoteproc: qcom: q6v5: Fix potential null-ptr-deref in q6v5_wcss_init_mmio()
    131c0a3ead78 remoteproc: sysmon: fix memory leak in qcom_add_sysmon_subdev()
    4507c6a67234 pwm: mediatek: always use bus clock for PWM on MT7622
    4fbbb14f0ea4 pwm: mtk-disp: Fix the parameters calculated by the enabled flag of disp_pwm
    eec59807a26b pwm: sifive: Call pwm_sifive_update_clock() while mutex is held
    37ea9a6c417f iommu/sun50i: Remove IOMMU_DOMAIN_IDENTITY
    8de2c29db68b selftests/powerpc: Fix resource leaks
    dd49c5031e85 powerpc/hv-gpci: Fix hv_gpci event list
    65d3469f3b91 powerpc/83xx/mpc832x_rdb: call platform_device_put() in error case in of_fsl_spi_probe()
    cf03db289640 powerpc/perf: callchain validate kernel stack pointer bounds
    5de190224445 powerpc/xive: add missing iounmap() in error path in xive_spapr_populate_irq_data()
    b31e9647f1a2 powerpc/xmon: Fix -Wswitch-unreachable warning in bpt_cmds
    6a310e8db540 cxl: Fix refcount leak in cxl_calc_capp_routing
    0accd460dc7b powerpc/52xx: Fix a resource leak in an error handling path
    be2b9b1a60b7 macintosh/macio-adb: check the return value of ioremap()
    19ded60b40e8 macintosh: fix possible memory leak in macio_add_one_device()
    e42b543d0805 iommu/fsl_pamu: Fix resource leak in fsl_pamu_probe()
    6e501b3fd7a2 iommu/amd: Fix pci device refcount leak in ppr_notifier()
    9383921e8b21 rtc: pcf85063: Fix reading alarm
    b66aa7b30608 rtc: snvs: Allow a time difference on clock register read
    7a6cc22eab18 rtc: cmos: Disable ACPI RTC event on removal
    689f757f0ab0 rtc: cmos: Rename ACPI-related functions
    1c74bbecdabc rtc: cmos: Eliminate forward declarations of some functions
    3a439a2cab30 rtc: cmos: Call rtc_wake_setup() from cmos_do_probe()
    9febdff75cef rtc: cmos: Call cmos_wake_setup() from cmos_do_probe()
    d9324fb3eed7 rtc: cmos: fix build on non-ACPI platforms
    fe46b9303e32 rtc: cmos: Fix wake alarm breakage
    60c6e563a843 rtc: cmos: Fix event handler registration ordering issue
    d3aa0834691f rtc: rtc-cmos: Do not check ACPI_FADT_LOW_POWER_S0
    6e98a93c7500 dmaengine: idxd: Fix crc_val field for completion record
    ab53749c32db fs/ntfs3: Fix slab-out-of-bounds read in ntfs_trim_fs
    1ba0968b3341 pwm: tegra: Improve required rate calculation
    c160505c9b57 include/uapi/linux/swab: Fix potentially missing __always_inline
    59463193b0dc phy: usb: s2 WoL wakeup_count not incremented for USB->Eth devices
    ae00848e5569 iommu/rockchip: fix permission bits in page table entries v2
    a7f6ad2c4251 iommu/sun50i: Fix flush size
    38ccb9b469c2 iommu/sun50i: Fix R/W permission check
    ae4ab47a0bcd iommu/sun50i: Consider all fault sources for reset
    84fee3ce8216 iommu/sun50i: Fix reset release
    6f9fe31a4823 fs/ntfs3: Harden against integer overflows
    30f20ceb87f7 overflow: Implement size_t saturating arithmetic helpers
    4b51f27d4448 fs/ntfs3: Avoid UBSAN error on true_sectors_per_clst()
    28f345bec785 RDMA/siw: Fix pointer cast warning
    01d925e2a556 perf stat: Do not delay the workload with --delay
    a273f1dd5d97 perf stat: Refactor __run_perf_stat() common code
    d21534ab4fd7 power: supply: fix null pointer dereferencing in power_supply_get_battery_info
    d4898d8de620 power: supply: ab8500: Fix error handling in ab8500_charger_init()
    30b191798fda HSI: omap_ssi_core: Fix error handling in ssi_init()
    a72fe8eb5555 power: supply: z2_battery: Fix possible memleak in z2_batt_probe()
    5ba0e8fa150c perf symbol: correction while adjusting symbol
    a34027b63d8c perf trace: Handle failure when trace point folder is missed
    60aeacce64a9 perf trace: Use macro RAW_SYSCALL_ARGS_NUM to replace number
    e4700f62dc83 perf trace: Return error if a system call doesn't exist
    870ad0917d83 power: supply: fix residue sysfs file in error handle route of __power_supply_register()
    1c2b9c810076 HSI: omap_ssi_core: fix possible memory leak in ssi_probe()
    c5f729d3d61d HSI: omap_ssi_core: fix unbalanced pm_runtime_disable()
    ea37831f8332 fbdev: uvesafb: Fixes an error handling path in uvesafb_probe()
    5bcae36b58f6 fbdev: uvesafb: don't build on UML
    07c1a3c2df5e fbdev: geode: don't build on UML
    ace8312b5d7d fbdev: ep93xx-fb: Add missing clk_disable_unprepare in ep93xxfb_probe()
    04946113fb57 fbdev: vermilion: decrease reference count in error path
    fc0d5034fa9b fbdev: via: Fix error in via_core_init()
    98272463338c fbdev: pm2fb: fix missing pci_disable_device()
    3aa4205134ac fbdev: ssd1307fb: Drop optional dependency
    4958316a6d19 thermal/drivers/qcom/lmh: Fix irq handler return value
    ad72205ac6d2 thermal/drivers/qcom/temp-alarm: Fix inaccurate warning for gen2
    37fb4e13d221 thermal/drivers/imx8mm_thermal: Validate temperature range
    95c18f4a3c99 samples: vfio-mdev: Fix missing pci_disable_device() in mdpy_fb_probe()
    31c1b5d3000c ksmbd: Fix resource leak in ksmbd_session_rpc_open()
    a44102d36a7a tracing/hist: Fix issue of losting command info in error_log
    8308ccfcbd2b usb: storage: Add check for kcalloc
    96c12fd0ec74 i2c: ismt: Fix an out-of-bounds bug in ismt_access()
    821280094399 i2c: mux: reg: check return value after calling platform_get_resource()
    46d8f63bb815 gpiolib: protect the GPIO device against being dropped while in use by user-space
    333a271dfd6b gpiolib: make struct comments into real kernel docs
    7c755a2d6df5 gpiolib: cdev: fix NULL-pointer dereferences
    b0a26e199964 gpiolib: Get rid of redundant 'else'
    4bc217b25ea8 vme: Fix error not catched in fake_init()
    31bfe024a957 staging: rtl8192e: Fix potential use-after-free in rtllib_rx_Monitor()
    b0aaec894a90 staging: rtl8192u: Fix use after free in ieee80211_rx()
    ed4580c3f8e4 i2c: pxa-pci: fix missing pci_disable_device() on error in ce4100_i2c_probe
    28dc61cc49c6 chardev: fix error handling in cdev_device_add()
    43bfc7c2402a mcb: mcb-parse: fix error handing in chameleon_parse_gdd()
    f3686e5e8de0 drivers: mcb: fix resource leak in mcb_probe()
    9d4a0aca8a75 usb: gadget: f_hid: fix refcount leak on error path
    d3136b79705c usb: gadget: f_hid: fix f_hidg lifetime vs cdev
    a41c2bba7f28 usb: roles: fix of node refcount leak in usb_role_switch_is_parent()
    18b9202188a4 coresight: trbe: remove cpuhp instance node before remove cpuhp state
    e854a4ab388a counter: stm32-lptimer-cnt: fix the check on arr and cmp registers update
    39a156715fb7 iio: adis: add '__adis_enable_irq()' implementation
    3a2dde8e5d6f iio:imu:adis: Move exports into IIO_ADISLIB namespace
    3c2e13025b54 iio: adis: stylistic changes
    de3e358912ec iio: adis: handle devices that cannot unmask the drdy pin
    994243de7a61 iio: temperature: ltc2983: make bulk write buffer DMA-safe
    22511eefa61d cxl: fix possible null-ptr-deref in cxl_pci_init_afu|adapter()
    e5021bbf11b0 cxl: fix possible null-ptr-deref in cxl_guest_init_afu|adapter()
    b308fdedef09 firmware: raspberrypi: fix possible memory leak in rpi_firmware_probe()
    d5c8f9003a28 misc: sgi-gru: fix use-after-free error in gru_set_context_option, gru_fault and gru_handle_user_call_os
    848c45964ded misc: tifm: fix possible memory leak in tifm_7xx1_switch_media()
    37a13b274e45 ocxl: fix pci device refcount leak when calling get_function_0()
    3299983a6bf6 misc: ocxl: fix possible name leak in ocxl_file_register_afu()
    357379d504c0 test_firmware: fix memory leak in test_firmware_init()
    07d547d74244 serial: sunsab: Fix error handling in sunsab_init()
    919e745fdd0d serial: altera_uart: fix locking in polling mode
    e1c4f18214e3 tty: serial: altera_uart_{r,t}x_chars() need only uart_port
    b133b45ba607 tty: serial: clean up stop-tx part in altera_uart_tx_chars()
    6f7d82380fbe serial: pch: Fix PCI device refcount leak in pch_request_dma()
    0dfc7dfe5b6e serial: stm32: move dma_request_chan() before clk_prepare_enable()
    926b0967f781 serial: pl011: Do not clear RX FIFO & RX interrupt in unthrottle.
    d71a611fca19 serial: amba-pl011: avoid SBSA UART accessing DMACR register
    f46f9d2e1664 extcon: usbc-tusb320: Update state on probe even if no IRQ pending
    ac067e75c4c2 extcon: usbc-tusb320: Add USB TYPE-C support
    9280761167f0 extcon: usbc-tusb320: Factor out extcon into dedicated functions
    05aa8ff22d4a usb: typec: Factor out non-PD fwnode properties
    31e9c2751035 extcon: usbc-tusb320: Add support for TUSB320L
    b9c8820d91e9 extcon: usbc-tusb320: Add support for mode setting and reset
    4524599a6a29 usb: typec: tipd: Fix spurious fwnode_handle_put in error path
    b0d86eacc849 usb: typec: tipd: Cleanup resources if devm_tps6598_psy_register fails
    ba75be6f0d9d usb: typec: tcpci: fix of node refcount leak in tcpci_register_port()
    154d5713a241 usb: typec: Check for ops->exit instead of ops->enter in altmode_exit
    1f5661388f43 staging: vme_user: Fix possible UAF in tsi148_dma_list_add
    a3c4bc261605 usb: fotg210-udc: Fix ages old endianness issues
    5e87d412219e uio: uio_dmem_genirq: Fix deadlock between irq config and handling
    79a4bdb6b992 uio: uio_dmem_genirq: Fix missing unlock in irq configuration
    3f22a273ef7c vfio: platform: Do not pass return buffer to ACPI _RST method
    417ef049e3fd class: fix possible memory leak in __class_register()
    f76824ab2bac serial: 8250_bcm7271: Fix error handling in brcmuart_init()
    6b4424efcfaa serial: tegra: Read DMA status before terminating
    a0ead7e8da84 drivers: dio: fix possible memory leak in dio_init()
    e8985caf0589 RISC-V: Align the shadow stack
    ca48174a7643 IB/IPoIB: Fix queue count inconsistency for PKEY child interfaces
    82bd423ed977 hwrng: geode - Fix PCI device refcount leak
    2b79a5e56077 hwrng: amd - Fix PCI device refcount leak
    42cbff35f475 crypto: img-hash - Fix variable dereferenced before check 'hdev->req'
    b9634f99b6d4 RDMA/hns: Fix error code of CMD
    b06bb747ce1f RDMA/hns: Fix page size cap from firmware
    4c05c7cf2581 RDMA/hns: Fix PBL page MTR find
    fa267c419216 RDMA/hns: Fix AH attr queried by query_qp
    e27fb26e75cf orangefs: Fix sysfs not cleanup when dev init failed
    3e9c395ef2d5 PCI: mt7621: Add sentinel to quirks table
    bcc65c2e2a06 PCI: mt7621: Rename mt7621_pci_ to mt7621_pcie_
    0a7eab1cc436 RDMA/srp: Fix error return code in srp_parse_options()
    63011001792c RDMA/hfi1: Fix error return code in parse_platform_config()
    339ca035af43 riscv/mm: add arch hook arch_clear_hugepage_flags
    20d363dcd6dc crypto: omap-sham - Use pm_runtime_resume_and_get() in omap_sham_probe()
    815b65d714f8 crypto: amlogic - Remove kcalloc without check
    af71199291db RDMA/nldev: Fix failure to send large messages
    bb895786a49d f2fs: avoid victim selection from previous victim section
    655e955debde RDMA/nldev: Add checks for nla_nest_start() in fill_stat_counter_qps()
    1895e908b3ae scsi: snic: Fix possible UAF in snic_tgt_create()
    09a60f908d8b scsi: fcoe: Fix transport not deattached when fcoe_if_init() fails
    e59da172059f scsi: ipr: Fix WARNING in ipr_init()
    c444f58fdad6 scsi: scsi_debug: Fix possible name leak in sdebug_add_host_helper()
    4e4968dfb5fa scsi: fcoe: Fix possible name leak when device_register() fails
    0f5006d7d13b scsi: scsi_debug: Fix a warning in resp_report_zones()
    2432719b1afc scsi: scsi_debug: Fix a warning in resp_verify()
    038359eeccff scsi: efct: Fix possible memleak in efct_device_init()
    23053a792647 scsi: hpsa: Fix possible memory leak in hpsa_add_sas_device()
    2ab6d5927c7b scsi: hpsa: Fix error handling in hpsa_add_sas_host()
    6a92129c8f99 scsi: mpt3sas: Fix possible resource leaks in mpt3sas_transport_port_add()
    26c0f7e1ac92 padata: Fix list iterator in padata_do_serial()
    17afa98bccec padata: Always leave BHs disabled when running ->parallel()
    221afb2a1b8d crypto: tcrypt - Fix multibuffer skcipher speed test mem leak
    bfe10a1d9fbc scsi: hpsa: Fix possible memory leak in hpsa_init_one()
    38ef0c0b0973 dt-bindings: visconti-pcie: Fix interrupts array max constraints
    83aad8111bcf dt-bindings: imx6q-pcie: Fix clock names for imx6sx and imx8mq
    f64f08b9e6fb RDMA/rxe: Fix NULL-ptr-deref in rxe_qp_do_cleanup() when socket create failed
    35f9cd060e68 RDMA/hns: fix memory leak in hns_roce_alloc_mr()
    6d5220a553de crypto: ccree - Make cc_debugfs_global_fini() available for module init function
    2e9cf3e78311 RDMA/hfi: Decrease PCI device reference count in error path
    7f476d639c89 PCI: Check for alloc failure in pci_request_irq()
    49bc2be89759 RDMA/hns: Fix ext_sge num error when post send
    0e6160d79db7 RDMA/hns: Repacing 'dseg_len' by macros in fill_ext_sge_inl_data()
    e5ea48788ed6 crypto: hisilicon/qm - add missing pci_dev_put() in q_num_set()
    442caec12f4f crypto: cryptd - Use request context instead of stack for sub-request
    ab677729fc5c crypto: ccree - Remove debugfs when platform_driver_register failed
    0328ca389a80 scsi: scsi_debug: Fix a warning in resp_write_scat()
    1ba8ecb66432 RDMA/siw: Set defined status for work completion with undefined status
    6e757005ba49 RDMA/nldev: Return "-EAGAIN" if the cm_id isn't from expected port
    f981c697b2f9 RDMA/core: Make sure "ib_port" is valid when access sysfs node
    13586753ae55 RDMA/restrack: Release MR restrack when delete
    6e78ca677fa2 PCI: vmd: Disable MSI remapping after suspend
    47e31b86edff IB/mad: Don't call to function that might sleep while in atomic context
    f8d8fbd3b6d6 RDMA/siw: Fix immediate work request flush to completion queue
    2a26849d793b scsi: qla2xxx: Fix set-but-not-used variable warnings
    799ed3755951 RDMA/irdma: Report the correct link speed
    d40d1b1c61a4 f2fs: fix to destroy sbi->post_read_wq in error path of f2fs_fill_super()
    847f725006e3 f2fs: fix normal discard process
    865bb7b5a7de f2fs: fix to invalidate dcc->f2fs_issue_discard in error path
    5f509fa740b1 apparmor: Fix memleak in alloc_ns()
    46f3cb83e480 crypto: rockchip - rework by using crypto_engine
    3ed0548d395f crypto: rockchip - remove non-aligned handling
    5562009f5f88 crypto: rockchip - better handle cipher key
    26f397135606 crypto: rockchip - add fallback for ahash
    34fe54af3cf5 crypto: rockchip - add fallback for cipher
    314217591ec6 crypto: rockchip - do not store mode globally
    853cd97d2bc1 crypto: rockchip - do not do custom power management
    d5100272e478 f2fs: Fix the race condition of resize flag between resizefs
    db72c5dffcba PCI: pci-epf-test: Register notifier if only core_init_notifier is enabled
    26ffeff67b9a RDMA/core: Fix order of nldev_exit call
    a00a7ac25114 PCI: dwc: Fix n_fts[] array overrun
    10ae636115b5 apparmor: Use pointer to struct aa_label for lbs_cred
    8d50ccfbe27b scsi: core: Fix a race between scsi_done() and scsi_timeout()
    9bdf3a59b3dd crypto: nitrox - avoid double free on error path in nitrox_sriov_init()
    7efc0d39ee06 crypto: sun8i-ss - use dma_addr instead u32
    aaef0bdd7ad2 crypto: hisilicon/qm - fix missing destroy qp_idr
    d567776ae289 apparmor: Fix abi check to include v8 abi
    bc9d2cbbdcd3 apparmor: fix lockdep warning when removing a namespace
    775a37ffa9f4 apparmor: fix a memleak in multi_transaction_new()
    09f30f394e83 net: dsa: tag_8021q: avoid leaking ctx on dsa_tag_8021q_register() error path
    86664b865239 i40e: Fix the inability to attach XDP program on downed interface
    0abd337acdd2 stmmac: fix potential division by 0
    93a4a0455871 Bluetooth: RFCOMM: don't call kfree_skb() under spin_lock_irqsave()
    8d6bbe5241e7 Bluetooth: hci_core: don't call kfree_skb() under spin_lock_irqsave()
    804de4e24a5a Bluetooth: hci_bcsp: don't call kfree_skb() under spin_lock_irqsave()
    1030c3aeeef9 Bluetooth: hci_h5: don't call kfree_skb() under spin_lock_irqsave()
    9fcb5b367e6c Bluetooth: hci_ll: don't call kfree_skb() under spin_lock_irqsave()
    14cc94a59852 Bluetooth: hci_qca: don't call kfree_skb() under spin_lock_irqsave()
    06467130d521 Bluetooth: btusb: don't call kfree_skb() under spin_lock_irqsave()
    e52b7d460a30 Bluetooth: btintel: Fix missing free skb in btintel_setup_combined()
    f7c9de3bcfcd Bluetooth: MGMT: Fix error report for ADD_EXT_ADV_PARAMS
    2addf3cb6381 sctp: sysctl: make extra pointers netns aware
    21296a52caa6 ntb_netdev: Use dev_kfree_skb_any() in interrupt context
    0fff763f110f net: lan9303: Fix read error execution path
    882bad40a008 can: tcan4x5x: Fix use of register error status mask
    d50092f662ec can: m_can: Call the RAM init directly from m_can_chip_config
    55064642aac1 can: tcan4x5x: Remove invalid write in clear_interrupts
    641eef876657 net: amd-xgbe: Check only the minimum speed for active/passive cables
    60b35e28dc2a net: amd-xgbe: Fix logic around active and passive cables
    d436bf39f47b af_unix: call proto_unregister() in the error path in af_unix_init()
    ee9d03bf8907 net: amd: lance: don't call dev_kfree_skb() under spin_lock_irqsave()
    6f1c4c01cc9b hamradio: don't call dev_kfree_skb() under spin_lock_irqsave()
    eb2c6a6e8f75 net: ethernet: dnet: don't call dev_kfree_skb() under spin_lock_irqsave()
    ef08e1082c45 net: emaclite: don't call dev_kfree_skb() under spin_lock_irqsave()
    2786ef4066d9 net: apple: bmac: don't call dev_kfree_skb() under spin_lock_irqsave()
    d81314e2dded net: apple: mace: don't call dev_kfree_skb() under spin_lock_irqsave()
    9a6544343bba net/tunnel: wait until all sk_user_data reader finish before releasing the sock
    998b4e54f517 net: farsync: Fix kmemleak when rmmods farsync
    71605c690621 ethernet: s2io: don't call dev_kfree_skb() under spin_lock_irqsave()
    ce1b3a41e796 of: overlay: fix null pointer dereferencing in find_dup_cset_node_entry() and find_dup_cset_prop()
    8399b9893548 drivers: net: qlcnic: Fix potential memory leak in qlcnic_sriov_init()
    96e50897029f net: stmmac: fix possible memory leak in stmmac_dvr_probe()
    ecaf934e4412 net: stmmac: selftests: fix potential memleak in stmmac_test_arpoffload()
    e1359bc90a49 net: defxx: Fix missing err handling in dfx_init()
    c65603abc389 net: vmw_vsock: vmci: Check memcpy_from_msg()
    9de42116fc45 clk: socfpga: Fix memory leak in socfpga_gate_init()
    e515881adeb1 bpf: Do not zero-extend kfunc return values
    ce61a877c79f blktrace: Fix output non-blktrace event when blk_classic option enabled
    f2ae56fa0b61 wifi: brcmfmac: Fix error return code in brcmf_sdio_download_firmware()
    23060daf3759 wifi: rtl8xxxu: Fix the channel width reporting
    6d0e00334e31 wifi: rtl8xxxu: Add __packed to struct rtl8723bu_c2h
    e69d38065080 spi: spi-gpio: Don't set MOSI as an input if not 3WIRE mode
    4e501a31af8e clk: samsung: Fix memory leak in _samsung_clk_register_pll()
    441c05485cf1 media: coda: Add check for kmalloc
    b99872178e74 media: coda: Add check for dcoda_iram_alloc
    fbf081ebe268 media: c8sectpfe: Add of_node_put() when breaking out of loop
    2a7330d8200e regulator: qcom-labibb: Fix missing of_node_put() in qcom_labibb_regulator_probe()
    ecf1b317a86b mmc: core: Normalize the error handling branch in sd_read_ext_regs()
    7fecca429e6e memstick/ms_block: Add check for alloc_ordered_workqueue
    b77ced3fce5c memstick: ms_block: Add error handling support for add_disk()
    ae00eb67792b mmc: renesas_sdhi: alway populate SCC pointer
    88fa6a4e39c1 mmc: mmci: fix return value check of mmc_add_host()
    29c3690969e7 mmc: wbsd: fix return value check of mmc_add_host()
    0959cc1685eb mmc: via-sdmmc: fix return value check of mmc_add_host()
    e0cfe7aa41f3 mmc: meson-gx: fix return value check of mmc_add_host()
    62005dfcc396 mmc: omap_hsmmc: fix return value check of mmc_add_host()
    1925472dec31 mmc: atmel-mci: fix return value check of mmc_add_host()
    58c3a8d0f1ab mmc: wmt-sdmmc: fix return value check of mmc_add_host()
    afc898019e7b mmc: vub300: fix return value check of mmc_add_host()
    6444079767b6 mmc: toshsd: fix return value check of mmc_add_host()
    df683201c7ff mmc: rtsx_usb_sdmmc: fix return value check of mmc_add_host()
    30dc645461df mmc: rtsx_pci: fix return value check of mmc_add_host()
    bc7e8744f581 mmc: pxamci: fix return value check of mmc_add_host()
    2d496050ded8 mmc: mxcmmc: fix return value check of mmc_add_host()
    f0502fe86a2d mmc: moxart: fix return value check of mmc_add_host()
    29c5b4da41f3 mmc: alcor: fix return value check of mmc_add_host()
    52e0d8a8dda3 riscv, bpf: Emit fixed-length instructions for BPF_PSEUDO_FUNC
    0de70ed675fa NFSv4.x: Fail client initialisation if state manager thread can't run
    7055c878a0ec SUNRPC: Fix missing release socket in rpc_sockname()
    79d4cd40da5a xprtrdma: Fix regbuf data not freed in rpcrdma_req_create()
    cba633b24a98 ALSA: mts64: fix possible null-ptr-defer in snd_mts64_interrupt
    9018550d96df media: saa7164: fix missing pci_disable_device()
    2df1e2a6ec52 ALSA: pcm: Set missing stop_operating flag at undoing trigger start
    a443c55d96de bpf, sockmap: fix race in sock_map_free()
    5229b9033713 hwmon: (jc42) Restore the min/max/critical temperatures on resume
    785f5c732ab8 hwmon: (jc42) Convert register access and caching to regmap/regcache
    c4c64d8abd65 regulator: core: fix resource leak in regulator_register()
    07f82dca1122 configfs: fix possible memory leak in configfs_create_dir()
    21a061772b08 hsr: Synchronize sequence number updates.
    a82f5b2e0864 hsr: Synchronize sending frames to have always incremented outgoing seq nr.
    bb3b40cd6ae5 hsr: Disable netpoll.
    8e148d981bcc hsr: Avoid double remove of a node.
    9387cbf7f7fd hsr: Add a rcu-read lock to hsr_forward_skb().
    a051e10bfc69 clk: qcom: clk-krait: fix wrong div2 functions
    8275c7465d9e clk: qcom: lpass-sc7180: Fix pm_runtime usage
    91657ec4d0e5 regulator: core: fix module refcount leak in set_supply()
    66976a3be9bc wifi: mt76: fix coverity overrun-call in mt76_get_txpower()
    a21e3f6f414b wifi: mt76: mt7921: fix reporting of TX AGGR histogram
    c8659018b630 mt76: stop the radar detector after leaving dfs channel
    ae19622e7ff8 wifi: cfg80211: Fix not unregister reg_pdev when load_builtin_regdb_keys() fails
    2e32f1299814 wifi: mac80211: fix memory leak in ieee80211_if_add()
    f58888434d75 spi: spidev: mask SPI_CS_HIGH in SPI_IOC_RD_MODE
    b6d27d9250e7 bonding: uninitialized variable in bond_miimon_inspect()
    7201e4f4f52e bpf, sockmap: Fix data loss caused by using apply_bytes on ingress redirect
    6105ed3598e1 bpf, sockmap: Fix missing BPF_F_INGRESS flag when using apply_bytes
    8786bde11a4f bpf, sockmap: Fix repeated calls to sock_put() when msg has more_data
    a222f992ce5b Input: wistron_btns - disable on UML
    d78649c21bbb netfilter: conntrack: set icmpv6 redirects as RELATED
    09fe3b139268 ASoC: pcm512x: Fix PM disable depth imbalance in pcm512x_probe
    8876793e56ec drm/amdkfd: Fix memory leakage
    8f2d2badf8ca drm/amdgpu: Fix PCI device refcount leak in amdgpu_atrm_get_bios()
    88c6e0995c04 drm/radeon: Fix PCI device refcount leak in radeon_atrm_get_bios()
    0af0ff9fc00d drm/amd/pm/smu11: BACO is supported when it's in BACO state
    27e7cf595d4a ASoC: mediatek: mt8173: Enable IRQ when pdata is ready
    905e5653756a ASoC: mediatek: mt8173: Fix debugfs registration for components
    d8e32f1bf1a9 wifi: iwlwifi: mvm: fix double free on tx path.
    d0bb44775c44 ALSA: asihpi: fix missing pci_disable_device()
    f12377abac15 NFS: Fix an Oops in nfs_d_automount()
    9a96aff53c21 NFSv4: Fix a deadlock between nfs4_open_recover_helper() and delegreturn
    c6aca4c7ba8f NFSv4: Fix a credential leak in _nfs4_discover_trunking()
    7f6607c88426 NFSv4.2: Fix initialisation of struct nfs4_label
    51899eefd1a6 NFSv4.2: Fix a memory stomp in decode_attr_security_label
    34dffc77ddf6 NFSv4.2: Clear FATTR4_WORD2_SECURITY_LABEL when done decoding
    d926611c89ac ASoC: mediatek: mtk-btcvsd: Add checks for write and read of mtk_btcvsd_snd
    f243ff92d6d3 ASoC: dt-bindings: wcd9335: fix reset line polarity in example
    41d7b8291c6d drm/tegra: Add missing clk_disable_unprepare() in tegra_dc_probe()
    2376d7fa08bb media: s5p-mfc: Add variant data for MFC v7 hardware for Exynos 3250 SoC
    210fcf64be4d media: dvb-usb: az6027: fix null-ptr-deref in az6027_i2c_xfer()
    b223cc15f922 media: dvb-core: Fix ignored return value in dvb_register_frontend()
    825a8af31d6b pinctrl: pinconf-generic: add missing of_node_put()
    eedc698d6610 clk: imx8mn: fix imx8mn_enet_phy_sels clocks list
    f86a432604c3 clk: imx8mn: fix imx8mn_sai2_sels clocks list
    5e98c3a34503 clk: imx: replace osc_hdmi with dummy
    9453e097b862 clk: imx8mn: rename vpu_pll to m7_alt_pll
    bffc80bac8c5 media: imon: fix a race condition in send_packet()
    9c9ff35d6869 media: vimc: Fix wrong function called when vimc_init() fails
    f849c116d320 ASoC: qcom: Add checks for devm_kcalloc
    16437645dd97 drbd: destroy workqueue when drbd device was freed
    cdaf45415c1e drbd: remove call to memset before free device/resource/connection
    f35981083cb3 mtd: maps: pxa2xx-flash: fix memory leak in probe
    87c750affd88 bonding: fix link recovery in mode 2 when updelay is nonzero
    02105f0b3021 drm/amdgpu: fix pci device refcount leak
    5b0a1f1247cd clk: rockchip: Fix memory leak in rockchip_clk_register_pll()
    27aac5c01246 regulator: core: use kfree_const() to free space conditionally
    a69b1faa9b14 ALSA: seq: fix undefined behavior in bit shift for SNDRV_SEQ_FILTER_USE_EVENT
    9c0f3617ba31 ALSA: pcm: fix undefined behavior in bit shift for SNDRV_PCM_RATE_KNOT
    6159424e2dd9 pinctrl: k210: call of_node_put()
    18a973fcb190 HID: hid-sensor-custom: set fixed size for custom attributes
    0fc4280dbec3 bpf: Move skb->len == 0 checks into __bpf_redirect
    8dbcb4c284bc mtd: spi-nor: Fix the number of bytes for the dummy cycles
    58e1a0ef5255 mtd: spi-nor: hide jedec_id sysfs attribute if not present
    348d95e39fec inet: add READ_ONCE(sk->sk_bound_dev_if) in inet_csk_bind_conflict()
    4451bef1a3dd media: videobuf-dma-contig: use dma_mmap_coherent
    b2781a862608 media: platform: exynos4-is: Fix error handling in fimc_md_init()
    7cf71bbe5d2e media: solo6x10: fix possible memory leak in solo_sysfs_init()
    c290aa527fd8 media: vidtv: Fix use-after-free in vidtv_bridge_dvb_init()
    648f3031025a Input: elants_i2c - properly handle the reset GPIO when power is off
    e0d3e46ac666 mtd: lpddr2_nvm: Fix possible null-ptr-deref
    ab4e42f51931 drm/msm/a6xx: Fix speed-bin detection vs probe-defer
    fea795f7c7cf wifi: ath10k: Fix return value in ath10k_pci_init()
    77482c4dd4a0 block: clear ->slave_dir when dropping the main slave_dir reference
    62251948e2e7 ima: Fix misuse of dereference of pointer in template_desc_init_fields()
    29d6c69ba4b9 integrity: Fix memory leakage in keyring allocation error path
    8e6df9571744 drm/fourcc: Fix vsub/hsub for Q410 and Q401
    ec1727f89ecd drm/fourcc: Add packed 10bit YUV 4:2:0 format
    f72608b8dd08 regulator: qcom-rpmh: Fix PMR735a S3 regulator spec
    63d011ad0505 nvme: return err on nvme_init_non_mdts_limits fail
    f289a38df0da amdgpu/pm: prevent array underflow in vega20_odn_edit_dpm_table()
    cda1895f3b7f regulator: core: fix unbalanced of node refcount in regulator_dev_lookup()
    1a5aaa5736eb nvmet: only allocate a single slab for bvecs
    cb3033a43263 libbpf: Fix uninitialized warning in btf_dump_dump_type_data
    83baa509396a ASoC: pxa: fix null-pointer dereference in filter()
    a06ba0f7f859 drm/mediatek: Modify dpi power on/off sequence.
    6d25bc637081 drm/radeon: Add the missed acpi_put_table() to fix memory leak
    4cf11e9d3144 bfq: fix waker_bfqq inconsistency crash
    55e822212e78 rxrpc: Fix ack.bufferSize to be 0 when generating an ack
    5ef8bf0df14d net, proc: Provide PROC_FS=n fallback for proc_create_net_single_write()
    d1c44928bb3c media: camss: Clean up received buffers on failed start of streaming
    3b4b4df3f8d8 wifi: rsi: Fix handling of 802.3 EAPOL frames sent via control port
    9e1440c858e6 Input: joystick - fix Kconfig warning for JOYSTICK_ADC
    71212d731848 mtd: Fix device name leak when register device failed in add_mtd_device()
    106311677b27 clk: qcom: gcc-sm8250: Use retention mode for USB GDSCs
    322c7415e77e bpf: propagate precision across all frames, not just the last one
    07c286c10a9c bpf: Check the other end of slot_type for STACK_SPILL
    fdbc363bc1d0 bpf: propagate precision in ALU/ALU64 operations
    b29e46610cfe media: platform: exynos4-is: fix return value check in fimc_md_probe()
    ab54081a2843 media: vivid: fix compose size exceed boundary
    3c58c83c6fc8 bpf: Fix slot type check in check_stack_write_var_off
    cffa75198ca1 drm/msm/hdmi: use devres helper for runtime PM management
    58d002b72e0a drm/msm/hdmi: drop unused GPIO support
    2d4bc60693c4 ima: Handle -ESTALE returned by ima_filter_rule_match()
    13fc167e1645 drm/panel/panel-sitronix-st7701: Remove panel on DSI attach failure
    c20672cfa097 spi: Update reference to struct spi_controller
    2858d038c5d3 clk: renesas: r9a06g032: Repair grave increment error
    f6ed73db3903 drm/rockchip: lvds: fix PM usage counter unbalance in poweron
    13fab6322b9f can: kvaser_usb: Compare requested bittiming parameters with actual parameters in do_set_{,data}_bittiming
    4e55d61e87f2 can: kvaser_usb: Add struct kvaser_usb_busparams
    fcfd4df200ff can: kvaser_usb_leaf: Fix bogus restart events
    51f07da38bae can: kvaser_usb_leaf: Fix wrong CAN state after stopping
    647c26887b5b can: kvaser_usb_leaf: Fix improved state not being reported
    9676d65a4ad3 can: kvaser_usb: make use of units.h in assignment of frequency
    c76110856281 can: kvaser_usb_leaf: Set Warning state even without bus errors
    a60bf9d81473 can: kvaser_usb: kvaser_usb_leaf: Handle CMD_ERROR_EVENT
    8aae6bddc1d3 can: kvaser_usb: kvaser_usb_leaf: Rename {leaf,usbcan}_cmd_error_event to {leaf,usbcan}_cmd_can_error_event
    972270be2452 can: kvaser_usb: kvaser_usb_leaf: Get capabilities from device
    e9e0d9945fd1 can: kvaser_usb: do not increase tx statistics when sending error message frames
    e39bce64e58e libbpf: Btf dedup identical struct test needs check for nested structs/arrays
    d4419f93e214 media: exynos4-is: don't rely on the v4l2_async_subdev internals
    8741792d8274 soreuseport: Fix socket selection for SO_INCOMING_CPU.
    094f56192c56 venus: pm_helpers: Fix error check in vcodec_domains_get()
    3c793a9ad9d3 media: i2c: ad5820: Fix error path
    07611f9e44e1 media: adv748x: afe: Select input port when initializing AFE
    aa81257dbf3b media: coda: jpeg: Add check for kmalloc
    9a402adc9f5e media: v4l2-ctrls: Fix off-by-one error in integer menu control check
    1caed03305b5 drm/amdgpu/powerplay/psm: Fix memory leak in power state init
    f66a8770832e ipmi: kcs: Poll OBF briefly to reduce OBE latency
    983320199e33 ata: libata: fix NCQ autosense logic
    a9caf71aeb48 ata: add/use ata_taskfile::{error|status} fields
    3483c3fb4877 ata: libata: move ata_{port,link,dev}_dbg to standard pr_XXX() macros
    67061355776e libbpf: Fix null-pointer dereference in find_prog_by_sec_insn()
    a733bf10198e libbpf: Fix use-after-free in btf_dump_name_dups
    b5ec2a04fed3 drm/bridge: adv7533: remove dynamic lane switching from adv7533 bridge
    6d40a49d0559 wifi: rtl8xxxu: Fix reading the vendor of combo chips
    355f16f756aa wifi: ath9k: hif_usb: Fix use-after-free in ath9k_hif_usb_reg_in_cb()
    d856f7574bcc wifi: ath9k: hif_usb: fix memory leak of urbs in ath9k_hif_usb_dealloc_tx_urbs()
    12229a2523f0 platform/mellanox: mlxbf-pmc: Fix event typo
    a0d93aac54ce rapidio: devices: fix missing put_device in mport_cdev_open
    7af9cb8cbb81 hfs: Fix OOB Write in hfs_asc2mac
    90962b3b1c3b relay: fix type mismatch when allocating memory in relay_create_buf()
    0d60b11f8fce eventfd: change int to __u64 in eventfd_signal() ifndef CONFIG_EVENTFD
    2f5cc7fd73fd rapidio: fix possible UAF when kfifo_alloc() fails
    337b68da6856 fs: sysv: Fix sysv_nblocks() returns wrong value
    95d42a8d3d4a lockd: set other missing fields when unlocking files
    318229b4d35b MIPS: OCTEON: warn only once if deprecated link status is being used
    5e6d37a93a38 MIPS: BCM63xx: Add check for NULL for clk in clk_enable
    50af0ba3e163 platform/x86: intel_scu_ipc: fix possible name leak in __intel_scu_ipc_register()
    3cf81501356c platform/x86: mxm-wmi: fix memleak in mxm_wmi_call_mx[ds|mx]()
    0ceadb5a3e45 platform/chrome: cros_ec_typec: zero out stale pointers
    49c98b568881 platform/chrome: cros_ec_typec: Cleanup switch handle return paths
    b55ef8508ac4 PM: runtime: Do not call __rpm_callback() from rpm_idle()
    0bf874183b32 xen/privcmd: Fix a possible warning in privcmd_ioctl_mmap_resource()
    70966d6b0f59 x86/xen: Fix memory leak in xen_init_lock_cpu()
    23aef94eea71 x86/xen: Fix memory leak in xen_smp_intr_init{_pv}()
    03ab1c5c2f0b uprobes/x86: Allow to probe a NOP instruction with 0x66 prefix
    6fde666278f9 ACPICA: Fix use-after-free in acpi_ut_copy_ipackage_to_ipackage()
    9cabd5f4f1ba clocksource/drivers/timer-ti-dm: Fix missing clk_disable_unprepare in dmtimer_systimer_init_clock()
    b73c76c3c445 cpu/hotplug: Do not bail-out in DYING/STARTING sections
    6eb1802184df cpu/hotplug: Make target_store() a nop when target == state
    cd130e2676dd futex: Resend potentially swallowed owner death notification
    fd8a10d44c11 futex: Move to kernel/futex/
    156144bd18c3 mips: ralink: mt7621: do not use kzalloc too early
    186d59bb6a54 mips: ralink: mt7621: soc queries and tests as functions
    8348da01e5c6 mips: ralink: mt7621: define MT7621_SYSC_BASE with __iomem
    0f8e6fe09cfa clocksource/drivers/sh_cmt: Access registers according to spec
    a47de2fd3f88 rapidio: rio: fix possible name leak in rio_register_mport()
    ec3f04f74f50 rapidio: fix possible name leaks when rio_add_device() fails
    4662d8e6ab20 debugfs: fix error when writing negative value to atomic_t debugfs file
    7e8e8cc13625 lib/notifier-error-inject: fix error when writing -errno to debugfs file
    39b5e6130b73 libfs: add DEFINE_SIMPLE_ATTRIBUTE_SIGNED for signed value
    19c202e6e55c cpufreq: amd_freq_sensitivity: Add missing pci_dev_put()
    93e3c803383a genirq/irqdesc: Don't try to remove non-existing sysfs files
    435cc7d18c96 nfsd: don't call nfsd_file_put from client states seqfile display
    5030d4d2bf8b NFSD: Finish converting the NFSv2 GETACL result encoder
    e498675e0684 SUNRPC: Return true/false (not 1/0) from bool functions
    3e255dc21031 EDAC/i10nm: fix refcount leak in pci_get_dev_wrapper()
    740efb64ca5e irqchip/wpcm450: Fix memory leak in wpcm450_aic_of_init()
    77b99b483f82 irqchip: gic-pm: Use pm_runtime_resume_and_get() in gic_probe()
    5139cbc0c6e4 thermal: core: fix some possible name leaks in error paths
    cab345f9d519 platform/chrome: cros_usbpd_notify: Fix error handling in cros_usbpd_notify_init()
    0358bc7cc21a perf/x86/intel/uncore: Fix reference count leak in __uncore_imc_init_box()
    433bd587dca5 perf/x86/intel/uncore: Fix reference count leak in snr_uncore_mmio_map()
    3485f1975180 perf/x86/intel/uncore: Fix reference count leak in hswep_has_limit_sbox()
    0021ef7dc612 perf/x86/intel/uncore: Fix reference count leak in sad_cfg_iio_topology()
    c12b314bb23d PNP: fix name memory leak in pnp_alloc_dev()
    f1c7a6af710c selftests/efivarfs: Add checking of the test return value
    46be3ee1cab9 MIPS: vpe-cmp: fix possible memory leak while module exiting
    e820a8192ff6 MIPS: vpe-mt: fix possible memory leak while module exiting
    61d68cf2ba79 ocfs2: fix memory leak in ocfs2_stack_glue_init()
    e83b47580a07 lib/fonts: fix undefined behavior in bit shift for get_default_font
    0df7d9ab6bce proc: fixup uptime selftest
    07b8659b8e5b timerqueue: Use rb_entry_safe() in timerqueue_getnext()
    413b18866b40 platform/x86: huawei-wmi: fix return value calculation
    4b469322830d lib/debugobjects: fix stat count and optimize debug_objects_mem_init
    f790dfe81629 perf: Fix possible memleak in pmu_dev_alloc()
    418d21c0df5b selftests/ftrace: event_triggers: wait longer for test_event_enable
    4ea765b10624 cpufreq: qcom-hw: Fix memory leak in qcom_cpufreq_hw_read_lut()
    c52d9c25d95c fs: don't audit the capability check in simple_xattr_list()
    e4d0d13b46c6 PM: hibernate: Fix mistake in kerneldoc comment
    1f62b8e50dd2 x86/sgx: Reduce delay and interference of enclave release
    f5b88170f09c alpha: fix syscall entry in !AUDUT_SYSCALL case
    a819ba80b99c alpha: fix TIF_NOTIFY_SIGNAL handling
    eb2a732ef451 cpuidle: dt: Return the correct numbers of parsed idle states
    3af4f5cb8ae7 sched/uclamp: Make asym_fits_capacity() use util_fits_cpu()
    23cb580e0c6b sched/core: Introduce sched_asym_cpucap_active()
    41c2dba3885e sched/fair: Removed useless update of p->recent_used_cpu
    55ffeab089aa sched/uclamp: Make select_idle_capacity() use util_fits_cpu()
    4639bfbb83bd sched/uclamp: Make task_fits_capacity() use util_fits_cpu()
    309e50cbfefc sched/uclamp: Fix relationship between uclamp and migration margin
    54a766e19681 sched/fair: Cleanup task_util and capacity type
    26bffaf6784a ovl: remove privs in ovl_fallocate()
    5dc34f9aaaf4 ovl: remove privs in ovl_copyfile()
    9636e70ee2d3 ovl: use ovl_copy_{real,upper}attr() wrappers
    a54843833caf ovl: store lower path in ovl_inode
    163c5bbe7d2f tpm/tpm_crb: Fix error message in __crb_relinquish_locality()
    fe880e9df97a tpm/tpm_ftpm_tee: Fix error handling in ftpm_mod_init()
    ebc73c4f2662 pstore: Avoid kcore oops by vmap()ing with VM_IOREMAP
    d4dcde11bff2 ARM: mmp: fix timer_read delay
    95916147dcc7 pstore/ram: Fix error return code in ramoops_probe()
    a31a647a3d10 seccomp: Move copy_seccomp() to no failure path.
    b8b76b8da66d arm64: dts: armada-3720-turris-mox: Add missing interrupt for RTC
    820a5ccca7c3 ARM: dts: turris-omnia: Add switch port 6 node
    b311f8e9f503 ARM: dts: turris-omnia: Add ethernet aliases
    48ebdd06c93c ARM: dts: armada-39x: Fix assigned-addresses for every PCIe Root Port
    f27dd04e44d8 ARM: dts: armada-38x: Fix assigned-addresses for every PCIe Root Port
    1e53c63da8df ARM: dts: armada-375: Fix assigned-addresses for every PCIe Root Port
    3af1a73e9e30 ARM: dts: armada-xp: Fix assigned-addresses for every PCIe Root Port
    e4ed8133c46d ARM: dts: armada-370: Fix assigned-addresses for every PCIe Root Port
    b335b6344ee1 ARM: dts: dove: Fix assigned-addresses for every PCIe Root Port
    5b3415e68336 arm64: dts: mediatek: mt6797: Fix 26M oscillator unit name
    93f5e6649619 arm64: dts: mediatek: pumpkin-common: Fix devicetree warnings
    debd938e21cd arm64: dts: mt2712-evb: Fix usb vbus regulators unit names
    b2c6397754f1 arm64: dts: mt2712-evb: Fix vproc fixed regulators unit names
    96c972f83593 arm64: dts: mt2712e: Fix unit address for pinctrl node
    2cd1391c28e8 arm64: dts: mt2712e: Fix unit_address_vs_reg warning for oscillators
    39877a3636cd arm64: dts: mt6779: Fix devicetree build warnings
    af431ce47ef0 ARM: dts: nuvoton: Remove bogus unit addresses from fixed-partition nodes
    0a616049ec03 arm64: dts: ti: k3-j721e-main: Drop dma-coherent in crypto node
    22a740824af8 arm64: dts: ti: k3-am65-main: Drop dma-coherent in crypto node
    b131304fe722 perf/smmuv3: Fix hotplug callback leak in arm_smmu_pmu_init()
    b99fbe8d949a perf/arm_dmc620: Fix hotplug callback leak in dmc620_pmu_init()
    9285b623bbe1 perf: arm_dsu: Fix hotplug callback leak in dsu_pmu_init()
    e6318a7e19f5 arm64: mm: kfence: only handle translation faults
    46ddfb9d1e46 arm64: Treat ESR_ELx as a 64-bit register
    681e3401286b soc: ti: smartreflex: Fix PM disable depth imbalance in omap_sr_probe
    6eca7a2535eb soc: ti: knav_qmss_queue: Fix PM disable depth imbalance in knav_queue_probe
    972f8fc0651e soc: ti: knav_qmss_queue: Use pm_runtime_resume_and_get instead of pm_runtime_get_sync
    fe53048f2adb arm: dts: spear600: Fix clcd interrupt
    75baeec4642f arm64: dts: qcom: sm6125: fix SDHCI CQE reg names
    0f9ac041911d soc: qcom: apr: Add check for idr_alloc and of_property_read_string_index
    6855dd02c55d soc: qcom: apr: make code more reuseable
    c9fb81a8355c arm64: dts: qcom: sm8250: drop bogus DP PHY clock
    53ffa5746415 arm64: dts: qcom: sm8350: fix UFS PHY registers
    d5a6bbd7a231 arm64: dts: qcom: sm8250: fix UFS PHY registers
    3a52ff845f12 arm64: dts: qcom: sm8150: fix UFS PHY registers
    800f8165e0ca arm64: dts: qcom: Correct QMP PHY child node name
    ee136f275bad soc: qcom: llcc: make irq truly optional
    aa7ffd41749b arm64: dts: qcom: sm8250: correct LPASS pin pull down
    f94bacc616f2 arm64: dts: qcom: pm660: Use unique ADC5_VCOIN address in node name
    d5bf1197817d drivers: soc: ti: knav_qmss_queue: Mark knav_acc_firmwares as static
    4707d5daf842 ARM: dts: stm32: Fix AV96 WLAN regulator gpio property
    33647d7a467d ARM: dts: stm32: Drop stm32mp15xc.dtsi from Avenger96
    9f271a866071 objtool, kcsan: Add volatile read/write instrumentation to whitelist
    51fe2dcba805 arm64: dts: qcom: msm8916: Drop MSS fallback compatible
    a9fff3524f2a arm64: dts: qcom: sdm845-cheza: fix AP suspend pin bias
    6487f48ea359 arm64: dts: qcom: sdm630: fix UART1 pin bias
    6c0c9c545857 ARM: dts: qcom: apq8064: fix coresight compatible
    0f9b088d68ba arm64: dts: qcom: msm8996: fix GPU OPP table
    270683fc7b3c arm64: dts: qcom: msm8996: fix supported-hw in cpufreq OPP tables
    5c5a62891434 arm64: dts: qcom: msm8996: Add MSM8996 Pro support
    3f14048ee419 arm64: dts: qcom: sm8250-sony-xperia-edo: fix touchscreen bias-disable
    89f79f8d7f30 arm64: dts: qcom: ipq6018-cp01-c1: use BLSPI1 pins
    9db5992e72ed usb: musb: remove extra check in musb_gadget_vbus_draw
    adc063a491a7 drm/amd/display: Manually adjust strobe for DCN303
    5827ddaf4534 Linux 5.15.85
    e22dbadac8d4 net: loopback: use NET_NAME_PREDICTABLE for name_assign_type
    314e7a7836c7 selftests: net: Use "grep -E" instead of "egrep"
    19a78143961a Bluetooth: L2CAP: Fix u8 overflow
    f692abf13940 HID: uclogic: Add HID_QUIRK_HIDINPUT_FORCE quirk
    5325a884e2c3 usb: dwc3: pci: Update PCIe device ID for USB3 controller on CPU sub-system for Raptor Lake
    367e1e3399db igb: Initialize mailbox message for VF reset
    a301742b35bc xhci: Apply XHCI_RESET_TO_DEFAULT quirk to ADL-N
    5e959f0c4c57 USB: serial: f81534: fix division by zero on line-speed change
    68fbe268d2cb USB: serial: f81232: fix division by zero on line-speed change
    3ec7f24b8bb8 USB: serial: cp210x: add Kamstrup RF sniffer PIDs
    2b092fab2340 USB: serial: option: add Quectel EM05-G modem
    6b41a35b41f7 usb: gadget: uvc: Prevent buffer overflow in setup handler
    828112571c92 udf: Fix extending file within last block
    df1a2596c775 udf: Do not bother looking for prealloc extents if i_lenExtents matches i_size
    63dbbd8f1499 udf: Fix preallocation discarding at indirect extent boundary
    79a97f08ae5d udf: Discard preallocation before extending file with a hole

(From OE-Core rev: 786b9bbf412d4d9e10d5bfeaa448b2cd8d679359)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 716a30060d8c1be02d9711204b5b001e71d7d890)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-04 23:32:27 +00:00
Ross Burton
65be3ab08e ppp: backport fix for CVE-2022-4603
(From OE-Core rev: 4af92cb7c94a26fae56ae3915ce5b3070a5eadfd)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit d5d787b44b102e3a69e28948326e39f83fc1d98d)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-04 23:32:27 +00:00
Vivek Kumbhar
96902bcc2c openssl: fix CVE-2022-3996 double locking leads to denial of service
(From OE-Core rev: 7007673bcdb606dbe78c71f72aceda6483485fb6)

Signed-off-by: Vivek Kumbhar <vkumbhar@mvista.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-04 23:32:27 +00:00
Marek Vasut
4e69335efc bitbake: fetch2/git: Clarify the meaning of namespace
Namespace in this context means a branch, a tag, etc., clarify
it in the description. Also, fix a typo "a any", replace with
plain "any".

This patch is based of feedback on new applied patch
d32e5b0e ("fetch2/git: Prevent git fetcher from fetching gitlab repository metadata")

(Bitbake rev: a40fc6a3f774bcb28cf72701ac146ceb7ae8061a)

Signed-off-by: Marek Vasut <marex@denx.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit b4999425c812b25cb359d5163d11e3c1b030dc28)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-04 10:34:08 +00:00
Marek Vasut
581b574ebb bitbake: fetch2/git: Prevent git fetcher from fetching gitlab repository metadata
The bitbake git fetcher currently fetches 'refs/*:refs/*', i.e. every
single object in the remote repository. This works poorly with gitlab
and github, which use the remote git repository to track its metadata
like merge requests, CI pipelines and such.

Specifically, gitlab generates refs/merge-requests/*, refs/pipelines/*
and refs/keep-around/* and they all contain massive amount of data that
are useless for the bitbake build purposes. The amount of useless data
can in fact be so massive (e.g. with FDO mesa.git repository) that some
proxies may outright terminate the 'git fetch' connection, and make it
appear as if bitbake got stuck on 'git fetch' with no output.

To avoid fetching all these useless metadata, tweak the git fetcher such
that it only fetches refs/heads/* and refs/tags/* . Avoid using negative
refspecs as those are only available in new git versions.

Per feedback on the ML, Gerrit may push commits outsides of branches or
tags during CI runs, which currently works with the 'nobranch=1' fetcher
parameter. To retain this functionality, keep fetching everything in case
the 'nobranch=1' is present. This still avoids fetching massive amount of
data in the common case, since 'nobranch=1' is rare. Update 'nobranch'
documentation.

Reviewed-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
(Bitbake rev: 2b4583922de184a2d96324cd4e3f85993341cd14)

Signed-off-by: Marek Vasut <marex@denx.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit d32e5b0ec2ab85ffad7e56ac5b3160860b732556)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-04 10:34:08 +00:00
Ross Burton
f59aa3752d bitbake: bb/utils: include SSL certificate paths in export_proxies
bb.utils.export_proxies() is a poor-man's alternative for the
environment setup code in bb/fetch2, but it's used in several places
where recipes want to download manually (such as cve-update-db-native).

Notably, export_proxies() doesn't pass on the SSL certificate paths from
the original environment, so if SSL_CERT_FILE needs to be set (for
example, in a buildtools environment) then proxies work but SSL doesn't.

In an ideal world export_proxies and the same logic in fetch2 would
merge, but until then we can add the SSL_CERT_ variables and duplicate
the basic logic: check the datastore first and then the original
environment for variables.

Also remove the return value as nothing ever checked it.

[ YOCTO #15000 ]

(Bitbake rev: 28ba566c25af72afe62ea3cb62b0bafeffc47de8)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-30 08:40:33 +00:00
Alexander Kanavin
c805f0f90a selftest/virgl: use pkg-config from the host
The check needs to report dri location on the host machine,
so pkg-config binary needs to be capable of finding the needed
dri.pc file on the host, and therefore needs to know where
host .pc files are located.

This may not be the case when using pkg-config from buildtools,
so this forces usage of host pkg-config.

runqemu already does the same PATH tweak, so this simply brings
the two in sync.

(From OE-Core rev: cfd9f549a0d5dd44f4c71bd077b5fd17d3683550)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit f0521f8a3ba7e15482756529ee7b0a95b3d53e7d)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-26 23:39:06 +00:00
Benoît Mauduit
1f240d44b3 lib/oe/reproducible: Use git log without gpg signature
Previously, if "showSignature" is present in user gitconfig, parsing
of the timestamp will fail.

Ideally we should replace this command with a git plumbing command.

(From OE-Core rev: 1075cdeae6af392acddb8c975ac4facc91a5ccde)

Signed-off-by: Benoît Mauduit <bmauduit@beneth.fr>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 3bd6f78f79b3d3e87d8db1e11f58d8021f929843)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-26 23:39:06 +00:00
Saul Wold
fb1c4f78d2 at: Change when files are copied
The create_spdx code relies on patched code, if files are changed
or added during the do_configure phase they will be missed by the
create_spdx process. So we need to ensure files modifications/additions
happen in the do_patch phase.

(From OE-Core rev: d887fe5886dc6bd9756835a2ca8c88db54e649f6)

Signed-off-by: Saul Wold <saul.wold@windriver.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 227c46fe48b64de7574f7b6b407b8c13be71b392)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-26 23:39:06 +00:00
Ross Burton
078af1e3cb curl: don't enable debug builds
In oe-core 27824261 --enable-debug was added to the configure arguments
to turn on debugging symbols.  However, enabling debug mode does more
than turn on debugging symbols and introduces some codepaths that can be
controlled with environment variables.  Bluntly, the curl maintainer
says that --enable-debug should not be used in production:

https://curl.se/mail/lib-2023-01/0039.html

I did a build and verified that the curl-dbg package doesn't massively
shrink, so the debug symbols are still being built.

Remove the debug options and hide them behind a PACKAGECONFIG, with a
comment that it should not be used in production.

(From OE-Core rev: dea11274a6ed33a9c20909b8adb81ce9b9bcd1a5)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 3ed3b2ffeeaa5d888f77dd30cb8cd81d3275398a)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-26 23:39:06 +00:00
Jan Kircher
f04df58fb0 toolchain-scripts: compatibility with unbound variable protection
Fixed an error when Bash's unbound variable protection is enabled (set -u) and variable "LD_LIBRARY_PATH" does not exist.

(From OE-Core rev: 00356d24516a34860e12975e4652e483edcae611)

Signed-off-by: Jan Kircher <openembedded@hetsh.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 85685370b0ad93291cda59fb091a15eeecf5e0d5)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-26 23:39:06 +00:00
Chen Qi
2851623bd7 libseccomp: fix typo in DESCRIPTION
Fix typo in DESCRIPTION: and -> an.

(From OE-Core rev: d3f6fd26042887b03b5587863a93803553693e86)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 349e63045298054f9454025d793c67284fce750b)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-26 23:39:06 +00:00
Chen Qi
a35d074d80 dhcpcd: backport two patches to fix runtime error
In case of nodistro, dhcpcd gives us 'Bad system call'
error and exits. This is because there are syscalls that
should be allowed but not in privsep. Backport two patches
to fix this issue.

(From OE-Core rev: 82b7967721db08f925193a1c36232cafd0dab506)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit f1e6a0c16d6685096ec9313301aa431e73d02c07)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-26 23:39:06 +00:00
leimaohui
ed52b3b90b libpng: Enable NEON for aarch64 to enensure consistency with arm32.
NEON is enabled for aarch64 by default, so, to ensure consistency with
arm32, reference to libpng-1.6.38/configure, added
enable_hardware_optimizations option for aarch64.

(From OE-Core rev: 27a58c11536bc0e804904c2dd97820973d0b9a2f)

Signed-off-by: Lei Maohui <leimaohui@fujitsu.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 12e68d5824849fa20f0e3fe8fc1921da111bb6fb)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-26 23:39:06 +00:00
Charlie Johnston
371b1b1e59 opkg: ensure opkg uses private gpg.conf when applying keys.
Currently, the opkg-key utility calls gpg with --no-options,
which uses /dev/null as the configuration file. This means
any configurations in /etc/opkg/gpg/gpg.conf were being
ignored. This change applies a patch to remove the
--no-options flag.

(From OE-Core rev: f206f5c55bd6ba59ba1455ea8a8a146c901c5194)

Signed-off-by: Charlie Johnston <charlie.johnston@ni.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 3699096f3214e77fe4aa1daebe85308d02940f2f)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-26 23:39:06 +00:00
Markus Volk
2422f7bfef librsvg: enable vapi build
Otherwise gnome-chess will fail like this:

| error: Package `librsvg-2.0' not found in specified Vala API directories or GObject-Introspection GIR directories
| Compilation failed: 1 error(s), 0 warning(s)

(From OE-Core rev: e9d7a381ef47f41d52a2b57de1a5a2920a35f222)

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>
(cherry picked from commit ed814eff90677f894d9eb480d8d4389c64a35820)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-26 23:39:06 +00:00
Anton Antonov
76142331c4 rust: Do not use default compiler flags defined in CC crate
Rust crates build dependecy C libraries using "CC" crate.
This crate adds some default compiler parameters depending on target arch.
For some targets these parameters conflict with the parameters defined by OE.

Warnings/errors like this can be seen in the case:

cc1: error: switch '-mcpu=cortex-a15' conflicts with switch '-march=armv7-a+fp' [-Werror]

Lets use only the OE parameters by exporting CRATE_CC_NO_DEFAULTS.
https://github.com/rust-lang/cc-rs#external-configuration-via-environment-variables

This patch fixes https://bugzilla.yoctoproject.org/show_bug.cgi?id=14947

(From OE-Core rev: 94939f608c6984e3a92999a384a03a35c2b34ed6)

Signed-off-by: Anton Antonov <Anton.Antonov@arm.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 0c07089bdf7e0d7d8f37552db0bcd75f860979d9)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-26 23:39:06 +00:00
Petr Kubizňák
d2b253072b harfbuzz: remove bindir only if it exists
In some scenarios (e.g. when "glib" removed from PACKAGECONFIG),
"${D}${bindir}" might not exist which caused `rmdir` to fail.

(From OE-Core rev: 687f371fc99833b878f3cfdb006aca9e238d9909)

Signed-off-by: Petr Kubizňák <kubiznak@2n.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 21261072cbe0056e85550a0710de142fab8943e4)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-26 23:39:06 +00:00
Ross Burton
c786012b44 oeqa/selftest/debuginfod: improve testcase
Primarily, before running the debuginfod-find tool, check that the
debuginfod server has finished sweeping the deploy directory.  If we
make the request too soon then there's a rare chance that we run the
client before it has scanned the right packages, and the log gets
swamped with warnings from sqlite due to a race.

Also:
- unset DEBUGINFOD_URLS so the debuginfod doesn't proxy to an upstream
  server provided by the host distro
- Lower concurrency to reduce system load and handle systems with lower
  maximum open file counts but lots of cores (as the concurrency means
  cores*2*2 open files)
- Set the refresh times to 0 so we never rescan during the test
- Only scan the packages for the format which the image is using
- Log the commands that are being invoked

(From OE-Core rev: fdce8ecdc27796955156b9c4a91ccaca80459ec5)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit d65729748253eaa640333198ca8aec05946cb9e8)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-26 23:39:06 +00:00
Khem Raj
e3d6dfa24d tiff: Add packageconfig knob for webp
tiff-native otherwise falsely detects webp if its installed on build
host. This ensures deterministic behavior regardless of host.

(From OE-Core rev: 02a77676bab5fe36f8209d9eedd38a384d6c0ab5)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 718c44f282310b2ca85877fed706460ccc1eebea)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-26 23:39:06 +00:00
Sandeep Gundlupet Raju
4ad9222d09 kernel-fitimage: Allow user to select dtb when multiple dtb exists
Allow user to select the default DTB for FIT image when multiple
dtb's exists.

From machine.conf or local.conf user can specify the default dtb
for FIT image as shown below.

FIT_CONF_DEFAULT_DTB = "board-default.dtb"

Also fallback to avaialable dtb when FIT_CONF_DEFAULT_DTB doesn't
exits or empty.

(From OE-Core rev: 43926dfc527d865f1051299b2dd688770e149b23)

Signed-off-by: Sandeep Gundlupet Raju <sandeep.gundlupet-raju@amd.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-26 23:39:06 +00:00
Sandeep Gundlupet Raju
7a23e13b25 kernel-fitimage: Adjust order of dtb/dtbo files
The dtb files must be before the dtbo files, otherwise the overlays may
not be applied correctly.

From Bruce Ashfield:

  We can split between dtbs and dtbos, they just need to be sorted
  for reproducibility reasons.

  Of course, this was only working by luck previously (before the
  sort), since it has always been gathering dtbs and dtbo's with
  find, depending on filesystem ordering for the order in the
  fitimage).

(From OE-Core rev: bc1690632a1f85f364430c9fc7dc675cfe00d085)

Signed-off-by: Sandeep Gundlupet Raju <sandeep.gundlupet-raju@amd.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-26 23:39:06 +00:00
Antonin Godard
cd1acece79 busybox: rm temporary files if do_compile was interrupted
To avoid working with undeterministic config files, remove all the
temporary files to start from scratch.

(From OE-Core rev: 30cf3640bf18c8ec48d69c566938b38d8561d368)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 74cd440c4e3df0ed3b81cf5c60a3f92e0dd3fe6c)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-26 23:39:06 +00:00
Antonin Godard
630974ec95 busybox: always start do_compile with orig config files
When compiling busybox a second time (e.g. with `compile -f`), busybox
can use an altered autoconf.h file for compiling, which can ultimately
produces different and unwanted binaries.

This can produce errors like this one:

ERROR: busybox-1.35.0-r0 do_package: Error executing a python function in exec_func_python() autogenerated:
The stack trace of python calls that resulted in this exception/failure was:
File: 'exec_func_python() autogenerated', lineno: 2, function: <module>
     0001:
 *** 0002:ptest_update_alternatives(d)
     0003:
File: '…/poky/meta/classes/ptest.bbclass', lineno: 100, function: ptest_update_alternatives
     0096:        for alt_name, alt_link, alt_target, _ in alternatives:
     0097:            # Some alternatives are for man pages,
     0098:            # check if the alternative is in PATH
     0099:            if os.path.dirname(alt_link) in bin_paths:
 *** 0100:                os.symlink(alt_target, os.path.join(ptest_bindir, alt_name))
     0101:}
     0102:
     0103:do_configure_ptest_base[dirs] = "${B}"
     0104:do_compile_ptest_base[dirs] = "${B}"
Exception: FileExistsError: [Errno 17] File exists: '/bin/busybox.suid' -> '…/busybox/1.35.0-r0/package/usr/lib/busybox/ptest/bin/login'

This happens because ALTERNATIVE:busybox contains `/bin/login` twice,
initially that's because `/bin/login` is present in both
busybox.links.suid and busybox.links.nosuid. The reason for that is
because of the altered autoconf.h.

Steps to reproduce above error:

<add ptest to distro configs>
bitbake busybox -c clean
bitbake busybox -c package -f
bitbake busybox -c compile -f
bitbake busybox -c package -f

This patch guards against potential bugs by:

- making a backup of .config and autoconf.h that have matching
  timestamps.
- make sure do_compile always starts with these files.
- restore .config and autoconf.h at the end of do_compile.

(From OE-Core rev: 6b38515e148cfd6657d8e10ffb6dc49abfea0c9f)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 6b4a0f063edcfe0a5a4f418842e86ac0c46d9cad)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-26 23:39:06 +00:00
Alex Kiernan
0f36c3511d classes: image: Set empty weak default IMAGE_LINGUAS
This is already set in default-distrovars.inc and so this assignment
will almost never succeed. Rather than leaving it to confuse, set an
empty weak default.

(From OE-Core rev: 10cbde44012320f3cd203ff7d36f7594c8b36090)

Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit eb402948158659da7de0fbbb1bb403c8dad06e2b)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-26 23:39:06 +00:00
Enguerrand de Ribaucourt
451cb7f40b bitbake-layers: fix a typo
(From OE-Core rev: adee6183096c15b1743ae3e33ebbbbe6218a668f)

Signed-off-by: Enguerrand de Ribaucourt <enguerrand.de-ribaucourt@savoirfairelinux.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit fab3aa7b1b7003bb03678c5cfc62ad2b597f0932)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-26 23:39:06 +00:00
Carlos Alberto Lopez Perez
36b6ff5a9e mesa-gl: gallium is required when enabling x11
Otherwise Meson will fail wit this error:
  - meson.build:555:6: ERROR: Problem encountered: xlib based GLX requires at least one gallium driver

Related: https://github.com/agherzan/meta-raspberrypi/pull/1119
(From OE-Core rev: 62cd3870fd257484c3be584229c668d095395780)

Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit e7ee2dd98148e5104c52735a9a43e519dc24abfd)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-26 23:39:06 +00:00
Michael Halstead
d87d141c34 uninative: Upgrade to 3.8.1 to include libgcc
Including libgcc solves issues with libpthread.

(From OE-Core rev: 5ce29be1bc64d6372e94cd11fce1711b267e127f)

Signed-off-by: Michael Halstead <mhalstead@linuxfoundation.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 36eb46589fb01374d4738a2c376386c68d06aa83)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-26 23:39:06 +00:00
Randy MacLeod
ce9889be8f vim: upgrade 9.0.0947 -> 9.0.1211
Includes fixes for:
   https://nvd.nist.gov/vuln/detail/CVE-2023-0049
   https://nvd.nist.gov/vuln/detail/CVE-2023-0051
   https://nvd.nist.gov/vuln/detail/CVE-2023-0054
   https://nvd.nist.gov/vuln/detail/CVE-2023-0288

(From OE-Core rev: c011af837b968d0c5219b0cf0dbca33e4d6a6ba3)

Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 1c51068c78d12ee02789a6dbecf5e7e91d141af5)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-26 23:39:06 +00:00
Lee Chee Yang
94926efd23 git: Upgrade to 2.37.4
upgrade include fixes for CVE-2022-39253 CVE-2022-39260

Release notes:
https://github.com/git/git/blob/master/Documentation/RelNotes/2.37.4.txt

(From OE-Core rev: 44449a519fd157dab26eeb47dff84e16dc78d43d)

Signed-off-by: Lee Chee Yang <chee.yang.lee@intel.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-26 23:39:06 +00:00
Bruce Ashfield
74b36f2bad linux-yocto/5.19: powerpc: Fix reschedule bug in KUAP-unlocked user copy
Integrating the following commit(s) to linux-yocto/5.19:

    84f2f8e7a625 powerpc: Fix reschedule bug in KUAP-unlocked user copy

(From OE-Core rev: a313a9900caac981ff272d9fd49a2de937e5442f)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 438b3523625807e2deca1797ce20649531270676)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-26 23:39:06 +00:00
Bruce Ashfield
b9c636a7e2 linux-yocto/5.15: powerpc: Fix reschedule bug in KUAP-unlocked user copy
Integrating the following commit(s) to linux-yocto/5.15:

    f100c753aa1f powerpc: Fix reschedule bug in KUAP-unlocked user copy

(From OE-Core rev: 665855d33fd179e6890173b936673b414df9847f)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit b457e6976e9e64a737517f9d9142ab290cdce214)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-26 23:39:06 +00:00
Bruce Ashfield
6ffa28e6cb linux-yocto/5.15: update to v5.15.84
Updating  to the latest korg -stable release that comprises
the following commits:

    d68f50bfb00f Linux 5.15.84
    972707bae3d7 net: fec: properly guard irq coalesce setup
    289721fe0993 ASoC: ops: Correct bounds check for second channel on SX controls
    de0866b94a64 nvme-pci: clear the prp2 field when not used
    8bffa95ac19f perf: Fix perf_pending_task() UaF
    825bd2af4227 ASoC: cs42l51: Correct PGA Volume minimum value
    91582b3a1ab2 net: fec: don't reset irq coalesce settings to defaults on "ip link up"
    c772dab247f1 can: mcba_usb: Fix termination command argument
    aa822de7de3b can: sja1000: fix size of OCR_MODE_MASK define
    09e08740d78c pinctrl: meditatek: Startup with the IRQs disabled
    172a95026f06 libbpf: Use page size as max_entries when probing ring buffer map
    cf611d786796 ASoC: ops: Check bounds for second channel in snd_soc_put_volsw_sx()
    a74b88e17025 ASoC: fsl_micfil: explicitly clear CHnF flags
    afac1e7d78eb ASoC: fsl_micfil: explicitly clear software reset bit
    9d933af8fef3 nfp: fix use-after-free in area_cache_get()
    e1a4f5880d00 vfs: fix copy_file_range() averts filesystem freeze protection
    86e28ed25b00 x86/vdso: Conditionally export __vdso_sgx_enter_enclave()
    fd6d66840b42 Linux 5.15.83
    f895511de9d2 io_uring: Fix a null-ptr-deref in io_tctx_exit_cb()
    f435c66d2336 io_uring: move to separate directory
    d9e1e5d8a74c block: move CONFIG_BLOCK guard to top Makefile
    e5c0bc4ff5b0 can: esd_usb: Allow REC and TEC to return to zero
    db6343a5b0d9 s390/qeth: fix use-after-free in hsci
    a56c1cebe4a0 s390/qeth: fix various format strings
    a6dba316c93e macsec: add missing attribute validation for offload
    40500f1f4745 net: mvneta: Fix an out of bounds check
    b9274dbe3999 net: thunderbolt: fix memory leak in tbnet_open()
    7390c70bd431 ipv6: avoid use-after-free in ip6_fragment()
    1beb475892f7 net: plip: don't call kfree_skb/dev_kfree_skb() under spin_lock_irq()
    b08412a9cf26 net: phy: mxl-gpy: fix version reporting
    dec5abd91abc xen/netback: fix build warning
    54d830e24247 dpaa2-switch: Fix memory leak in dpaa2_switch_acl_entry_add() and dpaa2_switch_acl_entry_remove()
    c7adcbd0fd3f ethernet: aeroflex: fix potential skb leak in greth_init_rings()
    d962d42d6376 tipc: call tipc_lxc_xmit without holding node_read_lock
    f3b5dda26cd0 net: dsa: sja1105: fix memory leak in sja1105_setup_devlink_regions()
    5dab6fa068d7 ipv4: Fix incorrect route flushing when table ID 0 is used
    ac566bd5770f ipv4: Fix incorrect route flushing when source address is deleted
    af4ccae4b704 tipc: Fix potential OOB in tipc_link_proto_rcv()
    b8ce0e6f9f88 net: hisilicon: Fix potential use-after-free in hix5hd2_rx()
    16854177745a net: mdio: fix unbalanced fwnode reference count in mdio_device_release()
    6f4798ac9c9e net: hisilicon: Fix potential use-after-free in hisi_femac_rx()
    114e65a22189 net: thunderx: Fix missing destroy_workqueue of nicvf_rx_mode_wq
    51c04945756a net: microchip: sparx5: Fix missing destroy_workqueue of mact_queue
    99eec0a766f9 ip_gre: do not report erspan version on GRE interface
    2891957853f2 net: stmmac: fix "snps,axi-config" node property parsing
    5cb8f1a784fd gpio/rockchip: fix refcount leak in rockchip_gpiolib_register()
    b8c2f0392d1d nvme initialize core quirks before calling nvme_init_subsystem
    908b2da426fe NFC: nci: Bounds check struct nfc_target arrays
    d841cc156304 i40e: Disallow ip4 and ip6 l4_4_bytes
    625a13850b31 i40e: Fix for VF MAC address 0
    5538794dbd42 i40e: Fix not setting default xps_cpus after reset
    a6b30598fec8 net: mvneta: Prevent out of bounds read in mvneta_config_rss()
    e6e897d4fe2f xen-netfront: Fix NULL sring after live migration
    eefd8953a748 octeontx2-pf: Fix potential memory leak in otx2_init_tc()
    f88acaed07b1 net: mdiobus: fix double put fwnode in the error path
    cc62d76928e0 net: mdiobus: fwnode_mdiobus_register_phy() rework error handling
    ea113b570eee net: encx24j600: Fix invalid logic in reading of MISTAT register
    8aae746d065c net: encx24j600: Add parentheses to fix precedence
    a110287ef4a4 mac802154: fix missing INIT_LIST_HEAD in ieee802154_if_add()
    e046421bed5a selftests: rtnetlink: correct xfrm policy rule in kci_test_ipsec_offload
    4fa8988a36d5 net: dsa: sja1105: Check return value
    b35be171dfe6 net: dsa: hellcreek: Check return value
    a4c342e645d6 net: dsa: ksz: Check return value
    edf7284a9829 Bluetooth: Fix not cleanup led when bt_init fails
    3322193949ac Bluetooth: 6LoWPAN: add missing hci_dev_put() in get_l2cap_conn()
    6c88c764e0c4 vmxnet3: use correct intrConf reference when using extended queues
    5ad0d85757f8 vmxnet3: correctly report encapsulated LRO packet
    5c014eb0ed6c af_unix: Get user_ns from in_skb in unix_diag_get_exact().
    807a01a32979 drm: bridge: dw_hdmi: fix preference of RGB modes over YUV420
    eb96fd3983b2 net: broadcom: Add PTP_1588_CLOCK_OPTIONAL dependency for BCMGENET under ARCH_BCM2835
    16eb678bca8e igb: Allocate MSI-X vector when testing
    34c6367c946c e1000e: Fix TX dispatch condition
    4271515f189b gpio: amd8111: Fix PCI device reference count leak
    d57b60e9b355 drm/bridge: ti-sn65dsi86: Fix output polarity setting bug
    f8b29656013c netfilter: ctnetlink: fix compilation warning after data race fixes in ct mark
    246bcd05ba6c ca8210: Fix crash by zero initializing data
    80dad8df5fc2 ieee802154: cc2520: Fix error return code in cc2520_hw_init()
    dd9dcfb85c65 drm/vmwgfx: Fix race issue calling pin_user_pages
    7b09ba9036b2 netfilter: nft_set_pipapo: Actually validate intervals in fields after the first one
    6daaa84b6214 gpiolib: fix memory leak in gpiochip_setup_dev()
    1a1075d37108 gpiolib: check the 'ngpios' property in core gpiolib code
    70c5515c1c30 gpiolib: improve coding style for local variables
    3b714f25fc59 clk: Fix pointer casting to prevent oops in devm_clk_release()
    c142cba37de2 can: af_can: fix NULL pointer dereference in can_rcv_filter
    104bb1f67e3c HID: ite: Enable QUIRK_TOUCHPAD_ON_OFF_REPORT on Acer Aspire Switch V 10
    f755d11c55b2 HID: core: fix shift-out-of-bounds in hid_report_raw_event
    2d4b310c32d4 HID: hid-lg4ff: Add check for empty lbuf
    5e8021ae0865 HID: usbhid: Add ALWAYS_POLL quirk for some mice
    5e88c6f4aaa7 net: dsa: sja1105: avoid out of bounds access in sja1105_init_l2_policing()
    1074fefce9cc drm/shmem-helper: Avoid vm_open error paths
    83e3da8bb92f drm/shmem-helper: Remove errant put in error path
    249011f4c3b8 drm/amdgpu/sdma_v4_0: turn off SDMA ring buffer in the s2idle suspend
    1e4fe9a1546f drm/vmwgfx: Don't use screen objects when SEV is active
    f6550976fe22 KVM: s390: vsie: Fix the initialization of the epoch extension (epdx) field
    fe50a9bbeb1f net: mana: Fix race on per-CQ variable napi work_done
    a49894a5ac36 Bluetooth: Fix crash when replugging CSR fake controllers
    1dee2b504771 Bluetooth: btusb: Add debug message for CSR controllers
    3ac29732a2ff mm/gup: fix gup_pud_range() for dax
    aad8bbd17a1d memcg: fix possible use-after-free in memcg_write_event_control()
    6fb8bc29bfa8 media: v4l2-dv-timings.c: fix too strict blanking sanity checks
    a4c575541eeb Revert "ARM: dts: imx7: Fix NAND controller size-cells"
    28abc1145924 soundwire: intel: Initialize clock stop timeout
    22d800b378e4 media: videobuf2-core: take mmap_lock in vb2_get_unmapped_area()
    5d0fa6fc8899 xen/netback: don't call kfree_skb() with interrupts disabled
    4422241ceffc xen/netback: do some code cleanup
    0fe29bd92594 xen/netback: Ensure protocol headers don't fall in the non-linear area
    f01677be31d1 drm/bridge: anx7625: Fix edid_read break case in sp_tx_edid_read()
    ee2536830b16 cifs: fix use-after-free caused by invalid pointer `hostname`
    dc62f05f666c rtc: cmos: avoid UIP when reading alarm time
    48ea4199af85 rtc: cmos: avoid UIP when writing alarm time
    3f52afc6ed93 rtc: mc146818-lib: extract mc146818_avoid_UIP
    1a3f8c6cd29d mm/khugepaged: invoke MMU notifiers in shmem/file collapse paths
    79ad784c9d21 mm/khugepaged: fix GUP-fast interaction by sending IPI
    d15cd6de0123 mm/khugepaged: take the right locks for page table retraction
    26f084e55466 net: usb: qmi_wwan: add u-blox 0x1342 composition
    029a7f1c5d70 9p/xen: check logical size for buffer size
    b398832893c8 usb: dwc3: gadget: Disable GUSB2PHYCFG.SUSPHY for End Transfer
    e70a5724400a fbcon: Use kzalloc() in fbcon_prepare_logo()
    fd3768597d2a regulator: twl6030: fix get status of twl6032 regulators
    9f74b9aa8d58 ASoC: soc-pcm: Add NULL check in BE reparenting
    dae93f4168c4 btrfs: send: avoid unaligned encoded writes when attempting to clone range
    f54e1edf579d selftests/net: Find nettest in current directory
    fccd454129f6 ALSA: seq: Fix function prototype mismatch in snd_seq_expand_var_event
    542a563bb751 regulator: slg51000: Wait after asserting CS pin
    3d1b5fde360e 9p/fd: Use P9_HDRSZ for header size
    fe2d44e86e96 ASoC: rt711-sdca: fix the latency time of clock stop prepare state machine transitions
    e945f3d809ed ARM: dts: rockchip: disable arm_global_timer on rk3066 and rk3188
    c3b818c91a11 spi: mediatek: Fix DEVAPC Violation at KO Remove
    d9f0107be1a9 ASoC: wm8962: Wait for updated value of WM8962_CLOCKING1 register
    7ae0262748e5 ARM: 9266/1: mm: fix no-MMU ZERO_PAGE() implementation
    d81c62e3121f ARM: 9251/1: perf: Fix stacktraces for tracepoint events in THUMB2 kernels
    66717ad03b80 fs: use acquire ordering in __fget_light()
    1222e2364ac7 ARM: dts: rockchip: rk3188: fix lcdc1-rgb24 node name
    996fb29b06b6 arm64: dts: rockchip: fix ir-receiver node names
    752138ef89e8 ARM: dts: rockchip: fix ir-receiver node names
    8045971e40cd arm: dts: rockchip: remove clock-frequency from rtc
    5e9fb8013ac9 arm: dts: rockchip: fix node name for hym8563 rtc
    2ed7137e911a arm64: dts: rockchip: keep I2S1 disabled for GPIO function on ROCK Pi 4 series
    5a1122e1a896 mmc: mtk-sd: Fix missing clk_disable_unprepare in msdc_of_clock_parse()
    282f52c954a8 clk: Provide new devm_clk helpers for prepared and enabled clocks
    eb94a7a20f3c clk: generalize devm_clk_get() a bit
    d9790301361c Linux 5.15.82
    48642f94311b proc: proc_skip_spaces() shouldn't think it is working on C strings
    3eb9213f6612 proc: avoid integer type confusion in get_proc_long
    4a4073a2e2fe ipc/sem: Fix dangling sem_array access in semtimedop race
    53b9b1201e34 Input: raydium_ts_i2c - fix memory leak in raydium_i2c_send()
    571b6bbbf54d char: tpm: Protect tpm_pm_suspend with locks
    f39891cfe79b Revert "clocksource/drivers/riscv: Events are stopped during CPU suspend"
    a759057af728 ACPI: HMAT: Fix initiator registration for single-initiator systems
    da8a794d71ec ACPI: HMAT: remove unnecessary variable initialization
    2d16161a2c98 i2c: imx: Only DMA messages with I2C_M_DMA_SAFE flag set
    950a05cb15e3 i2c: npcm7xx: Fix error handling in npcm_i2c_init()
    db3f8da033d9 serial: stm32: Deassert Transmit Enable on ->rs485_config()
    45f628f4fd81 serial: stm32: Use TC interrupt to deassert GPIO RTS in RS485 mode
    c60eae5b1d0b serial: stm32: Factor out GPIO RTS toggling into separate function
    041f8dc88292 ipv4: Fix route deletion when nexthop info is not specified
    25174d91e4a3 ipv4: Handle attempt to delete multipath route when fib_info contains an nh reference
    a0ad247e55ea selftests: net: fix nexthop warning cleanup double ip typo
    532847b69c29 selftests: net: add delete nexthop route warning test
    e0783558817d Kconfig.debug: provide a little extra FRAME_WARN leeway when KASAN is enabled
    723fa02e0e0a parisc: Increase FRAME_WARN to 2048 bytes on parisc
    b951ab4b35ba mm: migrate: fix THP's mapcount on isolation
    c5eda6029cf9 mm: __isolate_lru_page_prepare() in isolate_migratepages_block()
    bdb613ef179a iommu/vt-d: Fix PCI device refcount leak in dmar_dev_scope_init()
    b6eea8b2e858 iommu/vt-d: Fix PCI device refcount leak in has_external_pci()
    787d81d4eb15 nvme: fix SRCU protection of nvme_ns_head list
    12f237200c16 riscv: kexec: Fixup irq controller broken in kexec crash path
    ac00301adb19 riscv: fix race when vmap stack overflow
    fa7a7d185ef3 riscv: Sync efi page table's kernel mappings before switching
    d86d69892545 pinctrl: single: Fix potential division by zero
    98b15c706644 ASoC: ops: Fix bounds check for _sx controls
    f88a6977f8b9 KVM: x86/mmu: Fix race condition in direct_page_fault
    df4b177b4851 io_uring/poll: fix poll_refs race with cancelation
    4b702b7d11ce io_uring: make poll refs more robust
    1d58849ac26f io_uring: cmpxchg for poll arm refs release
    cd1981a8c30d io_uring: fix tw losing poll events
    62321dc7b081 io_uring: update res mask in io_poll_check_events
    417d5ea6e735 tracing: Free buffers when a used dynamic event is removed
    52fc245d150c tracing: Fix race where histograms can be called before the event
    cb2b0612cd25 tracing/osnoise: Fix duration type
    615a996ff397 drm/i915: Never return 0 if not all requests retired
    01a2b25ef2cd drm/i915: Fix negative value passed as remaining time
    ff1591ba33b8 drm/amdgpu: enable Vangogh VCN indirect sram mode
    ac2d7fa90848 drm/amdgpu: temporarily disable broken Clang builds due to blown stack-frame
    57ee7bc4c60a mmc: sdhci: Fix voltage switch delay
    bb8f8095143e mmc: sdhci-sprd: Fix no reset data and command after voltage switch
    4c7681c1a52f mmc: sdhci-esdhc-imx: correct CQHCI exit halt state check
    01dbe4db590a mmc: core: Fix ambiguous TRIM and DISCARD arg
    738946e35504 mmc: mmc_test: Fix removal of debugfs file
    635d0517348e net: stmmac: Set MAC's flow control register to reflect current settings
    9132dcdf3bf6 v4l2: don't fall back to follow_pfn() if pin_user_pages_fast() fails
    76ad884be092 pinctrl: intel: Save and restore pins in "direct IRQ" mode
    41296b85fafa x86/bugs: Make sure MSR_SPEC_CTRL is updated properly upon resume from S3
    33021419fd81 nilfs2: fix NULL pointer dereference in nilfs_palloc_commit_free_entry()
    2e44dd9a8dd6 tools/vm/slabinfo-gnuplot: use "grep -E" instead of "egrep"
    b60a8ad771fd error-injection: Add prompt for function error injection
    757eb00c4c40 ALSA: dice: fix regression for Lexicon I-ONIX FW810S
    a1a96a6f302c riscv: mm: Proper page permissions after initmem free
    823df3607d8b riscv: vdso: fix section overlapping under some conditions
    6e035d5a2a6b hwmon: (coretemp) fix pci device refcount leak in nv1a_ram_new()
    7692700ac818 hwmon: (coretemp) Check for null before removing sysfs attrs
    9b5836b9c4b0 net: ethernet: renesas: ravb: Fix promiscuous mode after system resumed
    0dfb9a566327 sctp: fix memory leak in sctp_stream_outq_migrate()
    fcb3e0216156 packet: do not set TP_STATUS_CSUM_VALID on CHECKSUM_COMPLETE
    04b995e96322 net: tun: Fix use-after-free in tun_detach()
    43ca0adf79e5 afs: Fix fileserver probe RTT handling
    543d917f691a net: mdiobus: fix unbalanced node reference count
    dca370e575d9 net: hsr: Fix potential use-after-free
    1daec0815655 tipc: re-fetch skb cb after tipc_msg_validate
    16a64dc26545 dsa: lan9303: Correct stat name
    766086ea8ca7 net: wwan: iosm: fix dma_alloc_coherent incompatible pointer type
    c667751a4265 net: wwan: iosm: fix kernel test robot reported error
    9c584d6d9cfb net: ethernet: nixge: fix NULL dereference
    8782b32ef867 net/9p: Fix a potential socket leak in p9_socket_open
    6fc9425bff4b net: net_netdev: Fix error handling in ntb_netdev_init_module()
    3bc893ef36f9 net: ethernet: ti: am65-cpsw: fix error handling in am65_cpsw_nuss_probe()
    7730904f50c7 net: phy: fix null-ptr-deref while probe() failed
    59b54f0563b6 wifi: mac8021: fix possible oob access in ieee80211_get_rate_duration
    dc0853f8b502 wifi: cfg80211: don't allow multi-BSSID in S1G
    88a6fe370788 wifi: cfg80211: fix buffer overflow in elem comparison
    08fff7aaeb7e aquantia: Do not purge addresses when setting the number of rings
    2a7aa52573da qlcnic: fix sleep-in-atomic-context bugs caused by msleep
    7b734d26f037 can: m_can: Add check for devm_clk_get
    ea8dc27bb044 can: m_can: pci: add missing m_can_class_free_dev() in probe/remove methods
    b1d2a8e02acc can: etas_es58x: es58x_init_netdev(): free netdev when register_candev()
    e53da04e37e4 can: cc770: cc770_isa_probe(): add missing free_cc770dev()
    d452a71995cb can: sja1000_isa: sja1000_isa_probe(): add missing free_sja1000dev()
    372eb550faa0 net/mlx5e: Fix use-after-free when reverting termination table
    839eeab03c83 net/mlx5: Fix uninitialized variable bug in outlen_write()
    34feea3bfb37 net/mlx5: DR, Fix uninitialized var warning
    3485ef2aabeb net/mlx5: DR, Rename list field in matcher struct to list_node
    9fc27d22cdb9 e100: Fix possible use after free in e100_xmit_prepare
    0d9f5bd54b91 iavf: Fix error handling in iavf_init_module()
    b0b2b9050c17 iavf: remove redundant ret variable
    69501d820508 fm10k: Fix error handling in fm10k_init_module()
    5e3657dede36 i40e: Fix error handling in i40e_init_module()
    7109e9410992 ixgbevf: Fix resource leak in ixgbevf_init_module()
    196ea810e21c of: property: decrement node refcount in of_fwnode_get_reference_args()
    36164db278a8 nvmem: rmem: Fix return value check in rmem_read()
    e3761831674a bpf: Do not copy spin lock field from user in bpf_selem_alloc
    45f6e8186374 hwmon: (ibmpex) Fix possible UAF when ibmpex_register_bmc() fails
    a90251376c3e hwmon: (i5500_temp) fix missing pci_disable_device()
    eeb31b828daf hwmon: (ina3221) Fix shunt sum critical calculation
    9514b95cac51 hwmon: (ltc2947) fix temperature scaling
    0140e079a420 libbpf: Handle size overflow for ringbuf mmap
    06d5790e7df5 ARM: at91: rm9200: fix usb device clock id
    d074f173fbd1 scripts/faddr2line: Fix regression in name resolution on ppc64le
    ee3d37d79610 bpf, perf: Use subprog name when reporting subprog ksymbol
    ec02fc0a4101 iio: light: rpr0521: add missing Kconfig dependencies
    f7419fc42afc iio: health: afe4404: Fix oob read in afe4404_[read|write]_raw
    e7e76a77aabe iio: health: afe4403: Fix oob read in afe4403_read_raw
    ebdca90efbb5 drm/amdgpu: Partially revert "drm/amdgpu: update drm_display_info correctly when the edid is read"
    c365d3c3e512 drm/amdgpu: update drm_display_info correctly when the edid is read
    df5346466e51 drm/display/dp_mst: Fix drm_dp_mst_add_affected_dsc_crtcs() return code
    044da1a371a0 btrfs: qgroup: fix sleep from invalid context bug in btrfs_qgroup_inherit()
    da86809ab822 btrfs: move QUOTA_ENABLED check to rescan_should_stop from btrfs_qgroup_rescan_worker
    5d66eadc1cc3 spi: spi-imx: Fix spi_bus_clk if requested clock is higher than input clock
    6b4544a13179 btrfs: free btrfs_path before copying inodes to userspace
    c7ae3becee72 btrfs: sink iterator parameter to btrfs_ioctl_logical_to_ino
    acc2f40b980c erofs: fix order >= MAX_ORDER warning due to crafted negative i_size
    ca9f27448af0 drm/i915/gt: Use i915_vm_put on ppgtt_create error paths
    c2f2972889eb drm/i915: Create a dummy object for gen6 ppgtt
    918002bdbe43 arm64: mte: Avoid setting PG_mte_tagged if no tags cleared or restored
    e4a7232c917c Linux 5.15.81
    5c5c563a0817 cifs: fix missed refcounting of ipc tcon
    ee2d04f23bbb drm/i915: fix TLB invalidation for Gen12 video and compute engines
    bef834845d89 drm/amdgpu: always register an MMU notifier for userptr
    7901de7aa833 drm/amdgpu: Enable Aldebaran devices to report CU Occupancy
    e7bf1fe53817 drm/amd/display: No display after resume from WB/CB
    5033cba00c71 drm/amd/dc/dce120: Fix audio register mapping, stop triggering KASAN
    b8dc24590923 btrfs: sysfs: normalize the error handling branch in btrfs_init_sysfs()
    914baca57af7 btrfs: use kvcalloc in btrfs_get_dev_zone_info
    c1e6d4bfdee3 btrfs: zoned: fix missing endianness conversion in sb_write_pointer
    d88bf6be02de btrfs: free btrfs_path before copying subvol info to userspace
    f218b404fc0e btrfs: free btrfs_path before copying fspath to userspace
    fea9397101c1 btrfs: free btrfs_path before copying root refs to userspace
    7d0c25b5fe54 genirq: Take the proposed affinity at face value if force==true
    f17657cce069 irqchip/gic-v3: Always trust the managed affinity provided by the core code
    52a93f2dcf6c genirq: Always limit the affinity to online CPUs
    599cf4b84526 genirq/msi: Shutdown managed interrupts with unsatifiable affinities
    7aed1dd5d221 wifi: wilc1000: validate number of channels
    e9de501cf70d wifi: wilc1000: validate length of IEEE80211_P2P_ATTR_CHANNEL_LIST attribute
    143232cb5a4c wifi: wilc1000: validate length of IEEE80211_P2P_ATTR_OPER_CHANNEL attribute
    cd9c4869710b wifi: wilc1000: validate pairwise and authentication suite offsets
    f2fb18d429c3 fuse: lock inode unconditionally in fuse_fallocate()
    bb1c33bdf409 dm integrity: clear the journal on suspend
    20ad31b09e98 dm integrity: flush the journal on suspend
    5ca2110ba5e3 gpu: host1x: Avoid trying to use GART on Tegra20
    97f47617e813 scsi: iscsi: Fix possible memory leak when device_register() failed
    56ab7f237e7e net: usb: qmi_wwan: add Telit 0x103a composition
    e2e33f213dea tcp: configurable source port perturb table size
    269928e5c7bb platform/x86: ideapad-laptop: Fix interrupt storm on fn-lock toggle on some Yoga laptops
    17d995dc69c8 platform/x86: hp-wmi: Ignore Smart Experience App event
    e85bdc78720c zonefs: fix zone report size in __zonefs_io_error()
    982fcd83fb16 drm/amdgpu: disable BACO support on more cards
    ea11f8197dad platform/x86: acer-wmi: Enable SW_TABLET_MODE on Switch V 10 (SW5-017)
    09af15e69196 platform/x86: asus-wmi: add missing pci_dev_put() in asus_wmi_set_xusb2pr()
    ba040bea9deb xen/platform-pci: add missing free_irq() in error path
    6815b2087d23 xen-pciback: Allow setting PCI_MSIX_FLAGS_MASKALL too
    4c13ddb74f2c ASoC: stm32: dfsdm: manage cb buffers cleanup
    dd82295a23bc Input: i8042 - apply probe defer to more ASUS ZenBook models
    e12e121feb63 Input: soc_button_array - add Acer Switch V 10 to dmi_use_low_level_irq[]
    9f5c167074d3 Input: soc_button_array - add use_low_level_irq module parameter
    aaef86eac9e2 Input: goodix - try resetting the controller when no config is set
    e2223f5fbbb8 serial: 8250: 8250_omap: Avoid RS485 RTS glitch on ->set_termios()
    4e208294de45 tools: iio: iio_generic_buffer: Fix read size
    0d0e2545fa92 ASoC: Intel: bytcht_es8316: Add quirk for the Nanote UMPC-01
    e394cf9d7a83 Input: synaptics - switch touchpad on HP Laptop 15-da3001TU to RMI mode
    96b5d1177752 x86/ioremap: Fix page aligned size calculation in __ioremap_caller()
    d048f7481524 x86/pm: Add enumeration check before spec MSRs save/restore setup
    070e3560bf04 x86/tsx: Add a feature bit for TSX control MSR support
    1430c98ebbe7 KVM: x86: remove exit_int_info warning in svm_handle_exit
    27550a5930bb KVM: x86: add kvm_leave_nested
    3e87cb0caa25 KVM: x86: nSVM: harden svm_free_nested against freeing vmcb02 while still in use
    6425c590d0cc KVM: x86: forcibly leave nested mode on vCPU reset
    f42ebf972a9f KVM: x86: nSVM: leave nested mode on vCPU free
    7b3c9405b272 mm: vmscan: fix extreme overreclaim and swap floods
    feb2eda5e11f gcov: clang: fix the buffer overflow issue
    ea6aa25c9ac0 nilfs2: fix nilfs_sufile_mark_dirty() not set segment usage as dirty
    9d97a9fbfc11 usb: dwc3: gadget: Clear ep descriptor last
    02632ea4dfaa usb: dwc3: gadget: Return -ESHUTDOWN on ep disable
    765ca3e63f37 usb: dwc3: gadget: conditionally remove requests
    7945cbf8666a bus: ixp4xx: Don't touch bit 7 on IXP42x
    39c039018a2c iio: core: Fix entry not deleted when iio_register_sw_trigger_type() fails
    0791a5ddbac2 iio: light: apds9960: fix wrong register for gesture gain
    f0158b9bfcc2 arm64: dts: rockchip: lower rk3399-puma-haikou SD controller clock frequency
    277d19ec283d ext4: fix use-after-free in ext4_ext_shift_extents
    c9d133100bce usb: cdnsp: fix issue with ZLP - added TD_SIZE = 1
    c2ad434cd4b2 usb: cdnsp: Fix issue with Clear Feature Halt Endpoint
    1d91c648874e usb: dwc3: exynos: Fix remove() function
    0a216625c3ab KVM: arm64: pkvm: Fixup boot mode to reflect that the kernel resumes from EL1
    f0044a4a31c9 mmc: sdhci-brcmstb: Fix SDHCI_RESET_ALL for CQHCI
    8e6940979bb8 mmc: sdhci-brcmstb: Enable Clock Gating to save power
    24b46bfa9661 mmc: sdhci-brcmstb: Re-organize flags
    227543ccacf8 nios2: add FORCE for vmlinuz.gz
    6a4ea16a6734 init/Kconfig: fix CC_HAS_ASM_GOTO_TIED_OUTPUT test with dash
    c4a9046c2735 lib/vdso: use "grep -E" instead of "egrep"
    5fefdceafb78 s390/crashdump: fix TOD programmable field size
    592b6fd74afd net: thunderx: Fix the ACPI memory leak
    697eb30a3534 octeontx2-af: Fix reference count issue in rvu_sdp_init()
    6ba1687ea102 octeontx2-pf: Add check for devm_kcalloc
    26c31e7c73d4 net: enetc: preserve TX ring priority across reconfiguration
    0e16bbf616cc net: enetc: cache accesses to &priv->si->hw
    68de40f66a5a net: enetc: manage ENETC_F_QBV in priv->active_offloads only when enabled
    5c0858e1426b nfc: st-nci: fix incorrect sizing calculations in EVT_TRANSACTION
    e09243fb160b nfc: st-nci: fix memory leaks in EVT_TRANSACTION
    dca20b7a1959 nfc: st-nci: fix incorrect validating logic in EVT_TRANSACTION
    67d638f8efc4 s390/dasd: fix no record found for raw_track_access
    88277853cf8a arcnet: fix potential memory leak in com20020_probe()
    1d44ec8507b7 ipv4: Fix error return code in fib_table_insert()
    918e83c6bfa7 dccp/tcp: Reset saddr on failure after inet6?_hash_connect().
    8ce9b1c97fce fs: do not update freeing inode i_io_list
    8db9e60cdfda netfilter: flowtable_offload: add missing locking
    c1da3bfca111 netfilter: ipset: restore allowing 64 clashing elements in hash:net,iface
    606091b2f6dc dma-buf: fix racing conflict of dma_heap_add()
    8af9450befba bnx2x: fix pci device refcount leak in bnx2x_vf_is_pcie_pending()
    251bcf6cfb35 regulator: twl6030: re-add TWL6032_SUBCLASS
    6258a8f91304 NFC: nci: fix memory leak in nci_rx_data_packet()
    ffe6021154ea net: sched: allow act_ct to be built without NF_NAT
    a05c0f9511d0 net: sparx5: fix error handling in sparx5_port_open()
    182ef20f0f1c sfc: fix potential memleak in __ef100_hard_start_xmit()
    2da022fac96d net: wwan: iosm: use ACPI_FREE() but not kfree() in ipc_pcie_read_bios_cfg()
    a48b345b87f9 xfrm: Fix ignored return value in xfrm6_init()
    19989e163595 xfrm: Fix oops in __xfrm_state_delete()
    46d450067fc0 tipc: check skb_linearize() return value in tipc_disc_rcv()
    33fb115a76ae tipc: add an extra conn_get in tipc_conn_alloc
    4ae907c45fca tipc: set con sock in tipc_conn_alloc
    ef866d9ea922 net/mlx5: Fix handling of entry refcount when command is not issued to FW
    3101318939f5 net/mlx5: Fix FW tracer timestamp calculation
    1eaabb5bbbb6 net/mlx5: Do not query pci info while pci disabled
    8180099b2aea netfilter: ipset: regression in ip_set_hash_ip.c
    448b6273706c Drivers: hv: vmbus: fix possible memory leak in vmbus_device_register()
    082c31cb99d8 Drivers: hv: vmbus: fix double free in the error path of vmbus_add_channel_work()
    7fdd9daa5b12 macsec: Fix invalid error code set
    e8fb93a0792c nfp: add port from netdev validation for EEPROM access
    e44e424ed95f nfp: fill splittable of devlink_port_attrs correctly
    527046c13815 net: pch_gbe: fix pci device refcount leak while module exiting
    f77c84dd5b28 octeontx2-af: debugsfs: fix pci device refcount leak
    cd581ffd8dda net/qla3xxx: fix potential memleak in ql3xxx_send()
    a8976074e2cb net: mvpp2: fix possible invalid pointer dereference
    3a4cc56cd17d net/mlx4: Check retval of mlx4_bitmap_init
    c368220e1780 net: ethernet: mtk_eth_soc: fix error handling in mtk_open()
    d9729437b28f ARM: dts: imx6q-prti6q: Fix ref/tcxo-clock-frequency properties
    1c0b6a97c478 ARM: mxs: fix memory leak in mxs_machine_init()
    ecff08f3c469 iavf: Fix race condition between iavf_shutdown and iavf_remove
    31147d4e907c iavf: Do not restart Tx queues after reset task failure
    232942b26c54 iavf: Fix a crash during reset task
    0600615d010f netfilter: nf_tables: do not set up extensions for end interval
    60387731e69f netfilter: conntrack: Fix data-races around ct mark
    ee3ccd1abbe1 9p/fd: fix issue of list_del corruption in p9_fd_cancel()
    131c2eeabc72 net: pch_gbe: fix potential memleak in pch_gbe_tx_queue()
    f58df483ff37 nfc/nci: fix race with opening and closing
    da22d7410afd net: dsa: sja1105: disallow C45 transactions on the BASE-TX MDIO bus
    38fe0988bd51 rxrpc: Fix race between conn bundle lookup and bundle removal [ZDI-CAN-15975]
    d92151b4659b rxrpc: Use refcount_t rather than atomic_t
    3c33e41fa5b3 rxrpc: Allow list of in-use local UDP endpoints to be viewed in /proc
    46cefa268958 net: liquidio: simplify if expression
    95500ee0b3bd selftests: mptcp: fix mibit vs mbit mix up
    f8c4da198eed selftests: mptcp: more stable simult_flows tests
    1c0efab08c9b ARM: dts: at91: sam9g20ek: enable udc vbus gpio pinctrl
    ade662f3f242 tee: optee: fix possible memory leak in optee_register_device()
    d1dd119134ba bus: sunxi-rsb: Support atomic transfers
    b1ed61e7066b bus: sunxi-rsb: Remove the shutdown callback
    61a41d1abc7c regulator: core: fix UAF in destroy_regulator()
    a85c0db3f5ad spi: dw-dma: decrease reference count in dw_spi_dma_init_mfld()
    d9f9b3255b97 regulator: core: fix kobject release warning and memory leak in regulator_register()
    bd419c7c68bd ASoC: max98373: Add checks for devm_kcalloc
    f9bc4a18e7d5 scsi: storvsc: Fix handling of srb_status and capacity change events
    c2153fe2d0c6 x86/hyperv: Restore VP assist page after cpu offlining/onlining
    b2ddd7623712 ASoC: soc-pcm: Don't zero TDM masks in __soc_pcm_open()
    dd62cb7e6fd4 ASoC: sgtl5000: Reset the CHIP_CLK_CTRL reg on remove
    d80ffd4823b6 ASoC: hdac_hda: fix hda pcm buffer overflow issue
    10bee7eb2a2f ARM: dts: am335x-pcm-953: Define fixed regulators in root node
    8fe533c0f909 af_key: Fix send_acquire race with pfkey_register
    0c69a4658e94 xfrm: replay: Fix ESN wrap around for GSO
    ecc6ce4fdf0d xfrm: fix "disable_policy" on ipv4 early demux
    5a792c1d4d77 MIPS: pic32: treat port as signed integer
    144452b42143 RISC-V: vdso: Do not add missing symbols to version section in linker script
    799970b8cc45 ALSA: usb-audio: add quirk to fix Hamedal C20 disconnect issue
    38b09dc14f7c Revert "drm/amdgpu: Revert "drm/amdgpu: getting fan speed pwm for vega10 properly""
    44d50fccf889 nvmet: fix memory leak in nvmet_subsys_attr_model_store_locked
    5adc12d9e2b5 arm64/syscall: Include asm/ptrace.h in syscall_wrapper header.
    1340f02773ae block, bfq: fix null pointer dereference in bfq_bio_bfqg()
    86d4dca4a6ae drm: panel-orientation-quirks: Add quirk for Acer Switch V 10 (SW5-017)
    b90e6234f57e scsi: scsi_debug: Make the READ CAPACITY response compliant with ZBC
    cdbba6a4de39 scsi: ibmvfc: Avoid path failures during live migration
    6e8124a151bd platform/x86/intel/hid: Add some ACPI device IDs
    32735e24f47a platform/x86/intel/pmt: Sapphire Rapids PMT errata fix
    83a6823016f2 platform/x86: touchscreen_dmi: Add info for the RCA Cambio W101 v2 2-in-1
    f707986a1414 platform/x86: ideapad-laptop: Disable touchpad_switch
    5e38740ae545 Revert "net: macsec: report real_dev features when HW offloading is enabled"
    26b72202ee26 selftests/bpf: Add verifier test for release_reference()
    8395e3f98c4a spi: stm32: fix stm32_spi_prepare_mbr() that halves spi clk for every run
    d04722f2809c wifi: ath11k: Fix QCN9074 firmware boot on x86
    9cc96a20a92a wifi: mac80211: Fix ack frame idr leak when mesh has no route
    86f90014e767 wifi: airo: do not assign -1 to unsigned char
    f5558fbda022 audit: fix undefined behavior in bit shift for AUDIT_BIT
    af5de982ffc9 riscv: dts: sifive unleashed: Add PWM controlled LEDs
    ee34a19dbe2a wifi: mac80211_hwsim: fix debugfs attribute ps with rc table support
    3513785dc13f wifi: mac80211: fix memory free error when registering wiphy fail
    855485d31e2a ceph: fix NULL pointer dereference for req->r_session
    729c9ad2940e ceph: Use kcalloc for allocating multiple elements
    d276fb4a7eb8 binder: validate alloc->mm in ->mmap() handler
    5277e3d633a5 x86/sgx: Add overflow check in sgx_validate_offset_length()
    b5a838ba47f2 x86/sgx: Create utility to validate user provided offset and length
    2f6e2de3a528 ceph: avoid putting the realm twice when decoding snaps fails
    8bef55d7934d ceph: do not update snapshot context when there is no new snapshot
    cdee3136c966 iio: pressure: ms5611: fixed value compensation bug
    5d6696e79d94 iio: ms5611: Simplify IO callback parameters
    f0ee88e83ce9 nvme-pci: add NVME_QUIRK_BOGUS_NID for Netac NV7000
    a61716cd2401 nvme-pci: disable write zeroes on various Kingston SSD
    19b60f336317 nvme-pci: disable namespace identifiers for the MAXIO MAP1001
    d537e1930640 nvme-pci: add NVME_QUIRK_BOGUS_NID for Micron Nitro
    af03ce894c9c nvme: add a bogus subsystem NQN quirk for Micron MTFDKBA2T0TFH
    c6803faa6a6d drm/display: Don't assume dual mode adaptors support i2c sub-addressing
    d2284fe43c63 ata: libata-core: do not issue non-internal commands once EH is pending
    e09583e83e4a ata: libata-scsi: simplify __ata_scsi_queuecmd()
    a9059e338fc0 cifs: Fix connections leak when tlink setup failed
    81d583baa5f1 cifs: support nested dfs links over reconnect
    dbc0ea91be28 cifs: split out dfs code from cifs_reconnect()
    b3ce844d234f cifs: introduce new helper for cifs_reconnect()
    2ea600b598dd sctp: clear out_curr if all frag chunks of current msg are pruned
    1f9f346fbb78 sctp: remove the unnecessary sinfo_stream check in sctp_prsctp_prune_unsent
    e8915faa9f41 tty: serial: fsl_lpuart: don't break the on-going transfer when global reset
    bd19013935af serial: fsl_lpuart: Fill in rs485_supported
    87c81c19cda1 serial: Add rs485_supported to uart_port
    c08f4ea79f7a ASoC: fsl_asrc fsl_esai fsl_sai: allow CONFIG_PM=N
    d1e4288d2a63 ASoC: fsl_sai: use local device pointer
    71e496bd3382 Linux 5.15.80
    b63ddb3ba61e ntfs: check overflow when iterating ATTR_RECORDs
    ab6a1bb17e3c ntfs: fix out-of-bounds read in ntfs_attr_find()
    5330c423b862 ntfs: fix use-after-free in ntfs_attr_find()
    43bbadb7e463 net/9p: use a dedicated spinlock for trans_fd
    9357fca9dad7 mm: fs: initialize fsdata passed to write_begin/write_end interface
    b334ab4c3347 wifi: wext: use flex array destination for memcpy()
    0e07032b4b47 9p/trans_fd: always use O_NONBLOCK read/write
    7c7b7476b56e gfs2: Switch from strlcpy to strscpy
    28275a7c84d2 gfs2: Check sb_bsize_shift after reading superblock
    a4f1a01b2e81 9p: trans_fd/p9_conn_cancel: drop client lock earlier
    f7b0e95071bb kcm: close race conditions on sk_receive_queue
    27d706b0d394 kcm: avoid potential race in kcm_tx_work
    b49026d9c86f tcp: cdg: allow tcp_cdg_release() to be called multiple times
    e41cbf98df22 macvlan: enforce a consistent minimal mtu
    d5f7f6e63fed Input: i8042 - fix leaking of platform device on module removal
    c49cc2c059b5 kprobes: Skip clearing aggrprobe's post_handler in kprobe-on-ftrace case
    71beab7119d0 scsi: scsi_debug: Fix possible UAF in sdebug_add_host_helper()
    a636772988ba scsi: target: tcm_loop: Fix possible name leak in tcm_loop_setup_hba_bus()
    cb7893c85ea8 net: use struct_group to copy ip/ipv6 header addresses
    9b8c0c88f414 tracing: Fix warning on variable 'struct trace_array'
    73cf0ff9a393 ring-buffer: Include dropped pages in counting dirty patches
    35c60b4e8ca7 perf: Improve missing SIGTRAP checking
    2ac6276864de serial: 8250_lpss: Use 16B DMA burst with Elkhart Lake
    b1a27b2aad93 nvme: ensure subsystem reset is single threaded
    bccece3c3331 nvme: restrict management ioctls to admin
    8cddb0d96b9c perf/x86/intel/pt: Fix sampling using single range output
    8e2f33c59837 misc/vmw_vmci: fix an infoleak in vmci_host_do_receive_datagram()
    9a72a46cb01d docs: update mediator contact information in CoC doc
    a99a547658e5 mmc: sdhci-pci: Fix possible memory leak caused by missing pci_dev_put()
    4a1b6f7839d3 mmc: sdhci-pci-o2micro: fix card detect fail issue caused by CD# debounce timeout
    fd285d421563 mmc: core: properly select voltage range without power cycle
    8a9bae5f1b53 firmware: coreboot: Register bus in module init
    052d0e79efe5 iommu/vt-d: Set SRE bit only when hardware has SRS cap
    c31a792a825a iommu/vt-d: Preset Access bit for IOVA in FL non-leaf paging entries
    11edbdee4399 scsi: zfcp: Fix double free of FSF request when qdio send fails
    fdf87b5b3087 net: phy: marvell: add sleep time after enabling the loopback bit
    9648d760edf4 maccess: Fix writing offset in case of fault in strncpy_from_kernel_nofault()
    fdd57c20d440 Input: iforce - invert valid length check when fetching device IDs
    0cafb719bed5 serial: 8250_lpss: Configure DMA also w/o DMA filter
    59f6596697f1 serial: 8250: Flush DMA Rx on RLSI
    118b52c2ae08 serial: 8250: Fall back to non-DMA Rx if IIR_RDI occurs
    6ffce7a92ef5 dm ioctl: fix misbehavior if list_versions races with module loading
    2b104973f7fd iio: pressure: ms5611: changed hardcoded SPI speed to value limited
    1678d4abb2dc iio: adc: mp2629: fix potential array out of bound access
    bd22c232ead9 iio: adc: mp2629: fix wrong comparison of channel
    656f67061366 iio: trigger: sysfs: fix possible memory leak in iio_sysfs_trig_init()
    1bf8c0aff8fb iio: adc: at91_adc: fix possible memory leak in at91_adc_allocate_trigger()
    afc0aea70261 usb: typec: mux: Enter safe mode only when pins need to be reconfigured
    8236628a549d usb: cdns3: host: fix endless superspeed hub port reset
    ead83b0db81f usb: chipidea: fix deadlock in ci_otg_del_timer
    cc9e6d8c55c9 usb: add NO_LPM quirk for Realforce 87U Keyboard
    70eca1d261b2 USB: serial: option: add Fibocom FM160 0x0111 composition
    1b6a54885c40 USB: serial: option: add u-blox LARA-L6 modem
    b0467d0059bc USB: serial: option: add u-blox LARA-R6 00B modem
    95688a8a5735 USB: serial: option: remove old LARA-R6 PID
    53dee78ea382 USB: serial: option: add Sierra Wireless EM9191
    e7764e88e6c4 USB: bcma: Make GPIO explicitly optional
    a190a83db284 speakup: fix a segfault caused by switching consoles
    b3c6edbee48e slimbus: stream: correct presence rate frequencies
    6b35ac831555 slimbus: qcom-ngd: Fix build error when CONFIG_SLIM_QCOM_NGD_CTRL=y && CONFIG_QCOM_RPROC_COMMON=m
    0f847462fea1 Revert "usb: dwc3: disable USB core PHY management"
    23ad214a8665 ALSA: hda/realtek: Fix the speaker output on Samsung Galaxy Book Pro 360
    a36b505749c6 ALSA: hda/realtek: fix speakers for Samsung Galaxy Book Pro
    02b94885b2fd ALSA: usb-audio: Drop snd_BUG_ON() from snd_usbmidi_output_open()
    7176d6f3adb9 drm/amd/display: Add HUBP surface flip interrupt handler
    e57daa750369 tracing: kprobe: Fix potential null-ptr-deref on trace_array in kprobe_event_gen_test_exit()
    3a41c0f2a5c3 tracing: kprobe: Fix potential null-ptr-deref on trace_event_file in kprobe_event_gen_test_exit()
    7291dec4f2d1 tracing: Fix race where eprobes can be called before the event
    6517b97134f7 tracing: Fix wild-memory-access in register_synth_event()
    07ba4f0603ab tracing: Fix memory leak in test_gen_synth_cmd() and test_empty_synth_event()
    8b318f3032bf tracing/ring-buffer: Have polling block on watermark
    2c21ee020ce4 tracing: Fix memory leak in tracing_read_pipe()
    00f74b1a98a2 ring_buffer: Do not deactivate non-existant pages
    1bea037a1abb ftrace: Fix null pointer dereference in ftrace_add_mod()
    fadfcf39fbcd ftrace: Optimize the allocation for mcount entries
    5c5f2642898f ftrace: Fix the possible incorrect kernel message
    2ab249416244 cifs: add check for returning value of SMB2_set_info_init
    5783abda58d6 net: thunderbolt: Fix error handling in tbnet_init()
    80e590aeb132 net: microchip: sparx5: Fix potential null-ptr-deref in sparx_stats_init() and sparx5_start()
    4a55aec1425f cifs: Fix wrong return value checking when GETFLAGS
    c8baf1fc248b net/x25: Fix skb leak in x25_lapb_receive_frame()
    af4b57fa6bd0 net: ag71xx: call phylink_disconnect_phy if ag71xx_hw_enable() fail in ag71xx_open()
    61404a182eb5 cifs: add check for returning value of SMB2_close_init
    d3233f4bf3dd platform/surface: aggregator: Do not check for repeated unsequenced packets
    69691714035b platform/x86/intel: pmc: Don't unconditionally attach Intel PMC when virtualized
    7d93417d5964 drbd: use after free in drbd_create_device()
    fc16a2c81a3e bridge: switchdev: Fix memory leaks when changing VLAN protocol
    3d90a668c4bc net: hns3: fix setting incorrect phy link ksettings for firmware in resetting process
    3f7b2ef8fe92 net: ena: Fix error handling in ena_init()
    2540eea1bdc3 net: ionic: Fix error handling in ionic_init_module()
    c08c13cb13fa xen/pcpu: fix possible memory leak in register_pcpu()
    97009f07f217 net: dsa: make dsa_master_ioctl() see through port_hwtstamp_get() shims
    88da008e5e2f net: mhi: Fix memory leak in mhi_net_dellink()
    8f839715d032 bnxt_en: Remove debugfs when pci_register_driver failed
    b88713d92bd3 net: caif: fix double disconnect client in chnl_net_open()
    6d2403416089 net: macvlan: Use built-in RCU list checking
    596230471da3 mISDN: fix misuse of put_device() in mISDN_register_device()
    07a6a8cf1712 net: liquidio: release resources when liquidio driver open failed
    19feb6cf4136 soc: imx8m: Enable OCOTP clock before reading the register
    8c54d706d829 net: stmmac: ensure tx function is not running in stmmac_xdp_release()
    6219f46c2b9d net: hinic: Fix error handling in hinic_module_init()
    7a05e3929668 mISDN: fix possible memory leak in mISDN_dsp_element_register()
    0ee6455c9cfa net: bgmac: Drop free_netdev() from bgmac_enet_remove()
    7ff4fa179e4e bpf: Initialize same number of free nodes for each pcpu_freelist
    12f178cf05f3 MIPS: Loongson64: Add WARN_ON on kexec related kmalloc failed
    a4d6e024bea2 MIPS: fix duplicate definitions for exported symbols
    44142b652a28 nfp: change eeprom length to max length enumerators
    f23058dc2398 ata: libata-transport: fix error handling in ata_tdev_add()
    67b219314628 ata: libata-transport: fix error handling in ata_tlink_add()
    e7bb1b7a7bf2 ata: libata-transport: fix error handling in ata_tport_add()
    377ff82c33c0 ata: libata-transport: fix double ata_host_put() in ata_tport_add()
    494df0b0efe8 arm64: dts: imx8mn: Fix NAND controller size-cells
    7178d568f7cc arm64: dts: imx8mm: Fix NAND controller size-cells
    8ccf18c82a0a ARM: dts: imx7: Fix NAND controller size-cells
    e884a6c2d49a drm: Fix potential null-ptr-deref in drm_vblank_destroy_worker()
    07e56de8766f drm/drv: Fix potential memory leak in drm_dev_init()
    45c300613bee drm/panel: simple: set bpc field for logic technologies displays
    779f3f9e0cdc drm/vc4: kms: Fix IS_ERR() vs NULL check for vc4_kms
    97e5b508e961 pinctrl: devicetree: fix null pointer dereferencing in pinctrl_dt_to_map
    9a77b8557fdb parport_pc: Avoid FIFO port location truncation
    5d03c2911c52 siox: fix possible memory leak in siox_device_add()
    530e987a0226 arm64: Fix bit-shifting UB in the MIDR_CPU_MODEL() macro
    d4944497827a bpf: Fix memory leaks in __check_func_call
    25521fd2e217 block: sed-opal: kmalloc the cmd/resp buffers
    2f21d653c648 scsi: scsi_transport_sas: Fix error handling in sas_phy_add()
    7cd28bc410d2 pinctrl: rockchip: list all pins in a possible mux route for PX30
    ab79b8dbe21e ASoC: soc-utils: Remove __exit for snd_soc_util_exit()
    eaa8edd86514 bpf, test_run: Fix alignment problem in bpf_prog_test_run_skb()
    33cabe04d2c8 tty: n_gsm: fix sleep-in-atomic-context bug in gsm_control_send
    ae22294e213a serial: imx: Add missing .thaw_noirq hook
    26db1cd5191e serial: 8250: omap: Flush PM QOS work on remove
    e0db709a58bd serial: 8250: omap: Fix unpaired pm_runtime_put_sync() in omap8250_remove()
    83b6d4d6da67 serial: 8250_omap: remove wait loop from Errata i202 workaround
    76db05ab7092 serial: 8250: omap: Fix missing PM runtime calls for omap8250_set_mctrl()
    2aee616a6b11 ARM: at91: pm: avoid soft resetting AC DLL
    188546c78006 ASoC: tas2764: Fix set_tdm_slot in case of single slot
    5782896daf65 ASoC: tas2770: Fix set_tdm_slot in case of single slot
    34eee4189bce ASoC: core: Fix use-after-free in snd_soc_exit()
    aa6f8aecbbf2 ARM: dts: at91: sama7g5: fix signal name of pin PB2
    487fff700f5f spi: stm32: Print summary 'callbacks suppressed' message
    2cec2f65c1e7 arm64: dts: qcom: sm8350-hdk: Specify which LDO modes are allowed
    44dbe66bb3ea arm64: dts: qcom: sm8250-xperia-edo: Specify which LDO modes are allowed
    8b2eae7def2b arm64: dts: qcom: sm8150-xperia-kumano: Specify which LDO modes are allowed
    c8e76eeea77c arm64: dts: qcom: sa8155p-adp: Specify which LDO modes are allowed
    30571f28bb35 hugetlbfs: don't delete error page from pagecache
    14ddbb83c342 KVM: x86/pmu: Do not speculatively query Intel GP PMCs that don't exist yet
    a9b964ed7cf9 spi: intel: Use correct mask for flash and protected regions
    f4eb68642ed3 mtd: spi-nor: intel-spi: Disable write protection only if asked
    156d0c823c59 ASoC: codecs: jz4725b: Fix spelling mistake "Sourc" -> "Source", "Routee" -> "Route"
    5907ff9f2c8f x86/cpu: Add several Intel server CPU model numbers
    41e37d04e397 Bluetooth: L2CAP: Fix l2cap_global_chan_by_psm
    b02a025dd188 btrfs: remove pointless and double ulist frees in error paths of qgroup tests
    1c366c206ff2 drm/imx: imx-tve: Fix return type of imx_tve_connector_mode_valid
    1c8ded1b3879 i2c: i801: add lis3lv02d's I2C address for Vostro 5568
    b432581f19a0 i2c: tegra: Allocate DMA memory for DMA engine
    7b0ae4c7b918 firmware: arm_scmi: Cleanup the core driver removal callback
    1a8a2fef273d ACPI: x86: Add another system to quirk list for forcing StorageD3Enable
    8a03a4a5cf6d NFSv4: Retry LOCK on OLD_STATEID during delegation return
    49ca2227c47b btrfs: raid56: properly handle the error when unable to find the missing stripe
    0f7bd3a2dfe1 RDMA/efa: Add EFA 0xefa2 PCI ID
    a42d4363e78f ACPI: scan: Add LATT2021 to acpi_ignore_dep_ids[]
    004decd41b32 drm/amd/display: Remove wrong pipe control lock
    7779efbb99bf ASoC: rt1308-sdw: add the default value of some registers
    ef1e4ed85814 selftests/intel_pstate: fix build for ARCH=x86_64
    dfd3cc1ef3e2 selftests/futex: fix build for clang
    648467236c12 ASoC: Intel: sof_sdw: add quirk variant for LAPBC710 NUC15
    64ee750c29da ASoC: codecs: jz4725b: fix capture selector naming
    150b74cd0625 ASoC: codecs: jz4725b: use right control for Capture Volume
    5352d8b31572 ASoC: codecs: jz4725b: fix reported volume for Master ctl
    85134577a7f2 ASoC: codecs: jz4725b: add missed Line In power control bit
    5e61dffb16dc spi: intel: Fix the offset to get the 64K erase opcode
    c697cb2e6663 ASoC: wm8962: Add an event handler for TEMP_HP and TEMP_SPK
    569085124d75 ASoC: rt1019: Fix the TDM settings
    4160a515c75b ASoC: mt6660: Keep the pm_runtime enables before component stuff in mt6660_i2c_probe
    2963ec4535a1 ASoC: wm8997: Revert "ASoC: wm8997: Fix PM disable depth imbalance in wm8997_probe"
    30a2f9479c21 ASoC: wm5110: Revert "ASoC: wm5110: Fix PM disable depth imbalance in wm5110_probe"
    3bf6da38a292 ASoC: wm5102: Revert "ASoC: wm5102: Fix PM disable depth imbalance in wm5102_probe"
    94fa250ea55c mm: shmem: don't truncate page if memory failure happens
    003fa195911d mm: hwpoison: handle non-anonymous THP correctly
    a62b1bc603a1 mm: hwpoison: refactor refcount check handling
    3df0eeae4d9a Linux 5.15.79
    599b24eedf2a x86/cpu: Restore AMD's DE_CFG MSR after resume
    9132fa043f96 net: tun: call napi_schedule_prep() to ensure we own a napi
    1dea25e25acd drm/amdkfd: Migrate in CPU page fault use current mm
    a1c303fbd4dd marvell: octeontx2: build error: unknown type name 'u64'
    d948b228343a dmaengine: at_hdmac: Check return code of dma_async_device_register
    c556ecf32a07 dmaengine: at_hdmac: Fix impossible condition
    8a941ff34e53 dmaengine: at_hdmac: Don't allow CPU to reorder channel enable
    53831f7a13c3 dmaengine: at_hdmac: Fix completion of unissued descriptor in case of errors
    14f5462e4a00 dmaengine: at_hdmac: Fix descriptor handling when issuing it to hardware
    5482403228be dmaengine: at_hdmac: Fix concurrency over the active list
    82ca19414faa dmaengine: at_hdmac: Free the memset buf without holding the chan lock
    8fd36e069d65 dmaengine: at_hdmac: Fix concurrency over descriptor
    1ee012d452b1 dmaengine: at_hdmac: Fix concurrency problems by removing atc_complete_all()
    90c1b07406f0 dmaengine: at_hdmac: Protect atchan->status with the channel lock
    b5ee1fe06ad7 dmaengine: at_hdmac: Do not call the complete callback on device_terminate_all
    9bbf5df0fc8c dmaengine: at_hdmac: Fix premature completion of desc in issue_pending
    f7d1aaa90319 dmaengine: at_hdmac: Start transfer for cyclic channels in issue_pending
    e9777b4efcce dmaengine: at_hdmac: Don't start transactions at tx_submit level
    4e28674a0ecd dmaengine: at_hdmac: Fix at_lli struct definition
    49eba53137f5 cert host tools: Stop complaining about deprecated OpenSSL functions
    69e86c6268d5 can: j1939: j1939_send_one(): fix missing CAN header initialization
    81fc8f90b885 mm/shmem: use page_mapping() to detect page cache for uffd continue
    e91451af11f9 mm/memremap.c: map FS_DAX device memory as decrypted
    48998c1773a4 mm/damon/dbgfs: check if rm_contexts input is for a real context
    c736ed854160 udf: Fix a slab-out-of-bounds write bug in udf_find_entry()
    2e87eddf5736 mms: sdhci-esdhc-imx: Fix SDHCI_RESET_ALL for CQHCI
    91c38504e589 btrfs: zoned: initialize device's zone info for seeding
    432c30ba3f56 btrfs: selftests: fix wrong error check in btrfs_free_dummy_root()
    c9fe4719c662 btrfs: fix match incorrectly in dev_args_match_device
    f96fd3693631 wifi: ath11k: avoid deadlock during regulatory update in ath11k_regd_update()
    8e2b576caf91 platform/x86: hp_wmi: Fix rfkill causing soft blocked wifi
    cb3ab0e1e074 drm/amdgpu: disable BACO on special BEIGE_GOBY card
    dc066a78500a drm/i915/dmabuf: fix sg_table handling in map_dma_buf
    afbd1188382a nilfs2: fix use-after-free bug of ns_writer on remount
    abc082aac0d9 nilfs2: fix deadlock in nilfs_count_free_blocks()
    589da2288197 ata: libata-scsi: fix SYNCHRONIZE CACHE (16) command failure
    51ae4579a5d5 vmlinux.lds.h: Fix placement of '.data..decrypted' section
    1f8e08ab3269 ALSA: usb-audio: Add DSD support for Accuphase DAC-60
    c2451f62b2bd ALSA: usb-audio: Add quirk entry for M-Audio Micro
    031d1480a0f4 ALSA: usb-audio: Yet more regression for for the delayed card registration
    574f51e4aa40 ALSA: hda/realtek: Add Positivo C6300 model quirk
    7140d7aaf93d ALSA: hda: fix potential memleak in 'add_widget_node'
    f6d7a487aabd ALSA: hda/ca0132: add quirk for EVGA Z390 DARK
    1ccd55b3901b ALSA: hda/hdmi - enable runtime pm for more AMD display audio
    29100c674208 mmc: sdhci-esdhc-imx: use the correct host caps for MMC_CAP_8_BIT_DATA
    3dce99e2eb06 mmc: sdhci-tegra: Fix SDHCI_RESET_ALL for CQHCI
    9d6bd33e6aeb mmc: sdhci_am654: Fix SDHCI_RESET_ALL for CQHCI
    ad01f16ca90c mmc: sdhci-of-arasan: Fix SDHCI_RESET_ALL for CQHCI
    1aa78c1d013c mmc: cqhci: Provide helper for resetting both SDHCI and CQHCI
    c198524a99cb MIPS: jump_label: Fix compat branch range check
    9713ceffa40a arm64: efi: Fix handling of misaligned runtime regions and drop warning
    518e49f0590d riscv: fix reserved memory setup
    d07c3d7491b4 riscv: vdso: fix build with llvm
    cc36c7fa5d93 riscv: process: fix kernel info leakage
    a8d67367ab33 net: macvlan: fix memory leaks of macvlan_common_newlink
    7b194dd32b13 ethernet: tundra: free irq when alloc ring failed in tsi108_open()
    7de10342fe14 net: mv643xx_eth: disable napi when init rxq or txq failed in mv643xx_eth_open()
    88e1dd2d9291 ethernet: s2io: disable napi when start nic failed in s2io_card_up()
    3652f1f8d3ea net: atlantic: macsec: clear encryption keys from the stack
    fca3b0a1fd3e net: phy: mscc: macsec: clear encryption keys when freeing a flow
    60a0af8813fd stmmac: dwmac-loongson: fix missing of_node_put() while module exiting
    ee4a9bd2c7f4 stmmac: dwmac-loongson: fix missing pci_disable_device() in loongson_dwmac_probe()
    4a8770eebc39 stmmac: dwmac-loongson: fix missing pci_disable_msi() while module exiting
    83196d8dc5a8 cxgb4vf: shut down the adapter when t4vf_update_port_info() failed in cxgb4vf_open()
    49d8a6e24a34 mctp: Fix an error handling path in mctp_init()
    29961d2332a5 stmmac: intel: Update PCH PTP clock rate from 200MHz to 204.8MHz
    8604bebc5c32 stmmac: intel: Enable 2.5Gbps for Intel AlderLake-S
    7dec6dae2b61 net: cxgb3_main: disable napi when bind qsets failed in cxgb_up()
    960f9d30def3 net: cpsw: disable napi in cpsw_ndo_open()
    1360778fdb6f net/mlx5e: E-Switch, Fix comparing termination table instance
    f13e9ebd2925 net/mlx5: Allow async trigger completion execution on single CPU systems
    48b73b46a5b0 net/mlx5: Bridge, verify LAG state when adding bond to bridge
    13b1ea861e8a net: wwan: iosm: fix memory leak in ipc_pcie_read_bios_cfg
    7e4dcacb4dd6 net: nixge: disable napi when enable interrupts failed in nixge_open()
    409731df6310 net: marvell: prestera: fix memory leak in prestera_rxtx_switch_init()
    77ff31cba9a6 netfilter: Cleanup nft_net->module_list from nf_tables_exit_net()
    e62cb1c093d6 netfilter: nfnetlink: fix potential dead lock in nfnetlink_rcv_msg()
    0bd20318da08 perf tools: Add the include/perf/ directory to .gitignore
    a733671e388c perf stat: Fix printing os->prefix in CSV metrics output
    c36e9e2c4aff drivers: net: xgene: disable napi when register irq failed in xgene_enet_open()
    4689bd3a1b23 net: lapbether: fix issue of invalid opcode in lapbeth_open()
    1dd27541aa2b dmaengine: ti: k3-udma-glue: fix memory leak when register device fail
    992e966caf57 dmaengine: mv_xor_v2: Fix a resource leak in mv_xor_v2_remove()
    9766af75ba5a dmaengine: pxa_dma: use platform_get_irq_optional
    301caa06091a tipc: fix the msg->req tlv len check in tipc_nl_compat_name_table_dump_header
    6a264203dbdb net: broadcom: Fix BCMGENET Kconfig
    e7871b9a21ae net: stmmac: dwmac-meson8b: fix meson8b_devm_clk_prepare_enable()
    261178a1c262 can: af_can: fix NULL pointer dereference in can_rx_register()
    2acb2779b147 ipv6: addrlabel: fix infoleak when sending struct ifaddrlblmsg to network
    13ecaa6832fb tcp: prohibit TCP_REPAIR_OPTIONS if data was already sent
    bc79cb9fb006 drm/vc4: Fix missing platform_unregister_drivers() call in vc4_drm_register()
    2845bc9070ce net: wwan: mhi: fix memory leak in mhi_mbim_dellink
    2ce2348c2858 net: wwan: iosm: fix memory leak in ipc_wwan_dellink
    7b6bc50f65e9 hamradio: fix issue of dev reference count leakage in bpq_device_event()
    f59adebb8c28 net: lapbether: fix issue of dev reference count leakage in lapbeth_device_event()
    119407dc329a KVM: s390: pv: don't allow userspace to set the clock under PV
    500bcd3a99ea phy: ralink: mt7621-pci: add sentinel to quirks table
    151dc8087b56 capabilities: fix undefined behavior in bit shift for CAP_TO_MASK
    435c7ddfd510 net: fman: Unregister ethernet device on removal
    3a504d6d96ea bnxt_en: fix potentially incorrect return value for ndo_rx_flow_steer
    ac257c43fa61 bnxt_en: Fix possible crash in bnxt_hwrm_set_coal()
    d7569302a7a5 net: tun: Fix memory leaks of napi_get_frags
    430d1f4964dd octeontx2-pf: NIX TX overwrites SQ_CTX_HW_S[SQ_INT]
    ec0db81883b4 octeontx2-pf: Use hardware register for CQE count
    b89a0d8859ae macsec: clear encryption keys from the stack after setting up offload
    eeba7f07a0cb macsec: fix detection of RXSCs when toggling offloading
    3070a880eb03 macsec: fix secy->n_rx_sc accounting
    e957555a3694 macsec: delete new rxsc when offload fails
    ad25a115f508 net: gso: fix panic on frag_list with mixed head alloc types
    466ce46f251d bpf: Fix wrong reg type conversion in release_reference()
    35d8130f2ad0 bpf: Add helper macro bpf_for_each_reg_in_vstate
    61274498fbf8 bpf, sock_map: Move cancel_work_sync() out of sock lock
    32b5dd03beeb bpf: Fix sockmap calling sleepable function in teardown path
    e9915581899c bpf, sockmap: Fix sk->sk_forward_alloc warn_on in sk_stream_kill_queues
    5ad95d71344b HID: hyperv: fix possible memory leak in mousevsc_probe()
    6dcdd1b68b7f bpftool: Fix NULL pointer dereference when pin {PROG, MAP, LINK} without FILE
    2fc902245c82 wifi: mac80211: Set TWT Information Frame Disabled bit as 1
    95adbd2ac8de bpf, sockmap: Fix the sk->sk_forward_alloc warning of sk_stream_kill_queues
    06615967d488 bpf, verifier: Fix memory leak in array reallocation for stack state
    4335a82c4f7b soundwire: qcom: check for outanding writes before doing a read
    ae4dad2e5374 soundwire: qcom: reinit broadcast completion
    38c9fa2cc6bf wifi: cfg80211: fix memory leak in query_regdb_file()
    2c6ba0a7872b wifi: cfg80211: silence a sparse RCU warning
    921738c280ab phy: stm32: fix an error code in probe
    fa722006f762 hwspinlock: qcom: correct MMIO max register for newer SoCs
    3c1bb6187e56 drm/amdkfd: Fix NULL pointer dereference in svm_migrate_to_ram()
    b1f852277171 drm/amdkfd: handle CPU fault on COW mapping
    36770c045aba drm/amdkfd: avoid recursive lock in migrations back to RAM
    93a5de7e8843 fuse: fix readdir cache race
    1920cf94545a thunderbolt: Add DP OUT resource when DP tunnel is discovered
    47dbf2496990 thunderbolt: Tear down existing tunnels when resuming from hibernate

(From OE-Core rev: 310928d806e49d2569fb3c37fbb93b57f1b3dd16)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit ee40eebc70d1d09c758eeba2ff6de969fb717a0b)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-26 23:39:06 +00:00
Bruce Ashfield
fd149d03d8 linux-yocto/5.15: libbpf: Fix build warning on ref_ctr_off
Integrating the following commit(s) to linux-yocto/5.15:

    da5513f30187 libbpf: Fix build warning on ref_ctr_off

(From OE-Core rev: 94448553f0e6c5f7efd08febb973967186ae3372)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit eb75d561256c794baf6c89c1975967343145da87)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-26 23:39:06 +00:00
Bruce Ashfield
87a729966e linux-yocto/5.15: fix perf build with clang
Integrating the following commit(s) to linux-yocto/5.15:

    4c5a089621a8 perf python: Account for multiple words in CC

(From OE-Core rev: 9ec76fefc8b3bd4fff31fe8958de6f51d4b1f139)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 1cf78a856beb42a2d68e6c49bfdbc33fea68ebb5)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-26 23:39:06 +00:00
Bruce Ashfield
b045d8c17c linux-yocto/5.15: ltp and squashfs fixes
Integrating the following commit(s) to linux-yocto/5.15:

    1c5699ee85d4 fs: move S_ISGID stripping into the vfs_*() helpers
    838f5d0701d8 fs: add mode_strip_sgid() helper
    d97172683641 squashfs: provide backing_dev_info in order to disable read-ahead

(From OE-Core rev: 1b1dc1cc57816a01383d7173b63991e3ed001327)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 474ddb758dd1b327540e48ccfe1500fb4231f30b)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-26 23:39:06 +00:00
Bruce Ashfield
24f647a1fb linux-yocto/5.19: fix perf build with clang
Integrating the following commit(s) to linux-yocto/5.19:

    3326dff489c8 tools: Remove some options from CLANG_CROSS_FLAGS
    5b92f7def854 libbpf: Fix build warning on ref_ctr_off
    b7cd8e00afcd perf python: Account for multiple words in CC

(From OE-Core rev: 5cd80b0fb27560a516b3634e9a98f366883c8047)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit b734bd73763548e3991803c03b8bcc3b4bea6432)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-26 23:39:06 +00:00
Alexander Kanavin
4d042f99c7 xserver-xorg: upgrade 21.1.4 -> 21.1.6
Changelog:

https://fossies.org/linux/misc/xorg-server-21.1.6.tar.xz/xorg-server-21.1.6/ChangeLog

(From OE-Core rev: 51e6efcc077138bb460d17cf1a00c4eb57b0d8aa)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 009e8d6a292690a0c355d12be2368a9677c701f5)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-26 23:39:06 +00:00
Alexander Kanavin
2d51fc8cbf xwayland: upgrade 22.1.5 -> 22.1.7
(From OE-Core rev: 1d9aa525d5f239db27486b4b5fe85417d4d729ee)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit c37ec8b2d91605d6eb5228f0a447fb83f111edc3)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-26 23:39:06 +00:00
Alexander Kanavin
54428d7feb linux-firmware: upgrade 20221109 -> 20221214
License-Update: additional files

(From OE-Core rev: 7c31b7265f5b765f6a21852a90cd4e4eae0c7bd6)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 15f3a9f6c4406ddc00f7dc0ca7e1beafe9c71a9f)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-26 23:39:06 +00:00
Alexander Kanavin
36960f56c1 libksba: update 1.6.2 -> 1.6.3
Noteworthy changes in version 1.6.3 (2022-12-06)

Fix another integer overflow in the CRL parser. [T6284,CVE-2022-47629]

(From OE-Core rev: f098cb5073051eb371f4142678b4b3d5e7b52426)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 83f3f21b1b84ab9e7b461ac966691c80f4ed4e97)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-26 23:39:06 +00:00
Ross Burton
1399ebf245 pango: upgrade 1.50.11 -> 1.50.12
Overview of changes in 1.50.12, 18-11-2022
==========================================
- Fix weight conversion on MacOS
- Update to Unicode 15
- Some introspection annotation fixes
- Improve PangoAttrList serialization
- Fix char offset calculatiosn in multi-paragraph
  layouts

(From OE-Core rev: 032a2a1abf19954c59d50fcacafb2293ac5a9351)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 35fc61a1dd63a0555b67da899418010d595b545c)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-26 23:39:06 +00:00
Robert Joslyn
7faee52d40 curl: Fix CVE-2022-43551 and CVE-2022-43552
Backport patches to address these CVEs.
 * https://curl.se/docs/CVE-2022-43551.html
 * https://curl.se/docs/CVE-2022-43552.html

(From OE-Core rev: 514561e323a8f63d42af9baa226ac53955c40cff)

Signed-off-by: Robert Joslyn <robert.joslyn@redrectangle.org>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-26 23:39:06 +00:00
Quentin Schulz
cef89a0171 cairo: fix CVE patches assigned wrong CVE number
CVE-2019-6461 and CVE-2019-6462 are fixed, but the reporting is
incorrect as the patch for CVE-2019-6461 is actually for CVE-2019-6462
and vice-versa.

This swaps both files and edit the CVE field to report the correct
identifier.

Cc: Quentin Schulz <foss+yocto@0leil.net>
(From OE-Core rev: 785197a9c79e0fe8d27951fa9c0782c92fed2b0c)

Signed-off-by: Quentin Schulz <quentin.schulz@theobroma-systems.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit f12c2a5ac94cb29f473f3c7e335463c7fb6d8a6e)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-26 23:39:06 +00:00
Jermain Horsman
a2d03c2599 cve-check: write the cve manifest to IMGDEPLOYDIR
When building an image cve_check_write_rootfs_manifest() would sometimes fail
with a FileNotFoundError when writing the manifest.cve due to the parent
directory (DEPLOY_DIR_IMAGE) not (yet) existing.

The image task will provide the manifest in the deploy directory afterwards,
so other recipes depending on the manifest being in DEPLOY_DIR_IMAGE should
continue to function properly.

(From OE-Core rev: 7d4179576c32c3464cb1a612840fd6aa37f7ff1f)

Signed-off-by: Jermain Horsman <jermain.horsman@nedap.com>
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 00fb2aae22ce0d7ff5f3f8766fa770eeb4e73483)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-26 23:39:06 +00:00
Ross Burton
cae761d731 cve-update-db-native: show IP on failure
We get random SSL failures when fetching the CVE database, and it's
notable that the NVD server is behind a DNS round-robin or geographically
diverse servers.

On a hunch that there is one misconfigured server, dump the IP that we
connected to.

(From OE-Core rev: 60e06c9666a2b254c50b2f51932d395f88dd550c)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 91f46d431dc8f40e8c6475c800bb61cb08b82b0a)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-26 23:39:06 +00:00
Marta Rybczynska
b947c51178 cve-update-db-native: avoid incomplete updates
The database update has been done on the original file. In case of
network connection issues, temporary outage of the NVD server or
a similar situation, the function could exit with incomplete data
in the database. This patch solves the issue by performing the update
on a copy of the database. It replaces the main one only if the whole
update was successful.

See https://bugzilla.yoctoproject.org/show_bug.cgi?id=14929

Reported-by: Alberto Pianon <alberto@pianon.eu>
(From OE-Core rev: 66aa05be4c237d24295d5e02de6e2dbef43af6dc)

Signed-off-by: Marta Rybczynska <marta.rybczynska@linaro.org>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 8efe99214d8b005f0ecac690ce5ba17b31758f92)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-26 23:39:05 +00:00
Richard Purdie
da318dd088 bitbake: server/process: Add bitbake.sock race handling
We've seen cases where the bitbake.sock file appears to disappear but the
server continues to hold bitbake.lock. The most likely explaination is
that some previous build directory was moved out the way, a server there
kept running, eventually exited and removed the sock file from the wrong
directory.

To guard against this, save the inode information for the sock file and check
it before deleting the file. The new code isn't entirely race free but should
guard against what is a rare but annoying potential issue.

(Bitbake rev: 52b6b099a47555811b8d0b311f62af712dd6eb8e)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit b02ebbffdae27e564450446bf84c4e98d094ee4a)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-16 11:08:39 +00:00
Frank de Brabander
bfa114bfa8 bitbake: process: log odd unlink events with bitbake.sock
Log when the socket file already exists and is removed before
recreating a new socket.

Log when unlinking the socket file failed.

(Bitbake rev: 9779fad4d9e2540b24bb91cfa38fc1984402bef2)

Signed-off-by: Frank de Brabander <debrabander@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit cfd7c9899f988bab6d9fe7bbfbdb60603fb5ed34)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-16 11:08:39 +00:00
Alexander Kanavin
075101eee1 devtool: process local files only for the main branch
devtool modify/upgrade are not currently equipped to handle conditional local files
in SRC_URI, and provide only the main no-override set in a workspace under
source/component/oe-local-files/ (this is done via meta/classes/devtool-source.bbclass).

On the other hand, updating the changes from workspace into a recipe
is run iteratively against all overrides; this works for patches (as they
all are directed into their own override branches in the workspace
git source tree), but breaks down when trying to match local files
in a workspace against local files in overridden SRC_URI lists, resulting in
bad recipe breakage.

(there's an additional twist here: existing code has a guard against this
but the guard relies on metadata in workspace .bbappend that is only there
in modify operations, but not upgrades. This commit replaces the guard
with a general check that will work everywhere).

Implementing multiple sets of local files is significant work; let's for now
simply not touch local files in recipes except when on the no-override variant.

Also, adjust the selftest cases to include conditional local files in sample
recipes, so the situation is covered by the tests.

(From OE-Core rev: b2dfb2fe86de887d0239078ded0a4f9e8c677d83)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 3a8654b860fa98f94e80c3c3fff359ffed14bbe7)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-15 11:05:19 +00:00
Jose Quaresma
7685c1c0c5 gstreamer1.0: Fix race conditions in gstbin tests
(From OE-Core rev: dab90e4b278f6b12a21348aecf3ad70a8b6b76f7)

Signed-off-by: Jose Quaresma <jose.quaresma@foundries.io>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit b57df3fe9c1623ba2f5a9a0e11a85dcdc77e76a5)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-15 11:05:19 +00:00
Jose Quaresma
60625e6b52 Revert "gstreamer1.0: disable flaky gstbin:test_watch_for_state_change test"
This reverts commit 220a527d26.

- Drop this patch and use the upstream solution
  https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2643

(From OE-Core rev: 4576d4f014f7ac0831e37e760372e62d2e0ea17e)

Signed-off-by: Jose Quaresma <jose.quaresma@foundries.io>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 9660045d07a2b492ac48a1f1b08aa4288b45d64a)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-15 11:05:19 +00:00
Pavel Zhukov
39715cc4d6 oeqa/rpm.py: Increase timeout and add debug output
[Yocto #14346]
Systemd may be slow in killing pam session sometimes [1][2]. It may cause rpm
test to fail because there's process (sd_pam) running and own by "test1" user
after timeout.
Increasing timeout to 2 mins and assert earlier with debug output if
there's such process(es). If increasing of timeout doesn't help we may
want to force deletion of the user as [2] suggests.

[1] https://github.com/systemd/systemd/issues/8598
[2] https://access.redhat.com/solutions/6969188

(From OE-Core rev: ed2c94ae744331a1e977dd4e02005390a84cd5be)

Signed-off-by: Pavel Zhukov <pavel@zhukoff.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 972fcc0ed1e0d36c3470071a9c667c5327c1ef78)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-15 11:05:19 +00:00
Changqing Li
af8a7f0eb7 base.bbclass: Fix way to check ccache path
The previous code had 2 issues:
1. make hosttools/ccache always link to host's ccache (/usr/bin/ccache)
even we have one buildtools
2. make hosttools/gcc etc, link to host's gcc event we have one
buildtools when keyword ccache in buildtools's path, eg:
/mnt/ccache/bin/buildtools

This patch is for fix above issues.

(From OE-Core rev: 539bc9d15e32c9574a0c038a6d1d666b5fb40d90)

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 1b7c81414cf252a7203d95703810a770184d7e4d)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-15 11:05:19 +00:00
Luis
d67c0e657c rm_work.bbclass: use HOSTTOOLS 'rm' binary exclusively
The do_rm_work() task is using the first available 'rm' binary
available in PATH to remove files and folders.
However, depending on the PATH setup and RECIPE_SYSROOT_NATIVE
contents, the function can be using the 'rm' binary available
in RECIPE_SYSROOT_NATIVE, a folder that will get removed.
This causes a sporadic race-condition when trying to access the
'rm' binary of a folder already deleted.
Solve this by exclusively using the HOSTTOOLS 'rm' binary, as
this folder will not get removed.

(From OE-Core rev: bfa7e82d0b53644293173571c4e149717a015eb3)

Signed-off-by: Luis Martins <luis.pinto.martins@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit edcd9ad333bc4e504594e8af83e8cb7007d2e35c)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-15 11:05:19 +00:00
Alexander Kanavin
fb838e297e go: update 1.19.3 -> 1.19.4
go1.19.4 (released 2022-12-06) includes security fixes to the net/http
and os packages, as well as bug fixes to the compiler, the runtime,
and the crypto/x509, os/exec, and sync/atomic packages.

(From OE-Core rev: e07f253e14a3651dd4e3d0e4d75c546f40bea8c1)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 67301425ac2696ccc07d6f47856336d6336382fb)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-15 11:05:19 +00:00
Wang Mingyu
70e6aeea7f bind: upgrade 9.18.9 -> 9.18.10
Changelog:
==========
The key file IO locks objects would never get deleted from the hashtable due to
off-by-one error.

ANY responses could sometimes have the wrong TTL.

Speed up the named shutdown time by explicitly canceling all recursing ns_client
objects for

Removing a catalog zone from catalog-zones without also removing the referenced
zone could leave a dangling pointer. [GL #3683]

nslookup and host were not honoring the selected port in TCP mode. [GL #3721]

Deprecate alt-transfer-source, alt-transfer-source-v6 and
use-alt-transfer-source. [GL #3694]

Move the "final reference detached" log message from dns_zone unit to the
DEBUG(1) log level.

Fix assertion failure in isc_http API used by statschannel if the read callback
would be called on HTTP request that has been already closed.

Deduplicate time unit conversion factors.

Copy TLS identifier when setting up primaries for catalog member zones.

Deprecate 'auto-dnssec'. [GL #3667]

The decompression implementation in dns_name_fromwire() is now smaller and
faster. [GL #3655]

Use the current domain name when checking answers from a dual-stack-server.

Ensure 'named-checkconf -z' respects the check-wildcard option when loading a
zone.  [GL #1905]

Deprecate 'coresize', 'datasize', 'files', and 'stacksize' named.conf options.

The view's zone table was not locked when it should have been leading to race
conditions when external extensions that manipulate the zone table where in use.

Some browsers (Firefox) send more than 10 HTTP headers.  Bump the number of
allowed HTTP headers to 100. [GL #3670]

NXDOMAIN cache records are no longer retained in the cache after expiry,
even when serve-stale is in use. [GL #3386]

(From OE-Core rev: 6c2b904f22a629880681a26550022764c170541a)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 1c093c38e247b522f279f616d16373795a4cdf89)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-15 11:05:19 +00:00
Alexander Kanavin
c5b151f59f libarchive: upgrade 3.6.1 -> 3.6.2
Libarchive 3.6.2 is a bugfix and security release.

Important security fixes:

NULL pointer dereference vulnerability in archive_write.c (#1754, #1759, CVE-2022-36227)

Important bug fixes:

include ZSTD in Windows builds (#1688)
SSL fixes on Windows (#1714, #1723, #1724)
rar5 reader: fix possible garbled output with bsdtar -O (#1745)
mtree reader: support reading mtree files with tabs (#1783)
various small fixes for issues found by CodeQL

Use --without-iconv as otherwise autotools write a bogus iconv
dependency into .pc file.

(From OE-Core rev: 4dd785cc05fd57f6cce8838cca7379c6e0bfd15c)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit edce1bce81fe2f47fb2c5e2b94ebda73f95cbaea)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-15 11:05:19 +00:00
wangmy
d73874c7ab dbus: upgrade 1.14.0 -> 1.14.4
dbus 1.14.4 (2022-10-05)
========================

This is a security update for the dbus 1.14.x stable branch, fixing
denial-of-service issues (CVE-2022-42010, -42011, -42012) and applying
security hardening (dbus#416).

Behaviour changes:

• On Linux, dbus-daemon and other uses of DBusServer now create a
  path-based Unix socket, unix:path=..., when asked to listen on a
  unix:tmpdir=... address. This makes unix:tmpdir=... equivalent to
  unix:dir=... on all platforms.
  Previous versions would have created an abstract socket, unix:abstract=...,
  in this situation.
  This change primarily affects the well-known session bus when run via
  dbus-launch(1) or dbus-run-session(1). The user bus, enabled by configuring
  dbus with --enable-user-session and running it on a systemd system,
  already used path-based Unix sockets and is unaffected by this change.
  This behaviour change prevents a sandbox escape via the session bus socket
  in sandboxing frameworks that can share the network namespace with the host
  system, such as Flatpak.
  This change might cause a regression in situations where the abstract socket
  is intentionally shared between the host system and a chroot or container,
  such as some use-cases of schroot(1). That regression can be resolved by
  using a bind-mount to share either the D-Bus socket, or the whole /tmp
  directory, with the chroot or container.
  (dbus#416, Simon McVittie)

Denial of service fixes:

Evgeny Vereshchagin discovered several ways in which an authenticated
local attacker could cause a crash (denial of service) in
dbus-daemon --system or a custom DBusServer. In uncommon configurations
these could potentially be carried out by an authenticated remote attacker.

• An invalid array of fixed-length elements where the length of the array
  is not a multiple of the length of the element would cause an assertion
  failure in debug builds or an out-of-bounds read in production builds.
  This was a regression in version 1.3.0.
  (dbus#413, CVE-2022-42011; Simon McVittie)

• A syntactically invalid type signature with incorrectly nested parentheses
  and curly brackets would cause an assertion failure in debug builds.
  Similar messages could potentially result in a crash or incorrect message
  processing in a production build, although we are not aware of a practical
  example. (dbus#418, CVE-2022-42010; Simon McVittie)

• A message in non-native endianness with out-of-band Unix file descriptors
  would cause a use-after-free and possible memory corruption in production
  builds, or an assertion failure in debug builds. This was a regression in
  version 1.3.0. (dbus#417, CVE-2022-42012; Simon McVittie)

dbus 1.14.2 (2022-09-26)
========================

Fixes:

• Fix build failure on FreeBSD (dbus!277, Alex Richardson)

• Fix build failure on macOS with launchd enabled
  (dbus!287, Dawid Wróbel)

• Preserve errno on failure to open /proc/self/oom_score_adj
  (dbus!285, Gentoo#834725; Mike Gilbert)

• On Linux, don't log warnings if oom_score_adj is read-only but does not
  need to be changed (dbus!291, Simon McVittie)

• Slightly improve error-handling for inotify
  (dbus!235, Simon McVittie)

• Don't crash if dbus-daemon is asked to watch more than 128 directories
  for changes (dbus!302, Jan Tojnar)

• Autotools build system fixes:
  · Don't treat --with-x or --with-x=yes as a request to disable X11,
    fixing a regression in 1.13.20. Instead, require X11 libraries and
    fail if they cannot be detected. (dbus!263, Lars Wendler)
  · When a CMake project uses an Autotools-built libdbus in a
    non-standard prefix, find dbus-arch-deps.h successfully
    (dbus#314, Simon McVittie)
  · Don't include generated XML catalog in source releases
    (dbus!317, Jan Tojnar)
  · Improve robustness of detecting gcc __sync atomic builtins
    (dbus!320, Alex Richardson)

• CMake build system fixes:
  · Detect endianness correctly, fixing interoperability with other D-Bus
    implementations on big-endian systems (dbus#375, Ralf Habacker)
  · When building for Unix, install session and system bus setup
    in the intended locations
    (dbus!267, dbus!297; Ralf Habacker, Alex Richardson)
  · Detect setresuid() and getresuid() (dbus!319, Alex Richardson)
  · Detect backtrace() on FreeBSD (dbus!281, Alex Richardson)
  · Don't include headers from parent directory (dbus!282, Alex Richardson)
  · Distinguish between host and target TMPDIR when cross-compiling
    (dbus!279, Alex Richardson)
  · Fix detection of atomic operations (dbus!306, Alex Richardson)

Tests and CI enhancements:

• On Unix, skip tests that switch uid if run in a container that is
  unable to do so, instead of failing (dbus#407, Simon McVittie)

• Use the latest MSYS2 packages for CI
  (Ralf Habacker, Simon McVittie)

License-Update: D-Bus changed to dbus.

(From OE-Core rev: fbf8ea03aeb04e1efdc9693a66d618275bddc172)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 8c2ab4c014807e2d8ad0fded4188578aa05e8c55)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-15 11:05:19 +00:00
Xiangyu Chen
b68e0d3e63 grub2: backport patch to fix CVE-2022-2601 CVE-2022-3775
Backport patch from upstream to solve CVE-2022-2601 CVE-2022-3775 dependency:
font: Fix size overflow in grub_font_get_glyph_internal()
(https://git.savannah.gnu.org/cgit/grub.git/commit/?id=9c76ec09ae08155df27cd237eaea150b4f02f532)

Backport patch from upstream to fix following CVEs:
CVE-2022-2601: font: Fix several integer overflows in grub_font_construct_glyph()
(https://git.savannah.gnu.org/cgit/grub.git/commit/?id=768e1ef2fc159f6e14e7246e4be09363708ac39e)
CVE-2022-3775: font: Fix an integer underflow in blit_comb()
(https://git.savannah.gnu.org/cgit/grub.git/commit/?id=992c06191babc1e109caf40d6a07ec6fdef427af)

(From OE-Core rev: 683c4b327f64add72bef7317b65e7105c55c6e49)

Signed-off-by: Xiangyu Chen <xiangyu.chen@windriver.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Liwei Song <liwei.song@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit fa5a42150098be892246146456faed778e28ef94)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-15 11:05:19 +00:00
Richard Purdie
74c92e38c7 build-appliance-image: Update to langdale head revision
(From OE-Core rev: 670f4f103b25897524d115c1f290ecae441fe4bd)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-06 17:42:15 +00:00
Steve Sakoman
f81ebe8fb1 poky.conf: bump version for 4.1.2
(From meta-yocto rev: c7f82c7604c3af32635b8330f3edd4508e576fb3)

Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-06 17:41:20 +00:00
Quentin Schulz
85bcf0fefa docs: migration-4.0: specify variable name change for kernel inclusion in image recipe
Since commit f6d963fa6d ("kernel: make kernel-base recommend
kernel-image, not depend"), present in Kirkstone 4.0, one should
set RRECOMMENDS and not RDEPENDS to avoid including the kernel in the
image, so let's update the documentation to reflect that.

Reported-by: Konstantin Kletschke <konstantin.kletschke@inside-m2m.de>
Cc: Quentin Schulz <foss+yocto@0leil.net>
(From yocto-docs rev: 30f5f9ece260fd600f0c0fa32fc2f1fc61cf7d1b)

Signed-off-by: Quentin Schulz <quentin.schulz@theobroma-systems.com>
Reviewed-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-06 17:33:47 +00:00
Quentin Schulz
6798b28dc1 docs: kernel-dev: faq: update tip on how to not include kernel in image
Since commit f6d963fa6d ("kernel: make kernel-base recommend
kernel-image, not depend"), present in Kirkstone 4.0, one should
set RRECOMMENDS and not RDEPENDS to avoid including the kernel in the
image, so let's update the documentation to reflect that.

Reported-by: Konstantin Kletschke <konstantin.kletschke@inside-m2m.de>
Cc: Quentin Schulz <foss+yocto@0leil.net>
(From yocto-docs rev: 9074baa42b2f616259fe03b5b848508b33b565fc)

Signed-off-by: Quentin Schulz <quentin.schulz@theobroma-systems.com>
Reviewed-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-06 17:33:47 +00:00
Michael Opdenacker
e86bce28fb manuals: add 4.0.5 and 4.0.6 release notes
(From yocto-docs rev: 1d2f0c195a0a070f1ca92227c771e7ac708d44d5)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-06 17:33:47 +00:00
Richard Purdie
b57d48f7cb oeqa/concurrencytest: Add number of failures to summary output
When running oe-selftest and seeing the end of a running log, it is
extremely helpful to know if there have been failures or not to save
looking at the rest of the log. Add the number of failures to the summary
line so that people monitoring builds have an easier time before the end
totals are printed.

(From OE-Core rev: 80ac9e2eddd4b8b87c2978b3238ac16db2c55e43)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 6b23996911d91f7f99774646c6db9f3490b4cb62)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-06 17:33:19 +00:00
Randy MacLeod
f1d73f038d valgrind: skip the boost_thread test on arm
This test is failing on the arm workers only so skip there until the issue
can be worked on and resolved. The bug #14311 will remain open for tracking.

(From OE-Core rev: 69a99411a286e4ba40fb68d6308d996b6af6608b)

Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit d98deec9e4aed9e05343d2758f3a3892e2044616)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-06 17:33:19 +00:00
Jagadeesh Krishnanjanappa
53c5d0b724 qemuboot.bbclass: make sure runqemu boots bundled initramfs kernel image
The QB_DEFAULT_KERNEL is set to pick bundled initramfs kernel image
if the Linux kernel image is generated with INITRAMFS_IMAGE_BUNDLE="1".

This makes runqemu to automatically pick bundled initramfs kernel image
instead of explicitly mentioning bundled initramfs kernel image in
runqemu.

[YOCTO #14748]

(From OE-Core rev: a18f7074434d2c0db5f02451291f978e95fd6482)

Signed-off-by: Jagadeesh Krishnanjanappa <workjagadeesh@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 52371624313184e1a825519160c3833e282df8b9)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-06 17:33:19 +00:00
Martin Jansa
986ab73cdc libxml2: fix test data checksums
* switch from tar.gz to tar, because the tar.gz archives upstream are regular tar as well now
  https://www.w3.org/XML/Test/ still has 3 separate URLs for .zip, .tar
  and .tar.gz, but both tar links return the same file:

  xmlts20080827.tar:      POSIX tar archive (GNU)
  xmlts20080827.tar.gz:   POSIX tar archive (GNU)

  -rw-r--r--  1 martin martin 5.7M Sep  1  2008 xmlts20080827.tar
  -rw-r--r--  1 martin martin 5.7M Sep  1  2008 xmlts20080827.tar.gz

  9b2c865aba66c6429ca301a7ef048d7eca2cdb7a9106184416710853c7b37d0d  xmlts20080827.tar
  9b2c865aba66c6429ca301a7ef048d7eca2cdb7a9106184416710853c7b37d0d  xmlts20080827.tar.gz
  96151685cec997e1f9f3387e3626d61e6284d4d6e66e0e440c209286c03e9cc7  /OE/build/downloads/xmlts20080827.tar.gz

(From OE-Core rev: 21dc18f24d7124796555372fcb4aca7280690ef0)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-06 17:33:19 +00:00
Marek Vasut
709cf27ef7 systemd: Make importd depend on glib-2.0 again
It seems importd still requires glib-2.0, add the missing dependency.

(From OE-Core rev: c54595fc7ee52ca2e5cd63ad30d397bbf64d7df9)

Signed-off-by: Marek Vasut <marex@denx.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 224cd8ca540a2c9d7d407a44dccd63f808c1ea15)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-06 17:33:19 +00:00
Alexander Kanavin
fcf9a6169f devtool/upgrade: correctly handle recipes where S is a subdir of upstream tree
'devtool modify' writes additional settings to workspace .bbappend so that this
can be handled correctly, but 'devtool upgrade' does not. This adds the missing
settings.

In particular, local files should not anymore mysteriously disappear from
SRC_URIs on upgrades.

(From OE-Core rev: 31a778f1a6a77ee9b44b3fd995046bf6dd0af835)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 0817aa5537a8d7cc9591c53dfaa1d225f4c327f7)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-06 17:33:19 +00:00
Ranjitsinh Rathod
60dc8a1298 curl: Correct LICENSE from MIT-open-group to curl
LICENSE for curl is set to MIT-open-group which is wrong and proper
license is 'curl'

I check below link and the line "Curl and libcurl are licensed under
the license below, which is inspired by MIT/X, but not identical." says
that the license is identical to MIT but actual license is identical
from the file "meta/files/common-licenses/curl"
Link: https://curl.se/docs/copyright.html

Also, I do not find the MIT-open-group license text in the entire
source-code

(From OE-Core rev: 34b228bd3a80a74bf4d84ef7ee362f4ab1e3a466)

(From OE-Core rev: ed1b94340af0676ccaf6545d0a3726a6a2e804d7)

Signed-off-by: Ranjitsinh Rathod <ranjitsinh.rathod@kpit.com>
Signed-off-by: Ranjitsinh Rathod <ranjitsinhrathod1991@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 4a246e06cb)
Signed-off-by: Ranjitsinh Rathod <ranjitsinhrathod1991@gmail.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-06 17:33:19 +00:00
Ross Burton
de18933104 libepoxy: remove upstreamed patch
This patch was upstreamed in 6b09a8bc, 1.5.5 onwards.

(From OE-Core rev: 2eb1012ca7d5312390291e8c12d84a29b34468c9)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 99b6e1ecb18d595e7b66344de882c1e1db6f35c3)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-06 17:33:19 +00:00
Robert Andersson
3b2053d8d6 go-crosssdk: avoid host contamination by GOCACHE
By default GOCACHE is set to $HOME/.cache.

Same issue for all other go recipes had been fixed by commit 9a6d208b:
[ go: avoid host contamination by GOCACHE ]

but that commit missed go-crosssdk recipe.

(From OE-Core rev: 9209ef2035d7016c37c711c7c35fa48189ab1308)

Signed-off-by: Robert Andersson <robert.m.andersson@atlascopco.com>
Signed-off-by: Ming Liu <liu.ming50@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit e5fd10c647ac4baad65f9efa964c3380aad7dd10)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-06 17:33:19 +00:00
Alejandro Hernandez Samaniego
c0315973cd baremetal-image: Avoid overriding qemu variables from IMAGE_CLASSES
Since qemuboot is part of IMAGE_CLASSES via qemu.inc it is being
inherited before we set the QB_FOO variables.
Since our variables have conditional definitions and at that point
they've already been defined by qemuboot, we can no longer define
them in our class.

Move the IMAGE_CLASSES inherit to execute it after we set the
QB_FOO variables to fix booting via runqemu.

(From OE-Core rev: 955e22089a6f15174c79b74627ffe0b235336273)

Signed-off-by: Alejandro Enedino Hernandez Samaniego <alejandro@enedino.org>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 8ed78ec262b2502dc3b673b24a868a3eec616a20)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-06 17:33:19 +00:00
Xiangyu Chen
19bfa842c2 openssh: remove RRECOMMENDS to rng-tools for sshd package
It appears that rngd is not needed as of linux-5.6 and later[1]
and should not be installed by default since the purpose of rngd
is to provide additional trusted sources of entropy.

We did some testing on real hardware, the result seems to support that
we no longer need rngd by default on kernel v5.6 and later.

Testing result as below:

1. observing the crng init stage.
 the "random: crng init done" always available before fs being mounted.

2. generating random number without rngd.
 testing command: dd if=/dev/random of=/dev/null status=progress
   on Marvell CN96xx RDB board, speed almost 20.4 MB/s without block
   on NXP i.mx6q board, speed almost 31.9 MB/s without block
   on qemu x86-64, speed almost 2.6MB/s without block

3. using rngtest command without rngd
 testing command: rngtest -c 1000 </dev/random
   on Marvell CN96xx RDB board:
      rngtest: input channel speed: (min=4.340; avg=135.364; max=146.719)Mibits/s
      rngtest: FIPS tests speed: (min=8.197; avg=69.020; max=72.800)Mibits/s
      rngtest: Program run time: 418771 microseconds

   on NXP i.mx6q board:
      rngtest: input channel speed: (min=96.820; avg=326.769; max=340.598)Mibits/s
      rngtest: FIPS tests speed: (min=15.090; avg=37.543; max=40.324)Mibits/s
      rngtest: Program run time: 570229 microseconds

   on qemu x86-64:
      rngtest: input channel speed: (min=37.769; avg=101.136; max=136.239)Mibits/s
      rngtest: FIPS tests speed: (min=10.288; avg=30.682; max=40.155)Mibits/s
      rngtest: Program run time: 836800 microseconds

4. observing sshd service.
  using "systemctl disable rng-tools" disable service and reboot system.
  system boot up normal, sshd service also start in normal time without
  block.

Reference:
[1] 30c08efec8

(From OE-Core rev: ab80098b6a648b3f2fe7578f1ee028c1aa2b33f9)

Signed-off-by: Xiangyu Chen <xiangyu.chen@windriver.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 868dfb46d96a27ec9041cb902fb769330277257d)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-06 17:33:19 +00:00
Wang Mingyu
8d8d61e828 gstreamer1.0: upgrade 1.20.4 -> 1.20.5
Changelog:
===========
systemclock waiting fixes for certain 32-bit platforms/libcs
alphacombine: robustness improvements for corner case scenarios
avfvideosrc: Report latency when doing screen capture
d3d11videosink: various thread-safety and stability fixes
decklink: fix performance issue when HDMI signal has been lost for a long time
flacparse: Fix handling of headers advertising 32 bits per sample
mpegts: Handle when iconv doesn't support ISO 6937 (e.g. musl libc)
opengl: fix automatic dispmanx detection for rpi4 and fix usage of eglCreate/DestroyImage
opusdec: Various channel-related fixes
textrender: event handling fixes, esp. for GAP event
subparse: Fix non-closed tag handling
videoscale: fix handling of unknown buffer metas
videosink: reverse playback handling fixes
qtmux: Prefill mode fixes, especially for raw audio
multiudpsink: allow binding to IPv6 address
rtspsrc: Fix usage of IPv6 connections in SETUP
rtspsrc: Only EOS on timeout if all streams are timed out/EOS
splitmuxsrc: fix playback stall if there are unlinked pads
v4l2: Fix SIGSEGV on state change during format changes
wavparse robustness fixes
Fix static linking on macOS (opengl, vulkan)
gstreamer-vaapi: fix headless build against mesa >= 22.3.0
GStreamer Editing Services library: Fix build with tools disabled
webrtc example/demo fixes
unit test fixes for aesdec and rtpjitterbuffer
Cerbero: Fix ios cross-compile with cmake on M1; some recipe updates and other build fixes
Binary packages: pkg-config file fixes for various recipes (ffmpeg, taglib, gstreamer)
Binary packages: Enable high bitdepth support for libvpx (VP8/VP9 encoding/decoding)
Binary packages: ship aes plugin
Miscellaneous bug fixes, memory leak fixes, and other stability and reliability improvements
Performance improvements

(From OE-Core rev: de5bc45e799fc8024fd7c9fa1e752799c2f6c172)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit fd8ab6052d88120c58cf84ad7d77d60c12ef3b8a)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-06 17:33:19 +00:00
Wang Mingyu
6df51b9544 help2man: upgrade 1.49.2 -> 1.49.3
Changelog:
==========
  * Cleanup whitespace in po-texi/help2man-texi.pot.
  * Add Korean translation

(From OE-Core rev: 1aae9fd917c3bf54e6fae971ec3e1a1c7c947134)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 6cbe1fa0a3df3496d58788ede4030017edd36a91)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-06 17:33:19 +00:00
Alexander Kanavin
a250a0559b cmake: update 3.24.0 -> 3.24.2
(From OE-Core rev: 1d01a65cd5e043c1f140948f5deccf1de8772dbf)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit ebd026f5fe81728dd7373ce8d532b60eab32326f)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-06 17:33:19 +00:00
Alexander Kanavin
154cc80dad tzdata: update 2022d -> 2022g
(From OE-Core rev: a5b523c68e0c33885ce6ba952936582bdcb958d4)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 2394a481db1b41ad4581e22ba901ac76fa7b3dcd)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-06 17:33:19 +00:00
Alexander Kanavin
7170754c70 ruby: update 3.1.2 -> 3.1.3
This release includes security fixes. Please check the topics below for details.

CVE-2022-28738: Double free in Regexp compilation
CVE-2022-28739: Buffer overrun in String-to-Float conversion

(From OE-Core rev: 025bac703bc9682c67ded480226e6125226d5372)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 402254a5f841520b132508c21465111d33b6eb1a)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-06 17:33:19 +00:00
Alexander Kanavin
06ecf9d92e ruby: merge .inc into .bb
(From OE-Core rev: 171ecaea24d55552bde5cbd72abb55dfe6a7de64)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit d88ff809b2e78ee49d5da42bb08ff5244e6101af)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-06 17:33:19 +00:00
Alexander Kanavin
f0bf2b26f6 libnewt: update 0.52.21 -> 0.52.23
0.52.23
- fix automatic height of menu/list in whiptail (broken in 0.52.22)
- fix automatic width of whiptail --yesno box
- fix automatic width in whiptail with unicode characters
- fix automatic width with whiptail --noitem and --notags options
- fix spacing with longer tags in whiptail
- avoid overlapping backtitle in whiptail with automatic height

0.52.22
- fix crash in whiptail with new libpopt
- switch from usleep to nanosleep (Rosen Penev)
- fix libnewt.pc to enable static linking (Alexey Sheplyakov)
- fix LDFLAGS order in snack linking (Sam James)
- use CFLAGS when compiling snack
- improve configure.ac (Thomas Kuehne)
- install header and libnewt.pc with shared library (Michael Olbrich)

(From OE-Core rev: ba10c1e4ebcd2ac517fd472dee84833815b73f9d)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit ff12622451f1f8580f928c6771cd82daa632071c)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-06 17:33:19 +00:00
Wang Mingyu
3ff6535d14 libpng: upgrade 1.6.38 -> 1.6.39
Changelog:
==========
*  Changed the error handler of oversized chunks (i.e. larger than
   PNG_USER_CHUNK_MALLOC_MAX) from png_chunk_error to png_benign_error.
*  Fixed a buffer overflow error in contrib/tools/pngfix.
*  Fixed a memory leak (CVE-2019-6129) in contrib/tools/pngcp.
*  Disabled the ARM Neon optimizations by default in the CMake file,
   following the default behavior of the configure script.
*  Allowed configure.ac to work with the trunk version of autoconf.
*  Removed the support for "install" targets from the legacy makefiles;
   removed the obsolete makefile.cegcc.
*  Cleaned up the code and updated the internal documentation.

(From OE-Core rev: 53f517d6dd71cf01c828c956b37456dedbd95809)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 19799cb50a00561b318cba1c8c20737f20e4a47f)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-06 17:33:19 +00:00
Alex Stewart
9c4c0898d5 opkg: upgrade to version 0.6.1
Opkg 0.6.1 Changes:
- Opkg will no longer complain when trying to clean up the temporary
  directory, if the directory does not exist.
- Fixed a SEGFAULT when parsing package indexes with invalid `Size` or
  `Installed-Size` fields. These indexes will now produce a
  comprehensible error.
- Fixed an inconsistecy in .list generation where files would sometimes
  be entered with/without a trailing slash. The trailng slash should now
  always be removed.
- Fixed [a bug](https://bugzilla.yoctoproject.org/show_bug.cgi?id=10461)
  in package removal, where empty common directories would be left on
  disk, even after all owning packages were removed.

(From OE-Core rev: e5915dec64272ad35bd406071c92dc0d4bba2071)

Signed-off-by: Alex Stewart <alex.stewart@ni.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 037ff235fa8e369c0eac9f84cb82c9eaffba85f3)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-06 17:33:18 +00:00
pgowda
72c2ccf59e binutils: Add patch to fix CVE-2022-4285
Backport a patch from upstream to address CVE-2022-4285
[https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=5c831a3c7f3ca98d6aba1200353311e1a1f84c70]

(From OE-Core rev: 0679ab3e1317c348255800202dcd8141419d7475)

Signed-off-by: pgowda <pgowda.cve@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit b6b750f8e41a392ff92d9118ef7530ada20d06fe)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-06 17:33:18 +00:00
Quentin Schulz
8827d5888a cairo: update patch for CVE-2019-6461 with upstream solution
Upstream went with something slightly different so let's update the
patch so we don't have to carry a patch that isn't going to be merged.

This patch is part of snapshot 1.17.6.

Cc: Quentin Schulz <foss+yocto@0leil.net>
(From OE-Core rev: 12fb14eb6fbd7c284e081bc177bdba4153aeab86)

Signed-off-by: Quentin Schulz <quentin.schulz@theobroma-systems.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 19eb1e388fbbe5bfb8462710c745f2bb5446b5b5)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-06 17:33:18 +00:00
Pavel Zhukov
9591c2f298 bitbake: gitsm: Fix regression in gitsm submodule path parsing
Commit 0361ecf7eb82c386a9842cf1f3cb706c0a112e77 introduced regression
in submodules path parsing. As the result gitsm fetcher fails on each
submodule which name begins from the name of the parent repo which is
totally valid usecase [Yocto #14045] [1]
Fix the code to error out only if submodule's name is equal to parent
name but not if it's part of it.

[1] https://bugzilla.yoctoproject.org/show_bug.cgi?id=14045#c4

(Bitbake rev: f0f166aee766b4bb1f8cf8b35dfc7d406c75e6a4)

Signed-off-by: Pavel Zhukov <pavel@zhukoff.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 3ad27272c18f2bb9edd441f840167a3dabd5407b)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-06 17:33:18 +00:00
Richard Purdie
b50f718e4c yocto-check-layer: Allow OE-Core to be tested
For unknown reasons we've never seemingly run the check layer script
against OE-Core itself. This isn't entirely straightforward as the core
layer is a bit of a special case, we can't for example compare signatures
against ourselve and we can't remove core from bblayers.conf.

Core does have distro, machine and software components too, in the case
of distro, our fallback default settings. Whilst the qemu machines could
be split into a seperate layer directory, core wouldn't then parse at all
standalone due to the lack of any machine so it seems a bit pointless to
do that.

These changes tweak the script to handle core's special cases, specifically
to allow distro and machine directories and to account for the README placed
a directory level higher than other layers.

(From OE-Core rev: 4efc5ec83bc97e5731284ef3879f89fda4b8ef0b)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit ba312ed228507d05f280aeb96819d671b01400b8)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-23 23:05:57 +00:00
Ross Burton
5cc264f176 combo-layer: add sync-revs command
When starting to use combo-layer, or if someone else is using it too,
the local last_revision may be incorrect.

This command will forcibly update the last_revision config values to the
latest SHA on the remote branch that is tracked.

(From OE-Core rev: 8c681c9e56065fac26088b4d2c7f22c09088a9b5)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 2bb5d12ecd1b0273983f7c05699f34dd64b11c25)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-23 23:05:57 +00:00
Ross Burton
313c607b8f combo-layer: dont use bb.utils.rename
Bitbake may not be configured, and bb isn't imported anyway.

Instead just use os.rename(), and take the filename from the file object
instead of duplicating logic.

(From OE-Core rev: acc824693463a06c77951ce913dbd356e48f711e)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 528f4fb3683d048537604e4562ea758968060d62)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-23 23:05:57 +00:00
Ross Burton
e9d0e02947 combo-layer: remove unused import
(From OE-Core rev: ae6c752a7056b956e83a6ff1c351bdaa1c53a7fd)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit ebfab6c3034d41252d19c6e1a0ba79072aa51146)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-23 23:05:57 +00:00
Peter Marko
9e78b12758 oeqa/selftest/externalsrc: add test for srctree_hash_files
(From OE-Core rev: 3cdcd2ce80daaa4a49471e483bd7863803fa6388)

Signed-off-by: Peter Marko <peter.marko@siemens.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 7b9728e5b8bdf1193c1304ec3beeca4b5bf8d2da)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-23 23:05:57 +00:00
Peter Marko
1db7ae86af externalsrc: fix lookup for .gitmodules
Commit 0533edac27 broke
bitbake parsing when bitbake is executed from directory with existing .gitmodules
and the recipe in externalsrc does not have .gitmodules

The check needs to search for .gitmodules in sources path, not cwd.

iParsing recipes...ERROR: ExpansionError during parsing <path to recipe>
...
bb.data_smart.ExpansionError: Failure expanding variable do_compile[file-checksums], expression was ${@srctree_hash_files(d)} which triggered exception CalledProcessError: Command '['git', 'config', '--file', '.gitmodules', '--get-regexp', 'path']' returned non-zero exit status 1.

(From OE-Core rev: 61153027d56b420303868b5d3be9c5b82920f687)

Signed-off-by: Peter Marko <peter.marko@siemens.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 66ff3d1f65cd2e7f5319e98fa41f47a59b714c72)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-23 23:05:57 +00:00
Ross Burton
4516dca583 lib/buildstats: fix parsing of trees with reduced_proc_pressure directories
The /proc/pressure support in buildstats is creating directories in the
buildstats tree called reduced_proc_pressure, which confuses the parsing
logic as that cannot be parsed as a name-epoc-version-revision tuple.

Explicitly skip this directory to solve the problem.

(From OE-Core rev: a764aa876342724fc3520a3e97389c8678f18681)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 24f0331f0b7e51161b1fa43d4592b491d2037fe9)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-23 23:05:57 +00:00
Ovidiu Panait
4ca06c560e kernel.bbclass: remove empty module directories to prevent QA issues
Currently, allyesconfig test runs for x86_64 fail with:
ERROR: linux-yocto-5.19.17+gitAUTOINC+0cba9aa404_aaf4490d18-r0 do_package:
QA Issue: linux-yocto: Files/directories were installed but not shipped in any
package:
  /lib/modules/5.19.17/kernel/drivers/nvdimm

With CONFIG_NVDIMM_TEST_BUILD=m, an empty nvdimm directory is created during
modules_install, which triggers the QA issue.

Extend kernel_do_install() to also remove inner empty directories that might
get created by modules_install.

(From OE-Core rev: 141a42ba690dc56fb9b52f06d09ed3cef3fe4748)

Signed-off-by: Ovidiu Panait <ovidiu.panait@windriver.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 7120b09a33af4c9a18063c0f2e51fb598697e39c)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-23 23:05:57 +00:00
Chen Qi
3399c194d4 rm_work: adjust dependency to make do_rm_work_all depend on do_rm_work
For now, if we use rm_work and `bitbake core-image-minimal', some
recipes' WORKDIRs are not cleaned up, e.g., makedevs-native.

Adjust the dependency to make do_rm_work_all depend on do_rm_work
to solve this problem.

Below are the detailed explanation of why this would work.

Without this patch, the dependency chain is like:
[other deps] -> [do_rm_work] -+-> [do_build]
                              |
[do_rm_work_all] -------------+

With this patch, the depedency chain is like:
[other deps] -> [do_rm_work] -> [do_rm_work_all] -> [do_build]

Such dependency chain adjustment fixes the issue because do_rm_work_all
now depends on [other deps] and thus the [depends] of these [other deps].
Take core-image-minimal as an example. Before this adjustment,
do_rm_work_all does not have any relationship with do_rootfs, and we have
do_rootfs[depends] += "makedevs-native:do_populate_sysroot ..."
This essentially prevents 'recrdeptask' setting of do_rm_work_all extend
to makedevs-native. With this patch, the do_rm_work_all now depends
on do_rm_work which in turn depends on do_rootfs, and so do_rm_work_all's
recrdeptask could have effect on makedevs-native.

With this patch, all built recipes WORKDIR will be cleaned up with
a few expected exceptions such as kernel and qemu-helper-native.

(From OE-Core rev: 298a74b9d8c1643e7a9b69c64dcad928520680d2)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit b25cc45c9b39f79ba0a03c4556cb2e2431677b4e)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-23 23:05:57 +00:00
Sandeep Gundlupet Raju
21acd8c67f libdrm: Remove libdrm-kms package
libkms library is deprecated in 2.4.111 version. Hence remove
libdrm-kms package.

(From OE-Core rev: 6c4750f27ebed9dafe05f4b542601f76702f3bf0)

Signed-off-by: Sandeep Gundlupet Raju <sandeep.gundlupet-raju@amd.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 3c250b743bce6cc63ff2949deea0adefe82d933c)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-23 23:05:57 +00:00
Richard Purdie
d268f6c998 qemu: Ensure libpng dependency is deterministic
If the host has libpng, because of the way we handle the GL dependency in qemu,
it can cause determinism issues. Add a specific PACKAGECONFIG entry for libpng
to avoid this (and the associated autobuilder/uninative glibc symbol mismatch
failures).

(From OE-Core rev: 6e28ce40fcec1beed2b6662fd131fe66118b7b98)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 34afdd0bf5e2810d440bcd378ba1023159c2b2d0)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-23 23:05:57 +00:00
Alex Stewart
30715ff8c2 lsof: add update-alternatives logic
Some distributions (NI LinuxRT) provide both busybox-lsof and
full-featured lsof implementations. When users install the full-featured
lsof package, the full-binary fails to replace the bbox-binary in PATH,
because `lsof` contains no update-alternatives logic.

Inherit the update-alternatives bbclass and assert that the
full-featured lsof package has higher priority than the busybox
implementation.

Co-Authored-By: Kyle Roeschley <kyle.roeschley@ni.com>
(From OE-Core rev: d2713d7b93401ffb2c6f9f61ad6928ef09aa8702)

Signed-off-by: Alex Stewart <alex.stewart@ni.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit e2893fa692a6e91eee09fc04c8c03fe27c718a58)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-23 23:05:57 +00:00
Carlos Alberto Lopez Perez
091439a825 xwayland: libxshmfence is needed when dri3 is enabled
* The build error happens already at configure time:

| meson.build: ERROR: Problem encountered: DRI3 requested, but xshmfence not found

(From OE-Core rev: 93380be9278d975fa08b7dc516b7ebaee8208119)

Signed-off-by: Carlos Alberto Lopez Perez <clopez@igalia.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 451fe4a067432b432b9cd38d2fc78072f6ce5421)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-23 23:05:57 +00:00
Chen Qi
bb4d242421 bc: extend to nativesdk
bc is needed for compiling kernel modules, more specifially
whenr running `make scripts prepare'.

In linux-yocto.inc, we have bc-native in DEPENDS. But we will
need nativesdk-bc in case we compile a kernel module inside
SDK.

(From OE-Core rev: efecf978380e97f2eb9de6b14fa96ecf4b3f9cb2)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 95b5c89066baccb1e64bfba7d9a66feeeb086da9)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-23 23:05:57 +00:00
Richard Purdie
e22869afef oeqa/selftest/tinfoil: Add test for separate config_data with recipe_parse_file()
We've seen two different regressions in this API since it is used by
layer-index but not be the core code. Add a test for it to try and
ensure we don't break it again.

(From OE-Core rev: 82e2b21f4a91c03203178a4d927c7c7feb930785)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit b07de5de43ec9c9a2c5d496a64940ccdc5b47cf8)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-23 23:05:57 +00:00
Chen Qi
876aca4260 psplash: consider the situation of psplash not exist for systemd
In current psplash framework, the psplash might not exist at all.
For example, in case DSITRO is set to nodistro, the psplash does
not exist.

In our psplash recipe, we have:
SPLASH_IMAGES = "file://psplash-poky-img.h;outsuffix=default"
This variable is parsed to if psplash-poky-img.h exists, a package
named psplash-default is created and is added to RDEPENDS:${PN}.

We can see that the psplash-poky-img.h resides in meta-poky,
and in psplash_git.bbappend file in meta-poky, we have:
FILESEXTRAPATHS:prepend:poky := "${THISDIR}/files:"
So this file is only available in case poky distro is used.

To fix this issue, add condition check in the corresponding systemd
services.

(From OE-Core rev: 91c69c875a2d22898f5d643ad416b7df69cb2f7b)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 7a62ff9ed39c179d2b9b0c40f4f8423ced413063)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-23 23:05:56 +00:00
Alexey Smirnov
b898401d45 classes: make TOOLCHAIN more permissive for kernel
Currently TOOLCHAIN is strictly set to gcc in kernel-arch.bbclass.
And this prevents any TOOLCHAIN changes for any kernel recipe.
This change makes TOOLCHAIN configurable as usual.

(From OE-Core rev: c53d05e95ea3935e2736fbc8ba00786eded57747)

Signed-off-by: Alexey Smirnov <pyih.soft@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit be1634fc35dcc81f0301d942064a6eed584e0704)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-23 23:05:56 +00:00
Alexander Kanavin
b631ceae16 glibc-tests: correctly pull in the actual tests when installing -ptest package
The tests are packaged into the main glibc-tests package which is fine,
but then glibc-tests-ptest package needs to depend on that.
Which is what this commit addresses.

(From OE-Core rev: 6731e8ff3a0c036ebf3680bf86038e88d3450caa)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit d37c2d428b09b9d0cbb875f083c6a1e9883a7fed)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-23 23:05:56 +00:00
Ryan Eatmon
0027d2a2d6 go: Update reproducibility patch to fix panic errors
Based on a discussion on the mailing list [1], there are panic
errors that occur on a few platforms caused by the patch.  We
cannot simply remove the original patch due to the
reproducibility issues that it addresses, so this patch on the
original patch fixes the cause of the panic errors.

The previous version of this patch was a little too aggressive
in cleaning up the environment.  Some of the variables impacted
by the filerCompilerFlags() function require at least one value
to remain in the array.  In this case, the values for ccExe,
cxxExe, and fcExe require a value or later code that access
them result in a panic related to accessing a value out of range.

This updated patch adds a flag that requires keeping the first
value so that at least one thing remains and the assignments
for the Exes set that flag to true.  The first item in the
array should be the executable name, so leaving it should be
safe.

I have run the oe-selftest and everything passed in my setup.

There is a bug report [2] filed for the issue that this patch
addresses.

[YOCTO #14976]

[1] https://lists.openembedded.org/g/openembedded-core/topic/94022663
[2] https://bugzilla.yoctoproject.org/show_bug.cgi?id=14976

(From OE-Core rev: 8d436e2bc71618b13b7cd40e1e24ea8381045037)

Signed-off-by: Ryan Eatmon <reatmon@ti.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 9eaa3a813555dd016a65be63a258f9c0b548a115)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-23 23:05:56 +00:00
Joshua Watt
7195985ad7 scripts: convert-overrides: Allow command-line customizations
Adds argument parsing to the conversion script so that the fields that
the script uses to do conversions can be customized on the command line.
The intention is to allows easier customization without having to fork
the script, and allow automated checking on 3rd party layers via CI
without false positives

(From OE-Core rev: 3e3e787d5501911604b8e194ff99cc0c54f93045)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit b9551f9180bf9f13fb1c480b5b7892fdc831ffcd)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-23 23:05:56 +00:00
Ola x Nilsson
c8c15d14b1 kbd: Don't build tests
Add --disable-tests to EXTRA_OECONF as the tests are not usable in
ptest - they can only run in-situ - and fails to build when building
with -D_TIME_BITS=64 -D_FILE_OFFSET_BITS=64.

(From OE-Core rev: 96dcd95cb04c28e19afbfaefa61b15497e499cff)

Signed-off-by: Ola x Nilsson <olani@axis.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit ec63f507362faacf49edb22b3c472e54e3cc62c5)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-23 23:05:56 +00:00
Harald Seiler
2b7c23e08e opkg: Set correct info_dir and status_file in opkg.conf
Distros can customize the location of OPKG data using OPKGLIBDIR.  In
OE-Core commit 11f1956cf5d7 ("package_manager.py: define info_dir and
status_file when OPKGLIBDIR isn't the default"), a fix was applied to
correctly set the info_dir and status_file options relative to
OPKGLIBDIR.

However, as the commit message notes, the opkg.conf file deployed as
part of the opkg package must also be adjusted to correctly reflect the
changed location.  Otherwise, opkg running inside the image cannot find
its data.

Fix this by also setting the info_dir and status_file options in
opkg.conf to the correct location relative to OPKGLIBDIR.

Fixes: 11f1956cf5d7 ("package_manager.py: define info_dir and status_file when OPKGLIBDIR isn't the default")
(From OE-Core rev: 2c7284c36398078b38271412ec3b2a457c197a5f)

Signed-off-by: Harald Seiler <hws@denx.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit adb939ae3635de6e02208859fbf29cf0ed39f565)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-23 23:05:56 +00:00
Wang Mingyu
6a6951f15a mpfr: upgrade 4.1.0 -> 4.1.1
Changelog:
=========
- Bug fixes (see <https://www.mpfr.org/mpfr-4.1.0/#fixed> and/or the
  ChangeLog file), in particular for macros implementing functions.
- Improved manual formatting.

(From OE-Core rev: 1e65bfb5806c56e6ebb9244a5a71069ae2dbb498)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit f733eddc428cf9537f97cb91025b73dd1fdea932)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-23 23:05:56 +00:00
Wang Mingyu
c3cbb34a8b libxcrypt-compat: upgrade 4.4.30 -> 4.4.33
Changelog:
==========
* Fix -Werror=sign-conversion in lib/alg-yescrypt-platform.c.
  With commit 894aee75433b4dc8d9724b126da6e79fa5f6814b we introduced some
  changes to huge page handling, that show this error when building with
  GCC v12.2.1, and thus need a small fix.

(From OE-Core rev: 760626c0409c4f735a0e00b73161d239c44e9645)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 6918477ad121f9c7335c661433a909e948f66d51)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-23 23:05:56 +00:00
Wang Mingyu
847348eb1c bind: upgrade 9.18.8 -> 9.18.9
Changelog:
===========
  Fix a crash that could happen when you change
  a dnssec-policy zone with NSEC3 to start using
  inline-signing. [GL #3591]

  Don't trust a placeholder KEYDATA from the managed-keys
  zone by adding it into secroots. [GL #2895]

  Fixed a race condition that could cause a crash
  in dns_zone_synckeyzone(). [GL #3617]

  Don't enforce the jemalloc use on NetBSD. [GL #3634]

  Fix an inheritance bug when setting the port on
  remote servers in configuration. [GL #3627]

  Fix a resolver prefetch bug when the record's TTL value
  is equal to the configured prefetch eligibility value,
  but the record was erroneously not treated as eligible
  for prefetching. [GL #3603]

  Always call dns_adb_endudpfetch() after calling
  dns_adb_beginudpfetch() for UDP queries in resolver.c,
  in order to adjust back the quota. [GL #3598]

  Fix a startup issue on Solaris systems with many
  (reportedly > 510) CPUs. Thanks to Stacey Marshall from
  Oracle for deep investigation of the problem. [GL #3563]

  rpz-ip rules could be ineffective in some scenarios
  with CD=1 queries. [GL #3247]

  The RecursClients statistics counter could overflow
  in certain resolution scenarios. [GL #3584]

  Less ceremonial UNEXPECTED_ERROR() and FATAL_ERROR()
  reporting macros. [GL !6914]

  Fix a couple of bugs in cfg_print_duration(), which
  could result in generating incomplete duration values
  when printing the configuration using named-checkconf.
  [GL !6880]

  Refactor the isc_httpd implementation used in the
  statistics channel. [GL !6879]

(From OE-Core rev: eea02875a8dbbd1a33c7f6daa2b267933cd25c8b)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit e57fe26b3f85ebfabdc8b574caa5c97602e4d771)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-23 23:05:56 +00:00
Qiu, Zheng
261e81134a vim: upgrade 9.0.0820 -> 9.0.0947
Includes fixes for CVE-2022-4141
https://nvd.nist.gov/vuln/detail/CVE-2022-4141

For a short list of important changes, see:
https://www.arp242.net/vimlog/

(From OE-Core rev: e6b2f6113232e5c1f38f1885f34061c570790323)

Signed-off-by: Zheng Qiu <zheng.qiu@windriver.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 160f459febc7fb36cc0fe85c63eb26780ace3bfd)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-23 23:05:56 +00:00
Mathieu Dubois-Briand
301d4bb08b dbus: Add missing CVE product name
(From OE-Core rev: 6c51aa51bdeb06b4ac114d5c75d5e2d205af8f17)

Signed-off-by: Mathieu Dubois-Briand <mbriand@witekio.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 67b2db202834f1213bed3580badda2a67655ab7d)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-23 23:05:56 +00:00
Xiangyu Chen
dcae831dca grub: backport patches to fix CVE-2022-28736
(From OE-Core rev: 3de4e7458735d90ac77774bc0ea0f8f306d80fb1)

Signed-off-by: Xiangyu Chen <xiangyu.chen@windriver.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 278e1a0f679be813553b014544314041502a586a)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-23 23:05:56 +00:00
Hitendra Prajapati
fca99f770a libarchive: CVE-2022-36227 NULL pointer dereference in archive_write.c
Upstream-Status: Backport from bff38efe8c

(From OE-Core rev: a6e4e67cf8f2e98cc2cc3f5c66722a35cc0dda46)

Signed-off-by: Hitendra Prajapati <hprajapati@mvista.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-23 23:05:56 +00:00
Ravula Adhitya Siddartha
a3e3b740e1 linux-yocto/5.19: update genericx86* machines to v5.19.14
(From meta-yocto rev: 4188306e550e4dc759118fcc91e5b00dbb44095b)

Signed-off-by: Ravula Adhitya Siddartha <adhityax.siddartha.ravula@intel.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-19 16:47:15 +00:00
Ravula Adhitya Siddartha
1e49a63d12 linux-yocto/5.15: update genericx86* machines to v5.15.72
(From meta-yocto rev: a2b51f25375949f512d6a4126185d0e1739c816b)

Signed-off-by: Ravula Adhitya Siddartha <adhityax.siddartha.ravula@intel.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-19 16:47:15 +00:00
Michael Opdenacker
3ec705d320 Expand cve-check class documentation
Using backported content from the master branch

(From yocto-docs rev: cfd9848fae96a2b047df22d1a8bd4821c3d71cbf)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-07 15:04:17 +00:00
Michael Opdenacker
2c96490a29 Expand create-spdx class documentation
Using backported content from the master branch

(From yocto-docs rev: a02c8e5e1d6548a2db884a8b1430e20178e44d49)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-07 15:04:17 +00:00
Tim Orling
45dd935224 mirrors.bbclass: update CPAN_MIRROR
Both of these redirect to https://cpan.metacpan.org/:
http://cpan.metacpan.org/
http://search.cpan.org/CPAN/

(From OE-Core rev: 5a622a9171da941c705aedc88d487d7158955a8f)

Signed-off-by: Tim Orling <tim.orling@konsulko.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit f1b74fc09f70d52d9ac629b04d81aa94fd97ff40)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-07 15:02:50 +00:00
Chen Qi
aab2e8c37d resolvconf: make it work
The current resolvconf does not work. Make it work with the
following changes.
1. Install normalize-resolvconf, which is used by resolvconf.
2. Add dependencies: sed, util-linux-flock.
   util-linux-flock is needed by our busybox does not support '-w'
   by default. sed is needed because we want to avoid package
   QA issue complaining sed is needed by no one provides it.
3. Add a patch to replace 'readlink -m' with 'readlink -l'.
   This could avoid the runtime dependency on coreutils. The replacement
   is safe as /etc always exits in OE's system.
4. Remove allarch inheritage. This is because the above RDEPENDS
   change does not allow this any more. test_sstate_allarch_samesigs
   would fail if we don't do this.

(From OE-Core rev: aba0164359347e062cf64bcc6bb34ed08c2377b5)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 1b0581fd241cc9de2feda896aefbf055dc0099dc)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-07 15:02:50 +00:00
Chen Qi
bea7e0112c dhcpcd: fix to work with systemd
Currently, dhcpcd does not work well with systemd. When using dhcpcd
to configure network, the /etc/resolv.conf contents are not correct.
This issue could easily be reproduced by using 'qemu + slirp' to
start a systemd based image and using dhcpcd to configure network.
The expected 'nameserver 10.0.2.3' is not in /etc/resolv.conf.

The root cause of this problem is that dhcpcd assumes the resolvconf
should recognize .protocol suffix[1]. But systemd's resolvconf (which
is a symlink to resolvectl) has a limited support for traditional
resolvconf interface[2], and "may not work with all clients"[3]. This
of cource includes the clients that use the .protocol suffix.

The current situation is:
1. systemd is not going to support the .protocol suffix in the foreseeable
   near future[4].
2. dhcpcd does not want to merge systemd specific patch and insists
   systemd needs to consider the .protocol suffix[5][6].

It's a normal thing that people have different opinions. As a build system
that supports such combination, however, we do need to come up with a
solution to fix this typical integration problem, making dhcpcd and systemd
work together.

This patch solves this integration problem by relying on dhcpcd's ability
to manage its own resolv.conf contents. But instead of letting it to write
to /etc/resolv.conf directly, we supply the generated contents to resolvconf.
In this way, the resolvconf still stands in the central place and dhcpcd remains
a supplier to it. And the /etc/resolv.conf can get the correct contents.
With this patch, dhcpcd could work with both sysvinit and systemd.

[1] https://man.archlinux.org/man/resolvconf.8.en
[2] https://man.archlinux.org/man/resolvectl.1#COMPATIBILITY_WITH_RESOLVCONF(8)
[3] https://wiki.archlinux.org/title/systemd-resolved
[4] https://github.com/systemd/systemd/issues/25032
[5] https://github.com/NetworkConfiguration/dhcpcd/pull/152
[6] https://github.com/NetworkConfiguration/dhcpcd/issues/146

(From OE-Core rev: a56579912c5fa9c0d1f1e4fcefdbf75c1d13ab1f)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 935ae419f51d911c73f5dc7b4a2e5e9a7b206985)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-07 15:02:50 +00:00
Enrico Jörns
2ffce31116 sstatesig: emit more helpful error message when not finding sstate manifest
Since oe-core commit 64b89f3c8fc31842256c482a3039d90d3f12c1cc
("sstatesig.py: make it fatal error when sstate manifest isn't found")
errors like:

| Manifest [..]/tmp/sstate-control/manifest-x86_64_x86_64-nativesdk-dbus.populate_sysroot not found in imx8mm_dummy cortexa53-mx8mm cortexa53 armv8a-crc armv8a aarch64 allarch x86_64_x86_64-nativesdk (variant '')?

are fatal now and cannot be ignored but must be debugged.

Unfortunately, the currently emitted error message is a bit imprecise
with telling the reader what has actually gone wrong.

This commit:

* adds the word 'sstate' to the error message to clarify the scope we
  are dealing with ('sstate manifests', since there are other manifests,
  too)
* does not randomly print the last manifest file searched for as THE
  manifest file that could not be found
  Instead, we print the name of the task the sstate was searched for
* adds the word 'multilib' to variant to make clear which variant we are
  talking about
* adds a separate line noting the searched pkgarchs and adds explicitly
  mentions this word ('pkgarchs')
* prints a list of ALL manifest file locations attempted
* removes the '?' at the end of the message since such errors indeed
  leave the question of what is the cause but the error message itself
  is more like a statement.

The result for the exact same issue as noted above then looks as
follows:

| The sstate manifest for task 'dbus:populate_sysroot' (multilib variant '') could not be found.
| The pkgarchs considered were: imx8mm_dummy, cortexa53-mx8mm, cortexa53, armv8a-crc, armv8a, aarch64, allarch, x86_64_x86_64-nativesdk.
| But none of these manifests exists:
|     [..]/tmp/sstate-control/manifest-imx8mm_dummy-dbus.populate_sysroot
|     [..]/tmp/sstate-control/manifest-cortexa53-mx8mm-dbus.populate_sysroot
|     [..]/tmp/sstate-control/manifest-cortexa53-dbus.populate_sysroot
|     [..]/tmp/sstate-control/manifest-armv8a-crc-dbus.populate_sysroot
|     [..]/tmp/sstate-control/manifest-armv8a-dbus.populate_sysroot
|     [..]/tmp/sstate-control/manifest-aarch64-dbus.populate_sysroot
|     [..]/tmp/sstate-control/manifest-allarch-dbus.populate_sysroot
|     [..]/tmp/sstate-control/manifest-x86_64_x86_64-nativesdk-dbus.populate_sysroot

(From OE-Core rev: 18f1a5554063b0cecd206abed6e57f397f7d1346)

Signed-off-by: Enrico Jorns <ejo@pengutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 735ec126ec219c7cb89cb05b0e433201bb7f59eb)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-07 15:02:50 +00:00
Dmitry Baryshkov
9335aa10fc linux-firmware: add new fw file to ${PN}-qcom-adreno-a530
Extend the linux-firmware-qcom-adreno-a530 package with the squashed
Adreno 530 zap shader.

(From OE-Core rev: fd3702355259b0e633c2e96fa65afab32c035e36)

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 920bf119f35824a3531801f5e41158a8ad1bca4c)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-07 15:02:50 +00:00
Dmitry Baryshkov
ffb2727d82 linux-firmware: upgrade 20221012 -> 20221109
License-Update: additional files
(From OE-Core rev: 8706a9a935b758cd90efb476a91a2bfd063503af)

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 6940f297243a66bd58d6adee7d690bcee9b9ccb2)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-07 15:02:50 +00:00
Chen Qi
4a5dfda12e kernel.bbclass: make KERNEL_DEBUG_TIMESTAMPS work at rebuild
Currently, the KERNEL_DEBUG_TIMESTAMPS is not working as expected
at rebuild. That is, even if we set it to "1", the kernel build time
is not changed. The problem could be reproduced by the following steps.
  1. bitbake core-image-minimal; start image and check `uname -a` output.
  2. set in local.conf: KERNEL_DEBUG_TIMESTAMPS = "1"
  3. bitbake core-image-minimal; start image and check `uname -a` output.

It's expected that after enabling KERNEL_DEBUG_TIMESTAMPS, the kernel
build time will be set to current date. But it's not. This is because
the compile.h was not re-generated when do_compile task was re-executed.

In mkcompile_h, we have:
"""
 # Only replace the real compile.h if the new one is different,
 # in order to preserve the timestamp and avoid unnecessary
 # recompilations.
 # We don't consider the file changed if only the date/time changed,
 # unless KBUILD_BUILD_TIMESTAMP was explicitly set (e.g. for
 # reproducible builds with that value referring to a commit timestamp).
 # A kernel config change will increase the generation number, thus
 # causing compile.h to be updated (including date/time) due to the
 # changed comment in the
 # first line.
"""
It has made it very clear that it will not be re-generated unless
we have KBUILD_BUILD_TIMESTAMP set explicitly. So we set this variable
explicitly in do_compile to fix this issue.

(From OE-Core rev: 5e508a8060c7397b5f9630fc62797dd091f99c6e)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 1b68c2d2d385013a1c535ef81172494302a36d74)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-07 15:02:50 +00:00
Bruce Ashfield
f7dd072905 kern-tools: integrate ZFS speedup patch
Bumping the SRCREV to integrat the following kern-tools change:

   commit 2d01f24bc78256c709728eb3f204491bce13e0e5
   Author: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
   Date:   Fri Nov 4 23:32:38 2022 +0000

       kconf_check: store some files in tmpdir

       Some file systems, like ZFS, are very slow at appending to existing
       files. Due to Copy-On-Write nature, they create a new copy of a file
       each time we do ">>" in a shell script. This becomes very noticeable
       if shell script does lots and lots of appends, like sanitize_fragment()
       function in kconf_check. On my setup, do_kernel_configcheck task takes
       literally hours to complete.

       To fix this issue, we can store sanitized_list and fragment_errors.txt
       files on tmpfs, which is extremely fast at writing. As most distros
       use tmpfs for /tmp, logical step is to use `mktemp` to create
       temporary files.

       After completing writing to temporary locations, we can move those two
       files back to ${LOGDIR}.

       Also, function 'cleanup' was added to remove temporary files in case
       of abnormal exit.

       With this patch, do_kernel_configcheck task completes in ~2 minutes on
       my setup, which is a great improvement.

       Signed-off-by: Volodymyr Babchuk <volodymyr_babchuk@epam.com>

(From OE-Core rev: 141d71c2cf8548900586893178b9097cd723ba57)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 9d50e2606eb66019044ee176f355a84a65a1499c)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-07 15:02:50 +00:00
Bruce Ashfield
2d193adf89 linux-yocto/5.19: fix elfutils run-backtrace-native-core ptest failure
The following commit was integrated into the 5.19.15 -stable series and
breaks the elfutils backtrace ptests.

 don't use __kernel_write() on kmap_local_page()

It could be that other commits are also required in -stable, but a
revert is the easiest way to deal with the regression. We can revisit
newer kernel's (where the commit is also present) if they also start
to fail the test.

(From OE-Core rev: 52e2d574626075e2890021f1ede127c5eabd92b7)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit e137ca045d21476394b12725447affe4c99b8e03)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-07 15:02:50 +00:00
Bruce Ashfield
037ea95f37 linux-yocto/5.19: fix CONFIG_CRYPTO_CCM mismatch warnings
Integrating the following commit(s) to linux-yocto/.:

    0cba9aa4044 qat: fix CONFIG_CRYPTO_CCM mismatch warnings

(From OE-Core rev: bb44f79c4025b16ab054c186546d956c608a8aad)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit a2e40db0d957bc8b7e77e5f54e6646bb633ef42f)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-07 15:02:50 +00:00
Bruce Ashfield
3cb63d64f5 linux-yocto/5.19: security.cfg: remove configs which have been dropped
Integrating the following commit(s) to linux-yocto/.:

    5e122351f62 security.cfg: remove configs which have been dropped

(From OE-Core rev: 8f99d5d110d2f014f5d713cf4684b33c6e68a451)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 415a73daee7152bd67cd99625093bc72d9be73c4)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-07 15:02:50 +00:00
Bruce Ashfield
e727de0359 linux-yocto/5.19: cfg: intel and vesa updates
Integrating the following commit(s) to linux-yocto/.:

    399055aee2f vesafb.cfg: rename FB_BOOT_VESA_SUPPORT -> BOOT_VESA_SUPPORT
    fe0fe0945fb media-radio.cfg: switch RADIO_ADAPTERS from y to m
    9724cfa270c bsp/common-pc-64 : add igc driver
    39431755e59 bsp/intel-common: add igc driver for meta-intel bsp machines

(From OE-Core rev: e0b898e0e058f584c39f24a0ecb342624f55a51d)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 47b3c8b07322c69b6070fee4803d3beee66f9a67)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-07 15:02:50 +00:00
Bruce Ashfield
0357d4635c linux-yocto/5.19: update to v5.19.17
Updating  to the latest korg -stable release that comprises
the following commits:

    2b525314c7b5 Linux 5.19.17
    65ea3311ce7c drm/i915/bios: Use hardcoded fp_timing size for generating LFP data pointers
    a34bc0ff223f drm/i915/bios: Validate fp_timing terminator presence
    6ba258c8082f drm/i915: Rename block_size()/block_offset()
    25151f50686e ext4: continue to expand file system when the target size doesn't reach
    5d671a666c69 HID: uclogic: Add missing suffix for digitalizers
    8b922cab735b lib/Kconfig.debug: Add check for non-constant .{s,u}leb128 support to DWARF5
    a2f91e15ceaf Kconfig.debug: add toolchain checks for DEBUG_INFO_DWARF_TOOLCHAIN_DEFAULT
    01d15d7f3bb1 Kconfig.debug: simplify the dependency of DEBUG_INFO_DWARF4/5
    6cfc3d5b06fe kbuild: Add skip_encoding_btf_enum64 option to pahole
    d8861de1c35b drm/amd/display: Fix build breakage with CONFIG_DEBUG_FS=n
    43f49952df6a powerpc/64s/interrupt: Fix lost interrupts when returning to soft-masked context
    df0da3fc1311 net/ieee802154: don't warn zero-sized raw_sendmsg()
    7b5a94b4dccd Revert "net/ieee802154: reject zero-sized raw_sendmsg()"
    a2852ff5df30 Revert "drm/amd/display: correct hostvm flag"
    72fedefeaaee net: ethernet: ti: davinci_mdio: fix build for mdio bitbang uses
    7a5dc0f4bc45 blk-wbt: fix that 'rwb->wc' is always set to 1 in wbt_init()
    9d4f4dc3cd38 ALSA: usb-audio: Fix last interface check for registration
    0ad680a71ef6 net: ieee802154: return -EINVAL for unknown addr type
    dd691973f67b mm: hugetlb: fix UAF in hugetlb_handle_userfault
    bd3183508842 perf intel-pt: Fix system_wide dummy event for hybrid
    41e4f3b62546 perf intel-pt: Fix segfault in intel_pt_print_info() with uClibc
    18e98d56fdf8 perf: Skip and warn on unknown format 'configN' attrs
    d53d82a9c515 clk: bcm2835: Round UART input clock up
    4fc3d834cad9 clk: bcm2835: Make peripheral PLLC critical
    72b67ce35bcc usb: typec: ucsi: Don't warn on probe deferral
    1d5ad0a874dd fsi: occ: Prevent use after free
    fbcf76240a30 hwmon (occ): Retry for checksum failure
    63a681bcc32a blk-mq: use quiesced elevator switch when reinitializing queues
    6163a5ae097b usb: idmouse: fix an uninit-value in idmouse_open
    fcf82e4553db nvmet-tcp: add bounds check on Transfer Tag
    1ce3c83795b7 nvme: copy firmware_rev on each init
    24e2357041c8 nvme: handle effects after freeing the request
    18c37236b0b0 ext2: Use kvmalloc() for group descriptor array
    2ad8143884b9 scsi: tracing: Fix compile error in trace_array calls when TRACING is disabled
    a5be64ff6d21 staging: rtl8723bs: fix a potential memory leak in rtw_init_cmd_priv()
    6b2052b365f8 staging: rtl8723bs: fix potential memory leak in rtw_init_drv_sw()
    65bb21134ffc Revert "usb: storage: Add quirk for Samsung Fit flash"
    a5ec6978e657 usb: dwc3: core: Enable GUCTL1 bit 10 for fixing termination error after resume bug
    dd4d06dc5c12 arm64: dts: imx8mp: Add snps,gfladj-refclk-lpm-sel quirk to USB nodes
    6289a58d4f19 usb: dwc3: core: add gfladj_refclk_lpm_sel quirk
    a9ccd2ab1bec usb: musb: Fix musb_gadget.c rxstate overflow bug
    a40ad4752360 usb: host: xhci: Fix potential memory leak in xhci_alloc_stream_info()
    2cab058f2b14 md/raid5: Wait for MD_SB_CHANGE_PENDING in raid5d
    6a0781b8a46d eventfd: guard wake_up in eventfd fs calls as well
    f3ae6aac9e0e HID: nintendo: check analog user calibration for plausibility
    78b0ef14896f HSI: ssi_protocol: fix potential resource leak in ssip_pn_open()
    2d38886ae036 HID: roccat: Fix use-after-free in roccat_read()
    24ba97974ef3 soundwire: intel: fix error handling on dai registration issues
    d4188d2e2842 soundwire: cadence: Don't overwrite msg->buf during write commands
    864934cbe72c bcache: fix set_at_max_writeback_rate() for multiple attached devices
    e225ca58f63a ata: libahci_platform: Sanity check the DT child nodes number
    cc6f0855bf8d blk-throttle: prevent overflow while calculating wait time
    fb5f569bcda8 staging: vt6655: fix potential memory leak
    038e4aa71281 power: supply: adp5061: fix out-of-bounds read in adp5061_get_chg_type()
    b737f60538ab usb: gadget: uvc: increase worker prio to WQ_HIGHPRI
    78e83cfc64b5 iommu/arm-smmu-v3: Make default domain type of HiSilicon PTT device to identity
    62006a72b05e nbd: Fix hung when signal interrupts nbd_start_device_ioctl()
    53b6d7e49998 scsi: 3w-9xxx: Avoid disabling device if failing to enable it
    e0b16bfbd3a4 dmaengine: ti: k3-udma: Reset UDMA_CHAN_RT byte counters to prevent overflow
    04e7cd8c8563 scsi: lpfc: Fix null ndlp ptr dereference in abnormal exit path for GFT_ID
    1f7181ce5891 usb: host: xhci-plat: suspend/resume clks for brcm
    e2df82b8e742 usb: host: xhci-plat: suspend and resume clocks
    72dbdd00fb2a RDMA/rxe: Delete error messages triggered by incoming Read requests
    f2cf53ed2ce2 clk: zynqmp: pll: rectify rate rounding in zynqmp_pll_round_rate
    fb98ebac0169 media: platform: fix some double free in meson-ge2d and mtk-jpeg and s5p-mfc
    704838040f3b media: cx88: Fix a null-ptr-deref bug in buffer_prepare()
    d66fea97671f clk: zynqmp: Fix stack-out-of-bounds in strncpy`
    5f11e22d1d5a ARM: 9242/1: kasan: Only map modules if CONFIG_KASAN_VMALLOC=n
    0d10683a2cd3 ARM: 9234/1: stacktrace: Avoid duplicate saving of exception PC value
    91bcc794c72e ARM: 9233/1: stacktrace: Skip frame pointer boundary check for call_with_stack()
    819a61301275 btrfs: call __btrfs_remove_free_space_cache_locked on cache load failure
    42817b55ea97 btrfs: don't print information about space cache or tree every remount
    a5658aac9fbb btrfs: scrub: try to fix super block errors
    1d520f11f5f4 btrfs: scrub: properly report super block errors in system log
    8e0798d8fc25 btrfs: dump extra info if one free space cache has more bitmaps than it should
    dd0368cc7dd7 arm64: dts: imx8mq-librem5: Add bq25895 as max17055's power supply
    aa7dbed46a13 arm64: dts: imx8mm-kontron: Use the VSELECT signal to switch SD card IO voltage
    f7205229eed2 kselftest/arm64: Fix validatation termination record after EXTRA_CONTEXT
    010d3fd16a07 ARM: dts: imx6sx-udoo-neo: don't use multiple blank lines
    a78bbaa94455 ARM: dts: imx6sl: use tabs for code indent
    e68c078e2f4b ARM: dts: imx6sx: add missing properties for sram
    91e4ed75545b ARM: dts: imx6sll: add missing properties for sram
    295a1403c79c ARM: dts: imx6sl: add missing properties for sram
    37b648d675c9 ARM: dts: imx6qp: add missing properties for sram
    a6cbafacd5a4 ARM: dts: imx6dl: add missing properties for sram
    008b63067257 ARM: dts: imx6q: add missing properties for sram
    8dc0c1860e38 ARM: dts: imx7d-sdb: config the max pressure for tsc2046
    9fb0373188af ARM: dts: imx6: delete interrupts property if interrupts-extended is set
    5861c094874d drm/amdkfd: Fix UBSAN shift-out-of-bounds warning
    7e8d44956459 drm/amd/display: polling vid stream status in hpo dp blank
    68a6337c14ab drm/amd/display: Remove interface for periodic interrupt 1
    fc211b16a558 drm/dp: Don't rewrite link config when setting phy test pattern
    de2b6ebe0cb7 drm/meson: remove drm bridges at aggregate driver unbind time
    f11aa996fc01 drm/meson: explicitly remove aggregate driver at module unload time
    9190d287f7a6 drm/meson: reorder driver deinit sequence to fix use-after-free bug
    fc273ad2e3f5 drm/amdgpu: fix initial connector audio value
    50f9f5d15eae drm/amd/display: correct hostvm flag
    b892c57a3a04 drm/amdgpu: SDMA update use unlocked iterator
    9a0b26c494d3 ASoC: SOF: add quirk to override topology mclk_id
    6a4c1ca1f3fb ASoC: SOF: pci: Change DMI match info to support all Chrome platforms
    3c72d295e79e ALSA: intel-dspconfig: add ES8336 support for AlderLake-PS
    6c28e90c8fd0 platform/x86: msi-laptop: Change DMI match / alias strings to fix module autoloading
    14992b9f184b platform/x86: hp-wmi: Setting thermal profile fails with 0x06
    c1f00121bf31 platform/chrome: cros_ec: Notify the PM of wake events during resume
    a4b478254264 drm: panel-orientation-quirks: Add quirk for Aya Neo Air
    d52193da78bd drm: panel-orientation-quirks: Add quirk for Anbernic Win600
    a7f778799d49 drm/vc4: vec: Fix timings for VEC modes
    0f1bddc91d55 ALSA: usb-audio: Register card at the last interface
    3f2cfb29dceb drm/admgpu: Skip CG/PG on SOC21 under SRIOV VF
    3509d768e206 drm/amdgpu: Skip the program of MMMC_VM_AGP_* in SRIOV on MMHUB v3_0_0
    3e3be30aa035 drm: bridge: dw_hdmi: only trigger hotplug event on link change
    c6b6279bfdc5 platform/x86: pmc_atom: Improve quirk message to be less cryptic
    fc285549f454 udmabuf: Set ubuf->sg = NULL if the creation of sg table fails
    1533340aa907 drm/amd/display: fix overflow on MIN_I64 definition
    b2e4323e0020 gpu: lontium-lt9611: Fix NULL pointer dereference in lt9611_connector_init()
    e71fe9b97fae drm/komeda: Fix handling of atomic commits in the atomic_commit_tail hook
    2d6708ea5c20 drm: Prevent drm_copy_field() to attempt copying a NULL pointer
    7ab28b8e182e drm: Use size_t type for len variable in drm_copy_field()
    38ba098ef1b6 drm/nouveau/nouveau_bo: fix potential memory leak in nouveau_bo_alloc()
    2e896abccf99 r8152: Rate limit overflow messages
    2a75f83ba81c i2c: designware-pci: Group AMD NAVI quirk parts together
    6ffde6e03085 Bluetooth: L2CAP: Fix user-after-free
    44bd0d19c580 bpf: use bpf_prog_pack for bpf_dispatcher
    d72bc08770fa bpf: Adjust kprobe_multi entry_ip for CONFIG_X86_KERNEL_IBT
    35f5e70bdfa7 net: If sock is dead don't access sock's sk_wq in sk_stream_wait_memory
    19fced8ecda1 hwmon: (sht4x) do not overflow clamping operation on 32-bit platforms
    68ff5178d965 wifi: rt2x00: correctly set BBP register 86 for MT7620
    784881e9e7be wifi: rt2x00: set SoC wmac clock register
    227e5eb1bb5a wifi: rt2x00: set VGC gain for both chains of MT7620
    0202c5803d64 wifi: rt2x00: set correct TX_SW_CFG1 MAC register for MT7620
    36576de88fbe wifi: rt2x00: don't run Rt5592 IQ calibration on MT7620
    a9fc0a42ccbf can: bcm: check the result of can_send() in bcm_can_tx()
    eb0a9375bbd8 selftests/bpf: Free the allocated resources after test case succeeds
    c72dad9a1d37 bnxt_en: replace reset with config timestamps
    ef055094df4c Bluetooth: hci_sysfs: Fix attempting to call device_add multiple times
    e812142450e0 Bluetooth: L2CAP: initialize delayed works at l2cap_chan_create()
    26bdfc875559 wifi: rtw89: fix rx filter after scan
    d4b4f6ff8ff1 wifi: rtw89: free unused skb to prevent memory leak
    b32b0cd0eddb wifi: mt76: mt7921: reset msta->airtime_ac while clearing up hw value
    72ef896e80b6 wifi: ath11k: mhi: fix potential memory leak in ath11k_mhi_register()
    9f2395316e48 regulator: core: Prevent integer underflow
    52b43d6402bc Bluetooth: btintel: Mark Intel controller to support LE_STATES quirk
    27574a3f421c wifi: brcmfmac: fix use-after-free bug in brcmf_netdev_start_xmit()
    47c838195c7d iavf: Fix race between iavf_close and iavf_reset_task
    8a648bb49115 rtw89: ser: leave lps with mutex
    56d96f8f9bbd wifi: ath11k: Register shutdown handler for WCN6750
    f3bdba4440d8 xfrm: Update ipcomp_scratches with NULL when freed
    a948da5aba02 net-next: Fix IP_UNICAST_IF option behavior for connected sockets
    7d1e5f5ee93d net: axienet: Switch to 64-bit RX/TX statistics
    05785ba834f2 x86/apic: Don't disable x2APIC if locked
    650fa7d1af15 thunderbolt: Add back Intel Falcon Ridge end-to-end flow control workaround
    0d2649b288b7 wifi: ath9k: avoid uninit memory read in ath9k_htc_rx_msg()
    a9c5c9ce7e58 x86/mce: Retrieve poison range from hardware
    6762c85aaee4 tcp: annotate data-race around tcp_md5sig_pool_populated
    77939e5bcc50 openvswitch: Fix overreporting of drops in dropwatch
    b3fa7d5d5eaa openvswitch: Fix double reporting of drops in dropwatch
    bc3e22550bbb net: ethernet: ti: davinci_mdio: Add workaround for errata i2329
    13180cb88a7b ice: set tx_tstamps when creating new Tx rings via ethtool
    8735e5c122b6 bpftool: Clear errno after libcap's checks
    4d4dcfa6b4e8 wifi: brcmfmac: fix invalid address access when enabling SCAN log level
    e7863058e529 wifi: ath10k: Set tx credit to one for WCN3990 snoc based devices
    6ea71246b7a0 NFSD: fix use-after-free on source server when doing inter-server copy
    14bde62cef7c NFSD: Return nfserr_serverfault if splice_ok but buf->pages have data
    7b593b50f20c x86/entry: Work around Clang __bdos() bug
    d12ad2bb3feb ACPI: x86: Add a quirk for Dell Inspiron 14 2-in-1 for StorageD3Enable
    aff390ceb399 ARM: decompressor: Include .data.rel.ro.local
    6e2a347b3042 thermal: intel_powerclamp: Use get_cpu() instead of smp_processor_id() to avoid crash
    6216b685b8f4 powercap: intel_rapl: fix UBSAN shift-out-of-bounds issue
    dced4eaa9143 MIPS: BCM47XX: Cast memcmp() of function to (void *)
    25b364cb9b72 cpufreq: intel_pstate: Add Tigerlake support in no-HWP mode
    90bfc9ae875d ACPI: tables: FPDT: Don't call acpi_os_map_memory() on invalid phys address
    ed42391164e6 fortify: Fix __compiletime_strlen() under UBSAN_BOUNDS_LOCAL
    bf873a25c552 ACPI: video: Add Toshiba Satellite/Portege Z830 quirk
    8ce338db7440 cpufreq: amd_pstate: fix wrong lowest perf fetch
    aaa63801145a rcu: Back off upon fill_page_cache_func() allocation failure
    eaa91f54df78 rcu: Avoid triggering strict-GP irq-work when RCU is idle
    eb97e60a9eae fs: dlm: fix race in lowcomms
    d1bfec0f742c module: tracking: Keep a record of tainted unloaded modules only
    b9ffdfc1bedb selftest: tpm2: Add Client.__del__() to close /dev/tpm* handle
    0c3d50b49337 f2fs: fix to account FS_CP_DATA_IO correctly
    1f4d5d31ddff f2fs: fix race condition on setting FI_NO_EXTENT flag
    a3e69948da57 ACPI: APEI: do not add task_work to kernel thread to avoid memory leak
    57bf2897692b thermal/drivers/qcom/tsens-v0_1: Fix MSM8939 fourth sensor hw_id
    ccc9abee86c5 random: schedule jitter credit for next jiffy, not in two jiffies
    371fa5129af5 crypto: cavium - prevent integer overflow loading firmware
    8f5eee162e55 crypto: marvell/octeontx - prevent integer overflows
    9bb18a8bb311 kbuild: rpm-pkg: fix breakage when V=1 is used
    6f7b372ec68f linux/export: use inline assembler to populate symbol CRCs
    00b64949b8c2 kbuild: remove the target in signal traps when interrupted
    fc9a0aa83614 tracing/osnoise: Fix possible recursive locking in stop_per_cpu_kthreads
    f433d954d032 tracing: kprobe: Make gen test module work in arm and riscv
    1e7a061f0c52 tracing: kprobe: Fix kprobe event gen test module on exit
    544763643a24 iommu/iova: Fix module config properly
    c28acd0039fa cifs: return correct error in ->calc_signature()
    c3a130431c55 clocksource/drivers/timer-gxp: Add missing error handling in gxp_timer_probe
    3da5b75beef0 clocksource/drivers/arm_arch_timer: Fix handling of ARM erratum 858921
    429348d4f675 crypto: qat - fix DMA transfer direction
    5b48d7f97a57 crypto: inside-secure - Change swab to swab32
    8900bf5bb269 crypto: ccp - Release dma channels before dmaengine unrgister
    85bc736a18b8 crypto: akcipher - default implementation for setting a private key
    bd0438f534b2 iommu/omap: Fix buffer overflow in debugfs
    893aa489388f cgroup/cpuset: Enable update_tasks_cpumask() on top_cpuset
    8fa437e48007 crypto: hisilicon/qm - fix missing put dfx access
    dcd7b39a599a crypto: qat - fix default value of WDT timer
    12fe03cee274 hwrng: imx-rngc - Moving IRQ handler registering after imx_rngc_irq_mask_clear()
    5ade5762b4a5 cgroup: Honor caller's cgroup NS when resolving path
    d398cb165d19 crypto: ccp - Fail the PSP initialization when writing psp data file failed
    25dddddafe6e hwrng: arm-smccc-trng - fix NO_ENTROPY handling
    f8a983d6e01b crypto: hisilicon/zip - fix mismatch in get/set sgl_sge_nr
    50d4feadcc95 crypto: sahara - don't sleep when in softirq
    f03add92f4b2 powerpc/pseries/vas: Pass hw_cpu_id to node associativity HCALL
    4eac4f6a86ae powerpc/kprobes: Fix null pointer reference in arch_prepare_kprobe()
    dba386d93409 powerpc: Fix SPE Power ISA properties for e500v1 platforms
    a47254a9adac powerpc/64/interrupt: Fix return to masked context after hard-mask irq becomes pending
    5e3186b70002 powerpc/64: mark irqs hard disabled in boot paca
    ef58c97f97d3 powerpc/64s: Fix GENERIC_CPU build flags for PPC970 / G5
    99ac12f287d6 x86/hyperv: Fix 'struct hv_enlightened_vmcs' definition
    fd4b22c4b1f0 powerpc: Fix fallocate and fadvise64_64 compat parameter combination
    4140fd90c93e cpuidle: riscv-sbi: Fix CPU_PM_CPU_IDLE_ENTER_xyz() macro usage
    b57099a6aa9e powerpc/powernv: add missing of_node_put() in opal_export_attrs()
    a2c3374dc364 powerpc/pci_dn: Add missing of_node_put()
    9c7b092253c3 powerpc/sysdev/fsl_msi: Add missing of_node_put()
    5c140a35c1d6 powerpc/math_emu/efp: Include module.h
    6f20506c3e9d powerpc/configs: Properly enable PAPR_SCM in pseries_defconfig
    a1f321051e0d ipc: mqueue: fix possible memory leak in init_mqueue_fs()
    908bfb4f5ff8 mailbox: bcm-ferxrm-mailbox: Fix error check for dma_map_sg
    adc15eefb417 mailbox: mpfs: account for mbox offsets while sending
    0b921157ee9f mailbox: mpfs: fix handling of the reg property
    5edb0618919e clk: ast2600: BCLK comes from EPLL
    a9f69663ad57 clk: ti: dra7-atl: Fix reference leak in of_dra7_atl_clk_probe
    7125637a6cc4 clk: ti: Balance of_node_get() calls for of_find_node_by_name()
    43c589b7a187 clk: imx: scu: fix memleak on platform_device_add() fails
    13fc676c7185 clk: bcm2835: fix bcm2835_clock_rate_from_divisor declaration
    c20099c19cb3 clk: baikal-t1: Add SATA internal ref clock buffer
    4dc50ce40b59 clk: baikal-t1: Add shared xGMAC ref/ptp clocks internal parent
    6e2394f58dd1 clk: baikal-t1: Fix invalid xGMAC PTP clock divider
    4dcae3385ced clk: vc5: Fix 5P49V6901 outputs disabling when enabling FOD
    03c55521879a spmi: pmic-arb: correct duplicate APID to PPID mapping logic
    69e1e6a82ef4 usb: mtu3: fix failed runtime suspend in host only mode
    c1914501c134 dmaengine: ioat: stop mod_timer from resurrecting deleted timer in __cleanup()
    23c9084645f0 clk: mediatek: Migrate remaining clk_unregister_*() to clk_hw_unregister_*()
    1a328477ea17 clk: mediatek: fix unregister function in mtk_clk_register_dividers cleanup
    05ff2207fa04 clk: mediatek: clk-mt8195-mfg: Reparent mfg_bg3d and propagate rate changes
    fddb8f871a1f clk: mediatek: mt8183: mfgcfg: Propagate rate changes to parent
    85c7a6837ea7 mfd: da9061: Fix Failed to set Two-Wire Bus Mode.
    e878673f5635 mfd: sm501: Add check for platform_driver_register()
    deaafe55a1d0 mfd: fsl-imx25: Fix check for platform_get_irq() errors
    c337ff96ef9e mfd: lp8788: Fix an error handling path in lp8788_irq_init() and lp8788_irq_init()
    ab94a72c82cc mfd: lp8788: Fix an error handling path in lp8788_probe()
    9bb4cb60c032 mfd: fsl-imx25: Fix an error handling path in mx25_tsadc_setup_irq()
    36905589383f mfd: intel_soc_pmic: Fix an error handling path in intel_soc_pmic_i2c_probe()
    8c24097d6fb9 fsi: core: Check error number after calling ida_simple_get
    52dd1b675ed9 RDMA/rxe: Fix resize_finish() in rxe_queue.c
    8dec72315988 clk: qcom: gcc-sm6115: Override default Alpha PLL regs
    a1ba69d624a1 clk: qcom: apss-ipq6018: mark apcs_alias0_core_clk as critical
    897dbbc57d71 scsi: iscsi: iscsi_tcp: Fix null-ptr-deref while calling getpeername()
    c5922e8e42b8 scsi: iscsi: Run recv path from workqueue
    bd16ec67e995 scsi: iscsi: Add recv workqueue helpers
    38a118abf5cc scsi: iscsi: Rename iscsi_conn_queue_work()
    4e750e0d8e48 scsi: pm8001: Fix running_req for internal abort commands
    f7a785177611 scsi: libsas: Fix use-after-free bug in smp_execute_task_sg()
    dae33133f255 serial: 8250: Fix restoring termios speed after suspend
    c6ce163bb827 firmware: google: Test spinlock on panic path to avoid lockups
    eec8e868bdc9 slimbus: qcom-ngd: Add error handling in of_qcom_slim_ngd_register
    e8ce7655fd1f slimbus: qcom-ngd-ctrl: allow compile testing without QCOM_RPROC_COMMON
    a9e9806d1c31 staging: vt6655: fix some erroneous memory clean-up loops
    2afdd2d9cf27 phy: qualcomm: call clk_disable_unprepare in the error handling
    d554c14eb73e tty: serial: fsl_lpuart: disable dma rx/tx use flags in lpuart_dma_shutdown
    97e79713db81 serial: 8250: Toggle IER bits on only after irq has been set up
    737594536dc3 drivers: serial: jsm: fix some leaks in probe
    79c3afb55942 usb: dwc3: core: fix some leaks in probe
    77333f9cc3e1 usb: gadget: function: fix dangling pnp_string in f_printer.c
    a6ba28c41804 xhci: Don't show warning for reinit on known broken suspend
    df4bf3a2371f IB: Set IOVA/LENGTH on IB_MR in core/uverbs layers
    43e2f80cda29 RDMA/cm: Use SLID in the work completion as the DLID in responder side
    c0fd5d4d8fd7 md/raid5: Remove unnecessary bio_put() in raid5_read_one_chunk()
    edce7cb3d8d1 md/raid5: Ensure stripe_fill happens on non-read IO with journal
    41ca95033a0c md: Replace snprintf with scnprintf
    b892ff7dc03e mtd: rawnand: meson: fix bit map use in meson_nfc_ecc_correct()
    9d4c05ea9461 ata: fix ata_id_has_dipm()
    cb0e2986c81a ata: fix ata_id_has_ncq_autosense()
    23be940d99d0 ata: fix ata_id_has_devslp()
    295ef6a0327d ata: fix ata_id_sense_reporting_enabled() and ata_id_has_sense_reporting()
    74ad141e995a RDMA/siw: Fix QP destroy to wait for all references dropped.
    0c14f795a9ea RDMA/siw: Always consume all skbuf data in sk_data_ready() upcall.
    f741a9c64e4e RDMA/srp: Fix srp_abort()
    b72d09c37696 RDMA/irdma: Validate udata inlen and outlen
    4665894629c8 RDMA/irdma: Align AE id codes to correct flush code and event
    5e871bacc5b9 mtd: rawnand: fsl_elbc: Fix none ECC mode
    5f344bd994da mtd: rawnand: intel: Remove undocumented compatible string
    79cea59c1348 mtd: rawnand: intel: Read the chip-select line from the correct OF node
    876ee3ce4c02 phy: phy-mtk-tphy: fix the phy type setting issue
    bea05e8f3b7a phy: amlogic: phy-meson-axg-mipi-pcie-analog: Hold reference returned by of_get_parent()
    d86b5cab8e6b remoteproc: Harden rproc_handle_vdev() against integer overflow
    e51207113b36 mtd: devices: docg3: check the return value of devm_ioremap() in the probe
    f5e41e860a3a clk: qcom: sm6115: Select QCOM_GDSC
    d074a8721b40 dyndbg: drop EXPORTed dynamic_debug_exec_queries
    a5389101936a dyndbg: let query-modname override actual module name
    6fe65c4de7f1 dyndbg: fix module.dyndbg handling
    7059d5c462fb dyndbg: fix static_branch manipulation
    0cb8d0d420d4 usb: gadget: f_fs: stricter integer overflow checks
    d4a8ec5cc7ff dmaengine: hisilicon: Add multi-thread support for a DMA channel
    60d48e197289 dmaengine: hisilicon: Fix CQ head update
    435c85735572 dmaengine: hisilicon: Disable channels when unregister hisi_dma
    4b05c3e771a6 dmaengine: idxd: avoid deadlock in process_misc_interrupts()
    6afdab9bdad1 phy: rockchip-inno-usb2: Return zero after otg sync
    1b5a931594f7 fpga: prevent integer overflow in dfl_feature_ioctl_set_irq()
    843433a02e34 misc: ocxl: fix possible refcount leak in afu_ioctl()
    8a02209e256d clk: mediatek: mt8195-infra_ao: Set pwrmcu clocks as critical
    f6794d82c0d5 clk: mediatek: clk-mt8195-vdo1: Reparent and set rate on vdo1_dpintf's parent
    79b90df9b9e8 clk: mediatek: clk-mt8195-vdo0: Set rate on vdo0_dp_intf0_dp_intf's parent
    aedd895b3820 RDMA/rxe: Fix the error caused by qp->sk
    bb33fa65da77 RDMA/rxe: Fix "kernel NULL pointer dereference" error
    22b93530bbe6 media: xilinx: vipp: Fix refcount leak in xvip_graph_dma_init
    1b2f6d1d5abf media: uvcvideo: Use entity get_cur in uvc_ctrl_set
    deb8f32ae4b1 media: uvcvideo: Fix memory leak in uvc_gpio_parse
    73bf38baa8ac media: meson: vdec: add missing clk_disable_unprepare on error in vdec_hevc_start()
    325de494d8ce media: amphion: fix a bug that vpu core may not resume after suspend
    47fd2c400869 media: amphion: don't change the colorspace reported by decoder.
    50c335d99773 media: amphion: adjust the encoder's value range of gop size
    96fe4befacef media: amphion: insert picture startcode after seek for vc1g format
    e15db9a24df1 tty: xilinx_uartps: Fix the ignore_status
    9eabf73391b6 media: exynos4-is: fimc-is: Add of_node_put() when breaking out of loop
    99e30bd761c5 clk: qcom: gcc-sdm660: Use floor ops for SDCC1 clock
    fcc076fecca6 HSI: omap_ssi_port: Fix dma_map_sg error check
    e25f56f8bdf6 HSI: omap_ssi: Fix refcount leak in ssi_probe
    00f6ce0d1baf clk: samsung: exynosautov9: correct register offsets of peric0/c1
    8cd228892759 clk: tegra20: Fix refcount leak in tegra20_clock_init
    8e1fe3025393 clk: tegra: Fix refcount leak in tegra114_clock_init
    1a6d97139b0a clk: tegra: Fix refcount leak in tegra210_clock_init
    a065f836c938 clk: sprd: Hold reference returned by of_get_parent()
    2c4137393bcf clk: berlin: Add of_node_put() for of_get_parent()
    42ecb6c427ee clk: qoriq: Hold reference returned by of_get_parent()
    23e0893862ba clk: oxnas: Hold reference returned by of_get_parent()
    3c3292f490e7 clk: st: Hold reference returned by of_get_parent()
    0068ca80dcfa clk: meson: Hold reference returned by of_get_parent()
    40c485c8b1f7 usb: common: debug: Check non-standard control requests
    dd1db668449d RDMA/mlx5: Don't compare mkey tags in DEVX indirect mkey
    30e20981b08a iio: magnetometer: yas530: Change data type of hard_offsets to signed
    39eb39a592fb iio: ABI: Fix wrong format of differential capacitance channel ABI.
    144ef27e46e0 iio: inkern: fix return value in devm_of_iio_channel_get_by_name()
    4e416e52185f iio: inkern: only release the device node when done with it
    8394db2d4ffb iio: adc: at91-sama5d2_adc: disable/prepare buffer on suspend/resume
    e0b504be6e42 iio: adc: at91-sama5d2_adc: lock around oversampling and sample freq
    44f46f904d8c iio: adc: at91-sama5d2_adc: check return status for pressure and touch
    b8c127184bc5 iio: adc: at91-sama5d2_adc: fix AT91_SAMA5D2_MR_TRACKTIM_MAX
    82c66c46f73b iomap: iomap: fix memory corruption when recording errors during writeback
    0530055d5b96 ARM: dts: exynos: fix polarity of VBUS GPIO of Origen
    0f77b6b2ba70 arm64: ftrace: fix module PLTs with mcount
    75e60ad770e2 ext4: don't run ext4lazyinit for read-only filesystems
    59cdd0794d59 ARM: Drop CMDLINE_* dependency on ATAGS
    c665b41db852 ARM: dts: exynos: correct s5k6a3 reset polarity on Midas family
    0d54c26d0ade arm64: dts: ti: k3-j7200: fix main pinmux range
    a39307c7c750 soc/tegra: fuse: Drop Kconfig dependency on TEGRA20_APB_DMA
    2f91772a5f8a ia64: export memory_add_physaddr_to_nid to fix cxl build error
    664c6b13332a ARM: dts: kirkwood: lsxl: remove first ethernet port
    e3ab51897adc ARM: dts: kirkwood: lsxl: fix serial line
    1764fd62a86c ARM: dts: turris-omnia: Fix mpp26 pin name and comment
    b3f82935c77a dt-bindings: clock: exynosautov9: correct clock numbering of peric0/c1
    bba8ed1946c0 arm64: dts: renesas: r9a07g043: Fix SCI{Rx,Tx} interrupt types
    4522a6fe84cb arm64: dts: renesas: r9a07g054: Fix SCI{Rx,Tx} interrupt types
    964cf7f0d477 arm64: dts: renesas: r9a07g044: Fix SCI{Rx,Tx} interrupt types
    02e3b6404d26 ARM: dts: imx6qdl-kontron-samx6i: hook up DDC i2c bus
    c1bc4ab733ec soc: qcom: smem_state: Add refcounting for the 'state->of_node'
    8fb6112bd49c soc: qcom: smsm: Fix refcount leak bugs in qcom_smsm_probe()
    e0b55fd272ae locks: fix TOCTOU race when granting write lease
    daab421fc2dc memory: of: Fix refcount leak bug in of_lpddr3_get_ddr_timings()
    62ccab6e3376 memory: of: Fix refcount leak bug in of_get_ddr_timings()
    44db35ceb947 memory: pl353-smc: Fix refcount leak bug in pl353_smc_probe()
    7cdc122f28d7 ALSA: hda/hdmi: Don't skip notification handling during PM operation
    8679d5305080 ASoC: mt6660: Fix PM disable depth imbalance in mt6660_i2c_probe
    bac2dd72fcfb ASoC: wm5102: Fix PM disable depth imbalance in wm5102_probe
    f54f599c8e2f ASoC: wm5110: Fix PM disable depth imbalance in wm5110_probe
    530b9c0e4121 ASoC: wm8997: Fix PM disable depth imbalance in wm8997_probe
    16226421b10a ASoC: stm: Fix PM disable depth imbalance in stm32_i2s_probe
    eb7bcd48fc8e ASoC: stm32: spdifrx: Fix PM disable depth imbalance in stm32_spdifrx_probe
    aa7f877d2d07 ASoC: stm32: dfsdm: Fix PM disable depth imbalance in stm32_adfsdm_probe
    06821c68d9ed mmc: wmt-sdmmc: Fix an error handling path in wmt_mci_probe()
    2e2c57f660a6 ALSA: dmaengine: increment buffer pointer atomically
    ec692f0b5100 ASoC: da7219: Fix an error handling path in da7219_register_dai_clks()
    40aba726b2cd ASoC: codecs: tx-macro: fix kcontrol put
    60f6d4f9d903 virtio-gpu: fix shift wrapping bug in virtio_gpu_fence_event_create()
    6ad40bbb2c25 drm/vmwgfx: Fix memory leak in vmw_mksstat_add_ioctl()
    dea487355691 ALSA: usb-audio: Properly refcounting clock rate
    7a2bead03557 drm/msm/dp: correct 1.62G link rate at dp_catalog_ctrl_config_msa()
    512c4d444c69 drm/msm/dpu: index dpu_kms->hw_vbif using vbif_idx
    ab03e61c5cf7 drm/msm: lookup the ICC paths in both mdp5/dpu and mdss devices
    b58efaf656ab ASoC: eureka-tlv320: Hold reference returned from of_find_xxx API
    beffe91431ba mmc: au1xmmc: Fix an error handling path in au1xmmc_probe()
    8b8da09da270 drm/amdgpu: Fix memory leak in hpd_rx_irq_create_workqueue()
    e55261beb86a drm/omap: dss: Fix refcount leak bugs
    d1087cfd4370 ASoC: SOF: mediatek: mt8195: Import namespace SND_SOC_SOF_MTK_COMMON
    2a3c55862c67 drm/bochs: fix blanking
    fc8eea8ec3ca drm/virtio: set fb_modifiers_not_supported
    d6e150e84f16 ALSA: hda: beep: Simplify keep-power-at-enable behavior
    45416de9ad46 ASoC: wm_adsp: Handle optional legacy support
    3f8546391e03 ASoC: rsnd: Add check for rsnd_mod_power_on
    93e06be3f518 drm/bridge: it6505: Fix the order of DP_SET_POWER commands
    21764467ab39 drm/bridge: megachips: Fix a null pointer dereference bug
    be6ad75a500e drm/amdgpu: add missing pci_disable_device() in amdgpu_pmops_runtime_resume()
    2c9db240575c platform/chrome: cros_ec_typec: Correct alt mode index
    862f641cadf1 platform/x86: msi-laptop: Fix resource cleanup
    21cd17aedbbf platform/x86: msi-laptop: Fix old-ec check for backlight registering
    f8365e4ae5b1 ASoC: tas2764: Fix mute/unmute
    7960f1a4cb2f ASoC: tas2764: Drop conflicting set_bias_level power setting
    9575bd32c344 ASoC: tas2764: Allow mono streams
    1f35a8afe8db ASoC: soc-pcm.c: call __soc_pcm_close() in soc_pcm_close()
    cfbf43124e0d drm/virtio: Fix same-context optimization
    f143f1d9a8e5 platform/chrome: fix memory corruption in ioctl
    c2fbf1b1fff6 platform/chrome: fix double-free in chromeos_laptop_prepare()
    26f9a766f87b drm/msm: Make .remove and .shutdown HW shutdown consistent
    4e5287acc036 ASoC: mt6359: fix tests for platform_get_irq() failure
    a656ff69fe13 drm:pl111: Add of_node_put() when breaking out of for_each_available_child_of_node()
    79878d6829b5 drm/dp_mst: fix drm_dp_dpcd_read return value checks
    fd85e0eeaa65 drm/bridge: parade-ps8640: Fix regulator supply order
    38edd69b0065 drm/bridge: tc358767: Add of_node_put() when breaking out of loop
    61d0c94c3725 drm/virtio: Correct drm_gem_shmem_get_sg_table() error handling
    99fae8294e28 drm/bridge: it6505: Power on downstream device in .atomic_enable
    353ab1c13fdd drm/mipi-dsi: Detach devices when removing the host
    3051f34c0193 drm/bridge: Avoid uninitialized variable warning
    4d4d5bc65920 drm: bridge: adv7511: unregister cec i2c device after cec adapter
    903c2b9bced8 drm: bridge: adv7511: fix CEC power down control register offset
    169aa2664639 net: mvpp2: fix mvpp2 debugfs leak
    b0eb0d577635 once: add DO_ONCE_SLOW() for sleepable contexts
    51d4260585cf net/ieee802154: reject zero-sized raw_sendmsg()
    39365e1b0eb5 net: wwan: iosm: Call mutex_init before locking it
    b47bc8202b31 eth: sp7021: fix use after free bug in spl2sw_nvmem_get_mac_address
    96c0c14135f5 bnx2x: fix potential memory leak in bnx2x_tpa_stop()
    d06ee1cbffc6 eth: lan743x: reject extts for non-pci11x1x devices
    49c1729b5563 net: prestera: acl: Add check for kmemdup
    e2e49822a0a1 af_unix: Fix memory leaks of the whole sk due to OOB skb.
    c380c28ab9b1 net: rds: don't hold sock lock when cancelling work from rds_tcp_reset_callbacks()
    248bed1dbf5a hwmon: (pmbus/mp2888) Fix sensors readouts for MPS Multi-phase mp2888 controller
    742e595f1949 Bluetooth: hci_sync: Fix not indicating power state
    37ad7c5990c0 spi: Ensure that sg_table won't be used after being freed
    ccbfe4d0bce4 tcp: fix tcp_cwnd_validate() to not forget is_cwnd_limited
    0f90099d18e3 sctp: handle the error returned from sctp_auth_asoc_init_active_key
    1f76323ac43f mISDN: fix use-after-free bugs in l1oip timer handlers
    a845a0c4bdec eth: alx: take rtnl_lock on resume
    a99fc6d81816 vhost/vsock: Use kvmalloc/kvfree for larger packets.
    505ac55467df wifi: rtl8xxxu: Fix AIFS written to REG_EDCA_*_PARAM
    7050e56333f1 wifi: rtl8xxxu: gen2: Enable 40 MHz channel width
    71314ed41425 spi: s3c64xx: Fix large transfers with DMA
    27d23b84b244 netfilter: nft_fib: Fix for rpath check with VRF devices
    f520075da484 xfrm: Reinject transport-mode packets through workqueue
    0f1a762184a6 Bluetooth: hci_core: Fix not handling link timeouts propertly
    de0ccb13d9ea i2c: mlxbf: support lock mechanism
    db41ae562b64 cw1200: fix incorrect check to determine if no element is found in list
    e4be1cf9ba24 skmsg: Schedule psock work if the cached skb exists on the psock
    7b24819bd6a2 spi/omap100k:Fix PM disable depth imbalance in omap1_spi100k_probe
    2a354023d3b5 spi: dw: Fix PM disable depth imbalance in dw_spi_bt1_probe
    71d2ef419e04 spi: cadence-quadspi: Fix PM disable depth imbalance in cqspi_probe
    3c5b8e7ca8be x86/cpu: Include the header of init_ia32_feat_ctl()'s prototype
    2042092204f8 wifi: ath11k: fix peer addition/deletion error on sta band migration
    bbcc38c4450e x86/microcode/AMD: Track patch allocation size explicitly
    ba46813ae735 mips: dts: ralink: mt7621: fix external phy on GB-PC2
    8d6b977ddf06 wifi: ath11k: fix number of VHT beamformee spatial streams
    c0bb97a90b13 wifi: ath11k: fix failed to find the peer with peer_id 0 when disconnected
    520b81520191 flow_dissector: Do not count vlan tags inside tunnel payload
    973ddaffd2b7 netfilter: conntrack: revisit the gc initial rescheduling bias
    b3104ef06635 netfilter: conntrack: fix the gc rescheduling delay
    75b2c71ea581 Bluetooth: hci_{ldisc,serdev}: check percpu_init_rwsem() failure
    f8a77dbb8837 wifi: ath11k: Include STA_KEEPALIVE_ARP_RESPONSE TLV header by default
    7de3297a9239 bpf: Ensure correct locking around vulnerable function find_vpid()
    5ae7255b9ab3 net: fs_enet: Fix wrong check in do_pd_setup
    e706cc24b679 Bluetooth: RFCOMM: Fix possible deadlock on socket shutdown/release
    1034d8e08508 wifi: mt76: mt7921e: fix rmmod crash in driver reload test
    f5e6d7ba8329 wifi: mt76: mt7915: do not check state before configuring implicit beamform
    540f17a503db wifi: mt76: mt7915: fix mcs value in ht mode
    ce02cd82abad wifi: mt76: mt7921: add mt7921_mutex_acquire at mt7921_sta_set_decap_offload
    f31aa5196463 wifi: mt76: mt7921: add mt7921_mutex_acquire at mt7921_[start, stop]_ap
    f5275e2e41eb wifi: mt76: connac: fix possible unaligned access in mt76_connac_mcu_add_nested_tlv
    c5bc23134c0c wifi: mt76: mt7915: fix possible unaligned access in mt7915_mac_add_twt_setup
    0160c341d836 wifi: mt76: mt7615: add mt7615_mutex_acquire/release in mt7615_sta_set_decap_offload
    327c14cf7b5f wifi: mt76: sdio: fix transmitting packet hangs
    8b133eb8af67 wifi: mt76: sdio: poll sta stat when device transmits data
    0641218a8143 wifi: mt76: sdio: fix the deadlock caused by sdio->stat_work
    30a09a8ca499 wifi: mt76: mt7921u: fix race issue between reset and suspend/resume
    d2d352124e19 wifi: mt76: mt7921s: fix race issue between reset and suspend/resume
    7aa91aa9daa7 wifi: mt76: mt7921e: fix race issue between reset and suspend/resume
    c24ab2685bc2 wifi: rtl8xxxu: Remove copy-paste leftover in gen2_update_rate_mask
    09ef9d732664 wifi: rtl8xxxu: gen2: Fix mistake in path B IQ calibration
    c586349191fb bpf: btf: fix truncated last_member_type_id in btf_struct_resolve
    bcc34897bd58 spi: meson-spicc: do not rely on busy flag in pow2 clk ops
    5ee77839f3c4 wifi: rtl8xxxu: Fix skb misuse in TX queue selection
    4bf42b30a98e spi: qup: add missing clk_disable_unprepare on error in spi_qup_pm_resume_runtime()
    36ad3e146732 spi: qup: add missing clk_disable_unprepare on error in spi_qup_resume()
    a3db90398a1c selftests/xsk: Avoid use-after-free on ctx
    79329f970ae6 wifi: rtw88: add missing destroy_workqueue() on error path in rtw_core_init()
    d02a74c72258 wifi: wfx: prevent underflow in wfx_send_pds()
    5fff0f1b5d57 wifi: rtl8xxxu: tighten bounds checking in rtl8xxxu_read_efuse()
    7b8389b7e160 wifi: rtw89: pci: correct TX resource checking in low power mode
    edb0fde1f7f3 wifi: rtw89: pci: fix interrupt stuck after leaving low power mode
    85a642c3455f Bluetooth: btusb: mediatek: fix WMT failure during runtime suspend
    dd5273e07984 bpf: Use this_cpu_{inc_return|dec} for prog->active
    ecbbef374ce5 bpf: Use this_cpu_{inc|dec|inc_return} for bpf_task_storage_busy
    75d287186b98 wifi: ath11k: Fix incorrect QMI message ID mappings
    6bfee6eb3d6b bpf: Propagate error from htab_lock_bucket() to userspace
    a759911bd1c6 bpf: Disable preemption when increasing per-cpu map_locked
    dd88139cb53c selftests/xsk: Add missing close() on netns fd
    5f2a838113bd xsk: Fix backpressure mechanism on Tx
    3345cd3612b5 x86/resctrl: Fix to restore to original value when re-enabling hardware prefetch register
    e90195d5bbb9 spi: mt7621: Fix an error message in mt7621_spi_probe()
    f53f2814e914 esp: choose the correct inner protocol for GSO on inter address family tunnels
    d3c1fb19ca1e audit: free audit_proctitle only on task exit
    44fe6d9a0d8d audit: explicitly check audit_context->context enum value
    b35f60d6cf97 bpftool: Fix a wrong type cast in btf_dumper_int
    de5b1600689c wifi: mac80211: allow bw change during channel switch in mesh
    a43b2d121829 wifi: cfg80211: get correct AP link chandef
    caa176c0953c bpf: Fix reference state management for synchronous callbacks
    160b9f792f99 tsnep: Fix TSNEP_INFO_TX_TIME register define
    385072c05eb9 leds: lm3601x: Don't use mutex after it was destroyed
    707d7a774dcc bpf: Cleanup check_refcount_ok
    606cfa079089 bpf: convert cgroup_bpf.progs to hlist
    044bc355cdb5 bpf: Fix non-static bpf_func_proto struct definitions
    2bf916418d21 wifi: ath10k: add peer map clean up for peer delete in ath10k_sta_state()
    aaf7ca471415 wifi: rtlwifi: 8192de: correct checking of IQK reload
    082eb9beed5d x86/paravirt: add extra clobbers with ZERO_CALL_USED_REGS enabled
    221cb89ff40e NFSD: Fix handling of oversized NFSv4 COMPOUND requests
    c2a878095b5c NFSD: Protect against send buffer overflow in NFSv2 READDIR
    692b69ddb786 SUNRPC: Fix svcxdr_init_encode's buflen calculation
    2eea66b010f7 SUNRPC: Fix svcxdr_init_decode's end-of-buffer calculation
    733dd17158f9 nfsd: Fix a memory leak in an error handling path
    e58eef8ee86c objtool: Preserve special st_shndx indexes in elf_update_symbol
    970812475926 ACPI: PCC: Fix Tx acknowledge in the PCC address space handler
    f1f8085da2ca ACPI: PCC: replace wait_for_completion()
    4e714c4c370e ACPI: PCC: Release resources on address space setup failure path
    65cfd9c59fd8 ARM: 9247/1: mm: set readonly for MT_MEMORY_RO with ARM_LPAE
    f6fe0681bdd0 ARM: 9244/1: dump: Fix wrong pg_level in walk_pmd()
    80ec7f839264 ARM: 9243/1: riscpc: Unbreak the build
    f27bafeb9fb4 erofs: use kill_anon_super() to kill super in fscache mode
    b6c8330f5b0f erofs: fix order >= MAX_ORDER warning due to crafted negative i_size
    d7ac29e60d0f MIPS: SGI-IP27: Fix platform-device leak in bridge_platform_create()
    a253f3b59ff0 MIPS: SGI-IP30: Fix platform-device leak in bridge_platform_create()
    8010fece7cd0 sh: machvec: Use char[] for section boundaries
    7c0258acaf71 cpufreq: amd-pstate: Fix initial highest_perf value
    7750f52ce090 thermal: cpufreq_cooling: Check the policy first in cpufreq_cooling_register()
    db4de8bb6171 ntfs3: rework xattr handlers and switch to POSIX ACL VFS helpers
    e5a37972ab86 userfaultfd: open userfaultfds with O_RDONLY
    5e6f29a2ed37 ima: fix blocking of security.ima xattrs of unsupported algorithms
    a2db2328886f selinux: use "grep -E" instead of "egrep"
    d296b4fd4c15 smb3: must initialize two ACL struct fields to zero
    4370ef797420 drm/amd/display: explicitly disable psr_feature_enable appropriately
    6f377e9affd5 drm/amd/display: Fix vblank refcount in vrr transition
    df4d55302ee3 drm/i915: Fix watermark calculations for DG2 CCS+CC modifier
    27bb1962725e drm/i915: Fix watermark calculations for DG2 CCS modifiers
    cd82aaf05c50 drm/i915: Fix watermark calculations for gen12+ CCS+CC modifier
    66b0ea47534c drm/i915: Fix watermark calculations for gen12+ MC CCS modifier
    b6d0783eed82 drm/i915: Fix watermark calculations for gen12+ RC CCS modifier
    a2a457c8166d drm/i915/gt: Use i915_vm_put on ppgtt_create error paths
    3aeda2fe6517 drm/nouveau: fix a use-after-free in nouveau_gem_prime_import_sg_table()
    6dd1b90e56df drm/nouveau/kms/nv140-: Disable interlacing
    5699afbff1fa staging: greybus: audio_helper: remove unused and wrong debugfs usage
    dd8cf031cf9f KVM: VMX: Drop bits 31:16 when shoving exception error code into VMCS
    9bf561c4db89 KVM: nVMX: Don't propagate vmcs12's PERF_GLOBAL_CTRL settings to vmcs02
    a0b4d7524abf KVM: nVMX: Unconditionally purge queued/injected events on nested "exit"
    7984c1386885 KVM: x86/emulator: Fix handing of POP SS to correctly set interruptibility
    dd54b94e72d0 blk-wbt: call rq_qos_add() after wb_normal is initialized
    8b1f9fde48aa blk-throttle: fix that io throttle can only work for single bio
    1e5c75634e3e media: cedrus: Fix endless loop in cedrus_h265_skip_bits()
    c3977e0bcb4b media: cedrus: Set the platform driver data earlier
    b2c57e927470 efi: libstub: drop pointless get_memory_map() call
    f897e1ce696a thunderbolt: Explicitly enable lane adapter hotplug events at startup
    ef828a39d6a7 rpmsg: char: Avoid double destroy of default endpoint
    149198d0b884 tracing: Fix reading strings from synthetic events
    966ffabf6990 tracing: Add "(fault)" name injection to kernel probes
    860e8fbde423 tracing: Move duplicate code of trace_kprobe/eprobe.c into header
    2fcd9e27640f tracing: Do not free snapshot if tracer is on cmdline
    864f10063efc tracing: Add ioctl() to force ring buffer waiters to wake up
    e91ef98eeefd tracing: Wake up waiters when tracing is disabled
    5544f411a4e8 tracing: Wake up ring buffer waiters on closing of the file
    220d170455aa tracing: Disable interrupt or preemption before acquiring arch_spinlock_t
    ceb52ccfb01d ring-buffer: Fix race between reset page and reading page
    f026e18300d8 ring-buffer: Add ring_buffer_wake_waiters()
    79f3d1facbdb ring-buffer: Check pending waiters when doing wake ups as well
    51a51a1a7152 ring-buffer: Have the shortest_full queue be the shortest not longest
    0a2fe268e8f6 ring-buffer: Allow splice to read previous partially read pages
    0abc3bb1706b ftrace: Still disable enabled records marked as disabled
    8f81aee36ba1 ftrace: Properly unset FTRACE_HASH_FL_MOD
    ebf0beb855e2 livepatch: fix race between fork and KLP transition
    caf34de4951d ext4: update 'state->fc_regions_size' after successful memory allocation
    a4058b869e6c ext4: fix potential memory leak in ext4_fc_record_regions()
    c0be17635f03 ext4: fix potential memory leak in ext4_fc_record_modified_inode()
    a4a8c7e51ec2 ext4: fix miss release buffer head in ext4_fc_write_inode
    2bf6f14e9ddc ext4: fix dir corruption when ext4_dx_add_entry() fails
    c2ddd16160de ext4: fix i_version handling in ext4
    c839f6b1e8a6 ext4: place buffer head allocation before handle start
    01e159ec8066 ext4: ext4_read_bh_lock() should submit IO if the buffer isn't uptodate
    f35e65d686cf ext4: unconditionally enable the i_version counter
    44c79a757437 ext4: don't increase iversion counter for ea_inodes
    edb71f055684 ext4: fix check for block being out of directory size
    d0681b447f5b ext4: make ext4_lazyinit_thread freezable
    4a657319cfab ext4: fix null-ptr-deref in ext4_write_info
    89db2b50469b ext4: avoid crash when inline data creation follows DIO write
    40ff52527dae ext2: Add sanity checks for group and filesystem size
    27c7bd35135d jbd2: add miss release buffer head in fc_do_one_pass()
    2e6d9f381c1e jbd2: fix potential use-after-free in jbd2_fc_wait_bufs
    68ed9c76b2af jbd2: fix potential buffer head reference count leak
    aa972fe0f2ab jbd2: wake up journal waiters in FIFO order, not LIFO
    e168f819bfa4 f2fs: fix to do sanity check on summary info
    8f0a47def472 f2fs: fix to do sanity check on destination blkaddr during recovery
    43341cb9547d f2fs: increase the limit for reserve_root
    ce0892c0fcf5 f2fs: flush pending checkpoints when freezing super
    0fa4033d00be f2fs: complete checkpoints during remount
    6ab091560933 f2fs: fix wrong continue condition in GC
    a687c2890fe4 btrfs: set generation before calling btrfs_clean_tree_block in btrfs_init_new_buffer
    b81d8146f51a btrfs: fix missed extent on fsync after dropping extent maps
    0efd9dfc00d6 btrfs: fix race between quota enable and quota rescan ioctl
    dfb9fbc5accf btrfs: enhance unsupported compat RO flags handling
    9bf3abc8bcc6 btrfs: fix alignment of VMA for memory mapped files on THP
    b59deb46a675 fs: record I_DIRTY_TIME even if inode already has I_DIRTY_INODE
    be394e8a205c ksmbd: Fix user namespace mapping
    1c1225288bde ksmbd: Fix wrong return value and message length check in smb2_ioctl()
    230a44aaf9a0 ksmbd: fix endless loop when encryption for response fails
    ff5814fdced4 ksmbd: fix incorrect handling of iterate_dir
    d2c9555cce37 smb3: do not log confusing message when server returns no network interfaces
    a54676340b0e hwrng: core - let sleep be interrupted when unregistering hwrng
    02c871d44090 fbdev: smscufx: Fix use-after-free in ufx_ops_open()
    0ec105bf4176 pinctrl: rockchip: add pinmux_ops.gpio_set_direction callback
    a11544efbcf5 gpio: rockchip: request GPIO mux to pinctrl when setting direction
    6f9a24b4ac16 scsi: qedf: Populate sysfs attributes for vport
    147d397e08a4 scsi: lpfc: Rework MIB Rx Monitor debug info logic
    0c76110a3129 slimbus: qcom-ngd: cleanup in probe error path
    30e704e063cb slimbus: qcom-ngd: use correct error in message of pdr_add_lookup() failure
    5c87da431c18 powerpc/boot: Explicitly disable usage of SPE instructions
    81a12906cb76 powerpc/Kconfig: Fix non existing CONFIG_PPC_FSL_BOOKE
    6396d57b8c4f powercap: intel_rapl: Use standard Energy Unit for SPR Dram RAPL domain
    c5f1c47aaa3f cpufreq: qcom-cpufreq-hw: Fix uninitialized throttled_freq warning
    bc6c0ed253cd NFSD: Protect against send buffer overflow in NFSv3 READ
    ea4c3eee0fd7 NFSD: Protect against send buffer overflow in NFSv2 READ
    9c3224826ec1 NFSD: Protect against send buffer overflow in NFSv3 READDIR
    003505406a50 serial: 8250: Request full 16550A feature probing for OxSemi PCIe devices
    8f9bd3fdc8d3 serial: 8250: Let drivers request full 16550A feature probing
    232509094ea5 serial: stm32: Deassert Transmit Enable on ->rs485_config()
    5064982437a1 serial: cpm_uart: Don't request IRQ too early for console port
    1680dbf51281 PCI: Sanitise firmware BAR assignments behind a PCI-PCI bridge
    4fb4053d90ca xen/gntdev: Accommodate VMA splitting
    0bccddd9b8f0 xen/gntdev: Prevent leaking grants
    6757330b1be5 mm/mmap: undo ->mmap() when arch_validate_flags() fails
    b76e4eb02e9e mm/uffd: fix warning without PTE_MARKER_UFFD_WP compiled in
    e77f4ddc7e11 mm/damon: validate if the pmd entry is present before accessing
    86a913d55c89 mm/hugetlb: fix races when looking up a CONT-PTE/PMD size hugetlb page
    ed5895be34b6 clocksource/drivers/arm_arch_timer: Fix CNTPCT_LO and CNTVCT_LO value
    53177c8253e3 arm64: errata: Add Cortex-A55 to the repeat tlbi list
    c9ded3c93132 arm64: mte: move register initialization to C
    921384209d10 drm/udl: Restore display mode on resume
    60538f6bf14f drm/virtio: Use appropriate atomic state in virtio_gpu_plane_cleanup_fb()
    86475df5fb57 drm/virtio: Unlock reservations on dma_resv_reserve_fences() error
    846e8a76221a drm/virtio: Unlock reservations on virtio_gpu_object_shmem_init() error
    989164305b93 drm/virtio: Check whether transferred 2D BO is shmem
    5653bd020094 dmaengine: qcom-adm: fix wrong calling convention for prep_slave_sg
    f1dd45a6585a dmaengine: qcom-adm: fix wrong sizeof config in slave_config
    94e002aec466 dmaengine: mxs: use platform_driver_register
    a2fcd90ab840 Revert "drm/amdgpu: use dirty framebuffer helper"
    6bf83b0f7cf7 nvme-multipath: fix possible hang in live ns resize with ANA access
    2bd2774df0ce nvmem: core: Fix memleak in nvmem_register()
    5177bdc38eaa UM: cpuinfo: Fix a warning for CONFIG_CPUMASK_OFFSTACK
    0a46c031d03e riscv: Pass -mno-relax only on lld < 15.0.0
    c579c0aa7810 riscv: always honor the CONFIG_CMDLINE_FORCE when parsing dtb
    98c981715e8f riscv: Make VM_WRITE imply VM_READ
    cf8535076464 riscv: Allow PROT_WRITE-only mmap()
    df30c4feba51 riscv: vdso: fix NULL deference in vdso_join_timens() when vfork
    68a1aac5bdd5 parisc: Fix userspace graphics card breakage due to pgtable special bit
    5017f2f7b138 parisc: fbdev/stifb: Align graphics memory size to 4MB
    140b2b92dbef RISC-V: Make port I/O string accessors actually work
    e08302134d59 RISC-V: Re-enable counter access from userspace
    1379df4c0697 riscv: topology: fix default topology reporting
    32863f41ee77 arm64: topology: move store_cpu_topology() to shared code
    12965b43cc23 regulator: qcom_rpm: Fix circular deferral regression
    878929b56705 net: thunderbolt: Enable DMA paths only after rings are enabled
    e8762009513a hwmon: (gsc-hwmon) Call of_node_get() before of_find_xxx API
    9f329cf8c693 ASoC: wcd934x: fix order of Slimbus unprepare/disable
    942228543a6d ASoC: wcd9335: fix order of Slimbus unprepare/disable
    cc2a1297b07a arm64: dts: qcom: sdm845-mtp: correct ADC settle time
    b3ededa17504 platform/chrome: cros_ec_proto: Update version on GET_NEXT_EVENT failure
    e4acbd10620f quota: Check next/prev free block number after reading from quota file
    93a3a3e745ed HID: multitouch: Add memory barriers
    19906949ca61 btf: Export bpf_dynptr definition
    1ab6d3030652 fs: dlm: fix invalid derefence of sb_lvbptr
    05b02a81fcca fs: dlm: handle -EBUSY first in lock arg validation
    5fe0184d47e0 fs: dlm: fix race between test_bit() and queue_work()
    a206f7fbe958 i2c: designware: Fix handling of real but unexpected device interrupts
    bcd98bf4093d mmc: sdhci-sprd: Fix minimum clock limit
    3035cc02a499 mmc: sdhci-tegra: Use actual clock rate for SW tuning correction
    ce08a030ef7b mmc: renesas_sdhi: Fix rounding errors
    7f7a491719bf can: kvaser_usb_leaf: Fix CAN state after restart
    d99b9999b4d1 can: kvaser_usb_leaf: Fix TX queue out of sync after restart
    b1f958afb433 can: kvaser_usb_leaf: Fix overread with an invalid command
    3d3c7eb843d8 can: kvaser_usb: Fix use of uninitialized completion
    268bd6b5b8fe mmc: core: Add SD card quirk for broken discard
    b52eecc616c9 usb: add quirks for Lenovo OneLink+ Dock
    07a844821b74 usb: gadget: uvc: Fix argument to sizeof() in uvc_register_video()
    116d6a696498 xhci: dbc: Fix memory leak in xhci_alloc_dbc()
    819f7a73c36b iio: pressure: dps310: Reset chip after timeout
    b871461eda8b iio: pressure: dps310: Refactor startup procedure
    467d556aa12c iio: adc: ad7923: fix channel readings for some variants
    2fabf2d80ce0 iio: ltc2497: Fix reading conversion results
    81c68fb490e2 iio: dac: ad5593r: Fix i2c read protocol requirements
    943eb0ede74e cifs: Fix the error length of VALIDATE_NEGOTIATE_INFO message
    56fc362eb3db cifs: destage dirty pages before re-reading them for cache=none
    bf28cb8811b5 hv_netvsc: Fix race between VF offering and VF association message from host
    796da2e0eff1 io_uring: correct pinned_vm accounting
    b4293c01ee0d io_uring/af_unix: defer registered files gc to io_uring release
    3e7f0e0f3744 io_uring/net: don't update msg_name if not provided
    e45a79863729 io_uring/net: fix fast_iov assignment in io_setup_async_msg()
    9197a1364d41 io_uring/rw: fix unexpected link breakage
    8f0a63743f1e mtd: rawnand: atmel: Unmap streaming DMA mappings
    d60ad28f750b ALSA: hda/realtek: Add Intel Reference SSID to support headset keys
    dc8e0bbf724f ALSA: hda/realtek: Add quirk for ASUS GV601R laptop
    390578404823 ALSA: hda/realtek: Correct pin configs for ASUS G533Z
    9108dee38d22 ALSA: hda/realtek: remove ALC289_FIXUP_DUAL_SPK for Dell 5530
    3965d9b05667 ALSA: usb-audio: Fix NULL dererence at error path
    faa8c1ed77d0 ALSA: usb-audio: Fix potential memory leaks
    a394f0197dd0 ALSA: rawmidi: Drop register_mutex in snd_rawmidi_free()
    a74003b10bbb ALSA: oss: Fix potential deadlock at unregistration
    eb9af45d0a4a Revert "fs: check FMODE_LSEEK to control internal pipe splicing"

(From OE-Core rev: 1635b579c2680e45bde3a83281dc123473799c19)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 4bb27cfe7487c57374af38b5b912d28f35cbe5b8)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-07 15:02:50 +00:00
Bruce Ashfield
19f636f63f linux-yocto/5.19: update to v5.19.16
Updating  to the latest korg -stable release that comprises
the following commits:

    d235c2b1f470 Linux 5.19.16
    279116cb0bc5 misc: pci_endpoint_test: Fix pci_endpoint_test_{copy,write,read}() panic
    d472808756b3 misc: pci_endpoint_test: Aggregate params checking for xfer
    d0ecbd70f080 Input: xpad - fix wireless 360 controller breaking after suspend
    d1a1dbe71f73 Input: xpad - add supported devices as contributed on github
    ac719db96b23 mctp: prevent double key removal and unref
    3aecb0895aac wifi: cfg80211: update hidden BSSes to avoid WARN_ON
    fa63b5f6f885 wifi: mac80211: fix crash in beacon protection for P2P-device
    2bee6f75e3c6 wifi: mac80211_hwsim: avoid mac80211 warning on bad rate
    1d73c990e9ba wifi: cfg80211: avoid nontransmitted BSS list corruption
    46b23a955958 wifi: cfg80211: fix BSS refcounting bugs
    867184200c05 wifi: cfg80211: ensure length byte is present before access
    e6d77ac0132d wifi: mac80211: fix MBSSID parsing use-after-free
    74abb1952a03 wifi: cfg80211/mac80211: reject bad MBSSID elements
    42ea11a81ac8 wifi: cfg80211: fix u8 overflow in cfg80211_update_notlisted_nontrans()
    848bb8517e41 random: use expired timer rather than wq for mixing fast pool
    111824744645 random: avoid reading two cache lines on irq randomness
    ee42204c1cd5 Revert "crypto: qat - reduce size of mapped region"
    3a8f93f3779e Revert "powerpc/rtas: Implement reentrant rtas call"
    bd9c917efcf8 Revert "usb: dwc3: Don't switch OTG -> peripheral if extcon is present"
    d42228fc2cad Revert "USB: fixup for merge issue with "usb: dwc3: Don't switch OTG -> peripheral if extcon is present""
    5857b9cd9b91 USB: serial: qcserial: add new usb-id for Dell branded EM7455
    6ae8aa5dcf0d scsi: stex: Properly zero out the passthrough command structure
    55e19a4c111e efi: Correct Macmini DMI match in uefi cert quirk
    a0d53923bf91 ALSA: hda/realtek: Add quirk for HP Zbook Firefly 14 G9 model
    59ac9fa0e33f ALSA: hda: Fix position reporting on Poulsbo
    b42a64428abe random: clamp credited irq bits to maximum mixed
    e1f8820bf83f random: restore O_NONBLOCK support
    ae2e80078145 nvme-pci: set min_align_mask before calculating max_hw_sectors
    6c58865f1acd ceph: don't truncate file in atomic_open
    090fcfb6edeb nilfs2: replace WARN_ONs by nilfs_error for checkpoint acquisition failure
    4755fcd84424 nilfs2: fix leak of nilfs_root in case of writer thread creation failure
    394b2571e9a7 nilfs2: fix use-after-free bug of struct nilfs_root
    caf2c6b58043 nilfs2: fix NULL pointer dereference at nilfs_bmap_lookup_at_level()
    51dd976781da Linux 5.19.15
    04bd2a779511 Revert "clk: ti: Stop using legacy clkctrl names for omap4 and 5"
    c4635cf3d845 Bluetooth: use hdev->workqueue when queuing hdev->{cmd,ncmd}_timer works
    6954cee88268 bpf: Fix resetting logic for unreferenced kptrs
    292b46c49675 net: ethernet: mtk_eth_soc: fix state in __mtk_foe_entry_clear
    9783292253fd bpf: Gate dynptr API behind CAP_BPF
    7d3f5d0353b4 rpmsg: qcom: glink: replace strncpy() with strscpy_pad()
    165ae42fc1cf mmc: core: Terminate infinite loop in SD-UHS voltage switch
    b2afdaddaa8c mmc: core: Replace with already defined values for readability
    0b0f40745ab4 gpiolib: acpi: Add a quirk for Asus UM325UAZ
    aa476c7b6375 gpiolib: acpi: Add support to ignore programming an interrupt
    a9d2ce58126c USB: serial: ftdi_sio: fix 300 bps rate for SIO
    9de74019cd44 usb: mon: make mmapped memory read only
    c2423912d5c9 i2c: davinci: fix PM disable depth imbalance in davinci_i2c_probe
    71c41e04d9d8 don't use __kernel_write() on kmap_local_page()
    5dac20360a7b perf/x86/intel: Fix unchecked MSR access error for Alder Lake N
    3682460b9327 drm/amd/display: increase dcn315 pstate change latency
    94d49c380b9a drm/amd/display: Fix DP MST timeslot issue when fallback happened
    4fb0b18590c6 drm/amd/display: skip audio setup when audio stream is enabled
    3c15b295ae2f drm/amd/display: update gamut remap if plane has changed
    89d387065803 drm/amd/display: Assume an LTTPR is always present on fixed_vs links
    d1137c3c03d8 drm/amd/display: Fix double cursor on non-video RGB MPO
    32c1dde16f0a KVM: s390: Pass initialized arg even if unused
    5b4e1c1ffba3 net: atlantic: fix potential memory leak in aq_ndev_close()
    cfaf7f090a40 arch: um: Mark the stack non-executable to fix a binutils warning
    a460f846d580 gpio: ftgpio010: Make irqchip immutable
    d71f03dbcc17 um: Cleanup compiler warning in arch/x86/um/tls_32.c
    c7105d2a77a6 um: Cleanup syscall_handler_t cast in syscalls_32.h
    9cdbc61abaa0 ALSA: hda/hdmi: Fix the converter reuse for the silent stream
    7480deff597a net: marvell: prestera: add support for for Aldrin2
    be248292a483 net/ieee802154: fix uninit value bug in dgram_sendmsg
    ce57f7b2e614 scsi: qedf: Fix a UAF bug in __qedf_probe()
    5f2f00509496 drm/amdgpu/mes: zero the sdma_hqd_mask of 2nd SDMA engine for SDMA 6.0.1
    f8895cfb48b0 ARM: dts: fix Moxa SDIO 'compatible', remove 'sdhci' misnomer
    7e834ee927a5 wifi: iwlwifi: don't spam logs with NSS>2 messages
    229769759ef8 dmaengine: xilinx_dma: Report error in case of dma_set_mask_and_coherent API failure
    e38f67582567 dmaengine: xilinx_dma: cleanup for fetching xlnx,num-fstores property
    92f8963831f1 dmaengine: xilinx_dma: Fix devm_platform_ioremap_resource error handling
    666f5be3593c arm64: dts: rockchip: fix upper usb port on BPI-R2-Pro
    edc5c66d15f9 firmware: arm_scmi: Add SCMI PM driver remove routine
    8e880f30946f firmware: arm_scmi: Harden accesses to the sensor domains
    41bf1b0ad953 firmware: arm_scmi: Improve checks in the info_get operations
    81de80330fa6 fs: fix UAF/GPF bug in nilfs_mdt_destroy
    8529dfb5ef72 xsk: Inherit need_wakeup flag for shared sockets
    7ebe331054cf docs: update mediator information in CoC docs
    3b760c94de19 hardening: Remove Clang's enable flag for -ftrivial-auto-var-init=zero
    19a4cb1c4eb8 Makefile.extrawarn: Move -Wcast-function-type-strict to W=1
    8dc610c9478c sparc: Unbreak the build

(From OE-Core rev: 9d799ceed76dc7354b6f055aed01777259eaf1f7)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit a99d8002ff7b8f4d73d03abd75a05921d0587815)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-07 15:02:50 +00:00
Bruce Ashfield
ec2c527501 linux-yocto/5.15: fix CONFIG_CRYPTO_CCM mismatch warnings
Integrating the following commit(s) to linux-yocto/.:

    f475b1a9ded qat: fix CONFIG_CRYPTO_CCM mismatch warnings

(From OE-Core rev: cd9dc8d13335803d1160455cf762369ec64d3f35)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit a3417ce85e38d514c7dc43c2ddcdacf45996fc2a)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-07 15:02:50 +00:00
Bruce Ashfield
b3ec26b30b linux-yocto/5.15: update to v5.15.78
Updating  to the latest korg -stable release that comprises
the following commits:

    509a32764e1a Linux 5.15.78
    7038af4ce951 wifi: brcmfmac: Fix potential buffer overflow in brcmf_fweh_event_worker()
    b66617cc3c2f drm/i915/sdvo: Setup DDC fully before output init
    73d52322c4af drm/i915/sdvo: Filter out invalid outputs more sensibly
    2219b6aad345 drm/rockchip: dsi: Force synchronous probe
    dd955eb4e616 drm/rockchip: dsi: Clean up 'usage_mode' when failing to attach
    cfa8a89af9f2 cifs: fix regression in very old smb1 mounts
    3189de0ac310 ext4,f2fs: fix readahead of verity data
    a663e6ab17a2 tee: Fix tee_shm_register() for kernel TEE drivers
    d46db722a0af KVM: x86: emulator: update the emulation mode after CR0 write
    942aec252b23 KVM: x86: emulator: update the emulation mode after rsm
    9df4bb7b3863 KVM: x86: emulator: introduce emulator_recalc_and_set_mode
    311f1e51a290 KVM: x86: emulator: em_sysexit should update ctxt->mode
    37a03de2d0c5 KVM: arm64: Fix bad dereference on MTE-enabled systems
    167dca5e210b KVM: VMX: fully disable SGX if SECONDARY_EXEC_ENCLS_EXITING unavailable
    19c2b2ffbeec KVM: x86: Mask off reserved bits in CPUID.8000001FH
    553fd40d3bf7 KVM: x86: Mask off reserved bits in CPUID.80000001H
    006366b96c16 KVM: x86: Mask off reserved bits in CPUID.80000008H
    fc796fd861fa KVM: x86: Mask off reserved bits in CPUID.8000001AH
    ef7716398a78 KVM: x86: Mask off reserved bits in CPUID.80000006H
    a88998446b6d x86/syscall: Include asm/ptrace.h in syscall_wrapper header
    999cff2b6ce3 ext4: fix BUG_ON() when directory entry has invalid rec_len
    0a43c015e981 ext4: fix warning in 'ext4_da_release_space'
    ada82803a773 parisc: Avoid printing the hardware path twice
    081ff43a7786 parisc: Export iosapic_serial_irq() symbol for serial port driver
    5daf985dd0f3 parisc: Make 8250_gsc driver dependend on CONFIG_PARISC
    425fe99771bf perf/x86/intel: Fix pebs event constraints for SPR
    4613a450172e perf/x86/intel: Add Cooper Lake stepping to isolation_ucodes[]
    7de3fe6a1354 perf/x86/intel: Fix pebs event constraints for ICL
    71d6c33fe223 arm64: entry: avoid kprobe recursion
    52be536155f5 efi: random: Use 'ACPI reclaim' memory for random seed
    83b5ec7ee82d efi: random: reduce seed size to 32 bytes
    0417f70b8588 fuse: add file_modified() to fallocate
    2de8eec8afb7 capabilities: fix potential memleak on error path from vfs_getxattr_alloc()
    bd07f8067b35 tracing/histogram: Update document for KEYS_MAX size
    27b4406f9c35 tools/nolibc/string: Fix memcmp() implementation
    b5074df412bf ring-buffer: Check for NULL cpu_buffer in ring_buffer_wake_waiters()
    85f3caa95579 kprobe: reverse kp->flags when arm_kprobe failed
    d1b6a8e3414a tracing: kprobe: Fix memory leak in test_gen_kprobe/kretprobe_cmd()
    828577e0baaf tcp/udp: Make early_demux back namespacified.
    88561a66777e ftrace: Fix use-after-free for dynamic ftrace_ops
    450d7480705e btrfs: fix type of parameter generation in btrfs_get_dentry
    007058eb8292 btrfs: fix tree mod log mishandling of reallocated nodes
    336fdd295c14 btrfs: fix lost file sync on direct IO write with nowait and dsync iocb
    cff805b1518f fscrypt: fix keyring memory leak on mount failure
    e6f4fd85ef1e fscrypt: stop using keyrings subsystem for fscrypt_master_key
    3975affcf55f af_unix: Fix memory leaks of the whole sk due to OOB skb.
    4302806dbfea block, bfq: protect 'bfqd->queued' by 'bfqd->lock'
    3e4697ffdfbb Bluetooth: L2CAP: Fix attempting to access uninitialized memory
    81035e1201e2 Bluetooth: L2CAP: Fix accepting connection request for invalid SPSM
    d78ccdce662e i2c: piix4: Fix adapter not be removed in piix4_remove()
    c76ff8ae113f arm64: dts: juno: Add thermal critical trip points
    7398435e616d firmware: arm_scmi: Fix devres allocation device in virtio transport
    3653cdc21b9e firmware: arm_scmi: Make Rx chan_setup fail on memory errors
    e514d67b2364 firmware: arm_scmi: Suppress the driver's bind attributes
    4e68c5da60cd block: Fix possible memory leak for rq_wb on add_disk failure
    bf822b6980a6 arm64: dts: ls208xa: specify clock frequencies for the MDIO controllers
    f2329886e567 arm64: dts: ls1088a: specify clock frequencies for the MDIO controllers
    33fcc55dbc5b arm64: dts: lx2160a: specify clock frequencies for the MDIO controllers
    f3429a1e4924 arm64: dts: imx8: correct clock order
    de2a83186ad3 ARM: dts: imx6qdl-gw59{10,13}: fix user pushbutton GPIO offset
    cb9ce8910a6f clk: qcom: Update the force mem core bit for GPU clocks
    bdc118249698 efi/tpm: Pass correct address to memblock_reserve
    3a4d6f165eac i2c: xiic: Add platform module alias
    62eea4014a9b drm/amdgpu: set vm_update_mode=0 as default for Sienna Cichlid in SRIOV case
    7a2547cac2e0 HID: saitek: add madcatz variant of MMO7 mouse device ID
    931c97a54cd1 scsi: core: Restrict legal sdev_state transitions via sysfs
    c50ec15725e0 ACPI: APEI: Fix integer overflow in ghes_estatus_pool_init()
    8ecd1db58b7a media: v4l: subdev: Fail graciously when getting try data for NULL state
    f96ad391d054 media: meson: vdec: fix possible refcount leak in vdec_probe()
    8b785cdcd3cb media: dvb-frontends/drxk: initialize err to 0
    73dfb6421338 media: cros-ec-cec: limit msg.len to CEC_MAX_MSG_SIZE
    cbfa26936f31 media: s5p_cec: limit msg.len to CEC_MAX_MSG_SIZE
    647c12c47ee0 media: rkisp1: Zero v4l2_subdev_format fields in when validating links
    abbeb8f7271b media: rkisp1: Use correct macro for gradient registers
    03b30e5a369d media: rkisp1: Initialize color space on resizer sink and source pads
    d58b6b665c88 media: rkisp1: Don't pass the quantization to rkisp1_csm_config()
    0e501fd0f38e s390/cio: fix out-of-bounds access on cio_ignore free
    c65cc569370c s390/cio: derive cdev information only for IO-subchannels
    c64be93f1e51 s390/boot: add secure boot trailer
    1cdaca8f00a7 s390/uaccess: add missing EX_TABLE entries to __clear_user()
    509cbbdec9d7 mtd: parsers: bcm47xxpart: Fix halfblock reads
    5b8797e9dbf7 mtd: parsers: bcm47xxpart: print correct offset on read error
    2f07635876bd fbdev: stifb: Fall back to cfb_fillrect() on 32-bit HCRX cards
    154934c74f97 video/fbdev/stifb: Implement the stifb_fillrect() function
    b524b41806e9 drm/msm/hdmi: fix IRQ lifetime
    c55dd6200131 drm/msm/hdmi: Remove spurious IRQF_ONESHOT flag
    d153d468c43d vsock: fix possible infinite sleep in vsock_connectible_wait_data()
    0ed71af4d017 ipv6: fix WARNING in ip6_route_net_exit_late()
    2b45d6d0c41c net, neigh: Fix null-ptr-deref in neigh_table_clear()
    61defd6450a9 net/smc: Fix possible leaked pernet namespace in smc_init()
    de889774273f stmmac: dwmac-loongson: fix invalid mdio_node
    535b78739ae7 ibmvnic: Free rwi on reset success
    985a88bf0b27 net: mdio: fix undefined behavior in bit shift for __mdiobus_register
    aa16cac06b75 Bluetooth: L2CAP: Fix memory leak in vhci_write
    a3a7b2ac64de Bluetooth: L2CAP: fix use-after-free in l2cap_conn_del()
    cf2719a21fdb Bluetooth: virtio_bt: Use skb_put to set length
    8278a87bb1ee Bluetooth: L2CAP: Fix use-after-free caused by l2cap_reassemble_sdu
    42d20d5e2457 netfilter: ipset: enforce documented limit to prevent allocating huge memory
    f46ea5fa3320 btrfs: fix ulist leaks in error paths of qgroup self tests
    222a3d533027 btrfs: fix inode list leak during backref walking at find_parent_nodes()
    6ba3479f9e96 btrfs: fix inode list leak during backref walking at resolve_indirect_refs()
    a80634f392af isdn: mISDN: netjet: fix wrong check of device registration
    029d5b7688a2 mISDN: fix possible memory leak in mISDN_register_device()
    3e2129c67dac rose: Fix NULL pointer dereference in rose_send_frame()
    06d7596d1872 ipvs: fix WARNING in ip_vs_app_net_cleanup()
    5ee2d6b726b0 ipvs: fix WARNING in __ip_vs_cleanup_batch()
    33e7783bc07e ipvs: use explicitly signed chars
    6044791b7be7 netfilter: nf_tables: release flow rule object from commit path
    1ffe7100411a netfilter: nf_tables: netlink notifier might race to release objects
    dcc79cf735b8 net: tun: fix bugs for oversize packet when napi frags enabled
    fc4b50adb400 net: sched: Fix use after free in red_enqueue()
    ab80025ea7ac ata: pata_legacy: fix pdc20230_set_piomode()
    dede9ba02705 net: fec: fix improper use of NETDEV_TX_BUSY
    5dfdac5e3f8d nfc: nfcmrvl: Fix potential memory leak in nfcmrvl_i2c_nci_send()
    7486f5c90078 nfc: s3fwrn5: Fix potential memory leak in s3fwrn5_nci_send()
    3cba1f061bfe nfc: nxp-nci: Fix potential memory leak in nxp_nci_send()
    44bc1868a4f5 nfc: fdp: Fix potential memory leak in fdp_nci_send()
    4bef9a89f2f5 net: dsa: fall back to default tagger if we can't load the one from DT
    06f9e0b37f7e RDMA/qedr: clean up work queue on failure in qedr_alloc_resources()
    6b3d5dcb1234 RDMA/core: Fix null-ptr-deref in ib_core_cleanup()
    9f555b1584fc net: dsa: Fix possible memory leaks in dsa_loop_init()
    24641993a7dc nfs4: Fix kmemleak when allocate slot failed
    0797c85433cc NFSv4.2: Fixup CLONE dest file size for zero-length count
    d59722d088a9 SUNRPC: Fix null-ptr-deref when xps sysfs alloc failed
    dea7ef05deea NFSv4.1: We must always send RECLAIM_COMPLETE after a reboot
    7b1c2458dec1 NFSv4.1: Handle RECLAIM_COMPLETE trunking errors
    4ec017e30089 NFSv4: Fix a potential state reclaim deadlock
    e3e53c5af563 RDMA/hns: Disable local invalidate operation
    85ab79ac9413 RDMA/hns: Use hr_reg_xxx() instead of remaining roce_set_xxx()
    be16cc7abdae RDMA/hns: Remove magic number
    ba95409d6b58 IB/hfi1: Correctly move list in sc_disable()
    484d9690370e RDMA/cma: Use output interface for net_dev check
    f7d9de8a0d33 KVM: x86: Add compat handler for KVM_X86_SET_MSR_FILTER
    b7b66f13ac09 KVM: x86: Copy filter arg outside kvm_vm_ioctl_set_msr_filter()
    0c60fa7f5518 KVM: x86: Protect the unused bits in MSR exiting flags
    ad8e4868dd16 HID: playstation: add initial DualSense Edge controller support
    3a44ae4afaa5 mm/hugetlb: fix races when looking up a CONT-PTE/PMD size hugetlb page
    8576d7edeaa5 drm/amd/display: explicitly disable psr_feature_enable appropriately
    058b3a11f748 KVM: x86: Treat #DBs from the emulator as fault-like (code and DR7.GD=1)
    9ee32892c767 KVM: x86: Trace re-injected exceptions
    0c9c1306d6bd serial: ar933x: Deassert Transmit Enable on ->rs485_config()
    21d65b351691 scsi: lpfc: Rework MIB Rx Monitor debug info logic
    d70705e131d6 scsi: lpfc: Adjust CMF total bytes and rxmonitor
    9ebc6e8ad13b scsi: lpfc: Adjust bytes received vales during cmf timer interval
    793d8378b74a Linux 5.15.77
    1401e9336beb tcp/udp: Fix memory leak in ipv6_renew_options().
    b079d3775237 serial: Deassert Transmit Enable on probe in driver-specific way
    63f75fea3a72 serial: core: move RS485 configuration tasks from drivers into core
    0753069d4431 can: rcar_canfd: rcar_canfd_handle_global_receive(): fix IRQ storm on global FIFO receive
    17ff99e2240c can: rcar_canfd: fix channel specific IRQ handling for RZ/G2L
    aad798a0b39c scsi: sd: Revert "scsi: sd: Remove a local variable"
    52c2329147cf arm64: Add AMPERE1 to the Spectre-BHB affected list
    5397ea6a08a5 net: enetc: survive memory pressure without crashing
    885a454e97c4 kcm: do not sense pfmemalloc status in kcm_sendpage()
    92b4c5c3fa81 net: do not sense pfmemalloc status in skb_append_pagefrags()
    ae1b08592edf net/mlx5: Fix crash during sync firmware reset
    37ada47d019b net/mlx5: Update fw fatal reporter state on PCI handlers successful recover
    9e6523d06a09 net/mlx5: Print more info on pci error handlers
    ab3de780c176 net/mlx5: Fix possible use-after-free in async command interface
    8bbff203e306 net/mlx5e: Extend SKB room check to include PTP-SQ
    ee1c0ca1af7c net/mlx5e: Do not increment ESN when updating IPsec ESN state
    eefa97a7a001 netdevsim: remove dir in nsim_dev_debugfs_init() when creating ports dir failed
    c9589e18a60c net: broadcom: bcm4908_enet: update TX stats after actual transmission
    9711616a4908 net: broadcom: bcm4908enet: remove redundant variable bytes
    b317d53680b1 nh: fix scope used to find saddr when adding non gw nh
    2ad284ac8866 net: bcmsysport: Indicate MAC is in charge of PHY PM
    d1cfa71d5b68 net: ehea: fix possible memory leak in ehea_register_port()
    588bdd7ee48f openvswitch: switch from WARN to pr_warn
    9a1c1df9255b ALSA: aoa: Fix I2S device accounting
    e81d7826b8f4 ALSA: aoa: i2sbus: fix possible memory leak in i2sbus_add_dev()
    77a754fcfec1 net: ethernet: ave: Fix MAC to be in charge of PHY PM
    bc2518ec710e net: fec: limit register access on i.MX6UL
    f710deeea73a perf vendor events arm64: Fix incorrect Hisi hip08 L3 metrics
    eb59cb2fabd4 PM: domains: Fix handling of unavailable/disabled idle states
    bde7c2acef30 net: ksz884x: fix missing pci_disable_device() on error in pcidev_init()
    8927d90d56e4 i40e: Fix flow-type by setting GL_HASH_INSET registers
    c39de3ae5075 i40e: Fix VF hang when reset is triggered on another VF
    250bf8ab78f7 i40e: Fix ethtool rx-flow-hash setting for X722
    ad3f1d9bf162 ipv6: ensure sane device mtu in tunnels
    e2ec5bb78ca8 perf vendor events power10: Fix hv-24x7 metric events
    f9df388ed6ea media: vivid: set num_in/outputs to 0 if not supported
    4cc7d8d42047 media: videodev2.h: V4L2_DV_BT_BLANKING_HEIGHT should check 'interlaced'
    491c0959f01d media: v4l2-dv-timings: add sanity checks for blanking values
    0f83edbe4fe9 media: vivid: dev->bitmap_cap wasn't freed in all cases
    5b1fb2a28d0a media: vivid: s_fbuf: add more sanity checks
    3436e5633776 PM: hibernate: Allow hybrid sleep to work with s2idle
    3cc8c4088fae can: mcp251x: mcp251x_can_probe(): add missing unregister_candev() in error path
    a3e09eff32d8 can: mscan: mpc5xxx: mpc5xxx_can_probe(): add missing put_clock() in error path
    304a10161696 drm/amdkfd: Fix memory leak in kfd_mem_dmamap_userptr()
    2fe6b24ce299 net-memcg: avoid stalls when under memory pressure
    9b171fdcbf0e tcp: fix indefinite deferral of RTO with SACK reneging
    a85d39f14aa8 tcp: fix a signed-integer-overflow bug in tcp_add_backlog()
    2437f3c5c6a6 tcp: minor optimization in tcp_add_backlog()
    ef27df75912d net: lantiq_etop: don't free skb when returning NETDEV_TX_BUSY
    a1e18acb0246 net: fix UAF issue in nfqnl_nf_hook_drop() when ops_init() failed
    62086d1c4602 kcm: annotate data-races around kcm->rx_wait
    342d918cf9a4 kcm: annotate data-races around kcm->rx_psock
    6bb23225bb70 atlantic: fix deadlock at aq_nic_stop
    4e2cbc1f0e18 drm/i915/dp: Reset frl trained flag before restarting FRL training
    3d92ab0865f1 amd-xgbe: add the bit rate quirk for Molex cables
    75a6d1ebf8b7 amd-xgbe: fix the SFP compliance codes check for DAC cables
    98bada8fa0e3 x86/unwind/orc: Fix unreliable stack dump with gcov
    88e879c9f595 nfc: virtual_ncidev: Fix memory leak in virtual_nci_send()
    18c60b383df3 net: macb: Specify PHY PM management done by MAC
    95c22fc1e80e net: hinic: fix the issue of double release MBOX callback of VF
    6016d96a6adf net: hinic: fix the issue of CMDQ memory leaks
    e6765fe8de37 net: hinic: fix memory leak when reading function table
    62aa78a0c3e5 net: hinic: fix incorrect assignment issue in hinic_set_interrupt_cfg()
    1e0bee973ef6 net: netsec: fix error handling in netsec_register_mdio()
    7a939503fc32 tipc: fix a null-ptr-deref in tipc_topsrv_accept
    c638b520ba4b perf/x86/intel/lbr: Use setup_clear_cpu_cap() instead of clear_cpu_cap()
    4fdf6f978c6b ALSA: ac97: fix possible memory leak in snd_ac97_dev_register()
    b68873690373 ASoC: qcom: lpass-cpu: Mark HDMI TX parity register as volatile
    eca851572df5 mtd: rawnand: intel: Add missing of_node_put() in ebu_nand_probe()
    08c246c7dfef arc: iounmap() arg is volatile
    739eac37ff9c sched/core: Fix comparison in sched_group_cookie_match()
    ca7b0a10287e perf: Fix missing SIGTRAPs
    eb77474a2a21 ASoC: qcom: lpass-cpu: mark HDMI TX registers as volatile
    9b6841ab7096 KVM: selftests: Fix number of pages for memory slot in memslot_modification_stress_test
    59de8738ed43 drm/msm: Fix return type of mdp4_lvds_connector_mode_valid
    a560aeac2f2d media: atomisp: prevent integer overflow in sh_css_set_black_frame()
    32f93e460861 media: v4l2: Fix v4l2_i2c_subdev_set_name function documentation
    5a93a8288c57 net: ieee802154: fix error return code in dgram_bind()
    138a13d8f5c8 ethtool: eeprom: fix null-deref on genl_info in dump
    1c2b1d3bba2e mmc: block: Remove error check of hw_reset on reset
    0b0d169723f4 Revert "scsi: lpfc: SLI path split: Refactor lpfc_iocbq"
    7a0fce24de60 Revert "scsi: lpfc: SLI path split: Refactor fast and slow paths to native SLI4"
    7a36c9de4324 Revert "scsi: lpfc: SLI path split: Refactor SCSI paths"
    eb8be2dbfbb4 Revert "scsi: lpfc: Fix locking for lpfc_sli_iocbq_lookup()"
    065bf71a8a53 Revert "scsi: lpfc: Fix element offset in __lpfc_sli_release_iocbq_s4()"
    97dc9076ea5e Revert "scsi: lpfc: Resolve some cleanup issues following SLI path refactoring"
    b32b766be44e s390/pci: add missing EX_TABLE entries to __pcistg_mio_inuser()/__pcilg_mio_inuser()
    1ad7213fcf49 s390/futex: add missing EX_TABLE entry to __futex_atomic_op()
    ae9398e837b9 perf auxtrace: Fix address filter symbol name match for modules
    14009ada5712 ARC: mm: fix leakage of memory allocated for PTE
    eb9ed3343ca7 pinctrl: Ingenic: JZ4755 bug fixes
    94d2643df1e7 kernfs: fix use-after-free in __kernfs_remove
    f1204dfc4cd7 counter: microchip-tcb-capture: Handle Signal1 read and Synapse
    6fb0106c64ee mmc: sdhci-esdhc-imx: Propagate ESDHC_FLAG_HS400* only on 8bit bus
    73e3901e7029 mmc: sdhci-pci-core: Disable ES for ASUS BIOS on Jasper Lake
    1e8cd93ae536 mmc: core: Fix kernel panic when remove non-standard SDIO card
    02e51e7cd1d3 mmc: sdhci_am654: 'select', not 'depends' REGMAP_MMIO
    4c365a0c21aa coresight: cti: Fix hang in cti_disable_hw()
    b32775e03969 drm/msm/dp: fix IRQ lifetime
    b48949ab451e drm/msm/hdmi: fix memory corruption with too many bridges
    9f035d1fb306 drm/msm/dsi: fix memory corruption with too many bridges
    986a89b3717e drm/amdgpu: disallow gfxoff until GC IP blocks complete s2idle resume
    a2f0934e6bdb scsi: qla2xxx: Use transport-defined speed mask for supported_speeds
    2b1a3172ee4d mac802154: Fix LQI recording
    46b4b1e11e52 exec: Copy oldsighand->action under spin-lock
    265b6fb780f5 fs/binfmt_elf: Fix memory leak in load_elf_binary()
    24030742a7b8 cpufreq: intel_pstate: hybrid: Use known scaling factor for P-cores
    3423a3417f4f cpufreq: intel_pstate: Read all MSRs on the target CPU
    cc6a7249842f fbdev: smscufx: Fix several use-after-free bugs
    1a8b22e3f394 iio: adxl372: Fix unsafe buffer attributes
    2f08cad21366 iio: temperature: ltc2983: allocate iio channels once
    1bfe97f49785 iio: light: tsl2583: Fix module unloading
    569709540e12 tools: iio: iio_utils: fix digit calculation
    c892a81c7424 xhci: Remove device endpoints from bandwidth list when freeing the device
    dfacb5c7f0a9 xhci-pci: Set runtime PM as default policy on all xHC 1.2 or later devices
    64058af657ba xhci: Add quirk to reset host back to default state at shutdown
    022f21e850e9 mtd: rawnand: marvell: Use correct logic for nand-keep-config
    f90897c0f634 usb: xhci: add XHCI_SPURIOUS_SUCCESS to ASM1042 despite being a V0.96 controller
    a0c54d5152d5 usb: bdc: change state when port disconnected
    e0fd70ab4815 usb: dwc3: gadget: Don't set IMI for no_interrupt
    ad538aea64dd usb: dwc3: gadget: Stop processing more requests on IMI
    f2f53be61714 usb: gadget: uvc: fix sg handling during video encode
    80ff4ef77737 usb: gadget: uvc: fix sg handling in error case
    555011f6b27b USB: add RESET_RESUME quirk for NVIDIA Jetson devices in RCM
    311428871ba1 ALSA: rme9652: use explicitly signed char
    fa8b39c7ed82 ALSA: au88x0: use explicitly signed char
    8af82d330d5d ALSA: usb-audio: Add quirks for M-Audio Fast Track C400/600
    259cb4dee1bb ALSA: Use del_timer_sync() before freeing timer
    33ddee2b95ab can: kvaser_usb: Fix possible completions during init_completion
    86da269c7567 can: j1939: transport: j1939_session_skb_drop_old(): spin_unlock_irqrestore() before kfree_skb()
    ead049562758 NFSv4: Add an fattr allocation to _nfs4_discover_trunking()
    eb1fe9600b86 NFSv4: Fix free of uninitialized nfs4_label on referral lookup.

(From OE-Core rev: 606df5353ff52bb46a61b2192aaf7830972c3395)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 7514e04bf4dae3d3bbd20bb21b442f273f8d6c73)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-07 15:02:50 +00:00
Bruce Ashfield
3717d8d0d3 linux-yocto/5.15: update to v5.15.76
Updating  to the latest korg -stable release that comprises
the following commits:

    4f5365f77018 Linux 5.15.76
    33fc9e26b7cb mm: /proc/pid/smaps_rollup: fix no vma's null-deref
    b9d8cbe90a0f mmc: core: Add SD card quirk for broken discard
    0ee2f0567a56 Makefile.debug: re-enable debug info for .S files
    117825e9bbb1 x86/Kconfig: Drop check for -mabi=ms for CONFIG_EFI_STUB
    0983205085fa ACPI: video: Force backlight native for more TongFang devices
    289b56715ba6 perf: Skip and warn on unknown format 'configN' attrs
    9d912a385368 mmc: sdhci-tegra: Use actual clock rate for SW tuning correction
    7aeda81191fd tracing: Do not free snapshot if tracer is on cmdline
    57252e7bd491 tracing: Simplify conditional compilation code in tracing_set_tracer()
    20bc6d23f7f6 ksmbd: fix incorrect handling of iterate_dir
    3c8cfcaa2d9a ksmbd: handle smb2 query dir request for OutputBufferLength that is too small
    8754fa5dbc6e arm64: mte: move register initialization to C
    ea7be82fd7e1 fs: dlm: fix invalid derefence of sb_lvbptr
    0365d6af75f9 iommu/vt-d: Clean up si_domain in the init_dmars() error path
    5c95d0c9d0eb iommu/vt-d: Allow NVS regions in arch_rmrr_sanity_check()
    209740fd132e net: phy: dp83822: disable MDI crossover status change interrupt
    ce1234573d18 net: sched: fix race condition in qdisc_graft()
    91f8f5342bee net: hns: fix possible memory leak in hnae_ae_register()
    50c31fa95230 wwan_hwsim: fix possible memory leak in wwan_hwsim_dev_new()
    d2fc83a6b55e sfc: include vport_id in filter spec hash and equal()
    c2e1e59d59fa net: sched: sfb: fix null pointer access issue when sfb_init() fails
    34f2a4eedc8e net: sched: delete duplicate cleanup of backlog and qlen
    154f4c06d9db net: sched: cake: fix null pointer access issue when cake_init() fails
    5efed7578dd4 nvmet: fix workqueue MEM_RECLAIM flushing dependency
    2f2b84b02088 nvme-hwmon: kmalloc the NVME SMART log buffer
    66c56b232839 nvme-hwmon: consistently ignore errors from nvme_hwmon_init
    d77f6908f9ce netfilter: nf_tables: relax NFTA_SET_ELEM_KEY_END set flags requirements
    efa9dd7e679e ionic: catch NULL pointer issue on reconfig
    35ece858660e net: hsr: avoid possible NULL deref in skb_clone()
    e326df21da25 dm: remove unnecessary assignment statement in alloc_dev()
    847301f0ee1c cifs: Fix xid leak in cifs_ses_add_channel()
    8905d13b9ede cifs: Fix xid leak in cifs_flock()
    27cfd3afaab0 cifs: Fix xid leak in cifs_copy_file_range()
    593d877c39aa cifs: Fix xid leak in cifs_create()
    a8df9d0428c7 udp: Update reuse->has_conns under reuseport_lock.
    9749595feb33 scsi: lpfc: Fix memory leak in lpfc_create_port()
    b9122e0e0ea8 net: phylink: add mac_managed_pm in phylink_config structure
    412db9b06d3c net: phy: dp83867: Extend RX strap quirk for SGMII mode
    5ce613051994 net/atm: fix proc_mpc_write incorrect return value
    0eb17faedce7 sfc: Change VF mac via PF as first preference if available.
    0f58940ca3c1 HID: magicmouse: Do not set BTN_MOUSE on double report
    94a171c982b8 i40e: Fix DMA mappings leak
    dbc01c0a4e20 tipc: fix an information leak in tipc_topsrv_kern_subscr
    b294cad6f02e tipc: Fix recognition of trial period
    6161c364e378 ACPI: extlog: Handle multiple records
    40e5fceddfd5 drm/vc4: Add module dependency on hdmi-codec
    6c5041a10324 btrfs: fix processing of delayed tree block refs during backref walking
    af67578d565c btrfs: fix processing of delayed data refs during backref walking
    c439cafce8cf x86/topology: Fix duplicated core ID within a package
    d31f4bc22596 x86/topology: Fix multiple packages shown on a single-package system
    fcc96e89b3ff media: venus: dec: Handle the case where find_format fails
    b22b4823a0a5 media: mceusb: set timeout to at least timeout provided
    5265cc1202a3 media: ipu3-imgu: Fix NULL pointer dereference in active selection access
    1e4e71f9e197 KVM: arm64: vgic: Fix exit condition in scan_its_table()
    5bf2fda26a72 kvm: Add support for arch compat vm ioctls
    112a005d1ded mm,hugetlb: take hugetlb_lock before decrementing h->resv_huge_pages
    2d508b4e6536 drm/amdgpu: fix sdma doorbell init ordering on APUs
    b5606e3ab1f7 cpufreq: qcom: fix memory leak in error path
    d866f5982c15 x86/resctrl: Fix min_cbm_bits for AMD
    8fbe13de1cc7 ata: ahci: Match EM_MAX_SLOTS with SATA_PMP_MAX_PORTS
    5d6a037b3a94 ata: ahci-imx: Fix MODULE_ALIAS
    30cf0dee372b hwmon/coretemp: Handle large core ID value
    2f7171465f26 x86/microcode/AMD: Apply the patch early on every logical thread
    93d7e2b47a72 i2c: qcom-cci: Fix ordering of pm_runtime_xx and i2c_add_adapter
    14d260f94ff8 cpufreq: qcom: fix writes in read-only memory region
    3006766d247b selinux: enable use of both GFP_KERNEL and GFP_ATOMIC in convert_context()
    1b31cb0065e2 ocfs2: fix BUG when iput after ocfs2_mknod fails
    e469db818ec9 ocfs2: clear dinode links count in case of error
    ded9d535be0d btrfs: enhance unsupported compat RO flags handling
    537412c54712 perf/x86/intel/pt: Relax address filter validation
    8ddc58e0e312 arm64: errata: Remove AES hwcap for COMPAT tasks
    738515cf8bb4 usb: gadget: uvc: improve sg exit condition
    db11d8c72a5d usb: gadget: uvc: giveback vb2 buffer on req complete
    aee340dccf5a usb: gadget: uvc: rework uvcg_queue_next_buffer to uvcg_complete_buffer
    2f54ce7392d7 usb: gadget: uvc: use on returned header len in video_encode_isoc_sg
    d80db2f1450c usb: gadget: uvc: consistently use define for headerlen
    f9681a67503e arm64/mm: Consolidate TCR_EL1 fields
    5b20aacff7ad r8152: add PID for the Lenovo OneLink+ Dock
    bd8a595958a5 Linux 5.15.75
    b6e2c54be37d io-wq: Fix memory leak in worker creation
    7c359e28492f gcov: support GCC 12.1 and newer compilers
    8418c1672c1f thermal: intel_powerclamp: Use first online CPU as control_cpu
    55c824b62067 ext4: continue to expand file system when the target size doesn't reach
    0e63de6d7e4c lib/Kconfig.debug: Add check for non-constant .{s,u}leb128 support to DWARF5
    84cd0b20fada Kconfig.debug: add toolchain checks for DEBUG_INFO_DWARF_TOOLCHAIN_DEFAULT
    371aaf6b48f5 Kconfig.debug: simplify the dependency of DEBUG_INFO_DWARF4/5
    e1591557e3a0 drm/amd/display: Fix build breakage with CONFIG_DEBUG_FS=n
    34f31a2b6679 net/ieee802154: don't warn zero-sized raw_sendmsg()
    de904d0fe1cb Revert "net/ieee802154: reject zero-sized raw_sendmsg()"
    9c65eef9d6c9 net: ethernet: ti: davinci_mdio: fix build for mdio bitbang uses
    d7eadffce032 blk-wbt: fix that 'rwb->wc' is always set to 1 in wbt_init()
    28787ff9fbea ALSA: usb-audio: Fix last interface check for registration
    b8989e95d74e net: ieee802154: return -EINVAL for unknown addr type
    0db2efb3bff8 mm: hugetlb: fix UAF in hugetlb_handle_userfault
    98aada6e2278 io_uring/rw: fix unexpected link breakage
    d6b7efc722a2 io_uring/rw: fix error'ed retry return values
    e857457c6f90 io_uring/rw: fix short rw error handling
    cd148d4e3183 io_uring: correct pinned_vm accounting
    813d8fe5d303 io_uring/af_unix: defer registered files gc to io_uring release
    c69a2324fc6b perf intel-pt: Fix segfault in intel_pt_print_info() with uClibc
    e81bf40b280b clk: bcm2835: Round UART input clock up
    da17cbb229af clk: bcm2835: Make peripheral PLLC critical
    20b8c456df58 usb: idmouse: fix an uninit-value in idmouse_open
    ec8adf767e1c nvmet-tcp: add bounds check on Transfer Tag
    1c6432884010 nvme: copy firmware_rev on each init
    b9b5560b342e ext2: Use kvmalloc() for group descriptor array
    8c067a3051cd scsi: tracing: Fix compile error in trace_array calls when TRACING is disabled
    39bef9c6a91b staging: rtl8723bs: fix a potential memory leak in rtw_init_cmd_priv()
    b4573a2bad3c staging: rtl8723bs: fix potential memory leak in rtw_init_drv_sw()
    eb24d93e3e01 Revert "usb: storage: Add quirk for Samsung Fit flash"
    3a38985d8bfd usb: dwc3: core: Enable GUCTL1 bit 10 for fixing termination error after resume bug
    9d4f84a15f9c arm64: dts: imx8mp: Add snps,gfladj-refclk-lpm-sel quirk to USB nodes
    3c84c7f592c4 usb: musb: Fix musb_gadget.c rxstate overflow bug
    fcd594da0b59 usb: host: xhci: Fix potential memory leak in xhci_alloc_stream_info()
    9e86dffd0b02 md/raid5: Wait for MD_SB_CHANGE_PENDING in raid5d
    f8e80792c1a8 eventfd: guard wake_up in eventfd fs calls as well
    c61786dc727d HID: roccat: Fix use-after-free in roccat_read()
    f7f425d61de9 soundwire: intel: fix error handling on dai registration issues
    093a5463aeec soundwire: cadence: Don't overwrite msg->buf during write commands
    1b4ed920b2ff bcache: fix set_at_max_writeback_rate() for multiple attached devices
    eecb5ccc84a1 ata: libahci_platform: Sanity check the DT child nodes number
    70b2adb1d698 blk-throttle: prevent overflow while calculating wait time
    ff8551d411f1 staging: vt6655: fix potential memory leak
    7c8bc374659d power: supply: adp5061: fix out-of-bounds read in adp5061_get_chg_type()
    3d6946180734 iommu/arm-smmu-v3: Make default domain type of HiSilicon PTT device to identity
    c0d73be0af8c nbd: Fix hung when signal interrupts nbd_start_device_ioctl()
    9d54de866062 scsi: 3w-9xxx: Avoid disabling device if failing to enable it
    d68da10b0cce dmaengine: ti: k3-udma: Reset UDMA_CHAN_RT byte counters to prevent overflow
    518a2a1cc361 usb: host: xhci-plat: suspend/resume clks for brcm
    f002aa7c0ac5 usb: host: xhci-plat: suspend and resume clocks
    6bcd745c87a0 clk: zynqmp: pll: rectify rate rounding in zynqmp_pll_round_rate
    5c32cbf6ccea media: platform: fix some double free in meson-ge2d and mtk-jpeg and s5p-mfc
    6f21976095c1 media: cx88: Fix a null-ptr-deref bug in buffer_prepare()
    0a07b13af04d clk: zynqmp: Fix stack-out-of-bounds in strncpy`
    3680442cbaee ARM: 9242/1: kasan: Only map modules if CONFIG_KASAN_VMALLOC=n
    4a89c0befca7 btrfs: don't print information about space cache or tree every remount
    39a07058c762 btrfs: scrub: try to fix super block errors
    f3857dd7c03a btrfs: dump extra info if one free space cache has more bitmaps than it should
    d3c6d5be46de arm64: dts: imx8mq-librem5: Add bq25895 as max17055's power supply
    82046b6a84e0 kselftest/arm64: Fix validatation termination record after EXTRA_CONTEXT
    35365417333d ARM: dts: imx6sx: add missing properties for sram
    602813650cbc ARM: dts: imx6sll: add missing properties for sram
    6a12e1e23cb1 ARM: dts: imx6sl: add missing properties for sram
    8c24dc621bb7 ARM: dts: imx6qp: add missing properties for sram
    47666b9a11a1 ARM: dts: imx6dl: add missing properties for sram
    19fe40c5185d ARM: dts: imx6q: add missing properties for sram
    9361ba779152 ARM: dts: imx7d-sdb: config the max pressure for tsc2046
    0f90671ff93f drm/amd/display: Remove interface for periodic interrupt 1
    88fd06740659 drm/dp: Don't rewrite link config when setting phy test pattern
    668806a8268b mmc: sdhci-msm: add compatible string check for sdm670
    587c7da87721 drm/meson: explicitly remove aggregate driver at module unload time
    d76ff04a72f9 drm/meson: reorder driver deinit sequence to fix use-after-free bug
    d894db35617f drm/amdgpu: fix initial connector audio value
    e3675f688d3b ASoC: SOF: pci: Change DMI match info to support all Chrome platforms
    f16e1b7b3968 platform/x86: msi-laptop: Change DMI match / alias strings to fix module autoloading
    39da49ffa2f3 platform/chrome: cros_ec: Notify the PM of wake events during resume
    74636047845c drm: panel-orientation-quirks: Add quirk for Anbernic Win600
    2810061452f9 drm/vc4: vec: Fix timings for VEC modes
    0506c4eae9a9 ALSA: usb-audio: Register card at the last interface
    39d7a81bbb7a drm: bridge: dw_hdmi: only trigger hotplug event on link change
    dfbed8c92eb8 udmabuf: Set ubuf->sg = NULL if the creation of sg table fails
    a47d92c74b1e drm/amd/display: fix overflow on MIN_I64 definition
    a29f7427041a gpu: lontium-lt9611: Fix NULL pointer dereference in lt9611_connector_init()
    5ff7bec678ca drm/komeda: Fix handling of atomic commits in the atomic_commit_tail hook
    ca163e389f0a drm: Prevent drm_copy_field() to attempt copying a NULL pointer
    df5ac9392648 drm: Use size_t type for len variable in drm_copy_field()
    5ab84b1596b2 drm/nouveau/nouveau_bo: fix potential memory leak in nouveau_bo_alloc()
    b3179865cf7e r8152: Rate limit overflow messages
    d1e894f950ad Bluetooth: L2CAP: Fix user-after-free
    124b7c773271 net: If sock is dead don't access sock's sk_wq in sk_stream_wait_memory
    5b94d48898d9 hwmon: (sht4x) do not overflow clamping operation on 32-bit platforms
    a269c3e39087 wifi: rt2x00: correctly set BBP register 86 for MT7620
    b5e6ada5a5d6 wifi: rt2x00: set SoC wmac clock register
    357c89074ae6 wifi: rt2x00: set VGC gain for both chains of MT7620
    92e2e04da567 wifi: rt2x00: set correct TX_SW_CFG1 MAC register for MT7620
    4304b8e07579 wifi: rt2x00: don't run Rt5592 IQ calibration on MT7620
    4a5eab200e43 can: bcm: check the result of can_send() in bcm_can_tx()
    3423a50fa018 Bluetooth: hci_sysfs: Fix attempting to call device_add multiple times
    3ac837cef1fb Bluetooth: L2CAP: initialize delayed works at l2cap_chan_create()
    af46b2b9b096 wifi: mt76: mt7921: reset msta->airtime_ac while clearing up hw value
    e33da263e965 regulator: core: Prevent integer underflow
    d58c8781c0d7 Bluetooth: btintel: Mark Intel controller to support LE_STATES quirk
    232d59eca07f wifi: brcmfmac: fix use-after-free bug in brcmf_netdev_start_xmit()
    37f15edba22d iavf: Fix race between iavf_close and iavf_reset_task
    03155680191e xfrm: Update ipcomp_scratches with NULL when freed
    716c526d666d thunderbolt: Add back Intel Falcon Ridge end-to-end flow control workaround
    b1b4144508ad wifi: ath9k: avoid uninit memory read in ath9k_htc_rx_msg()
    839f563c5dc5 x86/mce: Retrieve poison range from hardware
    1663629bc3ff tcp: annotate data-race around tcp_md5sig_pool_populated
    7b03296b4f7a openvswitch: Fix overreporting of drops in dropwatch
    ffd7a1dcae9a openvswitch: Fix double reporting of drops in dropwatch
    d449d00a8dce net: ethernet: ti: davinci_mdio: Add workaround for errata i2329
    624f03a027f2 ice: set tx_tstamps when creating new Tx rings via ethtool
    2e52d858de3a bpftool: Clear errno after libcap's checks
    75995ce1c926 wifi: brcmfmac: fix invalid address access when enabling SCAN log level
    83b94969751a NFSD: fix use-after-free on source server when doing inter-server copy
    118dc74b2bc0 NFSD: Return nfserr_serverfault if splice_ok but buf->pages have data
    066b1302f2a9 x86/entry: Work around Clang __bdos() bug
    06c56c9d5da8 ACPI: x86: Add a quirk for Dell Inspiron 14 2-in-1 for StorageD3Enable
    6733222f2cc9 ARM: decompressor: Include .data.rel.ro.local
    561490843445 thermal: intel_powerclamp: Use get_cpu() instead of smp_processor_id() to avoid crash
    139bbbd01114 powercap: intel_rapl: fix UBSAN shift-out-of-bounds issue
    a1387ae83e97 MIPS: BCM47XX: Cast memcmp() of function to (void *)
    c2790fede920 cpufreq: intel_pstate: Add Tigerlake support in no-HWP mode
    30eca146c89d ACPI: tables: FPDT: Don't call acpi_os_map_memory() on invalid phys address
    5374638222d0 ACPI: video: Add Toshiba Satellite/Portege Z830 quirk
    7ed95b080334 rcu-tasks: Convert RCU_LOCKDEP_WARN() to WARN_ONCE()
    cf38a05eb1d0 rcu: Back off upon fill_page_cache_func() allocation failure
    3e2d8b89f031 rcu: Avoid triggering strict-GP irq-work when RCU is idle
    27d3e646dd83 fs: dlm: fix race in lowcomms
    b6b87460f4eb selftest: tpm2: Add Client.__del__() to close /dev/tpm* handle
    497d736784e5 f2fs: fix to account FS_CP_DATA_IO correctly
    fb1dcc2a9e4b f2fs: fix race condition on setting FI_NO_EXTENT flag
    6ddbd411a00a ACPI: APEI: do not add task_work to kernel thread to avoid memory leak
    21f1ba52b88c thermal/drivers/qcom/tsens-v0_1: Fix MSM8939 fourth sensor hw_id
    172c8a24fc83 crypto: cavium - prevent integer overflow loading firmware
    12acfa1059ad crypto: marvell/octeontx - prevent integer overflows
    c963ce2fa05d kbuild: rpm-pkg: fix breakage when V=1 is used
    059ce6b68b76 kbuild: remove the target in signal traps when interrupted
    1e9c23db31b6 tracing/osnoise: Fix possible recursive locking in stop_per_cpu_kthreads
    84795de93e1f tracing: kprobe: Make gen test module work in arm and riscv
    867fce09aa20 tracing: kprobe: Fix kprobe event gen test module on exit
    a9990f24adfe iommu/iova: Fix module config properly
    f0cac6cc02a9 cifs: return correct error in ->calc_signature()
    1f1ab76e2515 crypto: qat - fix DMA transfer direction
    393307b99aac crypto: inside-secure - Change swab to swab32
    93538944ab0b crypto: ccp - Release dma channels before dmaengine unrgister
    779a9930f3e1 crypto: akcipher - default implementation for setting a private key
    0c7043a5b5c3 iommu/omap: Fix buffer overflow in debugfs
    046803b74d51 cgroup/cpuset: Enable update_tasks_cpumask() on top_cpuset
    771d8aa02dac crypto: hisilicon/qm - fix missing put dfx access
    9bf3ec61a246 crypto: qat - fix default value of WDT timer
    3bfc220e5ce3 hwrng: imx-rngc - Moving IRQ handler registering after imx_rngc_irq_mask_clear()
    507128a0e32d cgroup: Honor caller's cgroup NS when resolving path
    8ffe511b7de7 hwrng: arm-smccc-trng - fix NO_ENTROPY handling
    272093471305 crypto: hisilicon/zip - fix mismatch in get/set sgl_sge_nr
    e0b4ebf59834 crypto: sahara - don't sleep when in softirq
    8484023b5763 powerpc/pseries/vas: Pass hw_cpu_id to node associativity HCALL
    7f536a8cb62d powerpc/kprobes: Fix null pointer reference in arch_prepare_kprobe()
    1f98f8f43541 powerpc: Fix SPE Power ISA properties for e500v1 platforms
    72c5b7110fba powerpc/64s: Fix GENERIC_CPU build flags for PPC970 / G5
    399afe92f640 x86/hyperv: Fix 'struct hv_enlightened_vmcs' definition
    592b302d8bf6 powerpc: Fix fallocate and fadvise64_64 compat parameter combination
    61af84b3db81 powerpc/powernv: add missing of_node_put() in opal_export_attrs()
    5be9cb6c06fa powerpc/pci_dn: Add missing of_node_put()
    5a13d3f1af1c powerpc/sysdev/fsl_msi: Add missing of_node_put()
    b0c0490b3c57 powerpc/math_emu/efp: Include module.h
    93379dc92de0 powerpc/configs: Properly enable PAPR_SCM in pseries_defconfig
    25a4fb0e1a76 mailbox: bcm-ferxrm-mailbox: Fix error check for dma_map_sg
    b8fcd9ab0f65 mailbox: mpfs: account for mbox offsets while sending
    ba2264359525 mailbox: mpfs: fix handling of the reg property
    fad007a315fe clk: ast2600: BCLK comes from EPLL
    3441076f83aa clk: ti: dra7-atl: Fix reference leak in of_dra7_atl_clk_probe
    9209e6bab75d clk: imx: scu: fix memleak on platform_device_add() fails
    bdf72f2d649b clk: bcm2835: fix bcm2835_clock_rate_from_divisor declaration
    e338131e980b clk: baikal-t1: Add SATA internal ref clock buffer
    35b766027580 clk: baikal-t1: Add shared xGMAC ref/ptp clocks internal parent
    b2db8b2c5391 clk: baikal-t1: Fix invalid xGMAC PTP clock divider
    435a8a39c6ae clk: vc5: Fix 5P49V6901 outputs disabling when enabling FOD
    b0bc75fe6775 spmi: pmic-arb: correct duplicate APID to PPID mapping logic
    faabbb103d60 usb: mtu3: fix failed runtime suspend in host only mode
    57f66534a41a dmaengine: ioat: stop mod_timer from resurrecting deleted timer in __cleanup()
    8aa96c5bc393 clk: mediatek: mt8183: mfgcfg: Propagate rate changes to parent
    2dafc5afd9d6 mfd: sm501: Add check for platform_driver_register()
    d43d93dbd8aa mfd: fsl-imx25: Fix check for platform_get_irq() errors
    b940bb3c8154 mfd: lp8788: Fix an error handling path in lp8788_irq_init() and lp8788_irq_init()
    0715005c483e mfd: lp8788: Fix an error handling path in lp8788_probe()
    aec1f073f91f mfd: fsl-imx25: Fix an error handling path in mx25_tsadc_setup_irq()
    53bfc1c3c751 mfd: intel_soc_pmic: Fix an error handling path in intel_soc_pmic_i2c_probe()
    2f921d62c236 fsi: core: Check error number after calling ida_simple_get
    041c79f6aefb RDMA/rxe: Fix resize_finish() in rxe_queue.c
    959d4ee095e9 clk: qcom: gcc-sm6115: Override default Alpha PLL regs
    8e556f557368 clk: qcom: apss-ipq6018: mark apcs_alias0_core_clk as critical
    a26b0658751b scsi: iscsi: iscsi_tcp: Fix null-ptr-deref while calling getpeername()
    e87fb1fcf88f scsi: iscsi: Run recv path from workqueue
    c2af03a7c1b5 scsi: iscsi: Add recv workqueue helpers
    d6aafc21bef1 scsi: iscsi: Rename iscsi_conn_queue_work()
    e45a1516d293 scsi: libsas: Fix use-after-free bug in smp_execute_task_sg()
    6a54f769748b serial: 8250: Fix restoring termios speed after suspend
    a5dba0933834 firmware: google: Test spinlock on panic path to avoid lockups
    60d14575d0ba slimbus: qcom-ngd-ctrl: allow compile testing without QCOM_RPROC_COMMON
    f19e5b7df545 staging: vt6655: fix some erroneous memory clean-up loops
    433c33c554d7 phy: qualcomm: call clk_disable_unprepare in the error handling
    c4293def8860 tty: serial: fsl_lpuart: disable dma rx/tx use flags in lpuart_dma_shutdown
    a91a3c2d8db8 serial: 8250: Toggle IER bits on only after irq has been set up
    6be8e565a4a6 drivers: serial: jsm: fix some leaks in probe
    1d05df7757f4 usb: gadget: function: fix dangling pnp_string in f_printer.c
    ed2c66b75280 xhci: Don't show warning for reinit on known broken suspend
    4d7d8f5cb284 IB: Set IOVA/LENGTH on IB_MR in core/uverbs layers
    e221b4f16e9e RDMA/cm: Use SLID in the work completion as the DLID in responder side
    7a37c58ee72e md/raid5: Remove unnecessary bio_put() in raid5_read_one_chunk()
    b467d9460ec2 md/raid5: Ensure stripe_fill happens on non-read IO with journal
    5d8259c9d191 md: Replace snprintf with scnprintf
    9e92d5ca5424 mtd: rawnand: meson: fix bit map use in meson_nfc_ecc_correct()
    058833dbeb8d ata: fix ata_id_has_dipm()
    dad910a6d4a5 ata: fix ata_id_has_ncq_autosense()
    21faddeff7bf ata: fix ata_id_has_devslp()
    204cc767dcb5 ata: fix ata_id_sense_reporting_enabled() and ata_id_has_sense_reporting()
    5c75d608fad5 RDMA/siw: Fix QP destroy to wait for all references dropped.
    308cd50f174c RDMA/siw: Always consume all skbuf data in sk_data_ready() upcall.
    e58a0b9100ba RDMA/srp: Fix srp_abort()
    dc9e4ef6b072 RDMA/irdma: Align AE id codes to correct flush code and event
    84ce1a8e36bb mtd: rawnand: fsl_elbc: Fix none ECC mode
    be424a7d5374 mtd: rawnand: intel: Remove undocumented compatible string
    445395900b64 mtd: rawnand: intel: Read the chip-select line from the correct OF node
    cbbf9cca47ac phy: phy-mtk-tphy: fix the phy type setting issue
    e4be7c9495c8 phy: amlogic: phy-meson-axg-mipi-pcie-analog: Hold reference returned by of_get_parent()
    88263152ff56 mtd: devices: docg3: check the return value of devm_ioremap() in the probe
    a0e4ac698891 clk: qcom: sm6115: Select QCOM_GDSC
    aecb632674b7 dyndbg: drop EXPORTed dynamic_debug_exec_queries
    0d4421f2cb54 dyndbg: let query-modname override actual module name
    0c0d9f38b087 dyndbg: fix module.dyndbg handling
    49d85932f7d2 dyndbg: fix static_branch manipulation
    7cb9b20941e1 dmaengine: hisilicon: Add multi-thread support for a DMA channel
    b88630d9aac0 dmaengine: hisilicon: Fix CQ head update
    e84aeeafe8b3 dmaengine: hisilicon: Disable channels when unregister hisi_dma
    b94605f5cb99 fpga: prevent integer overflow in dfl_feature_ioctl_set_irq()
    11bd8bbdf8f6 misc: ocxl: fix possible refcount leak in afu_ioctl()
    c23c5e184550 RDMA/rxe: Fix the error caused by qp->sk
    f2f405af70e6 RDMA/rxe: Fix "kernel NULL pointer dereference" error
    2ea7caa96846 media: xilinx: vipp: Fix refcount leak in xvip_graph_dma_init
    23624abbc9c6 media: uvcvideo: Use entity get_cur in uvc_ctrl_set
    6c5da92103bd media: uvcvideo: Fix memory leak in uvc_gpio_parse
    4e2042f1adc7 media: meson: vdec: add missing clk_disable_unprepare on error in vdec_hevc_start()
    aeffca434426 tty: xilinx_uartps: Fix the ignore_status
    a8d772c7b853 media: exynos4-is: fimc-is: Add of_node_put() when breaking out of loop
    6225501072d3 HSI: omap_ssi_port: Fix dma_map_sg error check
    691f23a8475f HSI: omap_ssi: Fix refcount leak in ssi_probe
    d6e750535b46 clk: tegra20: Fix refcount leak in tegra20_clock_init
    e7a57fb92af5 clk: tegra: Fix refcount leak in tegra114_clock_init
    417ed4432b1b clk: tegra: Fix refcount leak in tegra210_clock_init
    ca5f338ef165 clk: sprd: Hold reference returned by of_get_parent()
    49343bdf95eb clk: berlin: Add of_node_put() for of_get_parent()
    857b719bede4 clk: qoriq: Hold reference returned by of_get_parent()
    a8cbce0305b2 clk: oxnas: Hold reference returned by of_get_parent()
    e0001a565c16 clk: meson: Hold reference returned by of_get_parent()
    e900ec4c4f74 usb: common: debug: Check non-standard control requests
    c11f48764c8b RDMA/mlx5: Don't compare mkey tags in DEVX indirect mkey
    cd35ad9a7d66 iio: magnetometer: yas530: Change data type of hard_offsets to signed
    23fafc2e2cf6 iio: ABI: Fix wrong format of differential capacitance channel ABI.
    8169da520e8f iio: inkern: fix return value in devm_of_iio_channel_get_by_name()
    504e8807fe5f iio: inkern: only release the device node when done with it
    b0d4fcc3ecb8 iio: adc: at91-sama5d2_adc: disable/prepare buffer on suspend/resume
    5db9b840ac88 iio: adc: at91-sama5d2_adc: lock around oversampling and sample freq
    c5c63736d2a1 iio: adc: at91-sama5d2_adc: check return status for pressure and touch
    5f1654a0e520 iio: adc: at91-sama5d2_adc: fix AT91_SAMA5D2_MR_TRACKTIM_MAX
    017cf3b0a628 ARM: dts: exynos: fix polarity of VBUS GPIO of Origen
    6c93b683ceda arm64: ftrace: fix module PLTs with mcount
    bbf64eb10273 ext4: don't run ext4lazyinit for read-only filesystems
    7a00a2320752 ARM: Drop CMDLINE_* dependency on ATAGS
    2af04fe87ea5 ARM: dts: exynos: correct s5k6a3 reset polarity on Midas family
    2134214bc403 arm64: dts: ti: k3-j7200: fix main pinmux range
    7247a1d7a46a soc/tegra: fuse: Drop Kconfig dependency on TEGRA20_APB_DMA
    4f7892f24281 ia64: export memory_add_physaddr_to_nid to fix cxl build error
    2ef01657b2d6 ARM: dts: kirkwood: lsxl: remove first ethernet port
    bf7caa3c5caf ARM: dts: kirkwood: lsxl: fix serial line
    42ce4c73a468 ARM: dts: turris-omnia: Fix mpp26 pin name and comment
    96d8f2b43e72 ARM: dts: imx6qdl-kontron-samx6i: hook up DDC i2c bus
    08ada28d1def soc: qcom: smem_state: Add refcounting for the 'state->of_node'
    96e0028debdd soc: qcom: smsm: Fix refcount leak bugs in qcom_smsm_probe()
    a29b6eb959bd locks: fix TOCTOU race when granting write lease
    7e053784c4c7 memory: of: Fix refcount leak bug in of_lpddr3_get_ddr_timings()
    2680690f9ce4 memory: of: Fix refcount leak bug in of_get_ddr_timings()
    566b143aa511 memory: pl353-smc: Fix refcount leak bug in pl353_smc_probe()
    10df962300c2 ALSA: hda/hdmi: Don't skip notification handling during PM operation
    cc756b79a5c9 ASoC: mt6660: Fix PM disable depth imbalance in mt6660_i2c_probe
    f9cb3bd55726 ASoC: wm5102: Fix PM disable depth imbalance in wm5102_probe
    b7dda65fa875 ASoC: wm5110: Fix PM disable depth imbalance in wm5110_probe
    b2bc9fc56a3e ASoC: wm8997: Fix PM disable depth imbalance in wm8997_probe
    3c3ef19a8870 mmc: wmt-sdmmc: Fix an error handling path in wmt_mci_probe()
    b14dc262274b ALSA: dmaengine: increment buffer pointer atomically
    f5f1f5ee5048 ASoC: da7219: Fix an error handling path in da7219_register_dai_clks()
    f910aca07625 ASoC: codecs: tx-macro: fix kcontrol put
    b47a37ad4a44 drm/vmwgfx: Fix memory leak in vmw_mksstat_add_ioctl()
    bdf54d4b0074 drm/msm/dp: correct 1.62G link rate at dp_catalog_ctrl_config_msa()
    635e7700c5b4 drm/msm/dpu: index dpu_kms->hw_vbif using vbif_idx
    4f859884673d ASoC: eureka-tlv320: Hold reference returned from of_find_xxx API
    64545b8a9690 mmc: au1xmmc: Fix an error handling path in au1xmmc_probe()
    3ba3814c00a4 drm/amdgpu: Fix memory leak in hpd_rx_irq_create_workqueue()
    a5ce83e85d79 drm/omap: dss: Fix refcount leak bugs
    f5f599daa0bc drm/bochs: fix blanking
    928ac9fc1ace ALSA: hda: beep: Simplify keep-power-at-enable behavior
    fbb88a7c84c1 ASoC: rsnd: Add check for rsnd_mod_power_on
    4610e7a4111f drm/bridge: megachips: Fix a null pointer dereference bug
    079c550c57ff drm/amdgpu: add missing pci_disable_device() in amdgpu_pmops_runtime_resume()
    c12daccc9017 platform/chrome: cros_ec_typec: Correct alt mode index
    c317d2b8a430 platform/x86: msi-laptop: Fix resource cleanup
    0e21d41bc768 platform/x86: msi-laptop: Fix old-ec check for backlight registering
    6bc81c1b6313 ASoC: tas2764: Fix mute/unmute
    e644497c5361 ASoC: tas2764: Drop conflicting set_bias_level power setting
    35bd912ed6c0 ASoC: tas2764: Allow mono streams
    fd1d3b265784 platform/chrome: fix memory corruption in ioctl
    27bb672c0437 platform/chrome: fix double-free in chromeos_laptop_prepare()
    57dfb855bc9e ASoC: mt6359: fix tests for platform_get_irq() failure
    8a475a7732a5 drm:pl111: Add of_node_put() when breaking out of for_each_available_child_of_node()
    56d2233cf573 drm/dp_mst: fix drm_dp_dpcd_read return value checks
    fe6eb3d0c874 drm/bridge: parade-ps8640: Fix regulator supply order
    60630834fad3 drm/virtio: Correct drm_gem_shmem_get_sg_table() error handling
    26c1b4cfe56f drm/mipi-dsi: Detach devices when removing the host
    652042135e08 drm/bridge: Avoid uninitialized variable warning
    f369fb4deed7 drm: bridge: adv7511: unregister cec i2c device after cec adapter
    20609125b8bd drm: bridge: adv7511: fix CEC power down control register offset
    a624161ebe0c net: mvpp2: fix mvpp2 debugfs leak
    7aef5082c56e once: add DO_ONCE_SLOW() for sleepable contexts
    77bfd26cbb61 net/ieee802154: reject zero-sized raw_sendmsg()
    dc4e9cd6d6a6 net: wwan: iosm: Call mutex_init before locking it
    0b6516a4e3eb bnx2x: fix potential memory leak in bnx2x_tpa_stop()
    30bfa5aa7228 net: rds: don't hold sock lock when cancelling work from rds_tcp_reset_callbacks()
    f828333ca90f hwmon: (pmbus/mp2888) Fix sensors readouts for MPS Multi-phase mp2888 controller
    c91b922b4170 spi: Ensure that sg_table won't be used after being freed
    49d429760df7 tcp: fix tcp_cwnd_validate() to not forget is_cwnd_limited
    19d636b663e0 sctp: handle the error returned from sctp_auth_asoc_init_active_key
    7bfa18b05f38 mISDN: fix use-after-free bugs in l1oip timer handlers
    6f1991a940b9 eth: alx: take rtnl_lock on resume
    e28a4e7f0296 vhost/vsock: Use kvmalloc/kvfree for larger packets.
    5dbdd690ed83 wifi: rtl8xxxu: Fix AIFS written to REG_EDCA_*_PARAM
    432eecffcf1b spi: s3c64xx: Fix large transfers with DMA
    1454a26cb1ab netfilter: nft_fib: Fix for rpath check with VRF devices
    7d98b26684cb xfrm: Reinject transport-mode packets through workqueue
    397e880acf44 Bluetooth: hci_core: Fix not handling link timeouts propertly
    1331d3e1f9b5 i2c: mlxbf: support lock mechanism
    9233ab8198d8 skmsg: Schedule psock work if the cached skb exists on the psock
    44f1dc2e821d spi/omap100k:Fix PM disable depth imbalance in omap1_spi100k_probe
    daa5239ea49f spi: dw: Fix PM disable depth imbalance in dw_spi_bt1_probe
    6b941151865e x86/cpu: Include the header of init_ia32_feat_ctl()'s prototype
    3c27a1380798 x86/microcode/AMD: Track patch allocation size explicitly
    3e2b805a68ab wifi: ath11k: fix number of VHT beamformee spatial streams
    5a6827cdc258 netfilter: conntrack: revisit the gc initial rescheduling bias
    9c39ca418ba3 netfilter: conntrack: fix the gc rescheduling delay
    b8917dce2134 Bluetooth: hci_{ldisc,serdev}: check percpu_init_rwsem() failure
    c087c35292ea bpf: Ensure correct locking around vulnerable function find_vpid()
    a0f15af17b7d net: fs_enet: Fix wrong check in do_pd_setup
    ee7c5e814fb2 Bluetooth: RFCOMM: Fix possible deadlock on socket shutdown/release
    57d4f2f8a67b wifi: mt76: mt7915: do not check state before configuring implicit beamform
    dea9093f24d6 wifi: mt76: mt7615: add mt7615_mutex_acquire/release in mt7615_sta_set_decap_offload
    817e8b75ae06 wifi: mt76: sdio: fix transmitting packet hangs
    5dc095a37fbd wifi: rtl8xxxu: Remove copy-paste leftover in gen2_update_rate_mask
    9973f78c19f3 wifi: rtl8xxxu: gen2: Fix mistake in path B IQ calibration
    5d9222c68022 bpf: btf: fix truncated last_member_type_id in btf_struct_resolve
    4ce47c5545d2 spi: meson-spicc: do not rely on busy flag in pow2 clk ops
    36c484bac9ed wifi: rtl8xxxu: Fix skb misuse in TX queue selection
    fefd2269e681 spi: qup: add missing clk_disable_unprepare on error in spi_qup_pm_resume_runtime()
    e22f6499183d spi: qup: add missing clk_disable_unprepare on error in spi_qup_resume()
    37005a948677 selftests/xsk: Avoid use-after-free on ctx
    69995c64e50e wifi: rtw88: add missing destroy_workqueue() on error path in rtw_core_init()
    6f9484e969cb wifi: rtl8xxxu: tighten bounds checking in rtl8xxxu_read_efuse()
    d091771f511d Bluetooth: btusb: mediatek: fix WMT failure during runtime suspend
    f91e25cfa553 bpf: Use this_cpu_{inc|dec|inc_return} for bpf_task_storage_busy
    0e1342510490 bpf: Propagate error from htab_lock_bucket() to userspace
    0b00c6130c1a bpf: Disable preemption when increasing per-cpu map_locked
    68ab7690332a xsk: Fix backpressure mechanism on Tx
    0559a6d96a99 x86/resctrl: Fix to restore to original value when re-enabling hardware prefetch register
    e962e458bf96 spi: mt7621: Fix an error message in mt7621_spi_probe()
    0a16bbc8b030 bpftool: Fix a wrong type cast in btf_dumper_int
    6e8eadfa9bb1 wifi: mac80211: allow bw change during channel switch in mesh
    4ed5155043c9 bpf: Fix reference state management for synchronous callbacks
    3d0a101e7139 leds: lm3601x: Don't use mutex after it was destroyed
    54a3201f3c1f wifi: ath10k: add peer map clean up for peer delete in ath10k_sta_state()
    714536ff6f6c wifi: rtlwifi: 8192de: correct checking of IQK reload
    80a474502ef5 NFSD: Fix handling of oversized NFSv4 COMPOUND requests
    dc7f225090c2 NFSD: Protect against send buffer overflow in NFSv2 READDIR
    cedaf73c8bda SUNRPC: Fix svcxdr_init_encode's buflen calculation
    6b55707ff8b2 SUNRPC: Fix svcxdr_init_decode's end-of-buffer calculation
    aed881630557 nfsd: Fix a memory leak in an error handling path
    5c4b234c44cb objtool: Preserve special st_shndx indexes in elf_update_symbol
    425a2a9469d2 ARM: 9247/1: mm: set readonly for MT_MEMORY_RO with ARM_LPAE
    2647b20e043c ARM: 9244/1: dump: Fix wrong pg_level in walk_pmd()
    93296e7ab774 MIPS: SGI-IP27: Fix platform-device leak in bridge_platform_create()
    993b13abde17 MIPS: SGI-IP27: Free some unused memory
    959855093f94 sh: machvec: Use char[] for section boundaries
    91fafd22f852 thermal: cpufreq_cooling: Check the policy first in cpufreq_cooling_register()
    81fb3ee298d5 ntfs3: rework xattr handlers and switch to POSIX ACL VFS helpers
    33d478eee2b5 userfaultfd: open userfaultfds with O_RDONLY
    10918ebecdc9 ima: fix blocking of security.ima xattrs of unsupported algorithms
    b7af9b8be891 selinux: use "grep -E" instead of "egrep"
    73b8218ef4aa smb3: must initialize two ACL struct fields to zero
    adf428ae46be drm/amd/display: Fix vblank refcount in vrr transition
    60a517452560 drm/i915: Fix watermark calculations for gen12+ CCS+CC modifier
    01bd3eaa5371 drm/i915: Fix watermark calculations for gen12+ MC CCS modifier
    20018a252f19 drm/i915: Fix watermark calculations for gen12+ RC CCS modifier
    861f085f81fd drm/nouveau: fix a use-after-free in nouveau_gem_prime_import_sg_table()
    446d40e2a8cb drm/nouveau/kms/nv140-: Disable interlacing
    4dab0d27a421 staging: greybus: audio_helper: remove unused and wrong debugfs usage
    28eb4bdb23e2 KVM: VMX: Drop bits 31:16 when shoving exception error code into VMCS
    4f7b1e7d0f36 KVM: nVMX: Don't propagate vmcs12's PERF_GLOBAL_CTRL settings to vmcs02
    be1a6a61f1b3 KVM: nVMX: Unconditionally purge queued/injected events on nested "exit"
    379de01906eb KVM: x86/emulator: Fix handing of POP SS to correctly set interruptibility
    e3e5baa36879 blk-wbt: call rq_qos_add() after wb_normal is initialized
    e8e0a6f4b8a2 media: cedrus: Fix endless loop in cedrus_h265_skip_bits()
    b76fac61c33f media: cedrus: Set the platform driver data earlier
    b19254eadab3 efi: libstub: drop pointless get_memory_map() call
    5cda4a11b490 thunderbolt: Explicitly enable lane adapter hotplug events at startup
    d9c79fbcbdb6 tracing: Fix reading strings from synthetic events
    b9ab154d22b8 tracing: Add "(fault)" name injection to kernel probes
    8ae88c4842c2 tracing: Move duplicate code of trace_kprobe/eprobe.c into header
    84f4be2093e1 tracing: Add ioctl() to force ring buffer waiters to wake up
    32eb54a986f4 tracing: Wake up waiters when tracing is disabled
    2475de2bc0de tracing: Wake up ring buffer waiters on closing of the file
    48272aa48d80 tracing: Disable interrupt or preemption before acquiring arch_spinlock_t
    d4ab9bc5f56e ring-buffer: Fix race between reset page and reading page
    be60f698c276 ring-buffer: Add ring_buffer_wake_waiters()
    5201dd81aef7 ring-buffer: Check pending waiters when doing wake ups as well
    bc6d4e9d6484 ring-buffer: Have the shortest_full queue be the shortest not longest
    e8d116738514 ring-buffer: Allow splice to read previous partially read pages
    fb96b7489fbd ftrace: Properly unset FTRACE_HASH_FL_MOD
    31dc1727c103 livepatch: fix race between fork and KLP transition
    36997b75bbb3 ext4: update 'state->fc_regions_size' after successful memory allocation
    417b0455a0b6 ext4: fix potential memory leak in ext4_fc_record_regions()
    9b5eb368a86f ext4: fix potential memory leak in ext4_fc_record_modified_inode()
    ef1607c99136 ext4: fix miss release buffer head in ext4_fc_write_inode
    d29fa1ab4e62 ext4: fix dir corruption when ext4_dx_add_entry() fails
    d12471b41674 ext4: place buffer head allocation before handle start
    46e5f470a144 ext4: ext4_read_bh_lock() should submit IO if the buffer isn't uptodate
    1f5e643b3829 ext4: don't increase iversion counter for ea_inodes
    dd366295d1ec ext4: fix check for block being out of directory size
    4a967fe8b043 ext4: make ext4_lazyinit_thread freezable
    533c60a0b97c ext4: fix null-ptr-deref in ext4_write_info
    d8e4af8314df ext4: avoid crash when inline data creation follows DIO write
    56fcd0788f0d jbd2: add miss release buffer head in fc_do_one_pass()
    d11d2ded2939 jbd2: fix potential use-after-free in jbd2_fc_wait_bufs
    e7385c868ee0 jbd2: fix potential buffer head reference count leak
    d87fe290a533 jbd2: wake up journal waiters in FIFO order, not LIFO
    7434626c5eaa hardening: Remove Clang's enable flag for -ftrivial-auto-var-init=zero
    095493833b18 hardening: Avoid harmless Clang option under CONFIG_INIT_STACK_ALL_ZERO
    73687c53919f f2fs: fix to do sanity check on summary info
    ed854f10e6af f2fs: fix to do sanity check on destination blkaddr during recovery
    7f10357c9046 f2fs: increase the limit for reserve_root
    0035b84223de f2fs: flush pending checkpoints when freezing super
    ab4958975490 f2fs: complete checkpoints during remount
    0a408c6212c1 btrfs: set generation before calling btrfs_clean_tree_block in btrfs_init_new_buffer
    4b996a3014ef btrfs: fix race between quota enable and quota rescan ioctl
    0d9423034308 fs: record I_DIRTY_TIME even if inode already has I_DIRTY_INODE
    95a520b591c9 ksmbd: Fix user namespace mapping
    a19f316406ea ksmbd: Fix wrong return value and message length check in smb2_ioctl()
    39b685562825 ksmbd: fix endless loop when encryption for response fails
    2b0897e33682 fbdev: smscufx: Fix use-after-free in ufx_ops_open()
    aa7b2c927e4e pinctrl: rockchip: add pinmux_ops.gpio_set_direction callback
    5d97378b3626 gpio: rockchip: request GPIO mux to pinctrl when setting direction
    e0b1c16fdadd scsi: qedf: Populate sysfs attributes for vport
    1d567179f277 slimbus: qcom-ngd: cleanup in probe error path
    fa0aab2e45f0 slimbus: qcom-ngd: use correct error in message of pdr_add_lookup() failure
    ba2159df1806 powerpc/boot: Explicitly disable usage of SPE instructions
    9df2a9cdad5b powercap: intel_rapl: Use standard Energy Unit for SPR Dram RAPL domain
    75d9de25a6f8 NFSD: Protect against send buffer overflow in NFSv3 READ
    2be9331ca606 NFSD: Protect against send buffer overflow in NFSv2 READ
    071a076fd1b7 NFSD: Protect against send buffer overflow in NFSv3 READDIR
    209a94c5192b serial: 8250: Request full 16550A feature probing for OxSemi PCIe devices
    63a3d75cf18c serial: 8250: Let drivers request full 16550A feature probing
    26e5c79e673c PCI: Sanitise firmware BAR assignments behind a PCI-PCI bridge
    7c16d0a4e6a4 xen/gntdev: Accommodate VMA splitting
    1cb73704cb47 xen/gntdev: Prevent leaking grants
    43bed0a13a5c mm/mmap: undo ->mmap() when arch_validate_flags() fails
    2b0072d33eb6 mm/damon: validate if the pmd entry is present before accessing
    91c4eb16e804 arm64: errata: Add Cortex-A55 to the repeat tlbi list
    fc0f921b7e6e drm/udl: Restore display mode on resume
    064093472524 drm/virtio: Use appropriate atomic state in virtio_gpu_plane_cleanup_fb()
    fb3910436be4 drm/virtio: Unlock reservations on virtio_gpu_object_shmem_init() error
    f122bcb34f1a drm/virtio: Check whether transferred 2D BO is shmem
    a95fb5d55af0 dmaengine: mxs: use platform_driver_register
    e7a3334e83f9 Revert "drm/amdgpu: use dirty framebuffer helper"
    4bdedc3b5341 nvme-pci: set min_align_mask before calculating max_hw_sectors
    32aa0b3f0c06 nvme-multipath: fix possible hang in live ns resize with ANA access
    9391cc3a787a nvmem: core: Fix memleak in nvmem_register()
    7efe61dc6aa4 UM: cpuinfo: Fix a warning for CONFIG_CPUMASK_OFFSTACK
    81ab826a285d riscv: Pass -mno-relax only on lld < 15.0.0
    7780bb02a069 riscv: always honor the CONFIG_CMDLINE_FORCE when parsing dtb
    c657b70e8074 riscv: Make VM_WRITE imply VM_READ
    3c3c4fa118a4 riscv: Allow PROT_WRITE-only mmap()
    af3aaee08df8 parisc: fbdev/stifb: Align graphics memory size to 4MB
    dc235db7b79a RISC-V: Make port I/O string accessors actually work
    8c487db000fd riscv: topology: fix default topology reporting
    d46c24f307fb arm64: topology: move store_cpu_topology() to shared code
    fcf0f6cbb653 regulator: qcom_rpm: Fix circular deferral regression
    78d81a8a8ce1 net: thunderbolt: Enable DMA paths only after rings are enabled
    3281e81ce90c hwmon: (gsc-hwmon) Call of_node_get() before of_find_xxx API
    e1ab98ec2bc9 ASoC: wcd934x: fix order of Slimbus unprepare/disable
    a2140a9922d1 ASoC: wcd9335: fix order of Slimbus unprepare/disable
    d0507b36da9f platform/chrome: cros_ec_proto: Update version on GET_NEXT_EVENT failure
    fcfeecca153d quota: Check next/prev free block number after reading from quota file
    17214cfab73b HID: multitouch: Add memory barriers
    219e4a0f9d68 fs: dlm: handle -EBUSY first in lock arg validation
    34ed22dd2860 fs: dlm: fix race between test_bit() and queue_work()
    7fa5304c4b5b i2c: designware: Fix handling of real but unexpected device interrupts
    f9effcefa8be mmc: sdhci-sprd: Fix minimum clock limit
    a4df91a88c3f can: kvaser_usb_leaf: Fix CAN state after restart
    0c28c2c0cfa2 can: kvaser_usb_leaf: Fix TX queue out of sync after restart
    b8c4f6345e0e can: kvaser_usb_leaf: Fix overread with an invalid command
    de4434d6823c can: kvaser_usb: Fix use of uninitialized completion
    354d768e315d usb: add quirks for Lenovo OneLink+ Dock
    103b459590e1 xhci: dbc: Fix memory leak in xhci_alloc_dbc()
    39f4c90b9995 iio: pressure: dps310: Reset chip after timeout
    bc493cd75466 iio: pressure: dps310: Refactor startup procedure
    5f6bfc1926bb iio: adc: ad7923: fix channel readings for some variants
    1be580ed8403 iio: ltc2497: Fix reading conversion results
    ef4018707df8 iio: dac: ad5593r: Fix i2c read protocol requirements
    60480291c1fc cifs: Fix the error length of VALIDATE_NEGOTIATE_INFO message
    0d814a2199cf cifs: destage dirty pages before re-reading them for cache=none
    15993e9a9b12 hv_netvsc: Fix race between VF offering and VF association message from host
    f9dc33f23153 io_uring/net: don't update msg_name if not provided
    a1bd289c10ac mtd: rawnand: atmel: Unmap streaming DMA mappings
    3e4d2375d154 ALSA: hda/realtek: Add Intel Reference SSID to support headset keys
    41e83faf036c ALSA: hda/realtek: Add quirk for ASUS GV601R laptop
    c01f385c70db ALSA: hda/realtek: Correct pin configs for ASUS G533Z
    0d50e05ecc2c ALSA: hda/realtek: remove ALC289_FIXUP_DUAL_SPK for Dell 5530
    ec439b97d983 ALSA: usb-audio: Fix NULL dererence at error path
    0672215994e2 ALSA: usb-audio: Fix potential memory leaks
    550ca3082ebd ALSA: rawmidi: Drop register_mutex in snd_rawmidi_free()
    45899fae65e5 ALSA: oss: Fix potential deadlock at unregistration
    5ca155aa79e9 Revert "fs: check FMODE_LSEEK to control internal pipe splicing"

(From OE-Core rev: e01b2abf4bccc8c6a80352e4fafd89c68b681530)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 865633976508a3af002a68f0c68d36a74ce6b53c)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-07 15:02:50 +00:00
Bruce Ashfield
3859802123 linux-yocto/5.15: update to v5.15.74
Updating  to the latest korg -stable release that comprises
the following commits:

    a3f2f5ac9d61 Linux 5.15.74
    de124365a7d2 wifi: mac80211: fix MBSSID parsing use-after-free
    7d998f6b7365 mac80211: fix memory leaks with element parsing
    fee48f3bdd75 mac80211: always allocate struct ieee802_11_elems
    630060f11756 mac80211: mlme: find auth challenge directly
    21df3a583e8e mac80211: move CRC into struct ieee802_11_elems
    864f2d3482f4 mac80211: mesh: clean up rx_bcn_presp API
    e5ebcbb4f967 misc: pci_endpoint_test: Fix pci_endpoint_test_{copy,write,read}() panic
    cb9defecf381 misc: pci_endpoint_test: Aggregate params checking for xfer
    2c657a0cbd48 Input: xpad - fix wireless 360 controller breaking after suspend
    db4db28fccb4 Input: xpad - add supported devices as contributed on github
    d15bb1f6dabe wifi: cfg80211: update hidden BSSes to avoid WARN_ON
    93a3a3255407 wifi: mac80211: fix crash in beacon protection for P2P-device
    fff244e9171b wifi: mac80211_hwsim: avoid mac80211 warning on bad rate
    0a8ee682e4f9 wifi: cfg80211: avoid nontransmitted BSS list corruption
    bfe29873454f wifi: cfg80211: fix BSS refcounting bugs
    9e99ca59ed39 wifi: cfg80211: ensure length byte is present before access
    0a861bd25dad wifi: cfg80211/mac80211: reject bad MBSSID elements
    9a8ef2030510 wifi: cfg80211: fix u8 overflow in cfg80211_update_notlisted_nontrans()
    398e30b67092 random: use expired timer rather than wq for mixing fast pool
    984faa6fc759 random: avoid reading two cache lines on irq randomness
    a937c59863d7 Revert "crypto: qat - reduce size of mapped region"
    0e3ff69ee691 Revert "powerpc/rtas: Implement reentrant rtas call"
    e0295c43166b USB: serial: qcserial: add new usb-id for Dell branded EM7455
    76efb4897bc3 scsi: stex: Properly zero out the passthrough command structure
    5fbbe7e98e9b efi: Correct Macmini DMI match in uefi cert quirk
    8754dc846d03 ALSA: hda: Fix position reporting on Poulsbo
    14f143fb4268 random: clamp credited irq bits to maximum mixed
    be53fa6cf667 random: restore O_NONBLOCK support
    2f96da3fd18f ceph: don't truncate file in atomic_open
    c0c3d3d3ea41 nilfs2: replace WARN_ONs by nilfs_error for checkpoint acquisition failure
    44b1ee304bac nilfs2: fix leak of nilfs_root in case of writer thread creation failure
    cb602c2b654e nilfs2: fix use-after-free bug of struct nilfs_root
    1e512c65b4ad nilfs2: fix NULL pointer dereference at nilfs_bmap_lookup_at_level()
    17aac9b7af2b Linux 5.15.73
    f7b16f51753a Revert "clk: ti: Stop using legacy clkctrl names for omap4 and 5"
    d8b1b64a070e rpmsg: qcom: glink: replace strncpy() with strscpy_pad()
    d58eb80b723d USB: serial: ftdi_sio: fix 300 bps rate for SIO
    5ff80339cdc3 usb: mon: make mmapped memory read only
    278fefd29eea net/mlx5: Disable irq when locking lag_lock
    54f382d4b7f8 wifi: cfg80211: fix MCS divisor value
    0fa249414a6f mm/huge_memory: use pfn_to_online_page() in split_huge_pages_all()
    f1d6894159fc mm/huge_memory: minor cleanup for split_huge_pages_all
    7190afd4cd5f perf parse-events: Identify broken modifiers
    f6f740f6ca3b mmc: core: Terminate infinite loop in SD-UHS voltage switch
    9635e05e015a mmc: core: Replace with already defined values for readability
    f2af62d909ad drm/amd/display: skip audio setup when audio stream is enabled
    d444cfe6d047 drm/amd/display: update gamut remap if plane has changed
    4afcb53474ae drm/amd/display: Assume an LTTPR is always present on fixed_vs links
    5e76ff629a20 drm/amd/display: Fix double cursor on non-video RGB MPO
    e6590139ffa3 net: atlantic: fix potential memory leak in aq_ndev_close()
    005e368a61bc arch: um: Mark the stack non-executable to fix a binutils warning
    5f85191bedba um: Cleanup compiler warning in arch/x86/um/tls_32.c
    6827af886be8 um: Cleanup syscall_handler_t cast in syscalls_32.h
    f386b373e9f7 ALSA: hda/hdmi: Fix the converter reuse for the silent stream
    a36b2dc5c0da net: marvell: prestera: add support for for Aldrin2
    d2588ba1a338 net/ieee802154: fix uninit value bug in dgram_sendmsg
    1030659dac4e scsi: qedf: Fix a UAF bug in __qedf_probe()
    f7126aa3624c ARM: dts: fix Moxa SDIO 'compatible', remove 'sdhci' misnomer
    968299cd58b7 dmaengine: xilinx_dma: Report error in case of dma_set_mask_and_coherent API failure
    17f55255af4c dmaengine: xilinx_dma: cleanup for fetching xlnx,num-fstores property
    b2f275550136 dmaengine: xilinx_dma: Fix devm_platform_ioremap_resource error handling
    fd425b89d040 firmware: arm_scmi: Add SCMI PM driver remove routine
    e092fc3a2892 firmware: arm_scmi: Harden accesses to the sensor domains
    9f81dbb934fb firmware: arm_scmi: Improve checks in the info_get operations
    64b79e632869 fs: fix UAF/GPF bug in nilfs_mdt_destroy
    31bdba07f6b2 powerpc/64s/radix: don't need to broadcast IPI for radix pmd collapse flush
    46c22e7b094f mm: gup: fix the fast GUP race against THP collapse
    88ccea0a4458 xsk: Inherit need_wakeup flag for shared sockets
    f07fbefcea5b docs: update mediator information in CoC docs
    cf26ddb96b4f Makefile.extrawarn: Move -Wcast-function-type-strict to W=1

(From OE-Core rev: 1b284c41f39685bdaa545c0fdafd657a51a5a9d3)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit e4d9e5bb39700022cd428bb922a329101fc0f1b0)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-07 15:02:50 +00:00
Qiu, Zheng
16f96f6e3f tiff: Security fix for CVE-2022-3970
This patch contains a fix for CVE-2022-3970

Reference:
https://nvd.nist.gov/vuln/detail/CVE-2022-3970
https://security-tracker.debian.org/tracker/CVE-2022-3970

Patch generated from :
227500897d

(From OE-Core rev: d066f7e8435491f53622d9d6b21f3650c22f8995)

Signed-off-by: Zheng Qiu <zheng.qiu@windriver.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 668ff495ac44e5b6d9e1af15d3861b5c2b4dfcd1)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-07 15:02:50 +00:00
Narpat Mali
5a0edf1b8c ffmpeg: fix for CVE-2022-3965
A vulnerability classified as problematic was found in ffmpeg. This vulnerability affects the function
smc_encode_stream of the file libavcodec/smcenc.c of the component QuickTime Graphics Video Encoder. The
manipulation of the argument y_size leads to out-of-bounds read. The attack can be initiated remotely.
The name of the patch is 13c13109759090b7f7182480d075e13b36ed8edd. It is recommended to apply a patch to
fix this issue. The identifier of this vulnerability is VDB-213544.

Reference:
https://nvd.nist.gov/vuln/detail/CVE-2022-3965

Upstream Fix:
13c1310975

(From OE-Core rev: 81b75c0331eadc920d27f7115fa9ec99e089bb5a)

Signed-off-by: Narpat Mali <narpat.mali@windriver.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit b88c96fe8964614978aa25a65dd34fc3c05c664c)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-07 15:02:50 +00:00
Narpat Mali
00a6b3fc5f ffmpeg: fix for CVE-2022-3964
A vulnerability classified as problematic has been found in ffmpeg. This affects an unknown part of the file
libavcodec/rpzaenc.c of the component QuickTime RPZA Video Encoder. The manipulation of the argument y_size
leads to out-of-bounds read. It is possible to initiate the attack remotely. The name of the patch is
92f9b28ed84a77138105475beba16c146bdaf984. It is recommended to apply a patch to fix this issue. The associated
identifier of this vulnerability is VDB-213543.

Reference:
https://nvd.nist.gov/vuln/detail/CVE-2022-3964

Upstream Fix:
92f9b28ed8

(From OE-Core rev: 4d2eec66fb3979b9676466258a1af5321a68b237)

Signed-off-by: Narpat Mali <narpat.mali@windriver.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 4595f85e7ce867d68ca9d6a6e3ad2544565be3cc)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-07 15:02:50 +00:00
Polampalli, Archana
bbc86eab13 libpam: fix CVE-2022-28321
The Linux-PAM package before 1.5.2-6.1 for openSUSE Tumbleweed allows
authentication bypass for SSH logins. The pam_access.so module doesn't
correctly restrict login if a user tries to connect from an IP address
that is not resolvable via DNS. In such conditions, a user with denied
access to a machine can still get access. NOTE: the relevance of this
issue is largely limited to openSUSE Tumbleweed and openSUSE Factory;
it does not affect Linux-PAM upstream.

References:
https://nvd.nist.gov/vuln/detail/CVE-2022-28321

Upstream patches:
08992030c5
23393bef92

(From OE-Core rev: 6f3744b71abe9d6be9cc4799e00af4f85166d01d)

Signed-off-by: Archana Polampalli <archana.polampalli@windriver.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit b1fd799af0086347de1ec4b72d562b1fb490def1)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-07 15:02:50 +00:00
Konrad Weihmann
0ef7288f7e create-spdx: default share_src for shared sources
if a source is using work-shared but isn't a kernel,
like for instance llvm-source from meta-clang, share_src was
previously undefined leading to a crash of the python code.
Default to WORKDIR and just override it in case the source being
a kernel recipe.
Additionally changes the variable names in the following, as
they imply that it's only about the kernel, which is not the case
in every case

(From OE-Core rev: 34fa68a0b07328c4ed4eef81f8cde80137a91f18)

(From OE-Core rev: 30cdb7fbec8e9cf5c5a25e28a1102fa562a7f6c2)

Signed-off-by: Konrad Weihmann <kweihmann@witekio.com>
On-behalf-of: Avnet Embedded <AvnetEmbedded@avnet.eu>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-01 19:35:11 +00:00
Peter Marko
63815831c8 meta-selftest/staticids: add render group for systemd
(From OE-Core rev: 50499534bc8083f2f086ce171e9e09b5502a7470)

Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 5b761270267063afb0462d1ebf99cabe32ff4e0a)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-01 19:35:11 +00:00
Peter Marko
38c739c3eb systemd: add group render to udev package
From NEWS for v236:
* The "uaccess" udev tag has been dropped from /dev/kvm and
  /dev/dri/renderD*.  These devices now have the 0666 permissions by
  default (but this may be changed at build-time). /dev/dri/renderD*
  will now be owned by the "render" group along with /dev/kfd.

Without the group systemd-udevd startup logs:
  /lib/udev/rules.d/50-udev-default.rules:39 Unknown group 'render', ignoring
  /lib/udev/rules.d/50-udev-default.rules:40 Unknown group 'render', ignoring

(From OE-Core rev: f8e78f3f655b513280675fb353b21be6fb5e88c4)

Signed-off-by: Peter Marko <peter.marko@siemens.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 84efd72d48616405dbe4d73ec95917077144ed09)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-01 19:35:11 +00:00
Richard Purdie
f71f6e702b sanity: Drop data finalize call
This call was effectively like update_data and no longer did anything
in bitbake. Drop it as it is obsolete.

(From OE-Core rev: 2be6815946e87a670c809e7fa6e7034a84693e45)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit d3eb4531aae28a07cb7e52ed5fe1102445d2effd)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-01 19:35:11 +00:00
Jose Quaresma
1f54e22375 sstate: Allow optimisation of do_deploy_archives task dependencies
do_deploy_archives tasks don't need their dependencies so we can optimistion
this as we do for some other tasks.

(From OE-Core rev: 1da259bc2df334271fc9c30ed49d4e86e872e872)

Signed-off-by: Jose Quaresma <jose.quaresma@foundries.io>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 3dd9f6e398844380d3765c54d35afe0d2ccf82e7)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-01 19:35:11 +00:00
Jose Quaresma
479d883b1f rm_work: exclude the SSTATETASKS from the rm_work tasks sinature
We can exclude the SSTATETASKS from the rm_work task signature
to avoid running the task when we remove some setscene tasks
from the dependencie chain.

The inject_rm_work handler on the rm_work bbclass triggers the
rm_work task running for any signature change in the dependencie
chain of the task do_build of each recipe.

i.e INHERIT:remove = "create-spdx" will trigger the do_rm_work
when we collect the sstate cache with INHERIT = "create-spdx"

(From OE-Core rev: cc6ade7de20f6fb9dffe43bceb6e513209e2216a)

Signed-off-by: Jose Quaresma <jose.quaresma@foundries.io>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 77729bea5b17d65dafb604fd1665c612091b28c7)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-01 19:35:11 +00:00
Jose Quaresma
2dced46852 sstatesig: skip the rm_work task signature
We can skip the rm_work task signature to avoid running the task
when we remove some tasks from the dependencie chain.

The inject_rm_work handler on the rm_work bbclass triggers the
rm_work task running for any signature change in the dependencie
chain of the task do_build of each recipe.

i.e INHERIT:remove = "create-spdx" will trigger the do_rm_work
when we collect the sstate cache with INHERIT = "create-spdx"

(From OE-Core rev: f1f8f894048b325ce9a8af03b1c3b1c5a9c1f983)

Signed-off-by: Jose Quaresma <jose.quaresma@foundries.io>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 292305700e39d0ebd64763f5032c39ace5005fad)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-01 19:35:11 +00:00
Alexander Kanavin
af79d91a50 gnomebase.bbclass: return the whole version for tarball directory if it is a number
E.g. if version is '43' without any dots, existing code would return ''.

(From OE-Core rev: 71ba56c6d2703f9d4498e2cbff9c0aa70b964801)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 38c15322bdbb2423973939e861b5ad1ffb5c8b7f)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-01 19:35:11 +00:00
Alexander Kanavin
509f2f8100 vala: install vapigen-wrapper into /usr/bin/crosscripts and stage only that
Staging the whole /usr/bin is not correct, as it pulls in also
all the vala's cross binaries, which may be discovered by other recipes
and things will go wrong then.

(From OE-Core rev: 0de07deebc3b8d39b47e7130b8e096e74c8ef767)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 52629d9db0344146ff4734632b17bd731e247fd5)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-01 19:35:11 +00:00
Nathan Rossi
3217d20246 package: Fix handling of minidebuginfo with newer binutils
Newer versions of binutils (2.38+) have changed how the
"--only-keep-debug" of objcopy behaves when stripping non-debug sections
from an ELF.

  https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=68f543154e92ab0f5d6c569e0fa143f5e8bd2d80

This change causes associated sections to be correctly marked as NOBITS
with the section contents removed from the output. The side effect is
that this causes issues with objcopy's ability to perform symbol and
relocation stripping (-S/--strip-all) on the debug split ELF, such that
with some object files (e.g. kernel modules) objcopy fails to strip
symbols/relocations with an error like the following:

  .../.debug/nls_cp950.ko[.rodata]: file truncated

Because of this it is now problematic to generate minidebuginfo for
these types of ELF objects. However it is not typically useful to inject
minidebuginfo into these types of ELFs, and other distributions (e.g.
Fedora, referring to find-debuginfo.sh of debugedit) only insert
minidebuginfo into executables and shared libraries.

This change causes the minidebuginfo injection to only apply to EXEC/DYN
type ELFs, which limits the injection to executables and shared
libraires.

Additionally this change fixes the parsing of the sections from the
"readelf -W -S" output which was not accounting for the section index
column having leading spaces for single digit index values e.g. "[ 1]".

(From OE-Core rev: f3aaad246fec3defda54328555f3b0765bb43b9e)

Signed-off-by: Nathan Rossi <nathan.rossi@digi.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 2084cfcb3d15db3e02637f1cd63ab9c997f38a65)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-01 19:35:11 +00:00
Ross Burton
186ea96526 linux-firmware: don't put the firmware into the sysroot
There's no need to have linux-firmware in the sysroot. The sysroot won't
ever be used anyway as nothing needs the firmware at build-time, but this
saves us building a ~900MB sysroot (~300MB sstate tarball).

(From OE-Core rev: a433b65b18b413775a54a5ef2aba5e73cfcbca50)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 26ed998c4f201c5cacf330f52e51e416afbd300c)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-01 19:35:11 +00:00
Nathan Rossi
fe0605bd65 oeqa/selftest/lic_checksum: Cleanup changes to emptytest include
Config written to the emptytest include file is invalid after the test
has cleaned up its temporary directories resulting in the emptytest
recipe potentially having invalid content when parsed by successive
bitbake runs.

This presents the following error in tests after lic_checksum execution,
e.g. 'oe-selftest -r lic_checksum recipetool'

  ERROR: .../emptytest.bb: Unable to get checksum for emptytest SRC_URI entry tmpn_nyosnq: file could not be found

Remove the recipe include content once the bitbake runs are completed in
each lic_checksum test case.

(From OE-Core rev: 34ff6190581258c7fa2786a71196703a35d9d5e3)

Signed-off-by: Nathan Rossi <nathan.rossi@digi.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 087df767a64b271b503d714df3df6d8b3caad1c0)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-01 19:35:11 +00:00
Joshua Watt
3fc71955c3 qemu-helper-native: Correctly pass program name as argv[0]
The previous version of this wasn't correctly passing the program name
as argv[0], and was also over-complicated anyway because argv[] is
guaranteed to be terminated with a NULL pointer, so it can be passed
directly to the execv'd process without needing to be copied.

(From OE-Core rev: 25edeac14bf7c68111b9880e1367b3c981d59ea0)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 6edf38add3c20c44efe0588e2815bb280d22e0c4)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-01 19:35:11 +00:00
Joshua Watt
39e2c09f4a qemu-helper-native: Re-write bridge helper as C program
The bridge helper program is invoked directly from QEMU when it needs to
attach to a network bridge. As such, it is subject to the environment of
QEMU itself. Specifically, if bridging is enabled with direct rendering
acceleration, QEMU is run with an LD_PRELOAD that attempts to preload
several uninative libraries; however /bin/sh doesn't use the uninative
loader which means it can fail to start with an error like:

 /bin/sh: symbol lookup error: sysroots-uninative/x86_64-linux/lib/librt.so.1: undefined symbol: __libc_unwind_link_get, version GLIBC_PRIVATE

Converting the helper program to a C program resolves this problem
because it will now use the uninative loader so the preload doesn't
cause errors.

(From OE-Core rev: adabfbd9245553d1fb6abb050856e3da89f7a3d5)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit f698e98f2f09952b34488b8cf9e73e82bd7aea07)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-01 19:35:11 +00:00
Wang Mingyu
d0a6b10496 iso-codes: upgrade 4.11.0 -> 4.12.0
Changelog:
=========
- ISO 3166-1: Update name for TR. Fixes #38
- Translation updates for ISO 3166-1
- Translation updates for ISO 3166-2. Closes: #1020633
- Translation updates for ISO 3166-3
- Translation updates for ISO 639-2
- Translation updates for ISO 639-3
- Translation updates for ISO 639-5
- Translation updates for ISO 4217
- Translation updates for ISO 15924

(From OE-Core rev: 9d6244adaa75f361e22ced620e9a00a1f8e0558e)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 99917b4b7d5642b292cb95c770871b95e411dfc5)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-01 19:35:11 +00:00
Wang Mingyu
64db5d3ec6 babeltrace: upgrade 1.5.8 -> 1.5.11
Changelog:
===========
* Fix: distutils removed in python 3.12
* Fix: use-after-free with popt 1.19
* configure.ac: Basic fixes for autoconf 2.70
* Add gerrit config for stable-1.5
* port: disable debug-info by default on FreeBSD
* port: add missing includes for FreeBSD compat
* bindings: try importing collections.abc first for forward compatibility
* man: fix typo in babeltrace.1

(From OE-Core rev: 9a90f969dfc836ebe5b966d44bf978d72da96d65)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit a8f3e4f92f968eb96df11203ff442e6e42634915)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-01 19:35:11 +00:00
Alexander Kanavin
2a438dd90c systemd: update 251.4 -> 251.8
Update to latest stable release

Changes:

ae8b249af4 (HEAD -> v251-stable, tag: v251.8) test: fstab-generator: adjust PATH for fsck
03514a9f64 man: add note that network-generator is not a generator
8c8a423821 condition: Check that subsystem is enabled in ConditionSecurity=tpm2
9243b88b55 test: wait for loop device to be removed
f5c2be99bc test: wait for the lodev to get properly initialized
8cfe979030 test: disable LSan in the ASan env wrapper
db00a62be8 test: introduce a simple environment file for test service
fd082f335e test: lower the # of mpath devices to 16
d17a45340b test: make TEST-64 a bit more ASan friendly
a51cc9e578 test: don't wrap binaries built with ASan
e176dca593 test: drop all LD_PRELOAD-related ASan workarounds
9fba4cdf61 test: set $ASAN_RT_PATH along with $LD_PRELOAD to the ASan runtime DSO
4fbf69fd1b semaphore: remove the Semaphore repositories recursively
6258394c1e test: wrap `ls` and `stat` to make it work w/ sanitizers in specific cases
db14b371df test: create an ASan wrapper for `getent` and `su`
1027d3d633 test: always wrap useradd/userdel when running w/ ASan
65ab7b0950 Revert "Support -D_FORTIFY_SOURCE=3 by using __builtin_dynamic_object_size."
f994276068 test: make TEST-63 more reliable on slower machines
68b4f10f82 test: use PBKDF2 with capped iterations instead of Argon2
1f32ec761c hashmap: use assert_se() to make clang happy
94a25aa6d5 coredump: drop an unused variable
5f09fa4d5e network: drop an unused variable
a29ddb989b machine: drop an unused variable
9a71cd3bf6 sd-journal: drop an unused variable
ae0537f18f ci: reenable validation of GH Actions files
6e92f64ca4 ci: temporarily disable validation of GH Action files
6cd1b11d02 cryptsetup: fix build with -Db_ndebug=true
0ab5e9fe98 test: wrap binaries using systemd DSOs when running w/ ASan
6d4ae5a7cd test: make the virt detection quiet
024ee3def9 test: check for other hypervisors as well
520be40734 test-mountpoint-util: support running on a mount namespace with another mount on /proc
2cd4aed358 test-mountpoint-util: use log_info()
c7b66dbe2a test-mountpoint-util: fix NULL arg to %s
4e49c726ad test: drop redundant log message
b57ef0c672 build(deps): bump meson from 0.63.2 to 0.63.3 in /.github/workflows
8c80564405 build(deps): bump ninja from 1.10.2.3 to 1.10.2.4 in /.github/workflows
70e90da84b build(deps): bump meson from 0.63.1 to 0.63.2 in /.github/workflows
489c00dee5 build(deps): bump meson from 0.63.0 to 0.63.1 in /.github/workflows
08e85ad43d build(deps): bump meson from 0.62.2 to 0.63.0 in /.github/workflows
b0619c9c55 build(deps): bump meson from 0.62.0 to 0.62.2 in /.github/workflows
d982169592 build(deps): bump systemd/mkosi
9d4af5fea1 mkosi: libbpf0 -> libbpf1
3abf9f08f1 mkosi: Switch to Fedora 37
18f9fbab08 mkosi: update to latest commit
5403b727a7 mkosi: Use SourceFileTransfer=mount
9744c04ffd mkosi: Drop kernel-modules-extra from Fedora config
ab2f7a9b9e mkosi: install fdisk for test-loop-block
17acdca99d mkosi: Set ExtraSearchPaths=build/ by default
420e782904 mkosi: update to latest commit
43ef15c752 mkosi: add back packages removed from OpenSUSE build
9a94aa1d88 mkosi: disable isc-dhcp-server again
d1785c462f mkosi: Ensure we build all features/components in mkosi
6712396da3 meson: Downgrade efi-ld warning
66309ee674 ci: Add mold to build tests
86c25ca937 ci: build with clang-15; drop clang-12
28457b030e mkosi: Drop workarounds
abecb21561 mkosi: Update to latest commit
d9eaf39930 mkosi: Update to latest commit
619b36b22c mkosi: Don't use InstallDirectory by default
cdf3fd312a mkosi: Use mkosi.output/ as output directory by default
b8a746e89b mkosi: Add package libfdisk to Ubuntu dependencies (#24211)
0e518f3639 ci: set a timeout for each mkosi stage
5e79cf977c mkosi: Update to latest
edef8edf0b mkosi: Update to latest commit
a0402d3ab6 mkosi: Update to latest commit
081168fa19 mkosi: Build against Fedora rawhide as well
a38a0504ec mkosi: Remove usage of deprecated option names/sections
47404f1802 mkosi: Changes to allow booting with sanitizers in mkosi
db1281e12e mkosi: Update Ubuntu config to 22.04
ca8dc691fe mkosi: Install xxd in images
f12a6945c6 ci: limit which env variables we pass through `sudo`
7e24ac6d77 mkosi: update to latest main
a46ba01e79 mkosi: Update to latest release
7ef1d71895 mkosi: Pull in fix that solves action mirror issue
d3d90ae66b mkosi: Update CI to mkosi 13
9bf797be2c ci: build systemd with clang with -Dmode=release --optimization=2
9e88b3a5e1 ci: bump gcc in the "build test" workflow
dcbc64db61 ci: prefer the distro llvm version if available
ccd81889d4 ci: bump GH Actions to Ubuntu Jammy where applicable
b8fbf21526 kernel-install/90-loaderentry: do not add multiple systemd.machine_id options
fe5e692bfc tests: minor simplification in test-execute
a94fe70bbe tests: make test-execute pass on openSUSE
4a65c1674b firstboot: fix segfault when --locale-messages= is passed without --locale=
c3b22515b9 test: introduce sanity coverage for auxiliary utils
c61e4377d7 udev: add safe guard for setting by-id symlink
2f4fdaaecc udev: drop redundant call of usb_id and assignment of ID_USB_INTERFACE_NUM
491924940f udev: first set properties based on usb subsystem
293c006789 test: further extend systemctl's sanity coverage
f48e6576a2 test: add a couple of sanity tests for systemctl
3d5e379808 test: rename TEST-26-SETENV to TEST-26-SYSTEMCTL
a34afc4197 namespace: Add hidepid/subset support check
2ac138a5b6 coverage: Mark _coverage__exit as noreturn
9952c228a9 parse_hwdb: allow negative value for EVDEV_ABS_ properties
7b6fa1d3e6 test: add a couple of sanity tests for journalctl
cf21555d6d sd-device-monitor: dynamically allocate receive buffer
ee42e84968 man: use the correct 'Markers' property name for marking units
45090f3418 core: fix memleak in GetUnitFileLinks method
7eefd2fbb7 network: forcibly reconfigure all interfaces after sleep
66fa6110ba resolved: fix typo in feature level table
2f8f1d9e4a network: skip to reassign master ifindex if already set
d94f197818 resolved: fix copypasta in resolved varlink API
b61fcaca1b udev: always create device symlinks for USB disks
6fc2f387af man: Add documentation for AssertCredential= (#25178)
c339e8d71b man: document reboot --poweroff exception
91b8491e97 network: allow 0 for table number
3f94f03389 network: Table= also accepts table name
bdd84e82e5 analyze: add --image= + --root= to --help text
23d66a03de meson: Fix build with --optimization=plain
98a45608c4 manager: allow transient units to have drop-ins
228cd82d2c manager: reformat boolean expression in unit_is_pristine()
06dc900efa (tag: v251.7) network/bridge: fix UseBPDU= and AllowPortToBeRoot=
b0972e4df0 homed: properly initialize all return params
d61ccd0252 meson: always use libatomic if found
833ad5f950 Revert "Fix issue with system time set back (#24131)"
73d1dc665b bash-completion: add systemd-dissect support
d89e9993d2 dissect: add missing --umount to the help output
087cbfd936 coredump: avoid deadlock when passing processed backtrace data
ab587aaf8e shared/json: use different return code for empty input
219272f7b2 shared/json: allow json_variant_dump() to return an error
d1066f33b5 man: document restrictions on naming interfaces
e2a07cdac6 qrcode-util: Add support for libqrencode 3.0
8be601f7ef seccomp: add riscv_flush_icache to allow list
3028e05955 (tag: v251.6) logind: fix getting property OnExternalPower via D-Bus
5da595db39 shared/condition: avoid nss lookup in PID1
40053e60f5 test: add more tests for StateDirectory= with DynamicUser=
0ba2e4bb69 core: do not create symlink to private directory if parent already exists
1de3cb97ee core: make exec_directory_add() extends existing symlinks
d7b83b9986 sd-ndisc: ignore failure in sending solicitation
e0ba044985 analyze: add forgotten return statement
40742ac74f basic/log: include the log syntax callback in the errno protection block
3e38c39600 logind: do not emit beep in wall messages
bf13ffec59 udev: drop assertion which is always false
78a8e938e4 man/shutdown: document how to switch to single-user mode
9de8a5d5d0 libbpf: add compat helpers for libbpf down to 0.1.0
9d5d267ab3 Try to load libbpf.so.1 as well
8cc2387b03 libbpf: Remove use of deprecated APIs
4abc5b2cfe repart: always honour `--discard=no`
b3d5724bfc ata_id: Fixed getting Response Code from SCSI Sense Data (#24921)
e91ea65aba resolve: unsupported DNSSEC algorithms are considered INSECURE; not BOGUS
73db7d9932 generator: skip fsck if fsck command is missing
80dc4425db udevadm: do not try to find device unit when a path like string is provided
7add2f21f1 resolved: don't access sshfp fields from tlsa printer
9d9a970ad7 resolved: fix parameter reuse in DNS_ANSWER_FOREACH_ITEM() iterator macro
913d22cf8d kernel-install: do not fail if $layout is not "bls"
25facc6e7f units: udev: partially emulate ProtectClock=
2e6e0498aa nspawn: fix two error strings
5befffa69a xdg-autostart-service: expand tilde in Exec lines
4cb75191c4 fix typo in log
738eca5e05 meson: add libatomic dependency
c40fa78968 xdg-autostart-service: Use common boolean parser
654ae8c1e4 (tag: v251.5) base-filesystem.c: add trailing zero byte for s390x entry
e4a19eef33 basic/missing_loop.h: fix missing lo_flags LO_FLAGS_DIRECT_IO
24238be484 mount-util: fix error code
1b1ad8c79f udev: certainly restart event for previously locked device
7dacfb3fb4 stub: Use EfiLoaderCode for kernel memory
eaeaf4f6ef network: do not silently stop to process configuration on activation failure
bb803856bc bus: use inline trace argument for ANONYMOUS auth
6349062326 Fix ObjectManager interface emitted for non-manager objects
c90ab07fa0 test-bus-objects: Test interfaces added/removed signal interfaces
e32fe1b457 Fix GetManagedObjects returning ObjectManager interface for non-manager objects
efd8e39f4a test-bus-objects: Test GetManagedObjects interfaces are correct
344efd022a coredump: when parsing json, optionally copy the string first
de08edca17 systemctl: color ignored exit status in yellow, not red
1531a496e3 manager: make clear internal Dump() logic is debugging only.
c4fd38f7d2 man: document the Dump() calls of the PID 1 D-Bus interface, and what they are
140fee4627 resolve: do not cache mDNS goodbye packet
1a2d93a770 kbd-model-map: correct variants for cz-qwerty to include comma
9d1ebb2247 resolve: persist DNSOverTLS configuration in state file
3137ac6ef5 udev: support by-path devlink for multipath nvme block devices
c948091cc5 run: make --working-directory= work for --scope too
7bb204620d kbd-model-map: add a mapping for switched czech qwerty/us
e5157050d1 test: add more test cases for mkdir_p_safe() and mkdir_p_root()
b3a9f7b5cb mkdir: chase_symlinks_and_stat() does not return 0
0bfdc91807 units: make sure that initrd-switch-root.service pulls in .target
45fb64c54b units: add dependency ordering for emergency.service conflicts
6535813084 units: add ordering dependencies on initrd-switch-root.target
09c90224f1 units/systemd-network-generator.service: add forgotten ordering for shutdown
1dd723a3b8 units: reorder/split unit dependency blocks
054cad0097 man: explicitly document that "reboot -f" is different from "systemctl reboot -f"
c5b0ae86b1 watchdog: use /dev/watchdog0 only if it exists
ac805eac15 journalctl: respect --quiet flag during file concistency verification
c1d729795d xdg-autostart-service: expand tilde in Exec lines
35c5f5d688 unit: drop ProtectClock=yes from systemd-udevd.service
175ba30cf6 busctl: Fix warning about invaild introspection data
6c7b91372d udev/rules,hwdb: filter out mostly meaningless default strings
8b89e677e9 units: prolong the stop timeout for homed
202a79e7c5 homed: don't wait indefinitely for workers on exit
44660d2e12 man: fix static bridge example
e0dde8a14f log: don't attempt to duplicate closed fd
254b77e73c condition: fix device-tree firmware path
96da39ddb1 udev-util: minor cleanups for on_ac_power()
3345520512 docs: fix incorrect env var name for credentials directory
49f9fa87b2 shell-completion: drop unused $mode
1e29d934de oomd: fix off-by-one when dumping kill candidates
b00cb050c8 on-ac-power: ignore devices with scope==Device
9886011356 on-ac-power: rework logic
1fc74d251e sd-device: add helper to read a unsigned int attribute
6d4c138534 shared/udev-util: say "ignoring device", not "ignoring"
cd2fad2300 virt: Support detection of Apple Virtualization.framework guests
6e47e75c86 virt: align tables
951e99231e check-os-release.py compatible with Python < 3.8
d572a74163 core/mount: adjust deserialized state based on /proc/self/mountinfo
2e372afc35 Allow uneven length BootXXXX variables
8ad143e684 gpt: fix native uuids for s390x
2bb9a0a29b udev: fix inversed inequality for timeout of retrying event
cf67d5ed1b bash-completion: add systemd-sysext support
ada437cfb1 sysext: add missing COMMAND to the help output and man synopsis
58bc1e8e04 hostname: make chassis type actually obtained from ACPI when nothing from DMI
4ffde70981 booctl: do not say uuids differ if one of the uuids is unset
5219a99ccb bash-completion: autocomplete cgroup names in systemd-cgtop
9f2f391153 sysusers: add fsync for passwd (#24324)
c966377c51 dhcp6: do not append ORO option when no option requested
97474b03e7 dhcp6: gracefully handle NoBinding error
c67a388aef udev/cdrom_id: check last track info
52c631b02e firstboot: fix can't overwrite timezone
f279a6f4d1 cryptenroll: fix memory leak
66b060225d sd-device-enumerator: drop noisy log messages
6e1acfe818 sd-device-monitor: actually refuse to send invalid devices
81339c45e8 sd-device-monitor: fix inversed condition
1760559918 resolvctl: only remove protocol after last dot when mangling ifname for resolvconf
a3348ba748 oom: drop invalid %m in the log message
b3dd66f32b meson: Test correct efi linker for supported args
f9d936b865 sysusers: properly process user entries with an explicit GID
ec5a46ca34 sysusers: only check whether the requested GID is available
037b1a8acc dhcp: fix potential buffer overflow
ed2955f8fe udev-util: assume system is running on AC power when no battery found
37b54927d3 Fix issue with system time set back (#24131)
4fdca1ab9e shared/generator: Ensure growfs unit runs after repart
32f9d70f8b manager: optionally, do a full preset on first boot

This resolves systemd-boot fails with latest meson,
while systemd -> 252 is being prepared.

(From OE-Core rev: 52d8f9211586156f2bb7534087dea79f1ebff542)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 1d96287906f66ad28e50c9686eaffc2fb7b874fe)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-01 19:35:11 +00:00
Alexander Kanavin
8f41af0ee9 mesa: do not rely on native llvm-config in target sysroot
Sadly the magic is not perfect: llvm-config contains a hardcoded
value for the libdir from the native configuration, and things will
break if the target build installs libraries somewhere else (e.g. lib64).

llvm-config in target bindir also needs a rpath adjustment,
otherwise it simply won't even run when e.g. building for arm on x86.

To avoid patching llvm-source let's simply add more cases to the
llvm-config wrapper script, so that falling through to llvm-config binary
is avoided. Fortunately those cases are all static in what they return,
even though llvm-config binary does poke around the file tree to arrive
at them (which is where breakage happens if native and target don't match
exactly wrt libdir).

I verified that this works by building mesa with llvm enabled for
qemuarm64 and with baselib set to 'lib64' - so that both the target
architecture and target libdir differ from native ones.

Upstream tickets:
https://github.com/llvm/llvm-project/issues/58984
https://github.com/mesonbuild/meson/issues/11043

(From OE-Core rev: d2860e67a37623b17fc9c6e1192f06a63b7d52ff)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 056431883e94296b767a479d029b914392e4fd7c)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-01 19:35:11 +00:00
Wang Mingyu
bdfff3b14e mesa: upgrade 22.2.2 -> 22.2.3
Mesa 22.2.3 is a bug fix release which fixes bugs found since
the 22.2.2 release.

New features

- None

Bug fixes

- r300: register allocation sometimes generate invalid swizzles
- nouveau: Updating to Mesa*22.2.0 makes videos have corrupted colors in Firefox
- [radeonsi] OpenGL rendering issue with Unreal Tournament 99 & OldUnreal 4.69 rc4
- GravityMark segfault when using ray tracing ANV
- r300: wrong primitive positions in CXBX-R emulator with nine and RADEON_DEBUG=notcl

(From OE-Core rev: ce5362f7a4a051d4a468edb016f7f872fe77cbd6)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit d7037207e5c7d93031311b3ad88e4548ce8bb47a)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-01 19:35:11 +00:00
Wang Mingyu
cd725a0b96 libsdl2: upgrade 2.24.1 -> 2.24.2
This is a stable bugfix release, with the following changes:

Windows

Only check to see if the ICC profile changes when the display changes or we gain focus
Fixed window resize handing when using the D3D12 renderer
Fixed Xbox controller detection on Windows XP
macOS

Fixed long delay in SDL_CloseAudioDevice()
Linux

Fixed crash in Wayland_HasScreenKeyboardSupport()
FreeBSD

Fixed building without GNU sort, but warn that dynamic libraries won't be found
Emscripten

Fixed infinite recursion related to mutexes on startup
OS/2

Fixes and improvements to SDL_LoadObject() functionality

(From OE-Core rev: 8dd54a5b441fa87fdbe076b89a496aa6e6c230fe)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 0091bbe02399f49b7da1ebf9b45541b26fb2ce12)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-01 19:35:11 +00:00
Wang Mingyu
f0a12e506f mobile-broadband-provider-info: upgrade 20220725 -> 20221107
(From OE-Core rev: a18233b4318553a0255075c320ddfb5c33eca827)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 7e12fa1e6250fc358ba159a6b626458d871f7ccf)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-01 19:35:11 +00:00
Alexander Kanavin
d3f7646059 libepoxy: update 1.5.9 -> 1.5.10
Changes since 1.5.9
- Fix for building with MSVC on non-English locale [Seungha Yang]
- Fix build on Android [Caolán McNamara]
- Add the right include paths for EGL and X11 headers [Alex Richardson]

(From OE-Core rev: e411248bcee0265ffa83e91249895beab3dfad15)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 436cb3c98c582e17e6ed2491cc6598c56976af46)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-01 19:35:11 +00:00
Alexander Kanavin
171032ae79 libepoxy: convert to git
Latest version doesn't come with stable tarballs.

(From OE-Core rev: 03fbef225e8d78578cf727cec8aeb434e20cb5d7)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 4b6eed2bb323a3c7390ca3ad426afe27e9072bf0)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-01 19:35:11 +00:00
Wang Mingyu
daa1fcd0f8 sysstat: upgrade 12.6.0 -> 12.6.1
Changelog:
==========
* Fix possible overflow in sa_common.c (GHSL-2022-074).
* sa_conv.c: Make size of statistics structures from older sysstat
  versions immutable.
* Declare sadc dependency on libsyscom.a.
* Fix gcc v11.2 warnings.
* Various cosmetic fixes.
* sar: Remove `-I int_list` from man-page and help.
* Consolidate systemctl commands in README file.
* Remove whitespace characters at the end of lines.

(From OE-Core rev: 6634f0d752f9f9885a05acc2f0c26c13657060e6)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit d86ef26a76dcadf696a02389ec9156fb95516cce)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-01 19:35:11 +00:00
Alexander Kanavin
558db8694b gstreamer1.0: upgrade 1.20.3 -> 1.20.4
The fourth 1.20 bug-fix release (1.20.4) was released on 12 October 2022.

This release only contains bugfixes and it should be safe to upgrade from 1.20.x.

Highlighted bugfixes in 1.20.4

- avaudiodec: fix playback issue with WMA files, would throw an error at EOS with FFmpeg 5.x
- Fix deadlock when loading gst-editing-services plugin
- Fix input buffering capacity in live mode for aggregator, video/audio aggregator subclasses, muxers
- glimagesink: fix crash on Android
- subtitle handling and subtitle overlay fixes
- matroska-mux: allow width + height changes for avc3|hev1|vp8|vp9
- rtspsrc: fix control url handling for spec compliant servers and add fallback for incompliant servers
- WebRTC fixes
- RTP retransmission fixes
- video: fixes for formats with 4x subsampling and horizontal co-sited chroma (Y41B, YUV9, YVU9 and IYU9)
- macOS build and packaging fixes, in particular fix finding of gio modules on macOS for https/TLS support
- Fix consuming of the macOS package as a framework in XCode
- Performance improvements
- Miscellaneous bug fixes, memory leak fixes, and other stability and reliability improvements

(From OE-Core rev: eb24daa466f2b023ad1bbdef7f59e3b16be509a0)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 58e4825328dafd7f593d9eb42be5506408627a31)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-01 19:35:11 +00:00
Alexander Kanavin
423a1e3b22 pango: replace a recipe fix with an upstream submitted patch
(From OE-Core rev: e8258f174fb124f87051eae60195638f625afd67)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit f444e01e0230904510f50d1b093d75253faf1bca)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-01 19:35:11 +00:00
Peter Kjellerstedt
9fdf3e22dd pango: Make it build with ptest disabled
This avoids the following error:

  ERROR: pango-1.50.11-r0 do_package: QA Issue: pango: Files/directories
  were installed but not shipped in any package:
    /usr/libexec
    /usr/libexec/installed-tests
    /usr/libexec/installed-tests/pango
    /usr/libexec/installed-tests/pango/nofonts
    /usr/libexec/installed-tests/pango/nofonts/fonts.conf

Also use tabs for indentation of shell code.

(From OE-Core rev: 0a449acddca1ba9022c9ffd8af0d9ac5ad2c4e4c)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit d4bcd4050a6a9b6b1cb8e68b2053523cc0501814)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-01 19:35:11 +00:00
Alexander Kanavin
343951ee61 pango: upgrade 1.50.10 -> 1.50.11
Overview of changes in 1.50.11, 03-10-2022
==========================================
- Don't crash for lack of fonts
- Avoid a crash in shaping

(From OE-Core rev: c1c3a2f3d4bb002be241d37cde688c6e9d8c0bea)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit a330e75f90841cd230180d8a9b37e58d7d69c495)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-01 19:35:10 +00:00
Alexander Kanavin
774c40162b gdk-pixbuf: upgrade 2.42.9 -> 2.42.10
2.42.10 (stable)
===

- Search for rst2man.py [!145, Matt Turner]
- Update the memory size limit for JPEG images [#216, #218]
- Translation updates

(From OE-Core rev: 53ed1f139b81649774a8a262bbca91ff5bb0bbe8)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 01e1828f8e5bcb0ad88b89fe783c2973480695bb)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-01 19:35:10 +00:00
Alexander Kanavin
a754c67e7c selftest: add a copy of previous mtd-utils version to meta-selftest
The latest version update eliminated all custom patches, and the selftest
expects them.

(From OE-Core rev: fd70a508b75d403822448907033ed6f655fcbe9b)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 95298a7f1ad29c0fc0d02772d646116709ac355f)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-01 19:35:10 +00:00
Alexander Kanavin
cf9b39e70d mtd-utils: upgrade 2.1.4 -> 2.1.5
Raw short log since the 2.1.4 release:

Alex Henrie (1):
       mkfs.jffs2: fix spelling of --compression-mode parameter in help text

Andrew Mellor (1):
       ubinfo: Fix --vol_id return code for absent volume id

Christophe Kerello (1):
       nandflipbits: fix corrupted oob

David Oberhollenzer (1):
       Release mtd-utils-2.1.5

Enrico Jorns (1):
       libmtd: do not ignore non-zero eraseblock size when MTD_NO_ERASE is set

Frederic Germain (2):
       .gitignore: add new ubiscan utility
       Fix warning about unaligned pointer in jffs2reader

Khem Raj (1):
       tests: Remove unused linux/fs.h header from includes

Michael Walle (1):
       mtd-utils: flash_otp_dump make offset optional

Mike Frysinger (1):
       fix test bashism

Rafał Miłecki (1):
       nandwrite: warn about writing 0xff blocks

Sascha Hauer (1):
       mtd-utils: nanddump: fix writing big images on 32bit machines

liaohua (1):
       nor-utils: fix memory leak

(From OE-Core rev: b0ad2ab380c0f4dfb483845723a2dda4819cd4c4)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit a3289c988764e5b864873b4adc7656c101a5b9c0)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-01 19:35:10 +00:00
Alexander Kanavin
7ae76ba24a libical: upgrade 3.0.15 -> 3.0.16
Version 3.0.16 is a patch release.

- Fix regressions in 3.0.15 due to improperly tested fuzz fixes
- Fix argument guards in icaltime_as_timet to match documentation and tests.

(From OE-Core rev: 4a015b9891f68f59b7f7c98797953859abecd3e8)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 77d4557d6f6a1405d03bb5dc7ca23d7ee78c2037)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-01 19:35:10 +00:00
Alexander Kanavin
c4d4c567c0 libffi: upgrade 3.4.2 -> 3.4.4
3.4.4 Oct-23-2022
    Important aarch64 fixes, including support for linux builds
      with Link Time Optimization (-flto).
    Fix x86 stdcall stack alignment.
    Fix x86 Windows msvc assembler compatibility.
    Fix moxie and or1k small structure args.

3.4.3 Sep-19-22
    All struct args are passed by value, regardless of size, as per ABIs.
    Enable static trampolines for Cygwin.
    Add support for Loongson's LoongArch64 architecture.
    Fix x32 static trampolines.
    Fix 32-bit x86 stdcall stack corruption.
    Fix ILP32 aarch64 support.

License-Update: copyright years

(From OE-Core rev: a9adc3c60a1afee650f1d711ce0d943ca72f35d5)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 5b42ba98ef26a52bad8de1790b402938fec4a160)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-01 19:35:10 +00:00
Wang Mingyu
8ea503b141 xwayland: upgrade 22.1.4 -> 22.1.5
(From OE-Core rev: c486dd07b937c6aeb08eaa26aab125a077dd180a)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 48ca760427f14ae291bf2ebf6f93f8d0fb27e3ab)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-01 19:35:10 +00:00
Alexander Kanavin
febb572f9b xwayland: upgrade 22.1.3 -> 22.1.4
(From OE-Core rev: 28bd622e2012da4ae732dcb740c66524017aefab)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 553c080e0e30c8f6b69b4c5fae72903ee45ef6ae)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-01 19:35:10 +00:00
Alexander Kanavin
cbba586da2 linux-firmware: upgrade 20220913 -> 20221012
License-Update: copyright years, additional firmwares

(From OE-Core rev: 75b852fa9cce9c331821aed9018eeb1679f58f2b)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 9f658c724b6635e5745f30b25601bcc51a004be4)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-01 19:35:10 +00:00
Alexander Kanavin
6fe601b0cf ffmpeg: upgrade 5.1.1 -> 5.1.2
version 5.1.2:
- avcodec/dstdec: Check for overflow in build_filter()
- avformat/spdifdec: Use 64bit to compute bit rate
- avformat/rpl: Use 64bit for duration computation
- avformat/xwma: Use av_rescale() for duration computation
- avformat/sdsdec: Use av_rescale() to avoid intermediate overflow in duration calculation
- avformat/sbgdec: Check ts_int in genrate_intervals
- avformat/sbgdec: clamp end_ts
- avformat/rmdec: check tag_size
- avformat/nutdec: Check fields
- avformat/flvdec: Use 64bit for sum_flv_tag_size
- avformat/jacosubdec: Fix overflow in get_shift()
- avformat/genh: Check nb_channels for IMA ADPCM
- avformat/dxa: avoid bpc overflows
- avformat/dhav: Use 64bit seek_back
- avformat/cafdec: Check that nb_frasmes fits within 64bit
- avformat/asfdec_o: Limit packet offset
- avformat/apm: Use 64bit for bit_rate computation
- avformat/ape: Check frames size
- avformat/icodec: Check nb_pal
- avformat/aiffdec: Use 64bit for block_duration use
- avformat/aiffdec: Check block_duration
- avformat/mxfdec: only probe max run in
- avformat/mxfdec: Check run_in is within 65536
- avcodec/mjpegdec: Check for unsupported bayer case
- avcodec/apedec: Fix integer overflow in filter_3800()
- avcodec/tta: Check 24bit scaling for overflow
- avcodec/mobiclip: Check quantizer for overflow
- avcodec/exr: Check preview psize
- avcodec/tiff: Fix loop detection
- libavformat/hls: Free keys
- avcodec/fmvc: Move frame allocation to a later stage
- avfilter/vf_showinfo: remove backspaces
- avcodec/speedhq: Check width
- avcodec/bink: disallow odd positioned scaled blocks
- avformat/cafenc: derive Opus frame size from the relevant stream parameters
- avformat/dashdec: Fix crash on invalid input/ENOMEM, fix leak
- lavc/videotoolbox: do not pass AVCodecContext to decoder output callback
- lavc/pthread_frame: always transfer stashed hwaccel state
- avcodec/arm/sbcenc: avoid callee preserved vfp registers
- avformat/riffdec: don't unconditionally overwrite WAVEFORMATEXTENSIBLE layout
- avfilter/vf_scale: overwrite the width and height expressions with the original values
- lavc/pthread_frame: avoid leaving stale hwaccel state in worker threads
- avutil/tests/.gitignore: Add channel_layout testtool

(From OE-Core rev: c893aa4d621de7505fca1bc4b9af22eb503c549c)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 32da2113e553a3f81f4dcc5834e3fe30f48e4709)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-01 19:35:10 +00:00
Mikko Rapeli
0d4f2a1836 common-tasks.rst: fix oeqa runtime test path
It's "runtime/cases" in master and kirkstone.
If layer specific tests are in "runtime" directory,
they will not be found.

(From yocto-docs rev: cc5b0d08b9706468ca6446fde44fe55b18cb84dc)

Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org>
Reviewed-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-01 19:16:34 +00:00
Michael Opdenacker
2253020842 backport SPDX documentation and vulnerability improvements
(From yocto-docs rev: c87d0388caba56490c32e27911b10c926ca02ea9)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-29 10:52:16 +00:00
Sergei Zhmylev
658a991de2 wic: make ext2/3/4 images reproducible
Ext2/3/4 FS contains not only mtime, but also ctime, atime and crtime.
Currently, all the files are being added into the rootfs image using
mkfs -d functionality which affects all the timestamps excluding mtime.
This patch ensures these timestamps inside the FS image equal to
the SOURCE_DATE_EPOCH if it is set.

(From OE-Core rev: e0dc0f4a153f75d14d50d5bc91edb93fac93cd25)

Signed-off-by: Sergei Zhmylev <s.zhmylev@yadro.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 75d2dd0ea7790db2e8ee921784ca373abff2df65)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-24 15:30:06 +00:00
Richard Purdie
32342553c8 gcc-source: Ensure deploy_source_date_epoch sstate hash doesn't change
Currently if you switch machines, gcc-source do_deploy_source_date_epoch
would re-run as the stamps are tune specific. This hasn't caused much
of an issue until now, however if we fix the gcc recipes to reuse the
timestamp from this task, it does then create problems.

Copy code from allarch to ensure this task hash doesn't change between
machines/tunes.

(From OE-Core rev: fbc6c1dc6cd4b360efb11fd7165d8cb14f12cc48)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 7e052d03464ba5e880a6c5a0e45ff2f467ef97e8)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-24 15:30:06 +00:00
Richard Purdie
28cf688fe7 gcc-source: Drop gengtype manipulation
Whilst we patch gengtype.cc, we don't patch gengtype-lex.cc which would
be the file which would trigger regeneration of files.

The real bug that was likely the cause for this fix is probably SDE issues
with gcc shared workdir so this code can now be dropped.

(From OE-Core rev: bce5a6269dfed4baa893b70ada71d266b95c9a0b)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 7ab82b5db2a737c2a0266280b15d343a27c0e1d5)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-24 15:30:06 +00:00
Richard Purdie
2bd9d60d0c gcc-source: Fix gengtypes race
gcc renamed .c files to .cc files:

https://gcc.gnu.org/git/?p=gcc.git;a=commitdiff;h=5c69acb32329d49e58c26fa41ae74229a52b9106

but we didn't fix this reference which meant we re-introduced a race around
gengtypes-lex.c. This lead to the race reappearing on the autobuilder. Fix
the naming to avoid the problem again.

[YOCTO #14953]

(From OE-Core rev: a431f45ad4900aba1e45ed9c055a4032bce7609c)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit dbca40ed399405b663dbc3894e35596a2615f47d)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-24 15:30:06 +00:00
Richard Purdie
55d1ee652a gcc-shared-source: Fix source date epoch handling
The source date epoch for gcc isn't being transferred from the shared
workdir to the current WORKDIR for the specific recipe. This results in
the clamping code within sstate.bbclass using a value from 2011 which
changes the timestamps of many files. Since this happens part way
through the build, if pieces of gcc haven't built, or build/rebuild
later, we see things rebuilding when they should not and for generated
files, races are possible.

Fix this by copying the SDE from the shared workdir into the recipe
workdir.

[YOCTO #14953]

(From OE-Core rev: 2c14f7d70737636f24a044b353e171662113cea0)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit b996293b4c8ab7ff3ed852045d17290df29205df)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-24 15:30:06 +00:00
Ross Burton
28882bc0df insane: add codeload.github.com to src-uri-bad check
GitHub redirects /archive/ URLs to codeload.github.com, a dedicated
service for caching git archives:

$ wget -v https://github.com/unicode-org/icu/archive/refs/tags/release-72-1.zip
HTTP request sent, awaiting response... 302 Found
Location: https://codeload.github.com/unicode-org/icu/zip/refs/tags/release-72-1 [following]

This is not the case for uploaded artifacts:

$ wget -v https://github.com/unicode-org/icu/releases/download/release-72-1/icu4c-72_1-data-bin-l.zip.asc
HTTP request sent, awaiting response... 302 Found
Location: https://objects.githubusercontent.com/github-production-release-asset-2e65be/49244766/... [following]

Check for codeload.github.com URLs in the src-uri-bad check in case
the SRC_URI contains this final URL, and not the public URI.

(From OE-Core rev: 5c8e0e641ce676d67b10834593d90fdd87787cf9)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit a3b4575259fa304c596ed227ed60769b5f72f0a8)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-24 15:30:06 +00:00
Diego Sueiro
a4834b4f23 kernel.bbclass: Include randstruct seed assets in STAGING_KERNEL_BUILDDIR
When building with CONFIG_MODVERSIONS=y and CONFIG_RANDSTRUCT=y we need
to copy the build assets generated for the randstrutc seed to
STAGING_KERNEL_BUILDDIR, otherwise the out-of-tree modules build will
generate those assets which will result in a different
RANDSTRUCT_HASHED_SEED.

(From OE-Core rev: 69db1b345725af88088b57b0c696eddca5ca2d96)

Signed-off-by: Diego Sueiro <diego.sueiro@arm.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit b36303158b2e0273ff415bdedefb379f680b30fc)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-24 15:30:06 +00:00
Niko Mauno
4a28460712 systemd: Consider PACKAGECONFIG in RRECOMMENDS
Since RRECOMMENDS declaration implictly induces building the recipes
that provide the runtime recommended packages, conditionalize adding
such values according to associated PACKAGECONFIG settings in order
to avoid redundant building.

(From OE-Core rev: 1859eaba8638549b2dc5d6ab3ae3c0b3793eac67)

Signed-off-by: Niko Mauno <niko.mauno@vaisala.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit a1989add927f7805378fe4d5afbde780b747ba77)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-24 15:30:06 +00:00
Kai Kang
2c3895c7d2 libuv: fixup SRC_URI
Add the trailing '.git' to git repo uri in SRC_URI then it could share
source code repo on premirror with grpc which uses libuv as a git
submodule with fixed revision.

(From OE-Core rev: 40e8a444b4ae379812a0862dc0a51474380f0777)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit cecdf616e7cf192cdc723a446be1d14c197c980d)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-24 15:30:06 +00:00
Richard Purdie
d9273c8c07 bitbake.conf: Drop export of SOURCE_DATE_EPOCH_FALLBACK
Whilst SDE definitely needs to be exported, the fallback does not as
it is only used in our python code via the datastore.

It was introduced as an export in 9a1dde74e794362399193dc3f81c9685a83d0776
but even then it doesn't look like it needed to be, likely just a copy and
paste mistake.

Drop the export.

(From OE-Core rev: 5ae95506b7818f142e2cd8adf46bfd2d5282983d)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 74fb6539dd06acb0dd6a9af4809152975e8473e6)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-24 15:30:06 +00:00
Leon Anavi
1cdb6d447c get_module_deps3.py: Check attribute '__file__'
Check if the module object has attribute '__file__' to fix and
avoid errors like:

AttributeError: module '_abc' has no attribute '__file__'. Did you mean: '__name__'?

(From OE-Core rev: ede7452e6dcb202952b85b76eecbd2e1760b11e9)

Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 8acce12c1a4cf37ac312c92d62a6ae93a349dddf)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-24 15:30:06 +00:00
Marek Vasut
a86656290b bluez5: Point hciattach bcm43xx firmware search path to /lib/firmware
Currently the hciattach bcm43xx firmware loader looks up the firmware
blob in /etc/firmware . Change this to /lib/firmware instead, so that
the path is consistent with Linux kernel which also looks up firmware
for the WiFi part in /lib/firmware .

(From OE-Core rev: 7f742e0f7a401d6762b12b479d05e83be4dff92a)

Signed-off-by: Marek Vasut <marex@denx.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 72b3b79ad8b980e8dd9470d16b72c2c70072bbc0)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-24 15:30:06 +00:00
Alexander Kanavin
b46e303b92 rust: submit a rewritten version of crossbeam_atomic.patch upstream
(From OE-Core rev: 3a4e447dd9207fecce4373065172bcb67ee765b4)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 4bbfd7427092063dd612d2ca9e466cb819f5a3e3)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-24 15:30:06 +00:00
Jose Quaresma
37a5b06ccd archiver: avoid using machine variable as it breaks multiconfig
STAGING_KERNEL_DIR uses the MACHINE name so it breaks the multiconfig
and in this cases it will run the shared recipes twice, one for each
machine.

STAGING_KERNEL_DIR it's been introduced in commit 5487dee2e1

(From OE-Core rev: a71a5343838571e094ead68a42c757f0c43a41b1)

Signed-off-by: Jose Quaresma <jose.quaresma@foundries.io>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 6050d1f74c02495490d982ead2993b6b3c9cc04a)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-24 15:30:06 +00:00
Ross Burton
452dbb90db oeqa/runtime/dnf: rewrite test_dnf_installroot_usrmerge
This test doesn't get exercised on the autobuilder and so it was broken:
specifically some of the ln commands silently fail and the chroot isn't
usable.

Rewrite the test case to correctly construct a chroot so the test can
pass.

(From OE-Core rev: 6f5e10d682be54a70456c4cea9abbde4add1fead)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit bb6ebb9956a42df3ed8681aec9aedf340b12f934)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-24 15:30:06 +00:00
Peter Bergin
fcab0b528d gptfdisk: remove warning message from target system
A recent change in libuuid made warning when running
sgdisk. Backport patch from upstream to silent warning.

The warning:
    "Warning! Unable to generate a proper UUID! Creating an improper one as a last
     resort! Windows 7 may crash if you save this partition table!"

(From OE-Core rev: 3ab83b07ba46e184bd49362f226f737caa4868d7)

Signed-off-by: Peter Bergin <peter@berginkonsult.se>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit ce6491b900e509a776eddaf6bd57251628393fa3)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-24 15:30:06 +00:00
Alexander Kanavin
5441c37b10 libffi: submit patch upstream
(From OE-Core rev: 7d1ff6602e683b03457ad97c763593f466616a2a)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 9555a7dc768c32a009333232e25cef041054b7f7)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-24 15:30:06 +00:00
Alexander Kanavin
be2850d104 ovmf: correct patches status
(From OE-Core rev: 91371976a71a2433597dd1921ff17212c1fe93ce)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 0f758719ad26fd7b23bbf21a37375f8de7068f0e)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-24 15:30:06 +00:00
Alexander Kanavin
ac079fb88b kea: submit patch upstream
(From OE-Core rev: bf79cd69a6027218a90b5c43a153faaa710247b1)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit e8f0e3a01262ecb83185ec5e84e6f359d7d64d1d)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-24 15:30:06 +00:00
Alexander Kanavin
e5144484fe lttng-tools: submit determinism.patch upstream
(From OE-Core rev: 8167b8769550455fef685da8db41d9613fa23b84)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit bec62455d900a0d3e18a62ea7053c214bc545fb6)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-24 15:30:06 +00:00
Alexander Kanavin
32ebb8f912 tcl: correct patch status
(From OE-Core rev: d480c9842cc4a8cc9370cc9893b2de8535e5b960)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 9f37e5b83db662bba92605c8741516108aad3c5e)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-24 15:30:06 +00:00
Alexander Kanavin
1779169485 groff: submit patches upstream
(From OE-Core rev: cd49ff1795363a7029c6c18f4524a4c4425d870f)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 4269cfcd6c29be05964010d0406584b80822d1d1)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-24 15:30:06 +00:00
Alex Kiernan
096546cc63 cargo_common.bbclass: Fix typos
(From OE-Core rev: 48e7851721735f31be5ed5a69b516c2b18c4c2ab)

Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit c7a92180b21e75a84f632e4c16e63dc1f4861a00)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-24 15:30:06 +00:00
Xiangyu Chen
2c7dba9592 sudo: upgrade 1.9.11p3 -> 1.9.12p1
(From OE-Core rev: 2ee8bfb667edf2ff3785bc52afb289374709de4c)

Signed-off-by: Xiangyu Chen <xiangyu.chen@windriver.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-24 15:30:06 +00:00
Steve Sakoman
dad1a3e46c Revert "sudo: backport fix for CVE-2022-43995"
Prepare for version bump

This reverts commit a41a5f310246dcd9dbdb4537d59bc0579c3b1052.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-24 15:30:06 +00:00
Wang Mingyu
6beae74abe libxcrypt: upgrade 4.4.28 -> 4.4.30
Changelog:
==========
* configure: Restore ucontext api functionality check.
  In c3f01c72b303cbbb0cc8983120677edee2f3fa4b the use of the ucontext api
  in the main program was removed, and with it the configure check for it.
  However, the ucontext api is still used in the "explicit_bzero" test and
  thus this test still needs to be in place.
  See also: https://bugs.gentoo.org/838172
* configure: Restore the functionality of the '--disable-symvers' switch.
  Without this fix the build was simply broken, if symbol versioning was
  disabled for any reason, e.g. whether the compiler nor the linker
  supporting it, or if disabled on purpose by the user (issue #142).
* Fix variable name in crypt(3) for a datamember of 'struct crypt_data'
  (issue #153).
* Add glibc-on-loongarch-lp64 (Loongson LA464 / LA664) entry to
  libcrypt.minver.  This was added in GNU libc 2.36.

(From OE-Core rev: 9f78a2b3fd16c8aee398ad95a0fdbb412ac031fd)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 7da5dd3b43718b876645602b1a23c739cbe8016d)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-24 15:30:06 +00:00
Wang Mingyu
258aad0b90 socat: upgrade 1.7.4.3 -> 1.7.4.4
1.7.4.4 is a bug fix release

0001-configure.ac-check-getprotobynumber_r-with-AC_TRY_LI.patch
removed since it's included in 1.7.4.4

(From OE-Core rev: d7570afa4163f6e94388763143f68752c9f1c1f4)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit c00e9d66f0b8449ff1bf24546f232345eb6feebd)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-24 15:30:06 +00:00
Wang Mingyu
71cb87f0e3 inetutils: upgrade 2.3 -> 2.4
CVE-2022-39028.patch
removed since it's included in 2.4

Changelog:
==========
ifconfig
------------
Support specifying prefix netmask lengths in -A.
Hurd: tell pfinet translator interfaces to configure

ftp
----------
Avoid crash caused by signed integer overflow resulting in out-of-bounds buffer access.
Avoid crash caused by heap buffer overflow.
Avoid crash caused by NULL pointer dereference.
Avoid crash caused by infinite macro recursion.

telnetd
-----------
Avoid crash on 0xff 0xf7 (IAC EC) or 0xff 0xf8 (IAC EL).  CVE-2022-39028

telnet
-----------
Fix a buffer overflow problem.  CVE-2019-0053

tftp
-----------
Avoid crashing when given unexpected or invalid commands from tty.
Various bugs fixes, internal improvements and clean ups.

(From OE-Core rev: b8d39056f58ac6a2264b432c95fd7012babe5164)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit fec6ec179b97b768d32fbd782338450edc1a5344)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-24 15:30:06 +00:00
Wang Mingyu
90246ed04b bind: upgrade 9.18.7 -> 9.18.8
Changelog:
https://gitlab.isc.org/isc-projects/bind9/-/blob/v9_18_8/CHANGES

	--- 9.18.7 released ---

5962.	[security]	Fix memory leak in EdDSA verify processing.
			(CVE-2022-38178) [GL #3487]

5960.	[security]	Fix serve-stale crash that could happen when
			stale-answer-client-timeout was set to 0 and there was
			a stale CNAME in the cache for an incoming query.
			(CVE-2022-3080) [GL #3517]

5959.	[security]	Fix memory leaks in the DH code when using OpenSSL 3.0.0
			and later versions. The openssldh_compare(),
			openssldh_paramcompare(), and openssldh_todns()
			functions were affected. (CVE-2022-2906) [GL #3491]

5958.	[security]	When an HTTP connection was reused to get
			statistics from the stats channel, and zlib
			compression was in use, each successive
			response sent larger and larger blocks of memory,
			potentially reading past the end of the allocated
			buffer. (CVE-2022-2881) [GL #3493]

5957.	[security]	Prevent excessive resource use while processing large
			delegations. (CVE-2022-2795) [GL #3394]

5956.	[func]		Make RRL code treat all QNAMEs that are subject to
			wildcard processing within a given zone as the same
			name. [GL #3459]

5955.	[port]		The libxml2 library has deprecated the usage of
			xmlInitThreads() and xmlCleanupThreads() functions. Use
			xmlInitParser() and xmlCleanupParser() instead.
			[GL #3518]

5954.	[func]		Fallback to IDNA2003 processing in dig when IDNA2008
			conversion fails. [GL #3485]

5953.	[bug]		Fix a crash on shutdown in delete_trace_entry(). Add
			mctx attach/detach pair to make sure that the memory
			context used by a memory pool is not destroyed before
			the memory pool itself. [GL #3515]

5952.	[bug]		Use quotes around address strings in YAML output.
			[GL #3511]

5951.	[bug]		In some cases, the dnstap query_message field was
			erroneously set when logging response messages.
			[GL #3501]

5948.	[bug]		Fix nsec3.c:dns_nsec3_activex() function, add a missing
			dns_db_detachnode() call. [GL #3500]

5947.	[func]		Change dnssec-policy to allow graceful transition from
			an NSEC only zone to NSEC3. [GL #3486]

5946.	[bug]		Fix statistics channel's handling of multiple HTTP
			requests in a single connection which have non-empty
			request bodies. [GL #3463]

5945.	[bug]		If parsing /etc/bind.key failed, delv could assert
			when trying to parse the built in trust anchors as
			the parser hadn't been reset. [GL !6468]

5944.	[bug]		Fix +http-plain-get and +http-plain-post options
			support in dig. Thanks to Marco Davids at SIDN for
			reporting the problem. [GL !6672]

5942.	[bug]		Fix tkey.c:buildquery() function's error handling by
			adding the missing cleanup code. [GL #3492]

5941.	[func]		Zones with dnssec-policy now require dynamic DNS or
			inline-siging to be configured explicitly. [GL #3381]

5938.	[bug]		An integer type overflow could cause an assertion
			failure when freeing memory. [GL #3483]

5936.	[bug]		Don't enable serve-stale for lookups that error because
			it is a duplicate query or a query that would be
			dropped. [GL #2982]

5935.	[bug]		Fix DiG lookup reference counting bug, which could
			be observed in NSSEARCH mode. [GL #3478]

(From OE-Core rev: 14b6bcb46a5e81027ec823aa7315c0e519cfece6)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 1d87d2652f7f6640dda85e037c580c83f99a8ba8)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-24 15:30:06 +00:00
Richard Purdie
52d6688d37 lttng-modules: upgrade 2.13.5 -> 2.13.7
2022-09-30 (National Day for Truth and Reconciliation) LTTng modules 2.13.7
	* Fix: handle integer capture page faults as skip field

2022-09-30 (National Day for Truth and Reconciliation) LTTng modules 2.13.6
	* Fix: bytecode validator: reject specialized load field/context ref instructions
	* Fix: bytecode validator: reject specialized load instructions
	* Fix: honor "user" attribute for array/sequence of user integers
	* wrapper: powerpc64: fix kernel crash caused by do_get_kallsyms
	* Fix: event notification: Remove duplicate event enabled check
	* Fix: event notification capture: validate buffer length
	* Fix: handle capture page faults as skip field
	* Fix: event notification capture error handling
	* Fix: capture_sequence_element_{un,}signed: handle user-space input
	* Fix: notification capture: handle userspace strings
	* Implement lttng_msgpack_write_user_str
	* Fix: bytecode interpreter: LOAD_FIELD: handle user fields
	* Fix: move "user" attribute from field to type
	* Introduce lttng_copy_from_user_check_nofault
	* fix: adjust range v5.10.137 in block probe

(From OE-Core rev: 9d80f9260da5b16e157d9aa8dc181a12785cb28e)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 1243d6afc075e3c89ca69af214e70c0d159cb832)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-24 15:30:06 +00:00
Tim Orling
d0e14b5730 python3-mako: upgrade 1.2.2 -> 1.2.3
Released: Thu Sep 22 2022
* bug

 - [bug] [lexer]

   * Fixed issue in lexer in the same category as that of #366 where the regexp
     used to match an end tag didn’t correctly organize for matching characters
     surrounded by whitespace, leading to high memory / interpreter hang if a
     closing tag incorrectly had a large amount of unterminated space in it.
     Credit to Sebastian Chnelik for locating the issue.

    As Mako templates inherently render and directly invoke arbitrary Python
    code from the template source, it is never appropriate to create templates
    that contain untrusted input.

    References: #367

[1] https://docs.makotemplates.org/en/latest/changelog.html#change-1.2.3
[2] https://github.com/sqlalchemy/mako/issues/366
[3] https://github.com/sqlalchemy/mako/issues/367

(From OE-Core rev: ce8d8fb1052eb45c0a4a860cb59c53c93430d6bf)

Signed-off-by: Tim Orling <tim.orling@konsulko.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 49ad6f031458e1f48f24547dc88e41abc4ec41a6)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-24 15:30:06 +00:00
Sakib Sajal
7c1dbc09d7 go: update 1.19.2 -> 1.19.3
go1.19.3 (released 2022-11-01) includes security fixes to the os/exec and syscall
packages, as well as bug fixes to the compiler and the runtime.

(From OE-Core rev: ff2436215efda27cc380840a4f97910d3263e245)

Signed-off-by: Sakib Sajal <sakib.sajal@windriver.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit fd33d169a5febb37eac03312c4014e35d29d06df)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-24 15:30:06 +00:00
Alexander Kanavin
8db10bfba9 go: update 1.19 -> 1.19.2
go1.19.2 (released 2022-10-04) includes security fixes to the archive/tar,
net/http/httputil, and regexp packages, as well as bug fixes to the compiler,
the linker, the runtime, and the go/types package.

Drop stack-protector.patch as issue fixed upstream.

(From OE-Core rev: a5cfa272ee1aa1a836ddf5face54fd6072e789c0)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 1b79d63a0703deb341f7693bd7b7c080a553b876)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-24 15:30:06 +00:00
Alexander Kanavin
c576acceb3 go: submit patch upstream
(From OE-Core rev: e917306e0d45cff7c840e2954c95a495b1bfb38f)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 40d24b0b5c7a405bf9fd7ec7fa57ec61a6af3d01)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-24 15:30:06 +00:00
Ross Burton
5031452ae5 expat: upgrade to 2.5.0
Release 2.5.0 Tue October 25 2022
        Security fixes:
  #616 #649 #650  CVE-2022-43680 -- Fix heap use-after-free after overeager
                    destruction of a shared DTD in function
                    XML_ExternalEntityParserCreate in out-of-memory situations.
                    Expected impact is denial of service or potentially
                    arbitrary code execution.

        Bug fixes:
       #612 #645  Fix curruption from undefined entities
       #613 #654  Fix case when parsing was suspended while processing nested
                    entities
  #616 #652 #653  Stop leaking opening tag bindings after a closing tag
                    mismatch error where a parser is reset through
                    XML_ParserReset and then reused to parse
            #656  CMake: Fix generation of pkg-config file
            #658  MinGW|CMake: Fix static library name

        Other changes:
            #663  Protect header expat_config.h from multiple inclusion
            #666  examples: Make use of XML_GetBuffer and be more
                    consistent across examples
            #648  Address compiler warnings
       #667 #668  Version info bumped from 9:9:8 to 9:10:8;
                    see https://verbump.de/ for what these numbers do

Includes a fix for CVE-2022-43680.

(From OE-Core rev: 5544b66484502a6353dcf4c220645a58bbec3af8)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit a257a674272dc638f09167e9b9202adfb477ef1e)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-24 15:30:06 +00:00
Richard Purdie
6361c77aca bitbake: runqueue: Fix race issues around hash equivalence and sstate reuse
We identified a use case where a native recipe (autoconf-native) was
rebuilt with no change in output yet the sstate for do_package tasks
wasn't being used.

The issue is that do_package tasks have a hard dependency on
pseudo-native:do_populate_sysroot. That task was one of the many
tasks being rehashed when autoconf-native's hash was changed.

If update_tasks processed a recipe before it had processed pseudo-native,
that recipe would be marked as not possible from sstate and would
run the full tasks.

The fix is to split the processing into two passes, first to handle
the existing covered/notcovered updates, then in the second pass,
check whether there are "harddep" issues.

This defers the do_package tasks until after pseudo-native is installed
from sstate as expected and everything works well again.

(Bitbake rev: 3b2d1331487a74863e74cc0c5564004cbb1b5a4a)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit e479d1e418a7d34f0a4663b4a0e22bb11503c8ab)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-24 15:25:15 +00:00
Richard Purdie
d3cda9a3e0 build-appliance-image: Update to langdale head revision
(From OE-Core rev: 9237ffc4feee2dd6ff5bdd672072509ef9e82f6d)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-14 16:30:23 +00:00
Michael Opdenacker
80d22fc07f create-spdx.bbclass: remove unused SPDX_INCLUDE_PACKAGED
[YOCTO #14948]

(From OE-Core rev: 88ca1b07abf1a8641a0eb8382e9322349a150c98)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 89f1abd5e00807cf179ddf658f74d48119523b0c)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-14 15:59:15 +00:00
ciarancourtney
c35857bd24 wic: swap partitions are not added to fstab
- Regression in 7aa678ce804c21dc1dc51b9be442671bc33c4041

(From OE-Core rev: 8fdb75c0f0f7458305ccae657cf2722520e00572)

Signed-off-by: Ciaran Courtney <ciaran.courtney@activeenergy.ie>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit f1243572ad6b6303fe562e4eb7a9826fd51ea3c3)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-14 15:59:15 +00:00
Ross Burton
d8917f76bc sanity: check for GNU tar specifically
We need the system tar to be GNU tar, as we reply on --xattrs.  Some
distributions may be using libarchive's tar binary, which is definitely
not as featureful, so check for this and abort early with a clear
message instead of later with mysterious errors.

(From OE-Core rev: fd92cdc6d2b9b3b808503b3274860a7c301587cb)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 7dd2b1cd1bb10e67485dab8600c0787df6c2eee7)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-14 15:59:15 +00:00
Alexander Kanavin
d5add7c5b7 quilt: backport a patch to address grep 3.8 failures
(From OE-Core rev: a46aad035d800193b740bad2431ce30fae736a23)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit b5001af5c711a373bd2f1ea108c8b597dd40faca)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-14 15:59:15 +00:00
Bernhard Rosenkränzer
e65081b949 cmake-native: Fix host tool contamination
[v2 hopefully fixes the From: mangling by the ML, no functional changes]

Trying to build cmake-native on a host system where curl was built with cmake
(resulting in CURLConfig.cmake and friends, which do not use the same naming
schemes expected by cmake-native's build process, being installed to a system
wide cmake directory like /usr/lib64/cmake/CURL) results in undefined
references to all libcurl symbols.

The problem is that cmake-native sees and uses the system wide
/usr/lib64/cmake/CURL/CURLConfig.cmake, which defines CURL::libcurl and
CURL::curl as opposed to setting ${CURL_LIBRARIES} as expected by
cmake-native.

find_package(CURL) (cmake-native's CMakeLists.txt, line 478) succeeds, but
incorrectly uses the system wide CURLConfig.cmake, resulting
CMAKE_CURL_LIBRARIES to be set to an empty string (cmake-native's
CMakeLists.txt, line 484), causing the cmake-native build to miss -lcurl.

The simplest fix is to let cmake know the right value for
CURL_LIBRARIES. Making it -lcurl should always work with libcurl-native
in recipe-sysroot-native.

[YOCTO #14951]

(From OE-Core rev: 62b117c382ffd65f6c5d808699b664f70ba6f2d8)

Signed-off-by: Bernhard Rosenkränzer <bero@baylibre.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 2659c735a464c956b4fca0894a5aed27a0fe7e37)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-14 15:59:15 +00:00
Alexander Kanavin
027ec0ecf5 lttng-modules: upgrade 2.13.4 -> 2.13.5
2022-08-19 (National Potato Day) LTTng modules 2.13.5
	* Fix: incorrect stub prototypes when CONFIG_HAVE_SYSCALL_TRACEPOINTS=n
	* fix: mm/tracing: add 'accounted' entry into output of allocation tracepoints (v6.0)
	* fix: block: remove bdevname (v6.0)
	* fix: fs/jbd2: Fix the documentation of the jbd2_write_superblock() callers (v6.0)
	* fix: tie compaction probe build to CONFIG_COMPACTION
	* fix: net: skb: introduce kfree_skb_reason() (v5.15.58..v5.16)
	* fix: workqueue: Fix type of cpu in trace event (v5.19)
	* fix: fs: Remove flags parameter from aops->write_begin (v5.19)
	* fix: mm/page_alloc: fix tracepoint mm_page_alloc_zone_locked() (v5.19)

(From OE-Core rev: cbb85f35d342ffd1c8a0f147f139a8d1a3084aae)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 335c60e76b341014bd69eaac0a4b281036a94916)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-14 15:59:15 +00:00
Alexander Kanavin
54fb46c66e shadow: update 4.12.1 -> 4.12.3
4.12.2 changes
	* Address CVE-2013-4235
	* Fix uk manpages

4.12.3 changes
	* Revert the removal of subid_init as pointed out by Balint.
	* Address CVE-2013-4235 (TOCTTOU when copying directories)

(From OE-Core rev: 30fe8df131a3ef5efa5c35e69fce7b2d1bdc2f7d)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 5b9fc88d06f79e8dbd2375172689f2fbf3e2a8a3)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-14 15:59:15 +00:00
Ross Burton
63e80a0233 sudo: backport fix for CVE-2022-43995
(From OE-Core rev: a41a5f310246dcd9dbdb4537d59bc0579c3b1052)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-14 15:59:15 +00:00
Ross Burton
c689d5d4e3 pixman: backport fix for CVE-2022-44638
(From OE-Core rev: 23df4760ebc153c484d467e51b414910c570a6f8)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-14 15:59:15 +00:00
Robert Joslyn
2ac597044a curl: Backport CVE fixes
Backport fixes for:
 - CVE-2022-32221 POST following PUT confusion
 - CVE-2022-35260 .netrc parser out-of-bounds access
 - CVE-2022-42915 HTTP proxy double-free
 - CVE-2022-42916 HSTS bypass via IDN

(From OE-Core rev: 724c8b65fe307af602b6bf7e3704dfb25bc51ee9)

Signed-off-by: Robert Joslyn <robert.joslyn@redrectangle.org>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-14 15:59:15 +00:00
Mark Asselstine
79434a17eb bitbake: bitbake: bitbake-layers: checkout layer(s) branch when clone exists
[YOCTO #7852]

Fixes 'bitbake-layers layerindex-fetch --branch kirkstone meta-arm'
not checking out the branch if the repo is already cloned and on a
different branch.

If a clone of a layer being added already exists check what branch it
is on and if necessary attempt to switch to the given branch. If the
switch fails to happen the git error will be reported. We also warn if
there are uncommitted changes as the changes might go unnoticed and
result in unexpected behaviors.

(Bitbake rev: 138dd7883ee2c521900b29985b6d24a23d96563c)

Signed-off-by: Mark Asselstine <mark.asselstine@windriver.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit d2cb388f58a37db2149fad34e4572d954e6e5441)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-10 14:43:30 +00:00
Justin Bronder
25f355e0ef bitbake: asyncrpc: serv: correct closed client socket detection
If the client socket is closed, asyncio.StreamReader.readline() will
return an empty bytes object, not None.

This prevents multiple tracebacks being logged by bitbake-hashserv each
time bitbake is started and performs a connection check.

(Bitbake rev: 4bdd9ba43f34a1473db31a6a3b10bd33e358fe3a)

Signed-off-by: Justin Bronder <jsbronder@cold-front.org>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 2d07f252704dff7747fa1f9adf223a452806717f)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-10 14:43:30 +00:00
Ross Burton
186d179614 bitbake: fetch2/git: don't set core.fsyncobjectfiles=0
This git configuration variable is deprecated in 2.36.0 onwards, so git
warns in the logs for every git call.

Luckily the default value has always been false[1], so we can just remove
this.

[ YOCTO #14939 ]

[1] aafe9fbaf4

(Bitbake rev: 13f86aeb53cd73c03bfb2f00fe923b51ec8d1c73)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 8ad310633e0c5d5593631c1196cbdde30147efce)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-10 14:43:30 +00:00
Michael Opdenacker
975e3fb53c bitbake: bitbake-user-manual: details about variable flags starting with underscore
Fixes [YOCTO #14140]

(Bitbake rev: 8a08e207854810b40b53946ec94065a6a560a7a5)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 0f3e9d87168813ce49995ff04bccdce11c5f7b47)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-10 14:43:30 +00:00
Steve Sakoman
e881560619 poky.conf: bump version for 4.1.1
(From meta-yocto rev: e911b760d279774d8ab24529a2ffd82c02976feb)

Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:56 +00:00
Etienne Cordonnier
6054c58908 mirrors.bbclass: use shallow tarball for binutils-native
This is useful e.g. when using meta-clang, which introduces a dependency to binutils-native, and then a
full tarball of binutils is fetched additionally to a shallow tarball.

The original BB_GIT_SHALLOW lines were added because of https://www.mail-archive.com/yocto@lists.yoctoproject.org/msg08752.html

(From OE-Core rev: 0eee57ef03908c04e1567889f72d7187b5c1f657)

Signed-off-by: Etienne Cordonnier <ecordonnier@snap.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit bd83b8b502ae935c75b59aaf71bbb531c9771dcc)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:14 +00:00
Alexander Kanavin
cb9d9fd076 rust: install rustfmt for riscv32 as well
With the above rust arch fixes it builds just fine.

(From OE-Core rev: 655b9a0bbe07b33db8aa6ebf7c49f3d9074cc5e0)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit f417ae30c79fac99e2549324ed351f6f63cc4a25)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:14 +00:00
Alexander Kanavin
7b401c7540 rust-target-config: match riscv target names with what rust expects
Official rust risc-v targets are prefixed with riscv32gc- and riscv64gc-:
https://doc.rust-lang.org/nightly/rustc/platform-support.html

Particularly crossbeam-utils make important build time decisions
for atomics based on those names, and so we need to match ours
with official targets.

On the other hand, the actual definitions for those targets do not
use the 'gc' suffix in 'arch' and 'llvm-target' fields, and so we
need to follow that too, to avoid cryptic mismatch errors from rust-llvm:
https://github.com/rust-lang/rust/blob/master/compiler/rustc_target/src/spec/riscv32gc_unknown_linux_gnu.rs

(From OE-Core rev: 2daa8d76369cd06e5c357e393e3145e08f3d6760)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 1cfb9c8a59d98ccc9b0510cd28fb933f72fb6b6c)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:14 +00:00
Sean Anderson
62c4b68a11 kernel-fitimage: Use KERNEL_OUTPUT_DIR where appropriate
We have a specific variable for the path to the boot directory. Use it
instead of open-coding this path.

(From OE-Core rev: dda8017274e71daa7aa4d8a3a15e128df213b0de)

Signed-off-by: Sean Anderson <sean.anderson@seco.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 725b75e83bc2b2111f2ab5103b7e7f60d6d3f34e)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:14 +00:00
Sean Anderson
1b5b1ba8fb kernel: Clear SYSROOT_DIRS instead of replacing sysroot_stage_all
Replacing sysroot_stage_all by a no-op recipe makes it difficult for
bbappends to stage files intentionally. Instead, just clear
SYSROOT_DIRS, allowing other bbappends to easily add new directories.

(From OE-Core rev: d9081df0dc62f733bef643340af678eeba74fe89)

Signed-off-by: Sean Anderson <sean.anderson@seco.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 849791e7086463a4c7c53c2c1ed9603a6c3a080d)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:14 +00:00
Sean Anderson
6bded7cb12 uboot-sign: Fix using wrong KEY_REQ_ARGS
When generating our SPL-verifying certificate, we use FIT_KEY_REQ_ARGS,
which is intended for the U-Boot-verifying certificate. Instead, use
UBOOT_FIT_KEY_REQ_ARGS.

Fixes: 0e6b0fefa0 ("u-boot: Use a different Key for SPL signing")
(From OE-Core rev: f01b15fcffd1a628a17caf1e94753c8cd09ea48f)

Signed-off-by: Sean Anderson <sean.anderson@seco.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit a2d939ccb182a1ad29280d236b9f9e1d09527af1)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:14 +00:00
Jose Quaresma
d18ec217b3 kernel-yocto: improve fatal error messages of symbol_why.py
Improve the fatal error message of the yocto-kernel-tools symbol_why.py
and shows the command that generate the error as it can help understand
the root cause of the error.

(From OE-Core rev: 97cb48ce09d80e5496e4f887a8cf02125c66c6c5)

Signed-off-by: Jose Quaresma <jose.quaresma@foundries.io>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 54ae08779071f2e97bff0ff6514ede3124312c3b)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:14 +00:00
Claus Stovgaard
0771c25330 gstreamer1.0-libav: fix errors with ffmpeg 5.x
Backport of patch already present upstream to fix issues with invalid
characters for GLIB when combining gstreamer1.0-libav with ffmpeg 5.x.

Remove when gstreamer1.0-libav is upgraded to 1.21.1 or above

(From OE-Core rev: 8a837dba82d6e665406c2ee0543ee0135fe2ae3a)

Signed-off-by: Claus Stovgaard <claus.stovgaard@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 703ff945557ad307bbe4ba0b0b7f1a2e5b4b847e)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:14 +00:00
Peter Kjellerstedt
f02d7f4547 externalsrc.bbclass: Remove a trailing slash from ${B}
The trailing slash in ${B} caused -fdebug-prefix-map=${B}=... to not
match as intended, resulting in ${TMPDIR} ending up in files in
${PN}-dbg when externalsrc was in use, which in turn triggered buildpath
QA warnings.

(From OE-Core rev: c7e94e74eceef0b22d09d80d0da6ddcd86d9b12e)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 9b5031ed5a0d102905fa75acc418246c23df6eef)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:14 +00:00
Sergei Zhmylev
d051fc188b wic: honor the SOURCE_DATE_EPOCH in case of updated fstab
In case user requested to build a binary repeatable package,
it's required to honor the SOURCE_DATE_EPOCH environment
variable. So forcefully set mtime inside all the routines
which modify fstab in case it is updated.

(From OE-Core rev: 4d3f43fe06186b6580395a161fdbc4470b8aab62)

Signed-off-by: Sergei Zhmylev <s.zhmylev@yadro.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 99719a3712a88dce8450994d995803e126e49115)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:14 +00:00
Martin Jansa
22c5e7fa3e externalsrc.bbclass: fix git repo detection
* fix issue introduced in:
  https://git.openembedded.org/openembedded-core/commit/?id=95fbac8dcad6c93f4c9737e9fe13e92ab6befa09

* it added check for s_dir + git-dir (typically '.git') isn't
  the same as ${TOPDIR} + git-dir, but due to copy-paste issue
  it was just comparing it with s_dir + git-dir again, resulting
  in most external repos (where git-dir is '.git') to be processed
  as regular directory (not taking advantage of git write-tree).

* normally this wouldn't be an issue, but for big repo with a lot of
  files this added a lot of checksums in:
  d.setVarFlag('do_compile', 'file-checksums', '${@srctree_hash_files(d)}')

  and I mean *a lot, e.g. in chromium build it was 380227 paths
  which still wouldn't that bad, but the checksum processing in
  siggen.py isn't trivial and just looping through all these
  checksums takes very long time (over 1000sec on fast NVME drive
  with warm cache) and then
  https://git.openembedded.org/bitbake/commit/?id=b4975d2ecf615ac4c240808fbc5a3f879a93846b
  made the processing a bit more complicated and the loop in
  get_taskhash() function took 6448sec and to make things worse
  there was no output from bitbake during that time, so even with -DDD
  it looks like this:

  DEBUG: virtual/libgles2 resolved to: mesa (langdale/oe-core/meta/recipes-graphics/mesa/mesa_22.2.0.bb)
  Bitbake still alive (no events for 600s). Active tasks:
  Bitbake still alive (no events for 1200s). Active tasks:
  Bitbake still alive (no events for 1800s). Active tasks:
  Bitbake still alive (no events for 2400s). Active tasks:
  Bitbake still alive (no events for 3000s). Active tasks:
  Bitbake still alive (no events for 3600s). Active tasks:
  Bitbake still alive (no events for 4200s). Active tasks:
  Bitbake still alive (no events for 4800s). Active tasks:
  Bitbake still alive (no events for 5400s). Active tasks:
  Bitbake still alive (no events for 6000s). Active tasks:
  DEBUG: Starting bitbake-worker

  without -DDD it will get stuck for almost 2 hours in:
  "Initialising tasks..."
  before it finally writes sstate summary like:
  "Sstate summary: Wanted 3102 Local 0 Mirrors 0 Missed 3102 Current 1483 (0% match, 32% complete)"

* fix the copy&paste typo to use git work-tree in most cases, but
  be aware that this issue still exists for huge local source
  trees not in git

[YOCTO #14942]

(From OE-Core rev: 43d3a1a314cf4cab1b384ebf81e10610f18ed12c)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 9102e5a94b8146cb1da27afbe41d3db999a914ff)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:14 +00:00
Luca Boccassi
cd873bc5de systemd: add systemd-creds and systemd-cryptenroll to systemd-extra-utils
ERROR: systemd-1_251.4-r0 do_package: QA Issue: systemd: Files/directories were installed but not shipped in any package:
  /usr/bin/systemd-creds
  /usr/bin/systemd-cryptenroll

(From OE-Core rev: 34cdacb072644f4bd610c48a789e4001d374e190)

Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit b3763dd26d324a7ce575586f306b8aec4b1103b3)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:14 +00:00
Keiya Nobuta
2f52d04e17 create-spdx: Remove ";name=..." for downloadLocation
(From OE-Core rev: e2258c34a7a587f67b233617613a12fe4549932a)

Signed-off-by: Keiya Nobuta <nobuta.keiya@fujitsu.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit bbecab53d1b27f3bb8c5882cb0ec39b04ef300a3)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:14 +00:00
Bruce Ashfield
3d58ac1ddd kern-tools: fix relative path processing
The previous fix for processing of paths with relative components, broke
uses cases that were a mix of patches and configuration fragments.

Updating the SRCREV to include a simplied fix for relative paths, and
a cleanup patch from Jose:

[
  Author: Jose Quaresma <quaresma.jose@gmail.com>
  Date:   Thu Sep 29 16:37:23 2022 +0000

      scc: only look for error in scc_output_file if it has valid content

      When process_file function fails the output of the processed script is show to
      the user, some parsing is performed as well to look for common errors so we
      can point to the right input file.

      This can only be done when the scc_output_file have some valid content
      otherwise it will show invalid messages to the user.

      Signed-off-by: Jose Quaresma <jose.quaresma@foundries.io>
      Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>

  Author: Bruce Ashfield <bruce.ashfield@gmail.com>
  Date:   Wed Oct 5 19:13:33 2022 +0000

      spp: ensure that prefix check uses absolute paths

      The previous fix for this issue was too broad, and impacted
      all calls to the prefix check and removal. With this change,
      we only expand the input on scc/spp operations that may
      execute with relative paths.

      Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
]

(From OE-Core rev: d56e29947176976e172a3e731a6ae37df98af4bb)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 533720a1756454447341769c4a0969fce8d6f287)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:14 +00:00
Mingli Yu
e6428f3c1c grub: disable build on armv7ve/a with hardfp
The commit(75dbdea940 grub: Allow build on armv7ve/a with softfp)
enable build on armv7ve/a with softfp, but it acutally enable
build on armv7ve/a with hardfp altogether and result in below build
failure:
 | checking for compile options to get strict alignment... -mno-unaligned-access
 | checking if compiler generates unaligned accesses... no
 | checking if C symbols get an underscore after compilation... no
 | checking whether target compiler is working... no
 | configure: error: cannot compile for the target

So update the check to disable build on armv7ve/a with hardfp.

(From OE-Core rev: 3d4bb6b1ba41e83c98e821ddf86e231daec029b1)

Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit f67b2880fc2cfb21f51216c63b5f24d0524b4278)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:14 +00:00
Thomas Perrot
db48ca5830 xserver-xorg: move some recommended dependencies in required
Otherwise, xserver will no longer start when NO_RECOMMENDATIONS = “1”,
because dependencies in XSERVER_RRECOMMENDS are missing.

(From OE-Core rev: c017175deed298f7fb3fff9181eb4379fcc436d7)

Signed-off-by: Thomas Perrot <thomas.perrot@bootlin.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit bc7bd3953f3896af0db036250cda34bc9ecbb3ac)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:14 +00:00
Vincent Davis Jr
23cf93f091 linux-firmware: package amdgpu firmware
Add packages for the firmware required by amdgpu kernel driver.

(From OE-Core rev: bb907ecbc0f513b83163db0985ae9ab3486389f4)

Signed-off-by: Vincent Davis Jr <vince@underview.tech>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 0d7aa21f120a756d1a4fc4ae0be3527b54a58247)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:14 +00:00
Christian Eggers
9921f0a250 linux-firmware: split rtl8761 firmware
Realtek Bluetooth devices require binary firmware files. Package them
separately in order to avoid installing the full linux-firmware package
on embedded devices.

Affected (end user) products (incomplete list):
- TP-Link UB500
- Logilink BT0054

(From OE-Core rev: 2772f356d4a8b8f31c34a3951814d04fb4f3decb)

Signed-off-by: Christian Eggers <ceggers@arri.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit fb44eb4feef54f2343c8186809a65dcb9b58a9b2)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:14 +00:00
Martin Jansa
cd89ca53ed vulkan-samples: add lfs=0 to SRC_URI to avoid git smudge errors in do_unpack
* we don't need other_lib/ios/Debug-iphoneos/libSDL2.a from
  https://github.com/KhronosGroup/KTX-Software.git so we can explicitly
  disable LFS here to avoid do_unpack error, bitbake will then use
  GIT_LFS_SKIP_SMUDGE=1 to override smudge setting in gitconfig,
  otherwise we would need bitbake patch to fetch LFS objects from the
  submodules as well

* do_fetch won't fetch LFS objects without explicitly requesting lfs in SRC_URI
  then do_unpack might run git smudge when enabled in .gitconfig (or /etc/gitconfig) with:

[filter "lfs"]
       smudge = git-lfs smudge -- %f
       process = git-lfs filter-process
       required = true
       clean = git-lfs clean -- %f

  and do_unpack fails as in:
  http://errors.yoctoproject.org/Errors/Details/672888/

The default /etc/gitconfig in ubuntu has this added automatically by
git-lfs postinst:

  root@ljama:~# rm /etc/gitconfig
  root@ljama:~# git lfs install --skip-repo --system
  Git LFS initialized.
  root@ljama:~# cat /etc/gitconfig
  [filter "lfs"]
        clean = git-lfs clean -- %f
        smudge = git-lfs smudge -- %f
        process = git-lfs filter-process
        required = true
  root@ljama:~# cat /var/lib/dpkg/info/git-lfs.postinst

  set -e

  # Set up /etc/gitconfig for git-lfs. The --skip-repo option prevents failure if
  # / is a Git repository with existing non-git-lfs hooks.

  git lfs install --skip-repo --system > /dev/null 2>&1

according to
https://changelogs.ubuntu.com/changelogs/pool/universe/g/git-lfs/git-lfs_3.0.2-1/changelog
it was added in:

git-lfs (2.6.0-1) unstable; urgency=medium

  * New upstream release
  * Bump standards version to 4.2.1
  * Add postinst/prerm to set up/remove git-lfs gitconfig

FWIW: vulkan-samples still fail to build with DEBUG_BUILD enabled:
http://errors.yoctoproject.org/Errors/Details/672892/

(From OE-Core rev: 58f93fcc5364880f11f1d86e0a5a6c5712f6ca6a)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit b45b1f5dba02a626b7e9040d45198bd17dce4c99)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:14 +00:00
Adrian Freihofer
290ce3525f buildconf: compare abspath
We have something like ${TOPDIR}/../../poky/meta in the bblayers.conf
file. This does not work without normalizing the path for comparison.

(From OE-Core rev: 803975aff35c9423f4bde4c0201d0f61242389e0)

Signed-off-by: Adrian Freihofer <adrian.freihofer@siemens.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit e0d45bcd34311ae248bac9378f46962198d148ef)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:14 +00:00
Bruce Ashfield
c3911e12f6 linux-yocto/5.19: update to v5.19.14
Updating  to the latest korg -stable release that comprises
the following commits:

    30c780ac0f9f Linux 5.19.14
    b11cc6399c56 damon/sysfs: fix possible memleak on damon_sysfs_add_target
    381eae6b1dc3 x86/alternative: Fix race in try_get_desc()
    1e624467e41f x86/cacheinfo: Add a cpu_llc_shared_mask() UP variant
    b1bad76d6a18 KVM: x86: Hide IA32_PLATFORM_DCA_CAP[31:0] from the guest
    f45380a17be5 perf tests record: Fail the test if the 'errs' counter is not zero
    77d5e98fb6f0 perf test: Fix test case 87 ("perf record tests") for hybrid systems
    b781430cd770 net: ethernet: mtk_eth_soc: fix mask of RX_DMA_GET_SPORT{,_V2}
    c81bca132fc6 net: mscc: ocelot: fix tagged VLAN refusal while under a VLAN-unaware bridge
    79a55020c989 clk: imx93: drop of_match_ptr
    539cc4ac04f8 clk: iproc: Do not rely on node name for correct PLL setup
    61560f315371 drm/i915/gt: Perf_limit_reasons are only available for Gen11+
    b1dd83f321dc clk: imx: imx6sx: remove the SET_RATE_PARENT flag for QSPI clocks
    3e8d61faead0 vdpa/mlx5: Fix MQ to support non power of two num queues
    b3b8359fafb4 virtio-blk: Fix WARN_ON_ONCE in virtio_queue_rq()
    bffdf0421ba8 vdpa/ifcvf: fix the calculation of queuepair
    9f9687bfd884 ice: xsk: drop power of 2 ring size restriction for AF_XDP
    01c2475d0c21 ice: xsk: change batched Tx descriptor cleaning
    dcf42724aacb selftests: Fix the if conditions of in test_extra_filter()
    929a2f6e93a8 net: phy: Don't WARN for PHY_UP state in mdio_bus_phy_resume()
    07eb54aa93d7 net: stmmac: power up/down serdes in stmmac_open/release
    ec1a5138428f wifi: mac80211: fix memory corruption in minstrel_ht_update_rates()
    a84813338208 wifi: mac80211: fix regression with non-QoS drivers
    3afc354e1084 wifi: cfg80211: fix MCS divisor value
    e8027e26ad58 nvme: Fix IOC_PR_CLEAR and IOC_PR_RELEASE ioctls for nvme devices
    ab3abb72bec2 net/mlxbf_gige: Fix an IS_ERR() vs NULL bug in mlxbf_gige_mdio_probe
    8b1d17a8d8ba cxgb4: fix missing unlock on ETHOFLD desc collect fail path
    3687a0c03863 net: sched: act_ct: fix possible refcount leak in tcf_ct_init()
    75b276c0537e usbnet: Fix memory leak in usbnet_disconnect()
    1a39d83193c6 perf parse-events: Remove "not supported" hybrid cache events
    44ff610a3cd4 perf print-events: Fix "perf list" can not display the PMU prefix for some hybrid cache events
    c4a07387a4b0 perf parse-events: Break out tracepoint and printing
    9ac8b5bae9f2 gpio: mvebu: Fix check for pwm support on non-A8K platforms
    314df2265c04 Input: melfas_mip4 - fix return value check in mip4_probe()
    3cd81a694233 Revert "drm: bridge: analogix/dp: add panel prepare/unprepare in suspend/resume time"
    e126ad29ec71 net: macb: Fix ZynqMP SGMII non-wakeup source resume failure
    5c94fcc0e87f drm/bridge: lt8912b: fix corrupted image output
    6fe84153067b drm/bridge: lt8912b: set hdmi or dvi mode
    8d2b780e1ed6 drm/bridge: lt8912b: add vsync hsync
    18bf2334b0b3 ASoC: tas2770: Reinit regcache on reset
    a0977f22b8a7 arm64: dts: qcom: sm8350: fix UFS PHY serdes size
    2c8028dd3f8a clk: microchip: mpfs: make the rtc's ahb clock critical
    ab5081ce9f9c clk: microchip: mpfs: fix clk_cfg array bounds violation
    8e8516fe1a64 ASoC: imx-card: Fix refcount issue with of_node_put
    1317541f0dae soc: sunxi: sram: Fix debugfs info for A64 SRAM C
    450080540800 soc: sunxi: sram: Fix probe function ordering issues
    e4768a5b0a30 soc: sunxi: sram: Prevent the driver from being unbound
    44a9633e9e16 soc: sunxi: sram: Actually claim SRAM regions
    24d6230edfc2 ARM: dts: am5748: keep usb4_tm disabled
    6f1364939969 reset: imx7: Fix the iMX8MP PCIe PHY PERST support
    38d9f71a04c2 ARM: dts: am33xx: Fix MMCHS0 dma properties
    3cf3c17fd66f media: v4l2-compat-ioctl32.c: zero buffer passed to v4l2_compat_get_array_args()
    fa20a7dcd56b media: mediatek: vcodec: Drop platform_get_resource(IORESOURCE_IRQ)
    b901652568f3 media: rkvdec: Disable H.264 error detection
    3a35e67f6b29 media: dvb_vb2: fix possible out of bound access
    e88a7c1831d4 mm,hwpoison: check mm when killing accessing process
    fcc9261c2b5f mm/hugetlb: correct demote page offset logic
    f9cedf6b357e mm: bring back update_mmu_cache() to finish_fault()
    3094c01fb1e3 mm: fix madivse_pageout mishandling on non-LRU page
    edbaf99db91b mm/migrate_device.c: copy pte dirty bit to page
    e85ab5ae17bd mm/migrate_device.c: add missing flush_cache_page()
    ca7d59a4b5f3 mm/migrate_device.c: flush TLB while holding PTL
    82a00edf23e4 mm: fix dereferencing possible ERR_PTR
    a346ba002906 mm/page_isolation: fix isolate_single_pageblock() isolation behavior
    faee7721e795 mm: prevent page_frag_alloc() from corrupting the memory
    0cddc19ddb05 mm/page_alloc: fix race condition between build_all_zonelists and page allocation
    437484d936ac mm: gup: fix the fast GUP race against THP collapse
    c6e2a0587215 mmc: hsq: Fix data stomping during mmc recovery
    1209607a7133 mmc: moxart: fix 4-bit bus width and remove 8-bit bus width
    b41808bfa049 mptcp: fix unreleased socket in accept queue
    5368d1a17ec5 mptcp: factor out __mptcp_close() without socket lock
    16220537557a mm: fix BUG splat with kvmalloc + GFP_ATOMIC
    2c5a04961201 libata: add ATA_HORKAGE_NOLPM for Pioneer BDR-207M and BDR-205
    38d854c4a11c vduse: prevent uninitialized memory accesses
    4a1230f34f06 drm/amdgpu: Add amdgpu suspend-resume code path under SRIOV
    5af714ceebae drm/i915/gt: Restrict forced preemption to the active context
    193153f7cc2a powerpc/64s/radix: don't need to broadcast IPI for radix pmd collapse flush
    a129cce68908 Revert "firmware: arm_scmi: Add clock management to the SCMI power domain"
    b48abca42e0a net: mt7531: only do PLL once after the reset
    1f4ceb7daf36 mm/damon/dbgfs: fix memory leak when using debugfs_lookup()
    decf4f5c01a8 x86/uaccess: avoid check_object_size() in copy_from_user_nmi()
    9653cc040a7d ntfs: fix BUG_ON in ntfs_lookup_inode_by_name()
    d0ebc7ef65e3 ARM: dts: integrator: Tag PCI host with device_type
    76335c4156ed frontswap: don't call ->init if no ops are registered
    26a1ca1f9fbb x86/sgx: Do not fail on incomplete sanitization on premature stop of ksgxd
    19f89548ed86 wifi: mac80211: ensure vif queues are operational after start
    d87926a7448c clk: ingenic-tcu: Properly enable registers before accessing timers
    179fd43179a1 can: c_can: don't cache TX messages for C_CAN cores
    983dd7223a9b Input: snvs_pwrkey - fix SNVS_HPVIDR1 register address
    6aac871bca33 net: usb: qmi_wwan: Add new usb-id for Dell branded EM7455
    266ee6ee24ea thunderbolt: Explicitly reset plug events delay back to USB4 spec value
    d916978b6976 usb: typec: ucsi: Remove incorrect warning
    1d54281c91d7 uas: ignore UAS for Thinkplus chips
    be014a8d8925 usb-storage: Add Hiksemi USB3-FW to IGNORE_UAS
    4a66ab5bfaea uas: add no-uas quirk for Hiksemi usb_disk
    a3ed03b3ce4d counter: 104-quad-8: Fix skipped IRQ lines during events configuration
    036eeda2212a counter: 104-quad-8: Implement and utilize register structures
    c096ac781807 counter: 104-quad-8: Utilize iomap interface
    640e0b97dfa9 perf record: Fix cpu mask bit setting for mixed mmaps
    bcd04b006c78 tools/perf: Fix out of bound access to cpu mask array
    d948e6c57793 riscv: make t-head erratas depend on MMU
    1bae99844613 Linux 5.19.13
    781e43179640 Revert "drm/i915: Extract intel_edp_fixup_vbt_bpp()"
    da42e25ec54a Revert "drm/i915/pps: Split pps_init_delays() into distinct parts"
    5f86062caf4d Revert "drm/i915/bios: Split parse_driver_features() into two parts"
    3f2631ce3c8f Revert "drm/i915/bios: Split VBT parsing to global vs. panel specific parts"
    139d38c14725 Revert "drm/i915/bios: Split VBT data into per-panel vs. global parts"
    10c7b3919e6d Revert "drm/i915/dsi: filter invalid backlight and CABC ports"
    bef6a9b54730 Revert "drm/i915/dsi: fix dual-link DSI backlight and CABC ports for display 11+"
    9182c86a0456 Revert "drm/i915/display: Fix handling of enable_psr parameter"
    58df6af8cea3 Linux 5.19.12
    547262c5b373 ext4: make directory inode spreading reflect flexbg size
    cdefe8dd61c9 ext4: fixup possible uninitialized variable access in ext4_mb_choose_next_group_cr1()
    48a12961e800 Revert "block: freeze the queue earlier in del_gendisk"
    398a0fdb38d9 ext4: use buckets for cr 1 block scan instead of rbtree
    52e8d671393c ext4: use locality group preallocation for small closed files
    405a609430a6 ext4: avoid unnecessary spreading of allocations among groups
    b82d312ff30f ext4: make mballoc try target group first even with mb_optimize_scan
    17eb9845f20f ext4: limit the number of retries after discarding preallocations blocks
    2f5e9de15e4f ext4: fix bug in extents parsing when eh_entries == 0 and eh_depth > 0
    034ef0c47e31 devdax: Fix soft-reservation memory description
    27d5563e8f5f Makefile.debug: re-enable debug info for .S files
    6ba8627f72a4 Makefile.debug: set -g unconditional on CONFIG_DEBUG_INFO_SPLIT
    c4f8b89f3ffc certs: make system keyring depend on built-in x509 parser
    c2eab6faf82b drm/amdgpu: don't register a dirty callback for non-atomic
    7f0dcbb0e557 i2c: mux: harden i2c_mux_alloc() against integer overflows
    4925e5e94ae9 i2c: mlxbf: Fix frequency calculation
    3b5ab5fbe69e i2c: mlxbf: prevent stack overflow in mlxbf_i2c_smbus_start_transaction()
    5a7547ee0d24 i2c: mlxbf: incorrect base address passed during io write
    e46e177fd8ed i2c: imx: If pm_runtime_get_sync() returned 1 device access is possible
    c9245ea442a8 workqueue: don't skip lockdep work dependency in cancel_work_sync()
    60644dffac87 fsdax: Fix infinite loop in dax_iomap_rw()
    8054beba353b pmem: fix a name collision
    c62322e62662 gpio: mt7621: Make the irqchip immutable
    2d57e46fa45b drm/rockchip: Fix return type of cdn_dp_connector_mode_valid
    4822afcff82c drm/amd/display: Mark dml30's UseMinimumDCFCLK() as noinline for stack usage
    6f14c55dc8e7 drm/amd/display: Reduce number of arguments of dml31's CalculateFlipSchedule()
    8836e42e8b00 drm/amd/display: Reduce number of arguments of dml31's CalculateWatermarksAndDRAMSpeedChangeSupport()
    88e7896936e0 drm/amd/display: Limit user regamma to a valid value
    9757b3ad4498 drm/amdgpu: Skip reset error status for psp v13_0_0
    83dfcae61be8 drm/amdgpu: add HDP remap functionality to nbio 7.7
    386ca6720b34 drm/amdgpu: change the alignment size of TMR BO to 1M
    8442bc8426d1 drm/amdgpu: use dirty framebuffer helper
    444574f828cd drm/amd/pm: disable BACO entry/exit completely on several sienna cichlid cards
    a5de08013672 gpio: ixp4xx: Make irqchip immutable
    7718cac88524 drm/gma500: Fix (vblank) IRQs not working after suspend/resume
    55c077d97fa6 drm/gma500: Fix WARN_ON(lock->magic != lock) error
    a6ed7624bf4d drm/gma500: Fix BUG: sleeping function called from invalid context errors
    9812e9ed3419 Drivers: hv: Never allocate anything besides framebuffer from framebuffer memory region
    98756ca2584e block: Do not call blk_put_queue() if gendisk allocation fails
    2f092fd2ce24 block: call blk_mq_exit_queue from disk_release for never added disks
    47f57236ba40 blk-mq: fix error handling in __blk_mq_alloc_disk
    0d0f5ca7f241 drm/i915/display: Fix handling of enable_psr parameter
    650a2e79d176 s390/dasd: fix Oops in dasd_alias_get_start_dev due to missing pavgroup
    54be62deede4 phy: marvell: phy-mvebu-a3700-comphy: Remove broken reset support
    1e9571887f97 cgroup: cgroup_get_from_id() must check the looked-up kn is a directory
    a899ba61958e serial: tegra-tcu: Use uart_xmit_advance(), fixes icount.tx accounting
    f986bfe60020 serial: tegra: Use uart_xmit_advance(), fixes icount.tx accounting
    f387ca14c73f serial: Create uart_xmit_advance()
    dc4b06e21691 serial: fsl_lpuart: Reset prior to registration
    f3f5f26c53ef io_uring: ensure that cached task references are always put on exit
    b4b3bc3f8501 selftests: forwarding: add shebang for sch_red.sh
    32afa1f23e42 bnxt: prevent skb UAF after handing over to PTP worker
    0559d91ee3a2 net: sched: fix possible refcount leak in tc_new_tfilter()
    9fc7a9f0a6e9 net: sunhme: Fix packet reception for len < RX_COPY_THRESHOLD
    2c8e8ab53acf bonding: fix NULL deref in bond_rr_gen_slave_id
    6c537124ea61 net: phy: micrel: fix shared interrupt on LAN8814
    32ac8c92919c net/smc: Stop the CLC flow if no link to map buffers on
    56c167a564b6 ice: Fix ice_xdp_xmit() when XDP TX queue number is not sufficient
    b65c53369786 drm/mediatek: dsi: Move mtk_dsi_stop() call back to mtk_dsi_poweroff()
    6acb3e83b508 perf tools: Honor namespace when synthesizing build-ids
    ee7036166b91 perf kcore_copy: Do not check /proc/modules is unchanged
    e71a088d6a97 perf jit: Include program header in ELF files
    306c17dead99 perf stat: Fix cpu map index in bperf cgroup code
    98992697b30b perf stat: Fix BPF program section name
    031b4f40487e can: gs_usb: gs_can_open(): fix race dev->can.state condition
    18979d10300e gpio: tqmx86: fix uninitialized variable girq
    16189cccd46e net: sh_eth: Fix PHY state warning splat during system resume
    199ddf9d3726 net: ravb: Fix PHY state warning splat during system resume
    235c47f437a1 netfilter: nf_ct_ftp: fix deadlock when nat rewrite is needed
    38cf372b17f0 netfilter: ebtables: fix memory leak when blob is malformed
    985b031667c3 netfilter: nf_tables: fix percpu memory leak at nf_tables_addchain()
    8bcad2a93131 netfilter: nf_tables: fix nft_counters_enabled underflow at nf_tables_addchain()
    d8d9a6995858 ice: Fix interface being down after reset with link-down-on-close flag on
    c14cdf15cde3 ice: config netdev tc before setting queues number
    dff2fa324207 net/sched: taprio: make qdisc_leaf() see the per-netdev-queue pfifo child qdiscs
    c7c9c7eb305a net/sched: taprio: avoid disabling offload when it was never enabled
    68a5def1d2c8 ipv6: Fix crash when IPv6 is administratively disabled
    23022b74b1a2 net: enetc: deny offload of tc-based TSN features on VF interfaces
    2fdebdfcd98f net: enetc: move enetc_set_psfp() out of the common enetc_set_features()
    92f7d44de3be wireguard: netlink: avoid variable-sized memcpy on sockaddr
    3b263cc13340 wireguard: ratelimiter: disable timings test by default
    a4eadca702df sfc/siena: fix null pointer dereference in efx_hard_start_xmit
    b454f12cfedd sfc/siena: fix TX channel offset when using legacy interrupts
    c9ba2948db9d net: ipa: properly limit modem routing table use
    506638752e92 of: mdio: Add of_node_put() when breaking out of for_each_xx
    68197205b3f6 drm/hisilicon: Add depends on MMU
    6201c365a0ef gve: Fix GFP flags when allocing pages
    e969486525be bnxt_en: fix flags to check for supported fw version
    b3b952168ee1 sfc: fix null pointer dereference in efx_hard_start_xmit
    5f623a77cfc2 sfc: fix TX channel offset when using legacy interrupts
    b6bea8101f97 netdevsim: Fix hwstats debugfs file permissions
    0b145d3da801 i40e: Fix set max_tx_rate when it is lower than 1 Mbps
    ab1af66d4de9 i40e: Fix VF set max MTU size
    2ffdf364b845 iavf: Fix set max MTU size with port VLAN and jumbo frames
    36da184d2196 mlxbf_gige: clear MDIO gateway lock after read
    c3f9f3089ed5 iavf: Fix bad page state
    3b27f829b7f6 um: fix default console kernel parameter
    f8c3861243be MIPS: Loongson32: Fix PHY-mode being left unspecified
    7c1f2373be0a MIPS: lantiq: export clk_get_io() for lantiq_wdt.ko
    c673c6ceac53 mm/slab_common: fix possible double free of kmem_cache
    183b87c4d18d drm/panel: simple: Fix innolux_g121i1_l01 bus_format
    88b08afb0d80 net: team: Unsync device addresses on ndo_stop
    a4761e45c86c net: bonding: Unsync device addresses on ndo_stop
    b1b48d9e60cb net: bonding: Share lacpdu_mcast_addr definition
    38aa25adcd4d scsi: mpt3sas: Fix return value check of dma_get_required_mask()
    6a4236ed47f5 scsi: qla2xxx: Fix memory leak in __qlt_24xx_handle_abts()
    16b5647f1a55 arm64: dts: imx8mp-venice-gw74xx: fix port/phy validation
    af0c754d4f60 net: phy: aquantia: wait for the suspend/resume operations to finish
    26735f395b30 ARM: dts: lan966x: Fix the interrupt number for internal PHYs
    d5241ea15778 arm64: dts: imx8mp-venice-gw74xx: fix ksz9477 cpu port
    f675f5955ab8 arm64: dts: imx8mp-venice-gw74xx: fix CAN STBY polarity
    392bd6ce1ba9 drm/mediatek: Fix wrong dither settings
    fc8454d54478 arm64: dts: tqma8mqml: Include phy-imx8-pcie.h header
    31ce3c688ddc wifi: iwlwifi: Mark IWLMEI as broken
    9fe1e2da965a net: core: fix flow symmetric hash
    b583e6b25bf9 ipvlan: Fix out-of-bound bugs caused by unset skb->mac_header
    0ad4e4f4d1c4 iavf: Fix cached head and tail value for iavf_get_tx_pending
    7c945e5b4787 ice: Fix crash by keep old cfg when update TCs more than queues
    149979e87eb7 ice: Don't double unplug aux on peer initiated reset
    633c81c04496 netfilter: nfnetlink_osf: fix possible bogus match in nf_osf_find()
    510ea9eae5ee netfilter: nf_conntrack_irc: Tighten matching on DCC message
    f28e376e4c1e netfilter: nf_conntrack_sip: fix ct_sip_walk_headers
    5f394e885eaf arm64: dts: imx8mm-verdin: extend pmic voltages
    3e39beb4efa5 arm64: dts: rockchip: Remove 'enable-active-low' from rk3566-quartz64-a
    efd3a3e464c6 arm64: dts: rockchip: Remove 'enable-active-low' from rk3399-puma
    9350ed92dfe0 arm64: dts: rockchip: fix property for usb2 phy supply on rk3568-evb1-v10
    5e6d95bd6c9d arm64: dts: rockchip: fix property for usb2 phy supply on rock-3a
    a17df55bf6d5 dmaengine: ti: k3-udma-private: Fix refcount leak bug in of_xudma_dev_get()
    869c94dfd900 arm64: dts: imx8ulp: add #reset-cells for pcc
    f478a456a30d arm64: dts: imx8mn: remove GPU power domain reset
    124c330f4071 arm64: dts: rockchip: Set RK3399-Gru PCLK_EDP to 24 MHz
    9182be042c3e arm64: dts: imx8mm: Reverse CPLD_Dn GPIO label mapping on MX8Menlo
    164f2c710a78 drm/mediatek: dsi: Add atomic {destroy,duplicate}_state, reset callbacks
    87d4bdeacff8 arm64: dts: rockchip: Fix typo in lisense text for PX30.Core
    8a906e3a18bb arm64: dts: rockchip: Pull up wlan wake# on Gru-Bob
    6b8c338e1b88 arm64: dts: rockchip: Lower sd speed on quartz64-b
    daacedde25f0 firmware: arm_scmi: Fix the asynchronous reset requests
    8e65edf0d376 firmware: arm_scmi: Harden accesses to the reset domains
    e31fa6648542 batman-adv: Fix hang up with small MTU hard-interface
    117737acc4b3 vmlinux.lds.h: CFI: Reduce alignment of jump-table to function alignment
    bb6d99e27cbe arm64: topology: fix possible overflow in amu_fie_setup()
    42c7fc41020c perf/arm-cmn: Add more bits to child node address offset field
    7a764b44d346 KVM: x86: Inject #UD on emulated XSETBV if XSAVES isn't enabled
    eec722138aee KVM: x86: Always enable legacy FP/SSE in allowed user XFEATURES
    c5f118361297 KVM: x86: Reinstate kvm_vcpu_arch.guest_supported_xcr0
    df6cb39335cf mm: slub: fix flush_cpu_slab()/__free_slab() invocations in task context.
    02bcd951aa3c mm/slub: fix to return errno if kmalloc() fails
    cbaddace599e net: mana: Add rmb after checking owner bits
    7221020d79cc can: flexcan: flexcan_mailbox_read() fix return value for drop = true
    b6c2ad616dd4 kasan: call kasan_malloc() from __kmalloc_*track_caller()
    dc8864f4fd01 xen/xenbus: fix xenbus_setup_ring()
    f799e0568d6c drm/i915/gem: Really move i915_gem_context.link under ref protection
    92881e068ee1 drm/i915/gem: Flush contexts on driver release
    08ac12569010 riscv: fix RISCV_ISA_SVPBMT kconfig dependency warning
    558003a84a3c riscv: fix a nasty sigreturn bug...
    b1489043d3b9 gpiolib: cdev: Set lineevent_state::irq after IRQ register successfully
    41f857033c44 gpio: mockup: Fix potential resource leakage when register a chip
    af0bfabf06c7 gpio: mockup: fix NULL pointer dereference when removing debugfs
    74ce6f1e0f3b wifi: mt76: fix reading current per-tid starting sequence number for aggregation
    1dd2a948a178 efi: libstub: check Shim mode using MokSBStateRT
    96dc4e2c5283 efi: x86: Wipe setup_data on pure EFI boot
    7a27a04f4ef6 thunderbolt: Add support for Intel Maple Ridge single port controller
    d6f28143bccb usb: dwc3: core: leave default DMA if the controller does not support 64-bit DMA
    af830c831d40 media: flexcop-usb: fix endpoint type check
    53b48f0672d5 libperf evlist: Fix polling of system-wide events
    eecada16bcc4 btrfs: zoned: wait for extent buffer IOs before finishing a zone
    c338bea1fec5 btrfs: fix hang during unmount when stopping a space reclaim worker
    cf7769a47e65 btrfs: fix hang during unmount when stopping block group reclaim worker
    17244f71765d exfat: fix overflow for large capacity partition
    2e238bba8a7e iommu/vt-d: Check correct capability for sagaw determination
    ecec349af8c7 ALSA: hda/realtek: Add a quirk for HP OMEN 16 (8902) mute LED
    28e07bb27ba4 ALSA: hda/realtek: Enable 4-speaker output Dell Precision 5530 laptop
    1f65164bc605 ALSA: hda/realtek: Add quirk for ASUS GA503R laptop
    0632fb7f2158 ALSA: hda/realtek: Add pincfg for ASUS G533Z HP jack
    76b75705c941 ALSA: hda/realtek: Add pincfg for ASUS G513 HP jack
    2035227cd000 ALSA: hda/realtek: Re-arrange quirk table entries
    3637770602ac ALSA: hda/realtek: Enable 4-speaker output Dell Precision 5570 laptop
    73c4ae35ff11 ALSA: hda/realtek: Add quirk for Huawei WRT-WX9
    61c19a35f0d2 ALSA: hda: add Intel 5 Series / 3400 PCI DID
    d6cb6e424a60 ALSA: hda: Fix Nvidia dp infoframe
    6e91ec54e7f1 ALSA: hda: Fix hang at HD-audio codec unbinding due to refcount saturation
    abb050dabd7d ALSA: hda/tegra: set depop delay for tegra
    1c5a0a1f4d15 ALSA: core: Fix double-free at snd_card_new()
    e0e17c7bbdf4 Revert "ALSA: usb-audio: Split endpoint setups for hw_params and prepare"
    d744140498a3 USB: serial: option: add Quectel RM520N
    3db2ec3a6724 USB: serial: option: add Quectel BG95 0x0203 composition
    e82a8ff62709 USB: core: Fix RST error in hub.c
    fd0b4fd54892 drivers/base: Fix unsigned comparison to -1 in CPUMAP_FILE_MAX_BYTES
    2e7eb4c1e8af scsi: core: Fix a use-after-free
    d27b66257db1 block: simplify disk shutdown
    fdb28e968815 block: stop setting the nomerges flags in blk_cleanup_queue
    ab85cb5297f7 block: remove QUEUE_FLAG_DEAD
    633e819de9fa xfrm: fix XFRMA_LASTUSED comment
    2776911d4a98 Revert "usb: gadget: udc-xilinx: replace memcpy with memcpy_toio"
    8039621a78e5 Revert "usb: add quirks for Lenovo OneLink+ Dock"
    7c64dd4dbf90 smb3: use filemap_write_and_wait_range instead of filemap_write_and_wait
    c7ae5c403d68 usb: gadget: udc-xilinx: replace memcpy with memcpy_toio
    9b56515aeeff usb: add quirks for Lenovo OneLink+ Dock
    0cdde8460c30 smb3: fix temporary data corruption in insert range
    49523a473220 smb3: fix temporary data corruption in collapse range
    cc914c37e55f smb3: Move the flush out of smb2_copychunk_range() into its callers
    f6bb739e61eb drm/i915/dsi: fix dual-link DSI backlight and CABC ports for display 11+
    d9d2625dafe2 drm/i915/dsi: filter invalid backlight and CABC ports
    fc6aff984b1c drm/i915/bios: Split VBT data into per-panel vs. global parts
    2af21ae876cf drm/i915/bios: Split VBT parsing to global vs. panel specific parts
    5da3f1bfb88e drm/i915/bios: Split parse_driver_features() into two parts
    ad719d5cc7cb drm/i915/pps: Split pps_init_delays() into distinct parts
    a0f7cdd69ca3 drm/i915: Extract intel_edp_fixup_vbt_bpp()
    fcf22aefe871 Linux 5.19.11
    4d8637f1d672 Revert "iommu/vt-d: Fix possible recursive locking in intel_iommu_init()"
    36371c3adb7a ALSA: hda/sigmatel: Fix unused variable warning for beep power change
    ddd2edc276e0 ALSA: hda/sigmatel: Keep power up while beep is enabled
    99bc25748e39 cgroup: Add missing cpus_read_lock() to cgroup_attach_task_all()
    7051efc07d72 dt-bindings: apple,aic: Fix required item "apple,fiq-index" in affinity description
    20b3f49e9498 net: Find dst with sk's xfrm policy not ctl_sk
    e68db1a89fc9 drm/amdgpu: move nbio sdma_doorbell_range() into sdma code for vega
    9189056c223b drm/amdgpu: move nbio ih_doorbell_range() into ih code for vega
    989d23d88520 drm/amdgpu: Don't enable LTR if not supported
    e6189420e34f drm/amdgpu: make sure to init common IP before gmc
    dd52bde6767e drm/i915: Set correct domains values at _i915_vma_move_to_active
    871b9d5c68d8 drm/i915/gt: Fix perf limit reasons bit positions
    b31c81d633d8 tools/include/uapi: Fix <asm/errno.h> for parisc and xtensa
    ac12a96d1d35 parisc: Allow CONFIG_64BIT with ARCH=parisc
    46c716a31fcd blk-lib: fix blkdev_issue_secure_erase
    c2c7f67fd12d cifs: always initialize struct msghdr smb_msg completely
    eea8626615a0 cifs: don't send down the destination address to sendmsg for a SOCK_STREAM
    2c3f439480c0 cifs: revalidate mapping when doing direct writes
    d50c30b66f04 io_uring/msg_ring: check file type before putting
    6f5ceeb59d09 of/device: Fix up of_dma_configure_id() stub
    6ebcd3a8f5d2 parisc: ccio-dma: Add missing iounmap in error path in ccio_probe()
    248c48ced209 block: blk_queue_enter() / __bio_queue_enter() must return -EAGAIN for nowait
    d31efde8d45d drm/i915/guc: Cancel GuC engine busyness worker synchronously
    6731a2193bc8 drm/i915/guc: Don't update engine busyness stats too frequently
    b0dc9560acd2 drm/i915/vdsc: Set VDSC PIC_HEIGHT before using for DP DSC
    fc689a286139 drm/rockchip: vop2: Fix eDP/HDMI sync polarities
    ca52cf493f97 drm/meson: Fix OSD1 RGB to YCbCr coefficient
    e681b2df3ad4 drm/meson: Correct OSD1 global alpha value
    99ed392209cc drm/panel-edp: Fix delays for Innolux N116BCA-EA1
    c60087415670 Revert "SUNRPC: Remove unreachable error condition"
    4d9f296e78b0 NFSv4.2: Update mode bits after ALLOCATE and DEALLOCATE
    2f0a154b16ab gpio: mpc8xxx: Fix support for IRQ_TYPE_LEVEL_LOW flow_type in mpc85xx
    51e024dcaf08 NFSv4: Turn off open-by-filehandle and NFS re-export for NFSv4.0
    dce19409fb74 SUNRPC: Fix call completion races with call_decode()
    fe0a6a2369d8 pinctrl: sunxi: Fix name for A100 R_PIO
    4b1366bf4ed1 pinctrl: rockchip: Enhance support for IRQ_TYPE_EDGE_BOTH
    8e33176cd475 pinctrl: qcom: sc8180x: Fix wrong pin numbers
    50207584d3f5 pinctrl: qcom: sc8180x: Fix gpio_wakeirq_map
    2133f4513116 of: fdt: fix off-by-one error in unflatten_dt_nodes()
    b80678c1e00a Linux 5.19.10
    0541ab4d0330 Input: goodix - add compatible string for GT1158
    693ccecee083 RDMA/irdma: Use s/g array in post send only when its valid
    1989b17301f8 gpio: 104-idio-16: Make irq_chip immutable
    b240650a6600 gpio: 104-dio-48e: Make irq_chip immutable
    e18b2e3310f0 LoongArch: Fix arch_remove_memory() undefined build error
    6023efd94e54 LoongArch: Fix section mismatch due to acpi_os_ioremap()
    0b38a5072464 platform/x86: asus-wmi: Increase FAN_CURVE_BUF_LEN to 32
    fe5872fd1684 usb: storage: Add ASUS <0x0b05:0x1932> to IGNORE_UAS
    2fdf0a1ff474 platform/x86: acer-wmi: Acer Aspire One AOD270/Packard Bell Dot keymap fixes
    719b2021d778 perf/arm_pmu_platform: fix tests for platform_get_irq() failure
    3d513ebf8c3b net: dsa: hellcreek: Print warning only once
    c624b5659a28 drm/amd/amdgpu: skip ucode loading if ucode_size == 0
    f566cb9f4057 nvmet-tcp: fix unhandled tcp states in nvmet_tcp_state_change()
    e8d5aa9c67ed nvme-pci: add NVME_QUIRK_BOGUS_NID for Lexar NM610
    137f1493f151 drm/amd/pm: use vbios carried pptable for all SMU13.0.7 SKUs
    2052738ece42 drm/amdgpu: disable FRU access on special SIENNA CICHLID card
    12c20186d84e Input: iforce - add support for Boeder Force Feedback Wheel
    47e83e6ebf99 ieee802154: cc2520: add rc code in cc2520_tx()
    bc55c1677edb gpio: mockup: remove gpio debugfs when remove device
    35c0b78d0d42 r8152: add PID for the Lenovo OneLink+ Dock
    84d8959393a0 tg3: Disable tg3 device on system reboot to avoid triggering AER
    6b1bcd579fc5 Bluetooth: MGMT: Fix Get Device Flags
    fbb701e51ee2 hid: intel-ish-hid: ishtp: Fix ishtp client sending disordered message
    37c3dcfc4730 HID: ishtp-hid-clientHID: ishtp-hid-client: Fix comment typo
    65d983566887 dt-bindings: iio: gyroscope: bosch,bmg160: correct number of pins
    50a1ffa557cf kvm: x86: mmu: Always flush TLBs when enabling dirty logging
    c87f1f99e26e peci: cpu: Fix use-after-free in adev_release()
    f25a547e7c76 drm/msm/rd: Fix FIFO-full deadlock
    df01ac6582e1 platform/surface: aggregator_registry: Add support for Surface Laptop Go 2
    f05939158a41 Input: goodix - add support for GT1158
    37c81d9f1d1b ACPI: resource: skip IRQ override on AMD Zen platforms
    f26649e59b4f RDMA/mlx5: Fix UMR cleanup on error flow of driver init
    d8f7bff9a426 RDMA/mlx5: Add a umr recovery flow
    ada0ccc4a137 RDMA/mlx5: Rely on RoCE fw cap instead of devlink when setting profile
    ddc58af02675 net/mlx5: Use software VHCA id when it's supported
    630a75548b88 net/mlx5: Introduce ifc bits for using software vhca id
    3bd8fdde3826 iommu/vt-d: Fix kdump kernels boot failure with scalable mode

(From OE-Core rev: 4814d5d8e7ff674ca812048c54f2f3e74ba35000)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 396b40b0b1e52fc12c0e171734fba190edfaf671)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:14 +00:00
Bruce Ashfield
ad8bd886a4 linux-yocto/5.15: update to v5.15.72
Updating  to the latest korg -stable release that comprises
the following commits:

    c68173b2012b Linux 5.15.72
    713fa3e4591f drm/i915/gem: Really move i915_gem_context.link under ref protection
    a00ed4e5d5ee x86/alternative: Fix race in try_get_desc()
    c3d4b8970c0d KVM: x86: Hide IA32_PLATFORM_DCA_CAP[31:0] from the guest
    ab5c5787ab5e clk: iproc: Do not rely on node name for correct PLL setup
    e748a084b51c clk: imx: imx6sx: remove the SET_RATE_PARENT flag for QSPI clocks
    19f4e1636626 fs: split off setxattr_copy and do_setxattr function from setxattr
    a0e3719e030a vdpa/ifcvf: fix the calculation of queuepair
    4755d9d2c9b0 selftests: Fix the if conditions of in test_extra_filter()
    c83a7606aa65 net: phy: Don't WARN for PHY_UP state in mdio_bus_phy_resume()
    a8cd7e1bc7cd net: stmmac: power up/down serdes in stmmac_open/release
    67c00bcf4231 wifi: mac80211: fix regression with non-QoS drivers
    520e434a082d nvme: Fix IOC_PR_CLEAR and IOC_PR_RELEASE ioctls for nvme devices
    e9d7d809022e net/mlxbf_gige: Fix an IS_ERR() vs NULL bug in mlxbf_gige_mdio_probe
    8b1b908507ce cxgb4: fix missing unlock on ETHOFLD desc collect fail path
    e99c7a61d89e net: sched: act_ct: fix possible refcount leak in tcf_ct_init()
    815381aeff95 usbnet: Fix memory leak in usbnet_disconnect()
    af91321b7372 gpio: mvebu: Fix check for pwm support on non-A8K platforms
    f592ccddac68 Input: melfas_mip4 - fix return value check in mip4_probe()
    ff982b1f325d Revert "drm: bridge: analogix/dp: add panel prepare/unprepare in suspend/resume time"
    bde7795794f4 drm/bridge: lt8912b: fix corrupted image output
    e103b0e83991 drm/bridge: lt8912b: set hdmi or dvi mode
    473f653a86ee drm/bridge: lt8912b: add vsync hsync
    6a12105d9d4f ASoC: tas2770: Reinit regcache on reset
    75ef73d7d2b3 arm64: dts: qcom: sm8350: fix UFS PHY serdes size
    5664dc84fc2e ASoC: imx-card: Fix refcount issue with of_node_put
    367403bc1cfe soc: sunxi: sram: Fix debugfs info for A64 SRAM C
    68d2f42cf4f6 soc: sunxi: sram: Fix probe function ordering issues
    2f82b5290078 soc: sunxi_sram: Make use of the helper function devm_platform_ioremap_resource()
    861adc2b2037 soc: sunxi: sram: Prevent the driver from being unbound
    8b07378ebe43 soc: sunxi: sram: Actually claim SRAM regions
    d50e0e2f3d94 ARM: dts: am5748: keep usb4_tm disabled
    c48e3db1df25 reset: imx7: Fix the iMX8MP PCIe PHY PERST support
    606229101290 ARM: dts: am33xx: Fix MMCHS0 dma properties
    bfe5dc2101ba swiotlb: max mapping size takes min align mask into account
    a6a3b6b11ac0 media: v4l2-compat-ioctl32.c: zero buffer passed to v4l2_compat_get_array_args()
    ab9d32844742 media: rkvdec: Disable H.264 error detection
    69379139ed78 media: dvb_vb2: fix possible out of bound access
    6287c9e00595 mm,hwpoison: check mm when killing accessing process
    f9aed3d8a029 mm: fix madivse_pageout mishandling on non-LRU page
    1299c1198878 mm/migrate_device.c: flush TLB while holding PTL
    e858f7ac7395 mm: fix dereferencing possible ERR_PTR
    d75ce115625e mm: prevent page_frag_alloc() from corrupting the memory
    23d17e2b04c7 mm/page_alloc: fix race condition between build_all_zonelists and page allocation
    fec2db7a434a mmc: hsq: Fix data stomping during mmc recovery
    4fef6e1fe07c mmc: moxart: fix 4-bit bus width and remove 8-bit bus width
    4f75d0cacd65 libata: add ATA_HORKAGE_NOLPM for Pioneer BDR-207M and BDR-205
    dc248ddf41ea vduse: prevent uninitialized memory accesses
    ea774829699a drm/amdgpu: Add amdgpu suspend-resume code path under SRIOV
    25759a7bc1f4 drm/i915/gt: Restrict forced preemption to the active context
    e0f576335d05 Revert "firmware: arm_scmi: Add clock management to the SCMI power domain"
    5de02ab84aec net: mt7531: only do PLL once after the reset
    56e3f8d56299 mm/damon/dbgfs: fix memory leak when using debugfs_lookup()
    149da9e60b8c ntfs: fix BUG_ON in ntfs_lookup_inode_by_name()
    dc8cdb988453 ARM: dts: integrator: Tag PCI host with device_type
    aa5c3aa3f197 x86/sgx: Do not fail on incomplete sanitization on premature stop of ksgxd
    476c188b9dbe clk: ingenic-tcu: Properly enable registers before accessing timers
    d134b0f7a9b9 can: c_can: don't cache TX messages for C_CAN cores
    6fff203793cb Input: snvs_pwrkey - fix SNVS_HPVIDR1 register address
    006a5085a3a8 net: usb: qmi_wwan: Add new usb-id for Dell branded EM7455
    81e759d71a6b thunderbolt: Explicitly reset plug events delay back to USB4 spec value
    85a70a259916 usb: typec: ucsi: Remove incorrect warning
    ac12a04c8e08 uas: ignore UAS for Thinkplus chips
    528aba78ee01 usb-storage: Add Hiksemi USB3-FW to IGNORE_UAS
    0a4e8f384e82 uas: add no-uas quirk for Hiksemi usb_disk
    8484a356cee8 cgroup: cgroup_get_from_id() must check the looked-up kn is a directory
    ae04dd5ef180 cgroup: reduce dependency on cgroup_mutex
    7a64e6dc6cb7 ALSA: hda/realtek: fix speakers and micmute on HP 855 G8
    6a3bee2ead9b ALSA: hda: Fix Nvidia dp infoframe
    f7392f93a2fb ALSA: hda: Fix hang at HD-audio codec unbinding due to refcount saturation
    de5deddfa7e7 ALSA: hda: Do disconnect jacks at codec unbind
    90c7e9b400c7 Linux 5.15.71
    214194610a18 ext4: use locality group preallocation for small closed files
    8a1ac4167dda ext4: avoid unnecessary spreading of allocations among groups
    fd8b82919549 ext4: make mballoc try target group first even with mb_optimize_scan
    21dada4ce19c ext4: limit the number of retries after discarding preallocations blocks
    be4df018c0be ext4: fix bug in extents parsing when eh_entries == 0 and eh_depth > 0
    90bc7b630c6c ext4: make directory inode spreading reflect flexbg size
    95d714d8ad3d devdax: Fix soft-reservation memory description
    27bf7a5d1198 NFSv4: Fixes for nfs4_inode_return_delegation()
    21b0301f2234 drm/amdgpu: don't register a dirty callback for non-atomic
    6eb08245da51 i2c: mlxbf: Fix frequency calculation
    dc2a0c587006 i2c: mlxbf: prevent stack overflow in mlxbf_i2c_smbus_start_transaction()
    621c6ab03ac3 i2c: mlxbf: incorrect base address passed during io write
    c242dbf2e36f i2c: imx: If pm_runtime_get_sync() returned 1 device access is possible
    c71ec39be45a workqueue: don't skip lockdep work dependency in cancel_work_sync()
    929ef155e1da fsdax: Fix infinite loop in dax_iomap_rw()
    9aac3819f099 drm/rockchip: Fix return type of cdn_dp_connector_mode_valid
    1c26968caf18 drm/amd/display: Mark dml30's UseMinimumDCFCLK() as noinline for stack usage
    492db4ffcff3 drm/amd/display: Reduce number of arguments of dml31's CalculateFlipSchedule()
    9539cfc74493 drm/amd/display: Reduce number of arguments of dml31's CalculateWatermarksAndDRAMSpeedChangeSupport()
    a541c0111818 drm/amd/display: Limit user regamma to a valid value
    33b128f790b6 drm/amdgpu: use dirty framebuffer helper
    f76d6f309a68 drm/amd/pm: disable BACO entry/exit completely on several sienna cichlid cards
    e5ae504c8623 drm/gma500: Fix BUG: sleeping function called from invalid context errors
    e07d9154bb81 Drivers: hv: Never allocate anything besides framebuffer from framebuffer memory region
    5f270b61ee8b drm/amd/amdgpu: fixing read wrong pf2vf data in SRIOV
    d3a67c21b18f s390/dasd: fix Oops in dasd_alias_get_start_dev due to missing pavgroup
    faf0e1b5d82b serial: tegra-tcu: Use uart_xmit_advance(), fixes icount.tx accounting
    0aada772fd16 serial: tegra: Use uart_xmit_advance(), fixes icount.tx accounting
    4c7e17270cab serial: Create uart_xmit_advance()
    4199425b1132 serial: fsl_lpuart: Reset prior to registration
    cc1504f6da2e KVM: x86/mmu: Fold rmap_recycle into rmap_add
    dddae48eabfb selftests: forwarding: add shebang for sch_red.sh
    08483e4c0c83 bnxt: prevent skb UAF after handing over to PTP worker
    f8162aed962b net: sched: fix possible refcount leak in tc_new_tfilter()
    bd29ca2b398c net: sunhme: Fix packet reception for len < RX_COPY_THRESHOLD
    ec3a6f4ffe55 bonding: fix NULL deref in bond_rr_gen_slave_id
    db145b8a04fc net/smc: Stop the CLC flow if no link to map buffers on
    5daef0042d2c drm/mediatek: dsi: Move mtk_dsi_stop() call back to mtk_dsi_poweroff()
    a08cba2f50d7 perf tools: Honor namespace when synthesizing build-ids
    1a83f39dc4e1 perf kcore_copy: Do not check /proc/modules is unchanged
    a3b923f449a3 perf jit: Include program header in ELF files
    39dc6ccdd5af perf stat: Fix BPF program section name
    c6d939639fe0 can: gs_usb: gs_can_open(): fix race dev->can.state condition
    e1676adedc17 net: sh_eth: Fix PHY state warning splat during system resume
    71200518bbbf net: ravb: Fix PHY state warning splat during system resume
    d5917b7af7ca netfilter: ebtables: fix memory leak when blob is malformed
    08d7524f366a netfilter: nf_tables: fix percpu memory leak at nf_tables_addchain()
    91aa52652f4b netfilter: nf_tables: fix nft_counters_enabled underflow at nf_tables_addchain()
    c721623efd09 net/sched: taprio: make qdisc_leaf() see the per-netdev-queue pfifo child qdiscs
    f58e43184226 net/sched: taprio: avoid disabling offload when it was never enabled
    510e703e4ed0 net: enetc: deny offload of tc-based TSN features on VF interfaces
    11eb9ed08856 net: enetc: move enetc_set_psfp() out of the common enetc_set_features()
    c60801e4e2b5 wireguard: netlink: avoid variable-sized memcpy on sockaddr
    3ebf690d1cde wireguard: ratelimiter: disable timings test by default
    c2dc533a7edb net: ipa: properly limit modem routing table use
    cbdab7d68f20 of: mdio: Add of_node_put() when breaking out of for_each_xx
    ca86577c10bc drm/hisilicon: Add depends on MMU
    68c4acee6328 drm/hisilicon/hibmc: Allow to be built if COMPILE_TEST is enabled
    8547c7bfc061 sfc: fix null pointer dereference in efx_hard_start_xmit
    360910b88d14 sfc: fix TX channel offset when using legacy interrupts
    bc750d7127a9 i40e: Fix set max_tx_rate when it is lower than 1 Mbps
    53220b99059a i40e: Fix VF set max MTU size
    7249a653fe5f iavf: Fix set max MTU size with port VLAN and jumbo frames
    030e0688b6b2 mlxbf_gige: clear MDIO gateway lock after read
    93859f6878e7 iavf: Fix bad page state
    e1dbe8a62098 um: fix default console kernel parameter
    7400e2edfc9e MIPS: Loongson32: Fix PHY-mode being left unspecified
    abea65fa7713 MIPS: lantiq: export clk_get_io() for lantiq_wdt.ko
    831cf63c043e drm/panel: simple: Fix innolux_g121i1_l01 bus_format
    408d5752b60f net: team: Unsync device addresses on ndo_stop
    f50265a4f3da net: bonding: Unsync device addresses on ndo_stop
    e6b277f7367e net: bonding: Share lacpdu_mcast_addr definition
    8b2ab46b6c63 scsi: mpt3sas: Fix return value check of dma_get_required_mask()
    89df49e561b4 scsi: qla2xxx: Fix memory leak in __qlt_24xx_handle_abts()
    5826a555f77c net: phy: aquantia: wait for the suspend/resume operations to finish
    4d2f1bc9067a net: core: fix flow symmetric hash
    8d06006c7eb7 ipvlan: Fix out-of-bound bugs caused by unset skb->mac_header
    dae9d2abe25b iavf: Fix cached head and tail value for iavf_get_tx_pending
    34447d64b8d2 ice: Don't double unplug aux on peer initiated reset
    816eab147e5c netfilter: nfnetlink_osf: fix possible bogus match in nf_osf_find()
    dc33ffbc361e netfilter: nf_conntrack_irc: Tighten matching on DCC message
    0606c5d5fefd netfilter: nf_conntrack_sip: fix ct_sip_walk_headers
    0babb5bc85ee arm64: dts: rockchip: Remove 'enable-active-low' from rk3399-puma
    dd5a6c5a0875 dmaengine: ti: k3-udma-private: Fix refcount leak bug in of_xudma_dev_get()
    1b0e46d970b4 arm64: dts: rockchip: Set RK3399-Gru PCLK_EDP to 24 MHz
    e352fea1d0fc drm/mediatek: dsi: Add atomic {destroy,duplicate}_state, reset callbacks
    43733b6c9fda arm64: dts: rockchip: Fix typo in lisense text for PX30.Core
    2929463a9eff arm64: dts: rockchip: Pull up wlan wake# on Gru-Bob
    166a332463b5 firmware: arm_scmi: Fix the asynchronous reset requests
    1f08a1b26cfc firmware: arm_scmi: Harden accesses to the reset domains
    9ec5a534d77c xfs: validate inode fork size against fork format
    5caa3a127953 xfs: fix xfs_ifree() error handling to not leak perag ref
    9e7b231687fd xfs: reorder iunlink remove operation in xfs_ifree
    28c7ef86b21b vmlinux.lds.h: CFI: Reduce alignment of jump-table to function alignment
    3c3edb82d67b arm64: topology: fix possible overflow in amu_fie_setup()
    2427a04bce86 KVM: x86: Inject #UD on emulated XSETBV if XSAVES isn't enabled
    61703b248be9 mm: slub: fix flush_cpu_slab()/__free_slab() invocations in task context.
    2d6e55e0c038 mm/slub: fix to return errno if kmalloc() fails
    71075d7d4632 net: mana: Add rmb after checking owner bits
    19aea370fd09 can: flexcan: flexcan_mailbox_read() fix return value for drop = true
    bf0197aea195 kasan: call kasan_malloc() from __kmalloc_*track_caller()
    c75288a4902b riscv: fix a nasty sigreturn bug...
    97da736cd11a gpiolib: cdev: Set lineevent_state::irq after IRQ register successfully
    9b26723e058f gpio: mockup: Fix potential resource leakage when register a chip
    18352095a0d5 gpio: mockup: fix NULL pointer dereference when removing debugfs
    2279e977405b wifi: mt76: fix reading current per-tid starting sequence number for aggregation
    b5bc5a274d54 efi: libstub: check Shim mode using MokSBStateRT
    ef43fee9f211 efi: x86: Wipe setup_data on pure EFI boot
    b173f1f8ef9e thunderbolt: Add support for Intel Maple Ridge single port controller
    65b13f951fe6 usb: dwc3: core: leave default DMA if the controller does not support 64-bit DMA
    7143f6cf58db media: flexcop-usb: fix endpoint type check
    d8a76a2e514f btrfs: fix hang during unmount when stopping a space reclaim worker
    46053262b5f5 btrfs: fix hang during unmount when stopping block group reclaim worker
    b02f86689a5a iommu/vt-d: Check correct capability for sagaw determination
    a963fe6d0eb6 ALSA: hda/realtek: Enable 4-speaker output Dell Precision 5530 laptop
    4b2fa20da623 ALSA: hda/realtek: Add quirk for ASUS GA503R laptop
    eb54e457c4ad ALSA: hda/realtek: Add pincfg for ASUS G533Z HP jack
    0898469913cd ALSA: hda/realtek: Add pincfg for ASUS G513 HP jack
    c6a746b4fca5 ALSA: hda/realtek: Re-arrange quirk table entries
    41e974cd6ecb ALSA: hda/realtek: Enable 4-speaker output Dell Precision 5570 laptop
    5421125bbda8 ALSA: hda/realtek: Add quirk for Huawei WRT-WX9
    84481d7a59a2 ALSA: hda: add Intel 5 Series / 3400 PCI DID
    04b5bd5702ab ALSA: hda/tegra: set depop delay for tegra
    e10425c5424b ALSA: core: Fix double-free at snd_card_new()
    10a8c5d7d393 Revert "ALSA: usb-audio: Split endpoint setups for hw_params and prepare"
    06c0204a6e80 USB: serial: option: add Quectel RM520N
    6cf9e8b7e67a USB: serial: option: add Quectel BG95 0x0203 composition
    369b008bbe36 USB: core: Fix RST error in hub.c
    d10d1e9d9f1e drivers/base: Fix unsigned comparison to -1 in CPUMAP_FILE_MAX_BYTES
    6eede01dfd0e Revert "usb: gadget: udc-xilinx: replace memcpy with memcpy_toio"
    c02431f43e12 Revert "usb: add quirks for Lenovo OneLink+ Dock"
    8de5e12f587b usb: gadget: udc-xilinx: replace memcpy with memcpy_toio
    2db7a7176c45 usb: add quirks for Lenovo OneLink+ Dock
    a72eee6d905e usb: dwc3: gadget: Avoid duplicate requests to enable Run/Stop
    f79a57d4091f usb: dwc3: gadget: Don't modify GEVNTCOUNT in pullup()
    1a9923999459 usb: dwc3: gadget: Refactor pullup()
    7604a210acbb usb: dwc3: gadget: Prevent repeat pullup()
    a0b5d22b0448 usb: dwc3: Issue core soft reset before enabling run/stop
    8d583ba79cde usb: dwc3: gadget: Avoid starting DWC3 gadget during UDC unbind
    167b18f25b96 staging: r8188eu: Add Rosewill USB-N150 Nano to device tables
    add40eda8258 staging: r8188eu: Remove support for devices with 8188FU chipset (0bda:f179)
    55653c548612 drm/amdgpu: make sure to init common IP before gmc
    25a90a11036b drm/amdgpu: Separate vf2pf work item init from virt data exchange
    3e98e33d345e Linux 5.15.70
    21f948cab866 ALSA: hda/sigmatel: Fix unused variable warning for beep power change
    5db17805b6ba cgroup: Add missing cpus_read_lock() to cgroup_attach_task_all()
    39b0235284c7 KVM: SEV: add cache flush to solve SEV cache incoherency issues
    d9bf46e74735 net: Find dst with sk's xfrm policy not ctl_sk
    ab5140c6ddd7 video: fbdev: pxa3xx-gcu: Fix integer overflow in pxa3xx_gcu_write
    9af7af862cb8 mksysmap: Fix the mismatch of 'L0' symbols in System.map
    2340f23c770d drm/panfrost: devfreq: set opp to the recommended one to configure regulator
    7e8df4920b2a MIPS: OCTEON: irq: Fix octeon_irq_force_ciu_mapping()
    af88da4c737a afs: Return -EAGAIN, not -EREMOTEIO, when a file already locked
    2dd0ae85fb3c net: usb: qmi_wwan: add Quectel RM520N
    a5e949e088bc ALSA: hda/tegra: Align BDL entry to 4KB boundary
    3d25aaf71fe0 ALSA: hda/sigmatel: Keep power up while beep is enabled
    d582756bfc71 wifi: mac80211_hwsim: check length for virtio packets
    17898c3b578a rxrpc: Fix calc of resend age
    1bbcd88c3c99 rxrpc: Fix local destruction being repeated
    87cd4c02bdb1 scsi: lpfc: Return DID_TRANSPORT_DISRUPTED instead of DID_REQUEUE
    f08a320b4b60 regulator: pfuze100: Fix the global-out-of-bounds access in pfuze100_regulator_probe()
    80c7be217ba7 ASoC: nau8824: Fix semaphore unbalance at error paths
    f1d57c4c99c2 arm64: dts: juno: Add missing MHU secure-irq
    59b756da49bf video: fbdev: i740fb: Error out if 'pixclock' equals zero
    899f4160b140 binder: remove inaccurate mmap_assert_locked()
    8c2bbfb0ded3 drm/amdgpu: move nbio sdma_doorbell_range() into sdma code for vega
    0a7d86f156fa drm/amdgpu: move nbio ih_doorbell_range() into ih code for vega
    dcef16f64969 drm/amdgpu: Don't enable LTR if not supported
    710ebf8f1a08 tools/include/uapi: Fix <asm/errno.h> for parisc and xtensa
    309e9f4a17cf parisc: Allow CONFIG_64BIT with ARCH=parisc
    9a72466fb61b cifs: always initialize struct msghdr smb_msg completely
    21c47a08f96a cifs: don't send down the destination address to sendmsg for a SOCK_STREAM
    e1aad8c56090 cifs: revalidate mapping when doing direct writes
    b04e0208d025 of/device: Fix up of_dma_configure_id() stub
    8fd27239ca92 parisc: ccio-dma: Add missing iounmap in error path in ccio_probe()
    5f285e4c47c3 block: blk_queue_enter() / __bio_queue_enter() must return -EAGAIN for nowait
    f86092d12fbb drm/meson: Fix OSD1 RGB to YCbCr coefficient
    d38eb1f37538 drm/meson: Correct OSD1 global alpha value
    89cfddd416ba gpio: mpc8xxx: Fix support for IRQ_TYPE_LEVEL_LOW flow_type in mpc85xx
    9a173db71a99 NFSv4: Turn off open-by-filehandle and NFS re-export for NFSv4.0
    cd358b2ee56f pinctrl: sunxi: Fix name for A100 R_PIO
    ca2b798e53d4 pinctrl: rockchip: Enhance support for IRQ_TYPE_EDGE_BOTH
    30fccb4fe449 pinctrl: qcom: sc8180x: Fix wrong pin numbers
    cbafdbb6f6ce pinctrl: qcom: sc8180x: Fix gpio_wakeirq_map
    ba6b9f7cc110 of: fdt: fix off-by-one error in unflatten_dt_nodes()
    c23065adf97f tty: serial: atmel: Preserve previous USART mode if RS485 disabled
    1d01d7beccba serial: atmel: remove redundant assignment in rs485_config
    f3450c33411b drm/tegra: vic: Fix build warning when CONFIG_PM=n
    820b689b4a7a Linux 5.15.69
    277674996dcf Input: goodix - add compatible string for GT1158
    b9b39f7332c5 RDMA/irdma: Use s/g array in post send only when its valid
    125c3ae8a936 usb: gadget: f_uac2: fix superspeed transfer
    fa7e0266c239 usb: gadget: f_uac2: clean up some inconsistent indenting
    07609e83c1b9 soc: fsl: select FSL_GUTS driver for DPIO
    3998dc50ebdc mm: Fix TLB flush for not-first PFNMAP mappings in unmap_region()
    cd698131ef5d usb: storage: Add ASUS <0x0b05:0x1932> to IGNORE_UAS
    6087747599ec platform/x86: acer-wmi: Acer Aspire One AOD270/Packard Bell Dot keymap fixes
    d4441b810bd8 perf/arm_pmu_platform: fix tests for platform_get_irq() failure
    55032fb14d4a net: dsa: hellcreek: Print warning only once
    985a5d3d491d drm/amd/amdgpu: skip ucode loading if ucode_size == 0
    a1347be8f0ff nvmet-tcp: fix unhandled tcp states in nvmet_tcp_state_change()
    3d380f9d1e2b Input: iforce - add support for Boeder Force Feedback Wheel
    b9682878abee ieee802154: cc2520: add rc code in cc2520_tx()
    3a10e8edee2b gpio: mockup: remove gpio debugfs when remove device
    b4ebcd6d48bc tg3: Disable tg3 device on system reboot to avoid triggering AER
    f715188c23fa hid: intel-ish-hid: ishtp: Fix ishtp client sending disordered message
    a86c8d1b36a9 HID: ishtp-hid-clientHID: ishtp-hid-client: Fix comment typo
    2e3aeb48995a dt-bindings: iio: gyroscope: bosch,bmg160: correct number of pins
    1b80691d5115 drm/msm/rd: Fix FIFO-full deadlock
    a9687a2dc7e1 platform/surface: aggregator_registry: Add support for Surface Laptop Go 2
    49801d5f8b67 Input: goodix - add support for GT1158
    709edbac4c45 iommu/vt-d: Fix kdump kernels boot failure with scalable mode
    90f922646f57 tracefs: Only clobber mode/uid/gid on remount if asked
    3c90af5a773a tracing: hold caller_addr to hardirq_{enable,disable}_ip
    64840a4a2d8e task_stack, x86/cea: Force-inline stack helpers
    0b009e5fd146 x86/mm: Force-inline __phys_addr_nodebug()
    f9571a969973 lockdep: Fix -Wunused-parameter for _THIS_IP_
    dee782da3937 ARM: dts: at91: sama7g5ek: specify proper regulator output ranges
    424ac5929d0a ARM: dts: at91: fix low limit for CPU regulator
    8be25fa7cfd6 ARM: dts: imx6qdl-kontron-samx6i: fix spi-flash compatible
    78eb5e326a0e ARM: dts: imx: align SPI NOR node name with dtschema
    3bb12efc5e4d ACPI: resource: skip IRQ override on AMD Zen platforms
    a68a734b19af NFS: Fix WARN_ON due to unionization of nfs_inode.nrequests

(From OE-Core rev: b4f0bc16db0a18baf9234171edce3206319a2c2d)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit fbc8840580fe008c2deda50c0d2d5a98e9b6c564)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:13 +00:00
wangmy
b0bf1ab118 lighttpd: upgrade 1.4.66 -> 1.4.67
Changelog:
=============
  * Update comment about TCP_INFO on OpenBSD
  * [mod_ajp13] fix crash with bad response headers (fixes #3170)
  * [core] handle RDHUP when collecting chunked body
  * [core] tweak streaming request body to backends
  * [core] handle ENOSPC with pwritev() (#3171)
  * [core] manually calculate off_t max (fixes #3171)
  * [autoconf] force large file support (#3171)
  * [multiple] quiet coverity warnings using casts
  * [meson] add license keyword to project declaration

(From OE-Core rev: d099203a342b8bbb35656b84c6488e8131cc8648)

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>
(cherry picked from commit 7a399862bb2e1503fbffa18e7ec0767643f76132)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:13 +00:00
Markus Volk
e57c26ea29 mesa: update 22.2.0 -> 22.2.2
Mesa 22.2.2 is a bug fix release which fixes bugs found since the 22.2.1 release.

New features

None

Bug fixes

radv: Crash in dEQP-VK.ray_query.misc.dynamic_indexing
glthread: radeonsi: offset textures in game starsector with glthread enabled
Crashing on Windows VM
Exanima renders with the wrong colors.
nouveau: tegra124: GL_OUT_OF_MEMORY error

Changes

freedreno: Fix graphic glitches on a4xx and a5xx
nir/lower_system_values: Fix cs_local_index_to_id with variable workgroups
pan/mdg: Lower PIPE_COMPUTE_CAP_MAX_THREADS_PER_BLOCK on Midgard
pan/mdg: Fix 16-bit alignment with spiller
nir: Fix nir_fmax_abs_vec_comp
gallium/vl: Add opaque rgb pixel formats
aco/spill: Fix spilling of Phi operands
tu: Reset whether there is DS resolve for dynamic subpass
gallivm: handle llvm coroutines for llvm > 15
nouveau: treat DRM_FORMAT_INVALID as implicit modifier
docs: Add sha256 sum for 22.2.1
.pick_status.json: Update to 243aa6b2ec0c2626b1333ba666a6d6d60ede8505
.pick_status.json: Update to c4482a3c1a973975eb27ac284a18bebca24f7876
.pick_status.json: Update to 3eed5931edf6e5f45378b013ca21f98f17af2b34
.pick_status.json: Update to b02e9ef35a0446019cda9473e4c355c7cc4bb24d
.pick_status.json: Mark 4c7a44413a07d3fb314f786e047bb7212c082a6c as denominated
.pick_status.json: Mark dbd022f2ab43ff0a9ecc05c61123467e25f109de as backported
turnip: Don’t use the dynamic color write enable during non-dynamic.
gallium/u_threaded_context: remove stale comment
r300: don’t use smooth line if not requested
r600/sfn: Always start a new CF after a KILL instruction
r600/sfn: don’t propagate registers into conditional test
virgl: Report CONSTANT_BUFFER_SIZE according to GL_MAX_UNIFORM_BLOCK_SIZE
vulkan/runtime: don’t lookup the pipeline disk cache if disabled
anv: initialization pipeline layout to 0s
anv: add missing tracepoint
clc/clover: Link clang statically when shared-llvm is disabled
zink: clamp line_stipple_factor to 1 if stipple is disabled
zink: unset rp_changed after initializing renderpass attachments
zink: disable fbfetch when flushing clears
vulkan/wsi: Add dep_libudev to idep dependencies
gallium/va: vaDeriveImage to check PIPE_VIDEO_SUPPORTS_CONTIGUOUS_PLANES_MAP
d3d12: Implement cap PIPE_VIDEO_SUPPORTS_CONTIGUOUS_PLANES_MAP
zink: fix invalid Offset set for variables which do not need an offset
zink: stop enabling minmax filtering when not supported
zink: fix isNan mismatch between NIR and SPIR-V
util/conf: enable init to zero workaround for Exanima
util/radeonsi: enable zerovram workaround for Exanima
radv: add radv_zero_vram workarounds for OpenGL games
glthread: fix matrix stack depth tracking
glthread: leave dlist dispatch in place for Begin/End
util: Turn -DWINDOWS_NO_FUTEX to be pre_args

- add a PACKAGECONFIG for perfetto support

(From OE-Core rev: a68121557f72ebccc92adaec0df2b43abe11869d)

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>
(cherry picked from commit cbcaff0b4cc349706b9847f4262746b43adba209)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:13 +00:00
Ross Burton
baccaad9a0 zlib: upgrade 1.2.12 -> 1.2.13
Changes in 1.2.13 (13 Oct 2022)
- Fix configure issue that discarded provided CC definition
- Correct incorrect inputs provided to the CRC functions
- Repair prototypes and exporting of new CRC functions
- Fix inflateBack to detect invalid input with distances too far
- Have infback() deliver all of the available output up to any error
- Fix a bug when getting a gzip header extra field with inflate()
- Fix bug in block type selection when Z_FIXED used
- Tighten deflateBound bounds
- Remove deleted assembler code references
- Various portability and appearance improvements

Drop a number of patches whicih have been merged upstream.

(From OE-Core rev: b7805c7daef0690e27d44aa18cf3946e3108abbf)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 115eb5326dc7f9256d58147b3655cd13d5994cfc)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:13 +00:00
Ross Burton
c5c4cbb024 zlib: do out-of-tree builds
zlib supports out-of-tree builds, so do them.

(From OE-Core rev: 2cd077f6396efd940d873c5f7f0f7614d1626ac3)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit e8bf682e9ccf2ddce5149f01ba788ca813329221)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:13 +00:00
wangmy
394054d7ca lttng-ust: upgrade 2.13.4 -> 2.13.5
Changelog:
==========
* Fix: bytecode validator: reject specialized load field/context ref instructions
* Fix: bytecode validator: reject specialized load instructions
* Fix: event notification capture: validate buffer length
* Fix: event notification capture error handling
* Fix: lttng-ust-comm: wait on wrong child process
* fix: 'make dist' without javah

(From OE-Core rev: d96afd6159b696dc18a7d6ab3731ad1ac258c98c)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 569d6c271bf782cb4a524603693adbbe3d020f92)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:13 +00:00
wangmy
27e0f91aaa libsdl2: upgrade 2.24.0 -> 2.24.1
This is a stable bugfix release, with the following changes:

Windows

Only check to see if the ICC profile changes when the display changes or we gain focus
Fixed window resize handing when using the D3D12 renderer
Fixed Xbox controller detection on Windows XP

macOS

Fixed long delay in SDL_CloseAudioDevice()

Linux

Fixed crash in Wayland_HasScreenKeyboardSupport()

FreeBSD

Fixed building without GNU sort, but warn that dynamic libraries won't be found

Emscripten

Fixed infinite recursion related to mutexes on startup

OS/2

Fixes and improvements to SDL_LoadObject() functionality

0001-Disable-libunwind-in-native-OE-builds-by-not-looking.patch
refreshed for new version.

(From OE-Core rev: 3c686477cc7557060fd9152f7546f00099a630a2)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit aa45a2fad9ecd5d553c605dc6b3d4cd70d7d7776)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:13 +00:00
wangmy
079bb45350 libksba: upgrade 1.6.0 -> 1.6.2
New upstream release fixing CVE-2022-3515

(From OE-Core rev: 8e453d64255ce6a01b193c3735bb0aefbaa6fb38)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 4bef6fc673de958dfbab80bcbc2e0159803b97ee)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:13 +00:00
wangmy
2dd06fb636 wpebackend-fdo: upgrade 1.12.1 -> 1.14.0
Changelog:
==========
Fixed a crash caused by trying to deallocate already freed graphics buffers in certain situations.

(From OE-Core rev: d650490c7786edde665472a38eb68f6db1f6aa4d)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 0db4627fe8c6f8a0080248052dc06419774cba4f)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:13 +00:00
wangmy
8ed9ff8919 numactl: upgrade 2.0.15 -> 2.0.16
Commits
5a99c6d: Revert "numademo: fix error on 32bit system" (Andi Kleen)
04da3af: fix the memory leak of numa_preferred api (luochenglcs) #139
86edd38: when preferred_many is not supported, fall back to preferred will (luochenglcs) #137
413a93f: add cut-release github workflow (#142) (LUCIANO FURTADO) #142
10285f1: Release numactl 2.0.16 (Filipe Brandenburger)

(From OE-Core rev: 5ab90209ef18876285bd62468e9cec7a9a80608d)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 6d9ed8d4b13c2d87dae482bbadef039de050bc9d)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:13 +00:00
wangmy
86eaa373a7 libical: upgrade 3.0.14 -> 3.0.15
Changelog:
=========
 Add missing property parameters into libical-glib
 Fix CMake option USE_32BIT_TIME_T actually uses a 32-bit time_t value
 Fix icaltime_as_timet, which returned incorrect results for years >= 2100, to work properly between years 1902 and 10k.
 Fix x-property comma handling and escaping
 Built-in timezones updated to tzdata2022d (now with a VTIMEZONE for each time zone alias)
 Fix fuzzer issues
 Handle unreachable-code compile warnings with clang
 Ensure all vanew_foo() calls finish with (void*)0 (not 0)

(From OE-Core rev: 68e89fb36d43db7a655a3a73933e403bb0932ff3)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 6092ae3cbe0eaf006db615c6cc3f1692e1cc1df8)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:13 +00:00
wangmy
b0b966ad07 libcap: upgrade 2.65 -> 2.66
RELEASE NOTES FOR 2.66

Fix documentation typos in cap_from_text.3 (Bug: 216514 reported by Paulo Andrade.)

Some getpcaps code clean up and a fix for PID argument parsing from Jakub Wilk.

Slightly more robust Makefiles to address an error with make -j48 test observed by Tomasz Kłoczko.

Include a simple Go program, captrace, to trace kernel capability validation checks

This program can be used to figure out what capabilities a program needs to operate.

captrace (a wrapper for bpftrace) uses BPF kprobes to monitor the kernel for capability checks and whether or not they succeed for the system, a specific PID or a program's direct execution.

Trim down the default file capabilities for contrib/sucap/su to those actually needed and set USER and HOME environment variables so bash doesn't complain about a sourcing error.

(From OE-Core rev: 21f57b4341d8520c1e7319b2b9a0616af61e0f68)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 9040e612084a561b1766bb86c9c002b811eea4c9)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:13 +00:00
Tim Orling
fc5bc29d1b vim: upgrade 9.0.0614 -> 9.0.0820
Includes fixes for CVE-2022-3705
https://nvd.nist.gov/vuln/detail/CVE-2022-3705

For a short list of important changes, see:
https://www.arp242.net/vimlog/

(From OE-Core rev: 1b0ce402ef432cacb824a49aeb039732fe25dc9d)

Signed-off-by: Tim Orling <tim.orling@konsulko.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit f6d917bd0f8810b5ed8d403ad25d59cda2fc9574)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:13 +00:00
Ed Tanous
8a3bbee311 openssl: Upgrade 3.0.5 -> 3.0.7
OpenSSL 3.0.5 includes a HIGH level security vulnerability [1].

Upgrade the recipe to point to 3.0.7.

CVE-2022-3358 is reported fixed in 3.0.6, so drop the patch for that as
well.

[1] https://www.openssl.org/news/vulnerabilities.html

Fixes CVE-2022-3786 and CVE-2022-3602: X.509 Email Address Buffer Overflows
https://www.openssl.org/blog/blog/2022/11/01/email-address-overflows/

(From OE-Core rev: 48f9f92c547fac35ff398180a32a5b0829cd9fff)

Signed-off-by: Ed Tanous <edtanous@google.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit a69ea1f7db96ec8b853573bd581438edd42ad6e0)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-04 23:31:49 +00:00
wangmy
b1b1c9232f gnutls: upgrade 3.7.7 -> 3.7.8
Changelog:
=========
** libgnutls: In FIPS140 mode, RSA signature verification is an approved
   operation if the key has modulus with known sizes (1024, 1280,
   1536, and 1792 bits), in addition to any modulus sizes larger than
   2048 bits, according to SP800-131A rev2.

** libgnutls: gnutls_session_channel_binding performs additional checks when
   GNUTLS_CB_TLS_EXPORTER is requested. According to RFC9622 4.2, the
   "tls-exporter" channel binding is only usable when the handshake is
   bound to a unique master secret (i.e., either TLS 1.3 or extended
   master secret extension is negotiated). Otherwise the function now
   returns error.

** libgnutls: usage of the following functions, which are designed to
   loosen restrictions imposed by allowlisting mode of configuration,
   has been additionally restricted. Invoking them is now only allowed
   if system-wide TLS priority string has not been initialized yet:
gnutls_digest_set_secure
gnutls_sign_set_secure
gnutls_sign_set_secure_for_certs
gnutls_protocol_set_enabled

(From OE-Core rev: a583ac20cc82ede59e1a4e30708cf5434b49ce37)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 858886aa07d0c2c2ef2489996cc8eca5fbe931fa)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-04 23:31:49 +00:00
Vyacheslav Yurkov
cc4b3a0040 overlayfs: Allow not used mount points
When machine configuration defines a mount point, which is not used in
any recipe, allow to fall through and only report a note in the logs.
This can be expected behavior, when a mount point is defined for several
machines, but not used in all of them

(From OE-Core rev: c7c6b273656a3e2b8b959004b996e56d4086ce5e)

Signed-off-by: Vyacheslav Yurkov <Vyacheslav.Yurkov@bruker.com>
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
(cherry picked from commit a9c604b5e0d943b5b5f7c8bdd5be730c2abcf866)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-04 23:31:49 +00:00
Joshua Watt
900420392d runqemu: Fix gl-es argument from causing other arguments to be ignored
The code to parse arguments was inadvertently skipping all arguments in
the elif block after gl-es if it was specified on the command line.

(From OE-Core rev: dd1dcfada1fa46ecb8227c2852769b35026875d3)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 718bb8d56f6a24c86e67830a7d13af54df2ebb4e)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-04 23:31:49 +00:00
Joshua Watt
03f1b28c6d runqemu: Do not perturb script environment
Instead of changing the script environment to affect the child
processes, make a copy of the environment with modifications and pass
that to subprocess.

Specifically, when dri rendering is enabled, LD_PRELOAD was being passed
to all processes created by the script which resulted in other commands
(e.g. stty) exiting with a failure like:

 /bin/sh: symbol lookup error: sysroots-uninative/x86_64-linux/lib/librt.so.1: undefined symbol: __libc_unwind_link_get, version GLIBC_PRIVATE

Making a copy of the environment fixes this because the LD_PRELOAD is
now only passed to qemu itself.

(From OE-Core rev: 91c2449d4e873b2cec8777d71e218a12f899669d)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 2232599d330bd5f2a9e206b490196569ad855de8)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-04 23:31:49 +00:00
Jeremy Puhlman
692a8ab550 qemu-native: Add PACKAGECONFIG option for jack
With libjack-devel or jack-audio-connection-kit-devel, qemu-native
detects the library/header and tries to build with it. Since its
missing from the sysroot, it fails to build.

 -O2 -fPIE -D_REENTRANT -Wno-undef -MD -MQ libcommon.fa.p/audio_jackaudio.c.o
-MF libcommon.fa.p/audio_jackaudio.c.o.d -o libcommon.fa.p/audio_jackaudio.c.o
-c ../qemu-6.2.0/audio/jackaudio.c
| ../qemu-6.2.0/audio/jackaudio.c:34:10: fatal error: jack/jack.h: No such file
or directory
|    34 | #include <jack/jack.h>
|       |          ^~~~~~~~~~~~~
| compilation terminated.

(From OE-Core rev: 7c8f23aa594175f2169df0d62051bf42d491a1bb)

Signed-off-by: Jeremy A. Puhlman <jpuhlman@mvista.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 27260be388f7f9f324ff405e7d8e254925b4ae90)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-04 23:31:48 +00:00
Jan-Simon Moeller
94270812fa buildtools-tarball: export certificates to python and curl
The custom path of the ca-certificates.crt within the buildtools-tarball requires more
environment variables to be exported. Namely REQUESTS_CA_BUNDLE for the python requests library
and CURL_CA_BUNDLE for curl.

(From OE-Core rev: facafa0f76af9cbf80f862497b66c18b3fbfa60b)

Signed-off-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
(cherry picked from commit 5c249db9de8ad8cfe0996ff4fee4c575a5ff1e34)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-04 23:31:48 +00:00
Kai Kang
570e56775b mesa: only apply patch to fix ALWAYS_INLINE for native
0001-nir-nir_opt_move-fix-ALWAYS_INLINE-compiler-error.patch is not
needed by target mesa any more. But it still fails to compile
mesa-native without this patch when DEBUG_BUILD is enabled on Ubuntu
18.04 with gcc 7.5.0:

| ../mesa-22.1.6/src/compiler/nir/nir_inline_helpers.h: In function ‘nir_opt_move_block’:
| ../mesa-22.1.6/src/compiler/nir/nir_opt_move.c:55:1: error: inlining failed in call to
    always_inline ‘src_is_ssa’: indirect function call with a yet undetermined callee
|  src_is_ssa(nir_src *src, void *state)
|  ^~~~~~~~~~

So only apply it for mesa-native.

(From OE-Core rev: f6fb2da56ef1f35b536ebf62a03e10bba59d8276)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit c6a6d0c2680799683d58968c2558a224f27caaa2)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-04 23:31:48 +00:00
wangmy
0dfef83aa5 ifupdown: upgrade 0.8.37 -> 0.8.39
ifupdown (0.8.38)
  * Remove dependency on lsb-base (Closes: #1020604)
  * Remove pump support (no longer in Debian archive)
  * Fix error message when turning down VLAN interfaces. Thanks to Aleksandr
    Muravjov (Closes: #1007889)
  * Ship Ubuntu's integration scripts for systemd-resolved. Thanks to Luca
    Boccassi (Closes: #1016798)
  * Add rfkill support. Thanks to Sebastian Reichel <email address hidden>
    (Closes: #645559)

ifupdown (0.8.39)
  * Add execution permission on resolved scripts. Thanks to Vincent Lefèvre
    (Closes: #1021259)

(From OE-Core rev: 342fb3183fd1910b76c2bed242bf8b2ea179d217)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit f0462e3336c7134aeeb2684692732c187971b330)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-04 23:31:48 +00:00
wangmy
adaa8ad2a5 mtools: upgrade 4.0.40 -> 4.0.41
disable-hardcoded-configs.patch
refreshed for new version

Changelo:
=========
- Made it possible again to have FAT32 filesystems with less
  than 0xfff5 clusters
- Make FAT32 entries 0 and 1 match what windows 10 does
- Misc source code and configure script cleanup

(From OE-Core rev: 9ac0de44f11123876a92f7d7819d5ff2c20475b7)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit b19127f0cd0e10c7180c138284b38c97fa9db7af)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-04 23:31:48 +00:00
Ross Burton
811f8a09eb pango: upgrade 1.50.9 -> 1.50.10
Overview of changes in 1.50.10, 16-09-2022
=========================================
- Avoid some unnecessary strdups
- Fix line height computations with a non-trivial CTM

(From OE-Core rev: 78dc0bf6384349c23a54f59d89988ad242125581)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
(cherry picked from commit 884ce27b9cee231e093fe53192d04133c437404e)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-04 23:31:48 +00:00
Teoh Jay Shen
72157834c6 vim: Upgrade 9.0.0598 -> 9.0.0614
Include fixes for CVE-2022-3352.

(From OE-Core rev: 9067e3a24bc5558af6a41f2c5e6f16c37116e3ed)

Signed-off-by: Teoh Jay Shen <jay.shen.teoh@intel.com>
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
(cherry picked from commit 8aa707f80ae1cfe89d5e20ec1f1632a65149aed4)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-04 23:31:48 +00:00
wangmy
25cfdd66e4 meson: upgrade 0.63.2 -> 0.63.3
(From OE-Core rev: fe33134efbe109b9f3bffa1b05fd6fed8860129c)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 3c87597dcde7676858f76c1066cd87195ecc8aef)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-04 23:31:48 +00:00
Liam Beguin
33711d546d meson: make wrapper options sub-command specific
The meson-wrapper adds setup options to facilitate cross-compilation.
The current options are exclusive to the setup sub-command and might
cause issues with other sub-commands.

Update the wrapper to make options sub-command specific.

(From OE-Core rev: 4475250ee0d83cc90322f2fcd9ec8df7c05b6903)

Signed-off-by: Liam Beguin <liambeguin@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 7bcda141f2019862b4fb5d8dec7956cd8344b420)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-04 23:31:48 +00:00
Ross Burton
1c94f9d64b qemu: backport the fix for CVE-2022-3165
(From OE-Core rev: d63c5b210b50a2c332a5c309298ec13b510cc7c8)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit d820389728b0f5e085954b4f995da2b2014acedf)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-04 23:31:48 +00:00
Qiu, Zheng
e6daf39c9b tiff: fix a typo for CVE-2022-2953.patch
The CVE number in the patch is a typo. CVE-2022-2053 is not related to
libtiff. So fix it.

(From OE-Core rev: 3ef84008bf729f74f1244e8b57451cdeb3a9e262)

Signed-off-by: Zheng Qiu <zheng.qiu@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit c9f76ef859b0b4edb83ac098816b625f52c78173)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-04 23:31:48 +00:00
Ross Burton
7ffb05dd16 tiff: fix a number of CVEs
Backport fixes from upstream for the following CVEs:
- CVE-2022-3599
- CVE-2022-3597
- CVE-2022-3626
- CVE-2022-3627
- CVE-2022-3570
- CVE-2022-3598

(From OE-Core rev: bfd6d135a555e854e30d45ea36b0cbd612e322df)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 722bbb88777cc3c7d1c8273f1279fc18ba33e87c)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-04 23:31:48 +00:00
Ross Burton
8074213da8 xserver-xorg: backport fixes for CVE-2022-3550 and CVE-2022-3551
(From OE-Core rev: 9163db79ec90ff4b8ecd189f5fb6e44e27b9e53b)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit e32401d8bf44afcca88af7e4c5948d2c28e1813f)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-04 23:31:48 +00:00
Ross Burton
f435cff54a xserver-xorg: ignore CVE-2022-3553 as it is XQuartz-specific
(From OE-Core rev: 2017ed15cc5b29319fe1b769c1fcfc5c2f799fd8)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 769576f36aac9652525beec5c7e8a4d26632b844)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-04 23:31:48 +00:00
Ross Burton
a6586821f0 libx11: apply the fix for CVE-2022-3554
(From OE-Core rev: 3a65a787d1b53f57cd0eedbf7a70ce6dcde0d148)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 5d30f124274d2822d72b56f84eb8c8ae64e31e0d)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-04 23:31:48 +00:00
Hitendra Prajapati
0bc04f5e6d openssl: CVE-2022-3358 Using a Custom Cipher with NID_undef may lead to NULL encryption
Upstream-Status: Backport from https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=5485c56679d7c49b96e8fc8ca708b0b7e7c03c4b]
Description:
	CVE-2022-3358 openssl: Using a Custom Cipher with NID_undef may lead to NULL encryption.
Affects "openssl < 3.0.6"

(From OE-Core rev: c28dc71f17133f6e4470fc0c1a552c743869b3ad)

Signed-off-by: Hitendra Prajapati <hprajapati@mvista.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit f98b2273c6f03f8f6029a7a409600ce290817e27)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-04 23:31:48 +00:00
Richard Purdie
6b9db5a99b bitbake: tests/fetch: Allow handling of a file:// url within a submodule
CVE-2022-39253 in git meant file:// urls within submodules were disabled. Add
a parameter to the commands in the tests to allow this to continue to work.

(Bitbake rev: 209f7ba352b60722830157054e3fc56cb9c693eb)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-26 23:02:11 +01:00
Mark Asselstine
6672cbe670 bitbake: tests: bb.tests.fetch.URLHandle: add 2 new tests
Add a test for special characters in user and password to qualify
decodeurl() inspired by a bug report describing that '=' signs in a
password was problematic.

Add a second test to qualify decodeurl() as related to the change in
commit 628c4bf6c89b [fetch2/__init__: handle @ in package names].

Relates to [YOCTO #14476]

(Bitbake rev: ee04cf09c7022168c035affa654773652a49793e)

Signed-off-by: Mark Asselstine <mark.asselstine@windriver.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-26 23:02:10 +01:00
Michael Opdenacker
c58059d282 bitbake: doc: bitbake-user-manual: expand description of BB_PRESSURE_MAX variables
(Bitbake rev: 72e9847dd578c3cbed52a9c16fea23ebbeef5046)

Signed-off-by: Paul Eggleton <paul.eggleton@microsoft.com>
Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-26 23:02:10 +01:00
Mark Hatle
ec08faf2e4 bitbake: utils/ply: Update md5 to better report errors with hashlib
In the case where hashlib is not available, the try would fail and fall
through resulting in a backtrace on the usage of the 'sig'.  The backtrace
itself was confusing and made it difficult to determine what went wrong.

Update the import to be in it's own try block with an appropriate
message to indicate what went wrong.

Note, the current version of ply all of this code has been restructured
so this is not applicable upstream.

Additionally, some versions of hashlib don't appear to implement the
second FIPS related argument.  Detect this and support both versions.

(Bitbake rev: 484ab42f440070c0369b81f5c69da860fa47a798)

Signed-off-by: Mark Hatle <mark.hatle@amd.com>
Signed-off-by: Mark Hatle <mark.hatle@kernel.crashing.org>
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-26 23:02:10 +01:00
Johan Korsnes
7aa3ed5c37 bitbake: bitbake: user-manual: inform about spaces in :remove
Inform the reader that there should be no need for spaces in the value
when using removal override `:remove`.

Considering why spaces are used in the other override operators, it
might seem obvious that they aren't needed for the removal operator.
But, it seems like I'm not the first to be confused about this.

Cc: Richard Purdie <richard.purdie@linuxfoundation.org>
Cc: Quentin Schulz <quentin.schulz@theobroma-systems.com>
Cc: Ross Burton <ross.burton@arm.com>
Cc: Nicolas Dechesne <nicolas.dechesne@linaro.org>
(Bitbake rev: 0a493a772f83436cbe909de93c157f4ab2d2d136)

Signed-off-by: Johan Korsnes <johan.korsnes@remarkable.no>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Reviewed-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-26 23:02:10 +01:00
Richard Purdie
b6d633e7f3 openssl: Fix SSL_CERT_FILE to match ca-certs location
In OE-Core d6b15d1e70b99185cf245d829ada5b6fb99ec1af,
"openssl: export necessary env vars in SDK", the value added for
SSL_CERT_FILE was in conflict with the value used elsewhere, such as
in buildtools. This makes them match and fixes buildtools testsdk
failures.

(From OE-Core rev: d40f7ddcfbdd5cb1d9f96271fefddf67e9044bb9)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-26 23:01:18 +01:00
5379 changed files with 655817 additions and 120 deletions

7
.gitignore vendored
View File

@@ -31,9 +31,4 @@ pull-*/
bitbake/lib/toaster/contrib/tts/backlog.txt
bitbake/lib/toaster/contrib/tts/log/*
bitbake/lib/toaster/contrib/tts/.cache/*
bitbake/lib/bb/tests/runqueue-tests/bitbake-cookerdaemon.log
_toaster_clones/
downloads/
sstate-cache/
toaster.sqlite
.vscode/
bitbake/lib/bb/tests/runqueue-tests/bitbake-cookerdaemon.log

2
.templateconf Normal file
View File

@@ -0,0 +1,2 @@
# Template settings
TEMPLATECONF=${TEMPLATECONF:-meta-poky/conf/templates/default}

20
LICENSE Normal file
View File

@@ -0,0 +1,20 @@
Different components of OpenEmbedded are under different licenses (a mix
of MIT and GPLv2). See LICENSE.GPL-2.0-only and LICENSE.MIT for further
details of the individual licenses.
All metadata is MIT licensed unless otherwise stated. Source code
included in tree for individual recipes (e.g. patches) are under
the LICENSE stated in the associated recipe (.bb file) unless
otherwise stated.
License information for any other files is either explicitly stated
or defaults to GPL version 2 only.
Individual files contain the following style tags instead of the full license
text to identify their license:
SPDX-License-Identifier: GPL-2.0-only
SPDX-License-Identifier: MIT
This enables machine processing of license information based on the SPDX
License Identifiers that are here available: http://spdx.org/licenses/

288
LICENSE.GPL-2.0-only Normal file
View File

@@ -0,0 +1,288 @@
GNU GENERAL PUBLIC LICENSE
Version 2, June 1991
Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
Preamble
The licenses for most software are designed to take away your
freedom to share and change it. By contrast, the GNU General Public
License is intended to guarantee your freedom to share and change free
software--to make sure the software is free for all its users. This
General Public License applies to most of the Free Software
Foundation's software and to any other program whose authors commit to
using it. (Some other Free Software Foundation software is covered by
the GNU Lesser General Public License instead.) You can apply it to
your programs, too.
When we speak of free software, we are referring to freedom, not
price. Our General Public Licenses are designed to make sure that you
have the freedom to distribute copies of free software (and charge for
this service if you wish), that you receive source code or can get it
if you want it, that you can change the software or use pieces of it
in new free programs; and that you know you can do these things.
To protect your rights, we need to make restrictions that forbid
anyone to deny you these rights or to ask you to surrender the rights.
These restrictions translate to certain responsibilities for you if you
distribute copies of the software, or if you modify it.
For example, if you distribute copies of such a program, whether
gratis or for a fee, you must give the recipients all the rights that
you have. You must make sure that they, too, receive or can get the
source code. And you must show them these terms so they know their
rights.
We protect your rights with two steps: (1) copyright the software, and
(2) offer you this license which gives you legal permission to copy,
distribute and/or modify the software.
Also, for each author's protection and ours, we want to make certain
that everyone understands that there is no warranty for this free
software. If the software is modified by someone else and passed on, we
want its recipients to know that what they have is not the original, so
that any problems introduced by others will not reflect on the original
authors' reputations.
Finally, any free program is threatened constantly by software
patents. We wish to avoid the danger that redistributors of a free
program will individually obtain patent licenses, in effect making the
program proprietary. To prevent this, we have made it clear that any
patent must be licensed for everyone's free use or not licensed at all.
The precise terms and conditions for copying, distribution and
modification follow.
GNU GENERAL PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0. This License applies to any program or other work which contains
a notice placed by the copyright holder saying it may be distributed
under the terms of this General Public License. The "Program", below,
refers to any such program or work, and a "work based on the Program"
means either the Program or any derivative work under copyright law:
that is to say, a work containing the Program or a portion of it,
either verbatim or with modifications and/or translated into another
language. (Hereinafter, translation is included without limitation in
the term "modification".) Each licensee is addressed as "you".
Activities other than copying, distribution and modification are not
covered by this License; they are outside its scope. The act of
running the Program is not restricted, and the output from the Program
is covered only if its contents constitute a work based on the
Program (independent of having been made by running the Program).
Whether that is true depends on what the Program does.
1. You may copy and distribute verbatim copies of the Program's
source code as you receive it, in any medium, provided that you
conspicuously and appropriately publish on each copy an appropriate
copyright notice and disclaimer of warranty; keep intact all the
notices that refer to this License and to the absence of any warranty;
and give any other recipients of the Program a copy of this License
along with the Program.
You may charge a fee for the physical act of transferring a copy, and
you may at your option offer warranty protection in exchange for a fee.
2. You may modify your copy or copies of the Program or any portion
of it, thus forming a work based on the Program, and copy and
distribute such modifications or work under the terms of Section 1
above, provided that you also meet all of these conditions:
a) You must cause the modified files to carry prominent notices
stating that you changed the files and the date of any change.
b) You must cause any work that you distribute or publish, that in
whole or in part contains or is derived from the Program or any
part thereof, to be licensed as a whole at no charge to all third
parties under the terms of this License.
c) If the modified program normally reads commands interactively
when run, you must cause it, when started running for such
interactive use in the most ordinary way, to print or display an
announcement including an appropriate copyright notice and a
notice that there is no warranty (or else, saying that you provide
a warranty) and that users may redistribute the program under
these conditions, and telling the user how to view a copy of this
License. (Exception: if the Program itself is interactive but
does not normally print such an announcement, your work based on
the Program is not required to print an announcement.)
These requirements apply to the modified work as a whole. If
identifiable sections of that work are not derived from the Program,
and can be reasonably considered independent and separate works in
themselves, then this License, and its terms, do not apply to those
sections when you distribute them as separate works. But when you
distribute the same sections as part of a whole which is a work based
on the Program, the distribution of the whole must be on the terms of
this License, whose permissions for other licensees extend to the
entire whole, and thus to each and every part regardless of who wrote it.
Thus, it is not the intent of this section to claim rights or contest
your rights to work written entirely by you; rather, the intent is to
exercise the right to control the distribution of derivative or
collective works based on the Program.
In addition, mere aggregation of another work not based on the Program
with the Program (or with a work based on the Program) on a volume of
a storage or distribution medium does not bring the other work under
the scope of this License.
3. You may copy and distribute the Program (or a work based on it,
under Section 2) in object code or executable form under the terms of
Sections 1 and 2 above provided that you also do one of the following:
a) Accompany it with the complete corresponding machine-readable
source code, which must be distributed under the terms of Sections
1 and 2 above on a medium customarily used for software interchange; or,
b) Accompany it with a written offer, valid for at least three
years, to give any third party, for a charge no more than your
cost of physically performing source distribution, a complete
machine-readable copy of the corresponding source code, to be
distributed under the terms of Sections 1 and 2 above on a medium
customarily used for software interchange; or,
c) Accompany it with the information you received as to the offer
to distribute corresponding source code. (This alternative is
allowed only for noncommercial distribution and only if you
received the program in object code or executable form with such
an offer, in accord with Subsection b above.)
The source code for a work means the preferred form of the work for
making modifications to it. For an executable work, complete source
code means all the source code for all modules it contains, plus any
associated interface definition files, plus the scripts used to
control compilation and installation of the executable. However, as a
special exception, the source code distributed need not include
anything that is normally distributed (in either source or binary
form) with the major components (compiler, kernel, and so on) of the
operating system on which the executable runs, unless that component
itself accompanies the executable.
If distribution of executable or object code is made by offering
access to copy from a designated place, then offering equivalent
access to copy the source code from the same place counts as
distribution of the source code, even though third parties are not
compelled to copy the source along with the object code.
4. You may not copy, modify, sublicense, or distribute the Program
except as expressly provided under this License. Any attempt
otherwise to copy, modify, sublicense or distribute the Program is
void, and will automatically terminate your rights under this License.
However, parties who have received copies, or rights, from you under
this License will not have their licenses terminated so long as such
parties remain in full compliance.
5. You are not required to accept this License, since you have not
signed it. However, nothing else grants you permission to modify or
distribute the Program or its derivative works. These actions are
prohibited by law if you do not accept this License. Therefore, by
modifying or distributing the Program (or any work based on the
Program), you indicate your acceptance of this License to do so, and
all its terms and conditions for copying, distributing or modifying
the Program or works based on it.
6. Each time you redistribute the Program (or any work based on the
Program), the recipient automatically receives a license from the
original licensor to copy, distribute or modify the Program subject to
these terms and conditions. You may not impose any further
restrictions on the recipients' exercise of the rights granted herein.
You are not responsible for enforcing compliance by third parties to
this License.
7. If, as a consequence of a court judgment or allegation of patent
infringement or for any other reason (not limited to patent issues),
conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License. If you cannot
distribute so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you
may not distribute the Program at all. For example, if a patent
license would not permit royalty-free redistribution of the Program by
all those who receive copies directly or indirectly through you, then
the only way you could satisfy both it and this License would be to
refrain entirely from distribution of the Program.
If any portion of this section is held invalid or unenforceable under
any particular circumstance, the balance of the section is intended to
apply and the section as a whole is intended to apply in other
circumstances.
It is not the purpose of this section to induce you to infringe any
patents or other property right claims or to contest validity of any
such claims; this section has the sole purpose of protecting the
integrity of the free software distribution system, which is
implemented by public license practices. Many people have made
generous contributions to the wide range of software distributed
through that system in reliance on consistent application of that
system; it is up to the author/donor to decide if he or she is willing
to distribute software through any other system and a licensee cannot
impose that choice.
This section is intended to make thoroughly clear what is believed to
be a consequence of the rest of this License.
8. If the distribution and/or use of the Program is restricted in
certain countries either by patents or by copyrighted interfaces, the
original copyright holder who places the Program under this License
may add an explicit geographical distribution limitation excluding
those countries, so that distribution is permitted only in or among
countries not thus excluded. In such case, this License incorporates
the limitation as if written in the body of this License.
9. The Free Software Foundation may publish revised and/or new versions
of the General Public License from time to time. Such new versions will
be similar in spirit to the present version, but may differ in detail to
address new problems or concerns.
Each version is given a distinguishing version number. If the Program
specifies a version number of this License which applies to it and "any
later version", you have the option of following the terms and conditions
either of that version or of any later version published by the Free
Software Foundation. If the Program does not specify a version number of
this License, you may choose any version ever published by the Free Software
Foundation.
10. If you wish to incorporate parts of the Program into other free
programs whose distribution conditions are different, write to the author
to ask for permission. For software which is copyrighted by the Free
Software Foundation, write to the Free Software Foundation; we sometimes
make exceptions for this. Our decision will be guided by the two goals
of preserving the free status of all derivatives of our free software and
of promoting the sharing and reuse of software generally.
NO WARRANTY
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
REPAIR OR CORRECTION.
12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
POSSIBILITY OF SUCH DAMAGES.
END OF TERMS AND CONDITIONS
Note:
Individual files contain the following tag instead of the full license text.
SPDX-License-Identifier: GPL-2.0-only
This enables machine processing of license information based on the SPDX
License Identifiers that are here available: http://spdx.org/licenses/

25
LICENSE.MIT Normal file
View File

@@ -0,0 +1,25 @@
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
Note:
Individual files contain the following tag instead of the full license text.
SPDX-License-Identifier: MIT
This enables machine processing of license information based on the SPDX
License Identifiers that are here available: http://spdx.org/licenses/

71
MAINTAINERS.md Normal file
View File

@@ -0,0 +1,71 @@
OpenEmbedded-Core and Yocto Project Maintainer Information
==========================================================
OpenEmbedded and Yocto Project work jointly together to maintain the metadata,
layers, tools and sub-projects that make up their ecosystems.
The projects operate through collaborative development. This currently takes
place on mailing lists for many components as the "pull request on github"
workflow works well for single or small numbers of maintainers but we have
a large number, all with different specialisms and benefit from the mailing
list review process. Changes therefore undergo peer review through mailing
lists in many cases.
This file aims to acknowledge people with specific skills/knowledge/interest
both to recognise their contributions but also empower them to help lead and
curate those components. Where we have people with specialist knowledge in
particular areas, during review patches/feedback from these people in these
areas would generally carry weight.
This file is maintained in OE-Core but may refer to components that are separate
to it if that makes sense in the context of maintainership. The README of specific
layers and components should ultimately be definitive about the patch process and
maintainership for the component.
Recipe Maintainers
------------------
See meta/conf/distro/include/maintainers.inc
Component/Subsystem Maintainers
-------------------------------
* Kernel (inc. linux-yocto, perf): Bruce Ashfield
* Reproducible Builds: Joshua Watt
* Toaster: David Reyna
* Hash-Equivalence: Joshua Watt
* Recipe upgrade infrastructure: Alex Kanavin
* Toolchain: Khem Raj
* ptest-runner: Aníbal Limón
* opkg: Alex Stewart
* devtool: Saul Wold
* eSDK: Saul Wold
* overlayfs: Vyacheslav Yurkov
Maintainers needed
------------------
* Pseudo
* Layer Index
* recipetool
* QA framework/automated testing
* error reporting system/web UI
* wic
* Patchwork
* Patchtest
* Matchbox
* Sato
* Autobuilder
Layer Maintainers needed
------------------------
* meta-gplv2 (ideally new strategy but active maintainer welcome)
Shadow maintainers/development needed
--------------------------------------
* toaster
* bitbake

5
MEMORIAM Normal file
View File

@@ -0,0 +1,5 @@
Some project contributors who are sadly no longer with us:
Greg Gilbert (treke) - Ahead of his time with licensing
Thomas Wood (thos) - Creator of the original sato
Scott Rifenbark (scottrif) - Our long standing techwriter whose words live on

35
Makefile Normal file
View File

@@ -0,0 +1,35 @@
# Minimal makefile for Sphinx documentation
#
# You can set these variables from the command line, and also
# from the environment for the first two.
SPHINXOPTS ?=
SPHINXBUILD ?= sphinx-build
SOURCEDIR = .
BUILDDIR = _build
DESTDIR = final
ifeq ($(shell if which $(SPHINXBUILD) >/dev/null 2>&1; then echo 1; else echo 0; fi),0)
$(error "The '$(SPHINXBUILD)' command was not found. Make sure you have Sphinx installed")
endif
# Put it first so that "make" without argument is like "make help".
help:
@$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
.PHONY: help Makefile.sphinx clean publish
publish: Makefile.sphinx html singlehtml
rm -rf $(BUILDDIR)/$(DESTDIR)/
mkdir -p $(BUILDDIR)/$(DESTDIR)/
cp -r $(BUILDDIR)/html/* $(BUILDDIR)/$(DESTDIR)/
cp $(BUILDDIR)/singlehtml/index.html $(BUILDDIR)/$(DESTDIR)/singleindex.html
sed -i -e 's@index.html#@singleindex.html#@g' $(BUILDDIR)/$(DESTDIR)/singleindex.html
clean:
@rm -rf $(BUILDDIR)
# Catch-all target: route all unknown targets to Sphinx using the new
# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
%: Makefile.sphinx
@$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)

114
README
View File

@@ -1,114 +0,0 @@
The poky repository master branch is no longer being updated.
You can either:
a) switch to individual clones of bitbake, openembedded-core, meta-yocto and yocto-docs
https://docs.yoctoproject.org/dev/dev-manual/poky-manual-setup.html
b) use the new bitbake-setup
https://docs.yoctoproject.org/bitbake/dev/bitbake-user-manual/bitbake-user-manual-environment-setup.html
You can find more information in our documentation: https://docs.yoctoproject.org/
Note that "poky" the distro setting is still available in meta-yocto as
before and we continue to use and maintain that.
Long live Poky!
Some further information on the background of this change follows. The
details are taken from:
https://lists.openembedded.org/g/openembedded-architecture/message/2179
TLDR: People have complained about the combo-layer built poky
repository for years. It was meant to be a temporary thing, we now have
an alternative and I'm therefore doing what I promised I'd do. Change
is tough, things may break but this is the right point to at least try
it.
I'd like to note that:
* setting up builds with a separate oe-core and bitbake clone
works as it always has done
* you can change your CI just to use those two repos instead of poky
* bitbake-setup isn't mandatory, it will just be what the yocto-
docs presents to users
* we don't have to stop maintaining the poky repository
however nobody will test the new approach/code unless we do
* we are optionally exposing sstate mirrors in the new config
* we are also exposing config fragments to users
* poky as a DISTRO in meta-yocto remains
A bit more about the history and background for those who are
interested and then some FAQs:
Back around 2010 when we split up openembedded-classic and started
developing layers, we made the artificial "poky" repository construct
as a way to let people easily and quickly get started with the project.
without cloning and managing multiple repositories. Layers were a new
idea with lots of rough edges. kas didn't exist, I think repo was only
just created and it was a different world. For us, it meant hacking up
a quick tool, "combo-layer" and it was really a temporary solution to
fill a gap and it was at least as functional as repo of the era. It was
assumed we'd work it out properly in the future.
At developer meetings there are inevitable questions about why
poky/combo-layer exist and few seem to actually like/support it. There
are continual questions about why a tool doesn't exist or why we don't
adopt one too.
15 years later, a bit longer than we might have thought, we are finally
in a position where there may be a viable way forward to change.
It has taken us a bit of time to get to this point. I wrote the
original description of something like bitbake-setup about 7-8 years
ago. I shared it privately with a few people, the review feedback
stopped me pushing it further as I simply did not have the bandwidth.
We were fortunate to get funding from the Sovereign Tech Fund to start
the work and whilst I'd probably prefer to avoid the issue, the time
had come to start. Since then, Alexander Kanavin has put a lot of work
into getting it to the point where it would be possible to switch. A
huge thanks to him for getting this to the current point.
Why not use kas/submodules/repo?
This topic has been discussed in depth several times. Very roughly,
these are either difficult to focus on our use cases or have specific
designs and intent which we as a project would struggle to influence.
We are taking significant influence from some of them but also trying
to build something where we can benefit from tight direct integration
with bitbake and the metadata. For example fragment support is generic
and hopefully something other approaches can also benefit from. We want
to provide something we can switch the projects docs and autobuilder to
which we can control and develop as we need it to. We are not aiming to
force anyone to switch, you can use whichever tool you want.
Can we not keep poky [repository master branch] around?
If we do that, nobody will use the new tooling and it will be a
disaster as issues won't get resolved. We need our CI to use the same
thing we promote to our new and experienced users. We need this new
tooling to be usable by our experienced developers too. We have tried
for months to get people to try it and they simply don't. Making a
release with it won't change much either. It needs people using it and
for that, poky has to stop being updated.
What happens to poky [repository]?
The LTS branches continue their lifetime as planned. For master, I'll
probably put a final commit in changing to just a README which points
people at the bitbake-setup changes and explains what happened.
What are the timelines? Why now?
If we're going to make a change, we really want this in the next LTS
release, which is April 2026. We only have one release before that
which is now, October 2025. We therefore need to switch now, and then
give us time to update docs, fix issues that arise and so on and have
it in a release cycle. Whilst it means delaying the Oct 2025 release
slightly, that is the right thing to do in the context of the bigger
picture.

29
README.OE-Core.md Normal file
View File

@@ -0,0 +1,29 @@
OpenEmbedded-Core
=================
OpenEmbedded-Core is a layer containing the core metadata for current versions
of OpenEmbedded. It is distro-less (can build a functional image with
DISTRO = "nodistro") and contains only emulated machine support.
For information about OpenEmbedded, see the OpenEmbedded website:
https://www.openembedded.org/
The Yocto Project has extensive documentation about OE including a reference manual
which can be found at:
https://docs.yoctoproject.org/
Contributing
------------
Please refer to
https://www.openembedded.org/wiki/How_to_submit_a_patch_to_OpenEmbedded
for guidelines on how to submit patches.
Mailing list:
https://lists.openembedded.org/g/openembedded-core
Source code:
https://git.openembedded.org/openembedded-core/

1
README.hardware.md Symbolic link
View File

@@ -0,0 +1 @@
meta-yocto-bsp/README.hardware.md

1
README.md Symbolic link
View File

@@ -0,0 +1 @@
README.poky.md

1
README.poky.md Symbolic link
View File

@@ -0,0 +1 @@
meta-poky/README.poky.md

15
README.qemu.md Normal file
View File

@@ -0,0 +1,15 @@
QEMU Emulation Targets
======================
To simplify development, the build system supports building images to
work with the QEMU emulator in system emulation mode. Several architectures
are currently supported in 32 and 64 bit variants:
* ARM (qemuarm + qemuarm64)
* x86 (qemux86 + qemux86-64)
* PowerPC (qemuppc only)
* MIPS (qemumips + qemumips64)
Use of the QEMU images is covered in the Yocto Project Reference Manual.
The appropriate MACHINE variable value corresponding to the target is given
in brackets.

2
bitbake/.gitattributes vendored Normal file
View File

@@ -0,0 +1,2 @@
*min.js binary
*min.css binary

10
bitbake/AUTHORS Normal file
View File

@@ -0,0 +1,10 @@
Tim Ansell <mithro@mithis.net>
Phil Blundell <pb@handhelds.org>
Seb Frankengul <seb@frankengul.org>
Holger Freyther <holger@moiji-mobile.com>
Marcin Juszkiewicz <marcin@juszkiewicz.com.pl>
Chris Larson <kergoth@handhelds.org>
Ulrich Luckas <luckas@musoft.de>
Mickey Lauer <mickey@Vanille.de>
Richard Purdie <rpurdie@rpsys.net>
Holger Schurig <holgerschurig@gmx.de>

317
bitbake/ChangeLog Normal file
View File

@@ -0,0 +1,317 @@
Changes in Bitbake 1.9.x:
- Add PE (Package Epoch) support from Philipp Zabel (pH5)
- Treat python functions the same as shell functions for logging
- Use TMPDIR/anonfunc as a __anonfunc temp directory (T)
- Catch truncated cache file errors
- Allow operations other than assignment on flag variables
- Add code to handle inter-task dependencies
- Fix cache errors when generation dotGraphs
- Make sure __inherit_cache is updated before calling include() (from Michael Krelin)
- Fix bug when target was in ASSUME_PROVIDED (#2236)
- Raise ParseError for filenames with multiple underscores instead of infinitely looping (#2062)
- Fix invalid regexp in BBMASK error handling (missing import) (#1124)
- Promote certain warnings from debug to note 2 level
- Update manual
- Correctly redirect stdin when forking
- If parsing errors are found, exit, too many users miss the errors
- Remove supriours PREFERRED_PROVIDER warnings
- svn fetcher: Add _buildsvncommand function
- Improve certain error messages
- Rewrite svn fetcher to make adding extra operations easier
as part of future SRCDATE="now" fixes
(requires new FETCHCMD_svn definition in bitbake.conf)
- Change SVNDIR layout to be more unique (fixes #2644 and #2624)
- Add ConfigParsed Event after configuration parsing is complete
- Add SRCREV support for svn fetcher
- data.emit_var() - only call getVar if we need the variable
- Stop generating the A variable (seems to be legacy code)
- Make sure intertask depends get processed correcting in recursive depends
- Add pn-PN to overrides when evaluating PREFERRED_VERSION
- Improve the progress indicator by skipping tasks that have
already run before starting the build rather than during it
- Add profiling option (-P)
- Add BB_SRCREV_POLICY variable (clear or cache) to control SRCREV cache
- Add SRCREV_FORMAT support
- Fix local fetcher's localpath return values
- Apply OVERRIDES before performing immediate expansions
- Allow the -b -e option combination to take regular expressions
- Fix handling of variables with expansion in the name using _append/_prepend
e.g. RRECOMMENDS_${PN}_append_xyz = "abc"
- Add plain message function to bb.msg
- Sort the list of providers before processing so dependency problems are
reproducible rather than effectively random
- Fix/improve bitbake -s output
- Add locking for fetchers so only one tries to fetch a given file at a given time
- Fix int(0)/None confusion in runqueue.py which causes random gaps in dependency chains
- Expand data in addtasks
- Print the list of missing DEPENDS,RDEPENDS for the "No buildable providers available for required...."
error message.
- Rework add_task to be more efficient (6% speedup, 7% number of function calls reduction)
- Sort digraph output to make builds more reproducible
- Split expandKeys into two for loops to benefit from the expand_cache (12% speedup)
- runqueue.py: Fix idepends handling to avoid dependency errors
- Clear the terminal TOSTOP flag if set (and warn the user)
- Fix regression from r653 and make SRCDATE/CVSDATE work for packages again
- Fix a bug in bb.decodeurl where http://some.where.com/somefile.tgz decoded to host="" (#1530)
- Warn about malformed PREFERRED_PROVIDERS (#1072)
- Add support for BB_NICE_LEVEL option (#1627)
- Psyco is used only on x86 as there is no support for other architectures.
- Sort initial providers list by default preference (#1145, #2024)
- Improve provider sorting so prefered versions have preference over latest versions (#768)
- Detect builds of tasks with overlapping providers and warn (will become a fatal error) (#1359)
- Add MULTI_PROVIDER_WHITELIST variable to allow known safe multiple providers to be listed
- Handle paths in svn fetcher module parameter
- Support the syntax "export VARIABLE"
- Add bzr fetcher
- Add support for cleaning directories before a task in the form:
do_taskname[cleandirs] = "dir"
- bzr fetcher tweaks from Robert Schuster (#2913)
- Add mercurial (hg) fetcher from Robert Schuster (#2913)
- Don't add duplicates to BBPATH
- Fix preferred_version return values (providers.py)
- Fix 'depends' flag splitting
- Fix unexport handling (#3135)
- Add bb.copyfile function similar to bb.movefile (and improve movefile error reporting)
- Allow multiple options for deptask flag
- Use git-fetch instead of git-pull removing any need for merges when
fetching (we don't care about the index). Fixes fetch errors.
- Add BB_GENERATE_MIRROR_TARBALLS option, set to 0 to make git fetches
faster at the expense of not creating mirror tarballs.
- SRCREV handling updates, improvements and fixes from Poky
- Add bb.utils.lockfile() and bb.utils.unlockfile() from Poky
- Add support for task selfstamp and lockfiles flags
- Disable task number acceleration since it can allow the tasks to run
out of sequence
- Improve runqueue code comments
- Add task scheduler abstraction and some example schedulers
- Improve circular dependency chain debugging code and user feedback
- Don't give a stacktrace for invalid tasks, have a user friendly message (#3431)
- Add support for "-e target" (#3432)
- Fix shell showdata command (#3259)
- Fix shell data updating problems (#1880)
- Properly raise errors for invalid source URI protocols
- Change the wget fetcher failure handling to avoid lockfile problems
- Add support for branches in git fetcher (Otavio Salvador, Michael Lauer)
- Make taskdata and runqueue errors more user friendly
- Add norecurse and fullpath options to cvs fetcher
- Fix exit code for build failures in --continue mode
- Fix git branch tags fetching
- Change parseConfigurationFile so it works on real data, not a copy
- Handle 'base' inherit and all other INHERITs from parseConfigurationFile
instead of BBHandler
- Fix getVarFlags bug in data_smart
- Optmise cache handling by more quickly detecting an invalid cache, only
saving the cache when its changed, moving the cache validity check into
the parsing loop and factoring some getVar calls outside a for loop
- Cooker: Remove a debug message from the parsing loop to lower overhead
- Convert build.py exec_task to use getVarFlags
- Update shell to use cooker.buildFile
- Add StampUpdate event
- Convert -b option to use taskdata/runqueue
- Remove digraph and switch to new stamp checking code. exec_task no longer
honours dependencies
- Make fetcher timestamp updating non-fatal when permissions don't allow
updates
- Add BB_SCHEDULER variable/option ("completion" or "speed") controlling
the way bitbake schedules tasks
- Add BB_STAMP_POLICY variable/option ("perfile" or "full") controlling
how extensively stamps are looked at for validity
- When handling build target failures make sure idepends are checked and
failed where needed. Fixes --continue mode crashes.
- Fix -f (force) in conjunction with -b
- Fix problems with recrdeptask handling where some idepends weren't handled
correctly.
- Handle exit codes correctly (from pH5)
- Work around refs/HEAD issues with git over http (#3410)
- Add proxy support to the CVS fetcher (from Cyril Chemparathy)
- Improve runfetchcmd so errors are seen and various GIT variables are exported
- Add ability to fetchers to check URL validity without downloading
- Improve runtime PREFERRED_PROVIDERS warning message
- Add BB_STAMP_WHITELIST option which contains a list of stamps to ignore when
checking stamp dependencies and using a BB_STAMP_POLICY of "whitelist"
- No longer weight providers on the basis of a package being "already staged". This
leads to builds being non-deterministic.
- Flush stdout/stderr before forking to fix duplicate console output
- Make sure recrdeps tasks include all inter-task dependencies of a given fn
- Add bb.runqueue.check_stamp_fn() for use by packaged-staging
- Add PERSISTENT_DIR to store the PersistData in a persistent
directory != the cache dir.
- Add md5 and sha256 checksum generation functions to utils.py
- Correctly handle '-' characters in class names (#2958)
- Make sure expandKeys has been called on the data dictionary before running tasks
- Correctly add a task override in the form task-TASKNAME.
- Revert the '-' character fix in class names since it breaks things
- When a regexp fails to compile for PACKAGES_DYNAMIC, print a more useful error (#4444)
- Allow to checkout CVS by Date and Time. Just add HHmm to the SRCDATE.
- Move prunedir function to utils.py and add explode_dep_versions function
- Raise an exception if SRCREV == 'INVALID'
- Fix hg fetcher username/password handling and fix crash
- Fix PACKAGES_DYNAMIC handling of packages with '++' in the name
- Rename __depends to __base_depends after configuration parsing so we don't
recheck the validity of the config files time after time
- Add better environmental variable handling. By default it will now only pass certain
whitelisted variables into the data store. If BB_PRESERVE_ENV is set bitbake will use
all variable from the environment. If BB_ENV_WHITELIST is set, that whitelist will be
used instead of the internal bitbake one. Alternatively, BB_ENV_EXTRAWHITE can be used
to extend the internal whitelist.
- Perforce fetcher fix to use commandline options instead of being overriden by the environment
- bb.utils.prunedir can cope with symlinks to directoriees without exceptions
- use @rev when doing a svn checkout
- Add osc fetcher (from Joshua Lock in Poky)
- When SRCREV autorevisioning for a recipe is in use, don't cache the recipe
- Add tryaltconfigs option to control whether bitbake trys using alternative providers
to fulfil failed dependencies. It defaults to off, changing the default since this
behaviour confuses many users and isn't often useful.
- Improve lock file function error handling
- Add username handling to the git fetcher (Robert Bragg)
- Add support for HTTP_PROXY and HTTP_PROXY_IGNORE variables to the wget fetcher
- Export more variables to the fetcher commands to allow ssh checkouts and checkouts through
proxies to work better. (from Poky)
- Also allow user and pswd options in SRC_URIs globally (from Poky)
- Improve proxy handling when using mirrors (from Poky)
- Add bb.utils.prune_suffix function
- Fix hg checkouts of specific revisions (from Poky)
- Fix wget fetching of urls with parameters specified (from Poky)
- Add username handling to git fetcher (from Poky)
- Set HOME environmental variable when running fetcher commands (from Poky)
- Make sure allowed variables inherited from the environment are exported again (from Poky)
- When running a stage task in bbshell, run populate_staging, not the stage task (from Poky)
- Fix + character escaping from PACKAGES_DYNAMIC (thanks Otavio Salvador)
- Addition of BBCLASSEXTEND support for allowing one recipe to provide multiple targets (from Poky)
Changes in Bitbake 1.8.0:
- Release 1.7.x as a stable series
Changes in BitBake 1.7.x:
- Major updates of the dependency handling and execution
of tasks. Code from bin/bitbake replaced with runqueue.py
and taskdata.py
- New task execution code supports multithreading with a simplistic
threading algorithm controlled by BB_NUMBER_THREADS
- Change of the SVN Fetcher to keep the checkout around
courtsey of Paul Sokolovsky (#1367)
- PATH fix to bbimage (#1108)
- Allow debug domains to be specified on the commandline (-l)
- Allow 'interactive' tasks
- Logging message improvements
- Drop now uneeded BUILD_ALL_DEPS variable
- Add support for wildcards to -b option
- Major overhaul of the fetchers making a large amount of code common
including mirroring code
- Fetchers now touch md5 stamps upon access (to show activity)
- Fix -f force option when used without -b (long standing bug)
- Add expand_cache to data_cache.py, caching expanded data (speedup)
- Allow version field in DEPENDS (ignored for now)
- Add abort flag support to the shell
- Make inherit fail if the class doesn't exist (#1478)
- Fix data.emit_env() to expand keynames as well as values
- Add ssh fetcher
- Add perforce fetcher
- Make PREFERRED_PROVIDER_foobar defaults to foobar if available
- Share the parser's mtime_cache, reducing the number of stat syscalls
- Compile all anonfuncs at once!
*** Anonfuncs must now use common spacing format ***
- Memorise the list of handlers in __BBHANDLERS and tasks in __BBTASKS
This removes 2 million function calls resulting in a 5-10% speedup
- Add manpage
- Update generateDotGraph to use taskData/runQueue improving accuracy
and also adding a task dependency graph
- Fix/standardise on GPLv2 licence
- Move most functionality from bin/bitbake to cooker.py and split into
separate funcitons
- CVS fetcher: Added support for non-default port
- Add BBINCLUDELOGS_LINES, the number of lines to read from any logfile
- Drop shebangs from lib/bb scripts
Changes in Bitbake 1.6.0:
- Better msg handling
- COW dict implementation from Tim Ansell (mithro) leading
to better performance
- Speed up of -s
Changes in Bitbake 1.4.4:
- SRCDATE now handling courtsey Justin Patrin
- #1017 fix to work with rm_work
Changes in BitBake 1.4.2:
- Send logs to oe.pastebin.com instead of pastebin.com
fixes #856
- Copy the internal bitbake data before building the
dependency graph. This fixes nano not having a
virtual/libc dependency
- Allow multiple TARBALL_STASH entries
- Cache, check if the directory exists before changing
into it
- git speedup cloning by not doing a checkout
- allow to have spaces in filenames (.conf, .bb, .bbclass)
Changes in BitBake 1.4.0:
- Fix to check both RDEPENDS and RDEPENDS_${PN}
- Fix a RDEPENDS parsing bug in utils:explode_deps()
- Update git fetcher behaviour to match git changes
- ASSUME_PROVIDED allowed to include runtime packages
- git fetcher cleanup and efficency improvements
- Change the format of the cache
- Update usermanual to document the Fetchers
- Major changes to caching with a new strategy
giving a major performance increase when reparsing
with few data changes
Changes in BitBake 1.3.3:
- Create a new Fetcher module to ease the
development of new Fetchers.
Issue #438 fixed by rpurdie@openedhand.com
- Make the Subversion fetcher honor the SRC Date
(CVSDATE).
Issue #555 fixed by chris@openedhand.com
- Expand PREFERRED_PROVIDER properly
Issue #436 fixed by rprudie@openedhand.com
- Typo fix for Issue #531 by Philipp Zabel for the
BitBake Shell
- Introduce a new special variable SRCDATE as
a generic naming to replace CVSDATE.
- Introduce a new keyword 'required'. In contrast
to 'include' parsing will fail if a to be included
file can not be found.
- Remove hardcoding of the STAMP directory. Patch
courtsey pHilipp Zabel
- Track the RDEPENDS of each package (rpurdie@openedhand.com)
- Introduce BUILD_ALL_DEPS to build all RDEPENDS. E.g
this is used by the OpenEmbedded Meta Packages.
(rpurdie@openedhand.com).
Changes in BitBake 1.3.2:
- reintegration of make.py into BitBake
- bbread is gone, use bitbake -e
- lots of shell updates and bugfixes
- Introduction of the .= and =. operator
- Sort variables, keys and groups in bitdoc
- Fix regression in the handling of BBCOLLECTIONS
- Update the bitbake usermanual
Changes in BitBake 1.3.0:
- add bitbake interactive shell (bitbake -i)
- refactor bitbake utility in OO style
- kill default arguments in methods in the bb.data module
- kill default arguments in methods in the bb.fetch module
- the http/https/ftp fetcher will fail if the to be
downloaded file was not found in DL_DIR (this is needed
to avoid unpacking the sourceforge mirror page)
- Switch to a cow like data instance for persistent and non
persisting mode (called data_smart.py)
- Changed the callback of bb.make.collect_bbfiles to carry
additional parameters
- Drastically reduced the amount of needed RAM by not holding
each data instance in memory when using a cache/persistent
storage
Changes in BitBake 1.2.1:
The 1.2.1 release is meant as a intermediate release to lay the
ground for more radical changes. The most notable changes are:
- Do not hardcode {}, use bb.data.init() instead if you want to
get a instance of a data class
- bb.data.init() is a factory and the old bb.data methods are delegates
- Do not use deepcopy use bb.data.createCopy() instead.
- Removed default arguments in bb.fetch

29
bitbake/LICENSE Normal file
View File

@@ -0,0 +1,29 @@
BitBake is licensed under the GNU General Public License version 2.0. See
LICENSE.GPL-2.0-only for further details.
Individual files contain the following style tags instead of the full license text:
SPDX-License-Identifier: GPL-2.0-only
This enables machine processing of license information based on the SPDX
License Identifiers that are here available: http://spdx.org/licenses/
The following external components are distributed with this software:
* The Toaster Simple UI application is based upon the Django project template, the files of which are covered by the BSD license and are copyright (c) Django Software
Foundation and individual contributors.
* Twitter Bootstrap (including Glyphicons), redistributed under the MIT license
* jQuery is redistributed under the MIT license.
* Twitter typeahead.js redistributed under the MIT license. Note that the JS source has one small modification, so the full unminified file is currently included to make it obvious where this is.
* jsrender is redistributed under the MIT license.
* QUnit is redistributed under the MIT license.
* Font Awesome fonts redistributed under the SIL Open Font License 1.1
* simplediff is distributed under the zlib license.

View File

@@ -0,0 +1,288 @@
GNU GENERAL PUBLIC LICENSE
Version 2, June 1991
Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
Preamble
The licenses for most software are designed to take away your
freedom to share and change it. By contrast, the GNU General Public
License is intended to guarantee your freedom to share and change free
software--to make sure the software is free for all its users. This
General Public License applies to most of the Free Software
Foundation's software and to any other program whose authors commit to
using it. (Some other Free Software Foundation software is covered by
the GNU Lesser General Public License instead.) You can apply it to
your programs, too.
When we speak of free software, we are referring to freedom, not
price. Our General Public Licenses are designed to make sure that you
have the freedom to distribute copies of free software (and charge for
this service if you wish), that you receive source code or can get it
if you want it, that you can change the software or use pieces of it
in new free programs; and that you know you can do these things.
To protect your rights, we need to make restrictions that forbid
anyone to deny you these rights or to ask you to surrender the rights.
These restrictions translate to certain responsibilities for you if you
distribute copies of the software, or if you modify it.
For example, if you distribute copies of such a program, whether
gratis or for a fee, you must give the recipients all the rights that
you have. You must make sure that they, too, receive or can get the
source code. And you must show them these terms so they know their
rights.
We protect your rights with two steps: (1) copyright the software, and
(2) offer you this license which gives you legal permission to copy,
distribute and/or modify the software.
Also, for each author's protection and ours, we want to make certain
that everyone understands that there is no warranty for this free
software. If the software is modified by someone else and passed on, we
want its recipients to know that what they have is not the original, so
that any problems introduced by others will not reflect on the original
authors' reputations.
Finally, any free program is threatened constantly by software
patents. We wish to avoid the danger that redistributors of a free
program will individually obtain patent licenses, in effect making the
program proprietary. To prevent this, we have made it clear that any
patent must be licensed for everyone's free use or not licensed at all.
The precise terms and conditions for copying, distribution and
modification follow.
GNU GENERAL PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0. This License applies to any program or other work which contains
a notice placed by the copyright holder saying it may be distributed
under the terms of this General Public License. The "Program", below,
refers to any such program or work, and a "work based on the Program"
means either the Program or any derivative work under copyright law:
that is to say, a work containing the Program or a portion of it,
either verbatim or with modifications and/or translated into another
language. (Hereinafter, translation is included without limitation in
the term "modification".) Each licensee is addressed as "you".
Activities other than copying, distribution and modification are not
covered by this License; they are outside its scope. The act of
running the Program is not restricted, and the output from the Program
is covered only if its contents constitute a work based on the
Program (independent of having been made by running the Program).
Whether that is true depends on what the Program does.
1. You may copy and distribute verbatim copies of the Program's
source code as you receive it, in any medium, provided that you
conspicuously and appropriately publish on each copy an appropriate
copyright notice and disclaimer of warranty; keep intact all the
notices that refer to this License and to the absence of any warranty;
and give any other recipients of the Program a copy of this License
along with the Program.
You may charge a fee for the physical act of transferring a copy, and
you may at your option offer warranty protection in exchange for a fee.
2. You may modify your copy or copies of the Program or any portion
of it, thus forming a work based on the Program, and copy and
distribute such modifications or work under the terms of Section 1
above, provided that you also meet all of these conditions:
a) You must cause the modified files to carry prominent notices
stating that you changed the files and the date of any change.
b) You must cause any work that you distribute or publish, that in
whole or in part contains or is derived from the Program or any
part thereof, to be licensed as a whole at no charge to all third
parties under the terms of this License.
c) If the modified program normally reads commands interactively
when run, you must cause it, when started running for such
interactive use in the most ordinary way, to print or display an
announcement including an appropriate copyright notice and a
notice that there is no warranty (or else, saying that you provide
a warranty) and that users may redistribute the program under
these conditions, and telling the user how to view a copy of this
License. (Exception: if the Program itself is interactive but
does not normally print such an announcement, your work based on
the Program is not required to print an announcement.)
These requirements apply to the modified work as a whole. If
identifiable sections of that work are not derived from the Program,
and can be reasonably considered independent and separate works in
themselves, then this License, and its terms, do not apply to those
sections when you distribute them as separate works. But when you
distribute the same sections as part of a whole which is a work based
on the Program, the distribution of the whole must be on the terms of
this License, whose permissions for other licensees extend to the
entire whole, and thus to each and every part regardless of who wrote it.
Thus, it is not the intent of this section to claim rights or contest
your rights to work written entirely by you; rather, the intent is to
exercise the right to control the distribution of derivative or
collective works based on the Program.
In addition, mere aggregation of another work not based on the Program
with the Program (or with a work based on the Program) on a volume of
a storage or distribution medium does not bring the other work under
the scope of this License.
3. You may copy and distribute the Program (or a work based on it,
under Section 2) in object code or executable form under the terms of
Sections 1 and 2 above provided that you also do one of the following:
a) Accompany it with the complete corresponding machine-readable
source code, which must be distributed under the terms of Sections
1 and 2 above on a medium customarily used for software interchange; or,
b) Accompany it with a written offer, valid for at least three
years, to give any third party, for a charge no more than your
cost of physically performing source distribution, a complete
machine-readable copy of the corresponding source code, to be
distributed under the terms of Sections 1 and 2 above on a medium
customarily used for software interchange; or,
c) Accompany it with the information you received as to the offer
to distribute corresponding source code. (This alternative is
allowed only for noncommercial distribution and only if you
received the program in object code or executable form with such
an offer, in accord with Subsection b above.)
The source code for a work means the preferred form of the work for
making modifications to it. For an executable work, complete source
code means all the source code for all modules it contains, plus any
associated interface definition files, plus the scripts used to
control compilation and installation of the executable. However, as a
special exception, the source code distributed need not include
anything that is normally distributed (in either source or binary
form) with the major components (compiler, kernel, and so on) of the
operating system on which the executable runs, unless that component
itself accompanies the executable.
If distribution of executable or object code is made by offering
access to copy from a designated place, then offering equivalent
access to copy the source code from the same place counts as
distribution of the source code, even though third parties are not
compelled to copy the source along with the object code.
4. You may not copy, modify, sublicense, or distribute the Program
except as expressly provided under this License. Any attempt
otherwise to copy, modify, sublicense or distribute the Program is
void, and will automatically terminate your rights under this License.
However, parties who have received copies, or rights, from you under
this License will not have their licenses terminated so long as such
parties remain in full compliance.
5. You are not required to accept this License, since you have not
signed it. However, nothing else grants you permission to modify or
distribute the Program or its derivative works. These actions are
prohibited by law if you do not accept this License. Therefore, by
modifying or distributing the Program (or any work based on the
Program), you indicate your acceptance of this License to do so, and
all its terms and conditions for copying, distributing or modifying
the Program or works based on it.
6. Each time you redistribute the Program (or any work based on the
Program), the recipient automatically receives a license from the
original licensor to copy, distribute or modify the Program subject to
these terms and conditions. You may not impose any further
restrictions on the recipients' exercise of the rights granted herein.
You are not responsible for enforcing compliance by third parties to
this License.
7. If, as a consequence of a court judgment or allegation of patent
infringement or for any other reason (not limited to patent issues),
conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License. If you cannot
distribute so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you
may not distribute the Program at all. For example, if a patent
license would not permit royalty-free redistribution of the Program by
all those who receive copies directly or indirectly through you, then
the only way you could satisfy both it and this License would be to
refrain entirely from distribution of the Program.
If any portion of this section is held invalid or unenforceable under
any particular circumstance, the balance of the section is intended to
apply and the section as a whole is intended to apply in other
circumstances.
It is not the purpose of this section to induce you to infringe any
patents or other property right claims or to contest validity of any
such claims; this section has the sole purpose of protecting the
integrity of the free software distribution system, which is
implemented by public license practices. Many people have made
generous contributions to the wide range of software distributed
through that system in reliance on consistent application of that
system; it is up to the author/donor to decide if he or she is willing
to distribute software through any other system and a licensee cannot
impose that choice.
This section is intended to make thoroughly clear what is believed to
be a consequence of the rest of this License.
8. If the distribution and/or use of the Program is restricted in
certain countries either by patents or by copyrighted interfaces, the
original copyright holder who places the Program under this License
may add an explicit geographical distribution limitation excluding
those countries, so that distribution is permitted only in or among
countries not thus excluded. In such case, this License incorporates
the limitation as if written in the body of this License.
9. The Free Software Foundation may publish revised and/or new versions
of the General Public License from time to time. Such new versions will
be similar in spirit to the present version, but may differ in detail to
address new problems or concerns.
Each version is given a distinguishing version number. If the Program
specifies a version number of this License which applies to it and "any
later version", you have the option of following the terms and conditions
either of that version or of any later version published by the Free
Software Foundation. If the Program does not specify a version number of
this License, you may choose any version ever published by the Free Software
Foundation.
10. If you wish to incorporate parts of the Program into other free
programs whose distribution conditions are different, write to the author
to ask for permission. For software which is copyrighted by the Free
Software Foundation, write to the Free Software Foundation; we sometimes
make exceptions for this. Our decision will be guided by the two goals
of preserving the free status of all derivatives of our free software and
of promoting the sharing and reuse of software generally.
NO WARRANTY
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
REPAIR OR CORRECTION.
12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
POSSIBILITY OF SUCH DAMAGES.
END OF TERMS AND CONDITIONS
Note:
Individual files contain the following tag instead of the full license text.
SPDX-License-Identifier: GPL-2.0-only
This enables machine processing of license information based on the SPDX
License Identifiers that are here available: http://spdx.org/licenses/

25
bitbake/LICENSE.MIT Normal file
View File

@@ -0,0 +1,25 @@
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
Note:
Individual files contain the following tag instead of the full license text.
SPDX-License-Identifier: MIT
This enables machine processing of license information based on the SPDX
License Identifiers that are here available: http://spdx.org/licenses/

43
bitbake/README Normal file
View File

@@ -0,0 +1,43 @@
Bitbake
=======
BitBake is a generic task execution engine that allows shell and Python tasks to be run
efficiently and in parallel while working within complex inter-task dependency constraints.
One of BitBake's main users, OpenEmbedded, takes this core and builds embedded Linux software
stacks using a task-oriented approach.
For information about Bitbake, see the OpenEmbedded website:
https://www.openembedded.org/
Bitbake plain documentation can be found under the doc directory or its integrated
html version at the Yocto Project website:
https://docs.yoctoproject.org
Contributing
------------
Please refer to
https://www.openembedded.org/wiki/How_to_submit_a_patch_to_OpenEmbedded
for guidelines on how to submit patches, just note that the latter documentation is intended
for OpenEmbedded (and its core) not bitbake patches (bitbake-devel@lists.openembedded.org)
but in general main guidelines apply. Once the commit(s) have been created, the way to send
the patch is through git-send-email. For example, to send the last commit (HEAD) on current
branch, type:
git send-email -M -1 --to bitbake-devel@lists.openembedded.org
Mailing list:
https://lists.openembedded.org/g/bitbake-devel
Source code:
https://git.openembedded.org/bitbake/
Testing:
Bitbake has a testsuite located in lib/bb/tests/ whichs aim to try and prevent regressions.
You can run this with "bitbake-selftest". In particular the fetcher is well covered since
it has so many corner cases. The datastore has many tests too. Testing with the testsuite is
recommended before submitting patches, particularly to the fetcher and datastore. We also
appreciate new test cases and may require them for more obscure issues.

45
bitbake/bin/bitbake Executable file
View File

@@ -0,0 +1,45 @@
#!/usr/bin/env python3
#
# Copyright (C) 2003, 2004 Chris Larson
# Copyright (C) 2003, 2004 Phil Blundell
# Copyright (C) 2003 - 2005 Michael 'Mickey' Lauer
# Copyright (C) 2005 Holger Hans Peter Freyther
# Copyright (C) 2005 ROAD GmbH
# Copyright (C) 2006 Richard Purdie
#
# SPDX-License-Identifier: GPL-2.0-only
#
import os
import sys
import warnings
warnings.simplefilter("default")
sys.path.insert(0, os.path.join(os.path.dirname(os.path.dirname(__file__)),
'lib'))
try:
import bb
except RuntimeError as exc:
sys.exit(str(exc))
from bb import cookerdata
from bb.main import bitbake_main, BitBakeConfigParameters, BBMainException
bb.utils.check_system_locale()
__version__ = "2.2.0"
if __name__ == "__main__":
if __version__ != bb.__version__:
sys.exit("Bitbake core version and program version mismatch!")
try:
sys.exit(bitbake_main(BitBakeConfigParameters(sys.argv),
cookerdata.CookerConfiguration()))
except BBMainException as err:
sys.exit(err)
except bb.BBHandledException:
sys.exit(1)
except Exception:
import traceback
traceback.print_exc()
sys.exit(1)

204
bitbake/bin/bitbake-diffsigs Executable file
View File

@@ -0,0 +1,204 @@
#!/usr/bin/env python3
# bitbake-diffsigs / bitbake-dumpsig
# BitBake task signature data dump and comparison utility
#
# Copyright (C) 2012-2013, 2017 Intel Corporation
#
# SPDX-License-Identifier: GPL-2.0-only
#
import os
import sys
import warnings
warnings.simplefilter("default")
import argparse
import logging
import pickle
sys.path.insert(0, os.path.join(os.path.dirname(os.path.dirname(sys.argv[0])), 'lib'))
import bb.tinfoil
import bb.siggen
import bb.msg
myname = os.path.basename(sys.argv[0])
logger = bb.msg.logger_create(myname)
is_dump = myname == 'bitbake-dumpsig'
def find_siginfo(tinfoil, pn, taskname, sigs=None):
result = None
tinfoil.set_event_mask(['bb.event.FindSigInfoResult',
'logging.LogRecord',
'bb.command.CommandCompleted',
'bb.command.CommandFailed'])
ret = tinfoil.run_command('findSigInfo', pn, taskname, sigs)
if ret:
while True:
event = tinfoil.wait_event(1)
if event:
if isinstance(event, bb.command.CommandCompleted):
break
elif isinstance(event, bb.command.CommandFailed):
logger.error(str(event))
sys.exit(2)
elif isinstance(event, bb.event.FindSigInfoResult):
result = event.result
elif isinstance(event, logging.LogRecord):
logger.handle(event)
else:
logger.error('No result returned from findSigInfo command')
sys.exit(2)
return result
def find_siginfo_task(bbhandler, pn, taskname, sig1=None, sig2=None):
""" Find the most recent signature files for the specified PN/task """
if not taskname.startswith('do_'):
taskname = 'do_%s' % taskname
if sig1 and sig2:
sigfiles = find_siginfo(bbhandler, pn, taskname, [sig1, sig2])
if not sigfiles:
logger.error('No sigdata files found matching %s %s matching either %s or %s' % (pn, taskname, sig1, sig2))
sys.exit(1)
elif sig1 not in sigfiles:
logger.error('No sigdata files found matching %s %s with signature %s' % (pn, taskname, sig1))
sys.exit(1)
elif sig2 not in sigfiles:
logger.error('No sigdata files found matching %s %s with signature %s' % (pn, taskname, sig2))
sys.exit(1)
latestfiles = [sigfiles[sig1], sigfiles[sig2]]
else:
filedates = find_siginfo(bbhandler, pn, taskname)
latestfiles = sorted(filedates.keys(), key=lambda f: filedates[f])[-2:]
if not latestfiles:
logger.error('No sigdata files found matching %s %s' % (pn, taskname))
sys.exit(1)
return latestfiles
# Define recursion callback
def recursecb(key, hash1, hash2):
hashes = [hash1, hash2]
hashfiles = find_siginfo(tinfoil, key, None, hashes)
recout = []
if not hashfiles:
recout.append("Unable to find matching sigdata for %s with hashes %s or %s" % (key, hash1, hash2))
elif hash1 not in hashfiles:
recout.append("Unable to find matching sigdata for %s with hash %s" % (key, hash1))
elif hash2 not in hashfiles:
recout.append("Unable to find matching sigdata for %s with hash %s" % (key, hash2))
else:
out2 = bb.siggen.compare_sigfiles(hashfiles[hash1], hashfiles[hash2], recursecb, color=color)
for change in out2:
for line in change.splitlines():
recout.append(' ' + line)
return recout
parser = argparse.ArgumentParser(
description=("Dumps" if is_dump else "Compares") + " siginfo/sigdata files written out by BitBake")
parser.add_argument('-D', '--debug',
help='Enable debug output',
action='store_true')
if is_dump:
parser.add_argument("-t", "--task",
help="find the signature data file for the last run of the specified task",
action="store", dest="taskargs", nargs=2, metavar=('recipename', 'taskname'))
parser.add_argument("sigdatafile1",
help="Signature file to dump. Not used when using -t/--task.",
action="store", nargs='?', metavar="sigdatafile")
else:
parser.add_argument('-c', '--color',
help='Colorize the output (where %(metavar)s is %(choices)s)',
choices=['auto', 'always', 'never'], default='auto', metavar='color')
parser.add_argument('-d', '--dump',
help='Dump the last signature data instead of comparing (equivalent to using bitbake-dumpsig)',
action='store_true')
parser.add_argument("-t", "--task",
help="find the signature data files for the last two runs of the specified task and compare them",
action="store", dest="taskargs", nargs=2, metavar=('recipename', 'taskname'))
parser.add_argument("-s", "--signature",
help="With -t/--task, specify the signatures to look for instead of taking the last two",
action="store", dest="sigargs", nargs=2, metavar=('fromsig', 'tosig'))
parser.add_argument("sigdatafile1",
help="First signature file to compare (or signature file to dump, if second not specified). Not used when using -t/--task.",
action="store", nargs='?')
parser.add_argument("sigdatafile2",
help="Second signature file to compare",
action="store", nargs='?')
options = parser.parse_args()
if is_dump:
options.color = 'never'
options.dump = True
options.sigdatafile2 = None
options.sigargs = None
if options.debug:
logger.setLevel(logging.DEBUG)
color = (options.color == 'always' or (options.color == 'auto' and sys.stdout.isatty()))
if options.taskargs:
with bb.tinfoil.Tinfoil() as tinfoil:
tinfoil.prepare(config_only=True)
if not options.dump and options.sigargs:
files = find_siginfo_task(tinfoil, options.taskargs[0], options.taskargs[1], options.sigargs[0],
options.sigargs[1])
else:
files = find_siginfo_task(tinfoil, options.taskargs[0], options.taskargs[1])
if options.dump:
logger.debug("Signature file: %s" % files[-1])
output = bb.siggen.dump_sigfile(files[-1])
else:
if len(files) < 2:
logger.error('Only one matching sigdata file found for the specified task (%s %s)' % (
options.taskargs[0], options.taskargs[1]))
sys.exit(1)
# Recurse into signature comparison
logger.debug("Signature file (previous): %s" % files[-2])
logger.debug("Signature file (latest): %s" % files[-1])
output = bb.siggen.compare_sigfiles(files[-2], files[-1], recursecb, color=color)
else:
if options.sigargs:
logger.error('-s/--signature can only be used together with -t/--task')
sys.exit(1)
try:
if not options.dump and options.sigdatafile1 and options.sigdatafile2:
with bb.tinfoil.Tinfoil() as tinfoil:
tinfoil.prepare(config_only=True)
output = bb.siggen.compare_sigfiles(options.sigdatafile1, options.sigdatafile2, recursecb, color=color)
elif options.sigdatafile1:
output = bb.siggen.dump_sigfile(options.sigdatafile1)
else:
logger.error('Must specify signature file(s) or -t/--task')
parser.print_help()
sys.exit(1)
except IOError as e:
logger.error(str(e))
sys.exit(1)
except (pickle.UnpicklingError, EOFError):
logger.error('Invalid signature data - ensure you are specifying sigdata/siginfo files')
sys.exit(1)
if output:
print('\n'.join(output))

1
bitbake/bin/bitbake-dumpsig Symbolic link
View File

@@ -0,0 +1 @@
bitbake-diffsigs

50
bitbake/bin/bitbake-getvar Executable file
View File

@@ -0,0 +1,50 @@
#! /usr/bin/env python3
#
# Copyright (C) 2021 Richard Purdie
#
# SPDX-License-Identifier: GPL-2.0-only
#
import argparse
import io
import os
import sys
import warnings
warnings.simplefilter("default")
bindir = os.path.dirname(__file__)
topdir = os.path.dirname(bindir)
sys.path[0:0] = [os.path.join(topdir, 'lib')]
import bb.tinfoil
if __name__ == "__main__":
parser = argparse.ArgumentParser(description="Bitbake Query Variable")
parser.add_argument("variable", help="variable name to query")
parser.add_argument("-r", "--recipe", help="Recipe name to query", default=None, required=False)
parser.add_argument('-u', '--unexpand', help='Do not expand the value (with --value)', action="store_true")
parser.add_argument('-f', '--flag', help='Specify a variable flag to query (with --value)', default=None)
parser.add_argument('--value', help='Only report the value, no history and no variable name', action="store_true")
args = parser.parse_args()
if args.unexpand and not args.value:
print("--unexpand only makes sense with --value")
sys.exit(1)
if args.flag and not args.value:
print("--flag only makes sense with --value")
sys.exit(1)
with bb.tinfoil.Tinfoil(tracking=True) as tinfoil:
if args.recipe:
tinfoil.prepare(quiet=2)
d = tinfoil.parse_recipe(args.recipe)
else:
tinfoil.prepare(quiet=2, config_only=True)
d = tinfoil.config_data
if args.flag:
print(str(d.getVarFlag(args.variable, args.flag, expand=(not args.unexpand))))
elif args.value:
print(str(d.getVar(args.variable, expand=(not args.unexpand))))
else:
bb.data.emit_var(args.variable, d=d, all=True)

169
bitbake/bin/bitbake-hashclient Executable file
View File

@@ -0,0 +1,169 @@
#! /usr/bin/env python3
#
# Copyright (C) 2019 Garmin Ltd.
#
# SPDX-License-Identifier: GPL-2.0-only
#
import argparse
import hashlib
import logging
import os
import pprint
import sys
import threading
import time
import warnings
warnings.simplefilter("default")
try:
import tqdm
ProgressBar = tqdm.tqdm
except ImportError:
class ProgressBar(object):
def __init__(self, *args, **kwargs):
pass
def __enter__(self):
return self
def __exit__(self, *args, **kwargs):
pass
def update(self):
pass
sys.path.insert(0, os.path.join(os.path.dirname(os.path.dirname(__file__)), 'lib'))
import hashserv
DEFAULT_ADDRESS = 'unix://./hashserve.sock'
METHOD = 'stress.test.method'
def main():
def handle_stats(args, client):
if args.reset:
s = client.reset_stats()
else:
s = client.get_stats()
pprint.pprint(s)
return 0
def handle_stress(args, client):
def thread_main(pbar, lock):
nonlocal found_hashes
nonlocal missed_hashes
nonlocal max_time
client = hashserv.create_client(args.address)
for i in range(args.requests):
taskhash = hashlib.sha256()
taskhash.update(args.taskhash_seed.encode('utf-8'))
taskhash.update(str(i).encode('utf-8'))
start_time = time.perf_counter()
l = client.get_unihash(METHOD, taskhash.hexdigest())
elapsed = time.perf_counter() - start_time
with lock:
if l:
found_hashes += 1
else:
missed_hashes += 1
max_time = max(elapsed, max_time)
pbar.update()
max_time = 0
found_hashes = 0
missed_hashes = 0
lock = threading.Lock()
total_requests = args.clients * args.requests
start_time = time.perf_counter()
with ProgressBar(total=total_requests) as pbar:
threads = [threading.Thread(target=thread_main, args=(pbar, lock), daemon=False) for _ in range(args.clients)]
for t in threads:
t.start()
for t in threads:
t.join()
elapsed = time.perf_counter() - start_time
with lock:
print("%d requests in %.1fs. %.1f requests per second" % (total_requests, elapsed, total_requests / elapsed))
print("Average request time %.8fs" % (elapsed / total_requests))
print("Max request time was %.8fs" % max_time)
print("Found %d hashes, missed %d" % (found_hashes, missed_hashes))
if args.report:
with ProgressBar(total=args.requests) as pbar:
for i in range(args.requests):
taskhash = hashlib.sha256()
taskhash.update(args.taskhash_seed.encode('utf-8'))
taskhash.update(str(i).encode('utf-8'))
outhash = hashlib.sha256()
outhash.update(args.outhash_seed.encode('utf-8'))
outhash.update(str(i).encode('utf-8'))
client.report_unihash(taskhash.hexdigest(), METHOD, outhash.hexdigest(), taskhash.hexdigest())
with lock:
pbar.update()
parser = argparse.ArgumentParser(description='Hash Equivalence Client')
parser.add_argument('--address', default=DEFAULT_ADDRESS, help='Server address (default "%(default)s")')
parser.add_argument('--log', default='WARNING', help='Set logging level')
subparsers = parser.add_subparsers()
stats_parser = subparsers.add_parser('stats', help='Show server stats')
stats_parser.add_argument('--reset', action='store_true',
help='Reset server stats')
stats_parser.set_defaults(func=handle_stats)
stress_parser = subparsers.add_parser('stress', help='Run stress test')
stress_parser.add_argument('--clients', type=int, default=10,
help='Number of simultaneous clients')
stress_parser.add_argument('--requests', type=int, default=1000,
help='Number of requests each client will perform')
stress_parser.add_argument('--report', action='store_true',
help='Report new hashes')
stress_parser.add_argument('--taskhash-seed', default='',
help='Include string in taskhash')
stress_parser.add_argument('--outhash-seed', default='',
help='Include string in outhash')
stress_parser.set_defaults(func=handle_stress)
args = parser.parse_args()
logger = logging.getLogger('hashserv')
level = getattr(logging, args.log.upper(), None)
if not isinstance(level, int):
raise ValueError('Invalid log level: %s' % args.log)
logger.setLevel(level)
console = logging.StreamHandler()
console.setLevel(level)
logger.addHandler(console)
func = getattr(args, 'func', None)
if func:
client = hashserv.create_client(args.address)
return func(args, client)
return 0
if __name__ == '__main__':
try:
ret = main()
except Exception:
ret = 1
import traceback
traceback.print_exc()
sys.exit(ret)

66
bitbake/bin/bitbake-hashserv Executable file
View File

@@ -0,0 +1,66 @@
#! /usr/bin/env python3
#
# Copyright (C) 2018 Garmin Ltd.
#
# SPDX-License-Identifier: GPL-2.0-only
#
import os
import sys
import logging
import argparse
import sqlite3
import warnings
warnings.simplefilter("default")
sys.path.insert(0, os.path.join(os.path.dirname(os.path.dirname(__file__)), 'lib'))
import hashserv
VERSION = "1.0.0"
DEFAULT_BIND = 'unix://./hashserve.sock'
def main():
parser = argparse.ArgumentParser(description='Hash Equivalence Reference Server. Version=%s' % VERSION,
epilog='''The bind address is the path to a unix domain socket if it is
prefixed with "unix://". Otherwise, it is an IP address
and port in form ADDRESS:PORT. To bind to all addresses, leave
the ADDRESS empty, e.g. "--bind :8686". To bind to a specific
IPv6 address, enclose the address in "[]", e.g.
"--bind [::1]:8686"'''
)
parser.add_argument('-b', '--bind', default=DEFAULT_BIND, help='Bind address (default "%(default)s")')
parser.add_argument('-d', '--database', default='./hashserv.db', help='Database file (default "%(default)s")')
parser.add_argument('-l', '--log', default='WARNING', help='Set logging level')
parser.add_argument('-u', '--upstream', help='Upstream hashserv to pull hashes from')
parser.add_argument('-r', '--read-only', action='store_true', help='Disallow write operations from clients')
args = parser.parse_args()
logger = logging.getLogger('hashserv')
level = getattr(logging, args.log.upper(), None)
if not isinstance(level, int):
raise ValueError('Invalid log level: %s' % args.log)
logger.setLevel(level)
console = logging.StreamHandler()
console.setLevel(level)
logger.addHandler(console)
server = hashserv.create_server(args.bind, args.database, upstream=args.upstream, read_only=args.read_only)
server.serve_forever()
return 0
if __name__ == '__main__':
try:
ret = main()
except Exception:
ret = 1
import traceback
traceback.print_exc()
sys.exit(ret)

102
bitbake/bin/bitbake-layers Executable file
View File

@@ -0,0 +1,102 @@
#!/usr/bin/env python3
# This script has subcommands which operate against your bitbake layers, either
# displaying useful information, or acting against them.
# See the help output for details on available commands.
# Copyright (C) 2011 Mentor Graphics Corporation
# Copyright (C) 2011-2015 Intel Corporation
#
# SPDX-License-Identifier: GPL-2.0-only
#
import logging
import os
import sys
import argparse
import warnings
warnings.simplefilter("default")
bindir = os.path.dirname(__file__)
topdir = os.path.dirname(bindir)
sys.path[0:0] = [os.path.join(topdir, 'lib')]
import bb.tinfoil
import bb.msg
logger = bb.msg.logger_create('bitbake-layers', sys.stdout)
def main():
parser = argparse.ArgumentParser(
description="BitBake layers utility",
epilog="Use %(prog)s <subcommand> --help to get help on a specific command",
add_help=False)
parser.add_argument('-d', '--debug', help='Enable debug output', action='store_true')
parser.add_argument('-q', '--quiet', help='Print only errors', action='store_true')
parser.add_argument('-F', '--force', help='Force add without recipe parse verification', action='store_true')
parser.add_argument('--color', choices=['auto', 'always', 'never'], default='auto', help='Colorize output (where %(metavar)s is %(choices)s)', metavar='COLOR')
global_args, unparsed_args = parser.parse_known_args()
# Help is added here rather than via add_help=True, as we don't want it to
# be handled by parse_known_args()
parser.add_argument('-h', '--help', action='help', default=argparse.SUPPRESS,
help='show this help message and exit')
subparsers = parser.add_subparsers(title='subcommands', metavar='<subcommand>')
subparsers.required = True
if global_args.debug:
logger.setLevel(logging.DEBUG)
elif global_args.quiet:
logger.setLevel(logging.ERROR)
# Need to re-run logger_create with color argument
# (will be the same logger since it has the same name)
bb.msg.logger_create('bitbake-layers', output=sys.stdout,
color=global_args.color,
level=logger.getEffectiveLevel())
plugins = []
tinfoil = bb.tinfoil.Tinfoil(tracking=True)
tinfoil.logger.setLevel(logger.getEffectiveLevel())
try:
tinfoil.prepare(True)
for path in ([topdir] +
tinfoil.config_data.getVar('BBPATH').split(':')):
pluginpath = os.path.join(path, 'lib', 'bblayers')
bb.utils.load_plugins(logger, plugins, pluginpath)
registered = False
for plugin in plugins:
if hasattr(plugin, 'tinfoil_init'):
plugin.tinfoil_init(tinfoil)
if hasattr(plugin, 'register_commands'):
registered = True
plugin.register_commands(subparsers)
if not registered:
logger.error("No commands registered - missing plugins?")
sys.exit(1)
args = parser.parse_args(unparsed_args, namespace=global_args)
if getattr(args, 'parserecipes', False):
tinfoil.config_data.disableTracking()
tinfoil.parse_recipes()
tinfoil.config_data.enableTracking()
return args.func(args)
finally:
tinfoil.shutdown()
if __name__ == "__main__":
try:
ret = main()
except bb.BBHandledException:
ret = 1
except Exception:
ret = 1
import traceback
traceback.print_exc()
sys.exit(ret)

65
bitbake/bin/bitbake-prserv Executable file
View File

@@ -0,0 +1,65 @@
#!/usr/bin/env python3
#
# Copyright BitBake Contributors
#
# SPDX-License-Identifier: GPL-2.0-only
#
import os
import sys,logging
import optparse
import warnings
warnings.simplefilter("default")
sys.path.insert(0, os.path.join(os.path.dirname(os.path.dirname(__file__)),'lib'))
import prserv
import prserv.serv
__version__="1.0.0"
PRHOST_DEFAULT='0.0.0.0'
PRPORT_DEFAULT=8585
def main():
parser = optparse.OptionParser(
version="Bitbake PR Service Core version %s, %%prog version %s" % (prserv.__version__, __version__),
usage = "%prog < --start | --stop > [options]")
parser.add_option("-f", "--file", help="database filename(default: prserv.sqlite3)", action="store",
dest="dbfile", type="string", default="prserv.sqlite3")
parser.add_option("-l", "--log", help="log filename(default: prserv.log)", action="store",
dest="logfile", type="string", default="prserv.log")
parser.add_option("--loglevel", help="logging level, i.e. CRITICAL, ERROR, WARNING, INFO, DEBUG",
action = "store", type="string", dest="loglevel", default = "INFO")
parser.add_option("--start", help="start daemon",
action="store_true", dest="start")
parser.add_option("--stop", help="stop daemon",
action="store_true", dest="stop")
parser.add_option("--host", help="ip address to bind", action="store",
dest="host", type="string", default=PRHOST_DEFAULT)
parser.add_option("--port", help="port number(default: 8585)", action="store",
dest="port", type="int", default=PRPORT_DEFAULT)
parser.add_option("-r", "--read-only", help="open database in read-only mode",
action="store_true")
options, args = parser.parse_args(sys.argv)
prserv.init_logger(os.path.abspath(options.logfile),options.loglevel)
if options.start:
ret=prserv.serv.start_daemon(options.dbfile, options.host, options.port,os.path.abspath(options.logfile), options.read_only)
elif options.stop:
ret=prserv.serv.stop_daemon(options.host, options.port)
else:
ret=parser.print_help()
return ret
if __name__ == "__main__":
try:
ret = main()
except Exception:
ret = 1
import traceback
traceback.print_exc()
sys.exit(ret)

77
bitbake/bin/bitbake-selftest Executable file
View File

@@ -0,0 +1,77 @@
#!/usr/bin/env python3
#
# Copyright (C) 2012 Richard Purdie
#
# SPDX-License-Identifier: GPL-2.0-only
#
import os
import sys, logging
import warnings
warnings.simplefilter("default")
sys.path.insert(0, os.path.join(os.path.dirname(os.path.dirname(__file__)), 'lib'))
import unittest
try:
import bb
import hashserv
import layerindexlib
except RuntimeError as exc:
sys.exit(str(exc))
tests = ["bb.tests.codeparser",
"bb.tests.color",
"bb.tests.cooker",
"bb.tests.cow",
"bb.tests.data",
"bb.tests.event",
"bb.tests.fetch",
"bb.tests.parse",
"bb.tests.persist_data",
"bb.tests.runqueue",
"bb.tests.siggen",
"bb.tests.utils",
"bb.tests.compression",
"hashserv.tests",
"layerindexlib.tests.layerindexobj",
"layerindexlib.tests.restapi",
"layerindexlib.tests.cooker"]
for t in tests:
t = '.'.join(t.split('.')[:3])
__import__(t)
# Set-up logging
class StdoutStreamHandler(logging.StreamHandler):
"""Special handler so that unittest is able to capture stdout"""
def __init__(self):
# Override __init__() because we don't want to set self.stream here
logging.Handler.__init__(self)
@property
def stream(self):
# We want to dynamically write wherever sys.stdout is pointing to
return sys.stdout
handler = StdoutStreamHandler()
bb.logger.addHandler(handler)
bb.logger.setLevel(logging.DEBUG)
ENV_HELP = """\
Environment variables:
BB_SKIP_NETTESTS set to 'yes' in order to skip tests using network
connection
BB_TMPDIR_NOCLEAN set to 'yes' to preserve test tmp directories
"""
class main(unittest.main):
def _print_help(self, *args, **kwargs):
super(main, self)._print_help(*args, **kwargs)
print(ENV_HELP)
if __name__ == '__main__':
main(defaultTest=tests, buffer=True)

54
bitbake/bin/bitbake-server Executable file
View File

@@ -0,0 +1,54 @@
#!/usr/bin/env python3
#
# SPDX-License-Identifier: GPL-2.0-only
#
# Copyright (C) 2020 Richard Purdie
#
import os
import sys
import warnings
warnings.simplefilter("default")
import logging
sys.path.insert(0, os.path.join(os.path.dirname(os.path.dirname(sys.argv[0])), 'lib'))
import bb
bb.utils.check_system_locale()
# Users shouldn't be running this code directly
if len(sys.argv) != 10 or not sys.argv[1].startswith("decafbad"):
print("bitbake-server is meant for internal execution by bitbake itself, please don't use it standalone.")
sys.exit(1)
import bb.server.process
lockfd = int(sys.argv[2])
readypipeinfd = int(sys.argv[3])
logfile = sys.argv[4]
lockname = sys.argv[5]
sockname = sys.argv[6]
timeout = float(sys.argv[7])
xmlrpcinterface = (sys.argv[8], int(sys.argv[9]))
if xmlrpcinterface[0] == "None":
xmlrpcinterface = (None, xmlrpcinterface[1])
# Replace standard fds with our own
with open('/dev/null', 'r') as si:
os.dup2(si.fileno(), sys.stdin.fileno())
so = open(logfile, 'a+')
os.dup2(so.fileno(), sys.stdout.fileno())
os.dup2(so.fileno(), sys.stderr.fileno())
# Have stdout and stderr be the same so log output matches chronologically
# and there aren't two seperate buffers
sys.stderr = sys.stdout
logger = logging.getLogger("BitBake")
# Ensure logging messages get sent to the UI as events
handler = bb.event.LogHandler()
logger.addHandler(handler)
bb.server.process.execServer(lockfd, readypipeinfd, lockname, sockname, timeout, xmlrpcinterface)

552
bitbake/bin/bitbake-worker Executable file
View File

@@ -0,0 +1,552 @@
#!/usr/bin/env python3
#
# Copyright BitBake Contributors
#
# SPDX-License-Identifier: GPL-2.0-only
#
import os
import sys
import warnings
warnings.simplefilter("default")
sys.path.insert(0, os.path.join(os.path.dirname(os.path.dirname(sys.argv[0])), 'lib'))
from bb import fetch2
import logging
import bb
import select
import errno
import signal
import pickle
import traceback
import queue
import shlex
import subprocess
from multiprocessing import Lock
from threading import Thread
bb.utils.check_system_locale()
# Users shouldn't be running this code directly
if len(sys.argv) != 2 or not sys.argv[1].startswith("decafbad"):
print("bitbake-worker is meant for internal execution by bitbake itself, please don't use it standalone.")
sys.exit(1)
profiling = False
if sys.argv[1].startswith("decafbadbad"):
profiling = True
try:
import cProfile as profile
except:
import profile
# Unbuffer stdout to avoid log truncation in the event
# of an unorderly exit as well as to provide timely
# updates to log files for use with tail
try:
if sys.stdout.name == '<stdout>':
import fcntl
fl = fcntl.fcntl(sys.stdout.fileno(), fcntl.F_GETFL)
fl |= os.O_SYNC
fcntl.fcntl(sys.stdout.fileno(), fcntl.F_SETFL, fl)
#sys.stdout = os.fdopen(sys.stdout.fileno(), 'w', 0)
except:
pass
logger = logging.getLogger("BitBake")
worker_pipe = sys.stdout.fileno()
bb.utils.nonblockingfd(worker_pipe)
# Need to guard against multiprocessing being used in child processes
# and multiple processes trying to write to the parent at the same time
worker_pipe_lock = None
handler = bb.event.LogHandler()
logger.addHandler(handler)
if 0:
# Code to write out a log file of all events passing through the worker
logfilename = "/tmp/workerlogfile"
format_str = "%(levelname)s: %(message)s"
conlogformat = bb.msg.BBLogFormatter(format_str)
consolelog = logging.FileHandler(logfilename)
consolelog.setFormatter(conlogformat)
logger.addHandler(consolelog)
worker_queue = queue.Queue()
def worker_fire(event, d):
data = b"<event>" + pickle.dumps(event) + b"</event>"
worker_fire_prepickled(data)
def worker_fire_prepickled(event):
global worker_queue
worker_queue.put(event)
#
# We can end up with write contention with the cooker, it can be trying to send commands
# and we can be trying to send event data back. Therefore use a separate thread for writing
# back data to cooker.
#
worker_thread_exit = False
def worker_flush(worker_queue):
worker_queue_int = b""
global worker_pipe, worker_thread_exit
while True:
try:
worker_queue_int = worker_queue_int + worker_queue.get(True, 1)
except queue.Empty:
pass
while (worker_queue_int or not worker_queue.empty()):
try:
(_, ready, _) = select.select([], [worker_pipe], [], 1)
if not worker_queue.empty():
worker_queue_int = worker_queue_int + worker_queue.get()
written = os.write(worker_pipe, worker_queue_int)
worker_queue_int = worker_queue_int[written:]
except (IOError, OSError) as e:
if e.errno != errno.EAGAIN and e.errno != errno.EPIPE:
raise
if worker_thread_exit and worker_queue.empty() and not worker_queue_int:
return
worker_thread = Thread(target=worker_flush, args=(worker_queue,))
worker_thread.start()
def worker_child_fire(event, d):
global worker_pipe
global worker_pipe_lock
data = b"<event>" + pickle.dumps(event) + b"</event>"
try:
worker_pipe_lock.acquire()
while(len(data)):
written = worker_pipe.write(data)
data = data[written:]
worker_pipe_lock.release()
except IOError:
sigterm_handler(None, None)
raise
bb.event.worker_fire = worker_fire
lf = None
#lf = open("/tmp/workercommandlog", "w+")
def workerlog_write(msg):
if lf:
lf.write(msg)
lf.flush()
def sigterm_handler(signum, frame):
signal.signal(signal.SIGTERM, signal.SIG_DFL)
os.killpg(0, signal.SIGTERM)
sys.exit()
def fork_off_task(cfg, data, databuilder, workerdata, fn, task, taskname, taskhash, unihash, appends, taskdepdata, extraconfigdata, quieterrors=False, dry_run_exec=False):
# We need to setup the environment BEFORE the fork, since
# a fork() or exec*() activates PSEUDO...
envbackup = {}
fakeroot = False
fakeenv = {}
umask = None
uid = os.getuid()
gid = os.getgid()
taskdep = workerdata["taskdeps"][fn]
if 'umask' in taskdep and taskname in taskdep['umask']:
umask = taskdep['umask'][taskname]
elif workerdata["umask"]:
umask = workerdata["umask"]
if umask:
# umask might come in as a number or text string..
try:
umask = int(umask, 8)
except TypeError:
pass
dry_run = cfg.dry_run or dry_run_exec
# We can't use the fakeroot environment in a dry run as it possibly hasn't been built
if 'fakeroot' in taskdep and taskname in taskdep['fakeroot'] and not dry_run:
fakeroot = True
envvars = (workerdata["fakerootenv"][fn] or "").split()
for key, value in (var.split('=') for var in envvars):
envbackup[key] = os.environ.get(key)
os.environ[key] = value
fakeenv[key] = value
fakedirs = (workerdata["fakerootdirs"][fn] or "").split()
for p in fakedirs:
bb.utils.mkdirhier(p)
logger.debug2('Running %s:%s under fakeroot, fakedirs: %s' %
(fn, taskname, ', '.join(fakedirs)))
else:
envvars = (workerdata["fakerootnoenv"][fn] or "").split()
for key, value in (var.split('=') for var in envvars):
envbackup[key] = os.environ.get(key)
os.environ[key] = value
fakeenv[key] = value
sys.stdout.flush()
sys.stderr.flush()
try:
pipein, pipeout = os.pipe()
pipein = os.fdopen(pipein, 'rb', 4096)
pipeout = os.fdopen(pipeout, 'wb', 0)
pid = os.fork()
except OSError as e:
logger.critical("fork failed: %d (%s)" % (e.errno, e.strerror))
sys.exit(1)
if pid == 0:
def child():
global worker_pipe
global worker_pipe_lock
pipein.close()
bb.utils.signal_on_parent_exit("SIGTERM")
# Save out the PID so that the event can include it the
# events
bb.event.worker_pid = os.getpid()
bb.event.worker_fire = worker_child_fire
worker_pipe = pipeout
worker_pipe_lock = Lock()
# Make the child the process group leader and ensure no
# child process will be controlled by the current terminal
# This ensures signals sent to the controlling terminal like Ctrl+C
# don't stop the child processes.
os.setsid()
signal.signal(signal.SIGTERM, sigterm_handler)
# Let SIGHUP exit as SIGTERM
signal.signal(signal.SIGHUP, sigterm_handler)
# No stdin
newsi = os.open(os.devnull, os.O_RDWR)
os.dup2(newsi, sys.stdin.fileno())
if umask:
os.umask(umask)
try:
bb_cache = bb.cache.NoCache(databuilder)
(realfn, virtual, mc) = bb.cache.virtualfn2realfn(fn)
the_data = databuilder.mcdata[mc]
the_data.setVar("BB_WORKERCONTEXT", "1")
the_data.setVar("BB_TASKDEPDATA", taskdepdata)
the_data.setVar('BB_CURRENTTASK', taskname.replace("do_", ""))
if cfg.limited_deps:
the_data.setVar("BB_LIMITEDDEPS", "1")
the_data.setVar("BUILDNAME", workerdata["buildname"])
the_data.setVar("DATE", workerdata["date"])
the_data.setVar("TIME", workerdata["time"])
for varname, value in extraconfigdata.items():
the_data.setVar(varname, value)
bb.parse.siggen.set_taskdata(workerdata["sigdata"])
if "newhashes" in workerdata:
bb.parse.siggen.set_taskhashes(workerdata["newhashes"])
ret = 0
the_data = bb_cache.loadDataFull(fn, appends)
the_data.setVar('BB_TASKHASH', taskhash)
the_data.setVar('BB_UNIHASH', unihash)
bb.utils.set_process_name("%s:%s" % (the_data.getVar("PN"), taskname.replace("do_", "")))
if not the_data.getVarFlag(taskname, 'network', False):
if bb.utils.is_local_uid(uid):
logger.debug("Attempting to disable network for %s" % taskname)
bb.utils.disable_network(uid, gid)
else:
logger.debug("Skipping disable network for %s since %s is not a local uid." % (taskname, uid))
# exported_vars() returns a generator which *cannot* be passed to os.environ.update()
# successfully. We also need to unset anything from the environment which shouldn't be there
exports = bb.data.exported_vars(the_data)
bb.utils.empty_environment()
for e, v in exports:
os.environ[e] = v
for e in fakeenv:
os.environ[e] = fakeenv[e]
the_data.setVar(e, fakeenv[e])
the_data.setVarFlag(e, 'export', "1")
task_exports = the_data.getVarFlag(taskname, 'exports')
if task_exports:
for e in task_exports.split():
the_data.setVarFlag(e, 'export', '1')
v = the_data.getVar(e)
if v is not None:
os.environ[e] = v
if quieterrors:
the_data.setVarFlag(taskname, "quieterrors", "1")
except Exception:
if not quieterrors:
logger.critical(traceback.format_exc())
os._exit(1)
try:
if dry_run:
return 0
try:
ret = bb.build.exec_task(fn, taskname, the_data, cfg.profile)
finally:
if fakeroot:
fakerootcmd = shlex.split(the_data.getVar("FAKEROOTCMD"))
subprocess.run(fakerootcmd + ['-S'], check=True, stdout=subprocess.PIPE)
return ret
except:
os._exit(1)
if not profiling:
os._exit(child())
else:
profname = "profile-%s.log" % (fn.replace("/", "-") + "-" + taskname)
prof = profile.Profile()
try:
ret = profile.Profile.runcall(prof, child)
finally:
prof.dump_stats(profname)
bb.utils.process_profilelog(profname)
os._exit(ret)
else:
for key, value in iter(envbackup.items()):
if value is None:
del os.environ[key]
else:
os.environ[key] = value
return pid, pipein, pipeout
class runQueueWorkerPipe():
"""
Abstraction for a pipe between a worker thread and the worker server
"""
def __init__(self, pipein, pipeout):
self.input = pipein
if pipeout:
pipeout.close()
bb.utils.nonblockingfd(self.input)
self.queue = b""
def read(self):
start = len(self.queue)
try:
self.queue = self.queue + (self.input.read(102400) or b"")
except (OSError, IOError) as e:
if e.errno != errno.EAGAIN:
raise
end = len(self.queue)
index = self.queue.find(b"</event>")
while index != -1:
msg = self.queue[:index+8]
assert msg.startswith(b"<event>") and msg.count(b"<event>") == 1
worker_fire_prepickled(msg)
self.queue = self.queue[index+8:]
index = self.queue.find(b"</event>")
return (end > start)
def close(self):
while self.read():
continue
if len(self.queue) > 0:
print("Warning, worker child left partial message: %s" % self.queue)
self.input.close()
normalexit = False
class BitbakeWorker(object):
def __init__(self, din):
self.input = din
bb.utils.nonblockingfd(self.input)
self.queue = b""
self.cookercfg = None
self.databuilder = None
self.data = None
self.extraconfigdata = None
self.build_pids = {}
self.build_pipes = {}
signal.signal(signal.SIGTERM, self.sigterm_exception)
# Let SIGHUP exit as SIGTERM
signal.signal(signal.SIGHUP, self.sigterm_exception)
if "beef" in sys.argv[1]:
bb.utils.set_process_name("Worker (Fakeroot)")
else:
bb.utils.set_process_name("Worker")
def sigterm_exception(self, signum, stackframe):
if signum == signal.SIGTERM:
bb.warn("Worker received SIGTERM, shutting down...")
elif signum == signal.SIGHUP:
bb.warn("Worker received SIGHUP, shutting down...")
self.handle_finishnow(None)
signal.signal(signal.SIGTERM, signal.SIG_DFL)
os.kill(os.getpid(), signal.SIGTERM)
def serve(self):
while True:
(ready, _, _) = select.select([self.input] + [i.input for i in self.build_pipes.values()], [] , [], 1)
if self.input in ready:
try:
r = self.input.read()
if len(r) == 0:
# EOF on pipe, server must have terminated
self.sigterm_exception(signal.SIGTERM, None)
self.queue = self.queue + r
except (OSError, IOError):
pass
if len(self.queue):
self.handle_item(b"cookerconfig", self.handle_cookercfg)
self.handle_item(b"extraconfigdata", self.handle_extraconfigdata)
self.handle_item(b"workerdata", self.handle_workerdata)
self.handle_item(b"newtaskhashes", self.handle_newtaskhashes)
self.handle_item(b"runtask", self.handle_runtask)
self.handle_item(b"finishnow", self.handle_finishnow)
self.handle_item(b"ping", self.handle_ping)
self.handle_item(b"quit", self.handle_quit)
for pipe in self.build_pipes:
if self.build_pipes[pipe].input in ready:
self.build_pipes[pipe].read()
if len(self.build_pids):
while self.process_waitpid():
continue
def handle_item(self, item, func):
if self.queue.startswith(b"<" + item + b">"):
index = self.queue.find(b"</" + item + b">")
while index != -1:
try:
func(self.queue[(len(item) + 2):index])
except pickle.UnpicklingError:
workerlog_write("Unable to unpickle data: %s\n" % ":".join("{:02x}".format(c) for c in self.queue))
raise
self.queue = self.queue[(index + len(item) + 3):]
index = self.queue.find(b"</" + item + b">")
def handle_cookercfg(self, data):
self.cookercfg = pickle.loads(data)
self.databuilder = bb.cookerdata.CookerDataBuilder(self.cookercfg, worker=True)
self.databuilder.parseBaseConfiguration(worker=True)
self.data = self.databuilder.data
def handle_extraconfigdata(self, data):
self.extraconfigdata = pickle.loads(data)
def handle_workerdata(self, data):
self.workerdata = pickle.loads(data)
bb.build.verboseShellLogging = self.workerdata["build_verbose_shell"]
bb.build.verboseStdoutLogging = self.workerdata["build_verbose_stdout"]
bb.msg.loggerDefaultLogLevel = self.workerdata["logdefaultlevel"]
bb.msg.loggerDefaultDomains = self.workerdata["logdefaultdomain"]
for mc in self.databuilder.mcdata:
self.databuilder.mcdata[mc].setVar("PRSERV_HOST", self.workerdata["prhost"])
self.databuilder.mcdata[mc].setVar("BB_HASHSERVE", self.workerdata["hashservaddr"])
self.databuilder.mcdata[mc].setVar("__bbclasstype", "recipe")
def handle_newtaskhashes(self, data):
self.workerdata["newhashes"] = pickle.loads(data)
def handle_ping(self, _):
workerlog_write("Handling ping\n")
logger.warning("Pong from bitbake-worker!")
def handle_quit(self, data):
workerlog_write("Handling quit\n")
global normalexit
normalexit = True
sys.exit(0)
def handle_runtask(self, data):
fn, task, taskname, taskhash, unihash, quieterrors, appends, taskdepdata, dry_run_exec = pickle.loads(data)
workerlog_write("Handling runtask %s %s %s\n" % (task, fn, taskname))
pid, pipein, pipeout = fork_off_task(self.cookercfg, self.data, self.databuilder, self.workerdata, fn, task, taskname, taskhash, unihash, appends, taskdepdata, self.extraconfigdata, quieterrors, dry_run_exec)
self.build_pids[pid] = task
self.build_pipes[pid] = runQueueWorkerPipe(pipein, pipeout)
def process_waitpid(self):
"""
Return none is there are no processes awaiting result collection, otherwise
collect the process exit codes and close the information pipe.
"""
try:
pid, status = os.waitpid(-1, os.WNOHANG)
if pid == 0 or os.WIFSTOPPED(status):
return False
except OSError:
return False
workerlog_write("Exit code of %s for pid %s\n" % (status, pid))
if os.WIFEXITED(status):
status = os.WEXITSTATUS(status)
elif os.WIFSIGNALED(status):
# Per shell conventions for $?, when a process exits due to
# a signal, we return an exit code of 128 + SIGNUM
status = 128 + os.WTERMSIG(status)
task = self.build_pids[pid]
del self.build_pids[pid]
self.build_pipes[pid].close()
del self.build_pipes[pid]
worker_fire_prepickled(b"<exitcode>" + pickle.dumps((task, status)) + b"</exitcode>")
return True
def handle_finishnow(self, _):
if self.build_pids:
logger.info("Sending SIGTERM to remaining %s tasks", len(self.build_pids))
for k, v in iter(self.build_pids.items()):
try:
os.kill(-k, signal.SIGTERM)
os.waitpid(-1, 0)
except:
pass
for pipe in self.build_pipes:
self.build_pipes[pipe].read()
try:
worker = BitbakeWorker(os.fdopen(sys.stdin.fileno(), 'rb'))
if not profiling:
worker.serve()
else:
profname = "profile-worker.log"
prof = profile.Profile()
try:
profile.Profile.runcall(prof, worker.serve)
finally:
prof.dump_stats(profname)
bb.utils.process_profilelog(profname)
except BaseException as e:
if not normalexit:
import traceback
sys.stderr.write(traceback.format_exc())
sys.stderr.write(str(e))
finally:
worker_thread_exit = True
worker_thread.join()
workerlog_write("exiting")
if not normalexit:
sys.exit(1)
sys.exit(0)

173
bitbake/bin/git-make-shallow Executable file
View File

@@ -0,0 +1,173 @@
#!/usr/bin/env python3
#
# Copyright BitBake Contributors
#
# SPDX-License-Identifier: GPL-2.0-only
#
"""git-make-shallow: make the current git repository shallow
Remove the history of the specified revisions, then optionally filter the
available refs to those specified.
"""
import argparse
import collections
import errno
import itertools
import os
import subprocess
import sys
import warnings
warnings.simplefilter("default")
version = 1.0
def main():
if sys.version_info < (3, 4, 0):
sys.exit('Python 3.4 or greater is required')
git_dir = check_output(['git', 'rev-parse', '--git-dir']).rstrip()
shallow_file = os.path.join(git_dir, 'shallow')
if os.path.exists(shallow_file):
try:
check_output(['git', 'fetch', '--unshallow'])
except subprocess.CalledProcessError:
try:
os.unlink(shallow_file)
except OSError as exc:
if exc.errno != errno.ENOENT:
raise
args = process_args()
revs = check_output(['git', 'rev-list'] + args.revisions).splitlines()
make_shallow(shallow_file, args.revisions, args.refs)
ref_revs = check_output(['git', 'rev-list'] + args.refs).splitlines()
remaining_history = set(revs) & set(ref_revs)
for rev in remaining_history:
if check_output(['git', 'rev-parse', '{}^@'.format(rev)]):
sys.exit('Error: %s was not made shallow' % rev)
filter_refs(args.refs)
if args.shrink:
shrink_repo(git_dir)
subprocess.check_call(['git', 'fsck', '--unreachable'])
def process_args():
# TODO: add argument to automatically keep local-only refs, since they
# can't be easily restored with a git fetch.
parser = argparse.ArgumentParser(description='Remove the history of the specified revisions, then optionally filter the available refs to those specified.')
parser.add_argument('--ref', '-r', metavar='REF', action='append', dest='refs', help='remove all but the specified refs (cumulative)')
parser.add_argument('--shrink', '-s', action='store_true', help='shrink the git repository by repacking and pruning')
parser.add_argument('revisions', metavar='REVISION', nargs='+', help='a git revision/commit')
if len(sys.argv) < 2:
parser.print_help()
sys.exit(2)
args = parser.parse_args()
if args.refs:
args.refs = check_output(['git', 'rev-parse', '--symbolic-full-name'] + args.refs).splitlines()
else:
args.refs = get_all_refs(lambda r, t, tt: t == 'commit' or tt == 'commit')
args.refs = list(filter(lambda r: not r.endswith('/HEAD'), args.refs))
args.revisions = check_output(['git', 'rev-parse'] + ['%s^{}' % i for i in args.revisions]).splitlines()
return args
def check_output(cmd, input=None):
return subprocess.check_output(cmd, universal_newlines=True, input=input)
def make_shallow(shallow_file, revisions, refs):
"""Remove the history of the specified revisions."""
for rev in follow_history_intersections(revisions, refs):
print("Processing %s" % rev)
with open(shallow_file, 'a') as f:
f.write(rev + '\n')
def get_all_refs(ref_filter=None):
"""Return all the existing refs in this repository, optionally filtering the refs."""
ref_output = check_output(['git', 'for-each-ref', '--format=%(refname)\t%(objecttype)\t%(*objecttype)'])
ref_split = [tuple(iter_extend(l.rsplit('\t'), 3)) for l in ref_output.splitlines()]
if ref_filter:
ref_split = (e for e in ref_split if ref_filter(*e))
refs = [r[0] for r in ref_split]
return refs
def iter_extend(iterable, length, obj=None):
"""Ensure that iterable is the specified length by extending with obj."""
return itertools.islice(itertools.chain(iterable, itertools.repeat(obj)), length)
def filter_refs(refs):
"""Remove all but the specified refs from the git repository."""
all_refs = get_all_refs()
to_remove = set(all_refs) - set(refs)
if to_remove:
check_output(['xargs', '-0', '-n', '1', 'git', 'update-ref', '-d', '--no-deref'],
input=''.join(l + '\0' for l in to_remove))
def follow_history_intersections(revisions, refs):
"""Determine all the points where the history of the specified revisions intersects the specified refs."""
queue = collections.deque(revisions)
seen = set()
for rev in iter_except(queue.popleft, IndexError):
if rev in seen:
continue
parents = check_output(['git', 'rev-parse', '%s^@' % rev]).splitlines()
yield rev
seen.add(rev)
if not parents:
continue
check_refs = check_output(['git', 'merge-base', '--independent'] + sorted(refs)).splitlines()
for parent in parents:
for ref in check_refs:
print("Checking %s vs %s" % (parent, ref))
try:
merge_base = check_output(['git', 'merge-base', parent, ref]).rstrip()
except subprocess.CalledProcessError:
continue
else:
queue.append(merge_base)
def iter_except(func, exception, start=None):
"""Yield a function repeatedly until it raises an exception."""
try:
if start is not None:
yield start()
while True:
yield func()
except exception:
pass
def shrink_repo(git_dir):
"""Shrink the newly shallow repository, removing the unreachable objects."""
subprocess.check_call(['git', 'reflog', 'expire', '--expire-unreachable=now', '--all'])
subprocess.check_call(['git', 'repack', '-ad'])
try:
os.unlink(os.path.join(git_dir, 'objects', 'info', 'alternates'))
except OSError as exc:
if exc.errno != errno.ENOENT:
raise
subprocess.check_call(['git', 'prune', '--expire', 'now'])
if __name__ == '__main__':
main()

324
bitbake/bin/toaster Executable file
View File

@@ -0,0 +1,324 @@
#!/bin/echo ERROR: This script needs to be sourced. Please run as .
# toaster - shell script to start Toaster
# Copyright (C) 2013-2015 Intel Corp.
#
# SPDX-License-Identifier: GPL-2.0-or-later
#
HELP="
Usage 1: source toaster start|stop [webport=<address:port>] [noweb] [nobuild] [toasterdir]
Optional arguments:
[nobuild] Setup the environment for capturing builds with toaster but disable managed builds
[noweb] Setup the environment for capturing builds with toaster but don't start the web server
[webport] Set the development server (default: localhost:8000)
[toasterdir] Set absolute path to be used as TOASTER_DIR (default: BUILDDIR/../)
Usage 2: source toaster manage [createsuperuser|lsupdates|migrate|makemigrations|checksettings|collectstatic|...]
"
custom_extention()
{
custom_extension=$BBBASEDIR/lib/toaster/orm/fixtures/custom_toaster_append.sh
if [ -f $custom_extension ] ; then
$custom_extension $*
fi
}
databaseCheck()
{
retval=0
# you can always add a superuser later via
# ../bitbake/lib/toaster/manage.py createsuperuser --username=<ME>
$MANAGE migrate --noinput || retval=1
if [ $retval -eq 1 ]; then
echo "Failed migrations, halting system start" 1>&2
return $retval
fi
# Make sure that checksettings can pick up any value for TEMPLATECONF
export TEMPLATECONF
$MANAGE checksettings --traceback || retval=1
if [ $retval -eq 1 ]; then
printf "\nError while checking settings; exiting\n"
return $retval
fi
return $retval
}
webserverKillAll()
{
local pidfile
if [ -f ${BUILDDIR}/.toastermain.pid ] ; then
custom_extention web_stop_postpend
else
custom_extention noweb_stop_postpend
fi
for pidfile in ${BUILDDIR}/.toastermain.pid ${BUILDDIR}/.runbuilds.pid; do
if [ -f ${pidfile} ]; then
pid=`cat ${pidfile}`
while kill -0 $pid 2>/dev/null; do
kill -SIGTERM $pid 2>/dev/null
sleep 1
done
rm ${pidfile}
fi
done
}
webserverStartAll()
{
# do not start if toastermain points to a valid process
if ! cat "${BUILDDIR}/.toastermain.pid" 2>/dev/null | xargs -I{} kill -0 {} ; then
retval=1
rm "${BUILDDIR}/.toastermain.pid"
fi
retval=0
# check the database
databaseCheck || return 1
echo "Starting webserver..."
$MANAGE runserver --noreload "$ADDR_PORT" \
</dev/null >>${BUILDDIR}/toaster_web.log 2>&1 \
& echo $! >${BUILDDIR}/.toastermain.pid
sleep 1
if ! cat "${BUILDDIR}/.toastermain.pid" | xargs -I{} kill -0 {} ; then
retval=1
rm "${BUILDDIR}/.toastermain.pid"
else
echo "Toaster development webserver started at http://$ADDR_PORT"
echo -e "\nYou can now run 'bitbake <target>' on the command line and monitor your build in Toaster.\nYou can also use a Toaster project to configure and run a build.\n"
custom_extention web_start_postpend $ADDR_PORT
fi
return $retval
}
INSTOPSYSTEM=0
# define the stop command
stop_system()
{
# prevent reentry
if [ $INSTOPSYSTEM -eq 1 ]; then return; fi
INSTOPSYSTEM=1
webserverKillAll
# unset exported variables
unset TOASTER_DIR
unset BITBAKE_UI
unset BBBASEDIR
trap - SIGHUP
#trap - SIGCHLD
INSTOPSYSTEM=0
}
verify_prereq() {
# Verify Django version
reqfile=$(python3 -c "import os; print(os.path.realpath('$BBBASEDIR/toaster-requirements.txt'))")
exp='s/Django\([><=]\+\)\([^,]\+\),\([><=]\+\)\(.\+\)/'
# expand version parts to 2 digits to support 1.10.x > 1.8
# (note:helper functions hard to insert in-line)
exp=$exp'import sys,django;'
exp=$exp'version=["%02d" % int(n) for n in django.get_version().split(".")];'
exp=$exp'vmin=["%02d" % int(n) for n in "\2".split(".")];'
exp=$exp'vmax=["%02d" % int(n) for n in "\4".split(".")];'
exp=$exp'sys.exit(not (version \1 vmin and version \3 vmax))'
exp=$exp'/p'
if ! sed -n "$exp" $reqfile | python3 - ; then
req=`grep ^Django $reqfile`
echo "This program needs $req"
echo "Please install with pip3 install -r $reqfile"
return 2
fi
return 0
}
# read command line parameters
if [ -n "$BASH_SOURCE" ] ; then
TOASTER=${BASH_SOURCE}
elif [ -n "$ZSH_NAME" ] ; then
TOASTER=${(%):-%x}
else
TOASTER=$0
fi
export BBBASEDIR=`dirname $TOASTER`/..
MANAGE="python3 $BBBASEDIR/lib/toaster/manage.py"
if [ -z "$OE_ROOT" ]; then
OE_ROOT=`dirname $TOASTER`/../..
fi
# this is the configuraton file we are using for toaster
# we are using the same logic that oe-setup-builddir uses
# (based on TEMPLATECONF and .templateconf) to determine
# which toasterconf.json to use.
# note: There are a number of relative path assumptions
# in the local layers that currently make using an arbitrary
# toasterconf.json difficult.
. $OE_ROOT/.templateconf
if [ -n "$TEMPLATECONF" ]; then
if [ ! -d "$TEMPLATECONF" ]; then
# Allow TEMPLATECONF=meta-xyz/conf as a shortcut
if [ -d "$OE_ROOT/$TEMPLATECONF" ]; then
TEMPLATECONF="$OE_ROOT/$TEMPLATECONF"
fi
fi
fi
unset OE_ROOT
WEBSERVER=1
export TOASTER_BUILDSERVER=1
ADDR_PORT="localhost:8000"
TOASTERDIR=`dirname $BUILDDIR`
unset CMD
for param in $*; do
case $param in
noweb )
WEBSERVER=0
;;
nobuild )
TOASTER_BUILDSERVER=0
;;
start )
CMD=$param
;;
stop )
CMD=$param
;;
webport=*)
ADDR_PORT="${param#*=}"
# Split the addr:port string
ADDR=`echo $ADDR_PORT | cut -f 1 -d ':'`
PORT=`echo $ADDR_PORT | cut -f 2 -d ':'`
# If only a port has been speified then set address to localhost.
if [ $ADDR = $PORT ] ; then
ADDR_PORT="localhost:$PORT"
fi
;;
toasterdir=*)
TOASTERDIR="${param#*=}"
;;
manage )
CMD=$param
manage_cmd=""
;;
--help)
echo "$HELP"
return 0
;;
*)
if [ "manage" == "$CMD" ] ; then
manage_cmd="$manage_cmd $param"
else
echo "$HELP"
exit 1
fi
;;
esac
done
if [ `basename \"$0\"` = `basename \"${TOASTER}\"` ]; then
echo "Error: This script needs to be sourced. Please run as . $TOASTER"
return 1
fi
verify_prereq || return 1
# We make sure we're running in the current shell and in a good environment
if [ -z "$BUILDDIR" ] || ! which bitbake >/dev/null 2>&1 ; then
echo "Error: Build environment is not setup or bitbake is not in path." 1>&2
return 2
fi
# this defines the dir toaster will use for
# 1) clones of layers (in _toaster_clones )
# 2) the build dir (in build)
# 3) the sqlite db if that is being used.
# 4) pid's we need to clean up on exit/shutdown
export TOASTER_DIR=$TOASTERDIR
export BB_ENV_PASSTHROUGH_ADDITIONS="$BB_ENV_PASSTHROUGH_ADDITIONS TOASTER_DIR"
# Determine the action. If specified by arguments, fine, if not, toggle it
if [ "$CMD" = "start" ] ; then
if [ -n "$BBSERVER" ]; then
echo " Toaster is already running. Exiting..."
return 1
fi
elif [ "$CMD" = "" ]; then
echo "No command specified"
echo "$HELP"
return 1
fi
echo "The system will $CMD."
# Execute the commands
custom_extention toaster_prepend $CMD $ADDR_PORT
case $CMD in
start )
# check if addr:port is not in use
if [ "$CMD" == 'start' ]; then
if [ $WEBSERVER -gt 0 ]; then
$MANAGE checksocket "$ADDR_PORT" || return 1
fi
fi
# Create configuration file
conf=${BUILDDIR}/conf/local.conf
line='INHERIT+="toaster buildhistory"'
grep -q "$line" $conf || echo $line >> $conf
if [ $WEBSERVER -eq 0 ] ; then
# Do not update the database for "noweb" unless
# it does not yet exist
if [ ! -f "$TOASTER_DIR/toaster.sqlite" ] ; then
if ! databaseCheck; then
echo "Failed ${CMD}."
return 4
fi
fi
custom_extention noweb_start_postpend $ADDR_PORT
fi
if [ $WEBSERVER -gt 0 ] && ! webserverStartAll; then
echo "Failed ${CMD}."
return 4
fi
export BITBAKE_UI='toasterui'
if [ $TOASTER_BUILDSERVER -eq 1 ] ; then
$MANAGE runbuilds \
</dev/null >>${BUILDDIR}/toaster_runbuilds.log 2>&1 \
& echo $! >${BUILDDIR}/.runbuilds.pid
else
echo "Toaster build server not started."
fi
# set fail safe stop system on terminal exit
trap stop_system SIGHUP
echo "Successful ${CMD}."
custom_extention toaster_postpend $CMD $ADDR_PORT
return 0
;;
stop )
stop_system
echo "Successful ${CMD}."
;;
manage )
cd $BBBASEDIR/lib/toaster
$MANAGE $manage_cmd
;;
esac
custom_extention toaster_postpend $CMD $ADDR_PORT

115
bitbake/bin/toaster-eventreplay Executable file
View File

@@ -0,0 +1,115 @@
#!/usr/bin/env python3
#
# Copyright (C) 2014 Alex Damian
#
# SPDX-License-Identifier: GPL-2.0-only
#
# This file re-uses code spread throughout other Bitbake source files.
# As such, all other copyrights belong to their own right holders.
#
"""
This command takes a filename as a single parameter. The filename is read
as a build eventlog, and the ToasterUI is used to process events in the file
and log data in the database
"""
import os
import sys
import json
import pickle
import codecs
import warnings
warnings.simplefilter("default")
from collections import namedtuple
# mangle syspath to allow easy import of modules
from os.path import join, dirname, abspath
sys.path.insert(0, join(dirname(dirname(abspath(__file__))), 'lib'))
import bb.cooker
from bb.ui import toasterui
class EventPlayer:
"""Emulate a connection to a bitbake server."""
def __init__(self, eventfile, variables):
self.eventfile = eventfile
self.variables = variables
self.eventmask = []
def waitEvent(self, _timeout):
"""Read event from the file."""
line = self.eventfile.readline().strip()
if not line:
return
try:
event_str = json.loads(line)['vars'].encode('utf-8')
event = pickle.loads(codecs.decode(event_str, 'base64'))
event_name = "%s.%s" % (event.__module__, event.__class__.__name__)
if event_name not in self.eventmask:
return
return event
except ValueError as err:
print("Failed loading ", line)
raise err
def runCommand(self, command_line):
"""Emulate running a command on the server."""
name = command_line[0]
if name == "getVariable":
var_name = command_line[1]
variable = self.variables.get(var_name)
if variable:
return variable['v'], None
return None, "Missing variable %s" % var_name
elif name == "getAllKeysWithFlags":
dump = {}
flaglist = command_line[1]
for key, val in self.variables.items():
try:
if not key.startswith("__"):
dump[key] = {
'v': val['v'],
'history' : val['history'],
}
for flag in flaglist:
dump[key][flag] = val[flag]
except Exception as err:
print(err)
return (dump, None)
elif name == 'setEventMask':
self.eventmask = command_line[-1]
return True, None
else:
raise Exception("Command %s not implemented" % command_line[0])
def getEventHandle(self):
"""
This method is called by toasterui.
The return value is passed to self.runCommand but not used there.
"""
pass
def main(argv):
with open(argv[-1]) as eventfile:
# load variables from the first line
variables = json.loads(eventfile.readline().strip())['allvariables']
params = namedtuple('ConfigParams', ['observe_only'])(True)
player = EventPlayer(eventfile, variables)
return toasterui.main(player, player, params)
# run toaster ui on our mock bitbake class
if __name__ == "__main__":
if len(sys.argv) != 2:
print("Usage: %s <event file>" % os.path.basename(sys.argv[0]))
sys.exit(1)
sys.exit(main(sys.argv))

1
bitbake/contrib/README Normal file
View File

@@ -0,0 +1 @@
This directory is for additional contributed files which may be useful.

View File

@@ -0,0 +1,13 @@
{
"version": 1,
"loggers": {
"BitBake.SigGen.HashEquiv": {
"level": "VERBOSE",
"handlers": ["BitBake.verbconsole"]
},
"BitBake.RunQueue.HashEquiv": {
"level": "VERBOSE",
"handlers": ["BitBake.verbconsole"]
}
}
}

31
bitbake/contrib/bbdev.sh Normal file
View File

@@ -0,0 +1,31 @@
# This is a shell function to be sourced into your shell or placed in your .profile,
# which makes setting things up for BitBake a bit easier.
#
# The author disclaims copyright to the contents of this file and places it in the
# public domain.
bbdev () {
local BBDIR PKGDIR BUILDDIR
if test x"$1" = "x--help"; then echo >&2 "syntax: bbdev [bbdir [pkgdir [builddir]]]"; return 1; fi
if test x"$1" = x; then BBDIR=`pwd`; else BBDIR=$1; fi
if test x"$2" = x; then PKGDIR=`pwd`; else PKGDIR=$2; fi
if test x"$3" = x; then BUILDDIR=`pwd`; else BUILDDIR=$3; fi
BBDIR=`readlink -f $BBDIR`
PKGDIR=`readlink -f $PKGDIR`
BUILDDIR=`readlink -f $BUILDDIR`
if ! (test -d $BBDIR && test -d $PKGDIR && test -d $BUILDDIR); then
echo >&2 "syntax: bbdev [bbdir [pkgdir [builddir]]]"
return 1
fi
PATH=$BBDIR/bin:$PATH
BBPATH=$BBDIR
if test x"$BBDIR" != x"$PKGDIR"; then
BBPATH=$PKGDIR:$BBPATH
fi
if test x"$PKGDIR" != x"$BUILDDIR"; then
BBPATH=$BUILDDIR:$BBPATH
fi
export BBPATH
}

View File

@@ -0,0 +1,89 @@
#! /usr/bin/env python3
#
# Copyright (C) 2020 Joshua Watt <JPEWhacker@gmail.com>
#
# SPDX-License-Identifier: MIT
import argparse
import os
import random
import shutil
import signal
import subprocess
import sys
import time
def try_unlink(path):
try:
os.unlink(path)
except:
pass
def main():
def cleanup():
shutil.rmtree("tmp/cache", ignore_errors=True)
try_unlink("bitbake-cookerdaemon.log")
try_unlink("bitbake.sock")
try_unlink("bitbake.lock")
parser = argparse.ArgumentParser(
description="Bitbake parser torture test",
epilog="""
A torture test for bitbake's parser. Repeatedly interrupts parsing until
bitbake decides to deadlock.
""",
)
args = parser.parse_args()
if not "BUILDDIR" in os.environ:
print(
"'BUILDDIR' not found in the environment. Did you initialize the build environment?"
)
return 1
os.chdir(os.environ["BUILDDIR"])
run_num = 0
while True:
if run_num % 100 == 0:
print("Calibrating wait time...")
cleanup()
start_time = time.monotonic()
r = subprocess.run(["bitbake", "-p"])
max_wait_time = time.monotonic() - start_time
if r.returncode != 0:
print("Calibration run exited with %d" % r.returncode)
return 1
print("Maximum wait time is %f seconds" % max_wait_time)
run_num += 1
wait_time = random.random() * max_wait_time
print("Run #%d" % run_num)
print("Will sleep for %f seconds" % wait_time)
cleanup()
with subprocess.Popen(["bitbake", "-p"]) as proc:
time.sleep(wait_time)
proc.send_signal(signal.SIGINT)
try:
proc.wait(45)
except subprocess.TimeoutExpired:
print("Run #%d: Waited too long. Possible deadlock!" % run_num)
proc.wait()
return 1
if proc.returncode == 0:
print("Exited successfully. Timeout too long?")
else:
print("Exited with %d" % proc.returncode)
if __name__ == "__main__":
sys.exit(main())

83
bitbake/contrib/dump_cache.py Executable file
View File

@@ -0,0 +1,83 @@
#!/usr/bin/env python3
#
# Copyright (C) 2012, 2018 Wind River Systems, Inc.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License version 2 as
# published by the Free Software Foundation.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License along
# with this program; if not, write to the Free Software Foundation, Inc.,
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
#
# Used for dumping the bb_cache.dat
#
import os
import sys
import argparse
# For importing bb.cache
sys.path.insert(0, os.path.join(os.path.abspath(os.path.dirname(sys.argv[0])), '../lib'))
from bb.cache import CoreRecipeInfo
import pickle
class DumpCache(object):
def __init__(self):
parser = argparse.ArgumentParser(
description="bb_cache.dat's dumper",
epilog="Use %(prog)s --help to get help")
parser.add_argument("-r", "--recipe",
help="specify the recipe, default: all recipes", action="store")
parser.add_argument("-m", "--members",
help = "specify the member, use comma as separator for multiple ones, default: all members", action="store", default="")
parser.add_argument("-s", "--skip",
help = "skip skipped recipes", action="store_true")
parser.add_argument("cachefile",
help = "specify bb_cache.dat", nargs = 1, action="store", default="")
self.args = parser.parse_args()
def main(self):
with open(self.args.cachefile[0], "rb") as cachefile:
pickled = pickle.Unpickler(cachefile)
while True:
try:
key = pickled.load()
val = pickled.load()
except Exception:
break
if isinstance(val, CoreRecipeInfo):
pn = val.pn
if self.args.recipe and self.args.recipe != pn:
continue
if self.args.skip and val.skipped:
continue
if self.args.members:
out = key
for member in self.args.members.split(','):
out += ": %s" % val.__dict__.get(member)
print("%s" % out)
else:
print("%s: %s" % (key, val.__dict__))
elif not self.args.recipe:
print("%s %s" % (key, val))
if __name__ == "__main__":
try:
dump = DumpCache()
ret = dump.main()
except Exception as esc:
ret = 1
import traceback
traceback.print_exc()
sys.exit(ret)

View File

@@ -0,0 +1,23 @@
# SPDX-License-Identifier: MIT
#
# Copyright (c) 2021 Joshua Watt <JPEWhacker@gmail.com>
#
# Dockerfile to build a bitbake hash equivalence server container
#
# From the root of the bitbake repository, run:
#
# docker build -f contrib/hashserv/Dockerfile .
#
FROM alpine:3.13.1
RUN apk add --no-cache python3
COPY bin/bitbake-hashserv /opt/bbhashserv/bin/
COPY lib/hashserv /opt/bbhashserv/lib/hashserv/
COPY lib/bb /opt/bbhashserv/lib/bb/
COPY lib/codegen.py /opt/bbhashserv/lib/codegen.py
COPY lib/ply /opt/bbhashserv/lib/ply/
COPY lib/bs4 /opt/bbhashserv/lib/bs4/
ENTRYPOINT ["/opt/bbhashserv/bin/bitbake-hashserv"]

View File

@@ -0,0 +1,62 @@
# SPDX-License-Identifier: MIT
#
# Copyright (c) 2022 Daniel Gomez <daniel@qtec.com>
#
# Dockerfile to build a bitbake PR service container
#
# From the root of the bitbake repository, run:
#
# docker build -f contrib/prserv/Dockerfile . -t prserv
#
# Running examples:
#
# 1. PR Service in RW mode, port 18585:
#
# docker run --detach --tty \
# --env PORT=18585 \
# --publish 18585:18585 \
# --volume $PWD:/var/lib/bbprserv \
# prserv
#
# 2. PR Service in RO mode, default port (8585) and custom LOGFILE:
#
# docker run --detach --tty \
# --env DBMODE="--read-only" \
# --env LOGFILE=/var/lib/bbprserv/prservro.log \
# --publish 8585:8585 \
# --volume $PWD:/var/lib/bbprserv \
# prserv
#
FROM alpine:3.14.4
RUN apk add --no-cache python3
COPY bin/bitbake-prserv /opt/bbprserv/bin/
COPY lib/prserv /opt/bbprserv/lib/prserv/
COPY lib/bb /opt/bbprserv/lib/bb/
COPY lib/codegen.py /opt/bbprserv/lib/codegen.py
COPY lib/ply /opt/bbprserv/lib/ply/
COPY lib/bs4 /opt/bbprserv/lib/bs4/
ENV PATH=$PATH:/opt/bbprserv/bin
RUN mkdir -p /var/lib/bbprserv
ENV DBFILE=/var/lib/bbprserv/prserv.sqlite3 \
LOGFILE=/var/lib/bbprserv/prserv.log \
LOGLEVEL=debug \
HOST=0.0.0.0 \
PORT=8585 \
DBMODE=""
ENTRYPOINT [ "/bin/sh", "-c", \
"bitbake-prserv \
--file=$DBFILE \
--log=$LOGFILE \
--loglevel=$LOGLEVEL \
--start \
--host=$HOST \
--port=$PORT \
$DBMODE \
&& tail -f $LOGFILE"]

View File

@@ -0,0 +1,18 @@
The MIT License (MIT)
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

View File

@@ -0,0 +1,24 @@
" Vim filetype detection file
" Language: BitBake
" Author: Ricardo Salveti <rsalveti@rsalveti.net>
" Copyright: Copyright (C) 2008 Ricardo Salveti <rsalveti@rsalveti.net>
" Licence: You may redistribute this under the same terms as Vim itself
"
" This sets up the syntax highlighting for BitBake files, like .bb, .bbclass and .inc
if &compatible || version < 600 || exists("b:loaded_bitbake_plugin")
finish
endif
" .bb, .bbappend and .bbclass
au BufNewFile,BufRead *.{bb,bbappend,bbclass} set filetype=bitbake
" .inc
au BufNewFile,BufRead *.inc set filetype=bitbake
" .conf
au BufNewFile,BufRead *.conf
\ if (match(expand("%:p:h"), "conf") > 0) |
\ set filetype=bitbake |
\ endif

View File

@@ -0,0 +1,13 @@
" Only do this when not done yet for this buffer
if exists("b:did_ftplugin")
finish
endif
" Don't load another plugin for this buffer
let b:did_ftplugin = 1
let b:undo_ftplugin = "setl cms< sts< sw< et< sua<"
setlocal commentstring=#\ %s
setlocal softtabstop=4 shiftwidth=4 expandtab
setlocal suffixesadd+=.bb,.bbclass

View File

@@ -0,0 +1,343 @@
" Vim indent file
" Language: BitBake
" Copyright: Copyright (C) 2019 Agilent Technologies, Inc.
" Maintainer: Chris Laplante <chris.laplante@agilent.com>
" License: You may redistribute this under the same terms as Vim itself
if exists("b:did_indent")
finish
endif
if exists("*BitbakeIndent")
finish
endif
runtime! indent/sh.vim
unlet b:did_indent
setlocal indentexpr=BitbakeIndent(v:lnum)
setlocal autoindent nolisp
function s:is_bb_python_func_def(lnum)
let stack = synstack(a:lnum, 1)
if len(stack) == 0
return 0
endif
let top = synIDattr(stack[0], "name")
echo top
return synIDattr(stack[0], "name") == "bbPyFuncDef"
endfunction
"""" begin modified from indent/python.vim, upstream commit 7a9bd7c1e0ce1baf5a02daf36eeae3638aa315c7
"""" This copied code is licensed the same as Vim itself.
setlocal indentkeys+=<:>,=elif,=except
let s:keepcpo= &cpo
set cpo&vim
let s:maxoff = 50 " maximum number of lines to look backwards for ()
function GetPythonIndent(lnum)
" If this line is explicitly joined: If the previous line was also joined,
" line it up with that one, otherwise add two 'shiftwidth'
if getline(a:lnum - 1) =~ '\\$'
if a:lnum > 1 && getline(a:lnum - 2) =~ '\\$'
return indent(a:lnum - 1)
endif
return indent(a:lnum - 1) + (exists("g:pyindent_continue") ? eval(g:pyindent_continue) : (shiftwidth() * 2))
endif
" If the start of the line is in a string don't change the indent.
if has('syntax_items')
\ && synIDattr(synID(a:lnum, 1, 1), "name") =~ "String$"
return -1
endif
" Search backwards for the previous non-empty line.
let plnum = prevnonblank(v:lnum - 1)
if plnum == 0
" This is the first non-empty line, use zero indent.
return 0
endif
call cursor(plnum, 1)
" Identing inside parentheses can be very slow, regardless of the searchpair()
" timeout, so let the user disable this feature if he doesn't need it
let disable_parentheses_indenting = get(g:, "pyindent_disable_parentheses_indenting", 0)
if disable_parentheses_indenting == 1
let plindent = indent(plnum)
let plnumstart = plnum
else
" searchpair() can be slow sometimes, limit the time to 150 msec or what is
" put in g:pyindent_searchpair_timeout
let searchpair_stopline = 0
let searchpair_timeout = get(g:, 'pyindent_searchpair_timeout', 150)
" If the previous line is inside parenthesis, use the indent of the starting
" line.
" Trick: use the non-existing "dummy" variable to break out of the loop when
" going too far back.
let parlnum = searchpair('(\|{\|\[', '', ')\|}\|\]', 'nbW',
\ "line('.') < " . (plnum - s:maxoff) . " ? dummy :"
\ . " synIDattr(synID(line('.'), col('.'), 1), 'name')"
\ . " =~ '\\(Comment\\|Todo\\|String\\)$'",
\ searchpair_stopline, searchpair_timeout)
if parlnum > 0
" We may have found the opening brace of a BitBake Python task, e.g. 'python do_task {'
" If so, ignore it here - it will be handled later.
if s:is_bb_python_func_def(parlnum)
let parlnum = 0
let plindent = indent(plnum)
let plnumstart = plnum
else
let plindent = indent(parlnum)
let plnumstart = parlnum
endif
else
let plindent = indent(plnum)
let plnumstart = plnum
endif
" When inside parenthesis: If at the first line below the parenthesis add
" two 'shiftwidth', otherwise same as previous line.
" i = (a
" + b
" + c)
call cursor(a:lnum, 1)
let p = searchpair('(\|{\|\[', '', ')\|}\|\]', 'bW',
\ "line('.') < " . (a:lnum - s:maxoff) . " ? dummy :"
\ . " synIDattr(synID(line('.'), col('.'), 1), 'name')"
\ . " =~ '\\(Comment\\|Todo\\|String\\)$'",
\ searchpair_stopline, searchpair_timeout)
if p > 0
if s:is_bb_python_func_def(p)
" Handle first non-empty line inside a BB Python task
if p == plnum
return shiftwidth()
endif
" Handle the user actually trying to close a BitBake Python task
let line = getline(a:lnum)
if line =~ '^\s*}'
return -2
endif
" Otherwise ignore the brace
let p = 0
else
if p == plnum
" When the start is inside parenthesis, only indent one 'shiftwidth'.
let pp = searchpair('(\|{\|\[', '', ')\|}\|\]', 'bW',
\ "line('.') < " . (a:lnum - s:maxoff) . " ? dummy :"
\ . " synIDattr(synID(line('.'), col('.'), 1), 'name')"
\ . " =~ '\\(Comment\\|Todo\\|String\\)$'",
\ searchpair_stopline, searchpair_timeout)
if pp > 0
return indent(plnum) + (exists("g:pyindent_nested_paren") ? eval(g:pyindent_nested_paren) : shiftwidth())
endif
return indent(plnum) + (exists("g:pyindent_open_paren") ? eval(g:pyindent_open_paren) : (shiftwidth() * 2))
endif
if plnumstart == p
return indent(plnum)
endif
return plindent
endif
endif
endif
" Get the line and remove a trailing comment.
" Use syntax highlighting attributes when possible.
let pline = getline(plnum)
let pline_len = strlen(pline)
if has('syntax_items')
" If the last character in the line is a comment, do a binary search for
" the start of the comment. synID() is slow, a linear search would take
" too long on a long line.
if synIDattr(synID(plnum, pline_len, 1), "name") =~ "\\(Comment\\|Todo\\)$"
let min = 1
let max = pline_len
while min < max
let col = (min + max) / 2
if synIDattr(synID(plnum, col, 1), "name") =~ "\\(Comment\\|Todo\\)$"
let max = col
else
let min = col + 1
endif
endwhile
let pline = strpart(pline, 0, min - 1)
endif
else
let col = 0
while col < pline_len
if pline[col] == '#'
let pline = strpart(pline, 0, col)
break
endif
let col = col + 1
endwhile
endif
" If the previous line ended with a colon, indent this line
if pline =~ ':\s*$'
return plindent + shiftwidth()
endif
" If the previous line was a stop-execution statement...
" TODO: utilize this logic to deindent when ending a bbPyDefRegion
if getline(plnum) =~ '^\s*\(break\|continue\|raise\|return\|pass\|bb\.fatal\)\>'
" See if the user has already dedented
if indent(a:lnum) > indent(plnum) - shiftwidth()
" If not, recommend one dedent
return indent(plnum) - shiftwidth()
endif
" Otherwise, trust the user
return -1
endif
" If the current line begins with a keyword that lines up with "try"
if getline(a:lnum) =~ '^\s*\(except\|finally\)\>'
let lnum = a:lnum - 1
while lnum >= 1
if getline(lnum) =~ '^\s*\(try\|except\)\>'
let ind = indent(lnum)
if ind >= indent(a:lnum)
return -1 " indent is already less than this
endif
return ind " line up with previous try or except
endif
let lnum = lnum - 1
endwhile
return -1 " no matching "try"!
endif
" If the current line begins with a header keyword, dedent
if getline(a:lnum) =~ '^\s*\(elif\|else\)\>'
" Unless the previous line was a one-liner
if getline(plnumstart) =~ '^\s*\(for\|if\|try\)\>'
return plindent
endif
" Or the user has already dedented
if indent(a:lnum) <= plindent - shiftwidth()
return -1
endif
return plindent - shiftwidth()
endif
" When after a () construct we probably want to go back to the start line.
" a = (b
" + c)
" here
if parlnum > 0
return plindent
endif
return -1
endfunction
let &cpo = s:keepcpo
unlet s:keepcpo
""" end of stuff from indent/python.vim
let b:did_indent = 1
setlocal indentkeys+=0\"
function BitbakeIndent(lnum)
if !has('syntax_items')
return -1
endif
let stack = synstack(a:lnum, 1)
if len(stack) == 0
return -1
endif
let name = synIDattr(stack[0], "name")
" TODO: support different styles of indentation for assignments. For now,
" we only support like this:
" VAR = " \
" value1 \
" value2 \
" "
"
" i.e. each value indented by shiftwidth(), with the final quote " completely unindented.
if name == "bbVarValue"
" Quote handling is tricky. kernel.bbclass has this line for instance:
" EXTRA_OEMAKE = " HOSTCC="${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_LDFLAGS}" " HOSTCPP="${BUILD_CPP}""
" Instead of trying to handle crazy cases like that, just assume that a
" double-quote on a line by itself (following an assignment) means the
" user is closing the assignment, and de-dent.
if getline(a:lnum) =~ '^\s*"$'
return 0
endif
let prevstack = synstack(a:lnum - 1, 1)
if len(prevstack) == 0
return -1
endif
let prevname = synIDattr(prevstack[0], "name")
" Only indent if there was actually a continuation character on
" the previous line, to avoid misleading indentation.
let prevlinelastchar = synIDattr(synID(a:lnum - 1, col([a:lnum - 1, "$"]) - 1, 1), "name")
let prev_continued = prevlinelastchar == "bbContinue"
" Did the previous line introduce an assignment?
if index(["bbVarDef", "bbVarFlagDef"], prevname) != -1
if prev_continued
return shiftwidth()
endif
endif
if !prev_continued
return 0
endif
" Autoindent can take it from here
return -1
endif
if index(["bbPyDefRegion", "bbPyFuncRegion"], name) != -1
let ret = GetPythonIndent(a:lnum)
" Should normally always be indented by at least one shiftwidth; but allow
" return of -1 (defer to autoindent) or -2 (force indent to 0)
if ret == 0
return shiftwidth()
elseif ret == -2
return 0
endif
return ret
endif
" TODO: GetShIndent doesn't detect tasks prepended with 'fakeroot'
" Need to submit a patch upstream to Vim to provide an extension point.
" Unlike the Python indenter, the Sh indenter is way too large to copy and
" modify here.
if name == "bbShFuncRegion"
return GetShIndent()
endif
" TODO:
" + heuristics for de-denting out of a bbPyDefRegion? e.g. when the user
" types an obvious BB keyword like addhandler or addtask, or starts
" writing a shell task. Maybe too hard to implement...
return -1
endfunction

View File

@@ -0,0 +1,88 @@
" Vim plugin file
" Purpose: Create a template for new bb files
" Author: Ricardo Salveti <rsalveti@gmail.com>
" Copyright: Copyright (C) 2008 Ricardo Salveti <rsalveti@gmail.com>
"
" This file is licensed under the MIT license, see COPYING.MIT in
" this source distribution for the terms.
"
" Based on the gentoo-syntax package
"
" Will try to use git to find the user name and email
if &compatible || v:version < 600 || exists("b:loaded_bitbake_plugin")
finish
endif
fun! <SID>GetUserName()
let l:user_name = system("git config --get user.name")
if v:shell_error
return "Unknown User"
else
return substitute(l:user_name, "\n", "", "")
endfun
fun! <SID>GetUserEmail()
let l:user_email = system("git config --get user.email")
if v:shell_error
return "unknown@user.org"
else
return substitute(l:user_email, "\n", "", "")
endfun
fun! BBHeader()
let l:current_year = strftime("%Y")
let l:user_name = <SID>GetUserName()
let l:user_email = <SID>GetUserEmail()
0 put ='# Copyright (C) ' . l:current_year .
\ ' ' . l:user_name . ' <' . l:user_email . '>'
put ='# Released under the MIT license (see COPYING.MIT for the terms)'
$
endfun
fun! NewBBTemplate()
if line2byte(line('$') + 1) != -1
return
endif
let l:paste = &paste
set nopaste
" Get the header
call BBHeader()
" New the bb template
put ='SUMMARY = \"\"'
put ='HOMEPAGE = \"\"'
put ='LICENSE = \"\"'
put ='SECTION = \"\"'
put ='DEPENDS = \"\"'
put =''
put ='SRC_URI = \"\"'
" Go to the first place to edit
0
/^SUMMARY =/
exec "normal 2f\""
if paste == 1
set paste
endif
endfun
if !exists("g:bb_create_on_empty")
let g:bb_create_on_empty = 1
endif
" disable in case of vimdiff
if v:progname =~ "vimdiff"
let g:bb_create_on_empty = 0
endif
augroup NewBB
au BufNewFile,BufReadPost *.bb
\ if g:bb_create_on_empty |
\ call NewBBTemplate() |
\ endif
augroup END

View File

@@ -0,0 +1,46 @@
" Vim plugin file
" Purpose: Create a template for new bbappend file
" Author: Joshua Watt <JPEWhacker@gmail.com>
" Copyright: Copyright (C) 2017 Joshua Watt <JPEWhacker@gmail.com>
"
" This file is licensed under the MIT license, see COPYING.MIT in
" this source distribution for the terms.
"
if &compatible || v:version < 600 || exists("b:loaded_bitbake_plugin")
finish
endif
fun! NewBBAppendTemplate()
if line2byte(line('$') + 1) != -1
return
endif
let l:paste = &paste
set nopaste
" New bbappend template
0 put ='FILESEXTRAPATHS:prepend := \"${THISDIR}/${PN}:\"'
2
if paste == 1
set paste
endif
endfun
if !exists("g:bb_create_on_empty")
let g:bb_create_on_empty = 1
endif
" disable in case of vimdiff
if v:progname =~ "vimdiff"
let g:bb_create_on_empty = 0
endif
augroup NewBBAppend
au BufNewFile,BufReadPost *.bbappend
\ if g:bb_create_on_empty |
\ call NewBBAppendTemplate() |
\ endif
augroup END

View File

@@ -0,0 +1,129 @@
" Vim syntax file
" Language: BitBake bb/bbclasses/inc
" Author: Chris Larson <kergoth@handhelds.org>
" Ricardo Salveti <rsalveti@rsalveti.net>
" Copyright: Copyright (C) 2004 Chris Larson <kergoth@handhelds.org>
" Copyright (C) 2008 Ricardo Salveti <rsalveti@rsalveti.net>
"
" This file is licensed under the MIT license, see COPYING.MIT in
" this source distribution for the terms.
"
" Syntax highlighting for bb, bbclasses and inc files.
"
" It's an entirely new type, just has specific syntax in shell and python code
if &compatible || v:version < 600 || exists("b:loaded_bitbake_plugin")
finish
endif
if exists("b:current_syntax")
finish
endif
syn include @python syntax/python.vim
if exists("b:current_syntax")
unlet b:current_syntax
endif
" BitBake syntax
" Matching case
syn case match
" Indicates the error when nothing is matched
syn match bbUnmatched "."
" Comments
syn cluster bbCommentGroup contains=bbTodo,@Spell
syn keyword bbTodo COMBAK FIXME TODO XXX contained
syn match bbComment "#.*$" contains=@bbCommentGroup
" String helpers
syn match bbQuote +['"]+ contained
syn match bbDelimiter "[(){}=]" contained
syn match bbArrayBrackets "[\[\]]" contained
" BitBake strings
syn match bbContinue "\\$"
syn region bbString matchgroup=bbQuote start=+"+ skip=+\\$+ end=+"+ contained contains=bbTodo,bbContinue,bbVarDeref,bbVarPyValue,@Spell
syn region bbString matchgroup=bbQuote start=+'+ skip=+\\$+ end=+'+ contained contains=bbTodo,bbContinue,bbVarDeref,bbVarPyValue,@Spell
" Vars definition
syn match bbExport "^export" nextgroup=bbIdentifier skipwhite
syn keyword bbExportFlag export contained nextgroup=bbIdentifier skipwhite
syn match bbIdentifier "[a-zA-Z0-9\-_\.\/\+]\+" display contained
syn match bbVarDeref "${[a-zA-Z0-9\-_:\.\/\+]\+}" contained
syn match bbVarEq "\(:=\|+=\|=+\|\.=\|=\.\|?=\|??=\|=\)" contained nextgroup=bbVarValue
syn match bbVarDef "^\(export\s*\)\?\([a-zA-Z0-9\-_\.\/\+][${}a-zA-Z0-9\-_:\.\/\+]*\)\s*\(:=\|+=\|=+\|\.=\|=\.\|?=\|??=\|=\)\@=" contains=bbExportFlag,bbIdentifier,bbOverrideOperator,bbVarDeref nextgroup=bbVarEq
syn match bbVarValue ".*$" contained contains=bbString,bbVarDeref,bbVarPyValue
syn region bbVarPyValue start=+${@+ skip=+\\$+ end=+}+ contained contains=@python
" Vars metadata flags
syn match bbVarFlagDef "^\([a-zA-Z0-9\-_\.]\+\)\(\[[a-zA-Z0-9\-_\.+]\+\]\)\@=" contains=bbIdentifier nextgroup=bbVarFlagFlag
syn region bbVarFlagFlag matchgroup=bbArrayBrackets start="\[" end="\]\s*\(:=\|=\|.=\|=.|+=\|=+\|?=\)\@=" contained contains=bbIdentifier nextgroup=bbVarEq
" Includes and requires
syn keyword bbInclude inherit include require contained
syn match bbIncludeRest ".*$" contained contains=bbString,bbVarDeref
syn match bbIncludeLine "^\(inherit\|include\|require\)\s\+" contains=bbInclude nextgroup=bbIncludeRest
" Add taks and similar
syn keyword bbStatement addtask deltask addhandler after before EXPORT_FUNCTIONS contained
syn match bbStatementRest ".*$" skipwhite contained contains=bbStatement
syn match bbStatementLine "^\(addtask\|deltask\|addhandler\|after\|before\|EXPORT_FUNCTIONS\)\s\+" contains=bbStatement nextgroup=bbStatementRest
" OE Important Functions
syn keyword bbOEFunctions do_fetch do_unpack do_patch do_configure do_compile do_stage do_install do_package contained
" Generic Functions
syn match bbFunction "\h[0-9A-Za-z_\-\.]*" display contained contains=bbOEFunctions
syn keyword bbOverrideOperator append prepend remove contained
" BitBake shell metadata
syn include @shell syntax/sh.vim
if exists("b:current_syntax")
unlet b:current_syntax
endif
syn keyword bbShFakeRootFlag fakeroot contained
syn match bbShFuncDef "^\(fakeroot\s*\)\?\([\.0-9A-Za-z_:${}\-\.]\+\)\(python\)\@<!\(\s*()\s*\)\({\)\@=" contains=bbShFakeRootFlag,bbFunction,bbOverrideOperator,bbVarDeref,bbDelimiter nextgroup=bbShFuncRegion skipwhite
syn region bbShFuncRegion matchgroup=bbDelimiter start="{\s*$" end="^}\s*$" contained contains=@shell
" Python value inside shell functions
syn region shDeref start=+${@+ skip=+\\$+ excludenl end=+}+ contained contains=@python
" BitBake python metadata
syn keyword bbPyFlag python contained
syn match bbPyFuncDef "^\(fakeroot\s*\)\?\(python\)\(\s\+[0-9A-Za-z_:${}\-\.]\+\)\?\(\s*()\s*\)\({\)\@=" contains=bbShFakeRootFlag,bbPyFlag,bbFunction,bbOverrideOperator,bbVarDeref,bbDelimiter nextgroup=bbPyFuncRegion skipwhite
syn region bbPyFuncRegion matchgroup=bbDelimiter start="{\s*$" end="^}\s*$" contained contains=@python
" BitBake 'def'd python functions
syn keyword bbPyDef def contained
syn region bbPyDefRegion start='^\(def\s\+\)\([0-9A-Za-z_-]\+\)\(\s*(.*)\s*\):\s*$' end='^\(\s\|$\)\@!' contains=@python
" Highlighting Definitions
hi def link bbUnmatched Error
hi def link bbInclude Include
hi def link bbTodo Todo
hi def link bbComment Comment
hi def link bbQuote String
hi def link bbString String
hi def link bbDelimiter Keyword
hi def link bbArrayBrackets Statement
hi def link bbContinue Special
hi def link bbExport Type
hi def link bbExportFlag Type
hi def link bbIdentifier Identifier
hi def link bbVarDeref PreProc
hi def link bbVarDef Identifier
hi def link bbVarValue String
hi def link bbShFakeRootFlag Type
hi def link bbFunction Function
hi def link bbPyFlag Type
hi def link bbPyDef Statement
hi def link bbStatement Statement
hi def link bbStatementRest Identifier
hi def link bbOEFunctions Special
hi def link bbVarPyValue PreProc
hi def link bbOverrideOperator Operator
let b:current_syntax = "bb"

1
bitbake/doc/.gitignore vendored Normal file
View File

@@ -0,0 +1 @@
_build/

339
bitbake/doc/COPYING.GPL Normal file
View File

@@ -0,0 +1,339 @@
GNU GENERAL PUBLIC LICENSE
Version 2, June 1991
Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
Preamble
The licenses for most software are designed to take away your
freedom to share and change it. By contrast, the GNU General Public
License is intended to guarantee your freedom to share and change free
software--to make sure the software is free for all its users. This
General Public License applies to most of the Free Software
Foundation's software and to any other program whose authors commit to
using it. (Some other Free Software Foundation software is covered by
the GNU Lesser General Public License instead.) You can apply it to
your programs, too.
When we speak of free software, we are referring to freedom, not
price. Our General Public Licenses are designed to make sure that you
have the freedom to distribute copies of free software (and charge for
this service if you wish), that you receive source code or can get it
if you want it, that you can change the software or use pieces of it
in new free programs; and that you know you can do these things.
To protect your rights, we need to make restrictions that forbid
anyone to deny you these rights or to ask you to surrender the rights.
These restrictions translate to certain responsibilities for you if you
distribute copies of the software, or if you modify it.
For example, if you distribute copies of such a program, whether
gratis or for a fee, you must give the recipients all the rights that
you have. You must make sure that they, too, receive or can get the
source code. And you must show them these terms so they know their
rights.
We protect your rights with two steps: (1) copyright the software, and
(2) offer you this license which gives you legal permission to copy,
distribute and/or modify the software.
Also, for each author's protection and ours, we want to make certain
that everyone understands that there is no warranty for this free
software. If the software is modified by someone else and passed on, we
want its recipients to know that what they have is not the original, so
that any problems introduced by others will not reflect on the original
authors' reputations.
Finally, any free program is threatened constantly by software
patents. We wish to avoid the danger that redistributors of a free
program will individually obtain patent licenses, in effect making the
program proprietary. To prevent this, we have made it clear that any
patent must be licensed for everyone's free use or not licensed at all.
The precise terms and conditions for copying, distribution and
modification follow.
GNU GENERAL PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0. This License applies to any program or other work which contains
a notice placed by the copyright holder saying it may be distributed
under the terms of this General Public License. The "Program", below,
refers to any such program or work, and a "work based on the Program"
means either the Program or any derivative work under copyright law:
that is to say, a work containing the Program or a portion of it,
either verbatim or with modifications and/or translated into another
language. (Hereinafter, translation is included without limitation in
the term "modification".) Each licensee is addressed as "you".
Activities other than copying, distribution and modification are not
covered by this License; they are outside its scope. The act of
running the Program is not restricted, and the output from the Program
is covered only if its contents constitute a work based on the
Program (independent of having been made by running the Program).
Whether that is true depends on what the Program does.
1. You may copy and distribute verbatim copies of the Program's
source code as you receive it, in any medium, provided that you
conspicuously and appropriately publish on each copy an appropriate
copyright notice and disclaimer of warranty; keep intact all the
notices that refer to this License and to the absence of any warranty;
and give any other recipients of the Program a copy of this License
along with the Program.
You may charge a fee for the physical act of transferring a copy, and
you may at your option offer warranty protection in exchange for a fee.
2. You may modify your copy or copies of the Program or any portion
of it, thus forming a work based on the Program, and copy and
distribute such modifications or work under the terms of Section 1
above, provided that you also meet all of these conditions:
a) You must cause the modified files to carry prominent notices
stating that you changed the files and the date of any change.
b) You must cause any work that you distribute or publish, that in
whole or in part contains or is derived from the Program or any
part thereof, to be licensed as a whole at no charge to all third
parties under the terms of this License.
c) If the modified program normally reads commands interactively
when run, you must cause it, when started running for such
interactive use in the most ordinary way, to print or display an
announcement including an appropriate copyright notice and a
notice that there is no warranty (or else, saying that you provide
a warranty) and that users may redistribute the program under
these conditions, and telling the user how to view a copy of this
License. (Exception: if the Program itself is interactive but
does not normally print such an announcement, your work based on
the Program is not required to print an announcement.)
These requirements apply to the modified work as a whole. If
identifiable sections of that work are not derived from the Program,
and can be reasonably considered independent and separate works in
themselves, then this License, and its terms, do not apply to those
sections when you distribute them as separate works. But when you
distribute the same sections as part of a whole which is a work based
on the Program, the distribution of the whole must be on the terms of
this License, whose permissions for other licensees extend to the
entire whole, and thus to each and every part regardless of who wrote it.
Thus, it is not the intent of this section to claim rights or contest
your rights to work written entirely by you; rather, the intent is to
exercise the right to control the distribution of derivative or
collective works based on the Program.
In addition, mere aggregation of another work not based on the Program
with the Program (or with a work based on the Program) on a volume of
a storage or distribution medium does not bring the other work under
the scope of this License.
3. You may copy and distribute the Program (or a work based on it,
under Section 2) in object code or executable form under the terms of
Sections 1 and 2 above provided that you also do one of the following:
a) Accompany it with the complete corresponding machine-readable
source code, which must be distributed under the terms of Sections
1 and 2 above on a medium customarily used for software interchange; or,
b) Accompany it with a written offer, valid for at least three
years, to give any third party, for a charge no more than your
cost of physically performing source distribution, a complete
machine-readable copy of the corresponding source code, to be
distributed under the terms of Sections 1 and 2 above on a medium
customarily used for software interchange; or,
c) Accompany it with the information you received as to the offer
to distribute corresponding source code. (This alternative is
allowed only for noncommercial distribution and only if you
received the program in object code or executable form with such
an offer, in accord with Subsection b above.)
The source code for a work means the preferred form of the work for
making modifications to it. For an executable work, complete source
code means all the source code for all modules it contains, plus any
associated interface definition files, plus the scripts used to
control compilation and installation of the executable. However, as a
special exception, the source code distributed need not include
anything that is normally distributed (in either source or binary
form) with the major components (compiler, kernel, and so on) of the
operating system on which the executable runs, unless that component
itself accompanies the executable.
If distribution of executable or object code is made by offering
access to copy from a designated place, then offering equivalent
access to copy the source code from the same place counts as
distribution of the source code, even though third parties are not
compelled to copy the source along with the object code.
4. You may not copy, modify, sublicense, or distribute the Program
except as expressly provided under this License. Any attempt
otherwise to copy, modify, sublicense or distribute the Program is
void, and will automatically terminate your rights under this License.
However, parties who have received copies, or rights, from you under
this License will not have their licenses terminated so long as such
parties remain in full compliance.
5. You are not required to accept this License, since you have not
signed it. However, nothing else grants you permission to modify or
distribute the Program or its derivative works. These actions are
prohibited by law if you do not accept this License. Therefore, by
modifying or distributing the Program (or any work based on the
Program), you indicate your acceptance of this License to do so, and
all its terms and conditions for copying, distributing or modifying
the Program or works based on it.
6. Each time you redistribute the Program (or any work based on the
Program), the recipient automatically receives a license from the
original licensor to copy, distribute or modify the Program subject to
these terms and conditions. You may not impose any further
restrictions on the recipients' exercise of the rights granted herein.
You are not responsible for enforcing compliance by third parties to
this License.
7. If, as a consequence of a court judgment or allegation of patent
infringement or for any other reason (not limited to patent issues),
conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License. If you cannot
distribute so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you
may not distribute the Program at all. For example, if a patent
license would not permit royalty-free redistribution of the Program by
all those who receive copies directly or indirectly through you, then
the only way you could satisfy both it and this License would be to
refrain entirely from distribution of the Program.
If any portion of this section is held invalid or unenforceable under
any particular circumstance, the balance of the section is intended to
apply and the section as a whole is intended to apply in other
circumstances.
It is not the purpose of this section to induce you to infringe any
patents or other property right claims or to contest validity of any
such claims; this section has the sole purpose of protecting the
integrity of the free software distribution system, which is
implemented by public license practices. Many people have made
generous contributions to the wide range of software distributed
through that system in reliance on consistent application of that
system; it is up to the author/donor to decide if he or she is willing
to distribute software through any other system and a licensee cannot
impose that choice.
This section is intended to make thoroughly clear what is believed to
be a consequence of the rest of this License.
8. If the distribution and/or use of the Program is restricted in
certain countries either by patents or by copyrighted interfaces, the
original copyright holder who places the Program under this License
may add an explicit geographical distribution limitation excluding
those countries, so that distribution is permitted only in or among
countries not thus excluded. In such case, this License incorporates
the limitation as if written in the body of this License.
9. The Free Software Foundation may publish revised and/or new versions
of the General Public License from time to time. Such new versions will
be similar in spirit to the present version, but may differ in detail to
address new problems or concerns.
Each version is given a distinguishing version number. If the Program
specifies a version number of this License which applies to it and "any
later version", you have the option of following the terms and conditions
either of that version or of any later version published by the Free
Software Foundation. If the Program does not specify a version number of
this License, you may choose any version ever published by the Free Software
Foundation.
10. If you wish to incorporate parts of the Program into other free
programs whose distribution conditions are different, write to the author
to ask for permission. For software which is copyrighted by the Free
Software Foundation, write to the Free Software Foundation; we sometimes
make exceptions for this. Our decision will be guided by the two goals
of preserving the free status of all derivatives of our free software and
of promoting the sharing and reuse of software generally.
NO WARRANTY
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
REPAIR OR CORRECTION.
12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
POSSIBILITY OF SUCH DAMAGES.
END OF TERMS AND CONDITIONS
How to Apply These Terms to Your New Programs
If you develop a new program, and you want it to be of the greatest
possible use to the public, the best way to achieve this is to make it
free software which everyone can redistribute and change under these terms.
To do so, attach the following notices to the program. It is safest
to attach them to the start of each source file to most effectively
convey the exclusion of warranty; and each file should have at least
the "copyright" line and a pointer to where the full notice is found.
<one line to give the program's name and a brief idea of what it does.>
Copyright (C) <year> <name of author>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License along
with this program; if not, write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
Also add information on how to contact you by electronic and paper mail.
If the program is interactive, make it output a short notice like this
when it starts in an interactive mode:
Gnomovision version 69, Copyright (C) year name of author
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `show c' for details.
The hypothetical commands `show w' and `show c' should show the appropriate
parts of the General Public License. Of course, the commands you use may
be called something other than `show w' and `show c'; they could even be
mouse-clicks or menu items--whatever suits your program.
You should also get your employer (if you work as a programmer) or your
school, if any, to sign a "copyright disclaimer" for the program, if
necessary. Here is a sample; alter the names:
Yoyodyne, Inc., hereby disclaims all copyright interest in the program
`Gnomovision' (which makes passes at compilers) written by James Hacker.
<signature of Ty Coon>, 1 April 1989
Ty Coon, President of Vice
This General Public License does not permit incorporating your program into
proprietary programs. If your program is a subroutine library, you may
consider it more useful to permit linking proprietary applications with the
library. If this is what you want to do, use the GNU Lesser General
Public License instead of this License.

17
bitbake/doc/COPYING.MIT Normal file
View File

@@ -0,0 +1,17 @@
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT
SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR
THE USE OR OTHER DEALINGS IN THE SOFTWARE.

35
bitbake/doc/Makefile Normal file
View File

@@ -0,0 +1,35 @@
# Minimal makefile for Sphinx documentation
#
# You can set these variables from the command line, and also
# from the environment for the first two.
SPHINXOPTS ?= -W --keep-going -j auto
SPHINXBUILD ?= sphinx-build
SOURCEDIR = .
BUILDDIR = _build
DESTDIR = final
ifeq ($(shell if which $(SPHINXBUILD) >/dev/null 2>&1; then echo 1; else echo 0; fi),0)
$(error "The '$(SPHINXBUILD)' command was not found. Make sure you have Sphinx installed")
endif
# Put it first so that "make" without argument is like "make help".
help:
@$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
.PHONY: help Makefile clean publish
publish: Makefile html singlehtml
rm -rf $(BUILDDIR)/$(DESTDIR)/
mkdir -p $(BUILDDIR)/$(DESTDIR)/
cp -r $(BUILDDIR)/html/* $(BUILDDIR)/$(DESTDIR)/
cp $(BUILDDIR)/singlehtml/index.html $(BUILDDIR)/$(DESTDIR)/singleindex.html
sed -i -e 's@index.html#@singleindex.html#@g' $(BUILDDIR)/$(DESTDIR)/singleindex.html
clean:
@rm -rf $(BUILDDIR)
# Catch-all target: route all unknown targets to Sphinx using the new
# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
%: Makefile
@$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)

55
bitbake/doc/README Normal file
View File

@@ -0,0 +1,55 @@
Documentation
=============
This is the directory that contains the BitBake documentation.
Manual Organization
===================
Folders exist for individual manuals as follows:
* bitbake-user-manual --- The BitBake User Manual
Each folder is self-contained regarding content and figures.
If you want to find HTML versions of the BitBake manuals on the web,
go to https://www.openembedded.org/wiki/Documentation.
Sphinx
======
The BitBake documentation was migrated from the original DocBook
format to Sphinx based documentation for the Yocto Project 3.2
release.
Additional information related to the Sphinx migration, and guidelines
for developers willing to contribute to the BitBake documentation can
be found in the Yocto Project Documentation README file:
https://git.yoctoproject.org/cgit/cgit.cgi/yocto-docs/tree/documentation/README
How to build the Yocto Project documentation
============================================
Sphinx is written in Python. While it might work with Python2, for
obvious reasons, we will only support building the BitBake
documentation with Python3.
Sphinx might be available in your Linux distro packages repositories,
however it is not recommend using distro packages, as they might be
old versions, especially if you are using an LTS version of your
distro. The recommended method to install Sphinx and all required
dependencies is to use the Python Package Index (pip).
To install all required packages run:
$ pip3 install sphinx sphinx_rtd_theme pyyaml
To build the documentation locally, run:
$ cd documentation
$ make -f Makefile.sphinx html
The resulting HTML index page will be _build/html/index.html, and you
can browse your own copy of the locally generated documentation with
your browser.

14
bitbake/doc/_templates/breadcrumbs.html vendored Normal file
View File

@@ -0,0 +1,14 @@
{% extends "!breadcrumbs.html" %}
{% block breadcrumbs %}
<li>
<span class="doctype_switcher_placeholder">{{ doctype or 'single' }}</span>
<span class="version_switcher_placeholder">{{ release }}</span>
</li>
<li> &raquo;</li>
{% for doc in parents %}
<li><a href="{{ doc.link|e }}">{{ doc.title }}</a> &raquo;</li>
{% endfor %}
<li>{{ title }}</li>
{% endblock %}

7
bitbake/doc/_templates/layout.html vendored Normal file
View File

@@ -0,0 +1,7 @@
{% extends "!layout.html" %}
{% block extrabody %}
<div id="outdated-warning" style="text-align: center; background-color: #FFBABA; color: #6A0E0E;">
</div>
{% endblock %}

View File

@@ -0,0 +1,724 @@
.. SPDX-License-Identifier: CC-BY-2.5
=========
Execution
=========
|
The primary purpose for running BitBake is to produce some kind of
output such as a single installable package, a kernel, a software
development kit, or even a full, board-specific bootable Linux image,
complete with bootloader, kernel, and root filesystem. Of course, you
can execute the ``bitbake`` command with options that cause it to
execute single tasks, compile single recipe files, capture or clear
data, or simply return information about the execution environment.
This chapter describes BitBake's execution process from start to finish
when you use it to create an image. The execution process is launched
using the following command form::
$ bitbake target
For information on
the BitBake command and its options, see ":ref:`The BitBake Command
<bitbake-user-manual-command>`" section.
.. note::
Prior to executing BitBake, you should take advantage of available
parallel thread execution on your build host by setting the
:term:`BB_NUMBER_THREADS` variable in
your project's ``local.conf`` configuration file.
A common method to determine this value for your build host is to run
the following::
$ grep processor /proc/cpuinfo
This command returns
the number of processors, which takes into account hyper-threading.
Thus, a quad-core build host with hyper-threading most likely shows
eight processors, which is the value you would then assign to
:term:`BB_NUMBER_THREADS`.
A possibly simpler solution is that some Linux distributions (e.g.
Debian and Ubuntu) provide the ``ncpus`` command.
Parsing the Base Configuration Metadata
=======================================
The first thing BitBake does is parse base configuration metadata. Base
configuration metadata consists of your project's ``bblayers.conf`` file
to determine what layers BitBake needs to recognize, all necessary
``layer.conf`` files (one from each layer), and ``bitbake.conf``. The
data itself is of various types:
- **Recipes:** Details about particular pieces of software.
- **Class Data:** An abstraction of common build information (e.g. how to
build a Linux kernel).
- **Configuration Data:** Machine-specific settings, policy decisions,
and so forth. Configuration data acts as the glue to bind everything
together.
The ``layer.conf`` files are used to construct key variables such as
:term:`BBPATH` and :term:`BBFILES`.
:term:`BBPATH` is used to search for configuration and class files under the
``conf`` and ``classes`` directories, respectively. :term:`BBFILES` is used
to locate both recipe and recipe append files (``.bb`` and
``.bbappend``). If there is no ``bblayers.conf`` file, it is assumed the
user has set the :term:`BBPATH` and :term:`BBFILES` directly in the environment.
Next, the ``bitbake.conf`` file is located using the :term:`BBPATH` variable
that was just constructed. The ``bitbake.conf`` file may also include
other configuration files using the ``include`` or ``require``
directives.
Prior to parsing configuration files, BitBake looks at certain
variables, including:
- :term:`BB_ENV_PASSTHROUGH`
- :term:`BB_ENV_PASSTHROUGH_ADDITIONS`
- :term:`BB_PRESERVE_ENV`
- :term:`BB_ORIGENV`
- :term:`BITBAKE_UI`
The first four variables in this list relate to how BitBake treats shell
environment variables during task execution. By default, BitBake cleans
the environment variables and provides tight control over the shell
execution environment. However, through the use of these first four
variables, you can apply your control regarding the environment
variables allowed to be used by BitBake in the shell during execution of
tasks. See the
":ref:`bitbake-user-manual/bitbake-user-manual-metadata:Passing Information Into the Build Task Environment`"
section and the information about these variables in the variable
glossary for more information on how they work and on how to use them.
The base configuration metadata is global and therefore affects all
recipes and tasks that are executed.
BitBake first searches the current working directory for an optional
``conf/bblayers.conf`` configuration file. This file is expected to
contain a :term:`BBLAYERS` variable that is a
space-delimited list of 'layer' directories. Recall that if BitBake
cannot find a ``bblayers.conf`` file, then it is assumed the user has
set the :term:`BBPATH` and :term:`BBFILES` variables directly in the
environment.
For each directory (layer) in this list, a ``conf/layer.conf`` file is
located and parsed with the :term:`LAYERDIR` variable
being set to the directory where the layer was found. The idea is these
files automatically set up :term:`BBPATH` and other
variables correctly for a given build directory.
BitBake then expects to find the ``conf/bitbake.conf`` file somewhere in
the user-specified :term:`BBPATH`. That configuration file generally has
include directives to pull in any other metadata such as files specific
to the architecture, the machine, the local environment, and so forth.
Only variable definitions and include directives are allowed in BitBake
``.conf`` files. Some variables directly influence BitBake's behavior.
These variables might have been set from the environment depending on
the environment variables previously mentioned or set in the
configuration files. The ":ref:`bitbake-user-manual/bitbake-user-manual-ref-variables:Variables Glossary`"
chapter presents a full list of
variables.
After parsing configuration files, BitBake uses its rudimentary
inheritance mechanism, which is through class files, to inherit some
standard classes. BitBake parses a class when the inherit directive
responsible for getting that class is encountered.
The ``base.bbclass`` file is always included. Other classes that are
specified in the configuration using the
:term:`INHERIT` variable are also included. BitBake
searches for class files in a ``classes`` subdirectory under the paths
in :term:`BBPATH` in the same way as configuration files.
A good way to get an idea of the configuration files and the class files
used in your execution environment is to run the following BitBake
command::
$ bitbake -e > mybb.log
Examining the top of the ``mybb.log``
shows you the many configuration files and class files used in your
execution environment.
.. note::
You need to be aware of how BitBake parses curly braces. If a recipe
uses a closing curly brace within the function and the character has
no leading spaces, BitBake produces a parsing error. If you use a
pair of curly braces in a shell function, the closing curly brace
must not be located at the start of the line without leading spaces.
Here is an example that causes BitBake to produce a parsing error::
fakeroot create_shar() {
cat << "EOF" > ${SDK_DEPLOY}/${TOOLCHAIN_OUTPUTNAME}.sh
usage()
{
echo "test"
###### The following "}" at the start of the line causes a parsing error ######
}
EOF
}
Writing the recipe this way avoids the error:
fakeroot create_shar() {
cat << "EOF" > ${SDK_DEPLOY}/${TOOLCHAIN_OUTPUTNAME}.sh
usage()
{
echo "test"
###### The following "}" with a leading space at the start of the line avoids the error ######
}
EOF
}
Locating and Parsing Recipes
============================
During the configuration phase, BitBake will have set
:term:`BBFILES`. BitBake now uses it to construct a
list of recipes to parse, along with any append files (``.bbappend``) to
apply. :term:`BBFILES` is a space-separated list of available files and
supports wildcards. An example would be::
BBFILES = "/path/to/bbfiles/*.bb /path/to/appends/*.bbappend"
BitBake parses each
recipe and append file located with :term:`BBFILES` and stores the values of
various variables into the datastore.
.. note::
Append files are applied in the order they are encountered in BBFILES.
For each file, a fresh copy of the base configuration is made, then the
recipe is parsed line by line. Any inherit statements cause BitBake to
find and then parse class files (``.bbclass``) using
:term:`BBPATH` as the search path. Finally, BitBake
parses in order any append files found in :term:`BBFILES`.
One common convention is to use the recipe filename to define pieces of
metadata. For example, in ``bitbake.conf`` the recipe name and version
are used to set the variables :term:`PN` and
:term:`PV`::
PN = "${@bb.parse.vars_from_file(d.getVar('FILE', False),d)[0] or 'defaultpkgname'}"
PV = "${@bb.parse.vars_from_file(d.getVar('FILE', False),d)[1] or '1.0'}"
In this example, a recipe called "something_1.2.3.bb" would set
:term:`PN` to "something" and :term:`PV` to "1.2.3".
By the time parsing is complete for a recipe, BitBake has a list of
tasks that the recipe defines and a set of data consisting of keys and
values as well as dependency information about the tasks.
BitBake does not need all of this information. It only needs a small
subset of the information to make decisions about the recipe.
Consequently, BitBake caches the values in which it is interested and
does not store the rest of the information. Experience has shown it is
faster to re-parse the metadata than to try and write it out to the disk
and then reload it.
Where possible, subsequent BitBake commands reuse this cache of recipe
information. The validity of this cache is determined by first computing
a checksum of the base configuration data (see
:term:`BB_HASHCONFIG_IGNORE_VARS`) and
then checking if the checksum matches. If that checksum matches what is
in the cache and the recipe and class files have not changed, BitBake is
able to use the cache. BitBake then reloads the cached information about
the recipe instead of reparsing it from scratch.
Recipe file collections exist to allow the user to have multiple
repositories of ``.bb`` files that contain the same exact package. For
example, one could easily use them to make one's own local copy of an
upstream repository, but with custom modifications that one does not
want upstream. Here is an example::
BBFILES = "/stuff/openembedded/*/*.bb /stuff/openembedded.modified/*/*.bb"
BBFILE_COLLECTIONS = "upstream local"
BBFILE_PATTERN_upstream = "^/stuff/openembedded/"
BBFILE_PATTERN_local = "^/stuff/openembedded.modified/"
BBFILE_PRIORITY_upstream = "5"
BBFILE_PRIORITY_local = "10"
.. note::
The layers mechanism is now the preferred method of collecting code.
While the collections code remains, its main use is to set layer
priorities and to deal with overlap (conflicts) between layers.
.. _bb-bitbake-providers:
Providers
=========
Assuming BitBake has been instructed to execute a target and that all
the recipe files have been parsed, BitBake starts to figure out how to
build the target. BitBake looks through the :term:`PROVIDES` list for each
of the recipes. A :term:`PROVIDES` list is the list of names by which the
recipe can be known. Each recipe's :term:`PROVIDES` list is created
implicitly through the recipe's :term:`PN` variable and
explicitly through the recipe's :term:`PROVIDES`
variable, which is optional.
When a recipe uses :term:`PROVIDES`, that recipe's functionality can be
found under an alternative name or names other than the implicit :term:`PN`
name. As an example, suppose a recipe named ``keyboard_1.0.bb``
contained the following::
PROVIDES += "fullkeyboard"
The :term:`PROVIDES`
list for this recipe becomes "keyboard", which is implicit, and
"fullkeyboard", which is explicit. Consequently, the functionality found
in ``keyboard_1.0.bb`` can be found under two different names.
.. _bb-bitbake-preferences:
Preferences
===========
The :term:`PROVIDES` list is only part of the solution for figuring out a
target's recipes. Because targets might have multiple providers, BitBake
needs to prioritize providers by determining provider preferences.
A common example in which a target has multiple providers is
"virtual/kernel", which is on the :term:`PROVIDES` list for each kernel
recipe. Each machine often selects the best kernel provider by using a
line similar to the following in the machine configuration file::
PREFERRED_PROVIDER_virtual/kernel = "linux-yocto"
The default :term:`PREFERRED_PROVIDER` is the provider
with the same name as the target. BitBake iterates through each target
it needs to build and resolves them and their dependencies using this
process.
Understanding how providers are chosen is made complicated by the fact
that multiple versions might exist for a given provider. BitBake
defaults to the highest version of a provider. Version comparisons are
made using the same method as Debian. You can use the
:term:`PREFERRED_VERSION` variable to
specify a particular version. You can influence the order by using the
:term:`DEFAULT_PREFERENCE` variable.
By default, files have a preference of "0". Setting
:term:`DEFAULT_PREFERENCE` to "-1" makes the recipe unlikely to be used
unless it is explicitly referenced. Setting :term:`DEFAULT_PREFERENCE` to
"1" makes it likely the recipe is used. :term:`PREFERRED_VERSION` overrides
any :term:`DEFAULT_PREFERENCE` setting. :term:`DEFAULT_PREFERENCE` is often used
to mark newer and more experimental recipe versions until they have
undergone sufficient testing to be considered stable.
When there are multiple "versions" of a given recipe, BitBake defaults
to selecting the most recent version, unless otherwise specified. If the
recipe in question has a
:term:`DEFAULT_PREFERENCE` set lower than
the other recipes (default is 0), then it will not be selected. This
allows the person or persons maintaining the repository of recipe files
to specify their preference for the default selected version.
Additionally, the user can specify their preferred version.
If the first recipe is named ``a_1.1.bb``, then the
:term:`PN` variable will be set to "a", and the
:term:`PV` variable will be set to 1.1.
Thus, if a recipe named ``a_1.2.bb`` exists, BitBake will choose 1.2 by
default. However, if you define the following variable in a ``.conf``
file that BitBake parses, you can change that preference::
PREFERRED_VERSION_a = "1.1"
.. note::
It is common for a recipe to provide two versions -- a stable,
numbered (and preferred) version, and a version that is automatically
checked out from a source code repository that is considered more
"bleeding edge" but can be selected only explicitly.
For example, in the OpenEmbedded codebase, there is a standard,
versioned recipe file for BusyBox, ``busybox_1.22.1.bb``, but there
is also a Git-based version, ``busybox_git.bb``, which explicitly
contains the line ::
DEFAULT_PREFERENCE = "-1"
to ensure that the
numbered, stable version is always preferred unless the developer
selects otherwise.
.. _bb-bitbake-dependencies:
Dependencies
============
Each target BitBake builds consists of multiple tasks such as ``fetch``,
``unpack``, ``patch``, ``configure``, and ``compile``. For best
performance on multi-core systems, BitBake considers each task as an
independent entity with its own set of dependencies.
Dependencies are defined through several variables. You can find
information about variables BitBake uses in the
:doc:`bitbake-user-manual-ref-variables` near the end of this manual. At a
basic level, it is sufficient to know that BitBake uses the
:term:`DEPENDS` and
:term:`RDEPENDS` variables when calculating
dependencies.
For more information on how BitBake handles dependencies, see the
:ref:`bitbake-user-manual/bitbake-user-manual-metadata:Dependencies`
section.
.. _ref-bitbake-tasklist:
The Task List
=============
Based on the generated list of providers and the dependency information,
BitBake can now calculate exactly what tasks it needs to run and in what
order it needs to run them. The
:ref:`bitbake-user-manual/bitbake-user-manual-execution:executing tasks`
section has more information on how BitBake chooses which task to
execute next.
The build now starts with BitBake forking off threads up to the limit
set in the :term:`BB_NUMBER_THREADS`
variable. BitBake continues to fork threads as long as there are tasks
ready to run, those tasks have all their dependencies met, and the
thread threshold has not been exceeded.
It is worth noting that you can greatly speed up the build time by
properly setting the :term:`BB_NUMBER_THREADS` variable.
As each task completes, a timestamp is written to the directory
specified by the :term:`STAMP` variable. On subsequent
runs, BitBake looks in the build directory within ``tmp/stamps`` and
does not rerun tasks that are already completed unless a timestamp is
found to be invalid. Currently, invalid timestamps are only considered
on a per recipe file basis. So, for example, if the configure stamp has
a timestamp greater than the compile timestamp for a given target, then
the compile task would rerun. Running the compile task again, however,
has no effect on other providers that depend on that target.
The exact format of the stamps is partly configurable. In modern
versions of BitBake, a hash is appended to the stamp so that if the
configuration changes, the stamp becomes invalid and the task is
automatically rerun. This hash, or signature used, is governed by the
signature policy that is configured (see the
:ref:`bitbake-user-manual/bitbake-user-manual-execution:checksums (signatures)`
section for information). It is also
possible to append extra metadata to the stamp using the
``[stamp-extra-info]`` task flag. For example, OpenEmbedded uses this
flag to make some tasks machine-specific.
.. note::
Some tasks are marked as "nostamp" tasks. No timestamp file is
created when these tasks are run. Consequently, "nostamp" tasks are
always rerun.
For more information on tasks, see the
:ref:`bitbake-user-manual/bitbake-user-manual-metadata:tasks` section.
Executing Tasks
===============
Tasks can be either a shell task or a Python task. For shell tasks,
BitBake writes a shell script to
``${``\ :term:`T`\ ``}/run.do_taskname.pid`` and then
executes the script. The generated shell script contains all the
exported variables, and the shell functions with all variables expanded.
Output from the shell script goes to the file
``${``\ :term:`T`\ ``}/log.do_taskname.pid``. Looking at the expanded shell functions in
the run file and the output in the log files is a useful debugging
technique.
For Python tasks, BitBake executes the task internally and logs
information to the controlling terminal. Future versions of BitBake will
write the functions to files similar to the way shell tasks are handled.
Logging will be handled in a way similar to shell tasks as well.
The order in which BitBake runs the tasks is controlled by its task
scheduler. It is possible to configure the scheduler and define custom
implementations for specific use cases. For more information, see these
variables that control the behavior:
- :term:`BB_SCHEDULER`
- :term:`BB_SCHEDULERS`
It is possible to have functions run before and after a task's main
function. This is done using the ``[prefuncs]`` and ``[postfuncs]``
flags of the task that lists the functions to run.
.. _checksums:
Checksums (Signatures)
======================
A checksum is a unique signature of a task's inputs. The signature of a
task can be used to determine if a task needs to be run. Because it is a
change in a task's inputs that triggers running the task, BitBake needs
to detect all the inputs to a given task. For shell tasks, this turns
out to be fairly easy because BitBake generates a "run" shell script for
each task and it is possible to create a checksum that gives you a good
idea of when the task's data changes.
To complicate the problem, some things should not be included in the
checksum. First, there is the actual specific build path of a given task
- the working directory. It does not matter if the working directory
changes because it should not affect the output for target packages. The
simplistic approach for excluding the working directory is to set it to
some fixed value and create the checksum for the "run" script. BitBake
goes one step better and uses the
:term:`BB_BASEHASH_IGNORE_VARS` variable
to define a list of variables that should never be included when
generating the signatures.
Another problem results from the "run" scripts containing functions that
might or might not get called. The incremental build solution contains
code that figures out dependencies between shell functions. This code is
used to prune the "run" scripts down to the minimum set, thereby
alleviating this problem and making the "run" scripts much more readable
as a bonus.
So far we have solutions for shell scripts. What about Python tasks? The
same approach applies even though these tasks are more difficult. The
process needs to figure out what variables a Python function accesses
and what functions it calls. Again, the incremental build solution
contains code that first figures out the variable and function
dependencies, and then creates a checksum for the data used as the input
to the task.
Like the working directory case, situations exist where dependencies
should be ignored. For these cases, you can instruct the build process
to ignore a dependency by using a line like the following::
PACKAGE_ARCHS[vardepsexclude] = "MACHINE"
This example ensures that the
``PACKAGE_ARCHS`` variable does not depend on the value of ``MACHINE``,
even if it does reference it.
Equally, there are cases where we need to add dependencies BitBake is
not able to find. You can accomplish this by using a line like the
following::
PACKAGE_ARCHS[vardeps] = "MACHINE"
This example explicitly
adds the ``MACHINE`` variable as a dependency for ``PACKAGE_ARCHS``.
Consider a case with in-line Python, for example, where BitBake is not
able to figure out dependencies. When running in debug mode (i.e. using
``-DDD``), BitBake produces output when it discovers something for which
it cannot figure out dependencies.
Thus far, this section has limited discussion to the direct inputs into
a task. Information based on direct inputs is referred to as the
"basehash" in the code. However, there is still the question of a task's
indirect inputs --- the things that were already built and present in the
build directory. The checksum (or signature) for a particular task needs
to add the hashes of all the tasks on which the particular task depends.
Choosing which dependencies to add is a policy decision. However, the
effect is to generate a master checksum that combines the basehash and
the hashes of the task's dependencies.
At the code level, there are a variety of ways both the basehash and the
dependent task hashes can be influenced. Within the BitBake
configuration file, we can give BitBake some extra information to help
it construct the basehash. The following statement effectively results
in a list of global variable dependency excludes --- variables never
included in any checksum. This example uses variables from OpenEmbedded
to help illustrate the concept::
BB_BASEHASH_IGNORE_VARS ?= "TMPDIR FILE PATH PWD BB_TASKHASH BBPATH DL_DIR \
SSTATE_DIR THISDIR FILESEXTRAPATHS FILE_DIRNAME HOME LOGNAME SHELL \
USER FILESPATH STAGING_DIR_HOST STAGING_DIR_TARGET COREBASE PRSERV_HOST \
PRSERV_DUMPDIR PRSERV_DUMPFILE PRSERV_LOCKDOWN PARALLEL_MAKE \
CCACHE_DIR EXTERNAL_TOOLCHAIN CCACHE CCACHE_DISABLE LICENSE_PATH SDKPKGSUFFIX"
The previous example excludes the work directory, which is part of
``TMPDIR``.
The rules for deciding which hashes of dependent tasks to include
through dependency chains are more complex and are generally
accomplished with a Python function. The code in
``meta/lib/oe/sstatesig.py`` shows two examples of this and also
illustrates how you can insert your own policy into the system if so
desired. This file defines the two basic signature generators
OpenEmbedded-Core uses: "OEBasic" and "OEBasicHash". By default, there
is a dummy "noop" signature handler enabled in BitBake. This means that
behavior is unchanged from previous versions. ``OE-Core`` uses the
"OEBasicHash" signature handler by default through this setting in the
``bitbake.conf`` file::
BB_SIGNATURE_HANDLER ?= "OEBasicHash"
The "OEBasicHash" :term:`BB_SIGNATURE_HANDLER` is the same as the "OEBasic"
version but adds the task hash to the stamp files. This results in any
metadata change that changes the task hash, automatically causing the
task to be run again. This removes the need to bump
:term:`PR` values, and changes to metadata automatically
ripple across the build.
It is also worth noting that the end result of these signature
generators is to make some dependency and hash information available to
the build. This information includes:
- ``BB_BASEHASH_task-``\ *taskname*: The base hashes for each task in the
recipe.
- ``BB_BASEHASH_``\ *filename:taskname*: The base hashes for each
dependent task.
- :term:`BB_TASKHASH`: The hash of the currently running task.
It is worth noting that BitBake's "-S" option lets you debug BitBake's
processing of signatures. The options passed to -S allow different
debugging modes to be used, either using BitBake's own debug functions
or possibly those defined in the metadata/signature handler itself. The
simplest parameter to pass is "none", which causes a set of signature
information to be written out into ``STAMPS_DIR`` corresponding to the
targets specified. The other currently available parameter is
"printdiff", which causes BitBake to try to establish the closest
signature match it can (e.g. in the sstate cache) and then run
``bitbake-diffsigs`` over the matches to determine the stamps and delta
where these two stamp trees diverge.
.. note::
It is likely that future versions of BitBake will provide other
signature handlers triggered through additional "-S" parameters.
You can find more information on checksum metadata in the
:ref:`bitbake-user-manual/bitbake-user-manual-metadata:task checksums and setscene`
section.
Setscene
========
The setscene process enables BitBake to handle "pre-built" artifacts.
The ability to handle and reuse these artifacts allows BitBake the
luxury of not having to build something from scratch every time.
Instead, BitBake can use, when possible, existing build artifacts.
BitBake needs to have reliable data indicating whether or not an
artifact is compatible. Signatures, described in the previous section,
provide an ideal way of representing whether an artifact is compatible.
If a signature is the same, an object can be reused.
If an object can be reused, the problem then becomes how to replace a
given task or set of tasks with the pre-built artifact. BitBake solves
the problem with the "setscene" process.
When BitBake is asked to build a given target, before building anything,
it first asks whether cached information is available for any of the
targets it's building, or any of the intermediate targets. If cached
information is available, BitBake uses this information instead of
running the main tasks.
BitBake first calls the function defined by the
:term:`BB_HASHCHECK_FUNCTION` variable
with a list of tasks and corresponding hashes it wants to build. This
function is designed to be fast and returns a list of the tasks for
which it believes in can obtain artifacts.
Next, for each of the tasks that were returned as possibilities, BitBake
executes a setscene version of the task that the possible artifact
covers. Setscene versions of a task have the string "_setscene" appended
to the task name. So, for example, the task with the name ``xxx`` has a
setscene task named ``xxx_setscene``. The setscene version of the task
executes and provides the necessary artifacts returning either success
or failure.
As previously mentioned, an artifact can cover more than one task. For
example, it is pointless to obtain a compiler if you already have the
compiled binary. To handle this, BitBake calls the
:term:`BB_SETSCENE_DEPVALID` function for
each successful setscene task to know whether or not it needs to obtain
the dependencies of that task.
You can find more information on setscene metadata in the
:ref:`bitbake-user-manual/bitbake-user-manual-metadata:task checksums and setscene`
section.
Logging
=======
In addition to the standard command line option to control how verbose
builds are when execute, bitbake also supports user defined
configuration of the `Python
logging <https://docs.python.org/3/library/logging.html>`__ facilities
through the :term:`BB_LOGCONFIG` variable. This
variable defines a json or yaml `logging
configuration <https://docs.python.org/3/library/logging.config.html>`__
that will be intelligently merged into the default configuration. The
logging configuration is merged using the following rules:
- The user defined configuration will completely replace the default
configuration if top level key ``bitbake_merge`` is set to the value
``False``. In this case, all other rules are ignored.
- The user configuration must have a top level ``version`` which must
match the value of the default configuration.
- Any keys defined in the ``handlers``, ``formatters``, or ``filters``,
will be merged into the same section in the default configuration,
with the user specified keys taking replacing a default one if there
is a conflict. In practice, this means that if both the default
configuration and user configuration specify a handler named
``myhandler``, the user defined one will replace the default. To
prevent the user from inadvertently replacing a default handler,
formatter, or filter, all of the default ones are named with a prefix
of "``BitBake.``"
- If a logger is defined by the user with the key ``bitbake_merge`` set
to ``False``, that logger will be completely replaced by user
configuration. In this case, no other rules will apply to that
logger.
- All user defined ``filter`` and ``handlers`` properties for a given
logger will be merged with corresponding properties from the default
logger. For example, if the user configuration adds a filter called
``myFilter`` to the ``BitBake.SigGen``, and the default configuration
adds a filter called ``BitBake.defaultFilter``, both filters will be
applied to the logger
As an example, consider the following user logging configuration file
which logs all Hash Equivalence related messages of VERBOSE or higher to
a file called ``hashequiv.log`` ::
{
"version": 1,
"handlers": {
"autobuilderlog": {
"class": "logging.FileHandler",
"formatter": "logfileFormatter",
"level": "DEBUG",
"filename": "hashequiv.log",
"mode": "w"
}
},
"formatters": {
"logfileFormatter": {
"format": "%(name)s: %(levelname)s: %(message)s"
}
},
"loggers": {
"BitBake.SigGen.HashEquiv": {
"level": "VERBOSE",
"handlers": ["autobuilderlog"]
},
"BitBake.RunQueue.HashEquiv": {
"level": "VERBOSE",
"handlers": ["autobuilderlog"]
}
}
}

View File

@@ -0,0 +1,806 @@
.. SPDX-License-Identifier: CC-BY-2.5
=====================
File Download Support
=====================
|
BitBake's fetch module is a standalone piece of library code that deals
with the intricacies of downloading source code and files from remote
systems. Fetching source code is one of the cornerstones of building
software. As such, this module forms an important part of BitBake.
The current fetch module is called "fetch2" and refers to the fact that
it is the second major version of the API. The original version is
obsolete and has been removed from the codebase. Thus, in all cases,
"fetch" refers to "fetch2" in this manual.
The Download (Fetch)
====================
BitBake takes several steps when fetching source code or files. The
fetcher codebase deals with two distinct processes in order: obtaining
the files from somewhere (cached or otherwise) and then unpacking those
files into a specific location and perhaps in a specific way. Getting
and unpacking the files is often optionally followed by patching.
Patching, however, is not covered by this module.
The code to execute the first part of this process, a fetch, looks
something like the following::
src_uri = (d.getVar('SRC_URI') or "").split()
fetcher = bb.fetch2.Fetch(src_uri, d)
fetcher.download()
This code sets up an instance of the fetch class. The instance uses a
space-separated list of URLs from the :term:`SRC_URI`
variable and then calls the ``download`` method to download the files.
The instantiation of the fetch class is usually followed by::
rootdir = l.getVar('WORKDIR')
fetcher.unpack(rootdir)
This code unpacks the downloaded files to the specified by ``WORKDIR``.
.. note::
For convenience, the naming in these examples matches the variables
used by OpenEmbedded. If you want to see the above code in action,
examine the OpenEmbedded class file ``base.bbclass``
.
The :term:`SRC_URI` and ``WORKDIR`` variables are not hardcoded into the
fetcher, since those fetcher methods can be (and are) called with
different variable names. In OpenEmbedded for example, the shared state
(sstate) code uses the fetch module to fetch the sstate files.
When the ``download()`` method is called, BitBake tries to resolve the
URLs by looking for source files in a specific search order:
- *Pre-mirror Sites:* BitBake first uses pre-mirrors to try and find
source files. These locations are defined using the
:term:`PREMIRRORS` variable.
- *Source URI:* If pre-mirrors fail, BitBake uses the original URL (e.g
from :term:`SRC_URI`).
- *Mirror Sites:* If fetch failures occur, BitBake next uses mirror
locations as defined by the :term:`MIRRORS` variable.
For each URL passed to the fetcher, the fetcher calls the submodule that
handles that particular URL type. This behavior can be the source of
some confusion when you are providing URLs for the :term:`SRC_URI` variable.
Consider the following two URLs::
https://git.yoctoproject.org/git/poky;protocol=git
git://git.yoctoproject.org/git/poky;protocol=http
In the former case, the URL is passed to the ``wget`` fetcher, which does not
understand "git". Therefore, the latter case is the correct form since the Git
fetcher does know how to use HTTP as a transport.
Here are some examples that show commonly used mirror definitions::
PREMIRRORS ?= "\
bzr://.*/.\* http://somemirror.org/sources/ \
cvs://.*/.\* http://somemirror.org/sources/ \
git://.*/.\* http://somemirror.org/sources/ \
hg://.*/.\* http://somemirror.org/sources/ \
osc://.*/.\* http://somemirror.org/sources/ \
p4://.*/.\* http://somemirror.org/sources/ \
svn://.*/.\* http://somemirror.org/sources/"
MIRRORS =+ "\
ftp://.*/.\* http://somemirror.org/sources/ \
http://.*/.\* http://somemirror.org/sources/ \
https://.*/.\* http://somemirror.org/sources/"
It is useful to note that BitBake
supports cross-URLs. It is possible to mirror a Git repository on an
HTTP server as a tarball. This is what the ``git://`` mapping in the
previous example does.
Since network accesses are slow, BitBake maintains a cache of files
downloaded from the network. Any source files that are not local (i.e.
downloaded from the Internet) are placed into the download directory,
which is specified by the :term:`DL_DIR` variable.
File integrity is of key importance for reproducing builds. For
non-local archive downloads, the fetcher code can verify SHA-256 and MD5
checksums to ensure the archives have been downloaded correctly. You can
specify these checksums by using the :term:`SRC_URI` variable with the
appropriate varflags as follows::
SRC_URI[md5sum] = "value"
SRC_URI[sha256sum] = "value"
You can also specify the checksums as
parameters on the :term:`SRC_URI` as shown below::
SRC_URI = "http://example.com/foobar.tar.bz2;md5sum=4a8e0f237e961fd7785d19d07fdb994d"
If multiple URIs exist, you can specify the checksums either directly as
in the previous example, or you can name the URLs. The following syntax
shows how you name the URIs::
SRC_URI = "http://example.com/foobar.tar.bz2;name=foo"
SRC_URI[foo.md5sum] = 4a8e0f237e961fd7785d19d07fdb994d
After a file has been downloaded and
has had its checksum checked, a ".done" stamp is placed in :term:`DL_DIR`.
BitBake uses this stamp during subsequent builds to avoid downloading or
comparing a checksum for the file again.
.. note::
It is assumed that local storage is safe from data corruption. If
this were not the case, there would be bigger issues to worry about.
If :term:`BB_STRICT_CHECKSUM` is set, any
download without a checksum triggers an error message. The
:term:`BB_NO_NETWORK` variable can be used to
make any attempted network access a fatal error, which is useful for
checking that mirrors are complete as well as other things.
If :term:`BB_CHECK_SSL_CERTS` is set to ``0`` then SSL certificate checking will
be disabled. This variable defaults to ``1`` so SSL certificates are normally
checked.
.. _bb-the-unpack:
The Unpack
==========
The unpack process usually immediately follows the download. For all
URLs except Git URLs, BitBake uses the common ``unpack`` method.
A number of parameters exist that you can specify within the URL to
govern the behavior of the unpack stage:
- *unpack:* Controls whether the URL components are unpacked. If set to
"1", which is the default, the components are unpacked. If set to
"0", the unpack stage leaves the file alone. This parameter is useful
when you want an archive to be copied in and not be unpacked.
- *dos:* Applies to ``.zip`` and ``.jar`` files and specifies whether
to use DOS line ending conversion on text files.
- *striplevel:* Strip specified number of leading components (levels)
from file names on extraction
- *subdir:* Unpacks the specific URL to the specified subdirectory
within the root directory.
The unpack call automatically decompresses and extracts files with ".Z",
".z", ".gz", ".xz", ".zip", ".jar", ".ipk", ".rpm". ".srpm", ".deb" and
".bz2" extensions as well as various combinations of tarball extensions.
As mentioned, the Git fetcher has its own unpack method that is
optimized to work with Git trees. Basically, this method works by
cloning the tree into the final directory. The process is completed
using references so that there is only one central copy of the Git
metadata needed.
.. _bb-fetchers:
Fetchers
========
As mentioned earlier, the URL prefix determines which fetcher submodule
BitBake uses. Each submodule can support different URL parameters, which
are described in the following sections.
.. _local-file-fetcher:
Local file fetcher (``file://``)
--------------------------------
This submodule handles URLs that begin with ``file://``. The filename
you specify within the URL can be either an absolute or relative path to
a file. If the filename is relative, the contents of the
:term:`FILESPATH` variable is used in the same way
``PATH`` is used to find executables. If the file cannot be found, it is
assumed that it is available in :term:`DL_DIR` by the
time the ``download()`` method is called.
If you specify a directory, the entire directory is unpacked.
Here are a couple of example URLs, the first relative and the second
absolute::
SRC_URI = "file://relativefile.patch"
SRC_URI = "file:///Users/ich/very_important_software"
.. _http-ftp-fetcher:
HTTP/FTP wget fetcher (``http://``, ``ftp://``, ``https://``)
-------------------------------------------------------------
This fetcher obtains files from web and FTP servers. Internally, the
fetcher uses the wget utility.
The executable and parameters used are specified by the
``FETCHCMD_wget`` variable, which defaults to sensible values. The
fetcher supports a parameter "downloadfilename" that allows the name of
the downloaded file to be specified. Specifying the name of the
downloaded file is useful for avoiding collisions in
:term:`DL_DIR` when dealing with multiple files that
have the same name.
If a username and password are specified in the ``SRC_URI``, a Basic
Authorization header will be added to each request, including across redirects.
To instead limit the Authorization header to the first request, add
"redirectauth=0" to the list of parameters.
Some example URLs are as follows::
SRC_URI = "http://oe.handhelds.org/not_there.aac"
SRC_URI = "ftp://oe.handhelds.org/not_there_as_well.aac"
SRC_URI = "ftp://you@oe.handhelds.org/home/you/secret.plan"
.. note::
Because URL parameters are delimited by semi-colons, this can
introduce ambiguity when parsing URLs that also contain semi-colons,
for example::
SRC_URI = "http://abc123.org/git/?p=gcc/gcc.git;a=snapshot;h=a5dd47"
Such URLs should should be modified by replacing semi-colons with '&'
characters::
SRC_URI = "http://abc123.org/git/?p=gcc/gcc.git&a=snapshot&h=a5dd47"
In most cases this should work. Treating semi-colons and '&' in
queries identically is recommended by the World Wide Web Consortium
(W3C). Note that due to the nature of the URL, you may have to
specify the name of the downloaded file as well::
SRC_URI = "http://abc123.org/git/?p=gcc/gcc.git&a=snapshot&h=a5dd47;downloadfilename=myfile.bz2"
.. _cvs-fetcher:
CVS fetcher (``(cvs://``)
-------------------------
This submodule handles checking out files from the CVS version control
system. You can configure it using a number of different variables:
- :term:`FETCHCMD_cvs <FETCHCMD>`: The name of the executable to use when running
the ``cvs`` command. This name is usually "cvs".
- :term:`SRCDATE`: The date to use when fetching the CVS source code. A
special value of "now" causes the checkout to be updated on every
build.
- :term:`CVSDIR`: Specifies where a temporary
checkout is saved. The location is often ``DL_DIR/cvs``.
- CVS_PROXY_HOST: The name to use as a "proxy=" parameter to the
``cvs`` command.
- CVS_PROXY_PORT: The port number to use as a "proxyport="
parameter to the ``cvs`` command.
As well as the standard username and password URL syntax, you can also
configure the fetcher with various URL parameters:
The supported parameters are as follows:
- *"method":* The protocol over which to communicate with the CVS
server. By default, this protocol is "pserver". If "method" is set to
"ext", BitBake examines the "rsh" parameter and sets ``CVS_RSH``. You
can use "dir" for local directories.
- *"module":* Specifies the module to check out. You must supply this
parameter.
- *"tag":* Describes which CVS TAG should be used for the checkout. By
default, the TAG is empty.
- *"date":* Specifies a date. If no "date" is specified, the
:term:`SRCDATE` of the configuration is used to
checkout a specific date. The special value of "now" causes the
checkout to be updated on every build.
- *"localdir":* Used to rename the module. Effectively, you are
renaming the output directory to which the module is unpacked. You
are forcing the module into a special directory relative to
:term:`CVSDIR`.
- *"rsh":* Used in conjunction with the "method" parameter.
- *"scmdata":* Causes the CVS metadata to be maintained in the tarball
the fetcher creates when set to "keep". The tarball is expanded into
the work directory. By default, the CVS metadata is removed.
- *"fullpath":* Controls whether the resulting checkout is at the
module level, which is the default, or is at deeper paths.
- *"norecurse":* Causes the fetcher to only checkout the specified
directory with no recurse into any subdirectories.
- *"port":* The port to which the CVS server connects.
Some example URLs are as follows::
SRC_URI = "cvs://CVSROOT;module=mymodule;tag=some-version;method=ext"
SRC_URI = "cvs://CVSROOT;module=mymodule;date=20060126;localdir=usethat"
.. _svn-fetcher:
Subversion (SVN) Fetcher (``svn://``)
-------------------------------------
This fetcher submodule fetches code from the Subversion source control
system. The executable used is specified by ``FETCHCMD_svn``, which
defaults to "svn". The fetcher's temporary working directory is set by
:term:`SVNDIR`, which is usually ``DL_DIR/svn``.
The supported parameters are as follows:
- *"module":* The name of the svn module to checkout. You must provide
this parameter. You can think of this parameter as the top-level
directory of the repository data you want.
- *"path_spec":* A specific directory in which to checkout the
specified svn module.
- *"protocol":* The protocol to use, which defaults to "svn". If
"protocol" is set to "svn+ssh", the "ssh" parameter is also used.
- *"rev":* The revision of the source code to checkout.
- *"scmdata":* Causes the ".svn" directories to be available during
compile-time when set to "keep". By default, these directories are
removed.
- *"ssh":* An optional parameter used when "protocol" is set to
"svn+ssh". You can use this parameter to specify the ssh program used
by svn.
- *"transportuser":* When required, sets the username for the
transport. By default, this parameter is empty. The transport
username is different than the username used in the main URL, which
is passed to the subversion command.
Following are three examples using svn::
SRC_URI = "svn://myrepos/proj1;module=vip;protocol=http;rev=667"
SRC_URI = "svn://myrepos/proj1;module=opie;protocol=svn+ssh"
SRC_URI = "svn://myrepos/proj1;module=trunk;protocol=http;path_spec=${MY_DIR}/proj1"
.. _git-fetcher:
Git Fetcher (``git://``)
------------------------
This fetcher submodule fetches code from the Git source control system.
The fetcher works by creating a bare clone of the remote into
:term:`GITDIR`, which is usually ``DL_DIR/git2``. This
bare clone is then cloned into the work directory during the unpack
stage when a specific tree is checked out. This is done using alternates
and by reference to minimize the amount of duplicate data on the disk
and make the unpack process fast. The executable used can be set with
``FETCHCMD_git``.
This fetcher supports the following parameters:
- *"protocol":* The protocol used to fetch the files. The default is
"git" when a hostname is set. If a hostname is not set, the Git
protocol is "file". You can also use "http", "https", "ssh" and
"rsync".
.. note::
When ``protocol`` is "ssh", the URL expected in :term:`SRC_URI` differs
from the one that is typically passed to ``git clone`` command and provided
by the Git server to fetch from. For example, the URL returned by GitLab
server for ``mesa`` when cloning over SSH is
``git@gitlab.freedesktop.org:mesa/mesa.git``, however the expected URL in
:term:`SRC_URI` is the following::
SRC_URI = "git://git@gitlab.freedesktop.org/mesa/mesa.git;branch=main;protocol=ssh;..."
Note the ``:`` character changed for a ``/`` before the path to the project.
- *"nocheckout":* Tells the fetcher to not checkout source code when
unpacking when set to "1". Set this option for the URL where there is
a custom routine to checkout code. The default is "0".
- *"rebaseable":* Indicates that the upstream Git repository can be
rebased. You should set this parameter to "1" if revisions can become
detached from branches. In this case, the source mirror tarball is
done per revision, which has a loss of efficiency. Rebasing the
upstream Git repository could cause the current revision to disappear
from the upstream repository. This option reminds the fetcher to
preserve the local cache carefully for future use. The default value
for this parameter is "0".
- *"nobranch":* Tells the fetcher to not check the SHA validation for
the branch when set to "1". The default is "0". Set this option for
the recipe that refers to the commit that is valid for any namespace
(branch, tag, ...) instead of the branch.
- *"bareclone":* Tells the fetcher to clone a bare clone into the
destination directory without checking out a working tree. Only the
raw Git metadata is provided. This parameter implies the "nocheckout"
parameter as well.
- *"branch":* The branch(es) of the Git tree to clone. Unless
"nobranch" is set to "1", this is a mandatory parameter. The number of
branch parameters must match the number of name parameters.
- *"rev":* The revision to use for the checkout. The default is
"master".
- *"tag":* Specifies a tag to use for the checkout. To correctly
resolve tags, BitBake must access the network. For that reason, tags
are often not used. As far as Git is concerned, the "tag" parameter
behaves effectively the same as the "rev" parameter.
- *"subpath":* Limits the checkout to a specific subpath of the tree.
By default, the whole tree is checked out.
- *"destsuffix":* The name of the path in which to place the checkout.
By default, the path is ``git/``.
- *"usehead":* Enables local ``git://`` URLs to use the current branch
HEAD as the revision for use with ``AUTOREV``. The "usehead"
parameter implies no branch and only works when the transfer protocol
is ``file://``.
Here are some example URLs::
SRC_URI = "git://github.com/fronteed/icheck.git;protocol=https;branch=${PV};tag=${PV}"
SRC_URI = "git://github.com/asciidoc/asciidoc-py;protocol=https;branch=main"
SRC_URI = "git://git@gitlab.freedesktop.org/mesa/mesa.git;branch=main;protocol=ssh;..."
.. note::
When using ``git`` as the fetcher of the main source code of your software,
``S`` should be set accordingly::
S = "${WORKDIR}/git"
.. note::
Specifying passwords directly in ``git://`` urls is not supported.
There are several reasons: :term:`SRC_URI` is often written out to logs and
other places, and that could easily leak passwords; it is also all too
easy to share metadata without removing passwords. SSH keys, ``~/.netrc``
and ``~/.ssh/config`` files can be used as alternatives.
.. _gitsm-fetcher:
Git Submodule Fetcher (``gitsm://``)
------------------------------------
This fetcher submodule inherits from the :ref:`Git
fetcher<bitbake-user-manual/bitbake-user-manual-fetching:git fetcher
(\`\`git://\`\`)>` and extends that fetcher's behavior by fetching a
repository's submodules. :term:`SRC_URI` is passed to the Git fetcher as
described in the :ref:`bitbake-user-manual/bitbake-user-manual-fetching:git
fetcher (\`\`git://\`\`)` section.
.. note::
You must clean a recipe when switching between '``git://``' and
'``gitsm://``' URLs.
The Git Submodules fetcher is not a complete fetcher implementation.
The fetcher has known issues where it does not use the normal source
mirroring infrastructure properly. Further, the submodule sources it
fetches are not visible to the licensing and source archiving
infrastructures.
.. _clearcase-fetcher:
ClearCase Fetcher (``ccrc://``)
-------------------------------
This fetcher submodule fetches code from a
`ClearCase <http://en.wikipedia.org/wiki/Rational_ClearCase>`__
repository.
To use this fetcher, make sure your recipe has proper
:term:`SRC_URI`, :term:`SRCREV`, and
:term:`PV` settings. Here is an example::
SRC_URI = "ccrc://cc.example.org/ccrc;vob=/example_vob;module=/example_module"
SRCREV = "EXAMPLE_CLEARCASE_TAG"
PV = "${@d.getVar("SRCREV", False).replace("/", "+")}"
The fetcher uses the ``rcleartool`` or
``cleartool`` remote client, depending on which one is available.
Following are options for the :term:`SRC_URI` statement:
- *vob*: The name, which must include the prepending "/" character,
of the ClearCase VOB. This option is required.
- *module*: The module, which must include the prepending "/"
character, in the selected VOB.
.. note::
The module and vob options are combined to create the load rule in the
view config spec. As an example, consider the vob and module values from
the SRC_URI statement at the start of this section. Combining those values
results in the following::
load /example_vob/example_module
- *proto*: The protocol, which can be either ``http`` or ``https``.
By default, the fetcher creates a configuration specification. If you
want this specification written to an area other than the default, use
the ``CCASE_CUSTOM_CONFIG_SPEC`` variable in your recipe to define where
the specification is written.
.. note::
the SRCREV loses its functionality if you specify this variable. However,
SRCREV is still used to label the archive after a fetch even though it does
not define what is fetched.
Here are a couple of other behaviors worth mentioning:
- When using ``cleartool``, the login of ``cleartool`` is handled by
the system. The login require no special steps.
- In order to use ``rcleartool`` with authenticated users, an
"rcleartool login" is necessary before using the fetcher.
.. _perforce-fetcher:
Perforce Fetcher (``p4://``)
----------------------------
This fetcher submodule fetches code from the
`Perforce <https://www.perforce.com/>`__ source control system. The
executable used is specified by ``FETCHCMD_p4``, which defaults to "p4".
The fetcher's temporary working directory is set by
:term:`P4DIR`, which defaults to "DL_DIR/p4".
The fetcher does not make use of a perforce client, instead it
relies on ``p4 files`` to retrieve a list of
files and ``p4 print`` to transfer the content
of those files locally.
To use this fetcher, make sure your recipe has proper
:term:`SRC_URI`, :term:`SRCREV`, and
:term:`PV` values. The p4 executable is able to use the
config file defined by your system's ``P4CONFIG`` environment variable
in order to define the Perforce server URL and port, username, and
password if you do not wish to keep those values in a recipe itself. If
you choose not to use ``P4CONFIG``, or to explicitly set variables that
``P4CONFIG`` can contain, you can specify the ``P4PORT`` value, which is
the server's URL and port number, and you can specify a username and
password directly in your recipe within :term:`SRC_URI`.
Here is an example that relies on ``P4CONFIG`` to specify the server URL
and port, username, and password, and fetches the Head Revision::
SRC_URI = "p4://example-depot/main/source/..."
SRCREV = "${AUTOREV}"
PV = "p4-${SRCPV}"
S = "${WORKDIR}/p4"
Here is an example that specifies the server URL and port, username, and
password, and fetches a Revision based on a Label::
P4PORT = "tcp:p4server.example.net:1666"
SRC_URI = "p4://user:passwd@example-depot/main/source/..."
SRCREV = "release-1.0"
PV = "p4-${SRCPV}"
S = "${WORKDIR}/p4"
.. note::
You should always set S to "${WORKDIR}/p4" in your recipe.
By default, the fetcher strips the depot location from the local file paths. In
the above example, the content of ``example-depot/main/source/`` will be placed
in ``${WORKDIR}/p4``. For situations where preserving parts of the remote depot
paths locally is desirable, the fetcher supports two parameters:
- *"module":*
The top-level depot location or directory to fetch. The value of this
parameter can also point to a single file within the depot, in which case
the local file path will include the module path.
- *"remotepath":*
When used with the value "``keep``", the fetcher will mirror the full depot
paths locally for the specified location, even in combination with the
``module`` parameter.
Here is an example use of the the ``module`` parameter::
SRC_URI = "p4://user:passwd@example-depot/main;module=source/..."
In this case, the content of the top-level directory ``source/`` will be fetched
to ``${P4DIR}``, including the directory itself. The top-level directory will
be accesible at ``${P4DIR}/source/``.
Here is an example use of the the ``remotepath`` parameter::
SRC_URI = "p4://user:passwd@example-depot/main;module=source/...;remotepath=keep"
In this case, the content of the top-level directory ``source/`` will be fetched
to ``${P4DIR}``, but the complete depot paths will be mirrored locally. The
top-level directory will be accessible at
``${P4DIR}/example-depot/main/source/``.
.. _repo-fetcher:
Repo Fetcher (``repo://``)
--------------------------
This fetcher submodule fetches code from ``google-repo`` source control
system. The fetcher works by initiating and syncing sources of the
repository into :term:`REPODIR`, which is usually
``${DL_DIR}/repo``.
This fetcher supports the following parameters:
- *"protocol":* Protocol to fetch the repository manifest (default:
git).
- *"branch":* Branch or tag of repository to get (default: master).
- *"manifest":* Name of the manifest file (default: ``default.xml``).
Here are some example URLs::
SRC_URI = "repo://REPOROOT;protocol=git;branch=some_branch;manifest=my_manifest.xml"
SRC_URI = "repo://REPOROOT;protocol=file;branch=some_branch;manifest=my_manifest.xml"
.. _az-fetcher:
Az Fetcher (``az://``)
--------------------------
This submodule fetches data from an
`Azure Storage account <https://docs.microsoft.com/en-us/azure/storage/>`__ ,
it inherits its functionality from the HTTP wget fetcher, but modifies its
behavior to accomodate the usage of a
`Shared Access Signature (SAS) <https://docs.microsoft.com/en-us/azure/storage/common/storage-sas-overview>`__
for non-public data.
Such functionality is set by the variable:
- :term:`AZ_SAS`: The Azure Storage Shared Access Signature provides secure
delegate access to resources, if this variable is set, the Az Fetcher will
use it when fetching artifacts from the cloud.
You can specify the AZ_SAS variable as shown below::
AZ_SAS = "se=2021-01-01&sp=r&sv=2018-11-09&sr=c&skoid=<skoid>&sig=<signature>"
Here is an example URL::
SRC_URI = "az://<azure-storage-account>.blob.core.windows.net/<foo_container>/<bar_file>"
It can also be used when setting mirrors definitions using the :term:`PREMIRRORS` variable.
.. _crate-fetcher:
Crate Fetcher (``crate://``)
----------------------------
This submodule fetches code for
`Rust language "crates" <https://doc.rust-lang.org/reference/glossary.html?highlight=crate#crate>`__
corresponding to Rust libraries and programs to compile. Such crates are typically shared
on https://crates.io/ but this fetcher supports other crate registries too.
The format for the :term:`SRC_URI` setting must be::
SRC_URI = "crate://REGISTRY/NAME/VERSION"
Here is an example URL::
SRC_URI = "crate://crates.io/glob/0.2.11"
.. _npm-fetcher:
NPM Fetcher (``npm://``)
------------------------
This submodule fetches source code from an
`NPM <https://en.wikipedia.org/wiki/Npm_(software)>`__
Javascript package registry.
The format for the :term:`SRC_URI` setting must be::
SRC_URI = "npm://some.registry.url;ParameterA=xxx;ParameterB=xxx;..."
This fetcher supports the following parameters:
- *"package":* The NPM package name. This is a mandatory parameter.
- *"version":* The NPM package version. This is a mandatory parameter.
- *"downloadfilename":* Specifies the filename used when storing the downloaded file.
- *"destsuffix":* Specifies the directory to use to unpack the package (default: ``npm``).
Note that NPM fetcher only fetches the package source itself. The dependencies
can be fetched through the `npmsw-fetcher`_.
Here is an example URL with both fetchers::
SRC_URI = " \
npm://registry.npmjs.org/;package=cute-files;version=${PV} \
npmsw://${THISDIR}/${BPN}/npm-shrinkwrap.json \
"
See :yocto_docs:`Creating Node Package Manager (NPM) Packages
</dev-manual/common-tasks.html#creating-node-package-manager-npm-packages>`
in the Yocto Project manual for details about using
:yocto_docs:`devtool <https://docs.yoctoproject.org/ref-manual/devtool-reference.html>`
to automatically create a recipe from an NPM URL.
.. _npmsw-fetcher:
NPM shrinkwrap Fetcher (``npmsw://``)
-------------------------------------
This submodule fetches source code from an
`NPM shrinkwrap <https://docs.npmjs.com/cli/v8/commands/npm-shrinkwrap>`__
description file, which lists the dependencies
of an NPM package while locking their versions.
The format for the :term:`SRC_URI` setting must be::
SRC_URI = "npmsw://some.registry.url;ParameterA=xxx;ParameterB=xxx;..."
This fetcher supports the following parameters:
- *"dev":* Set this parameter to ``1`` to install "devDependencies".
- *"destsuffix":* Specifies the directory to use to unpack the dependencies
(``${S}`` by default).
Note that the shrinkwrap file can also be provided by the recipe for
the package which has such dependencies, for example::
SRC_URI = " \
npm://registry.npmjs.org/;package=cute-files;version=${PV} \
npmsw://${THISDIR}/${BPN}/npm-shrinkwrap.json \
"
Such a file can automatically be generated using
:yocto_docs:`devtool <https://docs.yoctoproject.org/ref-manual/devtool-reference.html>`
as described in the :yocto_docs:`Creating Node Package Manager (NPM) Packages
</dev-manual/common-tasks.html#creating-node-package-manager-npm-packages>`
section of the Yocto Project.
Other Fetchers
--------------
Fetch submodules also exist for the following:
- Bazaar (``bzr://``)
- Mercurial (``hg://``)
- OSC (``osc://``)
- Secure FTP (``sftp://``)
- Secure Shell (``ssh://``)
- Trees using Git Annex (``gitannex://``)
No documentation currently exists for these lesser used fetcher
submodules. However, you might find the code helpful and readable.
Auto Revisions
==============
We need to document ``AUTOREV`` and :term:`SRCREV_FORMAT` here.

View File

@@ -0,0 +1,415 @@
.. SPDX-License-Identifier: CC-BY-2.5
===================
Hello World Example
===================
BitBake Hello World
===================
The simplest example commonly used to demonstrate any new programming
language or tool is the "`Hello
World <http://en.wikipedia.org/wiki/Hello_world_program>`__" example.
This appendix demonstrates, in tutorial form, Hello World within the
context of BitBake. The tutorial describes how to create a new project
and the applicable metadata files necessary to allow BitBake to build
it.
Obtaining BitBake
=================
See the :ref:`bitbake-user-manual/bitbake-user-manual-hello:obtaining bitbake` section for
information on how to obtain BitBake. Once you have the source code on
your machine, the BitBake directory appears as follows::
$ ls -al
total 100
drwxrwxr-x. 9 wmat wmat 4096 Jan 31 13:44 .
drwxrwxr-x. 3 wmat wmat 4096 Feb 4 10:45 ..
-rw-rw-r--. 1 wmat wmat 365 Nov 26 04:55 AUTHORS
drwxrwxr-x. 2 wmat wmat 4096 Nov 26 04:55 bin
drwxrwxr-x. 4 wmat wmat 4096 Jan 31 13:44 build
-rw-rw-r--. 1 wmat wmat 16501 Nov 26 04:55 ChangeLog
drwxrwxr-x. 2 wmat wmat 4096 Nov 26 04:55 classes
drwxrwxr-x. 2 wmat wmat 4096 Nov 26 04:55 conf
drwxrwxr-x. 3 wmat wmat 4096 Nov 26 04:55 contrib
-rw-rw-r--. 1 wmat wmat 17987 Nov 26 04:55 COPYING
drwxrwxr-x. 3 wmat wmat 4096 Nov 26 04:55 doc
-rw-rw-r--. 1 wmat wmat 69 Nov 26 04:55 .gitignore
-rw-rw-r--. 1 wmat wmat 849 Nov 26 04:55 HEADER
drwxrwxr-x. 5 wmat wmat 4096 Jan 31 13:44 lib
-rw-rw-r--. 1 wmat wmat 195 Nov 26 04:55 MANIFEST.in
-rw-rw-r--. 1 wmat wmat 2887 Nov 26 04:55 TODO
At this point, you should have BitBake cloned to a directory that
matches the previous listing except for dates and user names.
Setting Up the BitBake Environment
==================================
First, you need to be sure that you can run BitBake. Set your working
directory to where your local BitBake files are and run the following
command::
$ ./bin/bitbake --version
BitBake Build Tool Core version 1.23.0, bitbake version 1.23.0
The console output tells you what version
you are running.
The recommended method to run BitBake is from a directory of your
choice. To be able to run BitBake from any directory, you need to add
the executable binary to your binary to your shell's environment
``PATH`` variable. First, look at your current ``PATH`` variable by
entering the following::
$ echo $PATH
Next, add the directory location
for the BitBake binary to the ``PATH``. Here is an example that adds the
``/home/scott-lenovo/bitbake/bin`` directory to the front of the
``PATH`` variable::
$ export PATH=/home/scott-lenovo/bitbake/bin:$PATH
You should now be able to enter the ``bitbake`` command from the command
line while working from any directory.
The Hello World Example
=======================
The overall goal of this exercise is to build a complete "Hello World"
example utilizing task and layer concepts. Because this is how modern
projects such as OpenEmbedded and the Yocto Project utilize BitBake, the
example provides an excellent starting point for understanding BitBake.
To help you understand how to use BitBake to build targets, the example
starts with nothing but the ``bitbake`` command, which causes BitBake to
fail and report problems. The example progresses by adding pieces to the
build to eventually conclude with a working, minimal "Hello World"
example.
While every attempt is made to explain what is happening during the
example, the descriptions cannot cover everything. You can find further
information throughout this manual. Also, you can actively participate
in the :oe_lists:`/g/bitbake-devel`
discussion mailing list about the BitBake build tool.
.. note::
This example was inspired by and drew heavily from
`Mailing List post - The BitBake equivalent of "Hello, World!"
<https://www.mail-archive.com/yocto@yoctoproject.org/msg09379.html>`_.
As stated earlier, the goal of this example is to eventually compile
"Hello World". However, it is unknown what BitBake needs and what you
have to provide in order to achieve that goal. Recall that BitBake
utilizes three types of metadata files:
:ref:`bitbake-user-manual/bitbake-user-manual-intro:configuration files`,
:ref:`bitbake-user-manual/bitbake-user-manual-intro:classes`, and
:ref:`bitbake-user-manual/bitbake-user-manual-intro:recipes`.
But where do they go? How does BitBake find
them? BitBake's error messaging helps you answer these types of
questions and helps you better understand exactly what is going on.
Following is the complete "Hello World" example.
#. **Create a Project Directory:** First, set up a directory for the
"Hello World" project. Here is how you can do so in your home
directory::
$ mkdir ~/hello
$ cd ~/hello
This is the directory that
BitBake will use to do all of its work. You can use this directory
to keep all the metafiles needed by BitBake. Having a project
directory is a good way to isolate your project.
#. **Run BitBake:** At this point, you have nothing but a project
directory. Run the ``bitbake`` command and see what it does::
$ bitbake
The BBPATH variable is not set and bitbake did not
find a conf/bblayers.conf file in the expected location.
Maybe you accidentally invoked bitbake from the wrong directory?
DEBUG: Removed the following variables from the environment:
GNOME_DESKTOP_SESSION_ID, XDG_CURRENT_DESKTOP,
GNOME_KEYRING_CONTROL, DISPLAY, SSH_AGENT_PID, LANG, no_proxy,
XDG_SESSION_PATH, XAUTHORITY, SESSION_MANAGER, SHLVL,
MANDATORY_PATH, COMPIZ_CONFIG_PROFILE, WINDOWID, EDITOR,
GPG_AGENT_INFO, SSH_AUTH_SOCK, GDMSESSION, GNOME_KEYRING_PID,
XDG_SEAT_PATH, XDG_CONFIG_DIRS, LESSOPEN, DBUS_SESSION_BUS_ADDRESS,
_, XDG_SESSION_COOKIE, DESKTOP_SESSION, LESSCLOSE, DEFAULTS_PATH,
UBUNTU_MENUPROXY, OLDPWD, XDG_DATA_DIRS, COLORTERM, LS_COLORS
The majority of this output is specific to environment variables that
are not directly relevant to BitBake. However, the very first
message regarding the :term:`BBPATH` variable and the
``conf/bblayers.conf`` file is relevant.
When you run BitBake, it begins looking for metadata files. The
:term:`BBPATH` variable is what tells BitBake where
to look for those files. :term:`BBPATH` is not set and you need to set
it. Without :term:`BBPATH`, BitBake cannot find any configuration files
(``.conf``) or recipe files (``.bb``) at all. BitBake also cannot
find the ``bitbake.conf`` file.
#. **Setting BBPATH:** For this example, you can set :term:`BBPATH` in
the same manner that you set ``PATH`` earlier in the appendix. You
should realize, though, that it is much more flexible to set the
:term:`BBPATH` variable up in a configuration file for each project.
From your shell, enter the following commands to set and export the
:term:`BBPATH` variable::
$ BBPATH="projectdirectory"
$ export BBPATH
Use your actual project directory in the command. BitBake uses that
directory to find the metadata it needs for your project.
.. note::
When specifying your project directory, do not use the tilde
("~") character as BitBake does not expand that character as the
shell would.
#. **Run BitBake:** Now that you have :term:`BBPATH` defined, run the
``bitbake`` command again::
$ bitbake
ERROR: Traceback (most recent call last):
File "/home/scott-lenovo/bitbake/lib/bb/cookerdata.py", line 163, in wrapped
return func(fn, *args)
File "/home/scott-lenovo/bitbake/lib/bb/cookerdata.py", line 173, in parse_config_file
return bb.parse.handle(fn, data, include)
File "/home/scott-lenovo/bitbake/lib/bb/parse/__init__.py", line 99, in handle
return h['handle'](fn, data, include)
File "/home/scott-lenovo/bitbake/lib/bb/parse/parse_py/ConfHandler.py", line 120, in handle
abs_fn = resolve_file(fn, data)
File "/home/scott-lenovo/bitbake/lib/bb/parse/__init__.py", line 117, in resolve_file
raise IOError("file %s not found in %s" % (fn, bbpath))
IOError: file conf/bitbake.conf not found in /home/scott-lenovo/hello
ERROR: Unable to parse conf/bitbake.conf: file conf/bitbake.conf not found in /home/scott-lenovo/hello
This sample output shows that BitBake could not find the
``conf/bitbake.conf`` file in the project directory. This file is
the first thing BitBake must find in order to build a target. And,
since the project directory for this example is empty, you need to
provide a ``conf/bitbake.conf`` file.
#. **Creating conf/bitbake.conf:** The ``conf/bitbake.conf`` includes
a number of configuration variables BitBake uses for metadata and
recipe files. For this example, you need to create the file in your
project directory and define some key BitBake variables. For more
information on the ``bitbake.conf`` file, see
https://git.openembedded.org/bitbake/tree/conf/bitbake.conf.
Use the following commands to create the ``conf`` directory in the
project directory::
$ mkdir conf
From within the ``conf`` directory,
use some editor to create the ``bitbake.conf`` so that it contains
the following::
PN = "${@bb.parse.vars_from_file(d.getVar('FILE', False),d)[0] or 'defaultpkgname'}"
TMPDIR = "${TOPDIR}/tmp"
CACHE = "${TMPDIR}/cache"
STAMP = "${TMPDIR}/${PN}/stamps"
T = "${TMPDIR}/${PN}/work"
B = "${TMPDIR}/${PN}"
.. note::
Without a value for PN , the variables STAMP , T , and B , prevent more
than one recipe from working. You can fix this by either setting PN to
have a value similar to what OpenEmbedded and BitBake use in the default
bitbake.conf file (see previous example). Or, by manually updating each
recipe to set PN . You will also need to include PN as part of the STAMP
, T , and B variable definitions in the local.conf file.
The ``TMPDIR`` variable establishes a directory that BitBake uses
for build output and intermediate files other than the cached
information used by the
:ref:`bitbake-user-manual/bitbake-user-manual-execution:setscene`
process. Here, the ``TMPDIR`` directory is set to ``hello/tmp``.
.. tip::
You can always safely delete the tmp directory in order to rebuild a
BitBake target. The build process creates the directory for you when you
run BitBake.
For information about each of the other variables defined in this
example, check :term:`PN`, :term:`TOPDIR`, :term:`CACHE`, :term:`STAMP`,
:term:`T` or :term:`B` to take you to the definitions in the
glossary.
#. **Run BitBake:** After making sure that the ``conf/bitbake.conf`` file
exists, you can run the ``bitbake`` command again::
$ bitbake
ERROR: Traceback (most recent call last):
File "/home/scott-lenovo/bitbake/lib/bb/cookerdata.py", line 163, in wrapped
return func(fn, *args)
File "/home/scott-lenovo/bitbake/lib/bb/cookerdata.py", line 177, in _inherit
bb.parse.BBHandler.inherit(bbclass, "configuration INHERITs", 0, data)
File "/home/scott-lenovo/bitbake/lib/bb/parse/parse_py/BBHandler.py", line 92, in inherit
include(fn, file, lineno, d, "inherit")
File "/home/scott-lenovo/bitbake/lib/bb/parse/parse_py/ConfHandler.py", line 100, in include
raise ParseError("Could not %(error_out)s file %(fn)s" % vars(), oldfn, lineno)
ParseError: ParseError in configuration INHERITs: Could not inherit file classes/base.bbclass
ERROR: Unable to parse base: ParseError in configuration INHERITs: Could not inherit file classes/base.bbclass
In the sample output,
BitBake could not find the ``classes/base.bbclass`` file. You need
to create that file next.
#. **Creating classes/base.bbclass:** BitBake uses class files to
provide common code and functionality. The minimally required class
for BitBake is the ``classes/base.bbclass`` file. The ``base`` class
is implicitly inherited by every recipe. BitBake looks for the class
in the ``classes`` directory of the project (i.e ``hello/classes``
in this example).
Create the ``classes`` directory as follows::
$ cd $HOME/hello
$ mkdir classes
Move to the ``classes`` directory and then create the
``base.bbclass`` file by inserting this single line: addtask build
The minimal task that BitBake runs is the ``do_build`` task. This is
all the example needs in order to build the project. Of course, the
``base.bbclass`` can have much more depending on which build
environments BitBake is supporting.
#. **Run BitBake:** After making sure that the ``classes/base.bbclass``
file exists, you can run the ``bitbake`` command again::
$ bitbake
Nothing to do. Use 'bitbake world' to build everything, or run 'bitbake --help' for usage information.
BitBake is finally reporting
no errors. However, you can see that it really does not have
anything to do. You need to create a recipe that gives BitBake
something to do.
#. **Creating a Layer:** While it is not really necessary for such a
small example, it is good practice to create a layer in which to
keep your code separate from the general metadata used by BitBake.
Thus, this example creates and uses a layer called "mylayer".
.. note::
You can find additional information on layers in the
":ref:`bitbake-user-manual/bitbake-user-manual-intro:Layers`" section.
Minimally, you need a recipe file and a layer configuration file in
your layer. The configuration file needs to be in the ``conf``
directory inside the layer. Use these commands to set up the layer
and the ``conf`` directory::
$ cd $HOME
$ mkdir mylayer
$ cd mylayer
$ mkdir conf
Move to the ``conf`` directory and create a ``layer.conf`` file that has the
following::
BBPATH .= ":${LAYERDIR}"
BBFILES += "${LAYERDIR}/*.bb"
BBFILE_COLLECTIONS += "mylayer"
BBFILE_PATTERN_mylayer := "^${LAYERDIR_RE}/"
For information on these variables, click on :term:`BBFILES`,
:term:`LAYERDIR`, :term:`BBFILE_COLLECTIONS` or :term:`BBFILE_PATTERN_mylayer <BBFILE_PATTERN>`
to go to the definitions in the glossary.
You need to create the recipe file next. Inside your layer at the
top-level, use an editor and create a recipe file named
``printhello.bb`` that has the following::
DESCRIPTION = "Prints Hello World"
PN = 'printhello'
PV = '1'
python do_build() {
bb.plain("********************");
bb.plain("* *");
bb.plain("* Hello, World! *");
bb.plain("* *");
bb.plain("********************");
}
The recipe file simply provides
a description of the recipe, the name, version, and the ``do_build``
task, which prints out "Hello World" to the console. For more
information on :term:`DESCRIPTION`, :term:`PN` or :term:`PV`
follow the links to the glossary.
#. **Run BitBake With a Target:** Now that a BitBake target exists, run
the command and provide that target::
$ cd $HOME/hello
$ bitbake printhello
ERROR: no recipe files to build, check your BBPATH and BBFILES?
Summary: There was 1 ERROR message shown, returning a non-zero exit code.
We have created the layer with the recipe and
the layer configuration file but it still seems that BitBake cannot
find the recipe. BitBake needs a ``conf/bblayers.conf`` that lists
the layers for the project. Without this file, BitBake cannot find
the recipe.
#. **Creating conf/bblayers.conf:** BitBake uses the
``conf/bblayers.conf`` file to locate layers needed for the project.
This file must reside in the ``conf`` directory of the project (i.e.
``hello/conf`` for this example).
Set your working directory to the ``hello/conf`` directory and then
create the ``bblayers.conf`` file so that it contains the following::
BBLAYERS ?= " \
/home/<you>/mylayer \
"
You need to provide your own information for ``you`` in the file.
#. **Run BitBake With a Target:** Now that you have supplied the
``bblayers.conf`` file, run the ``bitbake`` command and provide the
target::
$ bitbake printhello
Parsing recipes: 100% |##################################################################################|
Time: 00:00:00
Parsing of 1 .bb files complete (0 cached, 1 parsed). 1 targets, 0 skipped, 0 masked, 0 errors.
NOTE: Resolving any missing task queue dependencies
NOTE: Preparing RunQueue
NOTE: Executing RunQueue Tasks
********************
* *
* Hello, World! *
* *
********************
NOTE: Tasks Summary: Attempted 1 tasks of which 0 didn't need to be rerun and all succeeded.
.. note::
After the first execution, re-running bitbake printhello again will not
result in a BitBake run that prints the same console output. The reason
for this is that the first time the printhello.bb recipe's do_build task
executes successfully, BitBake writes a stamp file for the task. Thus,
the next time you attempt to run the task using that same bitbake
command, BitBake notices the stamp and therefore determines that the task
does not need to be re-run. If you delete the tmp directory or run
bitbake -c clean printhello and then re-run the build, the "Hello,
World!" message will be printed again.

View File

@@ -0,0 +1,653 @@
.. SPDX-License-Identifier: CC-BY-2.5
========
Overview
========
|
Welcome to the BitBake User Manual. This manual provides information on
the BitBake tool. The information attempts to be as independent as
possible regarding systems that use BitBake, such as OpenEmbedded and
the Yocto Project. In some cases, scenarios or examples within the
context of a build system are used in the manual to help with
understanding. For these cases, the manual clearly states the context.
.. _intro:
Introduction
============
Fundamentally, BitBake is a generic task execution engine that allows
shell and Python tasks to be run efficiently and in parallel while
working within complex inter-task dependency constraints. One of
BitBake's main users, OpenEmbedded, takes this core and builds embedded
Linux software stacks using a task-oriented approach.
Conceptually, BitBake is similar to GNU Make in some regards but has
significant differences:
- BitBake executes tasks according to the provided metadata that builds up
the tasks. Metadata is stored in recipe (``.bb``) and related recipe
"append" (``.bbappend``) files, configuration (``.conf``) and
underlying include (``.inc``) files, and in class (``.bbclass``)
files. The metadata provides BitBake with instructions on what tasks
to run and the dependencies between those tasks.
- BitBake includes a fetcher library for obtaining source code from
various places such as local files, source control systems, or
websites.
- The instructions for each unit to be built (e.g. a piece of software)
are known as "recipe" files and contain all the information about the
unit (dependencies, source file locations, checksums, description and
so on).
- BitBake includes a client/server abstraction and can be used from a
command line or used as a service over XML-RPC and has several
different user interfaces.
History and Goals
=================
BitBake was originally a part of the OpenEmbedded project. It was
inspired by the Portage package management system used by the Gentoo
Linux distribution. On December 7, 2004, OpenEmbedded project team
member Chris Larson split the project into two distinct pieces:
- BitBake, a generic task executor
- OpenEmbedded, a metadata set utilized by BitBake
Today, BitBake is the primary basis of the
`OpenEmbedded <https://www.openembedded.org/>`__ project, which is being
used to build and maintain Linux distributions such as the `Poky
Reference Distribution <https://www.yoctoproject.org/software-item/poky/>`__,
developed under the umbrella of the `Yocto Project <https://www.yoctoproject.org>`__.
Prior to BitBake, no other build tool adequately met the needs of an
aspiring embedded Linux distribution. All of the build systems used by
traditional desktop Linux distributions lacked important functionality,
and none of the ad hoc Buildroot-based systems, prevalent in the
embedded space, were scalable or maintainable.
Some important original goals for BitBake were:
- Handle cross-compilation.
- Handle inter-package dependencies (build time on target architecture,
build time on native architecture, and runtime).
- Support running any number of tasks within a given package,
including, but not limited to, fetching upstream sources, unpacking
them, patching them, configuring them, and so forth.
- Be Linux distribution agnostic for both build and target systems.
- Be architecture agnostic.
- Support multiple build and target operating systems (e.g. Cygwin, the
BSDs, and so forth).
- Be self-contained, rather than tightly integrated into the build
machine's root filesystem.
- Handle conditional metadata on the target architecture, operating
system, distribution, and machine.
- Be easy to use the tools to supply local metadata and packages
against which to operate.
- Be easy to use BitBake to collaborate between multiple projects for
their builds.
- Provide an inheritance mechanism to share common metadata between
many packages.
Over time it became apparent that some further requirements were
necessary:
- Handle variants of a base recipe (e.g. native, sdk, and multilib).
- Split metadata into layers and allow layers to enhance or override
other layers.
- Allow representation of a given set of input variables to a task as a
checksum. Based on that checksum, allow acceleration of builds with
prebuilt components.
BitBake satisfies all the original requirements and many more with
extensions being made to the basic functionality to reflect the
additional requirements. Flexibility and power have always been the
priorities. BitBake is highly extensible and supports embedded Python
code and execution of any arbitrary tasks.
.. _Concepts:
Concepts
========
BitBake is a program written in the Python language. At the highest
level, BitBake interprets metadata, decides what tasks are required to
run, and executes those tasks. Similar to GNU Make, BitBake controls how
software is built. GNU Make achieves its control through "makefiles",
while BitBake uses "recipes".
BitBake extends the capabilities of a simple tool like GNU Make by
allowing for the definition of much more complex tasks, such as
assembling entire embedded Linux distributions.
The remainder of this section introduces several concepts that should be
understood in order to better leverage the power of BitBake.
Recipes
-------
BitBake Recipes, which are denoted by the file extension ``.bb``, are
the most basic metadata files. These recipe files provide BitBake with
the following:
- Descriptive information about the package (author, homepage, license,
and so on)
- The version of the recipe
- Existing dependencies (both build and runtime dependencies)
- Where the source code resides and how to fetch it
- Whether the source code requires any patches, where to find them, and
how to apply them
- How to configure and compile the source code
- How to assemble the generated artifacts into one or more installable
packages
- Where on the target machine to install the package or packages
created
Within the context of BitBake, or any project utilizing BitBake as its
build system, files with the ``.bb`` extension are referred to as
recipes.
.. note::
The term "package" is also commonly used to describe recipes.
However, since the same word is used to describe packaged output from
a project, it is best to maintain a single descriptive term -
"recipes". Put another way, a single "recipe" file is quite capable
of generating a number of related but separately installable
"packages". In fact, that ability is fairly common.
Configuration Files
-------------------
Configuration files, which are denoted by the ``.conf`` extension,
define various configuration variables that govern the project's build
process. These files fall into several areas that define machine
configuration, distribution configuration, possible compiler tuning,
general common configuration, and user configuration. The main
configuration file is the sample ``bitbake.conf`` file, which is located
within the BitBake source tree ``conf`` directory.
Classes
-------
Class files, which are denoted by the ``.bbclass`` extension, contain
information that is useful to share between metadata files. The BitBake
source tree currently comes with one class metadata file called
``base.bbclass``. You can find this file in the ``classes`` directory.
The ``base.bbclass`` class files is special since it is always included
automatically for all recipes and classes. This class contains
definitions for standard basic tasks such as fetching, unpacking,
configuring (empty by default), compiling (runs any Makefile present),
installing (empty by default) and packaging (empty by default). These
tasks are often overridden or extended by other classes added during the
project development process.
Layers
------
Layers allow you to isolate different types of customizations from each
other. While you might find it tempting to keep everything in one layer
when working on a single project, the more modular your metadata, the
easier it is to cope with future changes.
To illustrate how you can use layers to keep things modular, consider
customizations you might make to support a specific target machine.
These types of customizations typically reside in a special layer,
rather than a general layer, called a Board Support Package (BSP) layer.
Furthermore, the machine customizations should be isolated from recipes
and metadata that support a new GUI environment, for example. This
situation gives you a couple of layers: one for the machine
configurations and one for the GUI environment. It is important to
understand, however, that the BSP layer can still make machine-specific
additions to recipes within the GUI environment layer without polluting
the GUI layer itself with those machine-specific changes. You can
accomplish this through a recipe that is a BitBake append
(``.bbappend``) file.
.. _append-bbappend-files:
Append Files
------------
Append files, which are files that have the ``.bbappend`` file
extension, extend or override information in an existing recipe file.
BitBake expects every append file to have a corresponding recipe file.
Furthermore, the append file and corresponding recipe file must use the
same root filename. The filenames can differ only in the file type
suffix used (e.g. ``formfactor_0.0.bb`` and
``formfactor_0.0.bbappend``).
Information in append files extends or overrides the information in the
underlying, similarly-named recipe files.
When you name an append file, you can use the "``%``" wildcard character
to allow for matching recipe names. For example, suppose you have an
append file named as follows::
busybox_1.21.%.bbappend
That append file
would match any ``busybox_1.21.``\ x\ ``.bb`` version of the recipe. So,
the append file would match the following recipe names::
busybox_1.21.1.bb
busybox_1.21.2.bb
busybox_1.21.3.bb
.. note::
The use of the " % " character is limited in that it only works directly in
front of the .bbappend portion of the append file's name. You cannot use the
wildcard character in any other location of the name.
If the ``busybox`` recipe was updated to ``busybox_1.3.0.bb``, the
append name would not match. However, if you named the append file
``busybox_1.%.bbappend``, then you would have a match.
In the most general case, you could name the append file something as
simple as ``busybox_%.bbappend`` to be entirely version independent.
Obtaining BitBake
=================
You can obtain BitBake several different ways:
- **Cloning BitBake:** Using Git to clone the BitBake source code
repository is the recommended method for obtaining BitBake. Cloning
the repository makes it easy to get bug fixes and have access to
stable branches and the master branch. Once you have cloned BitBake,
you should use the latest stable branch for development since the
master branch is for BitBake development and might contain less
stable changes.
You usually need a version of BitBake that matches the metadata you
are using. The metadata is generally backwards compatible but not
forward compatible.
Here is an example that clones the BitBake repository::
$ git clone git://git.openembedded.org/bitbake
This command clones the BitBake
Git repository into a directory called ``bitbake``. Alternatively,
you can designate a directory after the ``git clone`` command if you
want to call the new directory something other than ``bitbake``. Here
is an example that names the directory ``bbdev``::
$ git clone git://git.openembedded.org/bitbake bbdev
- **Installation using your Distribution Package Management System:**
This method is not recommended because the BitBake version that is
provided by your distribution, in most cases, is several releases
behind a snapshot of the BitBake repository.
- **Taking a snapshot of BitBake:** Downloading a snapshot of BitBake
from the source code repository gives you access to a known branch or
release of BitBake.
.. note::
Cloning the Git repository, as described earlier, is the preferred
method for getting BitBake. Cloning the repository makes it easier
to update as patches are added to the stable branches.
The following example downloads a snapshot of BitBake version 1.17.0::
$ wget https://git.openembedded.org/bitbake/snapshot/bitbake-1.17.0.tar.gz
$ tar zxpvf bitbake-1.17.0.tar.gz
After extraction of the tarball using
the tar utility, you have a directory entitled ``bitbake-1.17.0``.
- **Using the BitBake that Comes With Your Build Checkout:** A final
possibility for getting a copy of BitBake is that it already comes
with your checkout of a larger BitBake-based build system, such as
Poky. Rather than manually checking out individual layers and gluing
them together yourself, you can check out an entire build system. The
checkout will already include a version of BitBake that has been
thoroughly tested for compatibility with the other components. For
information on how to check out a particular BitBake-based build
system, consult that build system's supporting documentation.
.. _bitbake-user-manual-command:
The BitBake Command
===================
The ``bitbake`` command is the primary interface to the BitBake tool.
This section presents the BitBake command syntax and provides several
execution examples.
Usage and syntax
----------------
Following is the usage and syntax for BitBake::
$ bitbake -h
Usage: bitbake [options] [recipename/target recipe:do_task ...]
Executes the specified task (default is 'build') for a given set of target recipes (.bb files).
It is assumed there is a conf/bblayers.conf available in cwd or in BBPATH which
will provide the layer, BBFILES and other configuration information.
Options:
--version show program's version number and exit
-h, --help show this help message and exit
-b BUILDFILE, --buildfile=BUILDFILE
Execute tasks from a specific .bb recipe directly.
WARNING: Does not handle any dependencies from other
recipes.
-k, --continue Continue as much as possible after an error. While the
target that failed and anything depending on it cannot
be built, as much as possible will be built before
stopping.
-f, --force Force the specified targets/task to run (invalidating
any existing stamp file).
-c CMD, --cmd=CMD Specify the task to execute. The exact options
available depend on the metadata. Some examples might
be 'compile' or 'populate_sysroot' or 'listtasks' may
give a list of the tasks available.
-C INVALIDATE_STAMP, --clear-stamp=INVALIDATE_STAMP
Invalidate the stamp for the specified task such as
'compile' and then run the default task for the
specified target(s).
-r PREFILE, --read=PREFILE
Read the specified file before bitbake.conf.
-R POSTFILE, --postread=POSTFILE
Read the specified file after bitbake.conf.
-v, --verbose Enable tracing of shell tasks (with 'set -x'). Also
print bb.note(...) messages to stdout (in addition to
writing them to ${T}/log.do_&lt;task&gt;).
-D, --debug Increase the debug level. You can specify this more
than once. -D sets the debug level to 1, where only
bb.debug(1, ...) messages are printed to stdout; -DD
sets the debug level to 2, where both bb.debug(1, ...)
and bb.debug(2, ...) messages are printed; etc.
Without -D, no debug messages are printed. Note that
-D only affects output to stdout. All debug messages
are written to ${T}/log.do_taskname, regardless of the
debug level.
-q, --quiet Output less log message data to the terminal. You can
specify this more than once.
-n, --dry-run Don't execute, just go through the motions.
-S SIGNATURE_HANDLER, --dump-signatures=SIGNATURE_HANDLER
Dump out the signature construction information, with
no task execution. The SIGNATURE_HANDLER parameter is
passed to the handler. Two common values are none and
printdiff but the handler may define more/less. none
means only dump the signature, printdiff means compare
the dumped signature with the cached one.
-p, --parse-only Quit after parsing the BB recipes.
-s, --show-versions Show current and preferred versions of all recipes.
-e, --environment Show the global or per-recipe environment complete
with information about where variables were
set/changed.
-g, --graphviz Save dependency tree information for the specified
targets in the dot syntax.
-I EXTRA_ASSUME_PROVIDED, --ignore-deps=EXTRA_ASSUME_PROVIDED
Assume these dependencies don't exist and are already
provided (equivalent to ASSUME_PROVIDED). Useful to
make dependency graphs more appealing
-l DEBUG_DOMAINS, --log-domains=DEBUG_DOMAINS
Show debug logging for the specified logging domains
-P, --profile Profile the command and save reports.
-u UI, --ui=UI The user interface to use (knotty, ncurses, taskexp or
teamcity - default knotty).
--token=XMLRPCTOKEN Specify the connection token to be used when
connecting to a remote server.
--revisions-changed Set the exit code depending on whether upstream
floating revisions have changed or not.
--server-only Run bitbake without a UI, only starting a server
(cooker) process.
-B BIND, --bind=BIND The name/address for the bitbake xmlrpc server to bind
to.
-T SERVER_TIMEOUT, --idle-timeout=SERVER_TIMEOUT
Set timeout to unload bitbake server due to
inactivity, set to -1 means no unload, default:
Environment variable BB_SERVER_TIMEOUT.
--no-setscene Do not run any setscene tasks. sstate will be ignored
and everything needed, built.
--skip-setscene Skip setscene tasks if they would be executed. Tasks
previously restored from sstate will be kept, unlike
--no-setscene
--setscene-only Only run setscene tasks, don't run any real tasks.
--remote-server=REMOTE_SERVER
Connect to the specified server.
-m, --kill-server Terminate any running bitbake server.
--observe-only Connect to a server as an observing-only client.
--status-only Check the status of the remote bitbake server.
-w WRITEEVENTLOG, --write-log=WRITEEVENTLOG
Writes the event log of the build to a bitbake event
json file. Use '' (empty string) to assign the name
automatically.
--runall=RUNALL Run the specified task for any recipe in the taskgraph
of the specified target (even if it wouldn't otherwise
have run).
--runonly=RUNONLY Run only the specified task within the taskgraph of
the specified targets (and any task dependencies those
tasks may have).
.. _bitbake-examples:
Examples
--------
This section presents some examples showing how to use BitBake.
.. _example-executing-a-task-against-a-single-recipe:
Executing a Task Against a Single Recipe
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Executing tasks for a single recipe file is relatively simple. You
specify the file in question, and BitBake parses it and executes the
specified task. If you do not specify a task, BitBake executes the
default task, which is "build". BitBake obeys inter-task dependencies
when doing so.
The following command runs the build task, which is the default task, on
the ``foo_1.0.bb`` recipe file::
$ bitbake -b foo_1.0.bb
The following command runs the clean task on the ``foo.bb`` recipe file::
$ bitbake -b foo.bb -c clean
.. note::
The "-b" option explicitly does not handle recipe dependencies. Other
than for debugging purposes, it is instead recommended that you use
the syntax presented in the next section.
Executing Tasks Against a Set of Recipe Files
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
There are a number of additional complexities introduced when one wants
to manage multiple ``.bb`` files. Clearly there needs to be a way to
tell BitBake what files are available and, of those, which you want to
execute. There also needs to be a way for each recipe to express its
dependencies, both for build-time and runtime. There must be a way for
you to express recipe preferences when multiple recipes provide the same
functionality, or when there are multiple versions of a recipe.
The ``bitbake`` command, when not using "--buildfile" or "-b" only
accepts a "PROVIDES". You cannot provide anything else. By default, a
recipe file generally "PROVIDES" its "packagename" as shown in the
following example::
$ bitbake foo
This next example "PROVIDES" the
package name and also uses the "-c" option to tell BitBake to just
execute the ``do_clean`` task::
$ bitbake -c clean foo
Executing a List of Task and Recipe Combinations
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
The BitBake command line supports specifying different tasks for
individual targets when you specify multiple targets. For example,
suppose you had two targets (or recipes) ``myfirstrecipe`` and
``mysecondrecipe`` and you needed BitBake to run ``taskA`` for the first
recipe and ``taskB`` for the second recipe::
$ bitbake myfirstrecipe:do_taskA mysecondrecipe:do_taskB
Generating Dependency Graphs
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
BitBake is able to generate dependency graphs using the ``dot`` syntax.
You can convert these graphs into images using the ``dot`` tool from
`Graphviz <http://www.graphviz.org>`__.
When you generate a dependency graph, BitBake writes two files to the
current working directory:
- ``task-depends.dot``: Shows dependencies between tasks. These
dependencies match BitBake's internal task execution list.
- ``pn-buildlist``: Shows a simple list of targets that are to be
built.
To stop depending on common depends, use the ``-I`` depend option and
BitBake omits them from the graph. Leaving this information out can
produce more readable graphs. This way, you can remove from the graph
:term:`DEPENDS` from inherited classes such as ``base.bbclass``.
Here are two examples that create dependency graphs. The second example
omits depends common in OpenEmbedded from the graph::
$ bitbake -g foo
$ bitbake -g -I virtual/kernel -I eglibc foo
Executing a Multiple Configuration Build
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
BitBake is able to build multiple images or packages using a single
command where the different targets require different configurations
(multiple configuration builds). Each target, in this scenario, is
referred to as a "multiconfig".
To accomplish a multiple configuration build, you must define each
target's configuration separately using a parallel configuration file in
the build directory. The location for these multiconfig configuration
files is specific. They must reside in the current build directory in a
sub-directory of ``conf`` named ``multiconfig``. Following is an example
for two separate targets:
.. image:: figures/bb_multiconfig_files.png
:align: center
The reason for this required file hierarchy is because the :term:`BBPATH`
variable is not constructed until the layers are parsed. Consequently,
using the configuration file as a pre-configuration file is not possible
unless it is located in the current working directory.
Minimally, each configuration file must define the machine and the
temporary directory BitBake uses for the build. Suggested practice
dictates that you do not overlap the temporary directories used during
the builds.
Aside from separate configuration files for each target, you must also
enable BitBake to perform multiple configuration builds. Enabling is
accomplished by setting the
:term:`BBMULTICONFIG` variable in the
``local.conf`` configuration file. As an example, suppose you had
configuration files for ``target1`` and ``target2`` defined in the build
directory. The following statement in the ``local.conf`` file both
enables BitBake to perform multiple configuration builds and specifies
the two extra multiconfigs::
BBMULTICONFIG = "target1 target2"
Once the target configuration files are in place and BitBake has been
enabled to perform multiple configuration builds, use the following
command form to start the builds::
$ bitbake [mc:multiconfigname:]target [[[mc:multiconfigname:]target] ... ]
Here is an example for two extra multiconfigs: ``target1`` and ``target2``::
$ bitbake mc::target mc:target1:target mc:target2:target
.. _bb-enabling-multiple-configuration-build-dependencies:
Enabling Multiple Configuration Build Dependencies
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Sometimes dependencies can exist between targets (multiconfigs) in a
multiple configuration build. For example, suppose that in order to
build an image for a particular architecture, the root filesystem of
another build for a different architecture needs to exist. In other
words, the image for the first multiconfig depends on the root
filesystem of the second multiconfig. This dependency is essentially
that the task in the recipe that builds one multiconfig is dependent on
the completion of the task in the recipe that builds another
multiconfig.
To enable dependencies in a multiple configuration build, you must
declare the dependencies in the recipe using the following statement
form::
task_or_package[mcdepends] = "mc:from_multiconfig:to_multiconfig:recipe_name:task_on_which_to_depend"
To better show how to use this statement, consider an example with two
multiconfigs: ``target1`` and ``target2``::
image_task[mcdepends] = "mc:target1:target2:image2:rootfs_task"
In this example, the
``from_multiconfig`` is "target1" and the ``to_multiconfig`` is "target2". The
task on which the image whose recipe contains image_task depends on the
completion of the rootfs_task used to build out image2, which is
associated with the "target2" multiconfig.
Once you set up this dependency, you can build the "target1" multiconfig
using a BitBake command as follows::
$ bitbake mc:target1:image1
This command executes all the tasks needed to create ``image1`` for the "target1"
multiconfig. Because of the dependency, BitBake also executes through
the ``rootfs_task`` for the "target2" multiconfig build.
Having a recipe depend on the root filesystem of another build might not
seem that useful. Consider this change to the statement in the image1
recipe::
image_task[mcdepends] = "mc:target1:target2:image2:image_task"
In this case, BitBake must create ``image2`` for the "target2" build since
the "target1" build depends on it.
Because "target1" and "target2" are enabled for multiple configuration
builds and have separate configuration files, BitBake places the
artifacts for each build in the respective temporary build directories.

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.0 KiB

142
bitbake/doc/bitbake.1 Normal file
View File

@@ -0,0 +1,142 @@
.\" Hey, EMACS: -*- nroff -*-
.\" First parameter, NAME, should be all caps
.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
.\" other parameters are allowed: see man(7), man(1)
.TH BITBAKE 1 "November 19, 2006"
.\" Please adjust this date whenever revising the manpage.
.\"
.\" Some roff macros, for reference:
.\" .nh disable hyphenation
.\" .hy enable hyphenation
.\" .ad l left justify
.\" .ad b justify to both left and right margins
.\" .nf disable filling
.\" .fi enable filling
.\" .br insert line break
.\" .sp <n> insert n+1 empty lines
.\" for manpage-specific macros, see man(7)
.SH NAME
BitBake \- simple tool for the execution of tasks
.SH SYNOPSIS
.B bitbake
.RI [ options ] " packagenames"
.br
.SH DESCRIPTION
This manual page documents briefly the
.B bitbake
command.
.PP
.\" TeX users may be more comfortable with the \fB<whatever>\fP and
.\" \fI<whatever>\fP escape sequences to invode bold face and italics,
.\" respectively.
\fBbitbake\fP is a program that executes the specified task (default is 'build')
for a given set of BitBake files.
.br
It expects that BBFILES is defined, which is a space separated list of files to
be executed. BBFILES does support wildcards.
.br
Default BBFILES are the .bb files in the current directory.
.SH OPTIONS
This program follow the usual GNU command line syntax, with long
options starting with two dashes (`-').
.TP
.B \-h, \-\-help
Show summary of options.
.TP
.B \-\-version
Show version of program.
.TP
.B \-bBUILDFILE, \-\-buildfile=BUILDFILE
execute the task against this .bb file, rather than a package from BBFILES.
.TP
.B \-k, \-\-continue
continue as much as possible after an error. While the target that failed, and
those that depend on it, cannot be remade, the other dependencies of these
targets can be processed all the same.
.TP
.B \-a, \-\-tryaltconfigs
continue with builds by trying to use alternative providers where possible.
.TP
.B \-f, \-\-force
force run of specified cmd, regardless of stamp status
.TP
.B \-i, \-\-interactive
drop into the interactive mode also called the BitBake shell.
.TP
.B \-cCMD, \-\-cmd=CMD
Specify task to execute. Note that this only executes the specified task for
the providee and the packages it depends on, i.e. 'compile' does not implicitly
call stage for the dependencies (IOW: use only if you know what you are doing).
Depending on the base.bbclass a listtasks task is defined and will show
available tasks.
.TP
.B \-rFILE, \-\-read=FILE
read the specified file before bitbake.conf
.TP
.B \-v, \-\-verbose
output more chit-chat to the terminal
.TP
.B \-D, \-\-debug
Increase the debug level. You can specify this more than once.
.TP
.B \-n, \-\-dry-run
don't execute, just go through the motions
.TP
.B \-p, \-\-parse-only
quit after parsing the BB files (developers only)
.TP
.B \-s, \-\-show-versions
show current and preferred versions of all packages
.TP
.B \-e, \-\-environment
show the global or per-recipe environment (this is what used to be bbread)
.TP
.B \-g, \-\-graphviz
emit the dependency trees of the specified packages in the dot syntax
.TP
.B \-IIGNORED\_DOT\_DEPS, \-\-ignore-deps=IGNORED_DOT_DEPS
Stop processing at the given list of dependencies when generating dependency
graphs. This can help to make the graph more appealing
.TP
.B \-lDEBUG_DOMAINS, \-\-log-domains=DEBUG_DOMAINS
Show debug logging for the specified logging domains
.TP
.B \-P, \-\-profile
profile the command and print a report
.TP
.B \-uUI, \-\-ui=UI
User interface to use. Currently, knotty, taskexp or ncurses can be specified as UI.
.TP
.B \-tSERVERTYPE, \-\-servertype=SERVERTYPE
Choose which server to use, none, process or xmlrpc.
.TP
.B \-\-revisions-changed
Set the exit code depending on whether upstream floating revisions have changed or not.
.TP
.B \-\-server-only
Run bitbake without UI, the frontend can connect with bitbake server itself.
.TP
.B \-BBIND, \-\-bind=BIND
The name/address for the bitbake server to bind to.
.TP
.B \-\-no\-setscene
Do not run any setscene tasks, forces builds.
.SH ENVIRONMENT VARIABLES
bitbake uses the following environment variables to control its
operation:
.TP
.B BITBAKE_UI
The bitbake user interface; overridden by the \fB-u\fP commandline option.
.SH AUTHORS
BitBake was written by
Phil Blundell,
Holger Freyther,
Chris Larson,
Mickey Lauer,
Richard Purdie,
Holger Schurig
.PP
This manual page was written by Marcin Juszkiewicz <marcin@hrw.one.pl>
for the Debian project (but may be used by others).

101
bitbake/doc/conf.py Normal file
View File

@@ -0,0 +1,101 @@
# Configuration file for the Sphinx documentation builder.
#
# This file only contains a selection of the most common options. For a full
# list see the documentation:
# https://www.sphinx-doc.org/en/master/usage/configuration.html
# -- Path setup --------------------------------------------------------------
# If extensions (or modules to document with autodoc) are in another directory,
# add these directories to sys.path here. If the directory is relative to the
# documentation root, use os.path.abspath to make it absolute, like shown here.
#
# import os
# import sys
# sys.path.insert(0, os.path.abspath('.'))
import sys
import datetime
current_version = "dev"
# String used in sidebar
version = 'Version: ' + current_version
if current_version == 'dev':
version = 'Version: Current Development'
# Version seen in documentation_options.js and hence in js switchers code
release = current_version
# -- Project information -----------------------------------------------------
project = 'Bitbake'
copyright = '2004-%s, Richard Purdie, Chris Larson, and Phil Blundell' \
% datetime.datetime.now().year
author = 'Richard Purdie, Chris Larson, and Phil Blundell'
# external links and substitutions
extlinks = {
'yocto_docs': ('https://docs.yoctoproject.org%s', None),
'oe_lists': ('https://lists.openembedded.org%s', None),
}
# -- General configuration ---------------------------------------------------
# Add any Sphinx extension module names here, as strings. They can be
# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
# ones.
extensions = [
'sphinx.ext.autosectionlabel',
'sphinx.ext.extlinks',
]
autosectionlabel_prefix_document = True
# Add any paths that contain templates here, relative to this directory.
templates_path = ['_templates']
# List of patterns, relative to source directory, that match files and
# directories to ignore when looking for source files.
# This pattern also affects html_static_path and html_extra_path.
exclude_patterns = ['_build', 'Thumbs.db', '.DS_Store']
# master document name. The default changed from contents to index. so better
# set it ourselves.
master_doc = 'index'
# create substitution for project configuration variables
rst_prolog = """
.. |project_name| replace:: %s
.. |copyright| replace:: %s
.. |author| replace:: %s
""" % (project, copyright, author)
# -- Options for HTML output -------------------------------------------------
# The theme to use for HTML and HTML Help pages. See the documentation for
# a list of builtin themes.
#
try:
import sphinx_rtd_theme
html_theme = 'sphinx_rtd_theme'
except ImportError:
sys.stderr.write("The Sphinx sphinx_rtd_theme HTML theme was not found.\
\nPlease make sure to install the sphinx_rtd_theme python package.\n")
sys.exit(1)
# Add any paths that contain custom static files (such as style sheets) here,
# relative to this directory. They are copied after the builtin static files,
# so a file named "default.css" will overwrite the builtin "default.css".
html_static_path = ['sphinx-static']
# Add customm CSS and JS files
html_css_files = ['theme_overrides.css']
html_js_files = ['switchers.js']
# Hide 'Created using Sphinx' text
html_show_sphinx = False
# Add 'Last updated' on each page
html_last_updated_fmt = '%b %d, %Y'
# Remove the trailing 'dot' in section numbers
html_secnumber_suffix = " "

3
bitbake/doc/genindex.rst Normal file
View File

@@ -0,0 +1,3 @@
=====
Index
=====

38
bitbake/doc/index.rst Normal file
View File

@@ -0,0 +1,38 @@
.. SPDX-License-Identifier: CC-BY-2.5
===================
BitBake User Manual
===================
|
.. toctree::
:caption: Table of Contents
:numbered:
bitbake-user-manual/bitbake-user-manual-intro
bitbake-user-manual/bitbake-user-manual-execution
bitbake-user-manual/bitbake-user-manual-metadata
bitbake-user-manual/bitbake-user-manual-fetching
bitbake-user-manual/bitbake-user-manual-ref-variables
bitbake-user-manual/bitbake-user-manual-hello
.. toctree::
:maxdepth: 1
:hidden:
genindex
releases
----
.. include:: <xhtml1-lat1.txt>
| BitBake Community
| Copyright |copy| |copyright|
| <bitbake-devel@lists.openembedded.org>
This work is licensed under the Creative Commons Attribution License. To view a
copy of this license, visit http://creativecommons.org/licenses/by/2.5/ or send
a letter to Creative Commons, 444 Castro Street, Suite 900, Mountain View,
California 94041, USA.

172
bitbake/doc/releases.rst Normal file
View File

@@ -0,0 +1,172 @@
.. SPDX-License-Identifier: CC-BY-2.5
===========================
Supported Release Manuals
===========================
******************************
Release Series 3.4 (honister)
******************************
- :yocto_docs:`3.4 BitBake User Manual </3.4/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`3.4.1 BitBake User Manual </3.4.1/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`3.4.2 BitBake User Manual </3.4.2/bitbake-user-manual/bitbake-user-manual.html>`
******************************
Release Series 3.3 (hardknott)
******************************
- :yocto_docs:`3.3 BitBake User Manual </3.3/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`3.3.1 BitBake User Manual </3.3.1/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`3.3.2 BitBake User Manual </3.3.2/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`3.3.3 BitBake User Manual </3.3.3/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`3.3.4 BitBake User Manual </3.3.4/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`3.3.5 BitBake User Manual </3.3.5/bitbake-user-manual/bitbake-user-manual.html>`
****************************
Release Series 3.1 (dunfell)
****************************
- :yocto_docs:`3.1 BitBake User Manual </3.1/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`3.1.1 BitBake User Manual </3.1.1/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`3.1.2 BitBake User Manual </3.1.2/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`3.1.3 BitBake User Manual </3.1.3/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`3.1.4 BitBake User Manual </3.1.4/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`3.1.5 BitBake User Manual </3.1.5/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`3.1.6 BitBake User Manual </3.1.6/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`3.1.7 BitBake User Manual </3.1.7/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`3.1.8 BitBake User Manual </3.1.8/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`3.1.9 BitBake User Manual </3.1.9/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`3.1.10 BitBake User Manual </3.1.10/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`3.1.11 BitBake User Manual </3.1.11/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`3.1.12 BitBake User Manual </3.1.12/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`3.1.13 BitBake User Manual </3.1.13/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`3.1.14 BitBake User Manual </3.1.14/bitbake-user-manual/bitbake-user-manual.html>`
==========================
Outdated Release Manuals
==========================
*******************************
Release Series 3.2 (gatesgarth)
*******************************
- :yocto_docs:`3.2 BitBake User Manual </3.2/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`3.2.1 BitBake User Manual </3.2.1/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`3.2.2 BitBake User Manual </3.2.2/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`3.2.3 BitBake User Manual </3.2.3/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`3.2.4 BitBake User Manual </3.2.4/bitbake-user-manual/bitbake-user-manual.html>`
*************************
Release Series 3.0 (zeus)
*************************
- :yocto_docs:`3.0 BitBake User Manual </3.0/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`3.0.1 BitBake User Manual </3.0.1/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`3.0.2 BitBake User Manual </3.0.2/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`3.0.3 BitBake User Manual </3.0.3/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`3.0.4 BitBake User Manual </3.0.4/bitbake-user-manual/bitbake-user-manual.html>`
****************************
Release Series 2.7 (warrior)
****************************
- :yocto_docs:`2.7 BitBake User Manual </2.7/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`2.7.1 BitBake User Manual </2.7.1/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`2.7.2 BitBake User Manual </2.7.2/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`2.7.3 BitBake User Manual </2.7.3/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`2.7.4 BitBake User Manual </2.7.4/bitbake-user-manual/bitbake-user-manual.html>`
*************************
Release Series 2.6 (thud)
*************************
- :yocto_docs:`2.6 BitBake User Manual </2.6/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`2.6.1 BitBake User Manual </2.6.1/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`2.6.2 BitBake User Manual </2.6.2/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`2.6.3 BitBake User Manual </2.6.3/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`2.6.4 BitBake User Manual </2.6.4/bitbake-user-manual/bitbake-user-manual.html>`
*************************
Release Series 2.5 (sumo)
*************************
- :yocto_docs:`2.5 Documentation </2.5>`
- :yocto_docs:`2.5.1 Documentation </2.5.1>`
- :yocto_docs:`2.5.2 Documentation </2.5.2>`
- :yocto_docs:`2.5.3 Documentation </2.5.3>`
**************************
Release Series 2.4 (rocko)
**************************
- :yocto_docs:`2.4 BitBake User Manual </2.4/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`2.4.1 BitBake User Manual </2.4.1/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`2.4.2 BitBake User Manual </2.4.2/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`2.4.3 BitBake User Manual </2.4.3/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`2.4.4 BitBake User Manual </2.4.4/bitbake-user-manual/bitbake-user-manual.html>`
*************************
Release Series 2.3 (pyro)
*************************
- :yocto_docs:`2.3 BitBake User Manual </2.3/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`2.3.1 BitBake User Manual </2.3.1/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`2.3.2 BitBake User Manual </2.3.2/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`2.3.3 BitBake User Manual </2.3.3/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`2.3.4 BitBake User Manual </2.3.4/bitbake-user-manual/bitbake-user-manual.html>`
**************************
Release Series 2.2 (morty)
**************************
- :yocto_docs:`2.2 BitBake User Manual </2.2/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`2.2.1 BitBake User Manual </2.2.1/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`2.2.2 BitBake User Manual </2.2.2/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`2.2.3 BitBake User Manual </2.2.3/bitbake-user-manual/bitbake-user-manual.html>`
****************************
Release Series 2.1 (krogoth)
****************************
- :yocto_docs:`2.1 BitBake User Manual </2.1/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`2.1.1 BitBake User Manual </2.1.1/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`2.1.2 BitBake User Manual </2.1.2/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`2.1.3 BitBake User Manual </2.1.3/bitbake-user-manual/bitbake-user-manual.html>`
***************************
Release Series 2.0 (jethro)
***************************
- :yocto_docs:`1.9 BitBake User Manual </1.9/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`2.0 BitBake User Manual </2.0/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`2.0.1 BitBake User Manual </2.0.1/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`2.0.2 BitBake User Manual </2.0.2/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`2.0.3 BitBake User Manual </2.0.3/bitbake-user-manual/bitbake-user-manual.html>`
*************************
Release Series 1.8 (fido)
*************************
- :yocto_docs:`1.8 BitBake User Manual </1.8/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`1.8.1 BitBake User Manual </1.8.1/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`1.8.2 BitBake User Manual </1.8.2/bitbake-user-manual/bitbake-user-manual.html>`
**************************
Release Series 1.7 (dizzy)
**************************
- :yocto_docs:`1.7 BitBake User Manual </1.7/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`1.7.1 BitBake User Manual </1.7.1/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`1.7.2 BitBake User Manual </1.7.2/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`1.7.3 BitBake User Manual </1.7.3/bitbake-user-manual/bitbake-user-manual.html>`
**************************
Release Series 1.6 (daisy)
**************************
- :yocto_docs:`1.6 BitBake User Manual </1.6/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`1.6.1 BitBake User Manual </1.6.1/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`1.6.2 BitBake User Manual </1.6.2/bitbake-user-manual/bitbake-user-manual.html>`
- :yocto_docs:`1.6.3 BitBake User Manual </1.6.3/bitbake-user-manual/bitbake-user-manual.html>`

View File

@@ -0,0 +1,233 @@
(function() {
'use strict';
var all_versions = {
'dev': 'dev (3.2)',
'3.1.2': '3.1.2',
'3.0.3': '3.0.3',
'2.7.4': '2.7.4',
};
var all_doctypes = {
'single': 'Individual Webpages',
'mega': "All-in-one 'Mega' Manual",
};
// Simple version comparision
// Return 1 if a > b
// Return -1 if a < b
// Return 0 if a == b
function ver_compare(a, b) {
if (a == "dev") {
return 1;
}
if (a === b) {
return 0;
}
var a_components = a.split(".");
var b_components = b.split(".");
var len = Math.min(a_components.length, b_components.length);
// loop while the components are equal
for (var i = 0; i < len; i++) {
// A bigger than B
if (parseInt(a_components[i]) > parseInt(b_components[i])) {
return 1;
}
// B bigger than A
if (parseInt(a_components[i]) < parseInt(b_components[i])) {
return -1;
}
}
// If one's a prefix of the other, the longer one is greater.
if (a_components.length > b_components.length) {
return 1;
}
if (a_components.length < b_components.length) {
return -1;
}
// Otherwise they are the same.
return 0;
}
function build_version_select(current_series, current_version) {
var buf = ['<select>'];
$.each(all_versions, function(version, title) {
var series = version.substr(0, 3);
if (series == current_series) {
if (version == current_version)
buf.push('<option value="' + version + '" selected="selected">' + title + '</option>');
else
buf.push('<option value="' + version + '">' + title + '</option>');
if (version != current_version)
buf.push('<option value="' + current_version + '" selected="selected">' + current_version + '</option>');
} else {
buf.push('<option value="' + version + '">' + title + '</option>');
}
});
buf.push('</select>');
return buf.join('');
}
function build_doctype_select(current_doctype) {
var buf = ['<select>'];
$.each(all_doctypes, function(doctype, title) {
if (doctype == current_doctype)
buf.push('<option value="' + doctype + '" selected="selected">' +
all_doctypes[current_doctype] + '</option>');
else
buf.push('<option value="' + doctype + '">' + title + '</option>');
});
if (!(current_doctype in all_doctypes)) {
// In case we're browsing a doctype that is not yet in all_doctypes.
buf.push('<option value="' + current_doctype + '" selected="selected">' +
current_doctype + '</option>');
all_doctypes[current_doctype] = current_doctype;
}
buf.push('</select>');
return buf.join('');
}
function navigate_to_first_existing(urls) {
// Navigate to the first existing URL in urls.
var url = urls.shift();
// Web browsers won't redirect file:// urls to file urls using ajax but
// its useful for local testing
if (url.startsWith("file://")) {
window.location.href = url;
return;
}
if (urls.length == 0) {
window.location.href = url;
return;
}
$.ajax({
url: url,
success: function() {
window.location.href = url;
},
error: function() {
navigate_to_first_existing(urls);
}
});
}
function get_docroot_url() {
var url = window.location.href;
var root = DOCUMENTATION_OPTIONS.URL_ROOT;
var urlarray = url.split('/');
// Trim off anything after '/'
urlarray.pop();
var depth = (root.match(/\.\.\//g) || []).length;
for (var i = 0; i < depth; i++) {
urlarray.pop();
}
return urlarray.join('/') + '/';
}
function on_version_switch() {
var selected_version = $(this).children('option:selected').attr('value');
var url = window.location.href;
var current_version = DOCUMENTATION_OPTIONS.VERSION;
var docroot = get_docroot_url()
var new_versionpath = selected_version + '/';
if (selected_version == "dev")
new_versionpath = '';
// dev versions have no version prefix
if (current_version == "dev") {
var new_url = docroot + new_versionpath + url.replace(docroot, "");
var fallback_url = docroot + new_versionpath;
} else {
var new_url = url.replace('/' + current_version + '/', '/' + new_versionpath);
var fallback_url = new_url.replace(url.replace(docroot, ""), "");
}
console.log(get_docroot_url())
console.log(url + " to url " + new_url);
console.log(url + " to fallback " + fallback_url);
if (new_url != url) {
navigate_to_first_existing([
new_url,
fallback_url,
'https://www.yoctoproject.org/docs/',
]);
}
}
function on_doctype_switch() {
var selected_doctype = $(this).children('option:selected').attr('value');
var url = window.location.href;
if (selected_doctype == 'mega') {
var docroot = get_docroot_url()
var current_version = DOCUMENTATION_OPTIONS.VERSION;
// Assume manuals before 3.2 are using old docbook mega-manual
if (ver_compare(current_version, "3.2") < 0) {
var new_url = docroot + "mega-manual/mega-manual.html";
} else {
var new_url = docroot + "singleindex.html";
}
} else {
var new_url = url.replace("singleindex.html", "index.html")
}
if (new_url != url) {
navigate_to_first_existing([
new_url,
'https://www.yoctoproject.org/docs/',
]);
}
}
// Returns the current doctype based upon the url
function doctype_segment_from_url(url) {
if (url.includes("singleindex") || url.includes("mega-manual"))
return "mega";
return "single";
}
$(document).ready(function() {
var release = DOCUMENTATION_OPTIONS.VERSION;
var current_doctype = doctype_segment_from_url(window.location.href);
var current_series = release.substr(0, 3);
var version_select = build_version_select(current_series, release);
$('.version_switcher_placeholder').html(version_select);
$('.version_switcher_placeholder select').bind('change', on_version_switch);
var doctype_select = build_doctype_select(current_doctype);
$('.doctype_switcher_placeholder').html(doctype_select);
$('.doctype_switcher_placeholder select').bind('change', on_doctype_switch);
if (ver_compare(release, "3.1") < 0) {
$('#outdated-warning').html('Version ' + release + ' of the project is now considered obsolete, please select and use a more recent version');
$('#outdated-warning').css('padding', '.5em');
} else if (release != "dev") {
$.each(all_versions, function(version, title) {
var series = version.substr(0, 3);
if (series == current_series && version != release) {
$('#outdated-warning').html('This document is for outdated version ' + release + ', you should select the latest release version in this series, ' + version + '.');
$('#outdated-warning').css('padding', '.5em');
}
});
}
});
})();

View File

@@ -0,0 +1,162 @@
/*
SPDX-License-Identifier: CC-BY-2.0-UK
*/
body {
font-family: Verdana, Sans, sans-serif;
margin: 0em auto;
color: #333;
}
h1,h2,h3,h4,h5,h6,h7 {
font-family: Arial, Sans;
color: #00557D;
clear: both;
}
h1 {
font-size: 2em;
text-align: left;
padding: 0em 0em 0em 0em;
margin: 2em 0em 0em 0em;
}
h2.subtitle {
margin: 0.10em 0em 3.0em 0em;
padding: 0em 0em 0em 0em;
font-size: 1.8em;
padding-left: 20%;
font-weight: normal;
font-style: italic;
}
h2 {
margin: 2em 0em 0.66em 0em;
padding: 0.5em 0em 0em 0em;
font-size: 1.5em;
font-weight: bold;
}
h3.subtitle {
margin: 0em 0em 1em 0em;
padding: 0em 0em 0em 0em;
font-size: 142.14%;
text-align: right;
}
h3 {
margin: 1em 0em 0.5em 0em;
padding: 1em 0em 0em 0em;
font-size: 140%;
font-weight: bold;
}
h4 {
margin: 1em 0em 0.5em 0em;
padding: 1em 0em 0em 0em;
font-size: 120%;
font-weight: bold;
}
h5 {
margin: 1em 0em 0.5em 0em;
padding: 1em 0em 0em 0em;
font-size: 110%;
font-weight: bold;
}
h6 {
margin: 1em 0em 0em 0em;
padding: 1em 0em 0em 0em;
font-size: 110%;
font-weight: bold;
}
em {
font-weight: bold;
}
.pre {
font-size: medium;
font-family: Courier, monospace;
}
.wy-nav-content a {
text-decoration: underline;
color: #444;
background: transparent;
}
.wy-nav-content a:hover {
text-decoration: underline;
background-color: #dedede;
}
.wy-nav-content a:visited {
color: #444;
}
[alt='Permalink'] { color: #eee; }
[alt='Permalink']:hover { color: black; }
@media screen {
/* content column
*
* RTD theme's default is 800px as max width for the content, but we have
* tables with tons of columns, which need the full width of the view-port.
*/
.wy-nav-content{max-width: none; }
/* inline literal: drop the borderbox, padding and red color */
code, .rst-content tt, .rst-content code {
color: inherit;
border: none;
padding: unset;
background: inherit;
font-size: 85%;
}
.rst-content tt.literal,.rst-content tt.literal,.rst-content code.literal {
color: inherit;
}
/* Admonition should be gray, not blue or green */
.rst-content .note .admonition-title,
.rst-content .tip .admonition-title,
.rst-content .warning .admonition-title,
.rst-content .caution .admonition-title,
.rst-content .important .admonition-title {
background: #f0f0f2;
color: #00557D;
}
.rst-content .note,
.rst-content .tip,
.rst-content .important,
.rst-content .warning,
.rst-content .caution {
background: #f0f0f2;
}
/* Remove the icon in front of note/tip element, and before the logo */
.icon-home:before, .rst-content .admonition-title:before {
display: none
}
/* a custom informalexample container is used in some doc */
.informalexample {
border: 1px solid;
border-color: #aaa;
margin: 1em 0em;
padding: 1em;
page-break-inside: avoid;
}
/* Remove the blue background in the top left corner, around the logo */
.wy-side-nav-search {
background: inherit;
}
}

BIN
bitbake/doc/template/Vera.ttf vendored Normal file

Binary file not shown.

BIN
bitbake/doc/template/VeraMoBd.ttf vendored Normal file

Binary file not shown.

BIN
bitbake/doc/template/VeraMono.ttf vendored Normal file

Binary file not shown.

BIN
bitbake/doc/template/draft.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

197
bitbake/lib/bb/COW.py Normal file
View File

@@ -0,0 +1,197 @@
#
# This is a copy on write dictionary and set which abuses classes to try and be nice and fast.
#
# Copyright (C) 2006 Tim Ansell
#
# SPDX-License-Identifier: GPL-2.0-only
#
# Please Note:
# Be careful when using mutable types (ie Dict and Lists) - operations involving these are SLOW.
# Assign a file to __warn__ to get warnings about slow operations.
#
import copy
ImmutableTypes = (
bool,
complex,
float,
int,
tuple,
frozenset,
str
)
MUTABLE = "__mutable__"
class COWMeta(type):
pass
class COWDictMeta(COWMeta):
__warn__ = False
__hasmutable__ = False
__marker__ = tuple()
def __str__(cls):
# FIXME: I have magic numbers!
return "<COWDict Level: %i Current Keys: %i>" % (cls.__count__, len(cls.__dict__) - 3)
__repr__ = __str__
def cow(cls):
class C(cls):
__count__ = cls.__count__ + 1
return C
copy = cow
__call__ = cow
def __setitem__(cls, key, value):
if value is not None and not isinstance(value, ImmutableTypes):
if not isinstance(value, COWMeta):
cls.__hasmutable__ = True
key += MUTABLE
setattr(cls, key, value)
def __getmutable__(cls, key, readonly=False):
nkey = key + MUTABLE
try:
return cls.__dict__[nkey]
except KeyError:
pass
value = getattr(cls, nkey)
if readonly:
return value
if not cls.__warn__ is False and not isinstance(value, COWMeta):
print("Warning: Doing a copy because %s is a mutable type." % key, file=cls.__warn__)
try:
value = value.copy()
except AttributeError as e:
value = copy.copy(value)
setattr(cls, nkey, value)
return value
__getmarker__ = []
def __getreadonly__(cls, key, default=__getmarker__):
"""
Get a value (even if mutable) which you promise not to change.
"""
return cls.__getitem__(key, default, True)
def __getitem__(cls, key, default=__getmarker__, readonly=False):
try:
try:
value = getattr(cls, key)
except AttributeError:
value = cls.__getmutable__(key, readonly)
# This is for values which have been deleted
if value is cls.__marker__:
raise AttributeError("key %s does not exist." % key)
return value
except AttributeError as e:
if not default is cls.__getmarker__:
return default
raise KeyError(str(e))
def __delitem__(cls, key):
cls.__setitem__(key, cls.__marker__)
def __revertitem__(cls, key):
if key not in cls.__dict__:
key += MUTABLE
delattr(cls, key)
def __contains__(cls, key):
return cls.has_key(key)
def has_key(cls, key):
value = cls.__getreadonly__(key, cls.__marker__)
if value is cls.__marker__:
return False
return True
def iter(cls, type, readonly=False):
for key in dir(cls):
if key.startswith("__"):
continue
if key.endswith(MUTABLE):
key = key[:-len(MUTABLE)]
if type == "keys":
yield key
try:
if readonly:
value = cls.__getreadonly__(key)
else:
value = cls[key]
except KeyError:
continue
if type == "values":
yield value
if type == "items":
yield (key, value)
return
def iterkeys(cls):
return cls.iter("keys")
def itervalues(cls, readonly=False):
if not cls.__warn__ is False and cls.__hasmutable__ and readonly is False:
print("Warning: If you aren't going to change any of the values call with True.", file=cls.__warn__)
return cls.iter("values", readonly)
def iteritems(cls, readonly=False):
if not cls.__warn__ is False and cls.__hasmutable__ and readonly is False:
print("Warning: If you aren't going to change any of the values call with True.", file=cls.__warn__)
return cls.iter("items", readonly)
class COWSetMeta(COWDictMeta):
def __str__(cls):
# FIXME: I have magic numbers!
return "<COWSet Level: %i Current Keys: %i>" % (cls.__count__, len(cls.__dict__) - 3)
__repr__ = __str__
def cow(cls):
class C(cls):
__count__ = cls.__count__ + 1
return C
def add(cls, value):
COWDictMeta.__setitem__(cls, repr(hash(value)), value)
def remove(cls, value):
COWDictMeta.__delitem__(cls, repr(hash(value)))
def __in__(cls, value):
return repr(hash(value)) in COWDictMeta
def iterkeys(cls):
raise TypeError("sets don't have keys")
def iteritems(cls):
raise TypeError("sets don't have 'items'")
# These are the actual classes you use!
class COWDictBase(metaclass=COWDictMeta):
__count__ = 0
class COWSetBase(metaclass=COWSetMeta):
__count__ = 0

222
bitbake/lib/bb/__init__.py Normal file
View File

@@ -0,0 +1,222 @@
#
# BitBake Build System Python Library
#
# Copyright (C) 2003 Holger Schurig
# Copyright (C) 2003, 2004 Chris Larson
#
# Based on Gentoo's portage.py.
#
# SPDX-License-Identifier: GPL-2.0-only
#
__version__ = "2.2.0"
import sys
if sys.version_info < (3, 6, 0):
raise RuntimeError("Sorry, python 3.6.0 or later is required for this version of bitbake")
class BBHandledException(Exception):
"""
The big dilemma for generic bitbake code is what information to give the user
when an exception occurs. Any exception inheriting this base exception class
has already provided information to the user via some 'fired' message type such as
an explicitly fired event using bb.fire, or a bb.error message. If bitbake
encounters an exception derived from this class, no backtrace or other information
will be given to the user, its assumed the earlier event provided the relevant information.
"""
pass
import os
import logging
class NullHandler(logging.Handler):
def emit(self, record):
pass
class BBLoggerMixin(object):
def __init__(self, *args, **kwargs):
# Does nothing to allow calling super() from derived classes
pass
def setup_bblogger(self, name):
if name.split(".")[0] == "BitBake":
self.debug = self._debug_helper
def _debug_helper(self, *args, **kwargs):
return self.bbdebug(1, *args, **kwargs)
def debug2(self, *args, **kwargs):
return self.bbdebug(2, *args, **kwargs)
def debug3(self, *args, **kwargs):
return self.bbdebug(3, *args, **kwargs)
def bbdebug(self, level, msg, *args, **kwargs):
loglevel = logging.DEBUG - level + 1
if not bb.event.worker_pid:
if self.name in bb.msg.loggerDefaultDomains and loglevel > (bb.msg.loggerDefaultDomains[self.name]):
return
if loglevel < bb.msg.loggerDefaultLogLevel:
return
if not isinstance(level, int) or not isinstance(msg, str):
mainlogger.warning("Invalid arguments in bbdebug: %s" % repr((level, msg,) + args))
return self.log(loglevel, msg, *args, **kwargs)
def plain(self, msg, *args, **kwargs):
return self.log(logging.INFO + 1, msg, *args, **kwargs)
def verbose(self, msg, *args, **kwargs):
return self.log(logging.INFO - 1, msg, *args, **kwargs)
def verbnote(self, msg, *args, **kwargs):
return self.log(logging.INFO + 2, msg, *args, **kwargs)
def warnonce(self, msg, *args, **kwargs):
return self.log(logging.WARNING - 1, msg, *args, **kwargs)
def erroronce(self, msg, *args, **kwargs):
return self.log(logging.ERROR - 1, msg, *args, **kwargs)
Logger = logging.getLoggerClass()
class BBLogger(Logger, BBLoggerMixin):
def __init__(self, name, *args, **kwargs):
self.setup_bblogger(name)
super().__init__(name, *args, **kwargs)
logging.raiseExceptions = False
logging.setLoggerClass(BBLogger)
class BBLoggerAdapter(logging.LoggerAdapter, BBLoggerMixin):
def __init__(self, logger, *args, **kwargs):
self.setup_bblogger(logger.name)
super().__init__(logger, *args, **kwargs)
if sys.version_info < (3, 6):
# These properties were added in Python 3.6. Add them in older versions
# for compatibility
@property
def manager(self):
return self.logger.manager
@manager.setter
def manager(self, value):
self.logger.manager = value
@property
def name(self):
return self.logger.name
def __repr__(self):
logger = self.logger
level = logger.getLevelName(logger.getEffectiveLevel())
return '<%s %s (%s)>' % (self.__class__.__name__, logger.name, level)
logging.LoggerAdapter = BBLoggerAdapter
logger = logging.getLogger("BitBake")
logger.addHandler(NullHandler())
logger.setLevel(logging.DEBUG - 2)
mainlogger = logging.getLogger("BitBake.Main")
class PrefixLoggerAdapter(logging.LoggerAdapter):
def __init__(self, prefix, logger):
super().__init__(logger, {})
self.__msg_prefix = prefix
def process(self, msg, kwargs):
return "%s%s" %(self.__msg_prefix, msg), kwargs
# This has to be imported after the setLoggerClass, as the import of bb.msg
# can result in construction of the various loggers.
import bb.msg
from bb import fetch2 as fetch
sys.modules['bb.fetch'] = sys.modules['bb.fetch2']
# Messaging convenience functions
def plain(*args):
mainlogger.plain(''.join(args))
def debug(lvl, *args):
if isinstance(lvl, str):
mainlogger.warning("Passed invalid debug level '%s' to bb.debug", lvl)
args = (lvl,) + args
lvl = 1
mainlogger.bbdebug(lvl, ''.join(args))
def note(*args):
mainlogger.info(''.join(args))
#
# A higher prioity note which will show on the console but isn't a warning
#
# Something is happening the user should be aware of but they probably did
# something to make it happen
#
def verbnote(*args):
mainlogger.verbnote(''.join(args))
#
# Warnings - things the user likely needs to pay attention to and fix
#
def warn(*args):
mainlogger.warning(''.join(args))
def warnonce(*args):
mainlogger.warnonce(''.join(args))
def error(*args, **kwargs):
mainlogger.error(''.join(args), extra=kwargs)
def erroronce(*args):
mainlogger.erroronce(''.join(args))
def fatal(*args, **kwargs):
mainlogger.critical(''.join(args), extra=kwargs)
raise BBHandledException()
def deprecated(func, name=None, advice=""):
"""This is a decorator which can be used to mark functions
as deprecated. It will result in a warning being emitted
when the function is used."""
import warnings
if advice:
advice = ": %s" % advice
if name is None:
name = func.__name__
def newFunc(*args, **kwargs):
warnings.warn("Call to deprecated function %s%s." % (name,
advice),
category=DeprecationWarning,
stacklevel=2)
return func(*args, **kwargs)
newFunc.__name__ = func.__name__
newFunc.__doc__ = func.__doc__
newFunc.__dict__.update(func.__dict__)
return newFunc
# For compatibility
def deprecate_import(current, modulename, fromlist, renames = None):
"""Import objects from one module into another, wrapping them with a DeprecationWarning"""
import sys
module = __import__(modulename, fromlist = fromlist)
for position, objname in enumerate(fromlist):
obj = getattr(module, objname)
newobj = deprecated(obj, "{0}.{1}".format(current, objname),
"Please use {0}.{1} instead".format(modulename, objname))
if renames:
newname = renames[position]
else:
newname = objname
setattr(sys.modules[current], newname, newobj)

View File

@@ -0,0 +1,33 @@
#
# Copyright BitBake Contributors
#
# SPDX-License-Identifier: GPL-2.0-only
#
import itertools
import json
# The Python async server defaults to a 64K receive buffer, so we hardcode our
# maximum chunk size. It would be better if the client and server reported to
# each other what the maximum chunk sizes were, but that will slow down the
# connection setup with a round trip delay so I'd rather not do that unless it
# is necessary
DEFAULT_MAX_CHUNK = 32 * 1024
def chunkify(msg, max_chunk):
if len(msg) < max_chunk - 1:
yield ''.join((msg, "\n"))
else:
yield ''.join((json.dumps({
'chunk-stream': None
}), "\n"))
args = [iter(msg)] * (max_chunk - 1)
for m in map(''.join, itertools.zip_longest(*args, fillvalue='')):
yield ''.join(itertools.chain(m, "\n"))
yield "\n"
from .client import AsyncClient, Client
from .serv import AsyncServer, AsyncServerConnection, ClientError, ServerError

View File

@@ -0,0 +1,178 @@
#
# Copyright BitBake Contributors
#
# SPDX-License-Identifier: GPL-2.0-only
#
import abc
import asyncio
import json
import os
import socket
import sys
from . import chunkify, DEFAULT_MAX_CHUNK
class AsyncClient(object):
def __init__(self, proto_name, proto_version, logger, timeout=30):
self.reader = None
self.writer = None
self.max_chunk = DEFAULT_MAX_CHUNK
self.proto_name = proto_name
self.proto_version = proto_version
self.logger = logger
self.timeout = timeout
async def connect_tcp(self, address, port):
async def connect_sock():
return await asyncio.open_connection(address, port)
self._connect_sock = connect_sock
async def connect_unix(self, path):
async def connect_sock():
# AF_UNIX has path length issues so chdir here to workaround
cwd = os.getcwd()
try:
os.chdir(os.path.dirname(path))
# The socket must be opened synchronously so that CWD doesn't get
# changed out from underneath us so we pass as a sock into asyncio
sock = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM, 0)
sock.connect(os.path.basename(path))
finally:
os.chdir(cwd)
return await asyncio.open_unix_connection(sock=sock)
self._connect_sock = connect_sock
async def setup_connection(self):
s = '%s %s\n\n' % (self.proto_name, self.proto_version)
self.writer.write(s.encode("utf-8"))
await self.writer.drain()
async def connect(self):
if self.reader is None or self.writer is None:
(self.reader, self.writer) = await self._connect_sock()
await self.setup_connection()
async def close(self):
self.reader = None
if self.writer is not None:
self.writer.close()
self.writer = None
async def _send_wrapper(self, proc):
count = 0
while True:
try:
await self.connect()
return await proc()
except (
OSError,
ConnectionError,
json.JSONDecodeError,
UnicodeDecodeError,
) as e:
self.logger.warning("Error talking to server: %s" % e)
if count >= 3:
if not isinstance(e, ConnectionError):
raise ConnectionError(str(e))
raise e
await self.close()
count += 1
async def send_message(self, msg):
async def get_line():
try:
line = await asyncio.wait_for(self.reader.readline(), self.timeout)
except asyncio.TimeoutError:
raise ConnectionError("Timed out waiting for server")
if not line:
raise ConnectionError("Connection closed")
line = line.decode("utf-8")
if not line.endswith("\n"):
raise ConnectionError("Bad message %r" % (line))
return line
async def proc():
for c in chunkify(json.dumps(msg), self.max_chunk):
self.writer.write(c.encode("utf-8"))
await self.writer.drain()
l = await get_line()
m = json.loads(l)
if m and "chunk-stream" in m:
lines = []
while True:
l = (await get_line()).rstrip("\n")
if not l:
break
lines.append(l)
m = json.loads("".join(lines))
return m
return await self._send_wrapper(proc)
async def ping(self):
return await self.send_message(
{'ping': {}}
)
class Client(object):
def __init__(self):
self.client = self._get_async_client()
self.loop = asyncio.new_event_loop()
# Override any pre-existing loop.
# Without this, the PR server export selftest triggers a hang
# when running with Python 3.7. The drawback is that there is
# potential for issues if the PR and hash equiv (or some new)
# clients need to both be instantiated in the same process.
# This should be revisited if/when Python 3.9 becomes the
# minimum required version for BitBake, as it seems not
# required (but harmless) with it.
asyncio.set_event_loop(self.loop)
self._add_methods('connect_tcp', 'ping')
@abc.abstractmethod
def _get_async_client(self):
pass
def _get_downcall_wrapper(self, downcall):
def wrapper(*args, **kwargs):
return self.loop.run_until_complete(downcall(*args, **kwargs))
return wrapper
def _add_methods(self, *methods):
for m in methods:
downcall = getattr(self.client, m)
setattr(self, m, self._get_downcall_wrapper(downcall))
def connect_unix(self, path):
self.loop.run_until_complete(self.client.connect_unix(path))
self.loop.run_until_complete(self.client.connect())
@property
def max_chunk(self):
return self.client.max_chunk
@max_chunk.setter
def max_chunk(self, value):
self.client.max_chunk = value
def close(self):
self.loop.run_until_complete(self.client.close())
if sys.version_info >= (3, 6):
self.loop.run_until_complete(self.loop.shutdown_asyncgens())
self.loop.close()

View File

@@ -0,0 +1,295 @@
#
# Copyright BitBake Contributors
#
# SPDX-License-Identifier: GPL-2.0-only
#
import abc
import asyncio
import json
import os
import signal
import socket
import sys
import multiprocessing
from . import chunkify, DEFAULT_MAX_CHUNK
class ClientError(Exception):
pass
class ServerError(Exception):
pass
class AsyncServerConnection(object):
def __init__(self, reader, writer, proto_name, logger):
self.reader = reader
self.writer = writer
self.proto_name = proto_name
self.max_chunk = DEFAULT_MAX_CHUNK
self.handlers = {
'chunk-stream': self.handle_chunk,
'ping': self.handle_ping,
}
self.logger = logger
async def process_requests(self):
try:
self.addr = self.writer.get_extra_info('peername')
self.logger.debug('Client %r connected' % (self.addr,))
# Read protocol and version
client_protocol = await self.reader.readline()
if not client_protocol:
return
(client_proto_name, client_proto_version) = client_protocol.decode('utf-8').rstrip().split()
if client_proto_name != self.proto_name:
self.logger.debug('Rejecting invalid protocol %s' % (self.proto_name))
return
self.proto_version = tuple(int(v) for v in client_proto_version.split('.'))
if not self.validate_proto_version():
self.logger.debug('Rejecting invalid protocol version %s' % (client_proto_version))
return
# Read headers. Currently, no headers are implemented, so look for
# an empty line to signal the end of the headers
while True:
line = await self.reader.readline()
if not line:
return
line = line.decode('utf-8').rstrip()
if not line:
break
# Handle messages
while True:
d = await self.read_message()
if d is None:
break
await self.dispatch_message(d)
await self.writer.drain()
except ClientError as e:
self.logger.error(str(e))
finally:
self.writer.close()
async def dispatch_message(self, msg):
for k in self.handlers.keys():
if k in msg:
self.logger.debug('Handling %s' % k)
await self.handlers[k](msg[k])
return
raise ClientError("Unrecognized command %r" % msg)
def write_message(self, msg):
for c in chunkify(json.dumps(msg), self.max_chunk):
self.writer.write(c.encode('utf-8'))
async def read_message(self):
l = await self.reader.readline()
if not l:
return None
try:
message = l.decode('utf-8')
if not message.endswith('\n'):
return None
return json.loads(message)
except (json.JSONDecodeError, UnicodeDecodeError) as e:
self.logger.error('Bad message from client: %r' % message)
raise e
async def handle_chunk(self, request):
lines = []
try:
while True:
l = await self.reader.readline()
l = l.rstrip(b"\n").decode("utf-8")
if not l:
break
lines.append(l)
msg = json.loads(''.join(lines))
except (json.JSONDecodeError, UnicodeDecodeError) as e:
self.logger.error('Bad message from client: %r' % lines)
raise e
if 'chunk-stream' in msg:
raise ClientError("Nested chunks are not allowed")
await self.dispatch_message(msg)
async def handle_ping(self, request):
response = {'alive': True}
self.write_message(response)
class AsyncServer(object):
def __init__(self, logger):
self._cleanup_socket = None
self.logger = logger
self.start = None
self.address = None
self.loop = None
def start_tcp_server(self, host, port):
def start_tcp():
self.server = self.loop.run_until_complete(
asyncio.start_server(self.handle_client, host, port)
)
for s in self.server.sockets:
self.logger.debug('Listening on %r' % (s.getsockname(),))
# Newer python does this automatically. Do it manually here for
# maximum compatibility
s.setsockopt(socket.SOL_TCP, socket.TCP_NODELAY, 1)
s.setsockopt(socket.SOL_TCP, socket.TCP_QUICKACK, 1)
# Enable keep alives. This prevents broken client connections
# from persisting on the server for long periods of time.
s.setsockopt(socket.SOL_SOCKET, socket.SO_KEEPALIVE, 1)
s.setsockopt(socket.IPPROTO_TCP, socket.TCP_KEEPIDLE, 30)
s.setsockopt(socket.IPPROTO_TCP, socket.TCP_KEEPINTVL, 15)
s.setsockopt(socket.IPPROTO_TCP, socket.TCP_KEEPCNT, 4)
name = self.server.sockets[0].getsockname()
if self.server.sockets[0].family == socket.AF_INET6:
self.address = "[%s]:%d" % (name[0], name[1])
else:
self.address = "%s:%d" % (name[0], name[1])
self.start = start_tcp
def start_unix_server(self, path):
def cleanup():
os.unlink(path)
def start_unix():
cwd = os.getcwd()
try:
# Work around path length limits in AF_UNIX
os.chdir(os.path.dirname(path))
self.server = self.loop.run_until_complete(
asyncio.start_unix_server(self.handle_client, os.path.basename(path))
)
finally:
os.chdir(cwd)
self.logger.debug('Listening on %r' % path)
self._cleanup_socket = cleanup
self.address = "unix://%s" % os.path.abspath(path)
self.start = start_unix
@abc.abstractmethod
def accept_client(self, reader, writer):
pass
async def handle_client(self, reader, writer):
# writer.transport.set_write_buffer_limits(0)
try:
client = self.accept_client(reader, writer)
await client.process_requests()
except Exception as e:
import traceback
self.logger.error('Error from client: %s' % str(e), exc_info=True)
traceback.print_exc()
writer.close()
self.logger.debug('Client disconnected')
def run_loop_forever(self):
try:
self.loop.run_forever()
except KeyboardInterrupt:
pass
def signal_handler(self):
self.logger.debug("Got exit signal")
self.loop.stop()
def _serve_forever(self):
try:
self.loop.add_signal_handler(signal.SIGTERM, self.signal_handler)
signal.pthread_sigmask(signal.SIG_UNBLOCK, [signal.SIGTERM])
self.run_loop_forever()
self.server.close()
self.loop.run_until_complete(self.server.wait_closed())
self.logger.debug('Server shutting down')
finally:
if self._cleanup_socket is not None:
self._cleanup_socket()
def serve_forever(self):
"""
Serve requests in the current process
"""
# Create loop and override any loop that may have existed in
# a parent process. It is possible that the usecases of
# serve_forever might be constrained enough to allow using
# get_event_loop here, but better safe than sorry for now.
self.loop = asyncio.new_event_loop()
asyncio.set_event_loop(self.loop)
self.start()
self._serve_forever()
def serve_as_process(self, *, prefunc=None, args=()):
"""
Serve requests in a child process
"""
def run(queue):
# Create loop and override any loop that may have existed
# in a parent process. Without doing this and instead
# using get_event_loop, at the very minimum the hashserv
# unit tests will hang when running the second test.
# This happens since get_event_loop in the spawned server
# process for the second testcase ends up with the loop
# from the hashserv client created in the unit test process
# when running the first testcase. The problem is somewhat
# more general, though, as any potential use of asyncio in
# Cooker could create a loop that needs to replaced in this
# new process.
self.loop = asyncio.new_event_loop()
asyncio.set_event_loop(self.loop)
try:
self.start()
finally:
queue.put(self.address)
queue.close()
if prefunc is not None:
prefunc(self, *args)
self._serve_forever()
if sys.version_info >= (3, 6):
self.loop.run_until_complete(self.loop.shutdown_asyncgens())
self.loop.close()
queue = multiprocessing.Queue()
# Temporarily block SIGTERM. The server process will inherit this
# block which will ensure it doesn't receive the SIGTERM until the
# handler is ready for it
mask = signal.pthread_sigmask(signal.SIG_BLOCK, [signal.SIGTERM])
try:
self.process = multiprocessing.Process(target=run, args=(queue,))
self.process.start()
self.address = queue.get()
queue.close()
queue.join_thread()
return self.process
finally:
signal.pthread_sigmask(signal.SIG_SETMASK, mask)

1066
bitbake/lib/bb/build.py Normal file

File diff suppressed because it is too large Load Diff

1009
bitbake/lib/bb/cache.py Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,63 @@
#
# Extra RecipeInfo will be all defined in this file. Currently,
# Only Hob (Image Creator) Requests some extra fields. So
# HobRecipeInfo is defined. It's named HobRecipeInfo because it
# is introduced by 'hob'. Users could also introduce other
# RecipeInfo or simply use those already defined RecipeInfo.
# In the following patch, this newly defined new extra RecipeInfo
# will be dynamically loaded and used for loading/saving the extra
# cache fields
# Copyright (C) 2011, Intel Corporation. All rights reserved.
# SPDX-License-Identifier: GPL-2.0-only
#
from bb.cache import RecipeInfoCommon
class HobRecipeInfo(RecipeInfoCommon):
__slots__ = ()
classname = "HobRecipeInfo"
# please override this member with the correct data cache file
# such as (bb_cache.dat, bb_extracache_hob.dat)
cachefile = "bb_extracache_" + classname +".dat"
# override this member with the list of extra cache fields
# that this class will provide
cachefields = ['summary', 'license', 'section',
'description', 'homepage', 'bugtracker',
'prevision', 'files_info']
def __init__(self, filename, metadata):
self.summary = self.getvar('SUMMARY', metadata)
self.license = self.getvar('LICENSE', metadata)
self.section = self.getvar('SECTION', metadata)
self.description = self.getvar('DESCRIPTION', metadata)
self.homepage = self.getvar('HOMEPAGE', metadata)
self.bugtracker = self.getvar('BUGTRACKER', metadata)
self.prevision = self.getvar('PR', metadata)
self.files_info = self.getvar('FILES_INFO', metadata)
@classmethod
def init_cacheData(cls, cachedata):
# CacheData in Hob RecipeInfo Class
cachedata.summary = {}
cachedata.license = {}
cachedata.section = {}
cachedata.description = {}
cachedata.homepage = {}
cachedata.bugtracker = {}
cachedata.prevision = {}
cachedata.files_info = {}
def add_cacheData(self, cachedata, fn):
cachedata.summary[fn] = self.summary
cachedata.license[fn] = self.license
cachedata.section[fn] = self.section
cachedata.description[fn] = self.description
cachedata.homepage[fn] = self.homepage
cachedata.bugtracker[fn] = self.bugtracker
cachedata.prevision[fn] = self.prevision
cachedata.files_info[fn] = self.files_info

144
bitbake/lib/bb/checksum.py Normal file
View File

@@ -0,0 +1,144 @@
# Local file checksum cache implementation
#
# Copyright (C) 2012 Intel Corporation
#
# SPDX-License-Identifier: GPL-2.0-only
#
import glob
import operator
import os
import stat
import bb.utils
import logging
import re
from bb.cache import MultiProcessCache
logger = logging.getLogger("BitBake.Cache")
filelist_regex = re.compile(r'(?:(?<=:True)|(?<=:False))\s+')
# mtime cache (non-persistent)
# based upon the assumption that files do not change during bitbake run
class FileMtimeCache(object):
cache = {}
def cached_mtime(self, f):
if f not in self.cache:
self.cache[f] = os.stat(f)[stat.ST_MTIME]
return self.cache[f]
def cached_mtime_noerror(self, f):
if f not in self.cache:
try:
self.cache[f] = os.stat(f)[stat.ST_MTIME]
except OSError:
return 0
return self.cache[f]
def update_mtime(self, f):
self.cache[f] = os.stat(f)[stat.ST_MTIME]
return self.cache[f]
def clear(self):
self.cache.clear()
# Checksum + mtime cache (persistent)
class FileChecksumCache(MultiProcessCache):
cache_file_name = "local_file_checksum_cache.dat"
CACHE_VERSION = 1
def __init__(self):
self.mtime_cache = FileMtimeCache()
MultiProcessCache.__init__(self)
def get_checksum(self, f):
f = os.path.normpath(f)
entry = self.cachedata[0].get(f)
cmtime = self.mtime_cache.cached_mtime(f)
if entry:
(mtime, hashval) = entry
if cmtime == mtime:
return hashval
else:
bb.debug(2, "file %s changed mtime, recompute checksum" % f)
hashval = bb.utils.md5_file(f)
self.cachedata_extras[0][f] = (cmtime, hashval)
return hashval
def merge_data(self, source, dest):
for h in source[0]:
if h in dest:
(smtime, _) = source[0][h]
(dmtime, _) = dest[0][h]
if smtime > dmtime:
dest[0][h] = source[0][h]
else:
dest[0][h] = source[0][h]
def get_checksums(self, filelist, pn, localdirsexclude):
"""Get checksums for a list of files"""
def checksum_file(f):
try:
checksum = self.get_checksum(f)
except OSError as e:
bb.warn("Unable to get checksum for %s SRC_URI entry %s: %s" % (pn, os.path.basename(f), e))
return None
return checksum
#
# Changing the format of file-checksums is problematic as both OE and Bitbake have
# knowledge of them. We need to encode a new piece of data, the portion of the path
# we care about from a checksum perspective. This means that files that change subdirectory
# are tracked by the task hashes. To do this, we do something horrible and put a "/./" into
# the path. The filesystem handles it but it gives us a marker to know which subsection
# of the path to cache.
#
def checksum_dir(pth):
# Handle directories recursively
if pth == "/":
bb.fatal("Refusing to checksum /")
pth = pth.rstrip("/")
dirchecksums = []
for root, dirs, files in os.walk(pth, topdown=True):
[dirs.remove(d) for d in list(dirs) if d in localdirsexclude]
for name in files:
fullpth = os.path.join(root, name).replace(pth, os.path.join(pth, "."))
checksum = checksum_file(fullpth)
if checksum:
dirchecksums.append((fullpth, checksum))
return dirchecksums
checksums = []
for pth in filelist_regex.split(filelist):
if not pth:
continue
pth = pth.strip()
if not pth:
continue
exist = pth.split(":")[1]
if exist == "False":
continue
pth = pth.split(":")[0]
if '*' in pth:
# Handle globs
for f in glob.glob(pth):
if os.path.isdir(f):
if not os.path.islink(f):
checksums.extend(checksum_dir(f))
else:
checksum = checksum_file(f)
if checksum:
checksums.append((f, checksum))
elif os.path.isdir(pth):
if not os.path.islink(pth):
checksums.extend(checksum_dir(pth))
else:
checksum = checksum_file(pth)
if checksum:
checksums.append((pth, checksum))
checksums.sort(key=operator.itemgetter(1))
return checksums

View File

@@ -0,0 +1,477 @@
#
# Copyright BitBake Contributors
#
# SPDX-License-Identifier: GPL-2.0-only
#
"""
BitBake code parser
Parses actual code (i.e. python and shell) for functions and in-line
expressions. Used mainly to determine dependencies on other functions
and variables within the BitBake metadata. Also provides a cache for
this information in order to speed up processing.
(Not to be confused with the code that parses the metadata itself,
see lib/bb/parse/ for that).
NOTE: if you change how the parsers gather information you will almost
certainly need to increment CodeParserCache.CACHE_VERSION below so that
any existing codeparser cache gets invalidated. Additionally you'll need
to increment __cache_version__ in cache.py in order to ensure that old
recipe caches don't trigger "Taskhash mismatch" errors.
"""
import ast
import sys
import codegen
import logging
import bb.pysh as pysh
import bb.utils, bb.data
import hashlib
from itertools import chain
from bb.pysh import pyshyacc, pyshlex
from bb.cache import MultiProcessCache
logger = logging.getLogger('BitBake.CodeParser')
def bbhash(s):
return hashlib.sha256(s.encode("utf-8")).hexdigest()
def check_indent(codestr):
"""If the code is indented, add a top level piece of code to 'remove' the indentation"""
i = 0
while codestr[i] in ["\n", "\t", " "]:
i = i + 1
if i == 0:
return codestr
if codestr[i-1] == "\t" or codestr[i-1] == " ":
if codestr[0] == "\n":
# Since we're adding a line, we need to remove one line of any empty padding
# to ensure line numbers are correct
codestr = codestr[1:]
return "if 1:\n" + codestr
return codestr
# A custom getstate/setstate using tuples is actually worth 15% cachesize by
# avoiding duplication of the attribute names!
class SetCache(object):
def __init__(self):
self.setcache = {}
def internSet(self, items):
new = []
for i in items:
new.append(sys.intern(i))
s = frozenset(new)
h = hash(s)
if h in self.setcache:
return self.setcache[h]
self.setcache[h] = s
return s
codecache = SetCache()
class pythonCacheLine(object):
def __init__(self, refs, execs, contains):
self.refs = codecache.internSet(refs)
self.execs = codecache.internSet(execs)
self.contains = {}
for c in contains:
self.contains[c] = codecache.internSet(contains[c])
def __getstate__(self):
return (self.refs, self.execs, self.contains)
def __setstate__(self, state):
(refs, execs, contains) = state
self.__init__(refs, execs, contains)
def __hash__(self):
l = (hash(self.refs), hash(self.execs))
for c in sorted(self.contains.keys()):
l = l + (c, hash(self.contains[c]))
return hash(l)
def __repr__(self):
return " ".join([str(self.refs), str(self.execs), str(self.contains)])
class shellCacheLine(object):
def __init__(self, execs):
self.execs = codecache.internSet(execs)
def __getstate__(self):
return (self.execs)
def __setstate__(self, state):
(execs) = state
self.__init__(execs)
def __hash__(self):
return hash(self.execs)
def __repr__(self):
return str(self.execs)
class CodeParserCache(MultiProcessCache):
cache_file_name = "bb_codeparser.dat"
# NOTE: you must increment this if you change how the parsers gather information,
# so that an existing cache gets invalidated. Additionally you'll need
# to increment __cache_version__ in cache.py in order to ensure that old
# recipe caches don't trigger "Taskhash mismatch" errors.
CACHE_VERSION = 11
def __init__(self):
MultiProcessCache.__init__(self)
self.pythoncache = self.cachedata[0]
self.shellcache = self.cachedata[1]
self.pythoncacheextras = self.cachedata_extras[0]
self.shellcacheextras = self.cachedata_extras[1]
# To avoid duplication in the codeparser cache, keep
# a lookup of hashes of objects we already have
self.pythoncachelines = {}
self.shellcachelines = {}
def newPythonCacheLine(self, refs, execs, contains):
cacheline = pythonCacheLine(refs, execs, contains)
h = hash(cacheline)
if h in self.pythoncachelines:
return self.pythoncachelines[h]
self.pythoncachelines[h] = cacheline
return cacheline
def newShellCacheLine(self, execs):
cacheline = shellCacheLine(execs)
h = hash(cacheline)
if h in self.shellcachelines:
return self.shellcachelines[h]
self.shellcachelines[h] = cacheline
return cacheline
def init_cache(self, d):
# Check if we already have the caches
if self.pythoncache:
return
MultiProcessCache.init_cache(self, d)
# cachedata gets re-assigned in the parent
self.pythoncache = self.cachedata[0]
self.shellcache = self.cachedata[1]
def create_cachedata(self):
data = [{}, {}]
return data
codeparsercache = CodeParserCache()
def parser_cache_init(d):
codeparsercache.init_cache(d)
def parser_cache_save():
codeparsercache.save_extras()
def parser_cache_savemerge():
codeparsercache.save_merge()
Logger = logging.getLoggerClass()
class BufferedLogger(Logger):
def __init__(self, name, level=0, target=None):
Logger.__init__(self, name)
self.setLevel(level)
self.buffer = []
self.target = target
def handle(self, record):
self.buffer.append(record)
def flush(self):
for record in self.buffer:
if self.target.isEnabledFor(record.levelno):
self.target.handle(record)
self.buffer = []
class DummyLogger():
def flush(self):
return
class PythonParser():
getvars = (".getVar", ".appendVar", ".prependVar", "oe.utils.conditional")
getvarflags = (".getVarFlag", ".appendVarFlag", ".prependVarFlag")
containsfuncs = ("bb.utils.contains", "base_contains")
containsanyfuncs = ("bb.utils.contains_any", "bb.utils.filter")
execfuncs = ("bb.build.exec_func", "bb.build.exec_task")
def warn(self, func, arg):
"""Warn about calls of bitbake APIs which pass a non-literal
argument for the variable name, as we're not able to track such
a reference.
"""
try:
funcstr = codegen.to_source(func)
argstr = codegen.to_source(arg)
except TypeError:
self.log.debug2('Failed to convert function and argument to source form')
else:
self.log.debug(self.unhandled_message % (funcstr, argstr))
def visit_Call(self, node):
name = self.called_node_name(node.func)
if name and (name.endswith(self.getvars) or name.endswith(self.getvarflags) or name in self.containsfuncs or name in self.containsanyfuncs):
if isinstance(node.args[0], ast.Str):
varname = node.args[0].s
if name in self.containsfuncs and isinstance(node.args[1], ast.Str):
if varname not in self.contains:
self.contains[varname] = set()
self.contains[varname].add(node.args[1].s)
elif name in self.containsanyfuncs and isinstance(node.args[1], ast.Str):
if varname not in self.contains:
self.contains[varname] = set()
self.contains[varname].update(node.args[1].s.split())
elif name.endswith(self.getvarflags):
if isinstance(node.args[1], ast.Str):
self.references.add('%s[%s]' % (varname, node.args[1].s))
else:
self.warn(node.func, node.args[1])
else:
self.references.add(varname)
else:
self.warn(node.func, node.args[0])
elif name and name.endswith(".expand"):
if isinstance(node.args[0], ast.Str):
value = node.args[0].s
d = bb.data.init()
parser = d.expandWithRefs(value, self.name)
self.references |= parser.references
self.execs |= parser.execs
for varname in parser.contains:
if varname not in self.contains:
self.contains[varname] = set()
self.contains[varname] |= parser.contains[varname]
elif name in self.execfuncs:
if isinstance(node.args[0], ast.Str):
self.var_execs.add(node.args[0].s)
else:
self.warn(node.func, node.args[0])
elif name and isinstance(node.func, (ast.Name, ast.Attribute)):
self.execs.add(name)
def called_node_name(self, node):
"""Given a called node, return its original string form"""
components = []
while node:
if isinstance(node, ast.Attribute):
components.append(node.attr)
node = node.value
elif isinstance(node, ast.Name):
components.append(node.id)
return '.'.join(reversed(components))
else:
break
def __init__(self, name, log):
self.name = name
self.var_execs = set()
self.contains = {}
self.execs = set()
self.references = set()
self._log = log
# Defer init as expensive
self.log = DummyLogger()
self.unhandled_message = "in call of %s, argument '%s' is not a string literal"
self.unhandled_message = "while parsing %s, %s" % (name, self.unhandled_message)
def parse_python(self, node, lineno=0, filename="<string>"):
if not node or not node.strip():
return
h = bbhash(str(node))
if h in codeparsercache.pythoncache:
self.references = set(codeparsercache.pythoncache[h].refs)
self.execs = set(codeparsercache.pythoncache[h].execs)
self.contains = {}
for i in codeparsercache.pythoncache[h].contains:
self.contains[i] = set(codeparsercache.pythoncache[h].contains[i])
return
if h in codeparsercache.pythoncacheextras:
self.references = set(codeparsercache.pythoncacheextras[h].refs)
self.execs = set(codeparsercache.pythoncacheextras[h].execs)
self.contains = {}
for i in codeparsercache.pythoncacheextras[h].contains:
self.contains[i] = set(codeparsercache.pythoncacheextras[h].contains[i])
return
# Need to parse so take the hit on the real log buffer
self.log = BufferedLogger('BitBake.Data.PythonParser', logging.DEBUG, self._log)
# We can't add to the linenumbers for compile, we can pad to the correct number of blank lines though
node = "\n" * int(lineno) + node
code = compile(check_indent(str(node)), filename, "exec",
ast.PyCF_ONLY_AST)
for n in ast.walk(code):
if n.__class__.__name__ == "Call":
self.visit_Call(n)
self.execs.update(self.var_execs)
codeparsercache.pythoncacheextras[h] = codeparsercache.newPythonCacheLine(self.references, self.execs, self.contains)
class ShellParser():
def __init__(self, name, log):
self.funcdefs = set()
self.allexecs = set()
self.execs = set()
self._name = name
self._log = log
# Defer init as expensive
self.log = DummyLogger()
self.unhandled_template = "unable to handle non-literal command '%s'"
self.unhandled_template = "while parsing %s, %s" % (name, self.unhandled_template)
def parse_shell(self, value):
"""Parse the supplied shell code in a string, returning the external
commands it executes.
"""
h = bbhash(str(value))
if h in codeparsercache.shellcache:
self.execs = set(codeparsercache.shellcache[h].execs)
return self.execs
if h in codeparsercache.shellcacheextras:
self.execs = set(codeparsercache.shellcacheextras[h].execs)
return self.execs
# Need to parse so take the hit on the real log buffer
self.log = BufferedLogger('BitBake.Data.%s' % self._name, logging.DEBUG, self._log)
self._parse_shell(value)
self.execs = set(cmd for cmd in self.allexecs if cmd not in self.funcdefs)
codeparsercache.shellcacheextras[h] = codeparsercache.newShellCacheLine(self.execs)
return self.execs
def _parse_shell(self, value):
try:
tokens, _ = pyshyacc.parse(value, eof=True, debug=False)
except Exception:
bb.error('Error during parse shell code, the last 5 lines are:\n%s' % '\n'.join(value.split('\n')[-5:]))
raise
self.process_tokens(tokens)
def process_tokens(self, tokens):
"""Process a supplied portion of the syntax tree as returned by
pyshyacc.parse.
"""
def function_definition(value):
self.funcdefs.add(value.name)
return [value.body], None
def case_clause(value):
# Element 0 of each item in the case is the list of patterns, and
# Element 1 of each item in the case is the list of commands to be
# executed when that pattern matches.
words = chain(*[item[0] for item in value.items])
cmds = chain(*[item[1] for item in value.items])
return cmds, words
def if_clause(value):
main = chain(value.cond, value.if_cmds)
rest = value.else_cmds
if isinstance(rest, tuple) and rest[0] == "elif":
return chain(main, if_clause(rest[1]))
else:
return chain(main, rest)
def simple_command(value):
return None, chain(value.words, (assign[1] for assign in value.assigns))
token_handlers = {
"and_or": lambda x: ((x.left, x.right), None),
"async": lambda x: ([x], None),
"brace_group": lambda x: (x.cmds, None),
"for_clause": lambda x: (x.cmds, x.items),
"function_definition": function_definition,
"if_clause": lambda x: (if_clause(x), None),
"pipeline": lambda x: (x.commands, None),
"redirect_list": lambda x: ([x.cmd], None),
"subshell": lambda x: (x.cmds, None),
"while_clause": lambda x: (chain(x.condition, x.cmds), None),
"until_clause": lambda x: (chain(x.condition, x.cmds), None),
"simple_command": simple_command,
"case_clause": case_clause,
}
def process_token_list(tokens):
for token in tokens:
if isinstance(token, list):
process_token_list(token)
continue
name, value = token
try:
more_tokens, words = token_handlers[name](value)
except KeyError:
raise NotImplementedError("Unsupported token type " + name)
if more_tokens:
self.process_tokens(more_tokens)
if words:
self.process_words(words)
process_token_list(tokens)
def process_words(self, words):
"""Process a set of 'words' in pyshyacc parlance, which includes
extraction of executed commands from $() blocks, as well as grabbing
the command name argument.
"""
words = list(words)
for word in list(words):
wtree = pyshlex.make_wordtree(word[1])
for part in wtree:
if not isinstance(part, list):
continue
if part[0] in ('`', '$('):
command = pyshlex.wordtree_as_string(part[1:-1])
self._parse_shell(command)
if word[0] in ("cmd_name", "cmd_word"):
if word in words:
words.remove(word)
usetoken = False
for word in words:
if word[0] in ("cmd_name", "cmd_word") or \
(usetoken and word[0] == "TOKEN"):
if "=" in word[1]:
usetoken = True
continue
cmd = word[1]
if cmd.startswith("$"):
self.log.debug(self.unhandled_template % cmd)
elif cmd == "eval":
command = " ".join(word for _, word in words[1:])
self._parse_shell(command)
else:
self.allexecs.add(cmd)
break

774
bitbake/lib/bb/command.py Normal file
View File

@@ -0,0 +1,774 @@
"""
BitBake 'Command' module
Provide an interface to interact with the bitbake server through 'commands'
"""
# Copyright (C) 2006-2007 Richard Purdie
#
# SPDX-License-Identifier: GPL-2.0-only
#
"""
The bitbake server takes 'commands' from its UI/commandline.
Commands are either synchronous or asynchronous.
Async commands return data to the client in the form of events.
Sync commands must only return data through the function return value
and must not trigger events, directly or indirectly.
Commands are queued in a CommandQueue
"""
from collections import OrderedDict, defaultdict
import io
import bb.event
import bb.cooker
import bb.remotedata
class DataStoreConnectionHandle(object):
def __init__(self, dsindex=0):
self.dsindex = dsindex
class CommandCompleted(bb.event.Event):
pass
class CommandExit(bb.event.Event):
def __init__(self, exitcode):
bb.event.Event.__init__(self)
self.exitcode = int(exitcode)
class CommandFailed(CommandExit):
def __init__(self, message):
self.error = message
CommandExit.__init__(self, 1)
def __str__(self):
return "Command execution failed: %s" % self.error
class CommandError(Exception):
pass
class Command:
"""
A queue of asynchronous commands for bitbake
"""
def __init__(self, cooker):
self.cooker = cooker
self.cmds_sync = CommandsSync()
self.cmds_async = CommandsAsync()
self.remotedatastores = None
# FIXME Add lock for this
self.currentAsyncCommand = None
def runCommand(self, commandline, ro_only = False):
command = commandline.pop(0)
# Ensure cooker is ready for commands
if command != "updateConfig" and command != "setFeatures":
try:
self.cooker.init_configdata()
if not self.remotedatastores:
self.remotedatastores = bb.remotedata.RemoteDatastores(self.cooker)
except (Exception, SystemExit) as exc:
import traceback
if isinstance(exc, bb.BBHandledException):
# We need to start returning real exceptions here. Until we do, we can't
# tell if an exception is an instance of bb.BBHandledException
return None, "bb.BBHandledException()\n" + traceback.format_exc()
return None, traceback.format_exc()
if hasattr(CommandsSync, command):
# Can run synchronous commands straight away
command_method = getattr(self.cmds_sync, command)
if ro_only:
if not hasattr(command_method, 'readonly') or not getattr(command_method, 'readonly'):
return None, "Not able to execute not readonly commands in readonly mode"
try:
self.cooker.process_inotify_updates()
if getattr(command_method, 'needconfig', True):
self.cooker.updateCacheSync()
result = command_method(self, commandline)
except CommandError as exc:
return None, exc.args[0]
except (Exception, SystemExit) as exc:
import traceback
if isinstance(exc, bb.BBHandledException):
# We need to start returning real exceptions here. Until we do, we can't
# tell if an exception is an instance of bb.BBHandledException
return None, "bb.BBHandledException()\n" + traceback.format_exc()
return None, traceback.format_exc()
else:
return result, None
if self.currentAsyncCommand is not None:
return None, "Busy (%s in progress)" % self.currentAsyncCommand[0]
if command not in CommandsAsync.__dict__:
return None, "No such command"
self.currentAsyncCommand = (command, commandline)
self.cooker.idleCallBackRegister(self.cooker.runCommands, self.cooker)
return True, None
def runAsyncCommand(self):
try:
self.cooker.process_inotify_updates()
if self.cooker.state in (bb.cooker.state.error, bb.cooker.state.shutdown, bb.cooker.state.forceshutdown):
# updateCache will trigger a shutdown of the parser
# and then raise BBHandledException triggering an exit
self.cooker.updateCache()
return False
if self.currentAsyncCommand is not None:
(command, options) = self.currentAsyncCommand
commandmethod = getattr(CommandsAsync, command)
needcache = getattr( commandmethod, "needcache" )
if needcache and self.cooker.state != bb.cooker.state.running:
self.cooker.updateCache()
return True
else:
commandmethod(self.cmds_async, self, options)
return False
else:
return False
except KeyboardInterrupt as exc:
self.finishAsyncCommand("Interrupted")
return False
except SystemExit as exc:
arg = exc.args[0]
if isinstance(arg, str):
self.finishAsyncCommand(arg)
else:
self.finishAsyncCommand("Exited with %s" % arg)
return False
except Exception as exc:
import traceback
if isinstance(exc, bb.BBHandledException):
self.finishAsyncCommand("")
else:
self.finishAsyncCommand(traceback.format_exc())
return False
def finishAsyncCommand(self, msg=None, code=None):
if msg or msg == "":
bb.event.fire(CommandFailed(msg), self.cooker.data)
elif code:
bb.event.fire(CommandExit(code), self.cooker.data)
else:
bb.event.fire(CommandCompleted(), self.cooker.data)
self.currentAsyncCommand = None
self.cooker.finishcommand()
def reset(self):
if self.remotedatastores:
self.remotedatastores = bb.remotedata.RemoteDatastores(self.cooker)
class CommandsSync:
"""
A class of synchronous commands
These should run quickly so as not to hurt interactive performance.
These must not influence any running synchronous command.
"""
def stateShutdown(self, command, params):
"""
Trigger cooker 'shutdown' mode
"""
command.cooker.shutdown(False)
def stateForceShutdown(self, command, params):
"""
Stop the cooker
"""
command.cooker.shutdown(True)
def getAllKeysWithFlags(self, command, params):
"""
Returns a dump of the global state. Call with
variable flags to be retrieved as params.
"""
flaglist = params[0]
return command.cooker.getAllKeysWithFlags(flaglist)
getAllKeysWithFlags.readonly = True
def getVariable(self, command, params):
"""
Read the value of a variable from data
"""
varname = params[0]
expand = True
if len(params) > 1:
expand = (params[1] == "True")
return command.cooker.data.getVar(varname, expand)
getVariable.readonly = True
def setVariable(self, command, params):
"""
Set the value of variable in data
"""
varname = params[0]
value = str(params[1])
command.cooker.extraconfigdata[varname] = value
command.cooker.data.setVar(varname, value)
def getSetVariable(self, command, params):
"""
Read the value of a variable from data and set it into the datastore
which effectively expands and locks the value.
"""
varname = params[0]
result = self.getVariable(command, params)
command.cooker.data.setVar(varname, result)
return result
def setConfig(self, command, params):
"""
Set the value of variable in configuration
"""
varname = params[0]
value = str(params[1])
setattr(command.cooker.configuration, varname, value)
def enableDataTracking(self, command, params):
"""
Enable history tracking for variables
"""
command.cooker.enableDataTracking()
def disableDataTracking(self, command, params):
"""
Disable history tracking for variables
"""
command.cooker.disableDataTracking()
def setPrePostConfFiles(self, command, params):
prefiles = params[0].split()
postfiles = params[1].split()
command.cooker.configuration.prefile = prefiles
command.cooker.configuration.postfile = postfiles
setPrePostConfFiles.needconfig = False
def matchFile(self, command, params):
fMatch = params[0]
try:
mc = params[0]
except IndexError:
mc = ''
return command.cooker.matchFile(fMatch, mc)
matchFile.needconfig = False
def getUIHandlerNum(self, command, params):
return bb.event.get_uihandler()
getUIHandlerNum.needconfig = False
getUIHandlerNum.readonly = True
def setEventMask(self, command, params):
handlerNum = params[0]
llevel = params[1]
debug_domains = params[2]
mask = params[3]
return bb.event.set_UIHmask(handlerNum, llevel, debug_domains, mask)
setEventMask.needconfig = False
setEventMask.readonly = True
def setFeatures(self, command, params):
"""
Set the cooker features to include the passed list of features
"""
features = params[0]
command.cooker.setFeatures(features)
setFeatures.needconfig = False
# although we change the internal state of the cooker, this is transparent since
# we always take and leave the cooker in state.initial
setFeatures.readonly = True
def updateConfig(self, command, params):
options = params[0]
environment = params[1]
cmdline = params[2]
command.cooker.updateConfigOpts(options, environment, cmdline)
updateConfig.needconfig = False
def parseConfiguration(self, command, params):
"""Instruct bitbake to parse its configuration
NOTE: it is only necessary to call this if you aren't calling any normal action
(otherwise parsing is taken care of automatically)
"""
command.cooker.parseConfiguration()
parseConfiguration.needconfig = False
def getLayerPriorities(self, command, params):
command.cooker.parseConfiguration()
ret = []
# regex objects cannot be marshalled by xmlrpc
for collection, pattern, regex, pri in command.cooker.bbfile_config_priorities:
ret.append((collection, pattern, regex.pattern, pri))
return ret
getLayerPriorities.readonly = True
def getRecipes(self, command, params):
try:
mc = params[0]
except IndexError:
mc = ''
return list(command.cooker.recipecaches[mc].pkg_pn.items())
getRecipes.readonly = True
def getRecipeDepends(self, command, params):
try:
mc = params[0]
except IndexError:
mc = ''
return list(command.cooker.recipecaches[mc].deps.items())
getRecipeDepends.readonly = True
def getRecipeVersions(self, command, params):
try:
mc = params[0]
except IndexError:
mc = ''
return command.cooker.recipecaches[mc].pkg_pepvpr
getRecipeVersions.readonly = True
def getRecipeProvides(self, command, params):
try:
mc = params[0]
except IndexError:
mc = ''
return command.cooker.recipecaches[mc].fn_provides
getRecipeProvides.readonly = True
def getRecipePackages(self, command, params):
try:
mc = params[0]
except IndexError:
mc = ''
return command.cooker.recipecaches[mc].packages
getRecipePackages.readonly = True
def getRecipePackagesDynamic(self, command, params):
try:
mc = params[0]
except IndexError:
mc = ''
return command.cooker.recipecaches[mc].packages_dynamic
getRecipePackagesDynamic.readonly = True
def getRProviders(self, command, params):
try:
mc = params[0]
except IndexError:
mc = ''
return command.cooker.recipecaches[mc].rproviders
getRProviders.readonly = True
def getRuntimeDepends(self, command, params):
ret = []
try:
mc = params[0]
except IndexError:
mc = ''
rundeps = command.cooker.recipecaches[mc].rundeps
for key, value in rundeps.items():
if isinstance(value, defaultdict):
value = dict(value)
ret.append((key, value))
return ret
getRuntimeDepends.readonly = True
def getRuntimeRecommends(self, command, params):
ret = []
try:
mc = params[0]
except IndexError:
mc = ''
runrecs = command.cooker.recipecaches[mc].runrecs
for key, value in runrecs.items():
if isinstance(value, defaultdict):
value = dict(value)
ret.append((key, value))
return ret
getRuntimeRecommends.readonly = True
def getRecipeInherits(self, command, params):
try:
mc = params[0]
except IndexError:
mc = ''
return command.cooker.recipecaches[mc].inherits
getRecipeInherits.readonly = True
def getBbFilePriority(self, command, params):
try:
mc = params[0]
except IndexError:
mc = ''
return command.cooker.recipecaches[mc].bbfile_priority
getBbFilePriority.readonly = True
def getDefaultPreference(self, command, params):
try:
mc = params[0]
except IndexError:
mc = ''
return command.cooker.recipecaches[mc].pkg_dp
getDefaultPreference.readonly = True
def getSkippedRecipes(self, command, params):
# Return list sorted by reverse priority order
import bb.cache
def sortkey(x):
vfn, _ = x
realfn, _, mc = bb.cache.virtualfn2realfn(vfn)
return (-command.cooker.collections[mc].calc_bbfile_priority(realfn)[0], vfn)
skipdict = OrderedDict(sorted(command.cooker.skiplist.items(), key=sortkey))
return list(skipdict.items())
getSkippedRecipes.readonly = True
def getOverlayedRecipes(self, command, params):
try:
mc = params[0]
except IndexError:
mc = ''
return list(command.cooker.collections[mc].overlayed.items())
getOverlayedRecipes.readonly = True
def getFileAppends(self, command, params):
fn = params[0]
try:
mc = params[1]
except IndexError:
mc = ''
return command.cooker.collections[mc].get_file_appends(fn)
getFileAppends.readonly = True
def getAllAppends(self, command, params):
try:
mc = params[0]
except IndexError:
mc = ''
return command.cooker.collections[mc].bbappends
getAllAppends.readonly = True
def findProviders(self, command, params):
try:
mc = params[0]
except IndexError:
mc = ''
return command.cooker.findProviders(mc)
findProviders.readonly = True
def findBestProvider(self, command, params):
(mc, pn) = bb.runqueue.split_mc(params[0])
return command.cooker.findBestProvider(pn, mc)
findBestProvider.readonly = True
def allProviders(self, command, params):
try:
mc = params[0]
except IndexError:
mc = ''
return list(bb.providers.allProviders(command.cooker.recipecaches[mc]).items())
allProviders.readonly = True
def getRuntimeProviders(self, command, params):
rprovide = params[0]
try:
mc = params[1]
except IndexError:
mc = ''
all_p = bb.providers.getRuntimeProviders(command.cooker.recipecaches[mc], rprovide)
if all_p:
best = bb.providers.filterProvidersRunTime(all_p, rprovide,
command.cooker.data,
command.cooker.recipecaches[mc])[0][0]
else:
best = None
return all_p, best
getRuntimeProviders.readonly = True
def dataStoreConnectorCmd(self, command, params):
dsindex = params[0]
method = params[1]
args = params[2]
kwargs = params[3]
d = command.remotedatastores[dsindex]
ret = getattr(d, method)(*args, **kwargs)
if isinstance(ret, bb.data_smart.DataSmart):
idx = command.remotedatastores.store(ret)
return DataStoreConnectionHandle(idx)
return ret
def dataStoreConnectorVarHistCmd(self, command, params):
dsindex = params[0]
method = params[1]
args = params[2]
kwargs = params[3]
d = command.remotedatastores[dsindex].varhistory
return getattr(d, method)(*args, **kwargs)
def dataStoreConnectorVarHistCmdEmit(self, command, params):
dsindex = params[0]
var = params[1]
oval = params[2]
val = params[3]
d = command.remotedatastores[params[4]]
o = io.StringIO()
command.remotedatastores[dsindex].varhistory.emit(var, oval, val, o, d)
return o.getvalue()
def dataStoreConnectorIncHistCmd(self, command, params):
dsindex = params[0]
method = params[1]
args = params[2]
kwargs = params[3]
d = command.remotedatastores[dsindex].inchistory
return getattr(d, method)(*args, **kwargs)
def dataStoreConnectorRelease(self, command, params):
dsindex = params[0]
if dsindex <= 0:
raise CommandError('dataStoreConnectorRelease: invalid index %d' % dsindex)
command.remotedatastores.release(dsindex)
def parseRecipeFile(self, command, params):
"""
Parse the specified recipe file (with or without bbappends)
and return a datastore object representing the environment
for the recipe.
"""
fn = params[0]
mc = bb.runqueue.mc_from_tid(fn)
appends = params[1]
appendlist = params[2]
if len(params) > 3:
config_data = command.remotedatastores[params[3]]
else:
config_data = None
if appends:
if appendlist is not None:
appendfiles = appendlist
else:
appendfiles = command.cooker.collections[mc].get_file_appends(fn)
else:
appendfiles = []
# We are calling bb.cache locally here rather than on the server,
# but that's OK because it doesn't actually need anything from
# the server barring the global datastore (which we have a remote
# version of)
if config_data:
# We have to use a different function here if we're passing in a datastore
# NOTE: we took a copy above, so we don't do it here again
envdata = bb.cache.parse_recipe(config_data, fn, appendfiles, mc)['']
else:
# Use the standard path
parser = bb.cache.NoCache(command.cooker.databuilder)
envdata = parser.loadDataFull(fn, appendfiles)
idx = command.remotedatastores.store(envdata)
return DataStoreConnectionHandle(idx)
parseRecipeFile.readonly = True
class CommandsAsync:
"""
A class of asynchronous commands
These functions communicate via generated events.
Any function that requires metadata parsing should be here.
"""
def buildFile(self, command, params):
"""
Build a single specified .bb file
"""
bfile = params[0]
task = params[1]
if len(params) > 2:
internal = params[2]
else:
internal = False
if internal:
command.cooker.buildFileInternal(bfile, task, fireevents=False, quietlog=True)
else:
command.cooker.buildFile(bfile, task)
buildFile.needcache = False
def buildTargets(self, command, params):
"""
Build a set of targets
"""
pkgs_to_build = params[0]
task = params[1]
command.cooker.buildTargets(pkgs_to_build, task)
buildTargets.needcache = True
def generateDepTreeEvent(self, command, params):
"""
Generate an event containing the dependency information
"""
pkgs_to_build = params[0]
task = params[1]
command.cooker.generateDepTreeEvent(pkgs_to_build, task)
command.finishAsyncCommand()
generateDepTreeEvent.needcache = True
def generateDotGraph(self, command, params):
"""
Dump dependency information to disk as .dot files
"""
pkgs_to_build = params[0]
task = params[1]
command.cooker.generateDotGraphFiles(pkgs_to_build, task)
command.finishAsyncCommand()
generateDotGraph.needcache = True
def generateTargetsTree(self, command, params):
"""
Generate a tree of buildable targets.
If klass is provided ensure all recipes that inherit the class are
included in the package list.
If pkg_list provided use that list (plus any extras brought in by
klass) rather than generating a tree for all packages.
"""
klass = params[0]
pkg_list = params[1]
command.cooker.generateTargetsTree(klass, pkg_list)
command.finishAsyncCommand()
generateTargetsTree.needcache = True
def findConfigFiles(self, command, params):
"""
Find config files which provide appropriate values
for the passed configuration variable. i.e. MACHINE
"""
varname = params[0]
command.cooker.findConfigFiles(varname)
command.finishAsyncCommand()
findConfigFiles.needcache = False
def findFilesMatchingInDir(self, command, params):
"""
Find implementation files matching the specified pattern
in the requested subdirectory of a BBPATH
"""
pattern = params[0]
directory = params[1]
command.cooker.findFilesMatchingInDir(pattern, directory)
command.finishAsyncCommand()
findFilesMatchingInDir.needcache = False
def testCookerCommandEvent(self, command, params):
"""
Dummy command used by OEQA selftest to test tinfoil without IO
"""
pattern = params[0]
command.cooker.testCookerCommandEvent(pattern)
command.finishAsyncCommand()
testCookerCommandEvent.needcache = False
def findConfigFilePath(self, command, params):
"""
Find the path of the requested configuration file
"""
configfile = params[0]
command.cooker.findConfigFilePath(configfile)
command.finishAsyncCommand()
findConfigFilePath.needcache = False
def showVersions(self, command, params):
"""
Show the currently selected versions
"""
command.cooker.showVersions()
command.finishAsyncCommand()
showVersions.needcache = True
def showEnvironmentTarget(self, command, params):
"""
Print the environment of a target recipe
(needs the cache to work out which recipe to use)
"""
pkg = params[0]
command.cooker.showEnvironment(None, pkg)
command.finishAsyncCommand()
showEnvironmentTarget.needcache = True
def showEnvironment(self, command, params):
"""
Print the standard environment
or if specified the environment for a specified recipe
"""
bfile = params[0]
command.cooker.showEnvironment(bfile)
command.finishAsyncCommand()
showEnvironment.needcache = False
def parseFiles(self, command, params):
"""
Parse the .bb files
"""
command.cooker.updateCache()
command.finishAsyncCommand()
parseFiles.needcache = True
def compareRevisions(self, command, params):
"""
Parse the .bb files
"""
if bb.fetch.fetcher_compare_revisions(command.cooker.data):
command.finishAsyncCommand(code=1)
else:
command.finishAsyncCommand()
compareRevisions.needcache = True
def triggerEvent(self, command, params):
"""
Trigger a certain event
"""
event = params[0]
bb.event.fire(eval(event), command.cooker.data)
command.currentAsyncCommand = None
triggerEvent.needcache = False
def resetCooker(self, command, params):
"""
Reset the cooker to its initial state, thus forcing a reparse for
any async command that has the needcache property set to True
"""
command.cooker.reset()
command.finishAsyncCommand()
resetCooker.needcache = False
def clientComplete(self, command, params):
"""
Do the right thing when the controlling client exits
"""
command.cooker.clientComplete()
command.finishAsyncCommand()
clientComplete.needcache = False
def findSigInfo(self, command, params):
"""
Find signature info files via the signature generator
"""
(mc, pn) = bb.runqueue.split_mc(params[0])
taskname = params[1]
sigs = params[2]
res = bb.siggen.find_siginfo(pn, taskname, sigs, command.cooker.databuilder.mcdata[mc])
bb.event.fire(bb.event.FindSigInfoResult(res), command.cooker.databuilder.mcdata[mc])
command.finishAsyncCommand()
findSigInfo.needcache = False

View File

@@ -0,0 +1,196 @@
#
# Copyright BitBake Contributors
#
# SPDX-License-Identifier: GPL-2.0-only
#
# Helper library to implement streaming compression and decompression using an
# external process
#
# This library should be used directly by end users; a wrapper library for the
# specific compression tool should be created
import builtins
import io
import os
import subprocess
def open_wrap(
cls, filename, mode="rb", *, encoding=None, errors=None, newline=None, **kwargs
):
"""
Open a compressed file in binary or text mode.
Users should not call this directly. A specific compression library can use
this helper to provide it's own "open" command
The filename argument can be an actual filename (a str or bytes object), or
an existing file object to read from or write to.
The mode argument can be "r", "rb", "w", "wb", "x", "xb", "a" or "ab" for
binary mode, or "rt", "wt", "xt" or "at" for text mode. The default mode is
"rb".
For binary mode, this function is equivalent to the cls constructor:
cls(filename, mode). In this case, the encoding, errors and newline
arguments must not be provided.
For text mode, a cls object is created, and wrapped in an
io.TextIOWrapper instance with the specified encoding, error handling
behavior, and line ending(s).
"""
if "t" in mode:
if "b" in mode:
raise ValueError("Invalid mode: %r" % (mode,))
else:
if encoding is not None:
raise ValueError("Argument 'encoding' not supported in binary mode")
if errors is not None:
raise ValueError("Argument 'errors' not supported in binary mode")
if newline is not None:
raise ValueError("Argument 'newline' not supported in binary mode")
file_mode = mode.replace("t", "")
if isinstance(filename, (str, bytes, os.PathLike, int)):
binary_file = cls(filename, file_mode, **kwargs)
elif hasattr(filename, "read") or hasattr(filename, "write"):
binary_file = cls(None, file_mode, fileobj=filename, **kwargs)
else:
raise TypeError("filename must be a str or bytes object, or a file")
if "t" in mode:
return io.TextIOWrapper(
binary_file, encoding, errors, newline, write_through=True
)
else:
return binary_file
class CompressionError(OSError):
pass
class PipeFile(io.RawIOBase):
"""
Class that implements generically piping to/from a compression program
Derived classes should add the function get_compress() and get_decompress()
that return the required commands. Input will be piped into stdin and the
(de)compressed output should be written to stdout, e.g.:
class FooFile(PipeCompressionFile):
def get_decompress(self):
return ["fooc", "--decompress", "--stdout"]
def get_compress(self):
return ["fooc", "--compress", "--stdout"]
"""
READ = 0
WRITE = 1
def __init__(self, filename=None, mode="rb", *, stderr=None, fileobj=None):
if "t" in mode or "U" in mode:
raise ValueError("Invalid mode: {!r}".format(mode))
if not "b" in mode:
mode += "b"
if mode.startswith("r"):
self.mode = self.READ
elif mode.startswith("w"):
self.mode = self.WRITE
else:
raise ValueError("Invalid mode %r" % mode)
if fileobj is not None:
self.fileobj = fileobj
else:
self.fileobj = builtins.open(filename, mode or "rb")
if self.mode == self.READ:
self.p = subprocess.Popen(
self.get_decompress(),
stdin=self.fileobj,
stdout=subprocess.PIPE,
stderr=stderr,
close_fds=True,
)
self.pipe = self.p.stdout
else:
self.p = subprocess.Popen(
self.get_compress(),
stdin=subprocess.PIPE,
stdout=self.fileobj,
stderr=stderr,
close_fds=True,
)
self.pipe = self.p.stdin
self.__closed = False
def _check_process(self):
if self.p is None:
return
returncode = self.p.wait()
if returncode:
raise CompressionError("Process died with %d" % returncode)
self.p = None
def close(self):
if self.closed:
return
self.pipe.close()
if self.p is not None:
self._check_process()
self.fileobj.close()
self.__closed = True
@property
def closed(self):
return self.__closed
def fileno(self):
return self.pipe.fileno()
def flush(self):
self.pipe.flush()
def isatty(self):
return self.pipe.isatty()
def readable(self):
return self.mode == self.READ
def writable(self):
return self.mode == self.WRITE
def readinto(self, b):
if self.mode != self.READ:
import errno
raise OSError(
errno.EBADF, "read() on write-only %s object" % self.__class__.__name__
)
size = self.pipe.readinto(b)
if size == 0:
self._check_process()
return size
def write(self, data):
if self.mode != self.WRITE:
import errno
raise OSError(
errno.EBADF, "write() on read-only %s object" % self.__class__.__name__
)
data = self.pipe.write(data)
if not data:
self._check_process()
return data

View File

@@ -0,0 +1,19 @@
#
# Copyright BitBake Contributors
#
# SPDX-License-Identifier: GPL-2.0-only
#
import bb.compress._pipecompress
def open(*args, **kwargs):
return bb.compress._pipecompress.open_wrap(LZ4File, *args, **kwargs)
class LZ4File(bb.compress._pipecompress.PipeFile):
def get_compress(self):
return ["lz4c", "-z", "-c"]
def get_decompress(self):
return ["lz4c", "-d", "-c"]

View File

@@ -0,0 +1,30 @@
#
# Copyright BitBake Contributors
#
# SPDX-License-Identifier: GPL-2.0-only
#
import bb.compress._pipecompress
import shutil
def open(*args, **kwargs):
return bb.compress._pipecompress.open_wrap(ZstdFile, *args, **kwargs)
class ZstdFile(bb.compress._pipecompress.PipeFile):
def __init__(self, *args, num_threads=1, compresslevel=3, **kwargs):
self.num_threads = num_threads
self.compresslevel = compresslevel
super().__init__(*args, **kwargs)
def _get_zstd(self):
if self.num_threads == 1 or not shutil.which("pzstd"):
return ["zstd"]
return ["pzstd", "-p", "%d" % self.num_threads]
def get_compress(self):
return self._get_zstd() + ["-c", "-%d" % self.compresslevel]
def get_decompress(self):
return self._get_zstd() + ["-d", "-c"]

2397
bitbake/lib/bb/cooker.py Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,455 @@
#
# Copyright (C) 2003, 2004 Chris Larson
# Copyright (C) 2003, 2004 Phil Blundell
# Copyright (C) 2003 - 2005 Michael 'Mickey' Lauer
# Copyright (C) 2005 Holger Hans Peter Freyther
# Copyright (C) 2005 ROAD GmbH
# Copyright (C) 2006 Richard Purdie
#
# SPDX-License-Identifier: GPL-2.0-only
#
import logging
import os
import re
import sys
import hashlib
from functools import wraps
import bb
from bb import data
import bb.parse
logger = logging.getLogger("BitBake")
parselog = logging.getLogger("BitBake.Parsing")
class ConfigParameters(object):
def __init__(self, argv=None):
self.options, targets = self.parseCommandLine(argv or sys.argv)
self.environment = self.parseEnvironment()
self.options.pkgs_to_build = targets or []
for key, val in self.options.__dict__.items():
setattr(self, key, val)
def parseCommandLine(self, argv=sys.argv):
raise Exception("Caller must implement commandline option parsing")
def parseEnvironment(self):
return os.environ.copy()
def updateFromServer(self, server):
if not self.options.cmd:
defaulttask, error = server.runCommand(["getVariable", "BB_DEFAULT_TASK"])
if error:
raise Exception("Unable to get the value of BB_DEFAULT_TASK from the server: %s" % error)
self.options.cmd = defaulttask or "build"
_, error = server.runCommand(["setConfig", "cmd", self.options.cmd])
if error:
raise Exception("Unable to set configuration option 'cmd' on the server: %s" % error)
if not self.options.pkgs_to_build:
bbpkgs, error = server.runCommand(["getVariable", "BBTARGETS"])
if error:
raise Exception("Unable to get the value of BBTARGETS from the server: %s" % error)
if bbpkgs:
self.options.pkgs_to_build.extend(bbpkgs.split())
def updateToServer(self, server, environment):
options = {}
for o in ["halt", "force", "invalidate_stamp",
"dry_run", "dump_signatures",
"extra_assume_provided", "profile",
"prefile", "postfile", "server_timeout",
"nosetscene", "setsceneonly", "skipsetscene",
"runall", "runonly", "writeeventlog"]:
options[o] = getattr(self.options, o)
options['build_verbose_shell'] = self.options.verbose
options['build_verbose_stdout'] = self.options.verbose
options['default_loglevel'] = bb.msg.loggerDefaultLogLevel
options['debug_domains'] = bb.msg.loggerDefaultDomains
ret, error = server.runCommand(["updateConfig", options, environment, sys.argv])
if error:
raise Exception("Unable to update the server configuration with local parameters: %s" % error)
def parseActions(self):
# Parse any commandline into actions
action = {'action':None, 'msg':None}
if self.options.show_environment:
if 'world' in self.options.pkgs_to_build:
action['msg'] = "'world' is not a valid target for --environment."
elif 'universe' in self.options.pkgs_to_build:
action['msg'] = "'universe' is not a valid target for --environment."
elif len(self.options.pkgs_to_build) > 1:
action['msg'] = "Only one target can be used with the --environment option."
elif self.options.buildfile and len(self.options.pkgs_to_build) > 0:
action['msg'] = "No target should be used with the --environment and --buildfile options."
elif self.options.pkgs_to_build:
action['action'] = ["showEnvironmentTarget", self.options.pkgs_to_build]
else:
action['action'] = ["showEnvironment", self.options.buildfile]
elif self.options.buildfile is not None:
action['action'] = ["buildFile", self.options.buildfile, self.options.cmd]
elif self.options.revisions_changed:
action['action'] = ["compareRevisions"]
elif self.options.show_versions:
action['action'] = ["showVersions"]
elif self.options.parse_only:
action['action'] = ["parseFiles"]
elif self.options.dot_graph:
if self.options.pkgs_to_build:
action['action'] = ["generateDotGraph", self.options.pkgs_to_build, self.options.cmd]
else:
action['msg'] = "Please specify a package name for dependency graph generation."
else:
if self.options.pkgs_to_build:
action['action'] = ["buildTargets", self.options.pkgs_to_build, self.options.cmd]
else:
#action['msg'] = "Nothing to do. Use 'bitbake world' to build everything, or run 'bitbake --help' for usage information."
action = None
self.options.initialaction = action
return action
class CookerConfiguration(object):
"""
Manages build options and configurations for one run
"""
def __init__(self):
self.debug_domains = bb.msg.loggerDefaultDomains
self.default_loglevel = bb.msg.loggerDefaultLogLevel
self.extra_assume_provided = []
self.prefile = []
self.postfile = []
self.cmd = None
self.halt = True
self.force = False
self.profile = False
self.nosetscene = False
self.setsceneonly = False
self.skipsetscene = False
self.invalidate_stamp = False
self.dump_signatures = []
self.build_verbose_shell = False
self.build_verbose_stdout = False
self.dry_run = False
self.tracking = False
self.writeeventlog = False
self.limited_deps = False
self.runall = []
self.runonly = []
self.env = {}
def __getstate__(self):
state = {}
for key in self.__dict__.keys():
state[key] = getattr(self, key)
return state
def __setstate__(self,state):
for k in state:
setattr(self, k, state[k])
def catch_parse_error(func):
"""Exception handling bits for our parsing"""
@wraps(func)
def wrapped(fn, *args):
try:
return func(fn, *args)
except Exception as exc:
import traceback
bbdir = os.path.dirname(__file__) + os.sep
exc_class, exc, tb = sys.exc_info()
for tb in iter(lambda: tb.tb_next, None):
# Skip frames in bitbake itself, we only want the metadata
fn, _, _, _ = traceback.extract_tb(tb, 1)[0]
if not fn.startswith(bbdir):
break
parselog.critical("Unable to parse %s" % fn, exc_info=(exc_class, exc, tb))
raise bb.BBHandledException()
return wrapped
@catch_parse_error
def parse_config_file(fn, data, include=True):
return bb.parse.handle(fn, data, include)
@catch_parse_error
def _inherit(bbclass, data):
bb.parse.BBHandler.inherit(bbclass, "configuration INHERITs", 0, data)
return data
def findConfigFile(configfile, data):
search = []
bbpath = data.getVar("BBPATH")
if bbpath:
for i in bbpath.split(":"):
search.append(os.path.join(i, "conf", configfile))
path = os.getcwd()
while path != "/":
search.append(os.path.join(path, "conf", configfile))
path, _ = os.path.split(path)
for i in search:
if os.path.exists(i):
return i
return None
#
# We search for a conf/bblayers.conf under an entry in BBPATH or in cwd working
# up to /. If that fails, bitbake would fall back to cwd.
#
def findTopdir():
d = bb.data.init()
bbpath = None
if 'BBPATH' in os.environ:
bbpath = os.environ['BBPATH']
d.setVar('BBPATH', bbpath)
layerconf = findConfigFile("bblayers.conf", d)
if layerconf:
return os.path.dirname(os.path.dirname(layerconf))
return os.path.abspath(os.getcwd())
class CookerDataBuilder(object):
def __init__(self, cookercfg, worker = False):
self.prefiles = cookercfg.prefile
self.postfiles = cookercfg.postfile
self.tracking = cookercfg.tracking
bb.utils.set_context(bb.utils.clean_context())
bb.event.set_class_handlers(bb.event.clean_class_handlers())
self.basedata = bb.data.init()
if self.tracking:
self.basedata.enableTracking()
# Keep a datastore of the initial environment variables and their
# values from when BitBake was launched to enable child processes
# to use environment variables which have been cleaned from the
# BitBake processes env
self.savedenv = bb.data.init()
for k in cookercfg.env:
self.savedenv.setVar(k, cookercfg.env[k])
if k in bb.data_smart.bitbake_renamed_vars:
bb.error('Shell environment variable %s has been renamed to %s' % (k, bb.data_smart.bitbake_renamed_vars[k]))
bb.fatal("Exiting to allow enviroment variables to be corrected")
filtered_keys = bb.utils.approved_variables()
bb.data.inheritFromOS(self.basedata, self.savedenv, filtered_keys)
self.basedata.setVar("BB_ORIGENV", self.savedenv)
self.basedata.setVar("__bbclasstype", "global")
if worker:
self.basedata.setVar("BB_WORKERCONTEXT", "1")
self.data = self.basedata
self.mcdata = {}
def parseBaseConfiguration(self, worker=False):
data_hash = hashlib.sha256()
try:
self.data = self.parseConfigurationFiles(self.prefiles, self.postfiles)
if self.data.getVar("BB_WORKERCONTEXT", False) is None and not worker:
bb.fetch.fetcher_init(self.data)
bb.parse.init_parser(self.data)
bb.codeparser.parser_cache_init(self.data)
bb.event.fire(bb.event.ConfigParsed(), self.data)
reparse_cnt = 0
while self.data.getVar("BB_INVALIDCONF", False) is True:
if reparse_cnt > 20:
logger.error("Configuration has been re-parsed over 20 times, "
"breaking out of the loop...")
raise Exception("Too deep config re-parse loop. Check locations where "
"BB_INVALIDCONF is being set (ConfigParsed event handlers)")
self.data.setVar("BB_INVALIDCONF", False)
self.data = self.parseConfigurationFiles(self.prefiles, self.postfiles)
reparse_cnt += 1
bb.event.fire(bb.event.ConfigParsed(), self.data)
bb.parse.init_parser(self.data)
data_hash.update(self.data.get_hash().encode('utf-8'))
self.mcdata[''] = self.data
multiconfig = (self.data.getVar("BBMULTICONFIG") or "").split()
for config in multiconfig:
if config[0].isdigit():
bb.fatal("Multiconfig name '%s' is invalid as multiconfigs cannot start with a digit" % config)
mcdata = self.parseConfigurationFiles(self.prefiles, self.postfiles, config)
bb.event.fire(bb.event.ConfigParsed(), mcdata)
self.mcdata[config] = mcdata
data_hash.update(mcdata.get_hash().encode('utf-8'))
if multiconfig:
bb.event.fire(bb.event.MultiConfigParsed(self.mcdata), self.data)
self.data_hash = data_hash.hexdigest()
except bb.data_smart.ExpansionError as e:
logger.error(str(e))
raise bb.BBHandledException()
# Handle obsolete variable names
d = self.data
renamedvars = d.getVarFlags('BB_RENAMED_VARIABLES') or {}
renamedvars.update(bb.data_smart.bitbake_renamed_vars)
issues = False
for v in renamedvars:
if d.getVar(v) != None or d.hasOverrides(v):
issues = True
loginfo = {}
history = d.varhistory.get_variable_refs(v)
for h in history:
for line in history[h]:
loginfo = {'file' : h, 'line' : line}
bb.data.data_smart._print_rename_error(v, loginfo, renamedvars)
if not history:
bb.data.data_smart._print_rename_error(v, loginfo, renamedvars)
if issues:
raise bb.BBHandledException()
# Create a copy so we can reset at a later date when UIs disconnect
self.origdata = self.data
self.data = bb.data.createCopy(self.origdata)
self.mcdata[''] = self.data
def reset(self):
# We may not have run parseBaseConfiguration() yet
if not hasattr(self, 'origdata'):
return
self.data = bb.data.createCopy(self.origdata)
self.mcdata[''] = self.data
def _findLayerConf(self, data):
return findConfigFile("bblayers.conf", data)
def parseConfigurationFiles(self, prefiles, postfiles, mc = "default"):
data = bb.data.createCopy(self.basedata)
data.setVar("BB_CURRENT_MC", mc)
# Parse files for loading *before* bitbake.conf and any includes
for f in prefiles:
data = parse_config_file(f, data)
layerconf = self._findLayerConf(data)
if layerconf:
parselog.debug2("Found bblayers.conf (%s)", layerconf)
# By definition bblayers.conf is in conf/ of TOPDIR.
# We may have been called with cwd somewhere else so reset TOPDIR
data.setVar("TOPDIR", os.path.dirname(os.path.dirname(layerconf)))
data = parse_config_file(layerconf, data)
layers = (data.getVar('BBLAYERS') or "").split()
broken_layers = []
if not layers:
bb.fatal("The bblayers.conf file doesn't contain any BBLAYERS definition")
data = bb.data.createCopy(data)
approved = bb.utils.approved_variables()
# Check whether present layer directories exist
for layer in layers:
if not os.path.isdir(layer):
broken_layers.append(layer)
if broken_layers:
parselog.critical("The following layer directories do not exist:")
for layer in broken_layers:
parselog.critical(" %s", layer)
parselog.critical("Please check BBLAYERS in %s" % (layerconf))
raise bb.BBHandledException()
for layer in layers:
parselog.debug2("Adding layer %s", layer)
if 'HOME' in approved and '~' in layer:
layer = os.path.expanduser(layer)
if layer.endswith('/'):
layer = layer.rstrip('/')
data.setVar('LAYERDIR', layer)
data.setVar('LAYERDIR_RE', re.escape(layer))
data = parse_config_file(os.path.join(layer, "conf", "layer.conf"), data)
data.expandVarref('LAYERDIR')
data.expandVarref('LAYERDIR_RE')
data.delVar('LAYERDIR_RE')
data.delVar('LAYERDIR')
bbfiles_dynamic = (data.getVar('BBFILES_DYNAMIC') or "").split()
collections = (data.getVar('BBFILE_COLLECTIONS') or "").split()
invalid = []
for entry in bbfiles_dynamic:
parts = entry.split(":", 1)
if len(parts) != 2:
invalid.append(entry)
continue
l, f = parts
invert = l[0] == "!"
if invert:
l = l[1:]
if (l in collections and not invert) or (l not in collections and invert):
data.appendVar("BBFILES", " " + f)
if invalid:
bb.fatal("BBFILES_DYNAMIC entries must be of the form {!}<collection name>:<filename pattern>, not:\n %s" % "\n ".join(invalid))
layerseries = set((data.getVar("LAYERSERIES_CORENAMES") or "").split())
collections_tmp = collections[:]
for c in collections:
collections_tmp.remove(c)
if c in collections_tmp:
bb.fatal("Found duplicated BBFILE_COLLECTIONS '%s', check bblayers.conf or layer.conf to fix it." % c)
compat = set((data.getVar("LAYERSERIES_COMPAT_%s" % c) or "").split())
if compat and not layerseries:
bb.fatal("No core layer found to work with layer '%s'. Missing entry in bblayers.conf?" % c)
if compat and not (compat & layerseries):
bb.fatal("Layer %s is not compatible with the core layer which only supports these series: %s (layer is compatible with %s)"
% (c, " ".join(layerseries), " ".join(compat)))
elif not compat and not data.getVar("BB_WORKERCONTEXT"):
bb.warn("Layer %s should set LAYERSERIES_COMPAT_%s in its conf/layer.conf file to list the core layer names it is compatible with." % (c, c))
if not data.getVar("BBPATH"):
msg = "The BBPATH variable is not set"
if not layerconf:
msg += (" and bitbake did not find a conf/bblayers.conf file in"
" the expected location.\nMaybe you accidentally"
" invoked bitbake from the wrong directory?")
bb.fatal(msg)
if not data.getVar("TOPDIR"):
data.setVar("TOPDIR", os.path.abspath(os.getcwd()))
data = parse_config_file(os.path.join("conf", "bitbake.conf"), data)
# Parse files for loading *after* bitbake.conf and any includes
for p in postfiles:
data = parse_config_file(p, data)
# Handle any INHERITs and inherit the base class
bbclasses = ["base"] + (data.getVar('INHERIT') or "").split()
for bbclass in bbclasses:
data = _inherit(bbclass, data)
# Normally we only register event handlers at the end of parsing .bb files
# We register any handlers we've found so far here...
for var in data.getVar('__BBHANDLERS', False) or []:
handlerfn = data.getVarFlag(var, "filename", False)
if not handlerfn:
parselog.critical("Undefined event handler function '%s'" % var)
raise bb.BBHandledException()
handlerln = int(data.getVarFlag(var, "lineno", False))
bb.event.register(var, data.getVar(var, False), (data.getVarFlag(var, "eventmask") or "").split(), handlerfn, handlerln, data)
data.setVar('BBINCLUDED',bb.parse.get_file_depends(data))
return data

101
bitbake/lib/bb/daemonize.py Normal file
View File

@@ -0,0 +1,101 @@
#
# Copyright BitBake Contributors
#
# SPDX-License-Identifier: GPL-2.0-only
#
"""
Python Daemonizing helper
Originally based on code Copyright (C) 2005 Chad J. Schroeder but now heavily modified
to allow a function to be daemonized and return for bitbake use by Richard Purdie
"""
import os
import sys
import io
import traceback
import bb
def createDaemon(function, logfile):
"""
Detach a process from the controlling terminal and run it in the
background as a daemon, returning control to the caller.
"""
# Ensure stdout/stderror are flushed before forking to avoid duplicate output
sys.stdout.flush()
sys.stderr.flush()
try:
# Fork a child process so the parent can exit. This returns control to
# the command-line or shell. It also guarantees that the child will not
# be a process group leader, since the child receives a new process ID
# and inherits the parent's process group ID. This step is required
# to insure that the next call to os.setsid is successful.
pid = os.fork()
except OSError as e:
raise Exception("%s [%d]" % (e.strerror, e.errno))
if (pid == 0): # The first child.
# To become the session leader of this new session and the process group
# leader of the new process group, we call os.setsid(). The process is
# also guaranteed not to have a controlling terminal.
os.setsid()
try:
# Fork a second child and exit immediately to prevent zombies. This
# causes the second child process to be orphaned, making the init
# process responsible for its cleanup. And, since the first child is
# a session leader without a controlling terminal, it's possible for
# it to acquire one by opening a terminal in the future (System V-
# based systems). This second fork guarantees that the child is no
# longer a session leader, preventing the daemon from ever acquiring
# a controlling terminal.
pid = os.fork() # Fork a second child.
except OSError as e:
raise Exception("%s [%d]" % (e.strerror, e.errno))
if (pid != 0):
# Parent (the first child) of the second child.
# exit() or _exit()?
# _exit is like exit(), but it doesn't call any functions registered
# with atexit (and on_exit) or any registered signal handlers. It also
# closes any open file descriptors, but doesn't flush any buffered output.
# Using exit() may cause all any temporary files to be unexpectedly
# removed. It's therefore recommended that child branches of a fork()
# and the parent branch(es) of a daemon use _exit().
os._exit(0)
else:
os.waitpid(pid, 0)
return
# The second child.
# Replace standard fds with our own
with open('/dev/null', 'r') as si:
os.dup2(si.fileno(), sys.stdin.fileno())
with open(logfile, 'a+') as so:
try:
os.dup2(so.fileno(), sys.stdout.fileno())
os.dup2(so.fileno(), sys.stderr.fileno())
except io.UnsupportedOperation:
sys.stdout = so
# Have stdout and stderr be the same so log output matches chronologically
# and there aren't two separate buffers
sys.stderr = sys.stdout
try:
function()
except Exception as e:
traceback.print_exc()
finally:
bb.event.print_ui_queue()
# os._exit() doesn't flush open files like os.exit() does. Manually flush
# stdout and stderr so that any logging output will be seen, particularly
# exception tracebacks.
sys.stdout.flush()
sys.stderr.flush()
os._exit(0)

448
bitbake/lib/bb/data.py Normal file
View File

@@ -0,0 +1,448 @@
"""
BitBake 'Data' implementations
Functions for interacting with the data structure used by the
BitBake build tools.
The expandKeys and update_data are the most expensive
operations. At night the cookie monster came by and
suggested 'give me cookies on setting the variables and
things will work out'. Taking this suggestion into account
applying the skills from the not yet passed 'Entwurf und
Analyse von Algorithmen' lecture and the cookie
monster seems to be right. We will track setVar more carefully
to have faster update_data and expandKeys operations.
This is a trade-off between speed and memory again but
the speed is more critical here.
"""
# Copyright (C) 2003, 2004 Chris Larson
# Copyright (C) 2005 Holger Hans Peter Freyther
#
# SPDX-License-Identifier: GPL-2.0-only
#
# Based on functions from the base bb module, Copyright 2003 Holger Schurig
import sys, os, re
import hashlib
if sys.argv[0][-5:] == "pydoc":
path = os.path.dirname(os.path.dirname(sys.argv[1]))
else:
path = os.path.dirname(os.path.dirname(sys.argv[0]))
sys.path.insert(0, path)
from itertools import groupby
from bb import data_smart
from bb import codeparser
import bb
logger = data_smart.logger
_dict_type = data_smart.DataSmart
def init():
"""Return a new object representing the Bitbake data"""
return _dict_type()
def init_db(parent = None):
"""Return a new object representing the Bitbake data,
optionally based on an existing object"""
if parent is not None:
return parent.createCopy()
else:
return _dict_type()
def createCopy(source):
"""Link the source set to the destination
If one does not find the value in the destination set,
search will go on to the source set to get the value.
Value from source are copy-on-write. i.e. any try to
modify one of them will end up putting the modified value
in the destination set.
"""
return source.createCopy()
def initVar(var, d):
"""Non-destructive var init for data structure"""
d.initVar(var)
def keys(d):
"""Return a list of keys in d"""
return d.keys()
__expand_var_regexp__ = re.compile(r"\${[^{}]+}")
__expand_python_regexp__ = re.compile(r"\${@.+?}")
def expand(s, d, varname = None):
"""Variable expansion using the data store"""
return d.expand(s, varname)
def expandKeys(alterdata, readdata = None):
if readdata is None:
readdata = alterdata
todolist = {}
for key in alterdata:
if not '${' in key:
continue
ekey = expand(key, readdata)
if key == ekey:
continue
todolist[key] = ekey
# These two for loops are split for performance to maximise the
# usefulness of the expand cache
for key in sorted(todolist):
ekey = todolist[key]
newval = alterdata.getVar(ekey, False)
if newval is not None:
val = alterdata.getVar(key, False)
if val is not None:
bb.warn("Variable key %s (%s) replaces original key %s (%s)." % (key, val, ekey, newval))
alterdata.renameVar(key, ekey)
def inheritFromOS(d, savedenv, permitted):
"""Inherit variables from the initial environment."""
exportlist = bb.utils.preserved_envvars_exported()
for s in savedenv.keys():
if s in permitted:
try:
d.setVar(s, savedenv.getVar(s), op = 'from env')
if s in exportlist:
d.setVarFlag(s, "export", True, op = 'auto env export')
except TypeError:
pass
def emit_var(var, o=sys.__stdout__, d = init(), all=False):
"""Emit a variable to be sourced by a shell."""
func = d.getVarFlag(var, "func", False)
if d.getVarFlag(var, 'python', False) and func:
return False
export = d.getVarFlag(var, "export", False)
unexport = d.getVarFlag(var, "unexport", False)
if not all and not export and not unexport and not func:
return False
try:
if all:
oval = d.getVar(var, False)
val = d.getVar(var)
except (KeyboardInterrupt):
raise
except Exception as exc:
o.write('# expansion of %s threw %s: %s\n' % (var, exc.__class__.__name__, str(exc)))
return False
if all:
d.varhistory.emit(var, oval, val, o, d)
if (var.find("-") != -1 or var.find(".") != -1 or var.find('{') != -1 or var.find('}') != -1 or var.find('+') != -1) and not all:
return False
varExpanded = d.expand(var)
if unexport:
o.write('unset %s\n' % varExpanded)
return False
if val is None:
return False
val = str(val)
if varExpanded.startswith("BASH_FUNC_"):
varExpanded = varExpanded[10:-2]
val = val[3:] # Strip off "() "
o.write("%s() %s\n" % (varExpanded, val))
o.write("export -f %s\n" % (varExpanded))
return True
if func:
# Write a comment indicating where the shell function came from (line number and filename) to make it easier
# for the user to diagnose task failures. This comment is also used by build.py to determine the metadata
# location of shell functions.
o.write("# line: {0}, file: {1}\n".format(
d.getVarFlag(var, "lineno", False),
d.getVarFlag(var, "filename", False)))
# NOTE: should probably check for unbalanced {} within the var
val = val.rstrip('\n')
o.write("%s() {\n%s\n}\n" % (varExpanded, val))
return 1
if export:
o.write('export ')
# if we're going to output this within doublequotes,
# to a shell, we need to escape the quotes in the var
alter = re.sub('"', '\\"', val)
alter = re.sub('\n', ' \\\n', alter)
alter = re.sub('\\$', '\\\\$', alter)
o.write('%s="%s"\n' % (varExpanded, alter))
return False
def emit_env(o=sys.__stdout__, d = init(), all=False):
"""Emits all items in the data store in a format such that it can be sourced by a shell."""
isfunc = lambda key: bool(d.getVarFlag(key, "func", False))
keys = sorted((key for key in d.keys() if not key.startswith("__")), key=isfunc)
grouped = groupby(keys, isfunc)
for isfunc, keys in grouped:
for key in sorted(keys):
emit_var(key, o, d, all and not isfunc) and o.write('\n')
def exported_keys(d):
return (key for key in d.keys() if not key.startswith('__') and
d.getVarFlag(key, 'export', False) and
not d.getVarFlag(key, 'unexport', False))
def exported_vars(d):
k = list(exported_keys(d))
for key in k:
try:
value = d.getVar(key)
except Exception as err:
bb.warn("%s: Unable to export ${%s}: %s" % (d.getVar("FILE"), key, err))
continue
if value is not None:
yield key, str(value)
def emit_func(func, o=sys.__stdout__, d = init()):
"""Emits all items in the data store in a format such that it can be sourced by a shell."""
keys = (key for key in d.keys() if not key.startswith("__") and not d.getVarFlag(key, "func", False))
for key in sorted(keys):
emit_var(key, o, d, False)
o.write('\n')
emit_var(func, o, d, False) and o.write('\n')
newdeps = bb.codeparser.ShellParser(func, logger).parse_shell(d.getVar(func))
newdeps |= set((d.getVarFlag(func, "vardeps") or "").split())
seen = set()
while newdeps:
deps = newdeps
seen |= deps
newdeps = set()
for dep in sorted(deps):
if d.getVarFlag(dep, "func", False) and not d.getVarFlag(dep, "python", False):
emit_var(dep, o, d, False) and o.write('\n')
newdeps |= bb.codeparser.ShellParser(dep, logger).parse_shell(d.getVar(dep))
newdeps |= set((d.getVarFlag(dep, "vardeps") or "").split())
newdeps -= seen
_functionfmt = """
def {function}(d):
{body}"""
def emit_func_python(func, o=sys.__stdout__, d = init()):
"""Emits all items in the data store in a format such that it can be sourced by a shell."""
def write_func(func, o, call = False):
body = d.getVar(func, False)
if not body.startswith("def"):
body = _functionfmt.format(function=func, body=body)
o.write(body.strip() + "\n\n")
if call:
o.write(func + "(d)" + "\n\n")
write_func(func, o, True)
pp = bb.codeparser.PythonParser(func, logger)
pp.parse_python(d.getVar(func, False))
newdeps = pp.execs
newdeps |= set((d.getVarFlag(func, "vardeps") or "").split())
seen = set()
while newdeps:
deps = newdeps
seen |= deps
newdeps = set()
for dep in deps:
if d.getVarFlag(dep, "func", False) and d.getVarFlag(dep, "python", False):
write_func(dep, o)
pp = bb.codeparser.PythonParser(dep, logger)
pp.parse_python(d.getVar(dep, False))
newdeps |= pp.execs
newdeps |= set((d.getVarFlag(dep, "vardeps") or "").split())
newdeps -= seen
def update_data(d):
"""Performs final steps upon the datastore, including application of overrides"""
d.finalize(parent = True)
def build_dependencies(key, keys, shelldeps, varflagsexcl, ignored_vars, d):
deps = set()
try:
if key[-1] == ']':
vf = key[:-1].split('[')
if vf[1] == "vardepvalueexclude":
return deps, ""
value, parser = d.getVarFlag(vf[0], vf[1], False, retparser=True)
deps |= parser.references
deps = deps | (keys & parser.execs)
return deps, value
varflags = d.getVarFlags(key, ["vardeps", "vardepvalue", "vardepsexclude", "exports", "postfuncs", "prefuncs", "lineno", "filename"]) or {}
vardeps = varflags.get("vardeps")
exclusions = varflags.get("vardepsexclude", "").split()
def handle_contains(value, contains, exclusions, d):
newvalue = []
if value:
newvalue.append(str(value))
for k in sorted(contains):
if k in exclusions or k in ignored_vars:
continue
l = (d.getVar(k) or "").split()
for item in sorted(contains[k]):
for word in item.split():
if not word in l:
newvalue.append("\n%s{%s} = Unset" % (k, item))
break
else:
newvalue.append("\n%s{%s} = Set" % (k, item))
return "".join(newvalue)
def handle_remove(value, deps, removes, d):
for r in sorted(removes):
r2 = d.expandWithRefs(r, None)
value += "\n_remove of %s" % r
deps |= r2.references
deps = deps | (keys & r2.execs)
return value
if "vardepvalue" in varflags:
value = varflags.get("vardepvalue")
elif varflags.get("func"):
if varflags.get("python"):
value = d.getVarFlag(key, "_content", False)
parser = bb.codeparser.PythonParser(key, logger)
parser.parse_python(value, filename=varflags.get("filename"), lineno=varflags.get("lineno"))
deps = deps | parser.references
deps = deps | (keys & parser.execs)
value = handle_contains(value, parser.contains, exclusions, d)
else:
value, parsedvar = d.getVarFlag(key, "_content", False, retparser=True)
parser = bb.codeparser.ShellParser(key, logger)
parser.parse_shell(parsedvar.value)
deps = deps | shelldeps
deps = deps | parsedvar.references
deps = deps | (keys & parser.execs) | (keys & parsedvar.execs)
value = handle_contains(value, parsedvar.contains, exclusions, d)
if hasattr(parsedvar, "removes"):
value = handle_remove(value, deps, parsedvar.removes, d)
if vardeps is None:
parser.log.flush()
if "prefuncs" in varflags:
deps = deps | set(varflags["prefuncs"].split())
if "postfuncs" in varflags:
deps = deps | set(varflags["postfuncs"].split())
if "exports" in varflags:
deps = deps | set(varflags["exports"].split())
else:
value, parser = d.getVarFlag(key, "_content", False, retparser=True)
deps |= parser.references
deps = deps | (keys & parser.execs)
value = handle_contains(value, parser.contains, exclusions, d)
if hasattr(parser, "removes"):
value = handle_remove(value, deps, parser.removes, d)
if "vardepvalueexclude" in varflags:
exclude = varflags.get("vardepvalueexclude")
for excl in exclude.split('|'):
if excl:
value = value.replace(excl, '')
# Add varflags, assuming an exclusion list is set
if varflagsexcl:
varfdeps = []
for f in varflags:
if f not in varflagsexcl:
varfdeps.append('%s[%s]' % (key, f))
if varfdeps:
deps |= set(varfdeps)
deps |= set((vardeps or "").split())
deps -= set(exclusions)
except bb.parse.SkipRecipe:
raise
except Exception as e:
bb.warn("Exception during build_dependencies for %s" % key)
raise
return deps, value
#bb.note("Variable %s references %s and calls %s" % (key, str(deps), str(execs)))
#d.setVarFlag(key, "vardeps", deps)
def generate_dependencies(d, ignored_vars):
keys = set(key for key in d if not key.startswith("__"))
shelldeps = set(key for key in d.getVar("__exportlist", False) if d.getVarFlag(key, "export", False) and not d.getVarFlag(key, "unexport", False))
varflagsexcl = d.getVar('BB_SIGNATURE_EXCLUDE_FLAGS')
deps = {}
values = {}
tasklist = d.getVar('__BBTASKS', False) or []
for task in tasklist:
deps[task], values[task] = build_dependencies(task, keys, shelldeps, varflagsexcl, ignored_vars, d)
newdeps = deps[task]
seen = set()
while newdeps:
nextdeps = newdeps - ignored_vars
seen |= nextdeps
newdeps = set()
for dep in nextdeps:
if dep not in deps:
deps[dep], values[dep] = build_dependencies(dep, keys, shelldeps, varflagsexcl, ignored_vars, d)
newdeps |= deps[dep]
newdeps -= seen
#print "For %s: %s" % (task, str(deps[task]))
return tasklist, deps, values
def generate_dependency_hash(tasklist, gendeps, lookupcache, ignored_vars, fn):
taskdeps = {}
basehash = {}
for task in tasklist:
data = lookupcache[task]
if data is None:
bb.error("Task %s from %s seems to be empty?!" % (task, fn))
data = []
else:
data = [data]
gendeps[task] -= ignored_vars
newdeps = gendeps[task]
seen = set()
while newdeps:
nextdeps = newdeps
seen |= nextdeps
newdeps = set()
for dep in nextdeps:
if dep in ignored_vars:
continue
gendeps[dep] -= ignored_vars
newdeps |= gendeps[dep]
newdeps -= seen
alldeps = sorted(seen)
for dep in alldeps:
data.append(dep)
var = lookupcache[dep]
if var is not None:
data.append(str(var))
k = fn + ":" + task
basehash[k] = hashlib.sha256("".join(data).encode("utf-8")).hexdigest()
taskdeps[task] = alldeps
return taskdeps, basehash
def inherits_class(klass, d):
val = d.getVar('__inherit_cache', False) or []
needle = '/%s.bbclass' % klass
for v in val:
if v.endswith(needle):
return True
return False

1107
bitbake/lib/bb/data_smart.py Normal file

File diff suppressed because it is too large Load Diff

853
bitbake/lib/bb/event.py Normal file
View File

@@ -0,0 +1,853 @@
"""
BitBake 'Event' implementation
Classes and functions for manipulating 'events' in the
BitBake build tools.
"""
# Copyright (C) 2003, 2004 Chris Larson
#
# SPDX-License-Identifier: GPL-2.0-only
#
import ast
import atexit
import collections
import logging
import pickle
import sys
import threading
import traceback
import bb.exceptions
import bb.utils
# This is the pid for which we should generate the event. This is set when
# the runqueue forks off.
worker_pid = 0
worker_fire = None
logger = logging.getLogger('BitBake.Event')
class Event(object):
"""Base class for events"""
def __init__(self):
self.pid = worker_pid
class HeartbeatEvent(Event):
"""Triggered at regular time intervals of 10 seconds. Other events can fire much more often
(runQueueTaskStarted when there are many short tasks) or not at all for long periods
of time (again runQueueTaskStarted, when there is just one long-running task), so this
event is more suitable for doing some task-independent work occasionally."""
def __init__(self, time):
Event.__init__(self)
self.time = time
Registered = 10
AlreadyRegistered = 14
def get_class_handlers():
return _handlers
def set_class_handlers(h):
global _handlers
_handlers = h
def clean_class_handlers():
return collections.OrderedDict()
# Internal
_handlers = clean_class_handlers()
_ui_handlers = {}
_ui_logfilters = {}
_ui_handler_seq = 0
_event_handler_map = {}
_catchall_handlers = {}
_eventfilter = None
_uiready = False
_thread_lock = threading.Lock()
_thread_lock_enabled = False
if hasattr(__builtins__, '__setitem__'):
builtins = __builtins__
else:
builtins = __builtins__.__dict__
def enable_threadlock():
global _thread_lock_enabled
_thread_lock_enabled = True
def disable_threadlock():
global _thread_lock_enabled
_thread_lock_enabled = False
def execute_handler(name, handler, event, d):
event.data = d
addedd = False
if 'd' not in builtins:
builtins['d'] = d
addedd = True
try:
ret = handler(event)
except (bb.parse.SkipRecipe, bb.BBHandledException):
raise
except Exception:
etype, value, tb = sys.exc_info()
logger.error("Execution of event handler '%s' failed" % name,
exc_info=(etype, value, tb.tb_next))
raise
except SystemExit as exc:
if exc.code != 0:
logger.error("Execution of event handler '%s' failed" % name)
raise
finally:
del event.data
if addedd:
del builtins['d']
def fire_class_handlers(event, d):
if isinstance(event, logging.LogRecord):
return
eid = str(event.__class__)[8:-2]
evt_hmap = _event_handler_map.get(eid, {})
for name, handler in list(_handlers.items()):
if name in _catchall_handlers or name in evt_hmap:
if _eventfilter:
if not _eventfilter(name, handler, event, d):
continue
if d is not None and not name in (d.getVar("__BBHANDLERS_MC") or set()):
continue
execute_handler(name, handler, event, d)
ui_queue = []
@atexit.register
def print_ui_queue():
global ui_queue
"""If we're exiting before a UI has been spawned, display any queued
LogRecords to the console."""
logger = logging.getLogger("BitBake")
if not _uiready:
from bb.msg import BBLogFormatter
# Flush any existing buffered content
try:
sys.stdout.flush()
except:
pass
try:
sys.stderr.flush()
except:
pass
stdout = logging.StreamHandler(sys.stdout)
stderr = logging.StreamHandler(sys.stderr)
formatter = BBLogFormatter("%(levelname)s: %(message)s")
stdout.setFormatter(formatter)
stderr.setFormatter(formatter)
# First check to see if we have any proper messages
msgprint = False
msgerrs = False
# Should we print to stderr?
for event in ui_queue[:]:
if isinstance(event, logging.LogRecord) and event.levelno >= logging.WARNING:
msgerrs = True
break
if msgerrs:
logger.addHandler(stderr)
else:
logger.addHandler(stdout)
for event in ui_queue[:]:
if isinstance(event, logging.LogRecord):
if event.levelno > logging.DEBUG:
logger.handle(event)
msgprint = True
# Nope, so just print all of the messages we have (including debug messages)
if not msgprint:
for event in ui_queue[:]:
if isinstance(event, logging.LogRecord):
logger.handle(event)
if msgerrs:
logger.removeHandler(stderr)
else:
logger.removeHandler(stdout)
ui_queue = []
def fire_ui_handlers(event, d):
global _thread_lock
global _thread_lock_enabled
if not _uiready:
# No UI handlers registered yet, queue up the messages
ui_queue.append(event)
return
if _thread_lock_enabled:
_thread_lock.acquire()
errors = []
for h in _ui_handlers:
#print "Sending event %s" % event
try:
if not _ui_logfilters[h].filter(event):
continue
# We use pickle here since it better handles object instances
# which xmlrpc's marshaller does not. Events *must* be serializable
# by pickle.
if hasattr(_ui_handlers[h].event, "sendpickle"):
_ui_handlers[h].event.sendpickle((pickle.dumps(event)))
else:
_ui_handlers[h].event.send(event)
except:
errors.append(h)
for h in errors:
del _ui_handlers[h]
if _thread_lock_enabled:
_thread_lock.release()
def fire(event, d):
"""Fire off an Event"""
# We can fire class handlers in the worker process context and this is
# desired so they get the task based datastore.
# UI handlers need to be fired in the server context so we defer this. They
# don't have a datastore so the datastore context isn't a problem.
fire_class_handlers(event, d)
if worker_fire:
worker_fire(event, d)
else:
# If messages have been queued up, clear the queue
global _uiready, ui_queue
if _uiready and ui_queue:
for queue_event in ui_queue:
fire_ui_handlers(queue_event, d)
ui_queue = []
fire_ui_handlers(event, d)
def fire_from_worker(event, d):
fire_ui_handlers(event, d)
noop = lambda _: None
def register(name, handler, mask=None, filename=None, lineno=None, data=None):
"""Register an Event handler"""
if data is not None and data.getVar("BB_CURRENT_MC"):
mc = data.getVar("BB_CURRENT_MC")
name = '%s%s' % (mc.replace('-', '_'), name)
# already registered
if name in _handlers:
if data is not None:
bbhands_mc = (data.getVar("__BBHANDLERS_MC") or set())
bbhands_mc.add(name)
data.setVar("__BBHANDLERS_MC", bbhands_mc)
return AlreadyRegistered
if handler is not None:
# handle string containing python code
if isinstance(handler, str):
tmp = "def %s(e):\n%s" % (name, handler)
try:
code = bb.methodpool.compile_cache(tmp)
if not code:
if filename is None:
filename = "%s(e)" % name
code = compile(tmp, filename, "exec", ast.PyCF_ONLY_AST)
if lineno is not None:
ast.increment_lineno(code, lineno-1)
code = compile(code, filename, "exec")
bb.methodpool.compile_cache_add(tmp, code)
except SyntaxError:
logger.error("Unable to register event handler '%s':\n%s", name,
''.join(traceback.format_exc(limit=0)))
_handlers[name] = noop
return
env = {}
bb.utils.better_exec(code, env)
func = bb.utils.better_eval(name, env)
_handlers[name] = func
else:
_handlers[name] = handler
if not mask or '*' in mask:
_catchall_handlers[name] = True
else:
for m in mask:
if _event_handler_map.get(m, None) is None:
_event_handler_map[m] = {}
_event_handler_map[m][name] = True
if data is not None:
bbhands_mc = (data.getVar("__BBHANDLERS_MC") or set())
bbhands_mc.add(name)
data.setVar("__BBHANDLERS_MC", bbhands_mc)
return Registered
def remove(name, handler, data=None):
"""Remove an Event handler"""
if data is not None:
if data.getVar("BB_CURRENT_MC"):
mc = data.getVar("BB_CURRENT_MC")
name = '%s%s' % (mc.replace('-', '_'), name)
_handlers.pop(name)
if name in _catchall_handlers:
_catchall_handlers.pop(name)
for event in _event_handler_map.keys():
if name in _event_handler_map[event]:
_event_handler_map[event].pop(name)
if data is not None:
bbhands_mc = (data.getVar("__BBHANDLERS_MC") or set())
if name in bbhands_mc:
bbhands_mc.remove(name)
data.setVar("__BBHANDLERS_MC", bbhands_mc)
def get_handlers():
return _handlers
def set_handlers(handlers):
global _handlers
_handlers = handlers
def set_eventfilter(func):
global _eventfilter
_eventfilter = func
def register_UIHhandler(handler, mainui=False):
bb.event._ui_handler_seq = bb.event._ui_handler_seq + 1
_ui_handlers[_ui_handler_seq] = handler
level, debug_domains = bb.msg.constructLogOptions()
_ui_logfilters[_ui_handler_seq] = UIEventFilter(level, debug_domains)
if mainui:
global _uiready
_uiready = _ui_handler_seq
return _ui_handler_seq
def unregister_UIHhandler(handlerNum, mainui=False):
if mainui:
global _uiready
_uiready = False
if handlerNum in _ui_handlers:
del _ui_handlers[handlerNum]
return
def get_uihandler():
if _uiready is False:
return None
return _uiready
# Class to allow filtering of events and specific filtering of LogRecords *before* we put them over the IPC
class UIEventFilter(object):
def __init__(self, level, debug_domains):
self.update(None, level, debug_domains)
def update(self, eventmask, level, debug_domains):
self.eventmask = eventmask
self.stdlevel = level
self.debug_domains = debug_domains
def filter(self, event):
if isinstance(event, logging.LogRecord):
if event.levelno >= self.stdlevel:
return True
if event.name in self.debug_domains and event.levelno >= self.debug_domains[event.name]:
return True
return False
eid = str(event.__class__)[8:-2]
if self.eventmask and eid not in self.eventmask:
return False
return True
def set_UIHmask(handlerNum, level, debug_domains, mask):
if not handlerNum in _ui_handlers:
return False
if '*' in mask:
_ui_logfilters[handlerNum].update(None, level, debug_domains)
else:
_ui_logfilters[handlerNum].update(mask, level, debug_domains)
return True
def getName(e):
"""Returns the name of a class or class instance"""
if getattr(e, "__name__", None) is None:
return e.__class__.__name__
else:
return e.__name__
class OperationStarted(Event):
"""An operation has begun"""
def __init__(self, msg = "Operation Started"):
Event.__init__(self)
self.msg = msg
class OperationCompleted(Event):
"""An operation has completed"""
def __init__(self, total, msg = "Operation Completed"):
Event.__init__(self)
self.total = total
self.msg = msg
class OperationProgress(Event):
"""An operation is in progress"""
def __init__(self, current, total, msg = "Operation in Progress"):
Event.__init__(self)
self.current = current
self.total = total
self.msg = msg + ": %s/%s" % (current, total);
class ConfigParsed(Event):
"""Configuration Parsing Complete"""
class MultiConfigParsed(Event):
"""Multi-Config Parsing Complete"""
def __init__(self, mcdata):
self.mcdata = mcdata
Event.__init__(self)
class RecipeEvent(Event):
def __init__(self, fn):
self.fn = fn
Event.__init__(self)
class RecipePreFinalise(RecipeEvent):
""" Recipe Parsing Complete but not yet finalised"""
class RecipePostKeyExpansion(RecipeEvent):
""" Recipe Parsing Complete but not yet finalised"""
class RecipeTaskPreProcess(RecipeEvent):
"""
Recipe Tasks about to be finalised
The list of tasks should be final at this point and handlers
are only able to change interdependencies
"""
def __init__(self, fn, tasklist):
self.fn = fn
self.tasklist = tasklist
Event.__init__(self)
class RecipeParsed(RecipeEvent):
""" Recipe Parsing Complete """
class BuildBase(Event):
"""Base class for bitbake build events"""
def __init__(self, n, p, failures = 0):
self._name = n
self._pkgs = p
Event.__init__(self)
self._failures = failures
def getPkgs(self):
return self._pkgs
def setPkgs(self, pkgs):
self._pkgs = pkgs
def getName(self):
return self._name
def setName(self, name):
self._name = name
def getFailures(self):
"""
Return the number of failed packages
"""
return self._failures
pkgs = property(getPkgs, setPkgs, None, "pkgs property")
name = property(getName, setName, None, "name property")
class BuildInit(BuildBase):
"""buildFile or buildTargets was invoked"""
def __init__(self, p=[]):
name = None
BuildBase.__init__(self, name, p)
class BuildStarted(BuildBase, OperationStarted):
"""Event when builds start"""
def __init__(self, n, p, failures = 0):
OperationStarted.__init__(self, "Building Started")
BuildBase.__init__(self, n, p, failures)
class BuildCompleted(BuildBase, OperationCompleted):
"""Event when builds have completed"""
def __init__(self, total, n, p, failures=0, interrupted=0):
if not failures:
OperationCompleted.__init__(self, total, "Building Succeeded")
else:
OperationCompleted.__init__(self, total, "Building Failed")
self._interrupted = interrupted
BuildBase.__init__(self, n, p, failures)
class DiskFull(Event):
"""Disk full case build halted"""
def __init__(self, dev, type, freespace, mountpoint):
Event.__init__(self)
self._dev = dev
self._type = type
self._free = freespace
self._mountpoint = mountpoint
class DiskUsageSample:
def __init__(self, available_bytes, free_bytes, total_bytes):
# Number of bytes available to non-root processes.
self.available_bytes = available_bytes
# Number of bytes available to root processes.
self.free_bytes = free_bytes
# Total capacity of the volume.
self.total_bytes = total_bytes
class MonitorDiskEvent(Event):
"""If BB_DISKMON_DIRS is set, then this event gets triggered each time disk space is checked.
Provides information about devices that are getting monitored."""
def __init__(self, disk_usage):
Event.__init__(self)
# hash of device root path -> DiskUsageSample
self.disk_usage = disk_usage
class NoProvider(Event):
"""No Provider for an Event"""
def __init__(self, item, runtime=False, dependees=None, reasons=None, close_matches=None):
Event.__init__(self)
self._item = item
self._runtime = runtime
self._dependees = dependees
self._reasons = reasons
self._close_matches = close_matches
def getItem(self):
return self._item
def isRuntime(self):
return self._runtime
def __str__(self):
msg = ''
if self._runtime:
r = "R"
else:
r = ""
extra = ''
if not self._reasons:
if self._close_matches:
extra = ". Close matches:\n %s" % '\n '.join(sorted(set(self._close_matches)))
if self._dependees:
msg = "Nothing %sPROVIDES '%s' (but %s %sDEPENDS on or otherwise requires it)%s" % (r, self._item, ", ".join(self._dependees), r, extra)
else:
msg = "Nothing %sPROVIDES '%s'%s" % (r, self._item, extra)
if self._reasons:
for reason in self._reasons:
msg += '\n' + reason
return msg
class MultipleProviders(Event):
"""Multiple Providers"""
def __init__(self, item, candidates, runtime = False):
Event.__init__(self)
self._item = item
self._candidates = candidates
self._is_runtime = runtime
def isRuntime(self):
"""
Is this a runtime issue?
"""
return self._is_runtime
def getItem(self):
"""
The name for the to be build item
"""
return self._item
def getCandidates(self):
"""
Get the possible Candidates for a PROVIDER.
"""
return self._candidates
def __str__(self):
msg = "Multiple providers are available for %s%s (%s)" % (self._is_runtime and "runtime " or "",
self._item,
", ".join(self._candidates))
rtime = ""
if self._is_runtime:
rtime = "R"
msg += "\nConsider defining a PREFERRED_%sPROVIDER entry to match %s" % (rtime, self._item)
return msg
class ParseStarted(OperationStarted):
"""Recipe parsing for the runqueue has begun"""
def __init__(self, total):
OperationStarted.__init__(self, "Recipe parsing Started")
self.total = total
class ParseCompleted(OperationCompleted):
"""Recipe parsing for the runqueue has completed"""
def __init__(self, cached, parsed, skipped, masked, virtuals, errors, total):
OperationCompleted.__init__(self, total, "Recipe parsing Completed")
self.cached = cached
self.parsed = parsed
self.skipped = skipped
self.virtuals = virtuals
self.masked = masked
self.errors = errors
self.sofar = cached + parsed
class ParseProgress(OperationProgress):
"""Recipe parsing progress"""
def __init__(self, current, total):
OperationProgress.__init__(self, current, total, "Recipe parsing")
class CacheLoadStarted(OperationStarted):
"""Loading of the dependency cache has begun"""
def __init__(self, total):
OperationStarted.__init__(self, "Loading cache Started")
self.total = total
class CacheLoadProgress(OperationProgress):
"""Cache loading progress"""
def __init__(self, current, total):
OperationProgress.__init__(self, current, total, "Loading cache")
class CacheLoadCompleted(OperationCompleted):
"""Cache loading is complete"""
def __init__(self, total, num_entries):
OperationCompleted.__init__(self, total, "Loading cache Completed")
self.num_entries = num_entries
class TreeDataPreparationStarted(OperationStarted):
"""Tree data preparation started"""
def __init__(self):
OperationStarted.__init__(self, "Preparing tree data Started")
class TreeDataPreparationProgress(OperationProgress):
"""Tree data preparation is in progress"""
def __init__(self, current, total):
OperationProgress.__init__(self, current, total, "Preparing tree data")
class TreeDataPreparationCompleted(OperationCompleted):
"""Tree data preparation completed"""
def __init__(self, total):
OperationCompleted.__init__(self, total, "Preparing tree data Completed")
class DepTreeGenerated(Event):
"""
Event when a dependency tree has been generated
"""
def __init__(self, depgraph):
Event.__init__(self)
self._depgraph = depgraph
class TargetsTreeGenerated(Event):
"""
Event when a set of buildable targets has been generated
"""
def __init__(self, model):
Event.__init__(self)
self._model = model
class ReachableStamps(Event):
"""
An event listing all stamps reachable after parsing
which the metadata may use to clean up stale data
"""
def __init__(self, stamps):
Event.__init__(self)
self.stamps = stamps
class StaleSetSceneTasks(Event):
"""
An event listing setscene tasks which are 'stale' and will
be rerun. The metadata may use to clean up stale data.
tasks is a mapping of tasks and matching stale stamps.
"""
def __init__(self, tasks):
Event.__init__(self)
self.tasks = tasks
class FilesMatchingFound(Event):
"""
Event when a list of files matching the supplied pattern has
been generated
"""
def __init__(self, pattern, matches):
Event.__init__(self)
self._pattern = pattern
self._matches = matches
class ConfigFilesFound(Event):
"""
Event when a list of appropriate config files has been generated
"""
def __init__(self, variable, values):
Event.__init__(self)
self._variable = variable
self._values = values
class ConfigFilePathFound(Event):
"""
Event when a path for a config file has been found
"""
def __init__(self, path):
Event.__init__(self)
self._path = path
class MsgBase(Event):
"""Base class for messages"""
def __init__(self, msg):
self._message = msg
Event.__init__(self)
class MsgDebug(MsgBase):
"""Debug Message"""
class MsgNote(MsgBase):
"""Note Message"""
class MsgWarn(MsgBase):
"""Warning Message"""
class MsgError(MsgBase):
"""Error Message"""
class MsgFatal(MsgBase):
"""Fatal Message"""
class MsgPlain(MsgBase):
"""General output"""
class LogExecTTY(Event):
"""Send event containing program to spawn on tty of the logger"""
def __init__(self, msg, prog, sleep_delay, retries):
Event.__init__(self)
self.msg = msg
self.prog = prog
self.sleep_delay = sleep_delay
self.retries = retries
class LogHandler(logging.Handler):
"""Dispatch logging messages as bitbake events"""
def emit(self, record):
if record.exc_info:
etype, value, tb = record.exc_info
if hasattr(tb, 'tb_next'):
tb = list(bb.exceptions.extract_traceback(tb, context=3))
# Need to turn the value into something the logging system can pickle
record.bb_exc_info = (etype, value, tb)
record.bb_exc_formatted = bb.exceptions.format_exception(etype, value, tb, limit=5)
value = str(value)
record.exc_info = None
fire(record, None)
def filter(self, record):
record.taskpid = worker_pid
return True
class MetadataEvent(Event):
"""
Generic event that target for OE-Core classes
to report information during asynchronous execution
"""
def __init__(self, eventtype, eventdata):
Event.__init__(self)
self.type = eventtype
self._localdata = eventdata
class ProcessStarted(Event):
"""
Generic process started event (usually part of the initial startup)
where further progress events will be delivered
"""
def __init__(self, processname, total):
Event.__init__(self)
self.processname = processname
self.total = total
class ProcessProgress(Event):
"""
Generic process progress event (usually part of the initial startup)
"""
def __init__(self, processname, progress):
Event.__init__(self)
self.processname = processname
self.progress = progress
class ProcessFinished(Event):
"""
Generic process finished event (usually part of the initial startup)
"""
def __init__(self, processname):
Event.__init__(self)
self.processname = processname
class SanityCheck(Event):
"""
Event to run sanity checks, either raise errors or generate events as return status.
"""
def __init__(self, generateevents = True):
Event.__init__(self)
self.generateevents = generateevents
class SanityCheckPassed(Event):
"""
Event to indicate sanity check has passed
"""
class SanityCheckFailed(Event):
"""
Event to indicate sanity check has failed
"""
def __init__(self, msg, network_error=False):
Event.__init__(self)
self._msg = msg
self._network_error = network_error
class NetworkTest(Event):
"""
Event to run network connectivity tests, either raise errors or generate events as return status.
"""
def __init__(self, generateevents = True):
Event.__init__(self)
self.generateevents = generateevents
class NetworkTestPassed(Event):
"""
Event to indicate network test has passed
"""
class NetworkTestFailed(Event):
"""
Event to indicate network test has failed
"""
class FindSigInfoResult(Event):
"""
Event to return results from findSigInfo command
"""
def __init__(self, result):
Event.__init__(self)
self.result = result

View File

@@ -0,0 +1,96 @@
#
# Copyright BitBake Contributors
#
# SPDX-License-Identifier: GPL-2.0-only
#
import inspect
import traceback
import bb.namedtuple_with_abc
from collections import namedtuple
class TracebackEntry(namedtuple.abc):
"""Pickleable representation of a traceback entry"""
_fields = 'filename lineno function args code_context index'
_header = ' File "{0.filename}", line {0.lineno}, in {0.function}{0.args}'
def format(self, formatter=None):
if not self.code_context:
return self._header.format(self) + '\n'
formatted = [self._header.format(self) + ':\n']
for lineindex, line in enumerate(self.code_context):
if formatter:
line = formatter(line)
if lineindex == self.index:
formatted.append(' >%s' % line)
else:
formatted.append(' %s' % line)
return formatted
def __str__(self):
return ''.join(self.format())
def _get_frame_args(frame):
"""Get the formatted arguments and class (if available) for a frame"""
arginfo = inspect.getargvalues(frame)
try:
if not arginfo.args:
return '', None
# There have been reports from the field of python 2.6 which doesn't
# return a namedtuple here but simply a tuple so fallback gracefully if
# args isn't present.
except AttributeError:
return '', None
firstarg = arginfo.args[0]
if firstarg == 'self':
self = arginfo.locals['self']
cls = self.__class__.__name__
arginfo.args.pop(0)
del arginfo.locals['self']
else:
cls = None
formatted = inspect.formatargvalues(*arginfo)
return formatted, cls
def extract_traceback(tb, context=1):
frames = inspect.getinnerframes(tb, context)
for frame, filename, lineno, function, code_context, index in frames:
formatted_args, cls = _get_frame_args(frame)
if cls:
function = '%s.%s' % (cls, function)
yield TracebackEntry(filename, lineno, function, formatted_args,
code_context, index)
def format_extracted(extracted, formatter=None, limit=None):
if limit:
extracted = extracted[-limit:]
formatted = []
for tracebackinfo in extracted:
formatted.extend(tracebackinfo.format(formatter))
return formatted
def format_exception(etype, value, tb, context=1, limit=None, formatter=None):
formatted = ['Traceback (most recent call last):\n']
if hasattr(tb, 'tb_next'):
tb = extract_traceback(tb, context)
formatted.extend(format_extracted(tb, formatter, limit))
formatted.extend(traceback.format_exception_only(etype, value))
return formatted
def to_string(exc):
if isinstance(exc, SystemExit):
if not isinstance(exc.code, str):
return 'Exited with "%d"' % exc.code
return str(exc)

View File

@@ -0,0 +1,57 @@
There are expectations of users of the fetcher code. This file attempts to document
some of the constraints that are present. Some are obvious, some are less so. It is
documented in the context of how OE uses it but the API calls are generic.
a) network access for sources is only expected to happen in the do_fetch task.
This is not enforced or tested but is required so that we can:
i) audit the sources used (i.e. for license/manifest reasons)
ii) support offline builds with a suitable cache
iii) allow work to continue even with downtime upstream
iv) allow for changes upstream in incompatible ways
v) allow rebuilding of the software in X years time
b) network access is not expected in do_unpack task.
c) you can take DL_DIR and use it as a mirror for offline builds.
d) access to the network is only made when explicitly configured in recipes
(e.g. use of AUTOREV, or use of git tags which change revision).
e) fetcher output is deterministic (i.e. if you fetch configuration XXX now it
will match in future exactly in a clean build with a new DL_DIR).
One specific pain point example are git tags. They can be replaced and change
so the git fetcher has to resolve them with the network. We use git revisions
where possible to avoid this and ensure determinism.
f) network access is expected to work with the standard linux proxy variables
so that access behind firewalls works (the fetcher sets these in the
environment but only in the do_fetch tasks).
g) access during parsing has to be minimal, a "git ls-remote" for an AUTOREV
git recipe might be ok but you can't expect to checkout a git tree.
h) we need to provide revision information during parsing such that a version
for the recipe can be constructed.
i) versions are expected to be able to increase in a way which sorts allowing
package feeds to operate (see PR server required for git revisions to sort).
j) API to query for possible version upgrades of a url is highly desireable to
allow our automated upgrage code to function (it is implied this does always
have network access).
k) Where fixes or changes to behaviour in the fetcher are made, we ask that
test cases are added (run with "bitbake-selftest bb.tests.fetch"). We do
have fairly extensive test coverage of the fetcher as it is the only way
to track all of its corner cases, it still doesn't give entire coverage
though sadly.
l) If using tools during parse time, they will have to be in ASSUME_PROVIDED
in OE's context as we can't build git-native, then parse a recipe and use
git ls-remote.
Not all fetchers support all features, autorev is optional and doesn't make
sense for some. Upgrade detection means different things in different contexts
too.

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,93 @@
"""
BitBake 'Fetch' Azure Storage implementation
"""
# Copyright (C) 2021 Alejandro Hernandez Samaniego
#
# Based on bb.fetch2.wget:
# Copyright (C) 2003, 2004 Chris Larson
#
# SPDX-License-Identifier: GPL-2.0-only
#
# Based on functions from the base bb module, Copyright 2003 Holger Schurig
import shlex
import os
import bb
from bb.fetch2 import FetchError
from bb.fetch2 import logger
from bb.fetch2.wget import Wget
class Az(Wget):
def supports(self, ud, d):
"""
Check to see if a given url can be fetched from Azure Storage
"""
return ud.type in ['az']
def checkstatus(self, fetch, ud, d, try_again=True):
# checkstatus discards parameters either way, we need to do this before adding the SAS
ud.url = ud.url.replace('az://','https://').split(';')[0]
az_sas = d.getVar('AZ_SAS')
if az_sas and az_sas not in ud.url:
ud.url += az_sas
return Wget.checkstatus(self, fetch, ud, d, try_again)
# Override download method, include retries
def download(self, ud, d, retries=3):
"""Fetch urls"""
# If were reaching the account transaction limit we might be refused a connection,
# retrying allows us to avoid false negatives since the limit changes over time
fetchcmd = self.basecmd + ' --retry-connrefused --waitretry=5'
# We need to provide a localpath to avoid wget using the SAS
# ud.localfile either has the downloadfilename or ud.path
localpath = os.path.join(d.getVar("DL_DIR"), ud.localfile)
bb.utils.mkdirhier(os.path.dirname(localpath))
fetchcmd += " -O %s" % shlex.quote(localpath)
if ud.user and ud.pswd:
fetchcmd += " --user=%s --password=%s --auth-no-challenge" % (ud.user, ud.pswd)
# Check if a Shared Access Signature was given and use it
az_sas = d.getVar('AZ_SAS')
if az_sas:
azuri = '%s%s%s%s' % ('https://', ud.host, ud.path, az_sas)
else:
azuri = '%s%s%s' % ('https://', ud.host, ud.path)
if os.path.exists(ud.localpath):
# file exists, but we didnt complete it.. trying again.
fetchcmd += d.expand(" -c -P ${DL_DIR} '%s'" % azuri)
else:
fetchcmd += d.expand(" -P ${DL_DIR} '%s'" % azuri)
try:
self._runwget(ud, d, fetchcmd, False)
except FetchError as e:
# Azure fails on handshake sometimes when using wget after some stress, producing a
# FetchError from the fetcher, if the artifact exists retyring should succeed
if 'Unable to establish SSL connection' in str(e):
logger.debug2('Unable to establish SSL connection: Retries remaining: %s, Retrying...' % retries)
self.download(ud, d, retries -1)
# Sanity check since wget can pretend it succeed when it didn't
# Also, this used to happen if sourceforge sent us to the mirror page
if not os.path.exists(ud.localpath):
raise FetchError("The fetch command returned success for url %s but %s doesn't exist?!" % (azuri, ud.localpath), azuri)
if os.path.getsize(ud.localpath) == 0:
os.remove(ud.localpath)
raise FetchError("The fetch of %s resulted in a zero size file?! Deleting and failing since this isn't right." % (azuri), azuri)
return True

View File

@@ -0,0 +1,128 @@
"""
BitBake 'Fetch' implementation for bzr.
"""
# Copyright (C) 2007 Ross Burton
# Copyright (C) 2007 Richard Purdie
#
# Classes for obtaining upstream sources for the
# BitBake build tools.
# Copyright (C) 2003, 2004 Chris Larson
#
# SPDX-License-Identifier: GPL-2.0-only
#
import os
import bb
from bb.fetch2 import FetchMethod
from bb.fetch2 import FetchError
from bb.fetch2 import runfetchcmd
from bb.fetch2 import logger
class Bzr(FetchMethod):
def supports(self, ud, d):
return ud.type in ['bzr']
def urldata_init(self, ud, d):
"""
init bzr specific variable within url data
"""
# Create paths to bzr checkouts
bzrdir = d.getVar("BZRDIR") or (d.getVar("DL_DIR") + "/bzr")
relpath = self._strip_leading_slashes(ud.path)
ud.pkgdir = os.path.join(bzrdir, ud.host, relpath)
ud.setup_revisions(d)
if not ud.revision:
ud.revision = self.latest_revision(ud, d)
ud.localfile = d.expand('bzr_%s_%s_%s.tar.gz' % (ud.host, ud.path.replace('/', '.'), ud.revision))
def _buildbzrcommand(self, ud, d, command):
"""
Build up an bzr commandline based on ud
command is "fetch", "update", "revno"
"""
basecmd = d.getVar("FETCHCMD_bzr") or "/usr/bin/env bzr"
proto = ud.parm.get('protocol', 'http')
bzrroot = ud.host + ud.path
options = []
if command == "revno":
bzrcmd = "%s revno %s %s://%s" % (basecmd, " ".join(options), proto, bzrroot)
else:
if ud.revision:
options.append("-r %s" % ud.revision)
if command == "fetch":
bzrcmd = "%s branch %s %s://%s" % (basecmd, " ".join(options), proto, bzrroot)
elif command == "update":
bzrcmd = "%s pull %s --overwrite" % (basecmd, " ".join(options))
else:
raise FetchError("Invalid bzr command %s" % command, ud.url)
return bzrcmd
def download(self, ud, d):
"""Fetch url"""
if os.access(os.path.join(ud.pkgdir, os.path.basename(ud.pkgdir), '.bzr'), os.R_OK):
bzrcmd = self._buildbzrcommand(ud, d, "update")
logger.debug("BZR Update %s", ud.url)
bb.fetch2.check_network_access(d, bzrcmd, ud.url)
runfetchcmd(bzrcmd, d, workdir=os.path.join(ud.pkgdir, os.path.basename(ud.path)))
else:
bb.utils.remove(os.path.join(ud.pkgdir, os.path.basename(ud.pkgdir)), True)
bzrcmd = self._buildbzrcommand(ud, d, "fetch")
bb.fetch2.check_network_access(d, bzrcmd, ud.url)
logger.debug("BZR Checkout %s", ud.url)
bb.utils.mkdirhier(ud.pkgdir)
logger.debug("Running %s", bzrcmd)
runfetchcmd(bzrcmd, d, workdir=ud.pkgdir)
scmdata = ud.parm.get("scmdata", "")
if scmdata == "keep":
tar_flags = ""
else:
tar_flags = "--exclude='.bzr' --exclude='.bzrtags'"
# tar them up to a defined filename
runfetchcmd("tar %s -czf %s %s" % (tar_flags, ud.localpath, os.path.basename(ud.pkgdir)),
d, cleanup=[ud.localpath], workdir=ud.pkgdir)
def supports_srcrev(self):
return True
def _revision_key(self, ud, d, name):
"""
Return a unique key for the url
"""
return "bzr:" + ud.pkgdir
def _latest_revision(self, ud, d, name):
"""
Return the latest upstream revision number
"""
logger.debug2("BZR fetcher hitting network for %s", ud.url)
bb.fetch2.check_network_access(d, self._buildbzrcommand(ud, d, "revno"), ud.url)
output = runfetchcmd(self._buildbzrcommand(ud, d, "revno"), d, True)
return output.strip()
def sortable_revision(self, ud, d, name):
"""
Return a sortable revision number which in our case is the revision number
"""
return False, self._build_revision(ud, d)
def _build_revision(self, ud, d):
return ud.revision

Some files were not shown because too many files have changed in this diff Show More