From: Greg Kroah-Hartman Date: Thu, 15 Mar 2018 13:32:23 +0000 (+0100) Subject: Merge 4.14.27 into android-4.14 X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=df0daba8301ef29566e24a87f7aab0a3acbe8c49;p=GitHub%2FLineageOS%2Fandroid_kernel_motorola_exynos9610.git Merge 4.14.27 into android-4.14 Changes in 4.14.27 kbuild: move "_all" target out of $(KBUILD_SRC) conditional watchdog: hpwdt: SMBIOS check watchdog: hpwdt: Check source of NMI watchdog: hpwdt: fix unused variable warning watchdog: hpwdt: Remove legacy NMI sourcing. ARM: omap2: hide omap3_save_secure_ram on non-OMAP3 builds ASoC: Intel: Skylake: Fix jack name format substitution ASoC: Intel: kbl: fix jack name netfilter: add back stackpointer size checks netfilter: ipt_CLUSTERIP: fix a race condition of proc file creation netfilter: xt_hashlimit: fix lock imbalance netfilter: x_tables: fix missing timer initialization in xt_LED netfilter: nat: cope with negative port range netfilter: IDLETIMER: be syzkaller friendly netfilter: ebtables: CONFIG_COMPAT: don't trust userland offsets netfilter: bridge: ebt_among: add missing match size checks netfilter: ipv6: fix use-after-free Write in nf_nat_ipv6_manip_pkt netfilter: use skb_to_full_sk in ip6_route_me_harder tpm_tis: Move ilb_base_addr to tpm_tis_data tpm: Keep CLKRUN enabled throughout the duration of transmit_cmd() tpm: delete the TPM_TIS_CLK_ENABLE flag tpm: remove unused variables tpm: only attempt to disable the LPC CLKRUN if is already enabled scsi: qla2xxx: Fix system crash for Notify ack timeout handling scsi: qla2xxx: Fix gpnid error processing scsi: qla2xxx: Move session delete to driver work queue scsi: qla2xxx: Skip IRQ affinity for Target QPairs scsi: qla2xxx: Fix re-login for Nport Handle in use scsi: qla2xxx: Retry switch command on time out scsi: qla2xxx: Serialize GPNID for multiple RSCN scsi: qla2xxx: Fix login state machine stuck at GPDB scsi: qla2xxx: Fix NPIV host cleanup in target mode scsi: qla2xxx: Fix Relogin being triggered too fast scsi: qla2xxx: Fix PRLI state check scsi: qla2xxx: Fix abort command deadlock due to spinlock scsi: qla2xxx: Replace fcport alloc with qla2x00_alloc_fcport scsi: qla2xxx: Fix scan state field for fcport scsi: qla2xxx: Clear loop id after delete scsi: qla2xxx: Defer processing of GS IOCB calls scsi: qla2xxx: Remove aborting ELS IOCB call issued as part of timeout. scsi: qla2xxx: Fix system crash in qlt_plogi_ack_unref scsi: qla2xxx: Fix memory leak in dual/target mode NFS: Fix an incorrect type in struct nfs_direct_req pNFS: Prevent the layout header refcount going to zero in pnfs_roc() NFS: Fix unstable write completion RDMA/ucma: Limit possible option size RDMA/ucma: Check that user doesn't overflow QP state RDMA/mlx5: Fix integer overflow while resizing CQ IB/uverbs: Improve lockdep_check net/smc: fix NULL pointer dereference on sock_create_kern() error path regulator: stm32-vrefbuf: fix check on ready flag drm/i915: Fix rsvd2 mask when out-fence is returned drm/i915: Clear the in-use marker on execbuf failure drm/i915: Disable DC states around GMBUS on GLK drm/i915: Update watermark state correctly in sanitize_watermarks drm/i915: Try EDID bitbanging on HDMI after failed read drm/i915/perf: fix perf stream opening lock scsi: core: Avoid that ATA error handling can trigger a kernel hang or oops scsi: qla2xxx: Fix NULL pointer crash due to active timer for ABTS drm/i915: Always call to intel_display_set_init_power() in resume_early. workqueue: Allow retrieval of current task's work struct drm: Allow determining if current task is output poll worker drm/nouveau: Fix deadlock on runtime suspend drm/radeon: Fix deadlock on runtime suspend drm/amdgpu: Fix deadlock on runtime suspend drm/nouveau: prefer XBGR2101010 for addfb ioctl drm/amd/powerplay/smu7: allow mclk switching with no displays drm/amd/powerplay/vega10: allow mclk switching with no displays Revert "drm/radeon/pm: autoswitch power state when in balanced mode" drm/radeon: insist on 32-bit DMA for Cedar on PPC64/PPC64LE drm/amd/powerplay: fix power over limit on Fiji drm/amdgpu: used cached pcie gen info for SI (v2) drm/amdgpu: Notify sbios device ready before send request drm/radeon: fix KV harvesting drm/amdgpu: fix KV harvesting drm/amdgpu:Correct max uvd handles drm/amdgpu:Always save uvd vcpu_bo in VM Mode MIPS: BMIPS: Do not mask IPIs during suspend MIPS: ath25: Check for kzalloc allocation failure MIPS: OCTEON: irq: Check for null return on kzalloc allocation PCI: dwc: Fix enumeration end when reaching root subordinate Input: matrix_keypad - fix race when disabling interrupts lib/bug.c: exclude non-BUG/WARN exceptions from report_bug() mm/memblock.c: hardcode the end_pfn being -1 Documentation/sphinx: Fix Directive import error loop: Fix lost writes caused by missing flag virtio_ring: fix num_free handling in error case KVM: s390: fix memory overwrites when not using SCA entries arm64: mm: fix thinko in non-global page table attribute check IB/core: Fix missing RDMA cgroups release in case of failure to register device kbuild: Handle builtin dtb file names containing hyphens dm bufio: avoid false-positive Wmaybe-uninitialized warning IB/mlx5: Fix incorrect size of klms in the memory region bcache: fix crashes in duplicate cache device register bcache: don't attach backing with duplicate UUID x86/MCE: Save microcode revision in machine check records x86/MCE: Serialize sysfs changes perf tools: Fix trigger class trigger_on() x86/spectre_v2: Don't check microcode versions when running under hypervisors ALSA: hda/realtek - Add support headset mode for DELL WYSE ALSA: hda/realtek - Add headset mode support for Dell laptop ALSA: hda/realtek: Limit mic boost on T480 ALSA: hda/realtek - Fix dock line-out volume on Dell Precision 7520 ALSA: hda/realtek - Make dock sound work on ThinkPad L570 ALSA: seq: Don't allow resizing pool in use ALSA: seq: More protection for concurrent write and ioctl races ALSA: hda - Fix a wrong FIXUP for alc289 on Dell machines ALSA: hda: add dock and led support for HP EliteBook 820 G3 ALSA: hda: add dock and led support for HP ProBook 640 G2 scsi: qla2xxx: Fix NULL pointer crash due to probe failure scsi: qla2xxx: Fix recursion while sending terminate exchange dt-bindings: Document mti,mips-cpc binding MIPS: CPC: Map registers using DT in mips_cpc_default_phys_base() nospec: Kill array_index_nospec_mask_check() nospec: Include dependency x86/entry: Reduce the code footprint of the 'idtentry' macro x86/entry/64: Use 'xorl' for faster register clearing x86/mm: Remove stale comment about KMEMCHECK x86/asm: Improve how GEN_*_SUFFIXED_RMWcc() specify clobbers x86/LDT: Avoid warning in 32-bit builds with older gcc x86-64/realmode: Add instruction suffix Revert "x86/retpoline: Simplify vmexit_fill_RSB()" x86/speculation: Use IBRS if available before calling into firmware x86/retpoline: Support retpoline builds with Clang x86/speculation, objtool: Annotate indirect calls/jumps for objtool x86/speculation: Move firmware_restrict_branch_speculation_*() from C to CPP x86/paravirt, objtool: Annotate indirect calls x86/boot, objtool: Annotate indirect jump in secondary_startup_64() x86/mm/sme, objtool: Annotate indirect call in sme_encrypt_execute() objtool: Use existing global variables for options objtool: Add retpoline validation kbuild: re-order the code to not parse unnecessary variables kbuild: Set KBUILD_CFLAGS before incl. arch Makefile kbuild: move cc-option and cc-disable-warning after incl. arch Makefile objtool: Add module specific retpoline rules objtool, retpolines: Integrate objtool with retpoline support more closely objtool: Fix another switch table detection issue objtool: Fix 32-bit build x86/kprobes: Fix kernel crash when probing .entry_trampoline code Linux 4.14.27 Signed-off-by: Greg Kroah-Hartman --- df0daba8301ef29566e24a87f7aab0a3acbe8c49 diff --cc Makefile index df0b96dbf0d0,00e969db94b8..5175b9570ba9 --- a/Makefile +++ b/Makefile @@@ -459,73 -482,23 +482,24 @@@ ifneq ($(KBUILD_SRC), $(srctree) $(objtree) $(VERSION) $(PATCHLEVEL) endif - # Support for using generic headers in asm-generic - PHONY += asm-generic uapi-asm-generic - asm-generic: uapi-asm-generic - $(Q)$(MAKE) -f $(srctree)/scripts/Makefile.asm-generic \ - src=asm obj=arch/$(SRCARCH)/include/generated/asm - uapi-asm-generic: - $(Q)$(MAKE) -f $(srctree)/scripts/Makefile.asm-generic \ - src=uapi/asm obj=arch/$(SRCARCH)/include/generated/uapi/asm - - # To make sure we do not include .config for any of the *config targets - # catch them early, and hand them over to scripts/kconfig/Makefile - # It is allowed to specify more targets when calling make, including - # mixing *config targets and build targets. - # For example 'make oldconfig all'. - # Detect when mixed targets is specified, and make a second invocation - # of make so .config is not included in this case either (for *config). - - version_h := include/generated/uapi/linux/version.h - old_version_h := include/linux/version.h - - no-dot-config-targets := clean mrproper distclean \ - cscope gtags TAGS tags help% %docs check% coccicheck \ - $(version_h) headers_% archheaders archscripts \ - kernelversion %src-pkg - - config-targets := 0 - mixed-targets := 0 - dot-config := 1 - - ifneq ($(filter $(no-dot-config-targets), $(MAKECMDGOALS)),) - ifeq ($(filter-out $(no-dot-config-targets), $(MAKECMDGOALS)),) - dot-config := 0 - endif + ifeq ($(cc-name),clang) + ifneq ($(CROSS_COMPILE),) -CLANG_TARGET := --target=$(notdir $(CROSS_COMPILE:%-=%)) ++CLANG_TRIPLE ?= $(CROSS_COMPILE) ++CLANG_TARGET := --target=$(notdir $(CLANG_TRIPLE:%-=%)) + GCC_TOOLCHAIN := $(realpath $(dir $(shell which $(LD)))/..) endif - - ifeq ($(KBUILD_EXTMOD),) - ifneq ($(filter config %config,$(MAKECMDGOALS)),) - config-targets := 1 - ifneq ($(words $(MAKECMDGOALS)),1) - mixed-targets := 1 - endif - endif + ifneq ($(GCC_TOOLCHAIN),) + CLANG_GCC_TC := --gcc-toolchain=$(GCC_TOOLCHAIN) endif - # install and modules_install need also be processed one by one - ifneq ($(filter install,$(MAKECMDGOALS)),) - ifneq ($(filter modules_install,$(MAKECMDGOALS)),) - mixed-targets := 1 - endif + KBUILD_CFLAGS += $(CLANG_TARGET) $(CLANG_GCC_TC) + KBUILD_AFLAGS += $(CLANG_TARGET) $(CLANG_GCC_TC) endif - ifeq ($(mixed-targets),1) - # =========================================================================== - # We're called with mixed targets (*config and build targets). - # Handle them one by one. - - PHONY += $(MAKECMDGOALS) __build_one_by_one - - $(filter-out __build_one_by_one, $(MAKECMDGOALS)): __build_one_by_one - @: - - __build_one_by_one: - $(Q)set -e; \ - for i in $(MAKECMDGOALS); do \ - $(MAKE) -f $(srctree)/Makefile $$i; \ - done + RETPOLINE_CFLAGS_GCC := -mindirect-branch=thunk-extern -mindirect-branch-register + RETPOLINE_CFLAGS_CLANG := -mretpoline-external-thunk + RETPOLINE_CFLAGS := $(call cc-option,$(RETPOLINE_CFLAGS_GCC),$(call cc-option,$(RETPOLINE_CFLAGS_CLANG))) + export RETPOLINE_CFLAGS - else ifeq ($(config-targets),1) # =========================================================================== # *config targets only - make sure prerequisites are updated, and descend diff --cc net/netfilter/xt_IDLETIMER.c index f11aa28b96ce,bb5d6a058fb7..12d33ea361bc --- a/net/netfilter/xt_IDLETIMER.c +++ b/net/netfilter/xt_IDLETIMER.c @@@ -307,22 -146,9 +307,24 @@@ static int idletimer_tg_create(struct i setup_timer(&info->timer->timer, idletimer_tg_expired, (unsigned long) info->timer); info->timer->refcnt = 1; + info->timer->send_nl_msg = (info->send_nl_msg == 0) ? false : true; + info->timer->active = true; + info->timer->timeout = info->timeout; + + info->timer->delayed_timer_trigger.tv_sec = 0; + info->timer->delayed_timer_trigger.tv_nsec = 0; + info->timer->work_pending = false; + info->timer->uid = 0; + get_monotonic_boottime(&info->timer->last_modified_timer); + + info->timer->pm_nb.notifier_call = idletimer_resume; + ret = register_pm_notifier(&info->timer->pm_nb); + if (ret) + printk(KERN_WARNING "[%s] Failed to register pm notifier %d\n", + __func__, ret); + INIT_WORK(&info->timer->work, idletimer_tg_work); + mod_timer(&info->timer->timer, msecs_to_jiffies(info->timeout * 1000) + jiffies);