Zephyr v2.7.2-rc1

Christopher Friedt

Hi Zephyr Community!

Zephyr v2.7.2 Release Candidate 1 is out!


Zephyr v2.7.2 is slated to be released 1 week from today, on April 22,
2022, so please be sure to take this RC for a test drive and report
any issues early. There have been a total of 141 backported bug fixes
since v2.7.1 and 2 CVE fixes to report.

Many thanks to everyone involved!

Security Vulnerability Related

The following security vulnerabilities (CVEs) were addressed in this release:

* CVE-2021-3835
* CVE-2021-3861

More detailed information can be found in:

Issues Fixed

These GitHub issues were addressed since the previous 2.7.1 tagged release:

Alexander Mihajlovic (2):
drivers: adc: stm32: Add function to enable ADC consistently
drivers: adc: stm32: Clear ADRDY before waiting

Alexandre Bourdiol (2):
boards: arm: stm32h7: select direct SMPS for both disco boards
boards: arm: stm32l562e_dk and nucleo_l552ze_q add openocd support

Andrea Campanella (1):
drivers: serial: stm32: Add Line Break Detection

Andrei Emeltchenko (2):
net: tcp: Remove redundant TCP option definitions
net: tcp: Remove unneeded declaration

Andrzej Głąbek (1):
drivers: spi_nrfx_spi: Fix compilation error

Binu Jacob (1):
libc: newlibc: Fix recursive gettimeofday() calls on non-Posix systems

Carlo Caione (2):
kernel: Reset the switch_handler only in the arch code
gen_relocate_app: Create files from scratch, do not append

Chen Peng1 (1):
cmake: save eh_frame section in output with CONFIG_EXCEPTIONS.

Chris Reed (1):
arm: cortex-m: initialise ptr_esf in get_esf() in fault.c.

Christopher Friedt (3):
doc: spinlock: ensure spinlock api is added to doxygen
pthread: cond: fix pthread_cond_wait always returning ETIMEDOUT
tests: pthread: cond: check return from pthread_cond_wait()

Daniel Nejezchleb (4):
net: tcp: Fixed forever loop in tcp_resend_data
net: tcp: Fix possible deadlock in tcp_conn_unref()
lib/os: fdtable: add locking to posix api
net: sockets: Fixes net_pkt leak in accept

Dominik Ermel (2):
mgmt/mcumgr: Correct packet length information
mgmt/mcumgr: Fix serial packet length not including CRC16

Emil Lindqvist (1):
logging: fix timestamp func overwrite on log2

Erwan Gouriou (4):
include/drivers/clock_control: stm32h7: Add missing symbol PLL SRC CSI
boards: h747/h745: Update dual core flash and debug instructions
scripts/pylib/twister: Add sn option to stm32cubeprogrgammer runner
boards: nucleo_wb55rg: Add stm32cubeprogrammer runner

Evgeniy Paltsev (1):
ARC: nSIM: fix missing core numbers for mdb-hw runner args

Fabio Baltieri (1):
boards: nucleo_h745zi_q: enable POWER_SUPPLY_DIRECT_SMPS

Flavio Ceolin (2):
pm: Remove unused fields in pm_device
test: pm: device: Fix build options

Francois Ramu (3):
drivers: adc: driver setting the resolution for stm32wl
drivers: adc: driver setting the oversampling for stm32wl
dts: arm: stm32l0 LSI clock freq is 37kHz

Gennady Kovalev (1):
drivers: clock_control: More power supply modes for STM32H7

Georgij Cernysiov (1):
include: drivers: clock_control: stm32: fix xtpre

Gerard Marull-Paretas (7):
doc: extensions: doxyrunner: add doxyrunner_outdir_var option
doc: extensions: doxyrunner: do not modify extension config
doc: conf: specify which variable is used for output directory
ci: make git credentials non-persistent
ci: split Bluetooth workflow
doc: update requirements
doc: css: update code documentation directives style

Gerson Fernando Budke (1):
riscv: linker.ld: Fix undefined reference linker error

Guillaume Lager (2):
driver: modem: Fix mux device name comparison
drivers: console: gsm_mux: fix length indicator

Henrik Brix Andersen (1):
drivers: can: change can_tx_callback_t function signature

Jamie McCrae (3):
samples: subsys: mgmt: smp_svr: Fix dupicate fs mgmt registration
boards: bl654_usb: Fix non-mcuboot builds not limiting size
doc: Add link to J-Link virtual MSD disable for SMP

Jaxson Han (4):
arm64: Fix booting issue with FVP V8R >= 11.16.16
cmake: armfvp: Add FVP min version check
board: arm64: fvp_baser_aemv8r: Update the version requirement
board: arm64: fvp_baser_aemv8r_smp: Increase CONFIG_MAX_THREAD_BYTES

Jeremy Wood (1):
drivers: can: m_can: fix reconfiguring bitrate

Johann Fischer (4):
include: usb: add alignment attribute to macro USBD_CFG_DATA_DEFINE
drivers: ssd16xx: fix driver initialization
bluetooth: hci_raw: avoid possible memory overflow in bt_buf_get_tx()
usb: bluetooth: check buffer tailroom before copying

Jordan Yates (5):
lora: sx126x: don't re-enable interrupt in sleep
doc: generate Doxygen tag file
doc: guides: index: document Doxygen linking
spi: nrfx_spi*: only run uninit if configured
wifi: esp_at: claim net_context in rx

