Linux 4.11

From LinuxMIPS
Jump to: navigation, search

Linux 4.11 was preceded by Linux 4.10 and followed by Linux 4.12.


General Features

Kernel Virtual Machine (KVM)

  • Add GVA->HPA page tables for T&E, to cache GVA mappings commit commit commit commit.
  • Generate fast-path TLB refill exception handler which loads host TLB entries from GVA page table, avoiding repeated guest memory translation and guest TLB lookups commit.
  • Use uaccess macros when T&E needs to access guest memory, which with GVA page tables and the Linux TLB refill handler improves robustness against TLB faults and fixes EVA hosts commit.
  • Use BadInstr/BadInstrP registers when available to obtain instruction encodings after a synchronous trap commit.
  • Add GPA->HPA page tables to replace the inflexible linear array, allowing for multiple sparsely arranged memory regions commit.
  • Properly implement dirty page logging commit commit commit.
  • Add KVM_CAP_SYNC_MMU support so that changes in GPA mappings become effective in guests even if they are already running, allowing for copy-on-write, KSM, idle page tracking, swapping, and guest memory ballooning commit.
  • Add KVM_CAP_READONLY_MEM support, so writes to specified memory regions are treated as MMIO commit commit commit.
  • Implement proper CP0_EBase support in T&E commit.
  • Expose a few more missing CP0 registers to userland commit commit.
  • Add KVM_CAP_NR_VCPUS and KVM_CAP_MAX_VCPUS support, and allow up to 8 VCPUs to be created in a VM commit.

Kexec & kdump

  • Lots of improvements and fixes
  • Add correct copy_regs implementations commit commit
  • Add debug logging of new kernel information commit

Architectural Support



  • Use Makefile.postlink to insert relocations into vmlinux commit
  • Provide plat_post_relocation hook (used for Octeon KASLR) commit
  • Add support for tuning mmap randomisation commit
  • Relocate DTB commit


MIPS Release 6

  • Fix MULTU/MADDU/MSUBU sign extension in r2 emulation commit
  • Remove r2_emul_return and use ERETNC unconditionally on MIPSr6 commit
  • Allow pre-r6 emulation on SMP MIPSr6 kernels commit

Cache management

  • Treat physically indexed dcache as non-aliasing commit
  • Add return errors to protected cache ops for KVM commit
  • CM3: Ensure L1 & L2 cache ECC checking matches commit
  • CM3: Indicate inclusive caches commit
  • I6400: Treat dcache as physically indexed commit

Memory management

  • Ensure bootmem doesn't corrupt reserved memory commit
  • Export some TLB exception generation functions for KVM commit


  • NULL check initial_boot_params before use in of_scan_flat_dt() commit
  • Fix unaligned access in of_alias_scan() commit


  • CPS: Don't BUG if a CPU fails to start commit

Other fixes

  • Fix longstanding 64-bit IP checksum carry bug commit
  • Fix KERN_CONT fallout in cpu-bugs64.c commit and sync-r4k.c commit
  • Update defconfigs for NF_CT_PROTO_DCCP, UDPLITE commit, CPU_FREQ_STAT commit, SCSI_DH changes commit
  • Disable certain builtin compiler options, stack-check (whole kernel) commit, asynchronous-unwind-tables (VDSO) commit
  • A bunch of build fixes from testing
  • Various other minor cleanups & corrections

Platform Specific

Broadcom SOCs

  • Migrate interrupts during bmips_cpu_disable commit
  • BCM47xx: Add Luxul devices commit
  • BCM47xx: Fix Asus WL-500W button inversion commit
  • BCM7xxx: Add SPI device nodes commit

Generic (multiplatform)

  • Add kexec DTB passing commit
  • Fix big endian commit
  • Add cpp_its_S in ksym_dep_filter to silence build warning commit


  • Reformat inline assembler code to modern standards commit
  • Fix binutils 2.25 build error commit


  • Fix duplicate CAC_BASE definition build error commit
  • Disable qlge driver to workaround broken compiler commit


  • Refresh defconfig and activate more drivers commit commit
  • Lock DMA register access commit
  • Fix cascading IRQ setup commit
  • Fix build of VPE loader commit
  • xway: Fix ethernet packet header corruption over reboot commit

Loongson 1

  • Add watchdog support commit
  • 1B: Reduce DEFAULT_MEMSIZE to 64MB commit
  • 1B: Change OSC clock name to match rest of kernel commit

Cavium Octeon


  • Fix non-default XLR build error due to netlogic,xlp-pic code commit
  • Fix assembler warning from smpboot.S commit


  • Fix linker error when early printk is disabled commit



  • Support raw appended DTB commit
  • Add missing I2C & I2S clocks commit
  • Add missing pinmux commit and fix pinmux function name typo commit
  • Add missing clk_round_rate() commit
  • Clean up prom_init() commit
  • MT7621: Set SoC type commit
  • MT7621: Support highmem commit


  • Modernize printing of kernel messages and resolve KERN_CONT fallout commit
  • 7segled: use permission-specific DEVICE_ATTR variants commit