Import of kernel-4.18.0-553.139.1.el8_10

This commit is contained in:
almalinux-bot-kernel 2026-07-02 05:24:41 +00:00
parent 52184f2a5c
commit 305888fa06
14 changed files with 101 additions and 16 deletions

View File

@ -12,7 +12,7 @@ RHEL_MINOR = 10
#
# Use this spot to avoid future merge conflicts.
# Do not trim this comment.
RHEL_RELEASE = 553.137.1
RHEL_RELEASE = 553.139.1
#
# ZSTREAM

View File

@ -89,7 +89,7 @@ $(obj)/vmlinux.bin: $(obj)/compressed/vmlinux FORCE
SETUP_OBJS = $(addprefix $(obj)/,$(setup-y))
sed-zoffset := -e 's/^\([0-9a-fA-F]*\) [ABCDGRSTVW] \(startup_32\|efi32_stub_entry\|efi64_stub_entry\|efi_pe_entry\|input_data\|_end\|_ehead\|_text\|_e\?data\|z_.*\)$$/\#define ZO_\2 0x\1/p'
sed-zoffset := -e 's/^\([0-9a-fA-F]*\) [ABCDGRSTVW] \(startup_32\|efi32_stub_entry\|efi64_stub_entry\|efi_pe_entry\|input_data\|_end\|_ehead\|_text\|_e\?data\|_e\?sbat\|z_.*\)$$/\#define ZO_\2 0x\1/p'
quiet_cmd_zoffset = ZOFFSET $@
cmd_zoffset = $(NM) $< | sed -n $(sed-zoffset) > $@

View File

@ -104,6 +104,13 @@ vmlinux-objs-$(CONFIG_EFI_STUB) += $(obj)/eboot.o $(obj)/efi_stub_$(BITS).o \
vmlinux-objs-$(CONFIG_EFI) += $(obj)/efi.o
vmlinux-objs-$(CONFIG_EFI_MIXED) += $(obj)/efi_thunk_$(BITS).o
vmlinux-objs-$(CONFIG_EFI_SBAT) += $(obj)/sbat.o
ifdef CONFIG_EFI_SBAT
$(obj)/sbat.o: $(patsubst "%",%,$(CONFIG_EFI_SBAT_FILE))
AFLAGS_sbat.o += -I $(srctree)
endif
# The compressed kernel is built with -fPIC/-fPIE so that a boot loader
# can place it anywhere in memory and it will still run. However, since
# it is executed as-is without any ELF relocation processing performed

View File

@ -0,0 +1,7 @@
/* SPDX-License-Identifier: GPL-2.0 */
/*
* Embed SBAT data in the kernel.
*/
.pushsection ".sbat", "a", @progbits
.incbin CONFIG_EFI_SBAT_FILE
.popsection

View File

