Commit d25cca49 authored by Ben Hutchings's avatar Ben Hutchings Committed by Lorenzo "Palinuro" Faletra
Browse files

Import Debian changes 4.19.28-2

linux (4.19.28-2) unstable; urgency=medium

  [ Ben Hutchings ]
  * [x86,alpha,m68k] binfmt: Disable BINFMT_AOUT, IA32_AOUT, OSF4_COMPAT
  * [x86] Drop fix for #865303, which no longer affects Debian's OpenJDK
  * udeb: Make serial_cs optional in serial-modules
  * [ppc64el] Disable PCMCIA (fixes FTBFS)

  [ Vagrant Cascadian ]
  * [arm64] Enable DRM_SUN4I and DRM_SUN8I_DW_HDMI as modules.
  * [arm64] Enable I2C_GPIO as a module.
  * [arm64] Enable MESON_EFUSE as a module.

  [ Yves-Alexis Perez ]
  * certs: include both root CA and direct signing certificate.
    closes: #924545

linux (4.19.28-1) unstable; urgency=medium

  * New upstream stable update:
    - devres: Align data[] to ARCH_KMALLOC_MINALIGN
    - drm/bufs: Fix Spectre v1 vulnerability
    - drm/vgem: Fix vgem_init to get drm device available.
    - [arm*] pinctrl: bcm2835: Use raw spinlock for RT compatibility
    - [x86] ASoC: Intel: mrfld: fix uninitialized variable access
    - gpiolib: Fix possible use after free on label
    - [armhf] drm/sun4i: Initialize registers in tcon-top driver
    - genirq/affinity: Spread IRQs to all available NUMA nodes
    - [armhf] gpu: ipu-v3: image-convert: Prevent race between run and
    - wil6210: fix reset flow for Talyn-mb
    - wil6210: fix memory leak in wil_find_tx_bcast_2
    - ath10k: assign 'n_cipher_suites' for WCN3990
    - ath9k: dynack: use authentication messages for 'late' ack
    - scsi: lpfc: Correct LCB RJT handling
    - scsi: mpt3sas: Call sas_remove_host before removing the target devices
    - scsi: lpfc: Fix LOGO/PLOGI handling when triggerd by ABTS Timeout event
    - [armhf] 8808/1: kexec:offline panic_smp_self_stop CPU
    - [mips] clk: boston: fix possible memory leak in clk_boston_setup()
    - dlm: Don't swamp the CPU with callbacks queued during recovery
    - [x86] PCI: Fix Broadcom CNB20LE unintended sign extension (redux)
    - [powerpc] pseries: add of_node_put() in dlpar_detach_node()
    - [arm*] drm/vc4: ->x_scaling[1] should never be set to VC4_SCALING_NONE
    - ptp: check gettime64 return code in PTP_SYS_OFFSET ioctl
    - [mips] Boston: Disable EG20T prefetch
    - iwlwifi: fw: do not set sgi bits for HE connection
    - fpga: altera-cvp: Fix registration for CvP incapable devices
    - [x86] fpga: altera-cvp: fix 'bad IO access' on x86_64
    - [x86] vbox: fix link error with 'gcc -Og'
    - platform/chrome: don't report EC_MKBP_EVENT_SENSOR_FIFO as wakeup
    - i40e: prevent overlapping tx_timeout recover
    - scsi: hisi_sas: change the time of SAS SSP connection
    - usbnet: smsc95xx: fix rx packet alignment
    - [armhf,arm64] drm/rockchip: fix for mailbox read size
    - [arm*] OMAP2+: hwmod: Fix some section annotations
    - drm/amd/display: fix gamma not being applied correctly
    - drm/amd/display: calculate stream->phy_pix_clk before clock mapping
    - bpf: libbpf: retry map creation without the name
    - net/mlx5: EQ, Use the right place to store/read IRQ affinity hint
    - modpost: validate symbol names also in find_elf_symbol
    - perf tools: Add Hygon Dhyana support
    - [armhf] soc/tegra: Don't leak device tree node reference
    - media: rc: ensure close() is called on rc_unregister_device
    - media: video-i2c: avoid accessing released memory area when removing
    - [armhf] media: mtk-vcodec: Release device nodes in
    - ptp: Fix pass zero to ERR_PTR() in ptp_clock_register
    - dmaengine: xilinx_dma: Remove __aligned attribute on zynqmp_dma_desc_ll
    - [powerpc] 32: Add .data..Lubsan_data*/.data..Lubsan_type* sections
    - media: adv*/tc358743/ths8200: fill in min width/height/pixelclock
    - ACPI: SPCR: Consider baud rate 0 as preconfigured state
    - f2fs: move dir data flush to write checkpoint process
    - f2fs: fix race between write_checkpoint and write_begin
    - f2fs: fix wrong return value of f2fs_acl_create
    - [arm64] io: Ensure calls to delay routines are ordered against prior
    - net: aquantia: return 'err' if set MPI_DEINIT state fails
    - [sparc*] sunvdc: Do not spin in an infinite loop when vio_ldc_send()
      returns EAGAIN
    - nfsd4: fix crash on writing v4_end_grace before nfsd startup
    - drm: Clear state->acquire_ctx before leaving
    - [arm64] io: Ensure value passed to __iormb() is held in a 64-bit register
    - Thermal: do not clear passive state during system sleep
    - thermal: Fix locking in cooling device sysfs update cur_state
    - firmware/efi: Add NULL pointer checks in efivars API functions
    - [s390] zcrypt: improve special ap message cmd handling
    - [arm64] ftrace: don't adjust the LR value
    - [x86] fpu: Add might_fault() to user_insn()
    - usb: dwc3: Correct the logic for checking TRB full in
    - usb: dwc2: Disable power down feature on Samsung SoCs
    - usb: hub: delay hub autosuspend if USB3 port is still link training
    - timekeeping: Use proper seqcount initializer
    - usb: mtu3: fix the issue about SetFeature(U1/U2_Enable)
    - [armhf] clk: sunxi-ng: a33: Set CLK_SET_RATE_PARENT for all audio module
    - media: imx274: select REGMAP_I2C
    - drm/amdgpu/powerplay: fix clock stretcher limits on polaris (v2)
    - tipc: fix node keep alive interval calculation
    - driver core: Move async_synchronize_full call
    - kobject: return error code if writing /sys/.../uevent fails
    - IB/hfi1: Unreserve a reserved request when it is completed
    - usb: dwc3: trace: add missing break statement to make compiler happy
    - [mips] gpio: mt7621: report failure of devm_kasprintf()
    - [mips] gpio: mt7621: pass mediatek_gpio_bank_probe() failure up the stack
    - [x86] iommu/amd: Fix amd_iommu=force_isolation
    - [armhf] dts: Fix OMAP4430 SDP Ethernet startup
    - [mips] bpf: fix encoding bug for mm_srlv32_op
    - media: coda: fix H.264 deblocking filter controls
    - [armel] dts: Fix up the D-Link DIR-685 MTD partition info
    - watchdog: renesas_wdt: don't set divider while watchdog is running
    - [armhf] dts: imx51-zii-rdu1: Do not specify "power-gpio" for hpa1
    - usb: dwc3: gadget: Disable CSP for stream OUT ep
    - [arm64] iommu/arm-smmu-v3: Avoid memory corruption from Hisilicon MSI
    - [arm64] iommu/arm-smmu: Add support for qcom,smmu-v2 variant
    - [arm64] iommu/arm-smmu-v3: Use explicit mb() when moving cons pointer
    - [armhf] clk: imx6sl: ensure MMDC CH0 handshake is bypassed
    - OPP: Use opp_table->regulators to verify no regulator case
    - [arm64] tee: optee: avoid possible double list_del()
    - [arm64] drm/msm/dsi: fix dsi clock names in DSI 10nm PLL driver
    - [arm64] drm/msm: dpu: Only check flush register against pending flushes
    - lightnvm: pblk: fix resubmission of overwritten write err lbas
    - lightnvm: pblk: add lock protection to list operations
    - i2c-axxia: check for error conditions first
    - [armhf] phy: sun4i-usb: add support for missing USB PHY index
    - udf: Fix BUG on corrupted inode
    - selftests/bpf: use __bpf_constant_htons in test_prog.c
    - [armel] pxa: avoid section mismatch warning
    - [armhf] ASoC: fsl: Fix SND_SOC_EUKREA_TLV320 build error on i.MX8M
    - [powerpc] KVM: Book3S: Only report KVM_CAP_SPAPR_TCE_VFIO on powernv
    - [arm*] mmc: bcm2835: Recover from MMC_SEND_EXT_CSD
    - [arm*] mmc: bcm2835: reset host on timeout
    - memstick: Prevent memstick host from getting runtime suspended during
      card detection
    - [arm64] mmc: sdhci-xenon: Fix timeout checks
    - btrfs: harden agaist duplicate fsid on scanned devices
    - serial: sh-sci: Fix locking in sci_submit_rx()
    - serial: sh-sci: Resume PIO in sci_rx_interrupt() on DMA failure
    - tty: serial: samsung: Properly set flags in autoCTS mode
    - perf test: Fix perf_event_attr test failure
    - perf dso: Fix unchecked usage of strncpy()
    - perf header: Fix unchecked usage of strncpy()
    - btrfs: use tagged writepage to mitigate livelock of snapshot
    - perf probe: Fix unchecked usage of strncpy()
    - i2c: sh_mobile: Add support for r8a774c0 (RZ/G2E)
    - bnxt_en: Disable MSIX before re-reserving NQs/CMPL rings.
    - [x86] tools/power/x86/intel_pstate_tracer: Fix non root execution for
      post processing a trace file
    - livepatch: check kzalloc return values
    - [arm64] KVM: Skip MMIO insn after emulation
    - usb: musb: dsps: fix otg state machine
    - usb: musb: dsps: fix runtime pm for peripheral mode
    - perf header: Fix up argument to ctime()
    - perf tools: Cast off_t to s64 to avoid warning on bionic libc
    - percpu: convert spin_lock_irq to spin_lock_irqsave.
    - [arm64] net: hns3: fix incomplete uninitialization of IRQ in the
    - drm/amd/display: Add retry to read ddc_clock pin
    - Bluetooth: hci_bcm: Handle deferred probing for the clock supply
    - drm/amd/display: fix YCbCr420 blank color
    - [powerpc] uaccess: fix warning/error with access_ok()
    - mac80211: fix radiotap vendor presence bitmap handling
    - xfrm6_tunnel: Fix spi check in __xfrm6_tunnel_alloc_spi
    - scsi: smartpqi: correct host serial num for ssa
    - scsi: smartpqi: correct volume status
    - scsi: smartpqi: increase fw status register read timeout
    - cw1200: Fix concurrency use-after-free bugs in cw1200_hw_scan()
    - [arm64] net: hns3: add max vector number check for pf
    - [powerpc] perf: Fix thresholding counter data for unknown type
    - iwlwifi: mvm: fix setting HE ppe FW config
    - [powerpc] powernv/ioda: Allocate indirect TCE levels of cached userspace
      addresses on demand
    - mlx5: update timecounter at least twice per counter overflow
    - drbd: narrow rcu_read_lock in drbd_sync_handshake
    - drbd: disconnect, if the wrong UUIDs are attached on a connected peer
    - drbd: skip spurious timeout (ping-timeo) when failing promote
    - drbd: Avoid Clang warning about pointless switch statment
    - drm/amd/display: validate extended dongle caps
    - md: fix raid10 hang issue caused by barrier
    - fbdev: fbmem: behave better with small rotated displays and many CPUs
    - i40e: define proper net_device::neigh_priv_len
    - ice: Do not enable NAPI on q_vectors that have no rings
    - igb: Fix an issue that PME is not enabled during runtime suspend
    - ACPI/APEI: Clear GHES block_status before panic()
    - fbdev: fbcon: Fix unregister crash when more than one framebuffer
    - [powerpc] mm: Fix reporting of kernel execute faults on the 8xx
    - [x86] KVM: svm: report MSR_IA32_MCG_EXT_CTL as unsupported
    - [powerpc] fadump: Do not allow hot-remove memory from fadump reserved
    - kvm: Change offset in kvm_write_guest_offset_cached to unsigned
    - NFS: nfs_compare_mount_options always compare auth flavors.
    - perf build: Don't unconditionally link the libbfd feature test to
      -liberty and -lz
    - hwmon: (lm80) fix a missing check of the status of SMBus read
    - hwmon: (lm80) fix a missing check of bus read in lm80 probe
    - seq_buf: Make seq_buf_puts() null-terminate the buffer
    - cifs: check ntwrk_buf_start for NULL before dereferencing it
    - f2fs: fix use-after-free issue when accessing sbi->stat_info
    - niu: fix missing checks of niu_pci_eeprom_read
    - f2fs: fix sbi->extent_list corruption issue
    - cgroup: fix parsing empty mount option string
    - perf python: Do not force closing original perf descriptor in
    - scripts/decode_stacktrace: only strip base path when a prefix of the path
    - arch/sh/boards/mach-kfr2r09/setup.c: fix struct mtd_oob_ops build warning
    - ocfs2: don't clear bh uptodate for block read
    - ocfs2: improve ocfs2 Makefile
    - mm/page_alloc.c: don't call kasan_free_pages() at deferred mem init
    - zram: fix lockdep warning of free block handling
    - isdn: hisax: hfc_pci: Fix a possible concurrency use-after-free bug in
    - [m68k] block/swim3: Fix -EBUSY error when re-opening device after unmount
    - [arm*] thermal: bcm2835: enable hwmon explicitly
    - [armhf] PCI: imx: Enable MSI from downstream components
    - thermal: generic-adc: Fix adc to temp interpolation
    - [arm64] sve: ptrace: Fix SVE_PT_REGS_OFFSET definition
    - kernel/hung_task.c: break RCU locks based on jiffies
    - proc/sysctl: fix return error for proc_doulongvec_minmax()
    - kernel/hung_task.c: force console verbose before panic
    - fs/epoll: drop ovflist branch prediction
    - exec: load_script: don't blindly truncate shebang string
    - xfs: Fix xqmstats offsets in /proc/fs/xfs/xqmstat
    - xfs: cancel COW blocks before swapext
    - xfs: Fix error code in 'xfs_ioc_getbmap()'
    - xfs: fix overflow in xfs_attr3_leaf_verify
    - xfs: fix shared extent data corruption due to missing cow reservation
    - xfs: fix transient reference count error in
    - xfs: delalloc -> unwritten COW fork allocation can go wrong
    - fs/xfs: fix f_ffree value for statfs when project quota is set
    - xfs: fix PAGE_MASK usage in xfs_free_file_space
    - xfs: fix inverted return from xfs_btree_sblock_verify_crc
    - thermal: hwmon: inline helpers when CONFIG_THERMAL_HWMON is not set
    - dccp: fool proof ccid_hc_[rt]x_parse_options()
    - enic: fix checksum validation for IPv6
    - lib/test_rhashtable: Make test_insert_dup() allocate its hash table
    - net: dsa: Fix lockdep false positive splat
    - net: dsa: Fix NULL checking in dsa_slave_set_eee()
    - [armhf,arm64] net: dsa: mv88e6xxx: Fix counting of ATU violations
    - net: dsa: slave: Don't propagate flag changes on down slave interfaces
    - net/mlx5e: Force CHECKSUM_UNNECESSARY for short ethernet frames
    - rds: fix refcount bug in rds_sock_addref
    - Revert "net: phy: marvell: avoid pause mode on SGMII-to-Copper for
    - rxrpc: bad unlock balance in rxrpc_recvmsg
    - sctp: check and update stream->out_curr when allocating stream_out
    - sctp: walk the list of asoc safely (CVE-2019-8956)
    - skge: potential memory corruption in skge_get_regs()
    - virtio_net: Account for tx bytes and packets on sending xdp_frames
    - net/mlx5e: FPGA, fix Innova IPsec TX offload data path performance
    - xfs: eof trim writeback mapping as soon as it is cached
    - ALSA: compress: Fix stop handling on compressed capture streams
    - ALSA: usb-audio: Add support for new T+A USB DAC
    - ALSA: hda - Serialize codec registrations
    - ALSA: hda/realtek - Fix lose hp_pins for disable auto mute
    - ALSA: hda/realtek - Use a common helper for hp pin reference
    - ALSA: hda/realtek - Headset microphone support for System76 darp5
    - fuse: call pipe_buf_release() under pipe lock
    - fuse: decrement NR_WRITEBACK_TEMP on the right page
    - fuse: handle zero sized retrieve correctly
    - [arm*] dmaengine: bcm2835: Fix interrupt race on RT
    - [arm*] dmaengine: bcm2835: Fix abort of transactions
    - [armhf] dmaengine: imx-dma: fix wrong callback invoke
    - futex: Handle early deadlock return correctly
    - [arm64] irqchip/gic-v3-its: Plug allocation race for devices sharing a
    - [armhf] usb: phy: am335x: fix race condition in _probe
    - usb: dwc3: gadget: Handle 0 xfer length for OUT EP
    - usb: gadget: udc: net2272: Fix bitwise and boolean operations
    - usb: gadget: musb: fix short isoc packets with inventra dma
    - staging: speakup: fix tty-operation NULL derefs
    - scsi: cxlflash: Prevent deadlock when adapter probe fails
    - scsi: aic94xx: fix module loading
    - cpu/hotplug: Fix "SMT disabled by BIOS" detection for KVM
    - [x86] perf/x86/intel/uncore: Add Node ID mask
    - [x86] MCE: Initialize in the case of a fatal error in
    - perf/core: Don't WARN() for impossible ring-buffer sizes
    - perf tests evsel-tp-sched: Fix bitwise operator
    - serial: fix race between flush_to_ldisc and tty_open
    - serial: 8250_pci: Make PCI class test non fatal
    - serial: sh-sci: Do not free irqs that have already been freed
    - cacheinfo: Keep the old value if of_property_read_u32 fails
    - IB/hfi1: Add limit test for RC/UC send via loopback
    - [x86] perf/x86/intel: Delay memory deallocation until x86_pmu_dead_cpu()
    - ath9k: dynack: make ewma estimation faster
    - ath9k: dynack: check da->enabled first in sampling routines
    - mtd: Make sure mtd->erasesize is valid even if the partition is of size 0
    - mtd: rawnand: gpmi: fix MX28 bus master lockup problem
    - libata: Add NOLPM quirk for SAMSUNG MZ7TE512HMHP-000L1 SSD
    - [armhf, arm64] iio: adc: axp288: Fix TS-pin handling
    - signal: Always notice exiting tasks
    - signal: Better detection of synchronous signals
    - [armhf, arm64] misc: vexpress: Off by one in vexpress_syscfg_exec()
    - [x86] mei: me: add ice lake point device id.
    - debugfs: fix debugfs_rename parameter checking
    - [arm64] pinctrl: sunxi: Correct number of IRQ banks on H6 main pin
    - [x86] pinctrl: cherryview: fix Strago DMI workaround
    - tracing: uprobes: Fix typo in pr_fmt string
    - [mips*] cm: reprime error cause
    - [mips*] OCTEON: don't set octeon_dma_bar_type if PCI is disabled
    - [mips*] VDSO: Use same -m%-float cflag as the kernel proper
    - [mips*] loongson64: remove unreachable(), fix loongson_poweroff().
    - [mips*] VDSO: Include $(ccflags-vdso) in o32,n32 .lds builds
    - [arm64] firmware: arm_scmi: provide the mandatory device release callback
    - [powerpc*] radix: Fix kernel crash with mremap()
    - [amd64] mic: vop: Fix use-after-free on remove
    - mac80211: ensure that mgmt tx skbs have tailroom for encryption
    - drm/modes: Prevent division by zero htotal
    - drm/amd/powerplay: Fix missing break in switch
    - [x86] drm/i915: always return something on DDI clock selection
    - [x86] drm/vmwgfx: Fix setting of dma masks
    - [x86] drm/vmwgfx: Return error code from vmw_execbuf_copy_fence_user
    - SUNRPC: Always drop the XPRT_LOCK on XPRT_CLOSE_WAIT
    - xfrm: Make set-mark default behavior backward compatible
    - Revert "ext4: use ext4_write_inode() when fsyncing w/o a journal"
    - libceph: avoid KEEPALIVE_PENDING races in ceph_con_keepalive()
    - xfrm: refine validation of template and selector families
    - batman-adv: Avoid WARN on net_device without parent in netns
    - batman-adv: Force mac header to start of data on xmit
    - svcrdma: Reduce max_send_sges
    - svcrdma: Remove max_sge check at connect time
    - Revert "exec: load_script: don't blindly truncate shebang string"
    - dt-bindings: eeprom: at24: add "atmel,24c2048" compatible string
    - eeprom: at24: add support for 24c2048
    - blk-mq: fix a hung issue when fsync (Closes: #913119, #913138)
    - [armel, armhf] 8789/1: signal: copy registers using __copy_to_user()
    - [armel, armhf] 8790/1: signal: always use __copy_to_user to save iwmmxt
    - [armel, armhf] 8791/1: vfp: use __copy_to_user() when saving VFP state
    - [armel, armhf] 8792/1: oabi-compat: copy oabi events using
    - [armel, armhf] 8793/1: signal: replace __put_user_error with __put_user
    - [armel, armhf] 8794/1: uaccess: Prevent speculative use of the current
    - [armel, armhf] 8795/1: spectre-v1.1: use put_user() for __put_user()
    - [armel, armhf] 8796/1: spectre-v1,v1.1: provide helpers for address
    - [armel, armhf] 8797/1: spectre-v1.1: harden __copy_to_user
    - [armel, armhf] 8810/1: vfp: Fix wrong assignement to ufp_exc
    - [armel, armhfl armhf] make lookup_processor_type() non-__init
    - [armel, armhf] split out processor lookup
    - [armel, armhf] clean up per-processor check_bugs method call
    - [armel, armhf] add PROC_VTABLE and PROC_TABLE macros
    - [armel, armhf] spectre-v2: per-CPU vtables to work around big.Little
    - [armel, armhf] ensure that processor vtables is not lost after boot
    - [armel, armhf] fix the cockup in the previous patch
    - drm/amdgpu/sriov:Correct pfvf exchange logic
    - [i386] ACPI: NUMA: Use correct type for printing addresses on i386-PAE
    - perf report: Fix wrong iteration count in --branch-history
    - perf test shell: Use a fallback to get the pathname in vfs_getname
    - [riscv64] riscv: fix trace_sys_exit hook
    - cpufreq: check if policy is inactive early in __cpufreq_get()
    - nvme-pci: use the same attributes when freeing host_mem_desc_bufs.
    - nvme-pci: fix out of bounds access in nvme_cqe_pending
    - nvme-multipath: zero out ANA log buffer
    - nvme: pad fake subsys NQN vid and ssvid with zeros
    - drm/amdgpu: set WRITE_BURST_LENGTH to 64B to workaround SDMA1 hang
    - [armel] dts: kirkwood: Fix polarity of GPIO fan lines
    - [armel, armhf] gpio: pl061: handle failed allocations
    - drm/nouveau: Don't disable polling in fallback mode
    - drm/nouveau/falcon: avoid touching registers if engine is off
    - cifs: Limit memory used by lock request calls to a page
    - [x86] kvm: sev: Fail KVM_SEV_INIT if already initialized
    - CIFS: Do not assume one credit for async responses
    - [arm*] gpio: mxc: move gpio noirq suspend/resume to syscore phase
    - [x86] Revert "Input: elan_i2c - add ACPI ID for touchpad in ASUS Aspire
    - [x86] Input: elan_i2c - add ACPI ID for touchpad in Lenovo V330-15ISK
    - [armhf] OMAP5+: Fix inverted nirq pin interrupts with irq_set_type
    - perf/core: Fix impossible ring-buffer sizes warning
    - [x86] perf: Add check_period PMU callback
    - [x86] ALSA: hda - Add quirk for HP EliteBook 840 G5
    - ALSA: usb-audio: Fix implicit fb endpoint setup by quirk
    - ASoC: hdmi-codec: fix oops on re-probe
    - [alpha] tools uapi: fix Alpha support
    - [riscv64] Add pte bit to distinguish swap from invalid
    - [x86] kvm/nVMX: read from MSR_IA32_VMX_PROCBASED_CTLS2 only when it is
    - [x86] kvm: vmx: Fix entry number check for add_atomic_switch_msr()
    - [arm*] mmc: sunxi: Filter out unsupported modes declared in the device
    - mmc: block: handle complete_work on separate workqueue
    - [x86] Input: elantech - enable 3rd button support on Fujitsu CELSIUS H780
    - Revert "nfsd4: return default lease period"
    - Revert "mm: don't reclaim inodes with many attached pages"
    - Revert "mm: slowly shrink slabs with a relatively small number of
    - [alpha] fix page fault handling for r16-r18 targets
    - [alpha] Fix Eiger NR_IRQS to 128
    - [s390*] zcrypt: fix specification exception on z196 during ap probe
    - tracing/uprobes: Fix output for multiple string arguments
    - [x86] platform/UV: Use efi_runtime_lock to serialise BIOS calls
    - scsi: sd: fix entropy gathering for most rotational disks
    - signal: Restore the stop PTRACE_EVENT_EXIT
    - md/raid1: don't clear bitmap bits on interrupted recovery.
    - [x86] a.out: Clear the dump structure initially
    - dm crypt: don't overallocate the integrity tag space
    - dm thin: fix bug where bio that overwrites thin block ignores FUA
    - drm: Use array_size() when creating lease
    - [x86] drm/i915: Block fbdev HPD processing during suspend
    - [x86] drm/i915: Prevent a race during I915_GEM_MMAP ioctl with WC set
    - mm: proc: smaps_rollup: fix pss_locked calculation
    - af_packet: fix raw sockets over 6in4 tunnel
    - [arm64, armhf] dsa: mv88e6xxx: Ensure all pending interrupts are handled
      prior to exit
    - net: crypto set sk to NULL when af_alg_release. (CVE-2019-8912)
    - net: Fix for_each_netdev_feature on Big endian
    - net: fix IPv6 prefix route residue
    - net: ip6_gre: initialize erspan_ver just for erspan tunnels
    - net: ipv4: use a dedicated counter for icmp_v4 redirect packets
    - net: phy: xgmiitorgmii: Support generic PHY status read
    - net: stmmac: Fix a race in EEE enable callback
    - net: stmmac: handle endianness in dwmac4_get_timestamp
    - sky2: Increase D3 delay again
    - vhost: correctly check the return value of translate_desc() in log_used()
    - vsock: cope with memory allocation failure at socket creation time
    - vxlan: test dev->flags & IFF_UP before calling netif_rx()
    - net: Add header for usage of fls64()
    - tcp: clear icsk_backoff in tcp_write_queue_purge()
    - tcp: tcp_v4_err() should be more careful
    - net: Do not allocate page fragments that are not skb aligned
    - hwmon: (lm80) Fix missing unlock on error in set_fan_div()
    - scsi: target/core: Use kmem_cache_free() instead of kfree()
    - PCI: Fix __initdata issue with "pci=disable_acs_redir" parameter
    - sunrpc: fix 4 more call sites that were using stack memory with a
    - netfilter: nf_nat_snmp_basic: add missing length checks in ASN.1 cbs
    - net/x25: do not hold the cpu too long in x25_new_lci()
    - ax25: fix possible use-after-free
    - [armel armhf] 8834/1: Fix: kprobes: optimized kprobes illegal instruction
    - tracing: Fix number of entries in trace header
    - [mips*] eBPF: Always return sign extended 32b values
    - mac80211: Restore vif beacon interval if start ap fails
    - mac80211: Use linked list instead of rhashtable walk for mesh tables
    - mac80211: Free mpath object when rhashtable insertion fails
    - libceph: handle an empty authorize reply
    - ceph: avoid repeatedly adding inode to mdsc->snap_flush_list
    - numa: change get_mempolicy() to use nr_node_ids instead of MAX_NUMNODES
    - proc, oom: do not report alien mms when setting oom_score_adj
    - [x86] ALSA: hda/realtek - Headset microphone and internal speaker
      support for System76 oryp5
    - [x86] ALSA: hda/realtek: Disable PC beep in passthrough on alc285
    - KEYS: allow reaching the keys quotas exactly
    - [armhf,arm64] backlight: pwm_bl: Fix devicetree parsing with auto-
      generated brightness tables
    - [armhf] mfd: ti_am335x_tscadc: Use PLATFORM_DEVID_AUTO while registering
      mfd cells
    - [armhf] mfd: twl-core: Fix section annotations on {,un}protect_pm_master
    - [arm64] mfd: qcom_rpm: write fw_version to CTRL_REG
    - mfd: axp20x: Add AC power supply cell for AXP813
    - mfd: axp20x: Re-align MFD cell entries
    - mfd: axp20x: Add supported cells for AXP803
    - mfd: cros_ec_dev: Add missing mfd_remove_devices() call in remove
    - [armhf] mfd: mc13xxx: Fix a missing check of a register-read failure
    - qed: Fix qed_chain_set_prod() for PBL chains with non power of 2 page
    - qed: Fix qed_ll2_post_rx_buffer_notify_fw() by adding a write memory
    - [arm64] net: hns: Fix use after free identified by SLUB debug
    - bpf: Fix [::] -> [::1] rewrite in sys_sendmsg
    - selftests/bpf: Test [::] -> [::1] rewrite in sys_sendmsg in
    - net/mlx4: Get rid of page operation after dma_alloc_coherent
    - xprtrdma: Double free in rpcrdma_sendctxs_create()
    - selftests: forwarding: Add a test for VLAN deletion
    - netfilter: nf_tables: fix leaking object reference count
    - scsi: qla4xxx: check return code of qla4xxx_copy_from_fwddb_param
    - scsi: isci: initialize shost fully before calling scsi_add_host()
    - include/linux/compiler*.h: fix OPTIMIZER_HIDE_VAR
    - netfilter: nft_flow_offload: Fix reverse route lookup
    - bpf: correctly set initial window on active Fast Open sender
    - bpf: fix panic in stack_map_get_build_id() on i386 and arm32
    - netfilter: nft_flow_offload: fix interaction with vrf slave device
    - RDMA/mthca: Clear QP objects during their allocation
    - [powerpcspe] 8xx: fix setting of pagetable for Abatron BDI debug tool.
    - acpi/nfit: Fix race accessing memdev in nfit_get_smbios_id()
    - net: stmmac: Fix PCI module removal leak
    - net: stmmac: dwxgmac2: Only clear interrupts that are active
    - net: stmmac: Check if CBS is supported before configuring
    - net: stmmac: Fix the logic of checking if RX Watchdog must be enabled
    - net: stmmac: Prevent RX starvation in stmmac_napi_poll()
    - scsi: tcmu: avoid cmd/qfull timers updated whenever a new cmd comes
    - scsi: ufs: Fix system suspend status
    - scsi: qedi: Add ep_state for login completion on un-reachable targets
    - scsi: ufs: Fix geometry descriptor size
    - scsi: cxgb4i: add wait_for_completion()
    - netfilter: nft_flow_offload: fix checking method of conntrack helper
    - always clear the X2APIC_ENABLE bit for PV guest
    - [armhf, arm64] drm/meson: add missing of_node_put
    - drm/amdkfd: Don't assign dGPUs to APU topology devices
    - drm/amd/display: fix PME notification not working in RV desktop
    - vhost: return EINVAL if iovecs size does not match the message size
    - [armhf, arm64] drm/sun4i: backend: add missing of_node_puts
    - bpf: don't assume build-id length is always 20 bytes
    - bpf: zero out build_id for BPF_STACK_BUILD_ID_IP
    - atm: he: fix sign-extension overflow on large shift
    - hwmon: (tmp421) Correct the misspelling of the tmp442 compatible
      attribute in OF device ID table
    - [armhf] leds: lp5523: fix a missing check of return value of lp55xx_read
    - bpf: bpf_setsockopt: reset sock dst on SO_MARK changes
    - net: bridge: Mark FDB entries that were added by user as such
    - net/mlx5e: Fix wrong (zero) TX drop counter indication for representor
    - isdn: avm: Fix string plus integer warning from Clang
    - batman-adv: fix uninit-value in batadv_interface_tx()
    - inet_diag: fix reporting cgroup classid and fallback to priority
    - ipv6: propagate genlmsg_reply return code
    - net: ena: fix race between link up and device initalization
    - net/mlx4_en: Force CHECKSUM_NONE for short ethernet frames
    - net/mlx5e: Don't overwrite pedit action when multiple pedit used
    - net/packet: fix 4gb buffer limit due to overflow check
    - net: sfp: do not probe SFP module before we're attached
    - sctp: call gso_reset_checksum when computing checksum in sctp_gso_segment
    - sctp: set stream ext to NULL after freeing it in sctp_stream_outq_migrate
    - team: avoid complex list operations in team_nl_cmd_options_set()
    - Revert "socket: fix struct ifreq size in compat ioctl"
    - Revert "kill dev_ifsioc()"
    - net: socket: fix SIOCGIFNAME in compat
    - net: socket: make bond ioctls go through compat_ifreq_ioctl()
    - geneve: should not call rt6_lookup() when ipv6 was disabled
    - sit: check if IPv6 enabled before calling ip6_err_gen_icmpv6_unreach()
    - net_sched: fix a race condition in tcindex_destroy() (Closes: #921542)
    - net_sched: fix a memory leak in cls_tcindex
    - net_sched: fix two more memory leaks in cls_tcindex
    - net/mlx5e: XDP, fix redirect resources availability check
    - RDMA/srp: Rework SCSI device reset handling
    - KEYS: user: Align the payload buffer
    - KEYS: always initialize keyring_index_key::desc_len
    - drm/amdgpu: Set DPM_FLAG_NEVER_SKIP when enabling PM-runtime
    - gpu: drm: radeon: Set DPM_FLAG_NEVER_SKIP when enabling PM-runtime
    - [x86] drm/i915/fbdev: Actually configure untiled displays
    - drm/amd/display: Fix MST reboot/poweroff sequence
    - mac80211: allocate tailroom for forwarded mesh packets
    - [x86] kvm: Return LA57 feature based on hardware capability
    - net: validate untrusted gso packets without csum offload
    - net: avoid false positives in untrusted gso validation
    - Revert "bridge: do not add port to router list when receives query with
    - netfilter: nf_tables: fix flush after rule deletion in the same batch
    - netfilter: nft_compat: use-after-free when deleting targets
    - netfilter: ipv6: Don't preserve original oif for loopback address
    - netfilter: nfnetlink_osf: add missing fmatch check
    - netfilter: ipt_CLUSTERIP: fix sleep-in-atomic bug in
    - udlfb: handle unplug properly
    - [armhf arm64] pinctrl: max77620: Use define directive for
      max77620_pinconf_param values
    - net: phylink: avoid resolving link state too early
    - irq/matrix: Split out the CPU selection code into a helper
    - irq/matrix: Spread managed interrupts on allocation
    - genirq/matrix: Improve target CPU selection for managed interrupts
      (Closes: #922182)
    - mac80211: Change default tx_sk_pacing_shift to 7
    - scsi: libsas: Fix rphy phy_identifier for PHYs with end devices attached
    - [arm64] drm/msm: Unblock writer if reader closes file
    - [x86] ASoC: Intel: Haswell/Broadwell: fix setting for .dynamic field
    - [armhf] clk: tegra: dfll: Fix a potential Oop in remove()
    - [x86] thermal: int340x_thermal: Fix a NULL vs IS_ERR() check
    - [arm64, armhf] usb: dwc3: gadget: synchronize_irq dwc irq in suspend
    - [arm64, armhf] usb: dwc3: gadget: Fix the uninitialized link_state when
      udc starts
    - genirq: Make sure the initial affinity is not empty
    - [arm64, armel, x86, armhf] ASoC: dapm: change snprintf to scnprintf for
      possible overflow
    - [x86] drivers: thermal: int340x_thermal: Fix sysfs race condition
    - mac80211: fix miscounting of ttl-dropped frames
    - sched/wait: Fix rcuwait_wake_up() ordering
    - sched/wake_q: Fix wakeup ordering for wake_q
    - futex: Fix (possible) missed wakeup
    - drm/amd/powerplay: OD setting fix on Vega10
    - [armhf] drm/sun4i: hdmi: Fix usage of TMDS clock
    - direct-io: allow direct writes to empty inodes
    - writeback: synchronize sync(2) against cgroup writeback membership
    - scsi: lpfc: nvme: avoid hang / use-after-free when destroying localport
    - scsi: lpfc: nvmet: avoid hang / use-after-free when destroying targetport
    - scsi: csiostor: fix NULL pointer dereference in csio_vport_set_state()
    - [x86] hv_netvsc: Fix ethtool change hash key error
    - [x86] hv_netvsc: Refactor assignments of struct netvsc_device_info
    - [x86] hv_netvsc: Fix hash key value reset after other ops
    - nvme-rdma: fix timeout handler
    - nvme-multipath: drop optimization for static ANA group IDs
    - [arm64] drm/msm: Fix A6XX support for opp-level
    - net: usb: asix: ax88772_bind return error when hw_reset fail
    - net: dev_is_mac_header_xmit() true for ARPHRD_RAWIP
    - [powerpc*] ibmveth: Do not process frames after calling napi_reschedule
    - mac80211: don't initiate TDLS connection if station is not associated to
    - mac80211: Add attribute aligned(2) to struct 'action'
    - cfg80211: extend range deviation for DMG
    - [x86] svm: Fix AVIC incomplete IPI emulation
    - [x86] KVM: nSVM: clear events pending from svm_complete_interrupts() when
      exiting to L1
    - [arm64, armhf] mmc: spi: Fix card detection during probe
    - mmc: core: Fix NULL ptr crash from mmc_should_fail_request
    - [armhf] mmc: sdhci-esdhc-imx: correct the fix of ERR004536
    - mm: enforce min addr even if capable() in expand_downwards()
    - hugetlbfs: fix races and page leaks during migration
    - [mips*] fix truncation in __cmpxchg_small for short values
    - [x86] uaccess: Don't leak the AC flag into __put_user() value evaluation
    - cpufreq: Use struct kobj_attribute instead of struct global_attr
    - staging: erofs: fix mis-acted TAIL merging behavior
    - USB: serial: option: add Telit ME910 ECM composition
    - USB: serial: cp210x: add ID for Ingenico 3070
    - USB: serial: ftdi_sio: add ID for Hjelmslund Electronics USB485
    - [x86] staging: comedi: ni_660x: fix missing break in switch statement
    - [x86, arm64, armhf] staging: android: ashmem: Don't call fallocate() with
      ashmem_mutex held.
    - [x86, arm64, armhf] staging: android: ashmem: Avoid range_alloc()
      allocation with ashmem_mutex held.
    - ip6mr: Do not call __IP6_INC_STATS() from preemptible context
    - [arm64, armhf] net: dsa: mv88e6xxx: handle unknown duplex modes gracefully
      in mv88e6xxx_port_set_duplex
    - [arm64, armhf] net: dsa: mv88e6xxx: fix number of internal PHYs for
      88E6x90 family
    - net: sched: put back q.qlen into a single location
    - net-sysfs: Fix mem leak in netdev_register_kobject
    - qmi_wwan: Add support for Quectel EG12/EM12
    - sctp: call iov_iter_revert() after sending ABORT
    - sky2: Disable MSI on Dell Inspiron 1545 and Gateway P-79
    - team: Free BPF filter when unregistering netdev
    - tipc: fix RDM/DGRAM connect() regression
    - bnxt_en: Drop oversize TX packets to prevent errors.
    - geneve: correctly handle ipv6.disable module parameter
    - [x86] hv_netvsc: Fix IP header checksum for coalesced packets
    - ipv4: Add ICMPv6 support when parse route ipproto
    - lan743x: Fix TX Stall Issue
    - [arm64, armhf] net: dsa: mv88e6xxx: Fix statistics on mv88e6161
    - [arm64, armhf] net: dsa: mv88e6xxx: Fix u64 statistics
    - net: netem: fix skb length BUG_ON in __skb_to_sgvec
    - net: nfc: Fix NULL dereference on nfc_llcp_build_tlv fails
    - net: phy: Micrel KSZ8061: link failure after cable connect
    - [arm64, armhf] net: phy: phylink: fix uninitialized variable in
    - net: sit: fix memory leak in sit_init_net()
    - net: socket: set sock->sk to NULL after calling proto_ops::release()
    - tipc: fix race condition causing hung sendto
    - tun: fix blocking read
    - [x86, arm64, armhf] xen-netback: don't populate the hash cache on XenBus
    - [x86, arm64, armhf] xen-netback: fix occasional leak of grant ref mappings
      under memory pressure
    - tun: remove unnecessary memory barrier
    - net: Add __icmp_send helper.
    - ipv4: Return error for RTA_VIA attribute
    - ipv6: Return error for RTA_VIA attribute
    - mpls: Return error for RTA_GATEWAY attribute
    - ipv4: Pass original device to ip_rcv_finish_core
    - [arm64, armhf] net: dsa: mv88e6xxx: power serdes on/off for 10G interfaces
      on 6390X
    - [arm64, armhf] net: dsa: mv88e6xxx: prevent interrupt storm caused by
    - net/sched: act_ipt: fix refcount leak when replace fails
    - net/sched: act_skbedit: fix refcount leak when replace fails
    - net: sched: act_tunnel_key: fix NULL pointer dereference during init
    - [x86] CPU/AMD: Set the CPB bit unconditionally on F17h
    - [x86] boot/compressed/64: Do not read legacy ROM on EFI system
    - tracing: Fix event filters and triggers to handle negative numbers
    - usb: xhci: Fix for Enabling USB ROLE SWITCH QUIRK on
    - [x86, powerpc*] applicom: Fix potential Spectre v1 vulnerabilities
    - [mips*] irq: Allocate accurate order pages for irq stack
    - aio: Fix locking in aio_poll()
    - xtensa: fix get_wchan
    - gnss: sirf: fix premature wakeup interrupt enable
    - USB: serial: cp210x: fix GPIO in autosuspend
    - Bluetooth: btrtl: Restore old logic to assume firmware is already loaded
    - Bluetooth: Fix locking in bt_accept_enqueue() for BH context
    - exec: Fix mem leak in kernel_read_file (CVE-2019-8980)
    - scsi: core: reset host byte in DID_NEXUS_FAILURE case
    - bpf: fix sanitation rewrite in case of non-pointers

  [ Ben Hutchings ]
  * [sparc64] udeb: Use standard module list in nic-modules; add i2c-modules
    and nic-shared-modules to avoid duplication
  * mt76: Use the correct hweight8() function (fixes FTBFS on ia64)
  * [armel] udeb: Add mmc-core-modules
  * udeb: Make nic-wireless-modules depend on mmc-core-modules, not
    mmc-modules; move crc7 to crc-modules to avoid duplication
  * [powerpc*] udeb: Add i2c-modules, mmc-core-modules, nic-wireless-modules
  * [arm64,armhf] udeb: Add mmc-core-modules to Provides of kernel-image
  * udeb: Add fb-modules and include drm and drm_kms_helper on most
  * udeb: Move basic PV modules from {hyperv,virtio}-modules to kernel-image
  * udeb: Move drivers from {hyperv,virtio}-modules to
  * debian/bin/ Add rules to build debian/build/config.*
  * certs: Replace test signing certificate with production signing certificate
  * debian/bin/ Put all files.json fields under "packages"
  * Bump ABI to 4

  [ Wookey ]
  * linux-perf: Enable coresight trace (libopencsd) support in perf
    (Closes: #895131)

  [ Vagrant Cascadian ]
  * [armhf] Add patch from upstream fixing stability issues when cpufreq
    is enabled on Orange Pi Plus.
  * [armhf] Enable REGULATOR_SY8106A as module.
  * [arm64] Add patch working around A64 timer issues.

  [ dann frazier ]
  * arm64: lockdown: Move init_lockdown() call after uefi_init()

  [ Salvatore Bonaccorso ]
  * Btrfs: fix corruption reading shared and compressed extents after hole
    punching (Closes: #922306)

  [ Vagrant Cascadian ]
  * [arm64] Add patch from v4.20 to enable device-tree for Pine64-LTS.

  [ Romain Perier ]
  * [rt] Update to 4.19.25-rt16:
    - Add zram_slot_trylock() to "drivers/block/zram: Replace bit spinlocks
      with rtmutex for -rt"
    - Refresh "futex: workaround migrate_disable/enable in different context"
    - softirq: Avoid "local_softirq_pending" messages if ksoftirqd is blocked
    - softirq: Avoid "local_softirq_pending" messages if task is in cpu_chill()
    - hrtimer: Don't lose state in cpu_chill()
    - hrtimer: cpu_chill(): save task state in ->saved_state()
    - [x86] lazy-preempt: properly check against preempt-mask
    - [i386] lazy-preempt: use proper return label on 32bit-x86
  * [armel/rpi] Add flavour for Raspberry Pi and Raspberry Pi Zero
  * [armel, armhf] Enable CRASH_DUMP

  [ Marcin Juszkiewicz ]
  * [arm64] udeb: Use generic ata-modules
  * [arm64] udeb: Remove redundant lines from nic-modules

  [ YunQiang Su ]
  * [mips r6] Disable JUMP_LABEL for now: it will cause Reserved Instruction.
    Enable SERIAL_OF_PLATFORM, if not, userland shows nothing.
    Support some boston drivers: IMG_ASCII_LCD, I2C_EG20T, PCH_PHUB, MMC,
  * [mipsel/mips64el] Backport MIPS: Loongson: Introduce and use
parents f0dd1892 b7edf9cc
......@@ -43,7 +43,6 @@
#include "clock.h"
/* GPIOs */
#define QI_LB60_GPIO_KEYOUT(x) (JZ_GPIO_PORTC(10) + (x))
......@@ -386,12 +385,18 @@ static struct platform_device qi_lb60_gpio_keys = {
static struct jz4740_mmc_platform_data qi_lb60_mmc_pdata = {
.gpio_card_detect = QI_LB60_GPIO_SD_CD,
.gpio_read_only = -1,
.gpio_power = QI_LB60_GPIO_SD_VCC_EN_N,
.power_active_low = 1,
static struct gpiod_lookup_table qi_lb60_mmc_gpio_table = {
.dev_id = "jz4740-mmc.0",
.table = {
{ },
/* beeper */
static struct pwm_lookup qi_lb60_pwm_lookup[] = {
PWM_LOOKUP("jz4740-pwm", 4, "pwm-beeper", NULL, 0,
......@@ -500,6 +505,7 @@ static int __init qi_lb60_init_platform_devices(void)
......@@ -54,10 +54,9 @@ unsigned long __xchg_small(volatile void *ptr, unsigned long val, unsigned int s
unsigned long __cmpxchg_small(volatile void *ptr, unsigned long old,
unsigned long new, unsigned int size)
u32 mask, old32, new32, load32;
u32 mask, old32, new32, load32, load;
volatile u32 *ptr32;
unsigned int shift;
u8 load;
/* Check that ptr is naturally aligned */
WARN_ON((unsigned long)ptr & (size - 1));
......@@ -52,6 +52,7 @@ asmlinkage void spurious_interrupt(void)
void __init init_IRQ(void)
int i;
unsigned int order = get_order(IRQ_STACK_SIZE);
for (i = 0; i < NR_IRQS; i++)
......@@ -62,8 +63,7 @@ void __init init_IRQ(void)
for_each_possible_cpu(i) {
int irq_pages = IRQ_STACK_SIZE / PAGE_SIZE;
void *s = (void *)__get_free_pages(GFP_KERNEL, irq_pages);
void *s = (void *)__get_free_pages(GFP_KERNEL, order);
irq_stack[i] = s;
pr_debug("CPU%d IRQ stack at 0x%p - 0x%p\n", i,
......@@ -457,5 +457,5 @@ void mips_cm_error_report(void)
/* reprime cause register */
......@@ -59,7 +59,12 @@ static void loongson_poweroff(void)
* It needs a wait loop here, but mips/kernel/reset.c already calls
* a generic delay loop, machine_hang(), so simply return.
void (*fw_poweroff)(void) = (void *)loongson_sysconf.poweroff_addr;
......@@ -343,12 +343,15 @@ static int build_int_epilogue(struct jit_ctx *ctx, int dest_reg)
const struct bpf_prog *prog = ctx->skf;
int stack_adjust = ctx->stack_size;
int store_offset = stack_adjust - 8;
enum reg_val_type td;
int r0 = MIPS_R_V0;
if (dest_reg == MIPS_R_RA &&
get_reg_val_type(ctx, prog->len, BPF_REG_0) == REG_32BIT_ZERO_EX)
if (dest_reg == MIPS_R_RA) {
/* Don't let zero extended value escape. */
emit_instr(ctx, sll, r0, r0, 0);
td = get_reg_val_type(ctx, prog->len, BPF_REG_0);
if (td == REG_64BIT || td == REG_32BIT_ZERO_EX)
emit_instr(ctx, sll, r0, r0, 0);
if (ctx->flags & EBPF_SAVE_RA) {
emit_instr(ctx, ld, MIPS_R_RA, store_offset, MIPS_R_SP);
......@@ -1815,7 +1818,7 @@ struct bpf_prog *bpf_int_jit_compile(struct bpf_prog *prog)
/* Update the icache */
flush_icache_range((unsigned long),
(unsigned long)( + ctx.idx * sizeof(u32)));
(unsigned long)&[ctx.idx]);
if (bpf_jit_enable > 1)
/* Dump JIT code */
......@@ -568,6 +568,11 @@ static int __init octeon_pci_setup(void)
if (octeon_has_feature(OCTEON_FEATURE_PCIE))
return 0;
if (!octeon_is_pci_host()) {
pr_notice("Not in host mode, PCI Controller not initialized\n");
return 0;
/* Point pcibios_map_irq() to the PCI version of it */
octeon_pcibios_map_irq = octeon_pci_pcibios_map_irq;
......@@ -579,11 +584,6 @@ static int __init octeon_pci_setup(void)
octeon_dma_bar_type = OCTEON_DMA_BAR_TYPE_BIG;
if (!octeon_is_pci_host()) {
pr_notice("Not in host mode, PCI Controller not initialized\n");
return 0;
/* PCI I/O and PCI MEM values */
ioport_resource.start = 0;
......@@ -38,6 +38,7 @@ choice
config SOC_MT7620
bool "MT7620/8"
select HW_HAS_PCI
config SOC_MT7621
......@@ -8,6 +8,7 @@ ccflags-vdso := \
$(filter -E%,$(KBUILD_CFLAGS)) \
$(filter -mmicromips,$(KBUILD_CFLAGS)) \
$(filter -march=%,$(KBUILD_CFLAGS)) \
$(filter -m%-float,$(KBUILD_CFLAGS)) \
ifeq ($(cc-name),clang)
......@@ -128,7 +129,7 @@ $(obj)/%-o32.o: $(src)/%.c FORCE
$(call cmd,force_checksrc)
$(call if_changed_rule,cc_o_c)
$(obj)/ KBUILD_CPPFLAGS := -mabi=32
$(obj)/ KBUILD_CPPFLAGS := $(ccflags-vdso) -mabi=32
$(obj)/ $(src)/ FORCE
$(call if_changed_dep,cpp_lds_S)
......@@ -168,7 +169,7 @@ $(obj)/%-n32.o: $(src)/%.c FORCE
$(call cmd,force_checksrc)
$(call if_changed_rule,cc_o_c)
$(obj)/ KBUILD_CPPFLAGS := -mabi=n32
$(obj)/ KBUILD_CPPFLAGS := $(ccflags-vdso) -mabi=n32
$(obj)/ $(src)/ FORCE
$(call if_changed_dep,cpp_lds_S)
......@@ -4,4 +4,8 @@ obj-y := extable.o tlb.o \
obj-$(CONFIG_ALIGNMENT_TRAP) += alignment.o
obj-$(CONFIG_HIGHMEM) += highmem.o
CFLAGS_proc-n13.o += -fomit-frame-pointer
CFLAGS_proc.o += -fomit-frame-pointer
......@@ -308,15 +308,29 @@ long compat_arch_ptrace(struct task_struct *child, compat_long_t request,
long do_syscall_trace_enter(struct pt_regs *regs)
if (test_thread_flag(TIF_SYSCALL_TRACE) &&
tracehook_report_syscall_entry(regs)) {
if (test_thread_flag(TIF_SYSCALL_TRACE)) {
int rc = tracehook_report_syscall_entry(regs);
* Tracing decided this syscall should not happen or the
* debugger stored an invalid system call number. Skip
* the system call and the system call restart handling.
* As tracesys_next does not set %r28 to -ENOSYS
* when %r20 is set to -1, initialize it here.
regs->gr[20] = -1UL;
goto out;
regs->gr[28] = -ENOSYS;
if (rc) {
* A nonzero return code from
* tracehook_report_syscall_entry() tells us
* to prevent the syscall execution. Skip
* the syscall call and the syscall restart handling.
* Note that the tracer may also just change
* regs->gr[20] to an invalid syscall number,
* that is handled by tracesys_next.
regs->gr[20] = -1UL;
return -1;
/* Do the secure computing check after ptrace. */
......@@ -340,7 +354,6 @@ long do_syscall_trace_enter(struct pt_regs *regs)
regs->gr[24] & 0xffffffff,
regs->gr[23] & 0xffffffff);
* Sign extend the syscall number to 64bit since it may have been
* modified by a compat ptrace call
......@@ -1234,21 +1234,13 @@ extern pmd_t pmdp_invalidate(struct vm_area_struct *vma, unsigned long address,
#define pmd_move_must_withdraw pmd_move_must_withdraw
struct spinlock;
static inline int pmd_move_must_withdraw(struct spinlock *new_pmd_ptl,
struct spinlock *old_pmd_ptl,
struct vm_area_struct *vma)
if (radix_enabled())
return false;
* Archs like ppc64 use pgtable to store per pmd
* specific information. So when we switch the pmd,
* we should also withdraw and deposit the pgtable
return true;
extern int pmd_move_must_withdraw(struct spinlock *new_pmd_ptl,
struct spinlock *old_pmd_ptl,
struct vm_area_struct *vma);
* Hash translation mode use the deposited table to store hash pte
* slot information.
#define arch_needs_pgtable_deposit arch_needs_pgtable_deposit
static inline bool arch_needs_pgtable_deposit(void)
......@@ -200,7 +200,7 @@ struct fad_crash_memory_ranges {
unsigned long long size;
extern int is_fadump_boot_memory_area(u64 addr, ulong size);
extern int is_fadump_memory_area(u64 addr, ulong size);
extern int early_init_dt_scan_fw_dump(unsigned long node,
const char *uname, int depth, void *data);
extern int fadump_reserve_mem(void);
......@@ -63,7 +63,7 @@ static inline int __access_ok(unsigned long addr, unsigned long size,
#define access_ok(type, addr, size) \
(__chk_user_ptr(addr), \
(__chk_user_ptr(addr), (void)(type), \
__access_ok((__force unsigned long)(addr), (size), get_fs()))
......@@ -118,13 +118,19 @@ int __init early_init_dt_scan_fw_dump(unsigned long node,
* If fadump is registered, check if the memory provided
* falls within boot memory area.
* falls within boot memory area and reserved memory area.
int is_fadump_boot_memory_area(u64 addr, ulong size)
int is_fadump_memory_area(u64 addr, ulong size)
u64 d_start = fw_dump.reserve_dump_area_start;
u64 d_end = d_start + fw_dump.reserve_dump_area_size;
if (!fw_dump.dump_registered)
return 0;
if (((addr + size) > d_start) && (addr <= d_end))
return 1;
return (addr + size) > RMA_START && addr <= fw_dump.boot_memory_size;
......@@ -919,11 +919,12 @@ start_here:
/* set up the PTE pointers for the Abatron bdiGDB.
lis r5, abatron_pteptrs@h
ori r5, r5, abatron_pteptrs@l
stw r5, 0xf0(0) /* Must match your Abatron config file */
lis r6, swapper_pg_dir@h
ori r6, r6, swapper_pg_dir@l
stw r6, 0(r5)
/* Now turn on the MMU for real! */
......@@ -296,6 +296,10 @@ SECTIONS
#ifdef CONFIG_PPC32
.data : AT(ADDR(.data) - LOAD_OFFSET) {
......@@ -543,8 +543,11 @@ int kvm_vm_ioctl_check_extension(struct kvm *kvm, long ext)
/* fallthrough */
r = 1;
r = !!cpu_has_feature(CPU_FTR_HVMODE);
......@@ -221,7 +221,9 @@ static int mm_fault_error(struct pt_regs *regs, unsigned long addr,
static bool bad_kernel_fault(bool is_exec, unsigned long error_code,
unsigned long address)
if (is_exec && (error_code & (DSISR_NOEXEC_OR_G | DSISR_KEYFAULT))) {
/* NX faults set DSISR_PROTFAULT on the 8xx, DSISR_NOEXEC_OR_G on others */
if (is_exec && (error_code & (DSISR_NOEXEC_OR_G | DSISR_KEYFAULT |
printk_ratelimited(KERN_CRIT "kernel tried to execute"
" exec-protected page (%lx) -"
"exploit attempt? (uid: %d)\n",
......@@ -477,3 +477,25 @@ void arch_report_meminfo(struct seq_file *m)
atomic_long_read(&direct_pages_count[MMU_PAGE_1G]) << 20);
#endif /* CONFIG_PROC_FS */
* For hash translation mode, we use the deposited table to store hash slot
* information and they are stored at PTRS_PER_PMD offset from related pmd
* location. Hence a pmd move requires deposit and withdraw.
* For radix translation with split pmd ptl, we store the deposited table in the
* pmd page. Hence if we have different pmd page we need to withdraw during pmd
* move.
* With hash we use deposited table always irrespective of anon or not.
* With radix we use deposited table only for anonymous mapping.
int pmd_move_must_withdraw(struct spinlock *new_pmd_ptl,
struct spinlock *old_pmd_ptl,
struct vm_area_struct *vma)
if (radix_enabled())
return (new_pmd_ptl != old_pmd_ptl) && vma_is_anonymous(vma);
return true;
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment