dd7f750bad
* Wed Oct 11 2023 Scott Weaver <scweaver@redhat.com> [5.14.0-376.el9] - kernel.spec.template: Fix --without bpftool (Prarit Bhargava) - redhat/Makefile.cross: Add message for disabled subpackages (Prarit Bhargava) - redhat/Makefile.cross: Update cross targets with disabled subpackages (Prarit Bhargava) - redhat/Makefile.cross: Remove ARCH selection code (Prarit Bhargava) - redhat/Makefile.cross: Update script (Prarit Bhargava) - redhat/kernel.spec.template: Disable 'extracting debug info' messages (Prarit Bhargava) - redhat/kernel.spec.template: Fix internal "File listed twice" errors (Prarit Bhargava) - cifs: fix potential oops in cifs_oplock_break (Scott Mayhew) [RHEL-11577] - smb: propagate error code of extract_sharename() (Scott Mayhew) [RHEL-11577] - smb: client: fix dfs link mount against w2k8 (Scott Mayhew) [RHEL-11577] - smb3: do not set NTLMSSP_VERSION flag for negotiate not auth request (Scott Mayhew) [RHEL-11577] - smb: client: fix missed ses refcounting (Scott Mayhew) [RHEL-11577] - cifs: fix session state check in smb2_find_smb_ses (Scott Mayhew) [RHEL-11577] - cifs: fix session state check in reconnect to avoid use-after-free issue (Scott Mayhew) [RHEL-11577] - smb: client: fix shared DFS root mounts with different prefixes (Scott Mayhew) [RHEL-11577] - smb: client: fix broken file attrs with nodfs mounts (Scott Mayhew) [RHEL-11577] - cifs: do all necessary checks for credits within or before locking (Scott Mayhew) [RHEL-11577] - cifs: prevent use-after-free by freeing the cfile later (Scott Mayhew) [RHEL-11577] - SMB3: Do not send lease break acknowledgment if all file handles have been closed (Scott Mayhew) [RHEL-11577] - cifs: add a warning when the in-flight count goes negative (Scott Mayhew) [RHEL-11577] - cifs: fix lease break oops in xfstest generic/098 (Scott Mayhew) [RHEL-11577] - cifs: fix max_credits implementation (Scott Mayhew) [RHEL-11577] - cifs: fix sockaddr comparison in iface_cmp (Scott Mayhew) [RHEL-11577] - smb/client: print "Unknown" instead of bogus link speed value (Scott Mayhew) [RHEL-11577] - cifs: print all credit counters in DebugData (Scott Mayhew) [RHEL-11577] - cifs: fix status checks in cifs_tree_connect (Scott Mayhew) [RHEL-11577] - smb: remove obsolete comment (Scott Mayhew) [RHEL-11577] - cifs: address unused variable warning (Scott Mayhew) [RHEL-11577] - smb: delete an unnecessary statement (Scott Mayhew) [RHEL-11577] - smb3: missing null check in SMB2_change_notify (Scott Mayhew) [RHEL-11577] - smb: move client and server files to common directory fs/smb (Scott Mayhew) [RHEL-11577] - cifs: mapchars mount option ignored (Scott Mayhew) [RHEL-11577] - smb3: display debug information better for encryption (Scott Mayhew) [RHEL-11577] - cifs: fix smb1 mount regression (Scott Mayhew) [RHEL-11577] - SMB3: drop reference to cfile before sending oplock break (Scott Mayhew) [RHEL-11577] - SMB3: Close all deferred handles of inode in case of handle lease break (Scott Mayhew) [RHEL-11577] - cifs: release leases for deferred close handles when freezing (Scott Mayhew) [RHEL-11577] - smb3: fix problem remounting a share after shutdown (Scott Mayhew) [RHEL-11577] - SMB3: force unmount was failing to close deferred close files (Scott Mayhew) [RHEL-11577] - smb3: improve parallel reads of large files (Scott Mayhew) [RHEL-11577] - do not reuse connection if share marked as isolated (Scott Mayhew) [RHEL-11577] - cifs: fix pcchunk length type in smb2_copychunk_range (Scott Mayhew) [RHEL-11577] - cifs: fix sharing of DFS connections (Scott Mayhew) [RHEL-11577] - cifs: avoid potential races when handling multiple dfs tcons (Scott Mayhew) [RHEL-11577] - cifs: protect access of TCP_Server_Info::{origin,leaf}_fullpath (Scott Mayhew) [RHEL-11577] - cifs: fix potential race when tree connecting ipc (Scott Mayhew) [RHEL-11577] - cifs: fix potential use-after-free bugs in TCP_Server_Info::hostname (Scott Mayhew) [RHEL-11577] - cifs: print smb3_fs_context::source when mounting (Scott Mayhew) [RHEL-11577] - cifs: protect session status check in smb2_reconnect() (Scott Mayhew) [RHEL-11577] - SMB3.1.1: correct definition for app_instance_id create contexts (Scott Mayhew) [RHEL-11577] - cifs: update internal module version number for cifs.ko (Scott Mayhew) [RHEL-11577] - smb3: move some common open context structs to smbfs_common (Scott Mayhew) [RHEL-11577] - smb3: make query_on_disk_id open context consistent and move to common code (Scott Mayhew) [RHEL-11577] - SMB3.1.1: add new tree connect ShareFlags (Scott Mayhew) [RHEL-11577] - cifs: missing lock when updating session status (Scott Mayhew) [RHEL-11577] - SMB3: Close deferred file handles in case of handle lease break (Scott Mayhew) [RHEL-11577] - SMB3: Add missing locks to protect deferred close file list (Scott Mayhew) [RHEL-11577] - cifs: Avoid a cast in add_lease_context() (Scott Mayhew) [RHEL-11577] - cifs: double lock in cifs_reconnect_tcon() (Scott Mayhew) [RHEL-11577] - cifs: sanitize paths in cifs_update_super_prepath. (Scott Mayhew) [RHEL-11577] - cifs: get rid of dead check in smb2_reconnect() (Scott Mayhew) [RHEL-11577] - cifs: prevent infinite recursion in CIFSGetDFSRefer() (Scott Mayhew) [RHEL-11577] - cifs: avoid races in parallel reconnects in smb1 (Scott Mayhew) [RHEL-11577] - cifs: fix DFS traversal oops without CONFIG_CIFS_DFS_UPCALL (Scott Mayhew) [RHEL-11577] - cifs: fix missing unload_nls() in smb2_reconnect() (Scott Mayhew) [RHEL-11577] - cifs: avoid race conditions with parallel reconnects (Scott Mayhew) [RHEL-11577] - cifs: append path to open_enter trace event (Scott Mayhew) [RHEL-11577] - cifs: lock chan_lock outside match_session (Scott Mayhew) [RHEL-11577] - cifs: check only tcon status on tcon related functions (Scott Mayhew) [RHEL-11577] - cifs: use DFS root session instead of tcon ses (Scott Mayhew) [RHEL-11577] - cifs: return DFS root session id in DebugData (Scott Mayhew) [RHEL-11577] - cifs: fix use-after-free bug in refresh_cache_worker() (Scott Mayhew) [RHEL-11577] - cifs: set DFS root session in cifs_get_smb_ses() (Scott Mayhew) [RHEL-11577] - cifs: prevent data race in cifs_reconnect_tcon() (Scott Mayhew) [RHEL-11577] - cifs: reuse cifs_match_ipaddr for comparison of dstaddr too (Scott Mayhew) [RHEL-11577] - cifs: match even the scope id for ipv6 addresses (Scott Mayhew) [RHEL-11577] - update internal module version number for cifs.ko (Scott Mayhew) [RHEL-11577] - cifs: update ip_addr for ses only for primary chan setup (Scott Mayhew) [RHEL-11577] - smb3: Replace smb2pdu 1-element arrays with flex-arrays (Scott Mayhew) [RHEL-11577] - cifs: get rid of dns resolve worker (Scott Mayhew) [RHEL-11577] - cifs: Fix warning and UAF when destroy the MR list (Scott Mayhew) [RHEL-11577] - cifs: Fix lost destroy smbd connection when MR allocate failed (Scott Mayhew) [RHEL-11577] - cifs: Replace remaining 1-element arrays (Scott Mayhew) [RHEL-11577] - cifs: Convert struct fealist away from 1-element array (Scott Mayhew) [RHEL-11577] - cifs: Fix uninitialized memory reads for oparms.mode (Scott Mayhew) [RHEL-11577] - cifs: remove unneeded 2bytes of padding from smb2 tree connect (Scott Mayhew) [RHEL-11577] - cifs: Use a folio in cifs_page_mkwrite() (Scott Mayhew) [RHEL-11577] - cifs: Fix uninitialized memory read in smb3_qfs_tcon() (Scott Mayhew) [RHEL-11577] - cifs: get rid of unneeded conditional in cifs_get_num_sgs() (Scott Mayhew) [RHEL-11577] - cifs: prevent data race in smb2_reconnect() (Scott Mayhew) [RHEL-11577] - cifs: fix indentation in make menuconfig options (Scott Mayhew) [RHEL-11577] - cifs: update Kconfig description (Scott Mayhew) [RHEL-11577] - cifs: Get rid of unneeded conditional in the smb2_get_aead_req() (Scott Mayhew) [RHEL-11577] - cifs: print last update time for interface list (Scott Mayhew) [RHEL-11577] - cifs: Replace zero-length arrays with flexible-array members (Scott Mayhew) [RHEL-11577] - cifs: Use kstrtobool() instead of strtobool() (Scott Mayhew) [RHEL-11577] - cifs: Fix use-after-free in rdata->read_into_pages() (Scott Mayhew) [RHEL-11577] - smb3: missing inode locks in punch hole (Scott Mayhew) [RHEL-11577] - cifs: writeback fix (Scott Mayhew) [RHEL-11577] - mm/slab_common: fix slab_caches list corruption after kmem_cache_destroy() (Rafael Aquini) [RHEL-2466] - crypto: testmgr - fix RNG performance in fuzz tests (Ivan Vecera) [RHEL-3646] - crypto/testmgr: use get_random_u32_inclusive() when possible (Ivan Vecera) [RHEL-3646] - crypto/testmgr: use get_random_u32_below() instead of deprecated function (Ivan Vecera) [RHEL-3646] - crypto/testmgr: use get_random_{u8,u16}() when possible, part 1 (Ivan Vecera) [RHEL-3646] - crypto/testmgr: use prandom_u32_max() when possible, part 1 (Ivan Vecera) [RHEL-3646] - crypto: testmgr - test in-place en/decryption with two sglists (Ivan Vecera) [RHEL-3646] - arm64: adjust KASLR relocation after ARCH_RANDOM removal (Ivan Vecera) [RHEL-3646] - selftests/bpf: fix stacktrace_build_id with missing kprobe/urandom_read (Ivan Vecera) [RHEL-3646] - random: do not include <asm/archrandom.h> from random.h (Ivan Vecera) [RHEL-3646] - x86/espfix: Use get_random_long() rather than archrandom (Ivan Vecera) [RHEL-3646] - s390/archrandom: add missing header include (Ivan Vecera) [RHEL-3646] - random: include <linux/once.h> in the right header (Ivan Vecera) [RHEL-3646] - random: align entropy_timer_state to cache line (Ivan Vecera) [RHEL-3646] - random: mix in cycle counter when jitter timer fires (Ivan Vecera) [RHEL-3646] - random: spread out jitter callback to different CPUs (Ivan Vecera) [RHEL-3646] - random: remove extraneous period and add a missing one in comments (Ivan Vecera) [RHEL-3646] - random: add back async readiness notifier (Ivan Vecera) [RHEL-3646] - random: reseed in delayed work rather than on-demand (Ivan Vecera) [RHEL-3646] - random: always mix cycle counter in add_latent_entropy() (Ivan Vecera) [RHEL-3646] - hw_random: use add_hwgenerator_randomness() for early entropy (Ivan Vecera) [RHEL-3646] - random: modernize documentation comment on get_random_bytes() (Ivan Vecera) [RHEL-3646] - random: adjust comment to account for removed function (Ivan Vecera) [RHEL-3646] - random: remove early archrandom abstraction (Ivan Vecera) [RHEL-3646] - random: add helpers for random numbers with given floor or range (Ivan Vecera) [RHEL-3646] - random: use rejection sampling for uniform bounded random integers (Ivan Vecera) [RHEL-3646] - random: use arch_get_random*_early() in random_init() (Ivan Vecera) [RHEL-3646] - random: clear new batches when bringing new CPUs online (Ivan Vecera) [RHEL-3646] - random: fix typos in get_random_bytes() comment (Ivan Vecera) [RHEL-3646] - prandom: make use of smaller types in prandom_u32_max (Ivan Vecera) [RHEL-3646] - random: add 8-bit and 16-bit batches (Ivan Vecera) [RHEL-3646] - random: use init_utsname() instead of utsname() (Ivan Vecera) [RHEL-3646] - kfence: use better stack hash seed (Ivan Vecera) [RHEL-3646] - random: split initialization into early step and later step (Ivan Vecera) [RHEL-3646] - random: throttle hwrng writes if no entropy is credited (Ivan Vecera) [RHEL-3646] - random: restore O_NONBLOCK support (Ivan Vecera) [RHEL-3646] - random: use hwgenerator randomness more frequently at early boot (Ivan Vecera) [RHEL-3646] - random: correct spelling of "overwrites" (Ivan Vecera) [RHEL-3646] - random: handle archrandom with multiple longs (Ivan Vecera) [RHEL-3646] - KVM: PPC: Use arch_get_random_seed_long instead of powernv variant (Ivan Vecera) [RHEL-3646] - random: use try_cmpxchg in _credit_init_bits (Ivan Vecera) [RHEL-3646] - timekeeping: contribute wall clock to rng on time change (Ivan Vecera) [RHEL-3646] - random: remove CONFIG_ARCH_RANDOM (Ivan Vecera) [RHEL-3646] - random: credit cpu and bootloader seeds by default (Ivan Vecera) [RHEL-3646] - s390/archrandom: prevent CPACF trng invocations in interrupt context (Ivan Vecera) [RHEL-3646] - s390/archrandom: simplify back to earlier design and initialize earlier (Ivan Vecera) [RHEL-3646] - hwrng: s390 - replace snprintf in show functions with sysfs_emit (Ivan Vecera) [RHEL-3646] - random: update comment from copy_to_user() -> copy_to_iter() (Ivan Vecera) [RHEL-3646] - random: quiet urandom warning ratelimit suppression message (Ivan Vecera) [RHEL-3646] - random: remove rng_has_arch_random() (Ivan Vecera) [RHEL-3646] - Revert "arm64: Initialize jump labels before setup_machine_fdt()" (Ivan Vecera) [RHEL-3646] - random: do not use jump labels before they are initialized (Ivan Vecera) [RHEL-3646] - random: account for arch randomness in bits (Ivan Vecera) [RHEL-3646] - random: mark bootloader randomness code as __init (Ivan Vecera) [RHEL-3646] - random: avoid checking crng_ready() twice in random_init() (Ivan Vecera) [RHEL-3646] - random: check for signals after page of pool writes (Ivan Vecera) [RHEL-3646] - random: wire up fops->splice_{read,write}_iter() (Ivan Vecera) [RHEL-3646] - crypto: rng: convert to using iov_iter (Ivan Vecera) [RHEL-3646] - random: convert to using fops->write_iter() (Ivan Vecera) [RHEL-3646] - random: convert to using fops->read_iter() (Ivan Vecera) [RHEL-3646] - random: unify batched entropy implementations (Ivan Vecera) [RHEL-3646] - random: move randomize_page() into mm where it belongs (Ivan Vecera) [RHEL-3646] - random: remove mostly unused async readiness notifier (Ivan Vecera) [RHEL-3646] - random: remove get_random_bytes_arch() and add rng_has_arch_random() (Ivan Vecera) [RHEL-3646] - random: move initialization functions out of hot pages (Ivan Vecera) [RHEL-3646] - random: make consistent use of buf and len (Ivan Vecera) [RHEL-3646] - random: use proper return types on get_random_{int,long}_wait() (Ivan Vecera) [RHEL-3646] - random: remove extern from functions in header (Ivan Vecera) [RHEL-3646] - arm64: Initialize jump labels before setup_machine_fdt() (Ivan Vecera) [RHEL-3646] - random: use static branch for crng_ready() (Ivan Vecera) [RHEL-3646] - random: credit architectural init the exact amount (Ivan Vecera) [RHEL-3646] - random: handle latent entropy and command line from random_init() (Ivan Vecera) [RHEL-3646] - random: use proper jiffies comparison macro (Ivan Vecera) [RHEL-3646] - random: remove ratelimiting for in-kernel unseeded randomness (Ivan Vecera) [RHEL-3646] - random: move initialization out of reseeding hot path (Ivan Vecera) [RHEL-3646] - random: avoid initializing twice in credit race (Ivan Vecera) [RHEL-3646] - random: use symbolic constants for crng_init states (Ivan Vecera) [RHEL-3646] - random32: use real rng for non-deterministic randomness (Ivan Vecera) [RHEL-3646] - init: call time_init() before rand_initialize() (Ivan Vecera) [RHEL-3646] - random: fix sysctl documentation nits (Ivan Vecera) [RHEL-3646] - timekeeping: Add raw clock fallback for random_get_entropy() (Ivan Vecera) [RHEL-3646] - random: pull add_hwgenerator_randomness() declaration into random.h (Ivan Vecera) [RHEL-3646] - random: remove useless header comment (Ivan Vecera) [RHEL-3646] - char: move RANDOM_TRUST_CPU & RANDOM_TRUST_BOOTLOADER into the Character devices menu (Ivan Vecera) [RHEL-3646] - ibmveth: Reduce default tx queues to 8 (Mamatha Inamdar) [2228218] - ibmveth: Ethtool set queue support (Mamatha Inamdar) [2228218] - ibmveth: Implement multi queue on xmit (Mamatha Inamdar) [2228218] - ibmveth: Copy tx skbs into a premapped buffer (Mamatha Inamdar) [2228218] - perf/x86/intel: Add Crestmont PMU (Michael Petlan) [2177050] - x86/cpu: Fix Crestmont uarch (Michael Petlan) [2177050] - x86/cpu: Fix Gracemont uarch (Michael Petlan) [2177050] - KVM: arm64: fix __kvm_host_psci_cpu_entry() prototype (Shaoqin Huang) [RHEL-1760] - KVM: arm64: Rephrase percpu enable/disable tracking in terms of hyp (Shaoqin Huang) [RHEL-1760] - KVM: arm64: Fix hardware enable/disable flows for pKVM (Shaoqin Huang) [RHEL-1760] - KVM: arm64: Add missing BTI instructions (Shaoqin Huang) [RHEL-1760] - KVM: arm64: Fix misuse of KVM_ARM_VCPU_POWER_OFF bit index (Shaoqin Huang) [RHEL-1760] - KVM: arm64: Use different pointer authentication keys for pKVM (Shaoqin Huang) [RHEL-1760] - KVM: arm64: Rip out the vestiges of the 'old' ID register scheme (Shaoqin Huang) [RHEL-1760] - KVM: arm64: Handle ID register reads using the VM-wide values (Shaoqin Huang) [RHEL-1760] - KVM: arm64: Use generic sanitisation for ID_AA64PFR0_EL1 (Shaoqin Huang) [RHEL-1760] - KVM: arm64: Use generic sanitisation for ID_(AA64)DFR0_EL1 (Shaoqin Huang) [RHEL-1760] - KVM: arm64: Use arm64_ftr_bits to sanitise ID register writes (Shaoqin Huang) [RHEL-1760] - KVM: arm64: Save ID registers' sanitized value per guest (Shaoqin Huang) [RHEL-1760] - KVM: arm64: Reuse fields of sys_reg_desc for idreg (Shaoqin Huang) [RHEL-1760] - KVM: arm64: Rewrite IMPDEF PMU version as NI (Shaoqin Huang) [RHEL-1760] - KVM: arm64: Make vCPU feature flags consistent VM-wide (Shaoqin Huang) [RHEL-1760] - KVM: arm64: Relax invariance of KVM_ARM_VCPU_POWER_OFF (Shaoqin Huang) [RHEL-1760] - KVM: arm64: Separate out feature sanitisation and initialisation (Shaoqin Huang) [RHEL-1760] - KVM: arm64: Use BTI for nvhe (Shaoqin Huang) [RHEL-1760] - arm64: kvm: avoid overflow in integer division (Shaoqin Huang) [RHEL-1760] - KVM: arm64: Use local TLBI on permission relaxation (Shaoqin Huang) [RHEL-1760] - KVM: arm64: Split huge pages during KVM_CLEAR_DIRTY_LOG (Shaoqin Huang) [RHEL-1760] - KVM: arm64: Open-code kvm_mmu_write_protect_pt_masked() (Shaoqin Huang) [RHEL-1760] - KVM: arm64: Split huge pages when dirty logging is enabled (Shaoqin Huang) [RHEL-1760] - KVM: arm64: Add kvm_uninit_stage2_mmu() (Shaoqin Huang) [RHEL-1760] - KVM: arm64: Refactor kvm_arch_commit_memory_region() (Shaoqin Huang) [RHEL-1760] - KVM: arm64: Add kvm_pgtable_stage2_split() (Shaoqin Huang) [RHEL-1760] - KVM: arm64: Add KVM_CAP_ARM_EAGER_SPLIT_CHUNK_SIZE (Shaoqin Huang) [RHEL-1760] - KVM: arm64: Export kvm_are_all_memslots_empty() (Shaoqin Huang) [RHEL-1760] - KVM: arm64: Add helper for creating unlinked stage2 subtrees (Shaoqin Huang) [RHEL-1760] - KVM: arm64: Add KVM_PGTABLE_WALK flags for skipping CMOs and BBM TLBIs (Shaoqin Huang) [RHEL-1760] - KVM: arm64: Rename free_removed to free_unlinked (Shaoqin Huang) [RHEL-1760] - phy: qcom-qmp-pcie: support SM8150 PCIe QMP PHYs (Alessandro Carminati) [RHEL-10197] - phy: qcom-qmp-pcie: populate offsets configuration (Alessandro Carminati) [RHEL-10197] - phy: qcom-qmp-pcie: simplify clock handling (Alessandro Carminati) [RHEL-10197] - scsi: ufs: qcom: Rename "hs_gear" to "phy_gear" (Alessandro Carminati) [RHEL-10197] - scsi: ufs: qcom: Update PHY settings only when scaling to higher gears (Alessandro Carminati) [RHEL-10197] - scsi: ufs: qcom: Configure SYS1CLK_1US_REG for UFS V4 and above (Alessandro Carminati) [RHEL-10197] - scsi: ufs: qcom: Align programing of unipro clk attributes (Alessandro Carminati) [RHEL-10197] - scsi: ufs: qcom: Add support to configure PA_VS_CORE_CLK_40NS_CYCLES (Alessandro Carminati) [RHEL-10197] - scsi: ufs: qcom: Add multiple frequency support for MAX_CORE_CLK_1US_CYCLES (Alessandro Carminati) [RHEL-10197] - scsi: ufs: qcom: Update MAX_CORE_CLK_1US_CYCLES for UFS V4 and above (Alessandro Carminati) [RHEL-10197] - arm64: dts: qcom: sc8280xp: Hook up PDC as wakeup-parent of TLMM (Alessandro Carminati) [RHEL-10197] - scsi: ufs: qcom: Make struct ufs_qcom_bw_table static const (Alessandro Carminati) [RHEL-10197] - scsi: ufs: ufs-qcom: Check host controller state (Alessandro Carminati) [RHEL-10197] - scsi: ufs: core: Export ufshcd_is_hba_active() (Alessandro Carminati) [RHEL-10197] - scsi: ufs: qcom: Add support for scaling interconnects (Alessandro Carminati) [RHEL-10197] - scsi: ufs: core: Add enums for UFS lanes (Alessandro Carminati) [RHEL-10197] - scsi: ufs: qcom: Remove unused variable (Alessandro Carminati) [RHEL-10197] - scsi: ufs: ufs-qcom: Change UFS devfreq timer to delayed (Alessandro Carminati) [RHEL-10197] - scsi: ufs: qcom: Get queue ID from MSI index in ESI handler (Alessandro Carminati) [RHEL-10197] - PCI: qcom: Use DWC helpers for modifying the read-only DBI registers (Alessandro Carminati) [RHEL-10197] - scsi: ufs: ufs-qcom: Switch to the new ICE API (Alessandro Carminati) [RHEL-10197] - soc: qcom: Rename ice to qcom_ice to avoid module name conflict (Alessandro Carminati) [RHEL-10197] - pinctrl: qcom: sa8775p: add the wakeirq map (Alessandro Carminati) [RHEL-10197] - soc: qcom: Make the Qualcomm UFS/SDCC ICE a dedicated driver (Alessandro Carminati) [RHEL-10197] - RDMA/irdma: Prevent zero-length STAG registration (Kamal Heib) [RHEL-6388] {CVE-2023-25775} Resolves: rhbz#2177050, rhbz#2228218, RHEL-10197, RHEL-11577, RHEL-1760, RHEL-2466, RHEL-3646, RHEL-6388 Signed-off-by: Scott Weaver <scweaver@redhat.com>
178 lines
4.7 KiB
Bash
Executable File
178 lines
4.7 KiB
Bash
Executable File
#! /bin/bash
|
|
#
|
|
# Called as filter-modules.sh list-of-modules Arch
|
|
|
|
# This script filters the modules into the kernel-core and kernel-modules
|
|
# subpackages. We list out subsystems/subdirs to prune from the installed
|
|
# module directory. What is left is put into the kernel-core package. What is
|
|
# pruned is contained in the kernel-modules package.
|
|
#
|
|
# This file contains the default subsys/subdirs to prune from all architectures.
|
|
# If an architecture needs to differ, we source a per-arch filter-<arch>.sh file
|
|
# that contains the set of override lists to be used instead. If a module or
|
|
# subsys should be in kernel-modules on all arches, please change the defaults
|
|
# listed here.
|
|
|
|
# Overrides is individual modules which need to remain in kernel-core due to deps.
|
|
overrides="cec isst_if_common isst_tpmi_core isst_tpmi intel_vsec intel_vsec_tpmi"
|
|
|
|
# Set the default dirs/modules to filter out
|
|
driverdirs="atm auxdisplay bcma bluetooth firewire fmc iio infiniband isdn leds media memstick mfd mmc mtd nfc ntb pcmcia platform power ssb staging tty uio uwb w1"
|
|
|
|
chardrvs="mwave pcmcia"
|
|
|
|
netdrvs="appletalk can dsa hamradio ieee802154 irda ppp slip usb wireless"
|
|
|
|
ethdrvs="3com adaptec alteon amd aquantia atheros broadcom cadence calxeda chelsio cisco dec dlink emulex icplus marvell neterion nvidia oki-semi packetengines qlogic rdc renesas sfc silan sis smsc stmicro sun tehuti ti wiznet xircom"
|
|
|
|
cryptdrvs="bcm caam cavium chelsio hisilicon marvell qat"
|
|
|
|
inputdrvs="gameport tablet touchscreen"
|
|
|
|
scsidrvs="aacraid aic7xxx aic94xx be2iscsi bfa bnx2i bnx2fc csiostor cxgbi esas2r fcoe fnic hisi_sas isci libsas lpfc megaraid mpt2sas mpt3sas mvsas pm8001 qla2xxx qla4xxx sym53c8xx_2 ufs qedf"
|
|
|
|
usbdrvs="atm image misc serial wusbcore"
|
|
|
|
fsdrvs="affs befs smb coda cramfs ecryptfs hfs hfsplus jfs minix ncpfs nilfs2 ocfs2 reiserfs romfs squashfs sysv ubifs ufs"
|
|
|
|
netprots="6lowpan appletalk atm ax25 batman-adv bluetooth can dccp dsa ieee802154 irda l2tp mac80211 mac802154 mpls netrom nfc rds rfkill rose sctp smc wireless"
|
|
|
|
drmdrvs="amd ast gma500 i2c i915 mgag200 nouveau radeon via "
|
|
|
|
singlemods="ntb_netdev iscsi_ibft iscsi_boot_sysfs megaraid pmcraid qedi qla1280 9pnet_rdma rpcrdma nvmet-rdma nvme-rdma hid-picolcd hid-prodikeys hwa-hc hwpoison-inject hid-sensor-hub target_core_user sbp_target cxgbit iw_cxgb3 iw_cxgb4 cxgb3i cxgb3i cxgb3i_ddp cxgb4i chcr chtls parport_serial ism regmap-sdw regmap-sdw-mbq arizona-micsupp hid-asus nct6775 ntc_thermistor video"
|
|
|
|
# Grab the arch-specific filter list overrides
|
|
source ./filter-$2.sh
|
|
|
|
filter_dir() {
|
|
filelist=$1
|
|
dir=$2
|
|
|
|
grep -v -e "${dir}/" ${filelist} > ${filelist}.tmp
|
|
|
|
if [ $? -ne 0 ]
|
|
then
|
|
echo "Couldn't remove ${dir}. Skipping."
|
|
else
|
|
grep -e "${dir}/" ${filelist} >> k-d.list
|
|
mv ${filelist}.tmp $filelist
|
|
fi
|
|
|
|
return 0
|
|
}
|
|
|
|
filter_ko() {
|
|
filelist=$1
|
|
mod=$2
|
|
|
|
grep -v -e "${mod}.ko" ${filelist} > ${filelist}.tmp
|
|
|
|
if [ $? -ne 0 ]
|
|
then
|
|
echo "Couldn't remove ${mod}.ko Skipping."
|
|
else
|
|
grep -e "${mod}.ko" ${filelist} >> k-d.list
|
|
mv ${filelist}.tmp $filelist
|
|
fi
|
|
|
|
return 0
|
|
}
|
|
|
|
# Filter the drivers/ subsystems
|
|
for subsys in ${driverdirs}
|
|
do
|
|
filter_dir $1 drivers/${subsys}
|
|
done
|
|
|
|
# Filter the networking drivers
|
|
for netdrv in ${netdrvs}
|
|
do
|
|
filter_dir $1 drivers/net/${netdrv}
|
|
done
|
|
|
|
# Filter the char drivers
|
|
for char in ${chardrvs}
|
|
do
|
|
filter_dir $1 drivers/char/${char}
|
|
done
|
|
|
|
# Filter the ethernet drivers
|
|
for eth in ${ethdrvs}
|
|
do
|
|
filter_dir $1 drivers/net/ethernet/${eth}
|
|
done
|
|
|
|
# Filter the crypto drivers
|
|
for crypt in ${cryptdrvs}
|
|
do
|
|
filter_dir $1 drivers/crypto/${crypt}
|
|
done
|
|
|
|
# SCSI
|
|
for scsi in ${scsidrvs}
|
|
do
|
|
filter_dir $1 drivers/scsi/${scsi}
|
|
done
|
|
|
|
# Input
|
|
for input in ${inputdrvs}
|
|
do
|
|
filter_dir $1 drivers/input/${input}
|
|
done
|
|
|
|
# USB
|
|
for usb in ${usbdrvs}
|
|
do
|
|
filter_dir $1 drivers/usb/${usb}
|
|
done
|
|
|
|
# Filesystems
|
|
for fs in ${fsdrvs}
|
|
do
|
|
filter_dir $1 fs/${fs}
|
|
done
|
|
|
|
# Network protocols
|
|
for prot in ${netprots}
|
|
do
|
|
filter_dir $1 kernel/net/${prot}
|
|
done
|
|
|
|
# DRM
|
|
for drm in ${drmdrvs}
|
|
do
|
|
filter_dir $1 drivers/gpu/drm/${drm}
|
|
done
|
|
|
|
# Just kill sound.
|
|
filter_dir $1 kernel/sound
|
|
filter_dir $1 kernel/drivers/soundwire
|
|
|
|
# Now go through and filter any single .ko files that might have deps on the
|
|
# things we filtered above
|
|
for mod in ${singlemods}
|
|
do
|
|
filter_ko $1 ${mod}
|
|
done
|
|
|
|
# Now process the override list to bring those modules back into core
|
|
for mod in ${overrides}
|
|
do
|
|
grep -v -e "/${mod}.ko" k-d.list > k-d.list.tmp
|
|
if [ $? -ne 0 ]
|
|
then
|
|
echo "Couldn't save ${mod}.ko Skipping."
|
|
else
|
|
grep -e "/${mod}.ko" k-d.list >> $filelist
|
|
mv k-d.list.tmp k-d.list
|
|
fi
|
|
|
|
done
|
|
|
|
# Go through our generated drivers list and remove the .ko files. We'll
|
|
# restore them later.
|
|
for mod in `cat k-d.list`
|
|
do
|
|
rm -rf $mod
|
|
done
|