# changelog

author: Tim College <tcollege@interworx.com> - 6.18.38-1.iworx
changelog:
  - Graft the packaging body (BuildKernel staging, boot scriptlets, -devel
    subpackage) from the ELRepo kernel-ml 6.9.7-1.el7 SRPM; single default
    flavour, x86_64, per-OS %if branches.
  - InterWorx additions: EL7 host-tool shims (elf.h via HOSTCFLAGS, copy_file_range
    shim into gen_init_cpio) and the post-olddefconfig config-assertion gate
    (legacy xtables + virtio + ipset + NF_NAT + BBR/fq + XFS quota union).
  - EL8/EL9 config assembly and kernel-install boot integration remain TODO.


author: Tim College <tcollege@interworx.com> - 6.18.38-7.iworx
changelog:
  - Catch-up entry for builds 2 through 7: EL7 config rebased onto the broad
    ELRepo distro base (replacing the localmodconfig trim); EL8/EL9 fully enabled
    (Alma 8.10 / Rocky 9 config bases, gcc-toolset-13 on EL8, kernel-install/BLS
    boot integration, secure-boot infra disabled for vanilla source, nft AND
    legacy iptables backends per the APF posture); portable brp macros with EL7
    fallback definitions (rpm 4.11 predates __brp_*); kernel tarball fetched at
    build time via sources/REMOTE-SOURCES instead of manual placement.


author: Tim College <tcollege@interworx.com> - 6.18.38-8.iworx
changelog:
  - Fleet-parity subpackages (parity with the altarch 5.4 fleet kernel):
    headers (make headers_install), tools (cpupower + debug decoders, turbostat,
    x86_energy_perf_policy, tmon, gpio/iio utilities, intel-speed-select),
    tools-libs and tools-libs-devel (libcpupower); name Provides for the
    Fedora-style kernel-core/-modules split on the monolithic main package.
    EL7: turbostat needs a reallocarray shim (toolscompat.h, glibc 2.17);
    kvm_stat is skipped fleet-wide (python3 script, no python3 on EL7).


author: Tim College <tcollege@interworx.com> - 6.18.38-11.iworx
changelog:
  - Restore the legacy nat and raw table modules (iptable_nat, ip6table_nat,
    iptable_raw, ip6table_raw) plus the MASQUERADE targets, missing from every
    published build: the two-pass olddefconfig flow dropped them because they
    were never on the REQUIRED_M force list and have no legacy-gated Kconfig
    default. Field impact: boot-time ip6tables-restore failed with "unable to
    initialize table 'nat'" on fleet boxes with a *nat block in
    /etc/sysconfig/ip6tables, and iptables-save-based rewrites silently dropped
    *nat from the saved v4 ruleset.


author: Tim College <tcollege@interworx.com> - 6.18.38-13.iworx
changelog:
  - Force and assert the fleet's storage and NIC drivers in the config gate so a
    base-config rebase or localmodconfig slip cannot silently drop them:
    SATA_AHCI, MEGARAID_SAS, SCSI_AACRAID, SCSI_MPT3SAS (every RAID/SATA
    controller in the MH+MA hardware scrape, IWX-15066) plus TIGON3, BNXT, IGB,
    IXGBE, I40E, ICE, E1000, E1000E (every fleet NIC family). All are =m in the
    EL7/EL8/EL9 bases; the gate now fails the build if any goes missing.


author: Tim College <tcollege@interworx.com> - 6.18.39-1.iworx
changelog:
  - Bump to upstream 6.18.39 (longterm, released 2026-07-18). Notable for us: a
    futex/requeue revert that backs out commit 74e144274af39 (it leaked pi_state
    and broke the waiter==owner self-deadlock case), in the rtmutex/futex-PI path
    that GhostLock (CVE-2026-43499) lives in - 6.18.38 shipped that buggy commit.
    Nothing in .39 touches the asserted RAID/NIC driver set, so the config gate is
    unchanged. Ref IWX-15085.