Jukka Rissanen (1):
net: tcp2: Send our MSS to peer

Julien D'ascenzio (3):
uart_stm32: Fix conflit between poll_out and irq API
drivers/uart: stm32: fix dead lock on poll_out
drivers/uart: stm32: don't call k_yield on poll_out

Keith Packard (1):
arm: Use correct macro for z_interrupt_stacks declaration in stack.h

Krzysztof Chruscinski (11):
logging: Fix tracking of active messages
logging: Fix tracking of buffered messages
lib: os: printk: Minor refactoring
logging: printk: Fix LOG_PRINTK for v2
logging: log_output: Fix immediate output for big endian
tests: logging: log_core_additional: Add panic handler for test backend
tests: logging: log_api: Add test for LOG_PRINTK
logging: Improve algorithm for waking up the thread
logging: Fix counting of buffered messages
net: ip: route: Fix log_strdup misuse
lib: os: mpsc_pbuf: Add const to mpsc_pbuf_free argument

Kweh Hock Leong (2):
net: shell: Fix parser error on net ping command
net: gptp: Fix type mismatch calculation error in gptp_mi

Manojkumar Subramaniam (3):
soc: arm: st_stm32: add kconfig entry for STM32 SMPS
drivers: clock_control: stm32h7: Add logic to handle SMPS config
soc: arm: st_stm32: use SMPS power supply only if enabled

Marius Scholtz (1):
modbus: serial: Fix incomplete transmission issue

Michael Schmidt (1):
drivers: virt_ivshmem: Allow multiple instances of ivShMem devices.

Michel Haber (1):
timing: use runtime cycles for cortex-m systick

NingX Zhao (1):
poll: modify the function z_vrfy_k_poll

Patric Karlström (1):
posix: Make clock_settime/gettime REALTIME thread-safe

Pete Dietl (1):
drivers: adc: stm32: Disable ADC before calibration

Piotr Pryga (1):
Bluetooth: controller: Add missing NULL assign to df_cfg in ll_adv_set

Rene Bredlau (1):
modem: hl7800: use correct timeouts on KTCPSND to avoid internal deadlock

Robert Lubos (13):
net: http_client: Set body_start pointer unconditionally
net: sockets: getaddrinfo: Fix possible crash when callback is delayed
net: sockets: Simplify common getsockname() implementation
net: route: Fix struct net_route_nexthop leak
net: route: Verify if neighbor entry is in use when iterating
net: sockets: Use struct timeval provided by libc
net: sockets: Report ZSOCK_POLLHUP when socket is in EOF state
net: sockets: tls: Fix ZSOCK_POLLHUP detection
net: arp: Fix ARP retransmission source address selection
net: mqtt: Fix SOCKS5 setsockopt error handling
net: sockets: Retry net_context_sendmsg if EAGAIN is reported
net: sockets: Fix userspace accept() verification
net: tcp: Verify accept callback before use

Ryan McClelland (1):
cmake: fix multiple shield parsing

Sylvio Alves (1):
soc: esp32: use PYTHON_EXECUTABLE from build system

Szymon Janc (9):
Bluetooth: L2CAP: Fix checking if LTK is present
tests/bluetooth/tester: Add support for rejecting connection parameters
tests/bluetooth/tester: Fix possible buffer overflow
tests/bluetooth/tester: Add support for multiple GATT subscriptions
test/bluetooth/tester: Don't clear auth requirements on L2CAP server
tests/bluetooth/tester: Allocate L2CAP channel only when needed
Bluetooth: Host: Validate security on GATT subscription
tests/bluetooth/tester: Enable security validation for GATT subsciption
tests/bluetooth/tester: Add support for auto connection establishment

Thomas Stranger (6):
drivers: flash: stm32: mv security-mode dependent defines to header
flash: stm32: fix g0 error flags and move ifdef-ery to header
drivers: flash: stm32: wait for CFGBSY & BSY2 in wait_flash_idle
drivers: flash: stm32g0: preparation for dual bank handling
drivers: flash: stm32g0: dual bank handling
tests: drivers: flash: change integration_platforms

Tomasz Bursztyka (12):
net/icmpv4: Fix logging messagse
net/icmpv4: Do not send error on a packet that was broadcasted
arch/x86: Have a dedicated place for CPUID related functions
arch/x86: Add a CPUID function to get initial APIC ID
arch/x86: Fix MSI MAP destination
net/tcp: Stop TCP state machine breaking when sending locally
net/context: Close TCP connection properly
tests/net: TLS test requires more RX PKT and buffers
tests/net: Switch k_msleep to k_yield for tcp packet scheduling
tests/net: Put the context down and not only the tcp part in tcp2 test
test/net: Make sure the tls server socket is accepting before connect
net/tcp: Use highest priority for TCP internal work queue

Vinayak Kariappa Chettimada (1):
Bluetooth: Controller: Fix Periodic Adv EVENT_OVERHEAD_START_US jitter

Yong Cong Sin (5):
drivers: watchdog: STM32G0X: clock DBGMCU before configuring
net: mgmt: Use mutex for net_mgmt_lock
kernel: workq: Fix type errors in delayable work handlers
driver: serial: uart_stm32: Calculate suitable PRESCALER value
subsys/mgmt/hawkbit: update http response handling