@ -55,6 +55,14 @@ SECTIONS
*(.got.plt)
}
#ifdef CONFIG_EFI_SBAT
.sbat : ALIGN(0x1000) {
_sbat = . ;
*(.sbat)
_esbat = ALIGN(0x1000);
. = _esbat;
}
#endif
.data : ALIGN(0x1000) {
_data = . ;
*(.data)

View File

@ -156,15 +156,11 @@ section_table:
.set pecompat_vsize, 0
.set pecompat_fstart, setup_size
.ascii ".text"
.byte 0
.byte 0
.byte 0
.long ZO__data
.long setup_size
.long ZO__data # Size of initialized data
# on disk
.long setup_size
.ascii ".text\0\0\0"
.long textsize # VirtualSize
.long setup_size # VirtualAddress
.long textsize # SizeOfRawData
.long setup_size # PointerToRawData
.long 0 # PointerToRelocations
.long 0 # PointerToLineNumbers
.word 0 # NumberOfRelocations
@ -173,6 +169,23 @@ section_table:
IMAGE_SCN_MEM_READ | \
IMAGE_SCN_MEM_EXECUTE # Characteristics
#ifdef CONFIG_EFI_SBAT
.ascii ".sbat\0\0\0"
.long ZO__esbat - ZO__sbat # VirtualSize
.long setup_size + ZO__sbat # VirtualAddress
.long ZO__esbat - ZO__sbat # SizeOfRawData
.long setup_size + ZO__sbat # PointerToRawData
.long 0, 0, 0
.long IMAGE_SCN_CNT_INITIALIZED_DATA | \
IMAGE_SCN_MEM_READ | \
IMAGE_SCN_MEM_DISCARDABLE # Characteristics
.set textsize, ZO__sbat
#else
.set textsize, ZO__data
#endif
.ascii ".data\0\0\0"
.long ZO__end - ZO__data # VirtualSize
.long setup_size + ZO__data # VirtualAddress

View File

@ -7143,6 +7143,8 @@ CONFIG_EFI_RUNTIME_WRAPPERS=y
CONFIG_APPLE_PROPERTIES=y
# CONFIG_RESET_ATTACK_MITIGATION is not set
CONFIG_EFI_RCI2_TABLE=y
CONFIG_EFI_SBAT=y
CONFIG_EFI_SBAT_FILE="kernel.sbat"
CONFIG_UEFI_CPER=y
CONFIG_UEFI_CPER_X86=y
CONFIG_EFI_DEV_PATH_PARSER=y

View File

@ -7131,6 +7131,8 @@ CONFIG_EFI_RUNTIME_WRAPPERS=y
CONFIG_APPLE_PROPERTIES=y
# CONFIG_RESET_ATTACK_MITIGATION is not set
CONFIG_EFI_RCI2_TABLE=y
CONFIG_EFI_SBAT=y
CONFIG_EFI_SBAT_FILE="kernel.sbat"
CONFIG_UEFI_CPER=y
CONFIG_UEFI_CPER_X86=y
CONFIG_EFI_DEV_PATH_PARSER=y

View File

@ -211,6 +211,30 @@ config EFI_RCI2_TABLE
Say Y here for Dell EMC PowerEdge systems.
config EFI_SBAT
def_bool y if EFI_SBAT_FILE!=""
config EFI_SBAT_FILE
string "Embedded SBAT section file path"
depends on EFI_ZBOOT || (EFI_STUB && X86)
help
SBAT section provides a way to improve SecureBoot revocations of UEFI
binaries by introducing a generation-based mechanism. With SBAT, older
UEFI binaries can be prevented from booting by bumping the minimal
required generation for the specific component in the bootloader.
Note: SBAT information is distribution specific, i.e. the owner of the
signing SecureBoot certificate must define the SBAT policy. Linux
kernel upstream does not define SBAT components and their generations.
See https://github.com/rhboot/shim/blob/main/SBAT.md for the additional
details.
Specify a file with SBAT data which is going to be embedded as '.sbat'
section into the kernel.
If unsure, leave blank.
endmenu
config UEFI_CPER

View File

@ -350,7 +350,7 @@ int pvrdma_alloc_ucontext(struct ib_ucontext *uctx, struct ib_udata *udata)
uresp.qp_tab_size = vdev->dsr->caps.max_qp;
ret = ib_copy_to_udata(udata, &uresp, sizeof(uresp));
if (ret) {
pvrdma_uar_free(vdev, &context->uar);
/* pvrdma_dealloc_ucontext() also frees the UAR */
pvrdma_dealloc_ucontext(&context->ibucontext);
return -EFAULT;
}

View File

@ -867,8 +867,11 @@ void iscsit_dec_conn_usage_count(struct iscsit_conn *conn)
spin_lock_bh(&conn->conn_usage_lock);
conn->conn_usage_count--;
if (!conn->conn_usage_count && conn->conn_waiting_on_uc)
if (!conn->conn_usage_count && conn->conn_waiting_on_uc) {
spin_unlock_bh(&conn->conn_usage_lock);
complete(&conn->conn_waiting_on_uc_comp);
return;
}
spin_unlock_bh(&conn->conn_usage_lock);
}

View File

@ -324,6 +324,12 @@ static void gfs2_metapath_ra(struct gfs2_glock *gl, __be64 *start, __be64 *end)
}
}
static inline struct buffer_head *
metapath_dibh(struct metapath *mp)
{
return mp->mp_bh[0];
}
static int __fillup_metapath(struct gfs2_inode *ip, struct metapath *mp,
unsigned int x, unsigned int h)
{
@ -668,7 +674,7 @@ static int __gfs2_iomap_alloc(struct inode *inode, struct iomap *iomap,
{
struct gfs2_inode *ip = GFS2_I(inode);
struct gfs2_sbd *sdp = GFS2_SB(inode);
struct buffer_head *dibh = mp->mp_bh[0];
struct buffer_head *dibh = metapath_dibh(mp);
u64 bn;
unsigned n, i, blks, alloced = 0, iblks = 0, branch_start = 0;
size_t dblks = iomap->length >> inode->i_blkbits;
@ -1122,10 +1128,18 @@ static int gfs2_iomap_begin(struct inode *inode, loff_t pos, loff_t length,
goto out_unlock;
break;
default:
goto out_unlock;
goto out;
}
ret = gfs2_iomap_begin_write(inode, pos, length, flags, iomap, &mp);
if (ret)
goto out_unlock;
out:
if (iomap->type == IOMAP_INLINE) {
iomap->private = metapath_dibh(&mp);
get_bh(iomap->private);
}
out_unlock:
release_metapath(&mp);
@ -1139,6 +1153,9 @@ static int gfs2_iomap_end(struct inode *inode, loff_t pos, loff_t length,
struct gfs2_inode *ip = GFS2_I(inode);
struct gfs2_sbd *sdp = GFS2_SB(inode);
if (iomap->private)
brelse(iomap->private);
switch (flags & (IOMAP_WRITE | IOMAP_ZERO)) {
case IOMAP_WRITE:
if (flags & IOMAP_DIRECT)

View File

@ -1627,7 +1627,7 @@ static void nfs_writeback_result(struct rpc_task *task,
struct nfs_pgio_args *argp = &hdr->args;
struct nfs_pgio_res *resp = &hdr->res;
if (resp->count < argp->count) {
if (resp->count < argp->count && !list_empty(&hdr->pages)) {
static unsigned long complain;
/* This a short write! */

2
kernel.sbat Normal file
View File

@ -0,0 +1,2 @@
sbat,1,SBAT Version,sbat,1,https://github.com/rhboot/shim/blob/main/SBAT.md
kernel.centos,1,Red Hat,kernel-core,4.18.0-553.139.1.el8.x86_64,mailto:secalert@redhat.com