summaryrefslogtreecommitdiff
path: root/include/linux (follow)
Commit message (Collapse)AuthorAge
* Merge LA.UM.7.5.2.r1-03300-8x96.0 of ↵Davide Garberi2019-07-20
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://source.codeaurora.org/quic/la/kernel/msm-4.4 into lineage-16.0 313e787f28bb Merge "power: qpnp-smbcharger: Change ordering of EXTCON_USB_SPEED" into kernel.lnx.4.4.r37-rel dfa5b807ec2c Merge changes I0ab244e6,I05a4aa96 into kernel.lnx.4.4.r37-rel c900b4827149 msm: ipa: Fix array out of bound and use after NULL check b562b057dd2a msm: ipa: Fix pointer checked for NULL may be used 216dfe7e7a14 usb: phy-msm-susb-qmp: Add checks to check clk_enabled 2c0a97a53f77 power: qpnp-smbcharger: Change ordering of EXTCON_USB_SPEED 56d12bfe26c3 Merge commit '09d42880fd9f4d04317f030021b85323b8f8b9b9' into HEAD 09d42880fd9f Merge "msm: camera_v2: isp: update the frame drop during error case" 19d79e95f10c Merge "msm:camera: add trace log support for VFE events" 3ae0451881ca Merge "msm: camera_v2: Remove sysfs bind/unbind files" 45b4ac208b7b msm:camera: add trace log support for VFE events 5974bd4025ea msm: camera_v2: Fix page fault issue in camera ISP ed8c0918eeb1 Merge "icnss: Reduce the shutdown timeout from 50sec to 15sec" 7e4d8780224c Merge "drm/msm/dsi-staging: Add range check in debugfs_dump_info_read" 978400398a92 icnss: Reduce the shutdown timeout from 50sec to 15sec 4e08c8cbacd4 msm: camera_v2: Remove sysfs bind/unbind files 79a8f215703e Merge "ASoC: sdm660_cdc: Set speaker amplifier enable bit" c0f636f83226 Merge "cnss2: Update board data file name format" bd48b0a101e8 Merge "msm: kgsl: Add missing check for snapshot IB dump" 2f5e49a21882 Merge "defconfig: msm: Disable EXT2 and EXT3 FS configs for MSM8998" 46ece1ae20ad Merge "sched/walt: Fix the memory leak of idle task load pointers" 78540133736a Merge "soc: qcom: smem: validate fields of shared structures" 196d97abd323 Merge "Merge android-4.4.183 (94fd428) into msm-4.4" fad4d2e83739 Merge "msm: kgsl: Change data type for GPU ib vote" 54d23a97a07e Merge "drivers: thermal: Use FCAP scm call instead of DMAX in LMH DCVSh" 1379d11803dd msm: kgsl: Add missing check for snapshot IB dump 2c8f4699fdd0 defconfig: msm: Disable EXT2 and EXT3 FS configs for MSM8998 fcc47ec62ae1 soc: qcom: smem: validate fields of shared structures 7151def9c713 ASoC: sdm660_cdc: Set speaker amplifier enable bit f395d5810f27 sched/walt: Fix the memory leak of idle task load pointers 03f0af3c211e drivers: thermal: Use FCAP scm call instead of DMAX in LMH DCVSh f6ee0c2bb45d drivers: thermal: Use FCAP scm call instead of DMAX in KTM cb7df67908b0 msm: kgsl: Change data type for GPU ib vote c94369b4c1fc cnss2: print firmware cap info in stats 9a1c2880320b Merge android-4.4.183 (94fd428) into msm-4.4 94fd42809f7d Merge 4.4.183 into android-4.4 308743255040 Linux 4.4.183 df7ba8162ca1 Abort file_remove_privs() for non-reg. files 8f6345a11caa coredump: fix race condition between mmget_not_zero()/get_task_mm() and core dumping 3692bc31c1ff Revert "crypto: crypto4xx - properly set IV after de- and encrypt" 39c7c903c63d scsi: libsas: delete sas port if expander discover failed a272035ea1bf scsi: libcxgbi: add a check for NULL pointer in cxgbi_check_route() af8cd6101bf5 net: sh_eth: fix mdio access in sh_eth_close() for R-Car Gen2 and RZ/A1 SoCs b25c62cc16e0 KVM: PPC: Book3S: Use new mutex to synchronize access to rtas token list 7ef8d778cf3e ia64: fix build errors by exporting paddr_to_nid() 432030b25b86 configfs: Fix use-after-free when accessing sd->s_dentry d5a18c8609f3 i2c: dev: fix potential memory leak in i2cdev_ioctl_rdwr be1b9df5bba1 net: tulip: de4x5: Drop redundant MODULE_DEVICE_TABLE() 0bb6c295e463 gpio: fix gpio-adp5588 build errors dd961efe8dee perf/ring_buffer: Add ordering to rb->nest increment 8abd8a9a975e perf/ring_buffer: Fix exposing a temporarily decreased data_head 3e74b3f05abf x86/CPU/AMD: Don't force the CPB cap when running under a hypervisor f4678b7808e7 mISDN: make sure device name is NUL terminated e2f9c0f73454 sunhv: Fix device naming inconsistency between sunhv_console and sunhv_reg 753aa7556089 neigh: fix use-after-free read in pneigh_get_next 709d8771fab7 lapb: fixed leak of control-blocks. 1777c35e8d47 ipv6: flowlabel: fl6_sock_lookup() must use atomic_inc_not_zero 6f057abd08d1 be2net: Fix number of Rx queues used for flow hashing 7139a9f6246d ax25: fix inconsistent lock state in ax25_destroy_timer f1a5c6b083bc USB: serial: option: add Telit 0x1260 and 0x1261 compositions a67d65958e2a USB: serial: option: add support for Simcom SIM7500/SIM7600 RNDIS mode b8ee804bba8f USB: serial: pl2303: add Allied Telesis VT-Kit3 f14747c88170 USB: usb-storage: Add new ID to ums-realtek 038c192699a9 USB: Fix chipmunk-like voice when using Logitech C270 for recording audio. 8f6b0e59d2a0 drm/vmwgfx: NULL pointer dereference from vmw_cmd_dx_view_define() 6e0c7e73232f drm/vmwgfx: integer underflow in vmw_cmd_dx_set_shader() leading to an invalid read ce391e4cdef8 KVM: s390: fix memory slot handling for KVM_SET_USER_MEMORY_REGION a1b9c6b4cba0 KVM: x86/pmu: do not mask the value that is written to fixed PMUs 7caddacf863f usbnet: ipheth: fix racing condition f80a35fcb9e9 scsi: bnx2fc: fix incorrect cast to u64 on shift operation da51a322f197 scsi: lpfc: add check for loss of ndlp when sending RRQ 3a2ff1088c2a Drivers: misc: fix out-of-bounds access in function param_set_kgdbts_var 1f8233ca3a48 ASoC: cs42xx8: Add regcache mask dirty 91f1fc1ae409 cgroup: Use css_tryget() instead of css_tryget_online() in task_get_css() 8b47af927e2e bcache: fix stack corruption by PRECEDING_KEY() a2aabf288bf7 i2c: acorn: fix i2c warning d774bd27b4f5 ptrace: restore smp_rmb() in __ptrace_may_access() 5aff00ee839a signal/ptrace: Don't leak unitialized kernel memory with PTRACE_PEEK_SIGINFO 0b871fc866eb fs/ocfs2: fix race in ocfs2_dentry_attach_lock() c05fed507582 mm/list_lru.c: fix memory leak in __memcg_init_list_lru_node be499b84c3bd libata: Extend quirks for the ST1000LM024 drives with NOLPM quirk d7a18814fff9 ALSA: seq: Cover unsubscribe_port() in list_mutex 4282a0b1db65 Revert "Bluetooth: Align minimum encryption key size for LE and BR/EDR connections" cd23996afa14 futex: Fix futex lock the wrong page 38fbd5c2d572 ARM: exynos: Fix undefined instruction during Exynos5422 resume 5767587907fd pwm: Fix deadlock warning when removing PWM device 113a78a0a537 ARM: dts: exynos: Always enable necessary APIO_1V8 and ABB_1V8 regulators on Arndale Octa 78184953a2ed pwm: tiehrpwm: Update shadow register for disabling PWMs d24e22cde8b3 dmaengine: idma64: Use actual device for DMA transfers 533171620cd5 gpio: gpio-omap: add check for off wake capable gpios 3b4652ba9d78 PCI: xilinx: Check for __get_free_pages() failure c869210e0ac6 video: imsttfb: fix potential NULL pointer dereferences 5c7fbc5f6a7d video: hgafb: fix potential NULL pointer dereference bea8fa863ce9 PCI: rcar: Fix a potential NULL pointer dereference 76208df36d7a PCI: rpadlpar: Fix leaked device_node references in add/remove paths 100468652e5a ARM: dts: imx6qdl: Specify IMX6QDL_CLK_IPG as "ipg" clock to SDMA 927d2be77e6c ARM: dts: imx6sx: Specify IMX6SX_CLK_IPG as "ipg" clock to SDMA 8aee025af280 ARM: dts: imx6sx: Specify IMX6SX_CLK_IPG as "ahb" clock to SDMA b49501f51371 clk: rockchip: Turn on "aclk_dmac1" for suspend on rk3288 4270dc6a7a79 soc: mediatek: pwrap: Zero initialize rdata in pwrap_init_cipher 845676341c2d platform/chrome: cros_ec_proto: check for NULL transfer function c7155e51cf85 x86/PCI: Fix PCI IRQ routing table memory leak 198a54f07f51 nfsd: allow fh_want_write to be called twice e6779b264d69 fuse: retrieve: cap requested size to negotiated max_write 742cb74bf108 nvmem: core: fix read buffer in place 750c55e69cca ALSA: hda - Register irq handler after the chip initialization 09ad374f23ce iommu/vt-d: Set intel_iommu_gfx_mapped correctly 9e4ed17b9416 f2fs: fix to do sanity check on valid block count of segment 534ef922376e f2fs: fix to avoid panic in do_recover_data() 90a238a8a2d2 ntp: Allow TAI-UTC offset to be set to zero 25be7d51a012 drm/bridge: adv7511: Fix low refresh rate selection 8fdebdd06c4b perf/x86/intel: Allow PEBS multi-entry in watermark mode dee1ba919ca2 mfd: twl6040: Fix device init errors for ACCCTL register 4110c4188853 mfd: intel-lpss: Set the device in reset state when init 1bef19130b5b kernel/sys.c: prctl: fix false positive in validate_prctl_map() 937fa1624a1f mm/cma_debug.c: fix the break condition in cma_maxchunk_get() fceb0be41836 mm/cma.c: fix crash on CMA allocation if bitmap allocation fails 9c8d4d77e3aa hugetlbfs: on restore reserve error path retain subpool reservation d8129a5d7a9d ipc: prevent lockup on alloc_msg and free_msg 50c0db539937 sysctl: return -EINVAL if val violates minmax 8b9241b052a2 fs/fat/file.c: issue flush after the writeback of FAT 335e20ca9562 Merge "soc: qcom: glink_spi_xprt: Sanitize input for short cmd" abc2a59bfdb9 Merge "soc: qcom: hab: add error handling when dt item is missing" 9998d2e52dd4 mm: add /proc/pid/smaps_rollup a2165163680e Merge "msm: ais: sensor: actuator: fix out of bound read for bivcm region params" 7ec9476039c1 soc: qcom: hab: add error handling when dt item is missing 7967865bb4c4 msm: ais: sensor: actuator: fix out of bound read for bivcm region params 14f9c777669f Merge "Merge android-4.4.182 (9c4ab57) into msm-4.4" eee21eb4a635 ANDROID: kernel: cgroup: cpuset: Clear cpus_requested for empty buf f1adac4c222b ANDROID: kernel: cgroup: cpuset: Add missing allocation of cpus_requested in alloc_trial_cpuset 291c54b284a4 i2c: virtio: reallocate memory for each msg buffer ca64572d5459 Merge changes into msm-4.4 a32f2cd75906 Merge android-4.4.182 (9c4ab57) into msm-4.4 2ae4cde5790c Merge "i2c: refine the driver of i2c virtualization" 9c4ab5729952 Merge 4.4.182 into android-4.4 33790f2eda73 Linux 4.4.182 f938ae0ce5ef tcp: enforce tcp_min_snd_mss in tcp_mtu_probing() e757d052f3b8 tcp: add tcp_min_snd_mss sysctl ad472d3a9483 tcp: tcp_fragment() should apply sane memory limits 4657ee0fe05e tcp: limit payload size of sacked skbs 17c66e9e49a1 Merge "msm: vidc: add additional check to avoid out of bound access" 4e933027e684 Merge "Merge android-4.4.181 (bd858d7) into msm-4.4" be5afd934314 i2c: refine the driver of i2c virtualization f1057f82fa62 msm: vidc: add additional check to avoid out of bound access c176a066dfd3 diag: dci: Correct out of bounds check in processing dci pkt rsp cc47c2c325b9 Merge "msm: adsprpc: maintain local copy of rpra offloaded to DSP" 1f3eb68e71cd msm: adsprpc: maintain local copy of rpra offloaded to DSP a50f44266d21 Merge "diag: Prevent out-of-bound access while processing userspace data" c658076e45e0 Merge "ASoC: msm: Add support for AVS version check" f328b4d28d25 Merge "arm: dts: msm: Add avs-version dt property for 8996" 5dbfa1533af8 diag: Prevent out-of-bound access while processing userspace data eb0322ea9b07 arm: dts: msm: Add avs-version dt property for 8996 5ef154a26639 Merge android-4.4.181 (bd858d7) into msm-4.4 7caeb5cb7c4f soc: qcom: glink_spi_xprt: Sanitize input for short cmd 17fd8dbacb92 Merge "soc: qcom: hab: add missing variable declaration" 1cc130f95ec7 UPSTREAM: binder: check for overflow when alloc for security context 784672577648 BACKPORT: binder: fix race between munmap() and direct reclaim 849ecbea5548 soc: qcom: hab: add missing variable declaration bd858d730975 Merge 4.4.181 into android-4.4 0434b31d567e Merge "dwc3-msm: Fix dwc3_drd_state_string for undefined state" 411c38c969a7 Merge "usb: dwc3-msm: Ensure hardware is reset during role change" 8dce56fa0ccf Merge "usb: dwc3-msm: add enum for drd_states to remove otg_state usage" d7b7345c3a5d Linux 4.4.181 f1d7eebd9d67 ethtool: check the return value of get_regs_len 647f72b0d75c ipv4: Define __ipv4_neigh_lookup_noref when CONFIG_INET is disabled c9696a8f3e64 fuse: Add FOPEN_STREAM to use stream_open() 3bf0c459615a fs: stream_open - opener for stream-like files so that read and write can run simultaneously without deadlock 0f5fab865ae9 drm/gma500/cdv: Check vbt config bits when detecting lvds panels e087f7519114 genwqe: Prevent an integer overflow in the ioctl 59565e894518 MIPS: pistachio: Build uImage.gz by default 8061c23f5378 fuse: fallocate: fix return with locked inode cf30c1953467 parisc: Use implicit space register selection for loading the coherence index of I/O pdirs f0d1e74c8120 rcu: locking and unlocking need to always be at least barriers 44657dbba7c4 pktgen: do not sleep with the thread lock held. eded0b11c7a3 net: rds: fix memory leak in rds_ib_flush_mr_pool 54dd5e352cf7 net/mlx4_en: ethtool, Remove unsupported SFP EEPROM high pages query cc475966e5f7 neighbor: Call __ipv4_neigh_lookup_noref in neigh_xmit e5c6de6694ed ethtool: fix potential userspace buffer overflow 8795708bc939 media: uvcvideo: Fix uvc_alloc_entity() allocation alignment 2b13a9580ef9 usb: gadget: fix request length error for isoc transfer 8b15aae1baa2 net: cdc_ncm: GetNtbFormat endian fix 613b4bc1951d Revert "x86/build: Move _etext to actual end of .text" 6ad730b83178 userfaultfd: don't pin the user memory in userfaultfd_file_create() 4e06554db5e5 brcmfmac: add subtype check for event handling in data path 993b68aa3ef7 brcmfmac: add length checks in scheduled scan result handler 35bcfbad5d94 brcmfmac: fix incorrect event channel deduction 8c12de962667 brcmfmac: revise handling events in receive path 5f4688a15c24 brcmfmac: screening firmware event packet 6da841e9ae87 brcmfmac: Add length checks on firmware events c55a2cffa5ca bnx2x: disable GSO where gso_size is too big for hardware a33b6d4c8bc7 net: create skb_gso_validate_mac_len() c53c1a821d62 binder: replace "%p" with "%pK" 5280efe442b2 binder: Replace "%p" with "%pK" for stable 336c16621785 CIFS: cifs_read_allocate_pages: don't iterate through whole page array on ENOMEM 360f8fe46f74 kernel/signal.c: trace_signal_deliver when signal_group_exit 7a47d1873120 memcg: make it work on sparse non-0-node systems 5db0a9c3cc52 tty: max310x: Fix external crystal register setup e498745310d0 tty: serial: msm_serial: Fix XON/XOFF 986adddb9d8f drm/nouveau/i2c: Disable i2c bus access after ->fini() bf8f6b43c2e7 ALSA: hda/realtek - Set default power save node to 0 494447b90d6d Btrfs: fix race updating log root item during fsync af34de02a6a7 scsi: zfcp: fix to prevent port_remove with pure auto scan LUNs (only sdevs) e85d002556ea scsi: zfcp: fix missing zfcp_port reference put on -EBUSY from port_remove 8282730a0afa media: smsusb: better handle optional alignment 0bce1ea89712 media: usb: siano: Fix false-positive "uninitialized variable" warning b1782be70e1e media: usb: siano: Fix general protection fault in smsusb d52c0ffb383f USB: rio500: fix memory leak in close after disconnect b92be99a0c8b USB: rio500: refuse more than one device at a time ee9d750e9ac8 USB: Add LPM quirk for Surface Dock GigE adapter 30e66d7d2fb9 USB: sisusbvga: fix oops in error path of sisusb_probe 018b7ea9ca24 USB: Fix slab-out-of-bounds write in usb_get_bos_descriptor f5e1ec93b208 usb: xhci: avoid null pointer deref when bos field is NULL 017e6726a4fb xhci: Convert xhci_handshake() to use readl_poll_timeout_atomic() ec70e2c130d6 include/linux/bitops.h: sanitize rotate primitives fbbc4fe02a31 sparc64: Fix regression in non-hypervisor TLB flush xcall 5bce46edeb72 tipc: fix modprobe tipc failed after switch order of device registration -v2 416d252ba926 Revert "tipc: fix modprobe tipc failed after switch order of device registration" f1613a9e1bdc xen/pciback: Don't disable PCI_COMMAND on PCI device reset. 383687e15cd0 crypto: vmx - ghash: do nosimd fallback manually 61ba8e9f51b3 net: mvpp2: fix bad MVPP2_TXQ_SCHED_TOKEN_CNTR_REG queue value 1d33a3ebd945 bnxt_en: Fix aggregation buffer leak under OOM condition. 7d423301240b tipc: Avoid copying bytes beyond the supplied data 332bff9d9a08 usbnet: fix kernel crash after disconnect 16ffb5f7c335 net: stmmac: fix reset gpio free missing 4f9c73aa2930 net-gro: fix use-after-free read in napi_gro_frags() 5cbaa135a0e1 llc: fix skb leak in llc_build_and_send_ui_pkt() 36a7222071d1 ipv6: Consider sk_bound_dev_if when binding a raw socket to an address 9fbf1ac57c7a ASoC: davinci-mcasp: Fix clang warning without CONFIG_PM 0984cb76d294 spi: Fix zero length xfer bug 854415f37aae spi: rspi: Fix sequencer reset during initialization c927451887c1 spi : spi-topcliff-pch: Fix to handle empty DMA buffers 445c07409179 scsi: lpfc: Fix SLI3 commands being issued on SLI4 devices 3a5d11332896 media: saa7146: avoid high stack usage with clang 5a96cf10dc5c media: go7007: avoid clang frame overflow warning with KASAN 0e9f0805eeea media: m88ds3103: serialize reset messages in m88ds3103_set_frontend 9effa38946b6 scsi: qla4xxx: avoid freeing unallocated dma memory 95f0bb0a6c83 usb: core: Add PM runtime calls to usb_hcd_platform_shutdown 1909121a6192 rcutorture: Fix cleanup path for invalid torture_type strings 1081d04a0443 tty: ipwireless: fix missing checks for ioremap c05b2ed7bc1b virtio_console: initialize vtermno value for ports 348ec7b9a1c1 media: wl128x: prevent two potential buffer overflows 557ae685914b spi: tegra114: reset controller on probe 5e75d5e2cd0c cxgb3/l2t: Fix undefined behaviour dc2a8861fdb8 ASoC: fsl_utils: fix a leaked reference by adding missing of_node_put 971e4a273242 ASoC: eukrea-tlv320: fix a leaked reference by adding missing of_node_put 5db3c5adf44a HID: core: move Usage Page concatenation to Main item cb7872f12835 chardev: add additional check for minor range overlap 5680f59f0f15 x86/ia32: Fix ia32_restore_sigcontext() AC leak 94032b2e05c9 arm64: cpu_ops: fix a leaked reference by adding missing of_node_put 04f45a555ec3 scsi: ufs: Avoid configuring regulator with undefined voltage range 60bcfed2ad60 scsi: ufs: Fix regulator load and icc-level configuration 0a597d2badef brcmfmac: fix race during disconnect when USB completion is in progress f95ab00ab455 brcmfmac: convert dev_init_lock mutex to completion db74ef82ca8b b43: shut up clang -Wuninitialized variable warning 951fbf92381a brcmfmac: fix missing checks for kmemdup 1d3ee4d7fc6a rtlwifi: fix a potential NULL pointer dereference 6d7b052d8466 iio: common: ssp_sensors: Initialize calculated_time in ssp_common_process_data e98ef6767e41 iio: hmc5843: fix potential NULL pointer dereferences a86d06179423 iio: ad_sigma_delta: Properly handle SPI bus locking vs CS assertion 4400dcd69478 x86/build: Keep local relocations with ld.lld 75ffb58460e3 cpufreq: pmac32: fix possible object reference leak 3d041608fd4b cpufreq/pasemi: fix possible object reference leak 4d02f33a4f42 cpufreq: ppc_cbe: fix possible object reference leak 6be923556aad s390: cio: fix cio_irb declaration 65e3cb04a5a2 extcon: arizona: Disable mic detect if running when driver is removed db7eb206560c PM / core: Propagate dev->power.wakeup_path when no callbacks 066a286679b4 mmc: sdhci-of-esdhc: add erratum eSDHC-A001 and A-008358 support 6a783be705ba mmc: sdhci-of-esdhc: add erratum eSDHC5 support 8b0e6af16ae6 mmc_spi: add a status check for spi_sync_locked a30e90a8eb3a scsi: libsas: Do discovery on empty PHY to update PHY info 915defac2a9a hwmon: (f71805f) Use request_muxed_region for Super-IO accesses 0eb8a476ffc5 hwmon: (pc87427) Use request_muxed_region for Super-IO accesses 79deb6abd1f5 hwmon: (smsc47b397) Use request_muxed_region for Super-IO accesses 92b4d16997c4 hwmon: (smsc47m1) Use request_muxed_region for Super-IO accesses e3e58378c678 hwmon: (vt1211) Use request_muxed_region for Super-IO accesses 488920af3bb3 RDMA/cxgb4: Fix null pointer dereference on alloc_skb failure 2ff310e6dae2 i40e: don't allow changes to HW VLAN stripping on active port VLANs bc791e819503 x86/irq/64: Limit IST stack overflow check to #DB stack 3557f0857767 USB: core: Don't unbind interfaces following device reset failure 6f5e198878fb sched/core: Handle overflow in cpu_shares_write_u64 9812286a63a1 sched/core: Check quota and period overflow at usec to nsec conversion 9d4961a415ed powerpc/numa: improve control of topology updates 82077215ed25 media: pvrusb2: Prevent a buffer overflow ca865598abf1 media: au0828: Fix NULL pointer dereference in au0828_analog_stream_enable() a8e0739d465e audit: fix a memory leak bug ff3038fe657d media: ov2659: make S_FMT succeed even if requested format doesn't match 2d97a3abcf2f media: au0828: stop video streaming only when last user stops 115ccd9ca776 media: ov6650: Move v4l2_clk_get() to ov6650_video_probe() helper 1433d7a0937b media: coda: clear error return value before picture run 5cadb7ae715f dmaengine: at_xdmac: remove BUG_ON macro in tasklet af8b5d7d9477 pinctrl: pistachio: fix leaked of_node references 74dd38a5a447 HID: logitech-hidpp: use RAP instead of FAP to get the protocol version 9bffc62051a9 mm/uaccess: Use 'unsigned long' to placate UBSAN warnings on older GCC versions ae6b1f761180 x86/mm: Remove in_nmi() warning from 64-bit implementation of vmalloc_fault() b059848e119f smpboot: Place the __percpu annotation correctly 28d8827a09b0 x86/build: Move _etext to actual end of .text d3eb2caf6d41 bcache: avoid clang -Wunintialized warning 7bf3463abc95 bcache: add failure check to run_cache_set() for journal replay d4547049bb7f bcache: fix failure in journal relplay 5789884b98ab bcache: return error immediately in bch_journal_replay() 50d25ca802f5 net: cw1200: fix a NULL pointer dereference af2fb022b390 mwifiex: prevent an array overflow 4b24af093631 ASoC: fsl_sai: Update is_slave_mode with correct value c1045350a6c4 mac80211/cfg80211: update bss channel on channel switch a3c50ef9fd43 dmaengine: pl330: _stop: clear interrupt status 958848a1d97c w1: fix the resume command API e4163587c4ee rtc: 88pm860x: prevent use-after-free on device remove a898d150956b brcm80211: potential NULL dereference in brcmf_cfg80211_vndr_cmds_dcmd_handler() 5e1a879d9ab3 spi: pxa2xx: fix SCR (divisor) calculation 3d521a6fba45 ASoC: imx: fix fiq dependencies af283aba93bb powerpc/boot: Fix missing check of lseek() return value dba032038c95 mmc: core: Verify SD bus width 333e8303d6e0 cxgb4: Fix error path in cxgb4_init_module 6948c6bc17d6 gfs2: Fix lru_count going negative 635c71d11234 tools include: Adopt linux/bits.h ed2faf464d9b perf tools: No need to include bitops.h in util.h a1f254dc06f9 at76c50x-usb: Don't register led_trigger if usb_register_driver failed f5e4337e4a9c ssb: Fix possible NULL pointer dereference in ssb_host_pcmcia_exit e39af96f4dc1 media: vivid: use vfree() instead of kfree() for dev->bitmap_cap a04e71a0dbc6 media: cpia2: Fix use-after-free in cpia2_exit 28eeeb86046e fbdev: fix WARNING in __alloc_pages_nodemask bug bf8474c64846 hugetlb: use same fault hash key for shared and private mappings 6bc153907900 fbdev: fix divide error in fb_var_to_videomode 5c9a20390c01 btrfs: sysfs: don't leak memory when failing add fsid 0fa88718cdc5 Btrfs: fix race between ranged fsync and writeback of adjacent ranges 2f5ac0bd2ef7 gfs2: Fix sign extension bug in gfs2_update_stats 8aae5e98fec2 crypto: vmx - CTR: always increment IV as quadword 582bb52e4803 Revert "scsi: sd: Keep disk read-only when re-reading partition" bd020b331706 bio: fix improper use of smp_mb__before_atomic() 603212bdc59c KVM: x86: fix return value for reserved EFER 75d63b131b73 ext4: do not delete unlinked inode from orphan list on failed truncate 31943685dd49 fbdev: sm712fb: fix memory frequency by avoiding a switch/case fallthrough 7d64186e7910 btrfs: Honour FITRIM range constraints during free space trim 57e84e4c073d md/raid: raid5 preserve the writeback action after the parity check 9013f4870848 Revert "Don't jump to compute_result state from check_result state" 0c57364fa0f4 perf bench numa: Add define for RUSAGE_THREAD if not present 66ee750cfdd7 ufs: fix braino in ufs_get_inode_gid() for solaris UFS flavour fc0208b3428d power: supply: sysfs: prevent endless uevent loop with CONFIG_POWER_SUPPLY_DEBUG dd37fa44dffa KVM: arm/arm64: Ensure vcpu target is unset on reset failure fe4f461ba517 xfrm4: Fix uninitialized memory read in _decode_session4 cd0848733f25 vti4: ipip tunnel deregistration fixes. 8fd94b65d207 xfrm6_tunnel: Fix potential panic when unloading xfrm6_tunnel module 86040d722b29 xfrm: policy: Fix out-of-bound array accesses in __xfrm_policy_unlink daea41651d43 dm delay: fix a crash when invalid device is specified 566004721c90 PCI: Mark Atheros AR9462 to avoid bus reset 0dc2ad06ddad fbdev: sm712fb: fix crashes and garbled display during DPMS modesetting 4673eae95b53 fbdev: sm712fb: use 1024x768 by default on non-MIPS, fix garbled display c996722f7fff fbdev: sm712fb: fix support for 1024x768-16 mode ebfadb510e3c fbdev: sm712fb: fix crashes during framebuffer writes by correctly mapping VRAM c92bde52742c fbdev: sm712fb: fix boot screen glitch when sm712fb replaces VGA 0d5cd17ce037 fbdev: sm712fb: fix white screen of death on reboot, don't set CR3B-CR3F ca5ce8db7f23 fbdev: sm712fb: fix VRAM detection, don't set SR70/71/74/75 6c2fb5beecba fbdev: sm712fb: fix brightness control on reboot, don't set SR30 dbc86a927d66 perf intel-pt: Fix sample timestamp wrt non-taken branches eedc9a210f9f perf intel-pt: Fix improved sample timestamp f5da0aeca525 perf intel-pt: Fix instructions sampling rate a5b2e4b6ac21 memory: tegra: Fix integer overflow on tick value calculation 11988047b39a tracing: Fix partial reading of trace event's id file a7929c94860e ceph: flush dirty inodes before proceeding with remount 3c99cd905ba9 iommu/tegra-smmu: Fix invalid ASID bits on Tegra30/114 40857ab73988 fuse: honor RLIMIT_FSIZE in fuse_file_fallocate 73724958d129 fuse: fix writepages on 32bit 12060f4740ca clk: tegra: Fix PLLM programming on Tegra124+ when PMC overrides divider 4676a07add08 NFS4: Fix v4.0 client state corruption when mount e8623e7a8f4b media: ov6650: Fix sensor possibly not detected on probe dffc9e5ffae5 cifs: fix strcat buffer overflow and reduce raciness in smb21_set_oplock_level() b8ab0c4effb8 of: fix clang -Wunsequenced for be32_to_cpu() 2a98d346396a intel_th: msu: Fix single mode with IOMMU bc065776c31e md: add mddev->pers to avoid potential NULL pointer dereference ade291d2230a stm class: Fix channel free in stm output free path 65d14634b694 tipc: fix modprobe tipc failed after switch order of device registration ff69bb4be643 tipc: switch order of device registration to fix a crash 2ff783f3e05e ppp: deflate: Fix possible crash in deflate_init dd20e0c039fe net/mlx4_core: Change the error print to info print b2f72a431142 net: avoid weird emergency message 70064f7ea100 KVM: x86: Skip EFER vs. guest CPUID checks for host-initiated writes 5e9bc16ff49f ALSA: hda/realtek - Fix for Lenovo B50-70 inverted internal microphone bug 98529ecd313b ext4: zero out the unused memory region in the extent tree block 9ff6372e5a6b fs/writeback.c: use rcu_barrier() to wait for inflight wb switches going into workqueue when umount bfce20eaf18e writeback: synchronize sync(2) against cgroup writeback membership switches cd042379c6ad crypto: arm/aes-neonbs - don't access already-freed walk.iv b70e97ae5d8e crypto: salsa20 - don't access already-freed walk.iv 6dc48d059646 crypto: chacha20poly1305 - set cra_name correctly b82055365307 crypto: gcm - fix incompatibility between "gcm" and "gcm_base" de087dd9f5c6 crypto: gcm - Fix error return code in crypto_gcm_create_common() 064d0c5a9ae6 ipmi:ssif: compare block number correctly for multi-part return messages bef039b2419e bcache: never set KEY_PTRS of journal key to 0 in journal_reclaim() 5651075a1ce3 bcache: fix a race between cache register and cacheset unregister 686e4352e3d8 Btrfs: do not start a transaction at iterate_extent_inodes() b268b6e501ed ext4: fix ext4_show_options for file systems w/o journal f3b9c26f191b ext4: actually request zeroing of inode table after grow e5100e7fa78e tty/vt: fix write/write race in ioctl(KDSKBSENT) handler 592a36c59f4c mfd: da9063: Fix OTP control register names to match datasheets for DA9063/63L e3a74fbc42ca ocfs2: fix ocfs2 read inode data panic in ocfs2_iget b614485b6b93 mm/mincore.c: make mincore() more conservative 80cc516ed783 ASoC: RT5677-SPI: Disable 16Bit SPI Transfers e6bf706cee3f ASoC: max98090: Fix restore of DAPM Muxes 2a8188c68e0a ALSA: hda/realtek - EAPD turn on later 1bbb08c8ab6a ALSA: hda/hdmi - Consider eld_valid when reporting jack event 2d8956305ae8 ALSA: usb-audio: Fix a memory leak bug b1c1888ad6c9 crypto: x86/crct10dif-pcl - fix use via crypto_shash_digest() 2ee7c2310cd0 crypto: crct10dif-generic - fix use via crypto_shash_digest() 2ee0dd38a0a0 crypto: vmx - fix copy-paste error in CTR mode f7dee0816e5d ARM: exynos: Fix a leaked reference by adding missing of_node_put ce814dc7e811 x86/speculation/mds: Improve CPU buffer clear documentation 4d68e2bf3834 x86/speculation/mds: Revert CPU buffer clear on double fault exit b1d850962510 ASoC: msm: Add support for AVS version check fbf98df8d02a cnss2: Update board data file name format 5e073ffd6668 drm/msm/dsi-staging: Add range check in debugfs_dump_info_read 9600b86489f9 dwc3-msm: Fix dwc3_drd_state_string for undefined state cc96e0915225 usb: dwc3-msm: Ensure hardware is reset during role change 02d74bda3466 usb: dwc3-msm: add enum for drd_states to remove otg_state usage e4e5a975f4ae Merge remote-tracking branch 'origin/upstream-f2fs-stable-linux-4.4.y' into android-4.4 2d812ba62ee4 f2fs: link f2fs quota ops for sysfile 6dc3fb0ba854 fs: sdcardfs: Add missing option to show_options * Excluded commits: 8be3b55c4cc7 msm: camera_v2: isp: update the frame drop during error case 28e17c1f6505 msm: camera_v2: isp: handle frame drop due to scheduling latency Change-Id: Ib67f22a311625da7dd130d2491ef9e035b1db54f Signed-off-by: Davide Garberi <dade.garberi@gmail.com>
| * Merge "sched/walt: Fix the memory leak of idle task load pointers"Linux Build Service Account2019-06-29
| |\
| | * sched/walt: Fix the memory leak of idle task load pointersPavankumar Kondeti2019-06-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The memory for task load pointers are allocated twice for each idle thread except for the boot CPU. This happens during boot from idle_threads_init()->idle_init() in the following 2 paths. 1. idle_init()->fork_idle()->copy_process()-> sched_fork()->init_new_task_load() 2. idle_init()->fork_idle()-> init_idle()->init_new_task_load() The memory allocation for all tasks happens through the 1st path, so use the same for idle tasks and kill the 2nd path. Since the idle thread of boot CPU does not go through fork_idle(), allocate the memory for it separately. Change-Id: I4696a414ffe07d4114b56d326463026019e278f1 Signed-off-by: Pavankumar Kondeti <pkondeti@codeaurora.org> [schikk@codeaurora.org: resolved merge conflicts] Signed-off-by: Swetha Chikkaboraiah <schikk@codeaurora.org>
| * | Merge android-4.4.183 (94fd428) into msm-4.4Srinivasarao P2019-06-24
| |\ \ | | |/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * refs/heads/tmp-94fd428 Linux 4.4.183 Abort file_remove_privs() for non-reg. files coredump: fix race condition between mmget_not_zero()/get_task_mm() and core dumping Revert "crypto: crypto4xx - properly set IV after de- and encrypt" scsi: libsas: delete sas port if expander discover failed scsi: libcxgbi: add a check for NULL pointer in cxgbi_check_route() net: sh_eth: fix mdio access in sh_eth_close() for R-Car Gen2 and RZ/A1 SoCs KVM: PPC: Book3S: Use new mutex to synchronize access to rtas token list ia64: fix build errors by exporting paddr_to_nid() configfs: Fix use-after-free when accessing sd->s_dentry i2c: dev: fix potential memory leak in i2cdev_ioctl_rdwr net: tulip: de4x5: Drop redundant MODULE_DEVICE_TABLE() gpio: fix gpio-adp5588 build errors perf/ring_buffer: Add ordering to rb->nest increment perf/ring_buffer: Fix exposing a temporarily decreased data_head x86/CPU/AMD: Don't force the CPB cap when running under a hypervisor mISDN: make sure device name is NUL terminated sunhv: Fix device naming inconsistency between sunhv_console and sunhv_reg neigh: fix use-after-free read in pneigh_get_next lapb: fixed leak of control-blocks. ipv6: flowlabel: fl6_sock_lookup() must use atomic_inc_not_zero be2net: Fix number of Rx queues used for flow hashing ax25: fix inconsistent lock state in ax25_destroy_timer USB: serial: option: add Telit 0x1260 and 0x1261 compositions USB: serial: option: add support for Simcom SIM7500/SIM7600 RNDIS mode USB: serial: pl2303: add Allied Telesis VT-Kit3 USB: usb-storage: Add new ID to ums-realtek USB: Fix chipmunk-like voice when using Logitech C270 for recording audio. drm/vmwgfx: NULL pointer dereference from vmw_cmd_dx_view_define() drm/vmwgfx: integer underflow in vmw_cmd_dx_set_shader() leading to an invalid read KVM: s390: fix memory slot handling for KVM_SET_USER_MEMORY_REGION KVM: x86/pmu: do not mask the value that is written to fixed PMUs usbnet: ipheth: fix racing condition scsi: bnx2fc: fix incorrect cast to u64 on shift operation scsi: lpfc: add check for loss of ndlp when sending RRQ Drivers: misc: fix out-of-bounds access in function param_set_kgdbts_var ASoC: cs42xx8: Add regcache mask dirty cgroup: Use css_tryget() instead of css_tryget_online() in task_get_css() bcache: fix stack corruption by PRECEDING_KEY() i2c: acorn: fix i2c warning ptrace: restore smp_rmb() in __ptrace_may_access() signal/ptrace: Don't leak unitialized kernel memory with PTRACE_PEEK_SIGINFO fs/ocfs2: fix race in ocfs2_dentry_attach_lock() mm/list_lru.c: fix memory leak in __memcg_init_list_lru_node libata: Extend quirks for the ST1000LM024 drives with NOLPM quirk ALSA: seq: Cover unsubscribe_port() in list_mutex Revert "Bluetooth: Align minimum encryption key size for LE and BR/EDR connections" futex: Fix futex lock the wrong page ARM: exynos: Fix undefined instruction during Exynos5422 resume pwm: Fix deadlock warning when removing PWM device ARM: dts: exynos: Always enable necessary APIO_1V8 and ABB_1V8 regulators on Arndale Octa pwm: tiehrpwm: Update shadow register for disabling PWMs dmaengine: idma64: Use actual device for DMA transfers gpio: gpio-omap: add check for off wake capable gpios PCI: xilinx: Check for __get_free_pages() failure video: imsttfb: fix potential NULL pointer dereferences video: hgafb: fix potential NULL pointer dereference PCI: rcar: Fix a potential NULL pointer dereference PCI: rpadlpar: Fix leaked device_node references in add/remove paths ARM: dts: imx6qdl: Specify IMX6QDL_CLK_IPG as "ipg" clock to SDMA ARM: dts: imx6sx: Specify IMX6SX_CLK_IPG as "ipg" clock to SDMA ARM: dts: imx6sx: Specify IMX6SX_CLK_IPG as "ahb" clock to SDMA clk: rockchip: Turn on "aclk_dmac1" for suspend on rk3288 soc: mediatek: pwrap: Zero initialize rdata in pwrap_init_cipher platform/chrome: cros_ec_proto: check for NULL transfer function x86/PCI: Fix PCI IRQ routing table memory leak nfsd: allow fh_want_write to be called twice fuse: retrieve: cap requested size to negotiated max_write nvmem: core: fix read buffer in place ALSA: hda - Register irq handler after the chip initialization iommu/vt-d: Set intel_iommu_gfx_mapped correctly f2fs: fix to do sanity check on valid block count of segment f2fs: fix to avoid panic in do_recover_data() ntp: Allow TAI-UTC offset to be set to zero drm/bridge: adv7511: Fix low refresh rate selection perf/x86/intel: Allow PEBS multi-entry in watermark mode mfd: twl6040: Fix device init errors for ACCCTL register mfd: intel-lpss: Set the device in reset state when init kernel/sys.c: prctl: fix false positive in validate_prctl_map() mm/cma_debug.c: fix the break condition in cma_maxchunk_get() mm/cma.c: fix crash on CMA allocation if bitmap allocation fails hugetlbfs: on restore reserve error path retain subpool reservation ipc: prevent lockup on alloc_msg and free_msg sysctl: return -EINVAL if val violates minmax fs/fat/file.c: issue flush after the writeback of FAT ANDROID: kernel: cgroup: cpuset: Clear cpus_requested for empty buf ANDROID: kernel: cgroup: cpuset: Add missing allocation of cpus_requested in alloc_trial_cpuset Change-Id: I5b33449bd21ec21d91b1030d53df3658a305bded Signed-off-by: Srinivasarao P <spathi@codeaurora.org>
| | * Merge 4.4.183 into android-4.4Greg Kroah-Hartman2019-06-22
| | |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Changes in 4.4.183 fs/fat/file.c: issue flush after the writeback of FAT sysctl: return -EINVAL if val violates minmax ipc: prevent lockup on alloc_msg and free_msg hugetlbfs: on restore reserve error path retain subpool reservation mm/cma.c: fix crash on CMA allocation if bitmap allocation fails mm/cma_debug.c: fix the break condition in cma_maxchunk_get() kernel/sys.c: prctl: fix false positive in validate_prctl_map() mfd: intel-lpss: Set the device in reset state when init mfd: twl6040: Fix device init errors for ACCCTL register perf/x86/intel: Allow PEBS multi-entry in watermark mode drm/bridge: adv7511: Fix low refresh rate selection ntp: Allow TAI-UTC offset to be set to zero f2fs: fix to avoid panic in do_recover_data() f2fs: fix to do sanity check on valid block count of segment iommu/vt-d: Set intel_iommu_gfx_mapped correctly ALSA: hda - Register irq handler after the chip initialization nvmem: core: fix read buffer in place fuse: retrieve: cap requested size to negotiated max_write nfsd: allow fh_want_write to be called twice x86/PCI: Fix PCI IRQ routing table memory leak platform/chrome: cros_ec_proto: check for NULL transfer function soc: mediatek: pwrap: Zero initialize rdata in pwrap_init_cipher clk: rockchip: Turn on "aclk_dmac1" for suspend on rk3288 ARM: dts: imx6sx: Specify IMX6SX_CLK_IPG as "ahb" clock to SDMA ARM: dts: imx6sx: Specify IMX6SX_CLK_IPG as "ipg" clock to SDMA ARM: dts: imx6qdl: Specify IMX6QDL_CLK_IPG as "ipg" clock to SDMA PCI: rpadlpar: Fix leaked device_node references in add/remove paths PCI: rcar: Fix a potential NULL pointer dereference video: hgafb: fix potential NULL pointer dereference video: imsttfb: fix potential NULL pointer dereferences PCI: xilinx: Check for __get_free_pages() failure gpio: gpio-omap: add check for off wake capable gpios dmaengine: idma64: Use actual device for DMA transfers pwm: tiehrpwm: Update shadow register for disabling PWMs ARM: dts: exynos: Always enable necessary APIO_1V8 and ABB_1V8 regulators on Arndale Octa pwm: Fix deadlock warning when removing PWM device ARM: exynos: Fix undefined instruction during Exynos5422 resume futex: Fix futex lock the wrong page Revert "Bluetooth: Align minimum encryption key size for LE and BR/EDR connections" ALSA: seq: Cover unsubscribe_port() in list_mutex libata: Extend quirks for the ST1000LM024 drives with NOLPM quirk mm/list_lru.c: fix memory leak in __memcg_init_list_lru_node fs/ocfs2: fix race in ocfs2_dentry_attach_lock() signal/ptrace: Don't leak unitialized kernel memory with PTRACE_PEEK_SIGINFO ptrace: restore smp_rmb() in __ptrace_may_access() i2c: acorn: fix i2c warning bcache: fix stack corruption by PRECEDING_KEY() cgroup: Use css_tryget() instead of css_tryget_online() in task_get_css() ASoC: cs42xx8: Add regcache mask dirty Drivers: misc: fix out-of-bounds access in function param_set_kgdbts_var scsi: lpfc: add check for loss of ndlp when sending RRQ scsi: bnx2fc: fix incorrect cast to u64 on shift operation usbnet: ipheth: fix racing condition KVM: x86/pmu: do not mask the value that is written to fixed PMUs KVM: s390: fix memory slot handling for KVM_SET_USER_MEMORY_REGION drm/vmwgfx: integer underflow in vmw_cmd_dx_set_shader() leading to an invalid read drm/vmwgfx: NULL pointer dereference from vmw_cmd_dx_view_define() USB: Fix chipmunk-like voice when using Logitech C270 for recording audio. USB: usb-storage: Add new ID to ums-realtek USB: serial: pl2303: add Allied Telesis VT-Kit3 USB: serial: option: add support for Simcom SIM7500/SIM7600 RNDIS mode USB: serial: option: add Telit 0x1260 and 0x1261 compositions ax25: fix inconsistent lock state in ax25_destroy_timer be2net: Fix number of Rx queues used for flow hashing ipv6: flowlabel: fl6_sock_lookup() must use atomic_inc_not_zero lapb: fixed leak of control-blocks. neigh: fix use-after-free read in pneigh_get_next sunhv: Fix device naming inconsistency between sunhv_console and sunhv_reg mISDN: make sure device name is NUL terminated x86/CPU/AMD: Don't force the CPB cap when running under a hypervisor perf/ring_buffer: Fix exposing a temporarily decreased data_head perf/ring_buffer: Add ordering to rb->nest increment gpio: fix gpio-adp5588 build errors net: tulip: de4x5: Drop redundant MODULE_DEVICE_TABLE() i2c: dev: fix potential memory leak in i2cdev_ioctl_rdwr configfs: Fix use-after-free when accessing sd->s_dentry ia64: fix build errors by exporting paddr_to_nid() KVM: PPC: Book3S: Use new mutex to synchronize access to rtas token list net: sh_eth: fix mdio access in sh_eth_close() for R-Car Gen2 and RZ/A1 SoCs scsi: libcxgbi: add a check for NULL pointer in cxgbi_check_route() scsi: libsas: delete sas port if expander discover failed Revert "crypto: crypto4xx - properly set IV after de- and encrypt" coredump: fix race condition between mmget_not_zero()/get_task_mm() and core dumping Abort file_remove_privs() for non-reg. files Linux 4.4.183 Change-Id: I2b3dee46a31e5dfb485364e1039bcf513173d7b2 Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
| | | * coredump: fix race condition between mmget_not_zero()/get_task_mm() and core ↵Andrea Arcangeli2019-06-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | dumping commit 04f5866e41fb70690e28397487d8bd8eea7d712a upstream. The core dumping code has always run without holding the mmap_sem for writing, despite that is the only way to ensure that the entire vma layout will not change from under it. Only using some signal serialization on the processes belonging to the mm is not nearly enough. This was pointed out earlier. For example in Hugh's post from Jul 2017: https://lkml.kernel.org/r/alpine.LSU.2.11.1707191716030.2055@eggly.anvils "Not strictly relevant here, but a related note: I was very surprised to discover, only quite recently, how handle_mm_fault() may be called without down_read(mmap_sem) - when core dumping. That seems a misguided optimization to me, which would also be nice to correct" In particular because the growsdown and growsup can move the vm_start/vm_end the various loops the core dump does around the vma will not be consistent if page faults can happen concurrently. Pretty much all users calling mmget_not_zero()/get_task_mm() and then taking the mmap_sem had the potential to introduce unexpected side effects in the core dumping code. Adding mmap_sem for writing around the ->core_dump invocation is a viable long term fix, but it requires removing all copy user and page faults and to replace them with get_dump_page() for all binary formats which is not suitable as a short term fix. For the time being this solution manually covers the places that can confuse the core dump either by altering the vma layout or the vma flags while it runs. Once ->core_dump runs under mmap_sem for writing the function mmget_still_valid() can be dropped. Allowing mmap_sem protected sections to run in parallel with the coredump provides some minor parallelism advantage to the swapoff code (which seems to be safe enough by never mangling any vma field and can keep doing swapins in parallel to the core dumping) and to some other corner case. In order to facilitate the backporting I added "Fixes: 86039bd3b4e6" however the side effect of this same race condition in /proc/pid/mem should be reproducible since before 2.6.12-rc2 so I couldn't add any other "Fixes:" because there's no hash beyond the git genesis commit. Because find_extend_vma() is the only location outside of the process context that could modify the "mm" structures under mmap_sem for reading, by adding the mmget_still_valid() check to it, all other cases that take the mmap_sem for reading don't need the new check after mmget_not_zero()/get_task_mm(). The expand_stack() in page fault context also doesn't need the new check, because all tasks under core dumping are frozen. Link: http://lkml.kernel.org/r/20190325224949.11068-1-aarcange@redhat.com Fixes: 86039bd3b4e6 ("userfaultfd: add new syscall to provide memory externalization") Signed-off-by: Andrea Arcangeli <aarcange@redhat.com> Reported-by: Jann Horn <jannh@google.com> Suggested-by: Oleg Nesterov <oleg@redhat.com> Acked-by: Peter Xu <peterx@redhat.com> Reviewed-by: Mike Rapoport <rppt@linux.ibm.com> Reviewed-by: Oleg Nesterov <oleg@redhat.com> Reviewed-by: Jann Horn <jannh@google.com> Acked-by: Jason Gunthorpe <jgg@mellanox.com> Acked-by: Michal Hocko <mhocko@suse.com> Cc: <stable@vger.kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> Cc: Joel Fernandes (Google) <joel@joelfernandes.org> [mhocko@suse.com: stable 4.4 backport - drop infiniband part because of missing 5f9794dc94f59 - drop userfaultfd_event_wait_completion hunk because of missing 9cd75c3cd4c3d] - handle binder_update_page_range because of missing 720c241924046 - handle mlx5_ib_disassociate_ucontext - akaher@vmware.com ] Signed-off-by: Michal Hocko <mhocko@suse.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| | | * cgroup: Use css_tryget() instead of css_tryget_online() in task_get_css()Tejun Heo2019-06-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit 18fa84a2db0e15b02baa5d94bdb5bd509175d2f6 upstream. A PF_EXITING task can stay associated with an offline css. If such task calls task_get_css(), it can get stuck indefinitely. This can be triggered by BSD process accounting which writes to a file with PF_EXITING set when racing against memcg disable as in the backtrace at the end. After this change, task_get_css() may return a css which was already offline when the function was called. None of the existing users are affected by this change. INFO: rcu_sched self-detected stall on CPU INFO: rcu_sched detected stalls on CPUs/tasks: ... NMI backtrace for cpu 0 ... Call Trace: <IRQ> dump_stack+0x46/0x68 nmi_cpu_backtrace.cold.2+0x13/0x57 nmi_trigger_cpumask_backtrace+0xba/0xca rcu_dump_cpu_stacks+0x9e/0xce rcu_check_callbacks.cold.74+0x2af/0x433 update_process_times+0x28/0x60 tick_sched_timer+0x34/0x70 __hrtimer_run_queues+0xee/0x250 hrtimer_interrupt+0xf4/0x210 smp_apic_timer_interrupt+0x56/0x110 apic_timer_interrupt+0xf/0x20 </IRQ> RIP: 0010:balance_dirty_pages_ratelimited+0x28f/0x3d0 ... btrfs_file_write_iter+0x31b/0x563 __vfs_write+0xfa/0x140 __kernel_write+0x4f/0x100 do_acct_process+0x495/0x580 acct_process+0xb9/0xdb do_exit+0x748/0xa00 do_group_exit+0x3a/0xa0 get_signal+0x254/0x560 do_signal+0x23/0x5c0 exit_to_usermode_loop+0x5d/0xa0 prepare_exit_to_usermode+0x53/0x80 retint_user+0x8/0x8 Signed-off-by: Tejun Heo <tj@kernel.org> Cc: stable@vger.kernel.org # v4.2+ Fixes: ec438699a9ae ("cgroup, block: implement task_get_css() and use it in bio_associate_current()") Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| | | * pwm: Fix deadlock warning when removing PWM devicePhong Hoang2019-06-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [ Upstream commit 347ab9480313737c0f1aaa08e8f2e1a791235535 ] This patch fixes deadlock warning if removing PWM device when CONFIG_PROVE_LOCKING is enabled. This issue can be reproceduced by the following steps on the R-Car H3 Salvator-X board if the backlight is disabled: # cd /sys/class/pwm/pwmchip0 # echo 0 > export # ls device export npwm power pwm0 subsystem uevent unexport # cd device/driver # ls bind e6e31000.pwm uevent unbind # echo e6e31000.pwm > unbind [ 87.659974] ====================================================== [ 87.666149] WARNING: possible circular locking dependency detected [ 87.672327] 5.0.0 #7 Not tainted [ 87.675549] ------------------------------------------------------ [ 87.681723] bash/2986 is trying to acquire lock: [ 87.686337] 000000005ea0e178 (kn->count#58){++++}, at: kernfs_remove_by_name_ns+0x50/0xa0 [ 87.694528] [ 87.694528] but task is already holding lock: [ 87.700353] 000000006313b17c (pwm_lock){+.+.}, at: pwmchip_remove+0x28/0x13c [ 87.707405] [ 87.707405] which lock already depends on the new lock. [ 87.707405] [ 87.715574] [ 87.715574] the existing dependency chain (in reverse order) is: [ 87.723048] [ 87.723048] -> #1 (pwm_lock){+.+.}: [ 87.728017] __mutex_lock+0x70/0x7e4 [ 87.732108] mutex_lock_nested+0x1c/0x24 [ 87.736547] pwm_request_from_chip.part.6+0x34/0x74 [ 87.741940] pwm_request_from_chip+0x20/0x40 [ 87.746725] export_store+0x6c/0x1f4 [ 87.750820] dev_attr_store+0x18/0x28 [ 87.754998] sysfs_kf_write+0x54/0x64 [ 87.759175] kernfs_fop_write+0xe4/0x1e8 [ 87.763615] __vfs_write+0x40/0x184 [ 87.767619] vfs_write+0xa8/0x19c [ 87.771448] ksys_write+0x58/0xbc [ 87.775278] __arm64_sys_write+0x18/0x20 [ 87.779721] el0_svc_common+0xd0/0x124 [ 87.783986] el0_svc_compat_handler+0x1c/0x24 [ 87.788858] el0_svc_compat+0x8/0x18 [ 87.792947] [ 87.792947] -> #0 (kn->count#58){++++}: [ 87.798260] lock_acquire+0xc4/0x22c [ 87.802353] __kernfs_remove+0x258/0x2c4 [ 87.806790] kernfs_remove_by_name_ns+0x50/0xa0 [ 87.811836] remove_files.isra.1+0x38/0x78 [ 87.816447] sysfs_remove_group+0x48/0x98 [ 87.820971] sysfs_remove_groups+0x34/0x4c [ 87.825583] device_remove_attrs+0x6c/0x7c [ 87.830197] device_del+0x11c/0x33c [ 87.834201] device_unregister+0x14/0x2c [ 87.838638] pwmchip_sysfs_unexport+0x40/0x4c [ 87.843509] pwmchip_remove+0xf4/0x13c [ 87.847773] rcar_pwm_remove+0x28/0x34 [ 87.852039] platform_drv_remove+0x24/0x64 [ 87.856651] device_release_driver_internal+0x18c/0x21c [ 87.862391] device_release_driver+0x14/0x1c [ 87.867175] unbind_store+0xe0/0x124 [ 87.871265] drv_attr_store+0x20/0x30 [ 87.875442] sysfs_kf_write+0x54/0x64 [ 87.879618] kernfs_fop_write+0xe4/0x1e8 [ 87.884055] __vfs_write+0x40/0x184 [ 87.888057] vfs_write+0xa8/0x19c [ 87.891887] ksys_write+0x58/0xbc [ 87.895716] __arm64_sys_write+0x18/0x20 [ 87.900154] el0_svc_common+0xd0/0x124 [ 87.904417] el0_svc_compat_handler+0x1c/0x24 [ 87.909289] el0_svc_compat+0x8/0x18 [ 87.913378] [ 87.913378] other info that might help us debug this: [ 87.913378] [ 87.921374] Possible unsafe locking scenario: [ 87.921374] [ 87.927286] CPU0 CPU1 [ 87.931808] ---- ---- [ 87.936331] lock(pwm_lock); [ 87.939293] lock(kn->count#58); [ 87.945120] lock(pwm_lock); [ 87.950599] lock(kn->count#58); [ 87.953908] [ 87.953908] *** DEADLOCK *** [ 87.953908] [ 87.959821] 4 locks held by bash/2986: [ 87.963563] #0: 00000000ace7bc30 (sb_writers#6){.+.+}, at: vfs_write+0x188/0x19c [ 87.971044] #1: 00000000287991b2 (&of->mutex){+.+.}, at: kernfs_fop_write+0xb4/0x1e8 [ 87.978872] #2: 00000000f739d016 (&dev->mutex){....}, at: device_release_driver_internal+0x40/0x21c [ 87.988001] #3: 000000006313b17c (pwm_lock){+.+.}, at: pwmchip_remove+0x28/0x13c [ 87.995481] [ 87.995481] stack backtrace: [ 87.999836] CPU: 0 PID: 2986 Comm: bash Not tainted 5.0.0 #7 [ 88.005489] Hardware name: Renesas Salvator-X board based on r8a7795 ES1.x (DT) [ 88.012791] Call trace: [ 88.015235] dump_backtrace+0x0/0x190 [ 88.018891] show_stack+0x14/0x1c [ 88.022204] dump_stack+0xb0/0xec [ 88.025514] print_circular_bug.isra.32+0x1d0/0x2e0 [ 88.030385] __lock_acquire+0x1318/0x1864 [ 88.034388] lock_acquire+0xc4/0x22c [ 88.037958] __kernfs_remove+0x258/0x2c4 [ 88.041874] kernfs_remove_by_name_ns+0x50/0xa0 [ 88.046398] remove_files.isra.1+0x38/0x78 [ 88.050487] sysfs_remove_group+0x48/0x98 [ 88.054490] sysfs_remove_groups+0x34/0x4c [ 88.058580] device_remove_attrs+0x6c/0x7c [ 88.062671] device_del+0x11c/0x33c [ 88.066154] device_unregister+0x14/0x2c [ 88.070070] pwmchip_sysfs_unexport+0x40/0x4c [ 88.074421] pwmchip_remove+0xf4/0x13c [ 88.078163] rcar_pwm_remove+0x28/0x34 [ 88.081906] platform_drv_remove+0x24/0x64 [ 88.085996] device_release_driver_internal+0x18c/0x21c [ 88.091215] device_release_driver+0x14/0x1c [ 88.095478] unbind_store+0xe0/0x124 [ 88.099048] drv_attr_store+0x20/0x30 [ 88.102704] sysfs_kf_write+0x54/0x64 [ 88.106359] kernfs_fop_write+0xe4/0x1e8 [ 88.110275] __vfs_write+0x40/0x184 [ 88.113757] vfs_write+0xa8/0x19c [ 88.117065] ksys_write+0x58/0xbc [ 88.120374] __arm64_sys_write+0x18/0x20 [ 88.124291] el0_svc_common+0xd0/0x124 [ 88.128034] el0_svc_compat_handler+0x1c/0x24 [ 88.132384] el0_svc_compat+0x8/0x18 The sysfs unexport in pwmchip_remove() is completely asymmetric to what we do in pwmchip_add_with_polarity() and commit 0733424c9ba9 ("pwm: Unexport children before chip removal") is a strong indication that this was wrong to begin with. We should just move pwmchip_sysfs_unexport() where it belongs, which is right after pwmchip_sysfs_unexport_children(). In that case, we do not need separate functions anymore either. We also really want to remove sysfs irrespective of whether or not the chip will be removed as a result of pwmchip_remove(). We can only assume that the driver will be gone after that, so we shouldn't leave any dangling sysfs files around. This warning disappears if we move pwmchip_sysfs_unexport() to the top of pwmchip_remove(), pwmchip_sysfs_unexport_children(). That way it is also outside of the pwm_lock section, which indeed doesn't seem to be needed. Moving the pwmchip_sysfs_export() call outside of that section also seems fine and it'd be perfectly symmetric with pwmchip_remove() again. So, this patch fixes them. Signed-off-by: Phong Hoang <phong.hoang.wz@renesas.com> [shimoda: revise the commit log and code] Fixes: 76abbdde2d95 ("pwm: Add sysfs interface") Fixes: 0733424c9ba9 ("pwm: Unexport children before chip removal") Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com> Tested-by: Hoan Nguyen An <na-hoan@jinso.co.jp> Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be> Reviewed-by: Simon Horman <horms+renesas@verge.net.au> Reviewed-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Thierry Reding <thierry.reding@gmail.com> Signed-off-by: Sasha Levin <sashal@kernel.org>
| * | | Merge android-4.4.182 (9c4ab57) into msm-4.4Srinivasarao P2019-06-18
| |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * refs/heads/tmp-9c4ab57 Linux 4.4.182 tcp: enforce tcp_min_snd_mss in tcp_mtu_probing() tcp: add tcp_min_snd_mss sysctl tcp: tcp_fragment() should apply sane memory limits tcp: limit payload size of sacked skbs UPSTREAM: binder: check for overflow when alloc for security context BACKPORT: binder: fix race between munmap() and direct reclaim Change-Id: I4cfb9eb282f54f083631fec4c8161eed42e8ab54 Signed-off-by: Srinivasarao P <spathi@codeaurora.org>
| | * | Merge 4.4.182 into android-4.4Greg Kroah-Hartman2019-06-17
| | |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Changes in 4.4.182 tcp: limit payload size of sacked skbs tcp: tcp_fragment() should apply sane memory limits tcp: add tcp_min_snd_mss sysctl tcp: enforce tcp_min_snd_mss in tcp_mtu_probing() Linux 4.4.182 Change-Id: I2698fa2ad3884a20d936e6bee638304f52df19bd Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
| | | * tcp: limit payload size of sacked skbsEric Dumazet2019-06-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit 3b4929f65b0d8249f19a50245cd88ed1a2f78cff upstream. Jonathan Looney reported that TCP can trigger the following crash in tcp_shifted_skb() : BUG_ON(tcp_skb_pcount(skb) < pcount); This can happen if the remote peer has advertized the smallest MSS that linux TCP accepts : 48 An skb can hold 17 fragments, and each fragment can hold 32KB on x86, or 64KB on PowerPC. This means that the 16bit witdh of TCP_SKB_CB(skb)->tcp_gso_segs can overflow. Note that tcp_sendmsg() builds skbs with less than 64KB of payload, so this problem needs SACK to be enabled. SACK blocks allow TCP to coalesce multiple skbs in the retransmit queue, thus filling the 17 fragments to maximal capacity. CVE-2019-11477 -- u16 overflow of TCP_SKB_CB(skb)->tcp_gso_segs Backport notes, provided by Joao Martins <joao.m.martins@oracle.com> v4.15 or since commit 737ff314563 ("tcp: use sequence distance to detect reordering") had switched from the packet-based FACK tracking and switched to sequence-based. v4.14 and older still have the old logic and hence on tcp_skb_shift_data() needs to retain its original logic and have @fack_count in sync. In other words, we keep the increment of pcount with tcp_skb_pcount(skb) to later used that to update fack_count. To make it more explicit we track the new skb that gets incremented to pcount in @next_pcount, and we get to avoid the constant invocation of tcp_skb_pcount(skb) all together. Fixes: 832d11c5cd07 ("tcp: Try to restore large SKBs while SACK processing") Signed-off-by: Eric Dumazet <edumazet@google.com> Reported-by: Jonathan Looney <jtl@netflix.com> Acked-by: Neal Cardwell <ncardwell@google.com> Reviewed-by: Tyler Hicks <tyhicks@canonical.com> Cc: Yuchung Cheng <ycheng@google.com> Cc: Bruce Curtis <brucec@netflix.com> Cc: Jonathan Lemon <jonathan.lemon@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| * | | Merge android-4.4.181 (bd858d7) into msm-4.4Srinivasarao P2019-06-12
| |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * refs/heads/tmp-bd858d7 Linux 4.4.181 ethtool: check the return value of get_regs_len ipv4: Define __ipv4_neigh_lookup_noref when CONFIG_INET is disabled fuse: Add FOPEN_STREAM to use stream_open() fs: stream_open - opener for stream-like files so that read and write can run simultaneously without deadlock drm/gma500/cdv: Check vbt config bits when detecting lvds panels genwqe: Prevent an integer overflow in the ioctl MIPS: pistachio: Build uImage.gz by default fuse: fallocate: fix return with locked inode parisc: Use implicit space register selection for loading the coherence index of I/O pdirs rcu: locking and unlocking need to always be at least barriers pktgen: do not sleep with the thread lock held. net: rds: fix memory leak in rds_ib_flush_mr_pool net/mlx4_en: ethtool, Remove unsupported SFP EEPROM high pages query neighbor: Call __ipv4_neigh_lookup_noref in neigh_xmit ethtool: fix potential userspace buffer overflow media: uvcvideo: Fix uvc_alloc_entity() allocation alignment usb: gadget: fix request length error for isoc transfer net: cdc_ncm: GetNtbFormat endian fix Revert "x86/build: Move _etext to actual end of .text" userfaultfd: don't pin the user memory in userfaultfd_file_create() brcmfmac: add subtype check for event handling in data path brcmfmac: add length checks in scheduled scan result handler brcmfmac: fix incorrect event channel deduction brcmfmac: revise handling events in receive path brcmfmac: screening firmware event packet brcmfmac: Add length checks on firmware events bnx2x: disable GSO where gso_size is too big for hardware net: create skb_gso_validate_mac_len() binder: replace "%p" with "%pK" binder: Replace "%p" with "%pK" for stable CIFS: cifs_read_allocate_pages: don't iterate through whole page array on ENOMEM kernel/signal.c: trace_signal_deliver when signal_group_exit memcg: make it work on sparse non-0-node systems tty: max310x: Fix external crystal register setup tty: serial: msm_serial: Fix XON/XOFF drm/nouveau/i2c: Disable i2c bus access after ->fini() ALSA: hda/realtek - Set default power save node to 0 Btrfs: fix race updating log root item during fsync scsi: zfcp: fix to prevent port_remove with pure auto scan LUNs (only sdevs) scsi: zfcp: fix missing zfcp_port reference put on -EBUSY from port_remove media: smsusb: better handle optional alignment media: usb: siano: Fix false-positive "uninitialized variable" warning media: usb: siano: Fix general protection fault in smsusb USB: rio500: fix memory leak in close after disconnect USB: rio500: refuse more than one device at a time USB: Add LPM quirk for Surface Dock GigE adapter USB: sisusbvga: fix oops in error path of sisusb_probe USB: Fix slab-out-of-bounds write in usb_get_bos_descriptor usb: xhci: avoid null pointer deref when bos field is NULL xhci: Convert xhci_handshake() to use readl_poll_timeout_atomic() include/linux/bitops.h: sanitize rotate primitives sparc64: Fix regression in non-hypervisor TLB flush xcall tipc: fix modprobe tipc failed after switch order of device registration -v2 Revert "tipc: fix modprobe tipc failed after switch order of device registration" xen/pciback: Don't disable PCI_COMMAND on PCI device reset. crypto: vmx - ghash: do nosimd fallback manually net: mvpp2: fix bad MVPP2_TXQ_SCHED_TOKEN_CNTR_REG queue value bnxt_en: Fix aggregation buffer leak under OOM condition. tipc: Avoid copying bytes beyond the supplied data usbnet: fix kernel crash after disconnect net: stmmac: fix reset gpio free missing net-gro: fix use-after-free read in napi_gro_frags() llc: fix skb leak in llc_build_and_send_ui_pkt() ipv6: Consider sk_bound_dev_if when binding a raw socket to an address ASoC: davinci-mcasp: Fix clang warning without CONFIG_PM spi: Fix zero length xfer bug spi: rspi: Fix sequencer reset during initialization spi : spi-topcliff-pch: Fix to handle empty DMA buffers scsi: lpfc: Fix SLI3 commands being issued on SLI4 devices media: saa7146: avoid high stack usage with clang media: go7007: avoid clang frame overflow warning with KASAN media: m88ds3103: serialize reset messages in m88ds3103_set_frontend scsi: qla4xxx: avoid freeing unallocated dma memory usb: core: Add PM runtime calls to usb_hcd_platform_shutdown rcutorture: Fix cleanup path for invalid torture_type strings tty: ipwireless: fix missing checks for ioremap virtio_console: initialize vtermno value for ports media: wl128x: prevent two potential buffer overflows spi: tegra114: reset controller on probe cxgb3/l2t: Fix undefined behaviour ASoC: fsl_utils: fix a leaked reference by adding missing of_node_put ASoC: eukrea-tlv320: fix a leaked reference by adding missing of_node_put HID: core: move Usage Page concatenation to Main item chardev: add additional check for minor range overlap x86/ia32: Fix ia32_restore_sigcontext() AC leak arm64: cpu_ops: fix a leaked reference by adding missing of_node_put scsi: ufs: Avoid configuring regulator with undefined voltage range scsi: ufs: Fix regulator load and icc-level configuration brcmfmac: fix race during disconnect when USB completion is in progress brcmfmac: convert dev_init_lock mutex to completion b43: shut up clang -Wuninitialized variable warning brcmfmac: fix missing checks for kmemdup rtlwifi: fix a potential NULL pointer dereference iio: common: ssp_sensors: Initialize calculated_time in ssp_common_process_data iio: hmc5843: fix potential NULL pointer dereferences iio: ad_sigma_delta: Properly handle SPI bus locking vs CS assertion x86/build: Keep local relocations with ld.lld cpufreq: pmac32: fix possible object reference leak cpufreq/pasemi: fix possible object reference leak cpufreq: ppc_cbe: fix possible object reference leak s390: cio: fix cio_irb declaration extcon: arizona: Disable mic detect if running when driver is removed PM / core: Propagate dev->power.wakeup_path when no callbacks mmc: sdhci-of-esdhc: add erratum eSDHC-A001 and A-008358 support mmc: sdhci-of-esdhc: add erratum eSDHC5 support mmc_spi: add a status check for spi_sync_locked scsi: libsas: Do discovery on empty PHY to update PHY info hwmon: (f71805f) Use request_muxed_region for Super-IO accesses hwmon: (pc87427) Use request_muxed_region for Super-IO accesses hwmon: (smsc47b397) Use request_muxed_region for Super-IO accesses hwmon: (smsc47m1) Use request_muxed_region for Super-IO accesses hwmon: (vt1211) Use request_muxed_region for Super-IO accesses RDMA/cxgb4: Fix null pointer dereference on alloc_skb failure i40e: don't allow changes to HW VLAN stripping on active port VLANs x86/irq/64: Limit IST stack overflow check to #DB stack USB: core: Don't unbind interfaces following device reset failure sched/core: Handle overflow in cpu_shares_write_u64 sched/core: Check quota and period overflow at usec to nsec conversion powerpc/numa: improve control of topology updates media: pvrusb2: Prevent a buffer overflow media: au0828: Fix NULL pointer dereference in au0828_analog_stream_enable() audit: fix a memory leak bug media: ov2659: make S_FMT succeed even if requested format doesn't match media: au0828: stop video streaming only when last user stops media: ov6650: Move v4l2_clk_get() to ov6650_video_probe() helper media: coda: clear error return value before picture run dmaengine: at_xdmac: remove BUG_ON macro in tasklet pinctrl: pistachio: fix leaked of_node references HID: logitech-hidpp: use RAP instead of FAP to get the protocol version mm/uaccess: Use 'unsigned long' to placate UBSAN warnings on older GCC versions x86/mm: Remove in_nmi() warning from 64-bit implementation of vmalloc_fault() smpboot: Place the __percpu annotation correctly x86/build: Move _etext to actual end of .text bcache: avoid clang -Wunintialized warning bcache: add failure check to run_cache_set() for journal replay bcache: fix failure in journal relplay bcache: return error immediately in bch_journal_replay() net: cw1200: fix a NULL pointer dereference mwifiex: prevent an array overflow ASoC: fsl_sai: Update is_slave_mode with correct value mac80211/cfg80211: update bss channel on channel switch dmaengine: pl330: _stop: clear interrupt status w1: fix the resume command API rtc: 88pm860x: prevent use-after-free on device remove brcm80211: potential NULL dereference in brcmf_cfg80211_vndr_cmds_dcmd_handler() spi: pxa2xx: fix SCR (divisor) calculation ASoC: imx: fix fiq dependencies powerpc/boot: Fix missing check of lseek() return value mmc: core: Verify SD bus width cxgb4: Fix error path in cxgb4_init_module gfs2: Fix lru_count going negative tools include: Adopt linux/bits.h perf tools: No need to include bitops.h in util.h at76c50x-usb: Don't register led_trigger if usb_register_driver failed ssb: Fix possible NULL pointer dereference in ssb_host_pcmcia_exit media: vivid: use vfree() instead of kfree() for dev->bitmap_cap media: cpia2: Fix use-after-free in cpia2_exit fbdev: fix WARNING in __alloc_pages_nodemask bug hugetlb: use same fault hash key for shared and private mappings fbdev: fix divide error in fb_var_to_videomode btrfs: sysfs: don't leak memory when failing add fsid Btrfs: fix race between ranged fsync and writeback of adjacent ranges gfs2: Fix sign extension bug in gfs2_update_stats crypto: vmx - CTR: always increment IV as quadword Revert "scsi: sd: Keep disk read-only when re-reading partition" bio: fix improper use of smp_mb__before_atomic() KVM: x86: fix return value for reserved EFER ext4: do not delete unlinked inode from orphan list on failed truncate fbdev: sm712fb: fix memory frequency by avoiding a switch/case fallthrough btrfs: Honour FITRIM range constraints during free space trim md/raid: raid5 preserve the writeback action after the parity check Revert "Don't jump to compute_result state from check_result state" perf bench numa: Add define for RUSAGE_THREAD if not present ufs: fix braino in ufs_get_inode_gid() for solaris UFS flavour power: supply: sysfs: prevent endless uevent loop with CONFIG_POWER_SUPPLY_DEBUG KVM: arm/arm64: Ensure vcpu target is unset on reset failure xfrm4: Fix uninitialized memory read in _decode_session4 vti4: ipip tunnel deregistration fixes. xfrm6_tunnel: Fix potential panic when unloading xfrm6_tunnel module xfrm: policy: Fix out-of-bound array accesses in __xfrm_policy_unlink dm delay: fix a crash when invalid device is specified PCI: Mark Atheros AR9462 to avoid bus reset fbdev: sm712fb: fix crashes and garbled display during DPMS modesetting fbdev: sm712fb: use 1024x768 by default on non-MIPS, fix garbled display fbdev: sm712fb: fix support for 1024x768-16 mode fbdev: sm712fb: fix crashes during framebuffer writes by correctly mapping VRAM fbdev: sm712fb: fix boot screen glitch when sm712fb replaces VGA fbdev: sm712fb: fix white screen of death on reboot, don't set CR3B-CR3F fbdev: sm712fb: fix VRAM detection, don't set SR70/71/74/75 fbdev: sm712fb: fix brightness control on reboot, don't set SR30 perf intel-pt: Fix sample timestamp wrt non-taken branches perf intel-pt: Fix improved sample timestamp perf intel-pt: Fix instructions sampling rate memory: tegra: Fix integer overflow on tick value calculation tracing: Fix partial reading of trace event's id file ceph: flush dirty inodes before proceeding with remount iommu/tegra-smmu: Fix invalid ASID bits on Tegra30/114 fuse: honor RLIMIT_FSIZE in fuse_file_fallocate fuse: fix writepages on 32bit clk: tegra: Fix PLLM programming on Tegra124+ when PMC overrides divider NFS4: Fix v4.0 client state corruption when mount media: ov6650: Fix sensor possibly not detected on probe cifs: fix strcat buffer overflow and reduce raciness in smb21_set_oplock_level() of: fix clang -Wunsequenced for be32_to_cpu() intel_th: msu: Fix single mode with IOMMU md: add mddev->pers to avoid potential NULL pointer dereference stm class: Fix channel free in stm output free path tipc: fix modprobe tipc failed after switch order of device registration tipc: switch order of device registration to fix a crash ppp: deflate: Fix possible crash in deflate_init net/mlx4_core: Change the error print to info print net: avoid weird emergency message KVM: x86: Skip EFER vs. guest CPUID checks for host-initiated writes ALSA: hda/realtek - Fix for Lenovo B50-70 inverted internal microphone bug ext4: zero out the unused memory region in the extent tree block fs/writeback.c: use rcu_barrier() to wait for inflight wb switches going into workqueue when umount writeback: synchronize sync(2) against cgroup writeback membership switches crypto: arm/aes-neonbs - don't access already-freed walk.iv crypto: salsa20 - don't access already-freed walk.iv crypto: chacha20poly1305 - set cra_name correctly crypto: gcm - fix incompatibility between "gcm" and "gcm_base" crypto: gcm - Fix error return code in crypto_gcm_create_common() ipmi:ssif: compare block number correctly for multi-part return messages bcache: never set KEY_PTRS of journal key to 0 in journal_reclaim() bcache: fix a race between cache register and cacheset unregister Btrfs: do not start a transaction at iterate_extent_inodes() ext4: fix ext4_show_options for file systems w/o journal ext4: actually request zeroing of inode table after grow tty/vt: fix write/write race in ioctl(KDSKBSENT) handler mfd: da9063: Fix OTP control register names to match datasheets for DA9063/63L ocfs2: fix ocfs2 read inode data panic in ocfs2_iget mm/mincore.c: make mincore() more conservative ASoC: RT5677-SPI: Disable 16Bit SPI Transfers ASoC: max98090: Fix restore of DAPM Muxes ALSA: hda/realtek - EAPD turn on later ALSA: hda/hdmi - Consider eld_valid when reporting jack event ALSA: usb-audio: Fix a memory leak bug crypto: x86/crct10dif-pcl - fix use via crypto_shash_digest() crypto: crct10dif-generic - fix use via crypto_shash_digest() crypto: vmx - fix copy-paste error in CTR mode ARM: exynos: Fix a leaked reference by adding missing of_node_put x86/speculation/mds: Improve CPU buffer clear documentation x86/speculation/mds: Revert CPU buffer clear on double fault exit f2fs: link f2fs quota ops for sysfile fs: sdcardfs: Add missing option to show_options Conflicts: drivers/scsi/sd.c drivers/scsi/ufs/ufshcd.c Change-Id: If6679c7cc8c3fee323c749ac359353fbebfd12d9 Signed-off-by: Srinivasarao P <spathi@codeaurora.org>
| | * | Merge 4.4.181 into android-4.4Greg Kroah-Hartman2019-06-11
| | |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Changes in 4.4.181 x86/speculation/mds: Revert CPU buffer clear on double fault exit x86/speculation/mds: Improve CPU buffer clear documentation ARM: exynos: Fix a leaked reference by adding missing of_node_put crypto: vmx - fix copy-paste error in CTR mode crypto: crct10dif-generic - fix use via crypto_shash_digest() crypto: x86/crct10dif-pcl - fix use via crypto_shash_digest() ALSA: usb-audio: Fix a memory leak bug ALSA: hda/hdmi - Consider eld_valid when reporting jack event ALSA: hda/realtek - EAPD turn on later ASoC: max98090: Fix restore of DAPM Muxes ASoC: RT5677-SPI: Disable 16Bit SPI Transfers mm/mincore.c: make mincore() more conservative ocfs2: fix ocfs2 read inode data panic in ocfs2_iget mfd: da9063: Fix OTP control register names to match datasheets for DA9063/63L tty/vt: fix write/write race in ioctl(KDSKBSENT) handler ext4: actually request zeroing of inode table after grow ext4: fix ext4_show_options for file systems w/o journal Btrfs: do not start a transaction at iterate_extent_inodes() bcache: fix a race between cache register and cacheset unregister bcache: never set KEY_PTRS of journal key to 0 in journal_reclaim() ipmi:ssif: compare block number correctly for multi-part return messages crypto: gcm - Fix error return code in crypto_gcm_create_common() crypto: gcm - fix incompatibility between "gcm" and "gcm_base" crypto: chacha20poly1305 - set cra_name correctly crypto: salsa20 - don't access already-freed walk.iv crypto: arm/aes-neonbs - don't access already-freed walk.iv writeback: synchronize sync(2) against cgroup writeback membership switches fs/writeback.c: use rcu_barrier() to wait for inflight wb switches going into workqueue when umount ext4: zero out the unused memory region in the extent tree block ALSA: hda/realtek - Fix for Lenovo B50-70 inverted internal microphone bug KVM: x86: Skip EFER vs. guest CPUID checks for host-initiated writes net: avoid weird emergency message net/mlx4_core: Change the error print to info print ppp: deflate: Fix possible crash in deflate_init tipc: switch order of device registration to fix a crash tipc: fix modprobe tipc failed after switch order of device registration stm class: Fix channel free in stm output free path md: add mddev->pers to avoid potential NULL pointer dereference intel_th: msu: Fix single mode with IOMMU of: fix clang -Wunsequenced for be32_to_cpu() cifs: fix strcat buffer overflow and reduce raciness in smb21_set_oplock_level() media: ov6650: Fix sensor possibly not detected on probe NFS4: Fix v4.0 client state corruption when mount clk: tegra: Fix PLLM programming on Tegra124+ when PMC overrides divider fuse: fix writepages on 32bit fuse: honor RLIMIT_FSIZE in fuse_file_fallocate iommu/tegra-smmu: Fix invalid ASID bits on Tegra30/114 ceph: flush dirty inodes before proceeding with remount tracing: Fix partial reading of trace event's id file memory: tegra: Fix integer overflow on tick value calculation perf intel-pt: Fix instructions sampling rate perf intel-pt: Fix improved sample timestamp perf intel-pt: Fix sample timestamp wrt non-taken branches fbdev: sm712fb: fix brightness control on reboot, don't set SR30 fbdev: sm712fb: fix VRAM detection, don't set SR70/71/74/75 fbdev: sm712fb: fix white screen of death on reboot, don't set CR3B-CR3F fbdev: sm712fb: fix boot screen glitch when sm712fb replaces VGA fbdev: sm712fb: fix crashes during framebuffer writes by correctly mapping VRAM fbdev: sm712fb: fix support for 1024x768-16 mode fbdev: sm712fb: use 1024x768 by default on non-MIPS, fix garbled display fbdev: sm712fb: fix crashes and garbled display during DPMS modesetting PCI: Mark Atheros AR9462 to avoid bus reset dm delay: fix a crash when invalid device is specified xfrm: policy: Fix out-of-bound array accesses in __xfrm_policy_unlink xfrm6_tunnel: Fix potential panic when unloading xfrm6_tunnel module vti4: ipip tunnel deregistration fixes. xfrm4: Fix uninitialized memory read in _decode_session4 KVM: arm/arm64: Ensure vcpu target is unset on reset failure power: supply: sysfs: prevent endless uevent loop with CONFIG_POWER_SUPPLY_DEBUG ufs: fix braino in ufs_get_inode_gid() for solaris UFS flavour perf bench numa: Add define for RUSAGE_THREAD if not present Revert "Don't jump to compute_result state from check_result state" md/raid: raid5 preserve the writeback action after the parity check btrfs: Honour FITRIM range constraints during free space trim fbdev: sm712fb: fix memory frequency by avoiding a switch/case fallthrough ext4: do not delete unlinked inode from orphan list on failed truncate KVM: x86: fix return value for reserved EFER bio: fix improper use of smp_mb__before_atomic() Revert "scsi: sd: Keep disk read-only when re-reading partition" crypto: vmx - CTR: always increment IV as quadword gfs2: Fix sign extension bug in gfs2_update_stats Btrfs: fix race between ranged fsync and writeback of adjacent ranges btrfs: sysfs: don't leak memory when failing add fsid fbdev: fix divide error in fb_var_to_videomode hugetlb: use same fault hash key for shared and private mappings fbdev: fix WARNING in __alloc_pages_nodemask bug media: cpia2: Fix use-after-free in cpia2_exit media: vivid: use vfree() instead of kfree() for dev->bitmap_cap ssb: Fix possible NULL pointer dereference in ssb_host_pcmcia_exit at76c50x-usb: Don't register led_trigger if usb_register_driver failed perf tools: No need to include bitops.h in util.h tools include: Adopt linux/bits.h gfs2: Fix lru_count going negative cxgb4: Fix error path in cxgb4_init_module mmc: core: Verify SD bus width powerpc/boot: Fix missing check of lseek() return value ASoC: imx: fix fiq dependencies spi: pxa2xx: fix SCR (divisor) calculation brcm80211: potential NULL dereference in brcmf_cfg80211_vndr_cmds_dcmd_handler() rtc: 88pm860x: prevent use-after-free on device remove w1: fix the resume command API dmaengine: pl330: _stop: clear interrupt status mac80211/cfg80211: update bss channel on channel switch ASoC: fsl_sai: Update is_slave_mode with correct value mwifiex: prevent an array overflow net: cw1200: fix a NULL pointer dereference bcache: return error immediately in bch_journal_replay() bcache: fix failure in journal relplay bcache: add failure check to run_cache_set() for journal replay bcache: avoid clang -Wunintialized warning x86/build: Move _etext to actual end of .text smpboot: Place the __percpu annotation correctly x86/mm: Remove in_nmi() warning from 64-bit implementation of vmalloc_fault() mm/uaccess: Use 'unsigned long' to placate UBSAN warnings on older GCC versions HID: logitech-hidpp: use RAP instead of FAP to get the protocol version pinctrl: pistachio: fix leaked of_node references dmaengine: at_xdmac: remove BUG_ON macro in tasklet media: coda: clear error return value before picture run media: ov6650: Move v4l2_clk_get() to ov6650_video_probe() helper media: au0828: stop video streaming only when last user stops media: ov2659: make S_FMT succeed even if requested format doesn't match audit: fix a memory leak bug media: au0828: Fix NULL pointer dereference in au0828_analog_stream_enable() media: pvrusb2: Prevent a buffer overflow powerpc/numa: improve control of topology updates sched/core: Check quota and period overflow at usec to nsec conversion sched/core: Handle overflow in cpu_shares_write_u64 USB: core: Don't unbind interfaces following device reset failure x86/irq/64: Limit IST stack overflow check to #DB stack i40e: don't allow changes to HW VLAN stripping on active port VLANs RDMA/cxgb4: Fix null pointer dereference on alloc_skb failure hwmon: (vt1211) Use request_muxed_region for Super-IO accesses hwmon: (smsc47m1) Use request_muxed_region for Super-IO accesses hwmon: (smsc47b397) Use request_muxed_region for Super-IO accesses hwmon: (pc87427) Use request_muxed_region for Super-IO accesses hwmon: (f71805f) Use request_muxed_region for Super-IO accesses scsi: libsas: Do discovery on empty PHY to update PHY info mmc_spi: add a status check for spi_sync_locked mmc: sdhci-of-esdhc: add erratum eSDHC5 support mmc: sdhci-of-esdhc: add erratum eSDHC-A001 and A-008358 support PM / core: Propagate dev->power.wakeup_path when no callbacks extcon: arizona: Disable mic detect if running when driver is removed s390: cio: fix cio_irb declaration cpufreq: ppc_cbe: fix possible object reference leak cpufreq/pasemi: fix possible object reference leak cpufreq: pmac32: fix possible object reference leak x86/build: Keep local relocations with ld.lld iio: ad_sigma_delta: Properly handle SPI bus locking vs CS assertion iio: hmc5843: fix potential NULL pointer dereferences iio: common: ssp_sensors: Initialize calculated_time in ssp_common_process_data rtlwifi: fix a potential NULL pointer dereference brcmfmac: fix missing checks for kmemdup b43: shut up clang -Wuninitialized variable warning brcmfmac: convert dev_init_lock mutex to completion brcmfmac: fix race during disconnect when USB completion is in progress scsi: ufs: Fix regulator load and icc-level configuration scsi: ufs: Avoid configuring regulator with undefined voltage range arm64: cpu_ops: fix a leaked reference by adding missing of_node_put x86/ia32: Fix ia32_restore_sigcontext() AC leak chardev: add additional check for minor range overlap HID: core: move Usage Page concatenation to Main item ASoC: eukrea-tlv320: fix a leaked reference by adding missing of_node_put ASoC: fsl_utils: fix a leaked reference by adding missing of_node_put cxgb3/l2t: Fix undefined behaviour spi: tegra114: reset controller on probe media: wl128x: prevent two potential buffer overflows virtio_console: initialize vtermno value for ports tty: ipwireless: fix missing checks for ioremap rcutorture: Fix cleanup path for invalid torture_type strings usb: core: Add PM runtime calls to usb_hcd_platform_shutdown scsi: qla4xxx: avoid freeing unallocated dma memory media: m88ds3103: serialize reset messages in m88ds3103_set_frontend media: go7007: avoid clang frame overflow warning with KASAN media: saa7146: avoid high stack usage with clang scsi: lpfc: Fix SLI3 commands being issued on SLI4 devices spi : spi-topcliff-pch: Fix to handle empty DMA buffers spi: rspi: Fix sequencer reset during initialization spi: Fix zero length xfer bug ASoC: davinci-mcasp: Fix clang warning without CONFIG_PM ipv6: Consider sk_bound_dev_if when binding a raw socket to an address llc: fix skb leak in llc_build_and_send_ui_pkt() net-gro: fix use-after-free read in napi_gro_frags() net: stmmac: fix reset gpio free missing usbnet: fix kernel crash after disconnect tipc: Avoid copying bytes beyond the supplied data bnxt_en: Fix aggregation buffer leak under OOM condition. net: mvpp2: fix bad MVPP2_TXQ_SCHED_TOKEN_CNTR_REG queue value crypto: vmx - ghash: do nosimd fallback manually xen/pciback: Don't disable PCI_COMMAND on PCI device reset. Revert "tipc: fix modprobe tipc failed after switch order of device registration" tipc: fix modprobe tipc failed after switch order of device registration -v2 sparc64: Fix regression in non-hypervisor TLB flush xcall include/linux/bitops.h: sanitize rotate primitives xhci: Convert xhci_handshake() to use readl_poll_timeout_atomic() usb: xhci: avoid null pointer deref when bos field is NULL USB: Fix slab-out-of-bounds write in usb_get_bos_descriptor USB: sisusbvga: fix oops in error path of sisusb_probe USB: Add LPM quirk for Surface Dock GigE adapter USB: rio500: refuse more than one device at a time USB: rio500: fix memory leak in close after disconnect media: usb: siano: Fix general protection fault in smsusb media: usb: siano: Fix false-positive "uninitialized variable" warning media: smsusb: better handle optional alignment scsi: zfcp: fix missing zfcp_port reference put on -EBUSY from port_remove scsi: zfcp: fix to prevent port_remove with pure auto scan LUNs (only sdevs) Btrfs: fix race updating log root item during fsync ALSA: hda/realtek - Set default power save node to 0 drm/nouveau/i2c: Disable i2c bus access after ->fini() tty: serial: msm_serial: Fix XON/XOFF tty: max310x: Fix external crystal register setup memcg: make it work on sparse non-0-node systems kernel/signal.c: trace_signal_deliver when signal_group_exit CIFS: cifs_read_allocate_pages: don't iterate through whole page array on ENOMEM binder: Replace "%p" with "%pK" for stable binder: replace "%p" with "%pK" net: create skb_gso_validate_mac_len() bnx2x: disable GSO where gso_size is too big for hardware brcmfmac: Add length checks on firmware events brcmfmac: screening firmware event packet brcmfmac: revise handling events in receive path brcmfmac: fix incorrect event channel deduction brcmfmac: add length checks in scheduled scan result handler brcmfmac: add subtype check for event handling in data path userfaultfd: don't pin the user memory in userfaultfd_file_create() Revert "x86/build: Move _etext to actual end of .text" net: cdc_ncm: GetNtbFormat endian fix usb: gadget: fix request length error for isoc transfer media: uvcvideo: Fix uvc_alloc_entity() allocation alignment ethtool: fix potential userspace buffer overflow neighbor: Call __ipv4_neigh_lookup_noref in neigh_xmit net/mlx4_en: ethtool, Remove unsupported SFP EEPROM high pages query net: rds: fix memory leak in rds_ib_flush_mr_pool pktgen: do not sleep with the thread lock held. rcu: locking and unlocking need to always be at least barriers parisc: Use implicit space register selection for loading the coherence index of I/O pdirs fuse: fallocate: fix return with locked inode MIPS: pistachio: Build uImage.gz by default genwqe: Prevent an integer overflow in the ioctl drm/gma500/cdv: Check vbt config bits when detecting lvds panels fs: stream_open - opener for stream-like files so that read and write can run simultaneously without deadlock fuse: Add FOPEN_STREAM to use stream_open() ipv4: Define __ipv4_neigh_lookup_noref when CONFIG_INET is disabled ethtool: check the return value of get_regs_len Linux 4.4.181 Change-Id: Ibadc58ab76330698ff36ffdc0ca8c9d52ce36f9e Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
| | | * fs: stream_open - opener for stream-like files so that read and write can ↵Kirill Smelkov2019-06-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | run simultaneously without deadlock commit 10dce8af34226d90fa56746a934f8da5dcdba3df upstream. Commit 9c225f2655e3 ("vfs: atomic f_pos accesses as per POSIX") added locking for file.f_pos access and in particular made concurrent read and write not possible - now both those functions take f_pos lock for the whole run, and so if e.g. a read is blocked waiting for data, write will deadlock waiting for that read to complete. This caused regression for stream-like files where previously read and write could run simultaneously, but after that patch could not do so anymore. See e.g. commit 581d21a2d02a ("xenbus: fix deadlock on writes to /proc/xen/xenbus") which fixes such regression for particular case of /proc/xen/xenbus. The patch that added f_pos lock in 2014 did so to guarantee POSIX thread safety for read/write/lseek and added the locking to file descriptors of all regular files. In 2014 that thread-safety problem was not new as it was already discussed earlier in 2006. However even though 2006'th version of Linus's patch was adding f_pos locking "only for files that are marked seekable with FMODE_LSEEK (thus avoiding the stream-like objects like pipes and sockets)", the 2014 version - the one that actually made it into the tree as 9c225f2655e3 - is doing so irregardless of whether a file is seekable or not. See https://lore.kernel.org/lkml/53022DB1.4070805@gmail.com/ https://lwn.net/Articles/180387 https://lwn.net/Articles/180396 for historic context. The reason that it did so is, probably, that there are many files that are marked non-seekable, but e.g. their read implementation actually depends on knowing current position to correctly handle the read. Some examples: kernel/power/user.c snapshot_read fs/debugfs/file.c u32_array_read fs/fuse/control.c fuse_conn_waiting_read + ... drivers/hwmon/asus_atk0110.c atk_debugfs_ggrp_read arch/s390/hypfs/inode.c hypfs_read_iter ... Despite that, many nonseekable_open users implement read and write with pure stream semantics - they don't depend on passed ppos at all. And for those cases where read could wait for something inside, it creates a situation similar to xenbus - the write could be never made to go until read is done, and read is waiting for some, potentially external, event, for potentially unbounded time -> deadlock. Besides xenbus, there are 14 such places in the kernel that I've found with semantic patch (see below): drivers/xen/evtchn.c:667:8-24: ERROR: evtchn_fops: .read() can deadlock .write() drivers/isdn/capi/capi.c:963:8-24: ERROR: capi_fops: .read() can deadlock .write() drivers/input/evdev.c:527:1-17: ERROR: evdev_fops: .read() can deadlock .write() drivers/char/pcmcia/cm4000_cs.c:1685:7-23: ERROR: cm4000_fops: .read() can deadlock .write() net/rfkill/core.c:1146:8-24: ERROR: rfkill_fops: .read() can deadlock .write() drivers/s390/char/fs3270.c:488:1-17: ERROR: fs3270_fops: .read() can deadlock .write() drivers/usb/misc/ldusb.c:310:1-17: ERROR: ld_usb_fops: .read() can deadlock .write() drivers/hid/uhid.c:635:1-17: ERROR: uhid_fops: .read() can deadlock .write() net/batman-adv/icmp_socket.c:80:1-17: ERROR: batadv_fops: .read() can deadlock .write() drivers/media/rc/lirc_dev.c:198:1-17: ERROR: lirc_fops: .read() can deadlock .write() drivers/leds/uleds.c:77:1-17: ERROR: uleds_fops: .read() can deadlock .write() drivers/input/misc/uinput.c:400:1-17: ERROR: uinput_fops: .read() can deadlock .write() drivers/infiniband/core/user_mad.c:985:7-23: ERROR: umad_fops: .read() can deadlock .write() drivers/gnss/core.c:45:1-17: ERROR: gnss_fops: .read() can deadlock .write() In addition to the cases above another regression caused by f_pos locking is that now FUSE filesystems that implement open with FOPEN_NONSEEKABLE flag, can no longer implement bidirectional stream-like files - for the same reason as above e.g. read can deadlock write locking on file.f_pos in the kernel. FUSE's FOPEN_NONSEEKABLE was added in 2008 in a7c1b990f715 ("fuse: implement nonseekable open") to support OSSPD. OSSPD implements /dev/dsp in userspace with FOPEN_NONSEEKABLE flag, with corresponding read and write routines not depending on current position at all, and with both read and write being potentially blocking operations: See https://github.com/libfuse/osspd https://lwn.net/Articles/308445 https://github.com/libfuse/osspd/blob/14a9cff0/osspd.c#L1406 https://github.com/libfuse/osspd/blob/14a9cff0/osspd.c#L1438-L1477 https://github.com/libfuse/osspd/blob/14a9cff0/osspd.c#L1479-L1510 Corresponding libfuse example/test also describes FOPEN_NONSEEKABLE as "somewhat pipe-like files ..." with read handler not using offset. However that test implements only read without write and cannot exercise the deadlock scenario: https://github.com/libfuse/libfuse/blob/fuse-3.4.2-3-ga1bff7d/example/poll.c#L124-L131 https://github.com/libfuse/libfuse/blob/fuse-3.4.2-3-ga1bff7d/example/poll.c#L146-L163 https://github.com/libfuse/libfuse/blob/fuse-3.4.2-3-ga1bff7d/example/poll.c#L209-L216 I've actually hit the read vs write deadlock for real while implementing my FUSE filesystem where there is /head/watch file, for which open creates separate bidirectional socket-like stream in between filesystem and its user with both read and write being later performed simultaneously. And there it is semantically not easy to split the stream into two separate read-only and write-only channels: https://lab.nexedi.com/kirr/wendelin.core/blob/f13aa600/wcfs/wcfs.go#L88-169 Let's fix this regression. The plan is: 1. We can't change nonseekable_open to include &~FMODE_ATOMIC_POS - doing so would break many in-kernel nonseekable_open users which actually use ppos in read/write handlers. 2. Add stream_open() to kernel to open stream-like non-seekable file descriptors. Read and write on such file descriptors would never use nor change ppos. And with that property on stream-like files read and write will be running without taking f_pos lock - i.e. read and write could be running simultaneously. 3. With semantic patch search and convert to stream_open all in-kernel nonseekable_open users for which read and write actually do not depend on ppos and where there is no other methods in file_operations which assume @offset access. 4. Add FOPEN_STREAM to fs/fuse/ and open in-kernel file-descriptors via steam_open if that bit is present in filesystem open reply. It was tempting to change fs/fuse/ open handler to use stream_open instead of nonseekable_open on just FOPEN_NONSEEKABLE flags, but grepping through Debian codesearch shows users of FOPEN_NONSEEKABLE, and in particular GVFS which actually uses offset in its read and write handlers https://codesearch.debian.net/search?q=-%3Enonseekable+%3D https://gitlab.gnome.org/GNOME/gvfs/blob/1.40.0-6-gcbc54396/client/gvfsfusedaemon.c#L1080 https://gitlab.gnome.org/GNOME/gvfs/blob/1.40.0-6-gcbc54396/client/gvfsfusedaemon.c#L1247-1346 https://gitlab.gnome.org/GNOME/gvfs/blob/1.40.0-6-gcbc54396/client/gvfsfusedaemon.c#L1399-1481 so if we would do such a change it will break a real user. 5. Add stream_open and FOPEN_STREAM handling to stable kernels starting from v3.14+ (the kernel where 9c225f2655 first appeared). This will allow to patch OSSPD and other FUSE filesystems that provide stream-like files to return FOPEN_STREAM | FOPEN_NONSEEKABLE in their open handler and this way avoid the deadlock on all kernel versions. This should work because fs/fuse/ ignores unknown open flags returned from a filesystem and so passing FOPEN_STREAM to a kernel that is not aware of this flag cannot hurt. In turn the kernel that is not aware of FOPEN_STREAM will be < v3.14 where just FOPEN_NONSEEKABLE is sufficient to implement streams without read vs write deadlock. This patch adds stream_open, converts /proc/xen/xenbus to it and adds semantic patch to automatically locate in-kernel places that are either required to be converted due to read vs write deadlock, or that are just safe to be converted because read and write do not use ppos and there are no other funky methods in file_operations. Regarding semantic patch I've verified each generated change manually - that it is correct to convert - and each other nonseekable_open instance left - that it is either not correct to convert there, or that it is not converted due to current stream_open.cocci limitations. The script also does not convert files that should be valid to convert, but that currently have .llseek = noop_llseek or generic_file_llseek for unknown reason despite file being opened with nonseekable_open (e.g. drivers/input/mousedev.c) Cc: Michael Kerrisk <mtk.manpages@gmail.com> Cc: Yongzhi Pan <panyongzhi@gmail.com> Cc: Jonathan Corbet <corbet@lwn.net> Cc: David Vrabel <david.vrabel@citrix.com> Cc: Juergen Gross <jgross@suse.com> Cc: Miklos Szeredi <miklos@szeredi.hu> Cc: Tejun Heo <tj@kernel.org> Cc: Kirill Tkhai <ktkhai@virtuozzo.com> Cc: Arnd Bergmann <arnd@arndb.de> Cc: Christoph Hellwig <hch@lst.de> Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Cc: Julia Lawall <Julia.Lawall@lip6.fr> Cc: Nikolaus Rath <Nikolaus@rath.org> Cc: Han-Wen Nienhuys <hanwen@google.com> [ backport to 4.4: actually fixed deadlock on /proc/xen/xenbus as 581d21a2d02a was not backported to 4.4 ] Signed-off-by: Kirill Smelkov <kirr@nexedi.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| | | * rcu: locking and unlocking need to always be at least barriersLinus Torvalds2019-06-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit 66be4e66a7f422128748e3c3ef6ee72b20a6197b upstream. Herbert Xu pointed out that commit bb73c52bad36 ("rcu: Don't disable preemption for Tiny and Tree RCU readers") was incorrect in making the preempt_disable/enable() be conditional on CONFIG_PREEMPT_COUNT. If CONFIG_PREEMPT_COUNT isn't enabled, the preemption enable/disable is a no-op, but still is a compiler barrier. And RCU locking still _needs_ that compiler barrier. It is simply fundamentally not true that RCU locking would be a complete no-op: we still need to guarantee (for example) that things that can trap and cause preemption cannot migrate into the RCU locked region. The way we do that is by making it a barrier. See for example commit 386afc91144b ("spinlocks and preemption points need to be at least compiler barriers") from back in 2013 that had similar issues with spinlocks that become no-ops on UP: they must still constrain the compiler from moving other operations into the critical region. Now, it is true that a lot of RCU operations already use READ_ONCE() and WRITE_ONCE() (which in practice likely would never be re-ordered wrt anything remotely interesting), but it is also true that that is not globally the case, and that it's not even necessarily always possible (ie bitfields etc). Reported-by: Herbert Xu <herbert@gondor.apana.org.au> Fixes: bb73c52bad36 ("rcu: Don't disable preemption for Tiny and Tree RCU readers") Cc: stable@kernel.org Cc: Boqun Feng <boqun.feng@gmail.com> Cc: Paul E. McKenney <paulmck@linux.vnet.ibm.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| | | * usb: gadget: fix request length error for isoc transferPeter Chen2019-06-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit 982555fc26f9d8bcdbd5f9db0378fe0682eb4188 upstream. For isoc endpoint descriptor, the wMaxPacketSize is not real max packet size (see Table 9-13. Standard Endpoint Descriptor, USB 2.0 specifcation), it may contain the number of packet, so the real max packet should be ep->desc->wMaxPacketSize && 0x7ff. Cc: Felipe F. Tonello <eu@felipetonello.com> Cc: Felipe Balbi <felipe.balbi@linux.intel.com> Fixes: 16b114a6d797 ("usb: gadget: fix usb_ep_align_maybe endianness and new usb_ep_aligna") Signed-off-by: Peter Chen <peter.chen@nxp.com> Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com> Signed-off-by: Nobuhiro Iwamatsu <nobuhiro1.iwamatsu@toshiba.co.jp> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| | | * userfaultfd: don't pin the user memory in userfaultfd_file_create()Oleg Nesterov2019-06-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit d2005e3f41d4f9299e2df6a967c8beb5086967a9 upstream. userfaultfd_file_create() increments mm->mm_users; this means that the memory won't be unmapped/freed if mm owner exits/execs, and UFFDIO_COPY after that can populate the orphaned mm more. Change userfaultfd_file_create() and userfaultfd_ctx_put() to use mm->mm_count to pin mm_struct. This means that atomic_inc_not_zero(mm->mm_users) is needed when we are going to actually play with this memory. Except handle_userfault() path doesn't need this, the caller must already have a reference. The patch adds the new trivial helper, mmget_not_zero(), it can have more users. Link: http://lkml.kernel.org/r/20160516172254.GA8595@redhat.com Signed-off-by: Oleg Nesterov <oleg@redhat.com> Cc: Andrea Arcangeli <aarcange@redhat.com> Cc: Michal Hocko <mhocko@kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: Ben Hutchings <ben.hutchings@codethink.co.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| | | * net: create skb_gso_validate_mac_len()Daniel Axtens2019-06-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit 2b16f048729bf35e6c28a40cbfad07239f9dcd90 upstream. If you take a GSO skb, and split it into packets, will the MAC length (L2 + L3 + L4 headers + payload) of those packets be small enough to fit within a given length? Move skb_gso_mac_seglen() to skbuff.h with other related functions like skb_gso_network_seglen() so we can use it, and then create skb_gso_validate_mac_len to do the full calculation. Signed-off-by: Daniel Axtens <dja@axtens.net> Signed-off-by: David S. Miller <davem@davemloft.net> [bwh: Backported to 4.4: There is no GSO_BY_FRAGS case to handle, so skb_gso_validate_mac_len() becomes a trivial comparison. Put it inline in <linux/skbuff.h>.] Signed-off-by: Ben Hutchings <ben.hutchings@codethink.co.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| | | * memcg: make it work on sparse non-0-node systemsJiri Slaby2019-06-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit 3e8589963773a5c23e2f1fe4bcad0e9a90b7f471 upstream. We have a single node system with node 0 disabled: Scanning NUMA topology in Northbridge 24 Number of physical nodes 2 Skipping disabled node 0 Node 1 MemBase 0000000000000000 Limit 00000000fbff0000 NODE_DATA(1) allocated [mem 0xfbfda000-0xfbfeffff] This causes crashes in memcg when system boots: BUG: unable to handle kernel NULL pointer dereference at 0000000000000008 #PF error: [normal kernel read fault] ... RIP: 0010:list_lru_add+0x94/0x170 ... Call Trace: d_lru_add+0x44/0x50 dput.part.34+0xfc/0x110 __fput+0x108/0x230 task_work_run+0x9f/0xc0 exit_to_usermode_loop+0xf5/0x100 It is reproducible as far as 4.12. I did not try older kernels. You have to have a new enough systemd, e.g. 241 (the reason is unknown -- was not investigated). Cannot be reproduced with systemd 234. The system crashes because the size of lru array is never updated in memcg_update_all_list_lrus and the reads are past the zero-sized array, causing dereferences of random memory. The root cause are list_lru_memcg_aware checks in the list_lru code. The test in list_lru_memcg_aware is broken: it assumes node 0 is always present, but it is not true on some systems as can be seen above. So fix this by avoiding checks on node 0. Remember the memcg-awareness by a bool flag in struct list_lru. Link: http://lkml.kernel.org/r/20190522091940.3615-1-jslaby@suse.cz Fixes: 60d3fd32a7a9 ("list_lru: introduce per-memcg lists") Signed-off-by: Jiri Slaby <jslaby@suse.cz> Acked-by: Michal Hocko <mhocko@suse.com> Suggested-by: Vladimir Davydov <vdavydov.dev@gmail.com> Acked-by: Vladimir Davydov <vdavydov.dev@gmail.com> Reviewed-by: Shakeel Butt <shakeelb@google.com> Cc: Johannes Weiner <hannes@cmpxchg.org> Cc: Raghavendra K T <raghavendra.kt@linux.vnet.ibm.com> Cc: <stable@vger.kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| | | * include/linux/bitops.h: sanitize rotate primitivesRasmus Villemoes2019-06-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit ef4d6f6b275c498f8e5626c99dbeefdc5027f843 upstream. The ror32 implementation (word >> shift) | (word << (32 - shift) has undefined behaviour if shift is outside the [1, 31] range. Similarly for the 64 bit variants. Most callers pass a compile-time constant (naturally in that range), but there's an UBSAN report that these may actually be called with a shift count of 0. Instead of special-casing that, we can make them DTRT for all values of shift while also avoiding UB. For some reason, this was already partly done for rol32 (which was well-defined for [0, 31]). gcc 8 recognizes these patterns as rotates, so for example __u32 rol32(__u32 word, unsigned int shift) { return (word << (shift & 31)) | (word >> ((-shift) & 31)); } compiles to 0000000000000020 <rol32>: 20: 89 f8 mov %edi,%eax 22: 89 f1 mov %esi,%ecx 24: d3 c0 rol %cl,%eax 26: c3 retq Older compilers unfortunately do not do as well, but this only affects the small minority of users that don't pass constants. Due to integer promotions, ro[lr]8 were already well-defined for shifts in [0, 8], and ro[lr]16 were mostly well-defined for shifts in [0, 16] (only mostly - u16 gets promoted to _signed_ int, so if bit 15 is set, word << 16 is undefined). For consistency, update those as well. Link: http://lkml.kernel.org/r/20190410211906.2190-1-linux@rasmusvillemoes.dk Signed-off-by: Rasmus Villemoes <linux@rasmusvillemoes.dk> Reported-by: Ido Schimmel <idosch@mellanox.com> Tested-by: Ido Schimmel <idosch@mellanox.com> Reviewed-by: Will Deacon <will.deacon@arm.com> Cc: Vadim Pasternak <vadimp@mellanox.com> Cc: Andrey Ryabinin <aryabinin@virtuozzo.com> Cc: Jacek Anaszewski <jacek.anaszewski@gmail.com> Cc: Pavel Machek <pavel@ucw.cz> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: Matthias Kaehlcke <mka@chromium.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| | | * HID: core: move Usage Page concatenation to Main itemNicolas Saenz Julienne2019-06-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [ Upstream commit 58e75155009cc800005629955d3482f36a1e0eec ] As seen on some USB wireless keyboards manufactured by Primax, the HID parser was using some assumptions that are not always true. In this case it's s the fact that, inside the scope of a main item, an Usage Page will always precede an Usage. The spec is not pretty clear as 6.2.2.7 states "Any usage that follows is interpreted as a Usage ID and concatenated with the Usage Page". While 6.2.2.8 states "When the parser encounters a main item it concatenates the last declared Usage Page with a Usage to form a complete usage value." Being somewhat contradictory it was decided to match Window's implementation, which follows 6.2.2.8. In summary, the patch moves the Usage Page concatenation from the local item parsing function to the main item parsing function. Signed-off-by: Nicolas Saenz Julienne <nsaenzjulienne@suse.de> Reviewed-by: Terry Junge <terry.junge@poly.com> Signed-off-by: Benjamin Tissoires <benjamin.tissoires@redhat.com> Signed-off-by: Sasha Levin <sashal@kernel.org>
| | | * iio: ad_sigma_delta: Properly handle SPI bus locking vs CS assertionLars-Peter Clausen2019-06-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [ Upstream commit df1d80aee963480c5c2938c64ec0ac3e4a0df2e0 ] For devices from the SigmaDelta family we need to keep CS low when doing a conversion, since the device will use the MISO line as a interrupt to indicate that the conversion is complete. This is why the driver locks the SPI bus and when the SPI bus is locked keeps as long as a conversion is going on. The current implementation gets one small detail wrong though. CS is only de-asserted after the SPI bus is unlocked. This means it is possible for a different SPI device on the same bus to send a message which would be wrongfully be addressed to the SigmaDelta device as well. Make sure that the last SPI transfer that is done while holding the SPI bus lock de-asserts the CS signal. Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Signed-off-by: Alexandru Ardelean <Alexandru.Ardelean@analog.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com> Signed-off-by: Sasha Levin <sashal@kernel.org>
| | | * smpboot: Place the __percpu annotation correctlySebastian Andrzej Siewior2019-06-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [ Upstream commit d4645d30b50d1691c26ff0f8fa4e718b08f8d3bb ] The test robot reported a wrong assignment of a per-CPU variable which it detected by using sparse and sent a report. The assignment itself is correct. The annotation for sparse was wrong and hence the report. The first pointer is a "normal" pointer and points to the per-CPU memory area. That means that the __percpu annotation has to be moved. Move the __percpu annotation to pointer which points to the per-CPU area. This change affects only the sparse tool (and is ignored by the compiler). Reported-by: kbuild test robot <lkp@intel.com> Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de> Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Paul E. McKenney <paulmck@linux.ibm.com> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Thomas Gleixner <tglx@linutronix.de> Fixes: f97f8f06a49fe ("smpboot: Provide infrastructure for percpu hotplug threads") Link: http://lkml.kernel.org/r/20190424085253.12178-1-bigeasy@linutronix.de Signed-off-by: Ingo Molnar <mingo@kernel.org> Signed-off-by: Sasha Levin <sashal@kernel.org>
| | | * hugetlb: use same fault hash key for shared and private mappingsMike Kravetz2019-06-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit 1b426bac66e6cc83c9f2d92b96e4e72acf43419a upstream. hugetlb uses a fault mutex hash table to prevent page faults of the same pages concurrently. The key for shared and private mappings is different. Shared keys off address_space and file index. Private keys off mm and virtual address. Consider a private mappings of a populated hugetlbfs file. A fault will map the page from the file and if needed do a COW to map a writable page. Hugetlbfs hole punch uses the fault mutex to prevent mappings of file pages. It uses the address_space file index key. However, private mappings will use a different key and could race with this code to map the file page. This causes problems (BUG) for the page cache remove code as it expects the page to be unmapped. A sample stack is: page dumped because: VM_BUG_ON_PAGE(page_mapped(page)) kernel BUG at mm/filemap.c:169! ... RIP: 0010:unaccount_page_cache_page+0x1b8/0x200 ... Call Trace: __delete_from_page_cache+0x39/0x220 delete_from_page_cache+0x45/0x70 remove_inode_hugepages+0x13c/0x380 ? __add_to_page_cache_locked+0x162/0x380 hugetlbfs_fallocate+0x403/0x540 ? _cond_resched+0x15/0x30 ? __inode_security_revalidate+0x5d/0x70 ? selinux_file_permission+0x100/0x130 vfs_fallocate+0x13f/0x270 ksys_fallocate+0x3c/0x80 __x64_sys_fallocate+0x1a/0x20 do_syscall_64+0x5b/0x180 entry_SYSCALL_64_after_hwframe+0x44/0xa9 There seems to be another potential COW issue/race with this approach of different private and shared keys as noted in commit 8382d914ebf7 ("mm, hugetlb: improve page-fault scalability"). Since every hugetlb mapping (even anon and private) is actually a file mapping, just use the address_space index key for all mappings. This results in potentially more hash collisions. However, this should not be the common case. Link: http://lkml.kernel.org/r/20190328234704.27083-3-mike.kravetz@oracle.com Link: http://lkml.kernel.org/r/20190412165235.t4sscoujczfhuiyt@linux-r8p5 Fixes: b5cec28d36f5 ("hugetlbfs: truncate_hugepages() takes a range of pages") Signed-off-by: Mike Kravetz <mike.kravetz@oracle.com> Reviewed-by: Naoya Horiguchi <n-horiguchi@ah.jp.nec.com> Reviewed-by: Davidlohr Bueso <dbueso@suse.de> Cc: Joonsoo Kim <iamjoonsoo.kim@lge.com> Cc: "Kirill A . Shutemov" <kirill.shutemov@linux.intel.com> Cc: Michal Hocko <mhocko@kernel.org> Cc: <stable@vger.kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| | | * bio: fix improper use of smp_mb__before_atomic()Andrea Parri2019-06-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit f381c6a4bd0ae0fde2d6340f1b9bb0f58d915de6 upstream. This barrier only applies to the read-modify-write operations; in particular, it does not apply to the atomic_set() primitive. Replace the barrier with an smp_mb(). Fixes: dac56212e8127 ("bio: skip atomic inc/dec of ->bi_cnt for most use cases") Cc: stable@vger.kernel.org Reported-by: "Paul E. McKenney" <paulmck@linux.ibm.com> Reported-by: Peter Zijlstra <peterz@infradead.org> Signed-off-by: Andrea Parri <andrea.parri@amarulasolutions.com> Reviewed-by: Ming Lei <ming.lei@redhat.com> Cc: Jens Axboe <axboe@kernel.dk> Cc: Ming Lei <ming.lei@redhat.com> Cc: linux-block@vger.kernel.org Cc: "Paul E. McKenney" <paulmck@linux.ibm.com> Cc: Peter Zijlstra <peterz@infradead.org> Signed-off-by: Jens Axboe <axboe@kernel.dk> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| | | * of: fix clang -Wunsequenced for be32_to_cpu()Phong Tran2019-06-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit 440868661f36071886ed360d91de83bd67c73b4f upstream. Now, make the loop explicit to avoid clang warning. ./include/linux/of.h:238:37: warning: multiple unsequenced modifications to 'cell' [-Wunsequenced] r = (r << 32) | be32_to_cpu(*(cell++)); ^~ ./include/linux/byteorder/generic.h:95:21: note: expanded from macro 'be32_to_cpu' ^ ./include/uapi/linux/byteorder/little_endian.h:40:59: note: expanded from macro '__be32_to_cpu' ^ ./include/uapi/linux/swab.h:118:21: note: expanded from macro '__swab32' ___constant_swab32(x) : \ ^ ./include/uapi/linux/swab.h:18:12: note: expanded from macro '___constant_swab32' (((__u32)(x) & (__u32)0x000000ffUL) << 24) | \ ^ Signed-off-by: Phong Tran <tranmanphong@gmail.com> Reported-by: Nick Desaulniers <ndesaulniers@google.com> Link: https://github.com/ClangBuiltLinux/linux/issues/460 Suggested-by: David Laight <David.Laight@ACULAB.COM> Reviewed-by: Nick Desaulniers <ndesaulniers@google.com> Cc: stable@vger.kernel.org [robh: fix up whitespace] Signed-off-by: Rob Herring <robh@kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| | | * writeback: synchronize sync(2) against cgroup writeback membership switchesTejun Heo2019-06-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit 7fc5854f8c6efae9e7624970ab49a1eac2faefb1 upstream. sync_inodes_sb() can race against cgwb (cgroup writeback) membership switches and fail to writeback some inodes. For example, if an inode switches to another wb while sync_inodes_sb() is in progress, the new wb might not be visible to bdi_split_work_to_wbs() at all or the inode might jump from a wb which hasn't issued writebacks yet to one which already has. This patch adds backing_dev_info->wb_switch_rwsem to synchronize cgwb switch path against sync_inodes_sb() so that sync_inodes_sb() is guaranteed to see all the target wbs and inodes can't jump wbs to escape syncing. v2: Fixed misplaced rwsem init. Spotted by Jiufei. Signed-off-by: Tejun Heo <tj@kernel.org> Reported-by: Jiufei Xue <xuejiufei@gmail.com> Link: http://lkml.kernel.org/r/dc694ae2-f07f-61e1-7097-7c8411cee12d@gmail.com Acked-by: Jan Kara <jack@suse.cz> Signed-off-by: Jens Axboe <axboe@kernel.dk> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| | | * mfd: da9063: Fix OTP control register names to match datasheets for DA9063/63LSteve Twiss2019-06-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit 6b4814a9451add06d457e198be418bf6a3e6a990 upstream. Mismatch between what is found in the Datasheets for DA9063 and DA9063L provided by Dialog Semiconductor, and the register names provided in the MFD registers file. The changes are for the OTP (one-time-programming) control registers. The two naming errors are OPT instead of OTP, and COUNT instead of CONT (i.e. control). Cc: Stable <stable@vger.kernel.org> Signed-off-by: Steve Twiss <stwiss.opensource@diasemi.com> Signed-off-by: Lee Jones <lee.jones@linaro.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
* | | | Merge LA.UM.7.5.2.r1-03200-8x96.0 of ↵Davide Garberi2019-06-19
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://source.codeaurora.org/quic/la/kernel/msm-4.4 into lineage-16.0 bcf671504f41 Merge "msm: adsprpc: maintain local copy of rpra offloaded to DSP" into kernel.lnx.4.4.r37-rel 621c16b0342c Merge "arm: dts: msm: Add avs-version dt property for 8996" into kernel.lnx.4.4.r37-rel 22fbeb474b52 Merge "msm: sensor: actuator: fix out of bound read for bivcm region params" into kernel.lnx.4.4.r37-rel 579b4b461cca Merge "diag: Prevent out-of-bound access while processing userspace data" into kernel.lnx.4.4.r37-rel aff3d9629d10 arm: dts: msm: Add avs-version dt property for 8996 fbf5254e319b msm: sensor: actuator: fix out of bound read for bivcm region params d73a74c20cb2 msm: adsprpc: maintain local copy of rpra offloaded to DSP 3c1b5fa08460 diag: Prevent out-of-bound access while processing userspace data d929c539a8e5 msm: ais: sensor: actuator: fix out of bound read for bivcm region params 77a2432a11c2 ASoC: msm: Add support for AVS version check 51ae92e6a401 Merge commit '06ceb6bb61d15d96906733a0a4e1ca5a53a9fe3e' into HEAD 06ceb6bb61d1 Merge "msm: ipa3: Fix to validate check for IP type" c7c174351b81 Merge "diag: Prevent out-of-bound access while processing non-hdlc pkt" bc914679ea33 msm: ipa3: Fix to validate check for IP type f275209c759d diag: Prevent out-of-bound access while processing non-hdlc pkt 77b17af341a0 Merge "ARM: dts: msm: Add support for float charger detection on MSM8996" c9c1e20784b5 Merge "phy: qusb: Add support for DP DM pulsing for HS PHY" 5c004decb393 Merge "dsp: afe: check for minimum size before payload access" f7f2404ce1e5 Merge "soc: msm8998: Add 16ch playback and record support for TDM" 0ee704100065 dsp: afe: check for minimum size before payload access 074cdf9e72eb Merge "cnss2: Return failure if bus type do not match" f73796d0e9f6 Merge "asoc: Update max channels for TDM ports" 3691a75c38f2 soc: msm8998: Add 16ch playback and record support for TDM 4067f83f16aa Merge "ARM: dts: msm: Enable DP DM pulsing support on MSM8996" ced9c94ab135 Merge "soc: qcom: hab: Add open local-cancel and compiler warning fixes" 1058027c8de2 Merge "msm: ipa: fix to validate input parameters" c53f4c9b5b07 Merge "net: sockev: avoid races between sockev and socket_close" c447f451f23b msm: ipa: fix to validate input parameters 0e71405de372 phy: qusb: Add support for DP DM pulsing for HS PHY 923d660f4f8e ARM: dts: msm: Add support for float charger detection on MSM8996 669f50368505 usb: dwc3: Support float charger detection b924e5efad9c net: sockev: avoid races between sockev and socket_close ecf5d04a091c i2c: add virtual i2c driver 3973929bb0c0 asoc: Update max channels for TDM ports f5b94d9b13a2 Merge "fbdev: msm: check the length of the external input buffer properly" 866e7cab7632 Merge "power: qpnp-smbcharger: Add support for dpdm pulsing" 69b14d87db0c Merge "diag: Prevent out-of-bound access while processing dci transaction" 16819b1724ca Merge "diag: Prevent out-of-bound access while processing mask commands" 77b2a5118029 Merge "soc: qcom: smem: validate fields of shared structures" 9c9f59ad526d Merge "msm: mdss: assign block_id for INTF_3" 9482fdb2ac26 Merge "asoc: Ratelimit error logs to avoid excessive logging" c0d5faa72def ARM: dts: msm: Enable DP DM pulsing support on MSM8996 20cff2eff8b0 soc: qcom: hab: Add open local-cancel and compiler warning fixes 2835220d65c2 power: qpnp-smbcharger: Add support for dpdm pulsing 705aac6195a3 Merge "msm: ais : Lock Implementation for avoid race condition" e405d025f373 cnss2: Return failure if bus type do not match cce422722518 soc: qcom: smem: validate fields of shared structures 24cedeb24492 Merge "Merge android-4.4.180 (71cb827) into msm-4.4" 01fcd88c0f94 fbdev: msm: check the length of the external input buffer properly 2f6ef8a30b78 Merge "usb: f_gsi: Increase max control transfer size to 8K" cfb05dba8254 Merge "msm: ipa_v2: Protect ipa default routing table" 44607545fc3a Merge "qcom: smcinvoke: Fix stack overflow for arr_filp" b29d59a33d59 Merge "defconfig: msm8996: Enable radio configs" fa9dbbba7210 qcom: smcinvoke: Fix stack overflow for arr_filp 17fe44d6eb8a msm: ais : Lock Implementation for avoid race condition 547234bc3905 Merge "arm: dts: msm: Add usbin-vadc dt property for 8996" 780ec0d56272 Merge android-4.4.180 (71cb827) into msm-4.4 fe304a42badc Merge "power: qpnp-smbcharger: Add voltage now property in usb psy" 01abac7367ec Merge "soc: qcom: ipc_router_mhi_xprt: Handle error condition" d1a5c0380504 Merge "ARM: dts: msm: Enable HDMI audio support for 8996" f5704ee3fc16 Merge "defconfig: Enable REGMAP_ALLOW_WRITE_DEBUGFS" 726ccfec942d power: qpnp-smbcharger: Add voltage now property in usb psy c77bbe685168 Merge "msm: ais: handle the error value returned during get clock" 765d3befd4ec msm: ais: handle the error value returned during get clock 716a46317a4f power: qpnp-smbcharger: Add support for float charger detection f228ed90951d Merge "ARM: dts: msm: Update avb flag and partition names for auto" fde6bcd6f665 arm: dts: msm: Add usbin-vadc dt property for 8996 f8572fa1920f Merge "ASoC: msm: Update codec name in HDMI dai link" 64c7fea7a615 Merge "serial: msm_serial_hs: Align to HW assisted flow control support" 4249d4516299 asoc: Ratelimit error logs to avoid excessive logging 095ed32dd71f serial: msm_serial_hs: Align to HW assisted flow control support a4cc4b94d2cc usb: f_gsi: Increase max control transfer size to 8K 14ff0dc12ed0 Merge "ARM: dts: msm: add support for apq8096pro CDP" 6666379ae0e6 msm: mdss: assign block_id for INTF_3 79e903bcd908 soc: qcom: ipc_router_mhi_xprt: Handle error condition 4efd54ad69f1 Merge "pwm: pwm-qpnp: Fix the order of configuring PWM value" af0d3ed849b5 Merge "msm: camera: jpegdma: Added missing lock for dqbuf and streamon" 71cb827c0249 Merge 4.4.180 into android-4.4 0f654c12cd72 Linux 4.4.180 5f3cf6b82211 powerpc/lib: fix book3s/32 boot failure due to code patching 95100d253fee powerpc/booke64: set RI in default MSR 9db489ed4971 drivers/virt/fsl_hypervisor.c: prevent integer overflow in ioctl f518072d1ae1 drivers/virt/fsl_hypervisor.c: dereferencing error pointers in ioctl 7a22a4ea67b7 bonding: fix arp_validate toggling in active-backup mode 6e72e6897efe ipv4: Fix raw socket lookup for local traffic 6e36b31c1b07 vrf: sit mtu should not be updated when vrf netdev is the link 6044ab2a05f6 vlan: disable SIOCSHWTSTAMP in container bf4d21eed0d7 packet: Fix error path in packet_init 1261f44db98c net: ucc_geth - fix Oops when changing number of buffers in the ring 24d2a86b8968 bridge: Fix error path for kobject_init_and_add() b8bb7bc326f2 powerpc/64s: Include cpu header 27d9e822a716 USB: serial: fix unthrottle races f2387d0c3467 USB: serial: use variable for status 6db8c0882912 x86/bugs: Change L1TF mitigation string to match upstream 71041afe26a3 x86/speculation/mds: Fix documentation typo 693eb3bdaf19 Documentation: Correct the possible MDS sysfs values 0f961ec59305 x86/mds: Add MDSUM variant to the MDS documentation 3092ad5c4f2e x86/speculation/mds: Add 'mitigations=' support for MDS a50e2ca5757f x86/speculation: Support 'mitigations=' cmdline option 31a2c5f7a25b cpu/speculation: Add 'mitigations=' cmdline option 2b26dff34698 x86/speculation/mds: Print SMT vulnerable on MSBDS with mitigations off 0144cbc12474 x86/speculation/mds: Fix comment e2896d6b1e48 x86/speculation/mds: Add SMT warning message 06deb655ae26 x86/speculation: Move arch_smt_update() call to after mitigation decisions 5b0f1f5b4f58 x86/cpu/bugs: Use __initconst for 'const' init data 48204fd98023 Documentation: Add MDS vulnerability documentation e0e64cdc7fd9 Documentation: Move L1TF to separate directory 9fe26a407f0e x86/speculation/mds: Add mitigation mode VMWERV 3fb41b4e2d38 x86/speculation/mds: Add sysfs reporting for MDS 1e9a9ef67033 x86/speculation/l1tf: Document l1tf in sysfs 8c7398befdf1 x86/speculation/mds: Add mitigation control for MDS d4c1e6cbbcdc x86/speculation/mds: Conditionally clear CPU buffers on idle entry a41a2dee403d x86/speculation/mds: Clear CPU buffers on exit to user 7a6c2a6c4235 x86/speculation/mds: Add mds_clear_cpu_buffers() f223c10cf176 x86/kvm: Expose X86_FEATURE_MD_CLEAR to guests adef560d1ef8 x86/speculation/mds: Add BUG_MSBDS_ONLY 179adc415f94 x86/speculation/mds: Add basic bug infrastructure for MDS 8be7f1183d2f x86/speculation: Consolidate CPU whitelists 683f9fba8c27 x86/msr-index: Cleanup bit defines 6eb1dfb0e945 kvm: x86: Report STIBP on GET_SUPPORTED_CPUID f8515b2d8c86 x86/speculation: Provide IBPB always command line options 867931a6cc51 x86/speculation: Add seccomp Spectre v2 user space protection mode 0ec9baa28b62 x86/speculation: Enable prctl mode for spectre_v2_user ff99c966c627 x86/speculation: Add prctl() control for indirect branch speculation bc8a006cb385 x86/speculation: Prevent stale SPEC_CTRL msr content b784ff22d682 x86/speculation: Prepare arch_smt_update() for PRCTL mode 29652de33320 x86/speculation: Split out TIF update e2dafdd0084b x86/speculation: Prepare for conditional IBPB in switch_mm() 708f3ed763fc x86/speculation: Avoid __switch_to_xtra() calls 2db6cf1eba01 x86/process: Consolidate and simplify switch_to_xtra() code 2959c3e36f65 x86/speculation: Prepare for per task indirect branch speculation control a5e8a06268dc x86/speculation: Add command line control for indirect branch speculation 92bc99ff0724 x86/speculation: Unify conditional spectre v2 print functions 3d2149a49e7b x86/speculataion: Mark command line parser data __initdata ad70092da835 x86/speculation: Mark string arrays const correctly 77aaa118c5d1 x86/speculation: Reorder the spec_v2 code 892d9881b437 x86/speculation: Rework SMT state change 1f562beba75c sched: Add sched_smt_active() f576a78075ba x86/Kconfig: Select SCHED_SMT if SMP enabled f68790685aa5 x86/speculation: Reorganize speculation control MSRs update 41ebb68d9a67 x86/speculation: Rename SSBD update functions 9ef693a75208 x86/speculation: Disable STIBP when enhanced IBRS is in use 6a598ce52f69 x86/speculation: Move STIPB/IBPB string conditionals out of cpu_show_common() fb4a4fc139a5 x86/speculation: Remove unnecessary ret variable in cpu_show_common() 809e50eb21e5 x86/speculation: Clean up spectre_v2_parse_cmdline() f97a530be08f x86/speculation: Update the TIF_SSBD comment 0440c2c5e2d2 x86/speculation: Propagate information about RSB filling mitigation to sysfs dc23d0241b97 x86/speculation: Enable cross-hyperthread spectre v2 STIBP mitigation 4a215a1155ce x86/speculation: Apply IBPB more strictly to avoid cross-process data leak 122b3ad3a068 x86/mm: Use WRITE_ONCE() when setting PTEs 7c50deefa1e9 KVM: x86: SVM: Call x86_spec_ctrl_set_guest/host() with interrupts disabled 2422db18b660 x86/cpu: Sanitize FAM6_ATOM naming 2329f765b53a x86/microcode: Update the new microcode revision unconditionally 0ee359e14c08 x86/microcode: Make sure boot_cpu_data.microcode is up-to-date 12043f0eb5fd x86/speculation: Remove SPECTRE_V2_IBRS in enum spectre_v2_mitigation 9029b6908e1d x86/bugs: Fix the AMD SSBD usage of the SPEC_CTRL MSR 8d1385ea4c67 locking/atomics, asm-generic: Move some macros from <linux/bitops.h> to a new <linux/bits.h> file 76869c022795 x86/bugs: Switch the selection of mitigation from CPU vendor to CPU features a9f354ad1c1d x86/bugs: Add AMD's SPEC_CTRL MSR usage 99bd3817b6d7 x86/bugs: Add AMD's variant of SSB_NO 2b8e34665e8f x86/speculation: Simplify the CPU bug detection logic efcb85dd2644 x86/speculation: Support Enhanced IBRS on future CPUs 042c6aee6572 x86/cpufeatures: Hide AMD-specific speculation flags dc7e3b052ab4 x86/MCE: Save microcode revision in machine check records 30c66b528e1f x86/microcode/intel: Check microcode revision before updating sibling threads c2a357d9b429 bitops: avoid integer overflow in GENMASK(_ULL) d7a711b64ff8 x86: stop exporting msr-index.h to userland 98cc1464cfd6 x86/microcode/intel: Add a helper which gives the microcode revision 5ec6421c21c6 locking/static_keys: Provide DECLARE and well as DEFINE macros 40f6c72df9d8 Don't jump to compute_result state from check_result state 07d35512e494 x86/vdso: Pass --eh-frame-hdr to the linker 9767260be0b4 cw1200: fix missing unlock on error in cw1200_hw_scan() ccc2b0f8d4be gpu: ipu-v3: dp: fix CSC handling 795c76f4e50f selftests/net: correct the return value for run_netsocktests 83494cfb0d29 s390: ctcm: fix ctcm_new_device error return code 4c78631d884d ipvs: do not schedule icmp errors from tunnels 2b46b98576cb init: initialize jump labels before command line option parsing a54c490cecd5 tools lib traceevent: Fix missing equality check for strcmp 5664d3298b3b KVM: x86: avoid misreporting level-triggered irqs as edge-triggered in tracing b79c1ea82e3b s390/3270: fix lockdep false positive on view->lock 825c6401f9e9 s390/dasd: Fix capacity calculation for large volumes 905b8964c9d9 libnvdimm/btt: Fix a kmemdup failure check 3007ae4bbf26 HID: input: add mapping for keyboard Brightness Up/Down/Toggle keys c15b4f9f4699 HID: input: add mapping for Expose/Overview key 45679938dc6f iio: adc: xilinx: fix potential use-after-free on remove 619c8933e4af platform/x86: sony-laptop: Fix unintentional fall-through 8ce5ae6912e3 netfilter: compat: initialize all fields in xt_init a9bdfbd494da timer/debug: Change /proc/timer_stats from 0644 to 0600 e212945fe525 ASoC: Intel: avoid Oops if DMA setup fails faf458605614 ipv6: fix a potential deadlock in do_ipv6_setsockopt() dcb33fe3d9a6 UAS: fix alignment of scatter/gather segments d016dc1bd29a Bluetooth: Align minimum encryption key size for LE and BR/EDR connections dd150bcc93ff Bluetooth: hidp: fix buffer overflow 15a12bde0fd9 scsi: qla2xxx: Fix incorrect region-size setting in optrom SYSFS routines 88246eb7bf37 usb: dwc3: Fix default lpm_nyet_threshold value 1aec586c25ee genirq: Prevent use-after-free and work list corruption 2984aa6d4a78 iommu/amd: Set exclusion range correctly 4294ec58537d scsi: csiostor: fix missing data copy in csio_scsi_err_handler() 93beb0decfe2 perf/x86/intel: Fix handling of wakeup_events for multi-entry PEBS 5ea6b626b917 ASoC: tlv320aic32x4: Fix Common Pins b7bbb5ce955b ASoC: cs4270: Set auto-increment bit for register writes 79132626f8c7 ASoC:soc-pcm:fix a codec fixup issue in TDM case fe3f6511c9af scsi: libsas: fix a race condition when smp task timeout 0f83a55ca07e media: v4l2: i2c: ov7670: Fix PLL bypass register values d96fc7729c44 x86/mce: Improve error message when kernel cannot recover, p2 08794d181ff6 selinux: never allow relabeling on context mounts 3bf16c452b91 Input: snvs_pwrkey - initialize necessary driver data before enabling IRQ 90b8ab9ee10f staging: iio: adt7316: fix the dac write calculation 7c4744e2c75c staging: iio: adt7316: fix the dac read calculation a45018ff3c06 staging: iio: adt7316: allow adt751x to use internal vref for all dacs 55153b108922 usb: usbip: fix isoc packet num validation in get_pipe 3401512b7831 ARM: iop: don't use using 64-bit DMA masks 03fd6e162398 ARM: orion: don't use using 64-bit DMA masks 9fcbabe209a2 xsysace: Fix error handling in ace_setup 66c57ab148a0 hugetlbfs: fix memory leak for resv_map 550ce5b3b45b net: hns: Fix WARNING when remove HNS driver with SMMU enabled c8d4b98eeed4 net: hns: Use NAPI_POLL_WEIGHT for hns driver 4af8444aff7c scsi: storvsc: Fix calculation of sub-channel count 4328fca13020 vfio/pci: use correct format characters 891c92860383 rtc: da9063: set uie_unsupported when relevant 02395682f19b debugfs: fix use-after-free on symlink traversal 90a015d4d782 jffs2: fix use-after-free on symlink traversal cd43ccbfb5fb bonding: show full hw address in sysfs for slave entries 88020a14a0b7 igb: Fix WARN_ONCE on runtime suspend 6c24038d84a7 rtc: sh: Fix invalid alarm warning for non-enabled alarm e9358b9a5db1 HID: debug: fix race condition with between rdesc_show() and device removal 1b2b6db7765e USB: core: Fix bug caused by duplicate interface PM usage counter b384399a518c USB: core: Fix unterminated string returned by usb_string() 7a52b950902d USB: w1 ds2490: Fix bug caused by improper use of altsetting array 438b075fc77d USB: yurex: Fix protection fault after device removal c6ae8a5a4396 packet: validate msg_namelen in send directly aed15cc2ced6 bnxt_en: Improve multicast address setup logic. c7a9d69b727a ipv6: invert flowlabel sharing check in process and user mode 82ae1a89b134 ipv6/flowlabel: wait rcu grace period before put_pid() 0fe65e4eac33 ipv4: ip_do_fragment: Preserve skb_iif during fragmentation bdbc15205b51 ALSA: line6: use dynamic buffers e1a5cdbf7cb3 vfio/type1: Limit DMA mappings per container e0d9031feb2f kconfig/[mn]conf: handle backspace (^H) key 8c2bbe210936 libata: fix using DMA buffers on stack 4767c30a2bac scsi: zfcp: reduce flood of fcrscn1 trace records on multi-element RSCN cd2bdca329c1 ceph: fix use-after-free on symlink traversal 4663cb7947dd usb: u132-hcd: fix resource leak 783552a9865c scsi: qla4xxx: fix a potential NULL pointer dereference f18c946e6cf1 net: ethernet: ti: fix possible object reference leak 64206dd039fd net: ibm: fix possible object reference leak ae35f101789b net: xilinx: fix possible object reference leak c0d641aa264a net: ks8851: Set initial carrier state to down f41b4fd83fef net: ks8851: Delay requesting IRQ until opened 195aac29efe3 net: ks8851: Reassert reset pin if chip ID check fails 36b1240d4e47 net: ks8851: Dequeue RX packets explicitly 1710b4ad56db ARM: dts: pfla02: increase phy reset duration fd1f90b4fa83 usb: gadget: net2272: Fix net2272_dequeue() 61fb6fa9b32b usb: gadget: net2280: Fix net2280_dequeue() 4ff888ea38c1 usb: gadget: net2280: Fix overrun of OUT messages b9cf1bc4e31e sc16is7xx: missing unregister/delete driver on error in sc16is7xx_init() 6e361910119b netfilter: bridge: set skb transport_header before entering NF_INET_PRE_ROUTING d311479911c7 qlcnic: Avoid potential NULL pointer dereference 1652d1194af5 usbnet: ipheth: fix potential null pointer dereference in ipheth_carrier_set 4f2df9fd0769 usbnet: ipheth: prevent TX queue timeouts when device not ready aa24636d3dc2 Documentation: Add nospectre_v1 parameter c816ec25621b powerpc/fsl: Add FSL_PPC_BOOK3E as supported arch for nospectre_v2 boot arg 6a56ecdfd3b2 powerpc/fsl: Fixed warning: orphan section `__btb_flush_fixup' 1a26467578d8 powerpc/fsl: Sanitize the syscall table for NXP PowerPC 32 bit platforms 42b46e985c99 powerpc/fsl: Flush the branch predictor at each kernel entry (32 bit) 5bed4b351268 powerpc/fsl: Emulate SPRN_BUCSR register 4168b2e356bc powerpc/fsl: Flush branch predictor when entering KVM ec206826323a powerpc/fsl: Enable runtime patching if nospectre_v2 boot arg is used 389fd9776f3e ipv4: set the tcp_min_rtt_wlen range from 0 to one day 8cab9c87ee0f net: stmmac: move stmmac_check_ether_addr() to driver probe 1990e41b2339 team: fix possible recursive locking when add slaves 510a733497d3 ipv4: add sanity checks in ipv4_link_failure() f480eb03c88a Revert "block/loop: Use global lock for ioctl() operation." f08db490b406 bpf: reject wrong sized filters earlier 0b7d9b8571ad tipc: check link name with right length in tipc_nl_compat_link_set 625634be3b8b tipc: check bearer name with right length in tipc_nl_compat_bearer_enable cafee685fb48 netfilter: ebtables: CONFIG_COMPAT: drop a bogus WARN_ON cec54a8e694c NFS: Forbid setting AF_INET6 to "struct sockaddr_in"->sin_family. 76c279c7b6f8 fs/proc/proc_sysctl.c: Fix a NULL pointer dereference 28bd672e7a9f intel_th: gth: Fix an off-by-one in output unassigning 20159939a8b4 slip: make slhc_free() silently accept an error pointer 2996e89c2d62 tipc: handle the err returned from cmd header function 9d688aa11077 powerpc/fsl: Fix the flush of branch predictor. 990c7be76516 powerpc/security: Fix spectre_v2 reporting 5f9678d9c8c7 powerpc/fsl: Update Spectre v2 reporting 0454f7b3282b powerpc/fsl: Flush the branch predictor at each kernel entry (64bit) 932e8acaa806 powerpc/fsl: Add nospectre_v2 command line argument 4cbfad23be50 powerpc/fsl: Fix spectre_v2 mitigations reporting b76f9074d0f3 powerpc/fsl: Add macro to flush the branch predictor 526adfdf029e powerpc/fsl: Add infrastructure to fixup branch predictor flush 7fe905d0973e powerpc: Avoid code patching freed init sections ee1a6e164cac powerpc/powernv: Query firmware for count cache flush settings 67fb764be590 powerpc/pseries: Query hypervisor for count cache flush settings bda04af8692d powerpc/64s: Add support for software count cache flush bfeafa01fa09 powerpc/64s: Add new security feature flags for count cache flush a8d13b364862 powerpc/asm: Add a patch_site macro & helpers for patching instructions 0273c6d73a03 powerpc/fsl: Add barrier_nospec implementation for NXP PowerPC Book3E b7f47c8f0f4c powerpc/64: Make meltdown reporting Book3S 64 specific 04a682df27c1 powerpc/64: Call setup_barrier_nospec() from setup_arch() e7b3fb43b970 powerpc/64: Add CONFIG_PPC_BARRIER_NOSPEC 4fb0382d987e powerpc/64: Make stf barrier PPC_BOOK3S_64 specific. 58dbc8def949 powerpc/64: Disable the speculation barrier from the command line d000015f6283 powerpc64s: Show ori31 availability in spectre_v1 sysfs file not v2 b6a4dce40cb7 powerpc/64s: Enhance the information in cpu_show_spectre_v1() 1110c3ad0b66 powerpc: Use barrier_nospec in copy_from_user() 2a90ebba2fcc powerpc/64: Use barrier_nospec in syscall entry 990ce72a3bab powerpc/64s: Enable barrier_nospec based on firmware settings 39e71d5ae83f powerpc/64s: Patch barrier_nospec in modules 083c37a1bb61 powerpc/64s: Add support for ori barrier_nospec patching fde08a5d395e powerpc/64s: Add barrier_nospec 7b9f9ce1a7a0 powerpc/64s: Add support for a store forwarding barrier at kernel entry/exit 27296b7879d5 powerpc/64s: Fix section mismatch warnings from setup_rfi_flush() 8b1f9a4e2136 powerpc/pseries: Restore default security feature flags on setup adde5de432d6 powerpc: Move default security feature flags b3be4dcbd1a2 powerpc/pseries: Fix clearing of security feature flags d9594148817b powerpc/64s: Wire up cpu_show_spectre_v2() fe126d25bad7 powerpc/64s: Wire up cpu_show_spectre_v1() 5097bf81e845 powerpc/pseries: Use the security flags in pseries_setup_rfi_flush() 10f8cd737a03 powerpc/powernv: Use the security flags in pnv_setup_rfi_flush() 495c34251785 powerpc/64s: Enhance the information in cpu_show_meltdown() dde12e9b3e86 powerpc/64s: Move cpu_show_meltdown() 3b99b3b3fb97 powerpc/powernv: Set or clear security feature flags 2b206ee648f3 powerpc/pseries: Set or clear security feature flags d34ea7873f82 powerpc: Add security feature flags for Spectre/Meltdown 8249ee94a9ca powerpc/rfi-flush: Call setup_rfi_flush() after LPM migration 7777d9cb2c1c powerpc/pseries: Add new H_GET_CPU_CHARACTERISTICS flags e5c8265abdbb powerpc/rfi-flush: Differentiate enabled and patched flush types 8b58add49fef powerpc/rfi-flush: Always enable fallback flush on pseries 22c697163e4d powerpc/rfi-flush: Make it possible to call setup_rfi_flush() again d04664376129 powerpc/rfi-flush: Move the logic to avoid a redo into the debugfs code f93ae3415cf7 powerpc/powernv: Support firmware disable of RFI flush e1759aacdd16 powerpc/pseries: Support firmware disable of RFI flush d9052a2ede31 powerpc/64s: Improve RFI L1-D cache flush fallback 13dc9b34c873 powerpc/xmon: Add RFI flush related fields to paca dump 80c305aeeb09 USB: Consolidate LPM checks to avoid enabling LPM twice 9dad11965ed2 USB: Add new USB LPM helpers fad515213059 sunrpc: don't mark uninitialised items as VALID. 498e9066b480 nfsd: Don't release the callback slot unless it was actually held b8d15c06cf0c ceph: fix ci->i_head_snapc leak 811fb30278b4 ceph: ensure d_name stability in ceph_dentry_hash() 2f14dae91560 sched/numa: Fix a possible divide-by-zero 10dbe2292758 trace: Fix preempt_enable_no_resched() abuse 15c2ac78cb73 MIPS: scall64-o32: Fix indirect syscall number load fd49607468ba cifs: do not attempt cifs operation on smb2+ rename error 4c78eadb3489 KVM: fail KVM_SET_VCPU_EVENTS with invalid exception number 485d15db01ca kbuild: simplify ld-option implementation cd1e9004ddd5 Merge "defconfig: msm8996: Enable PAN emulation" a4b99d2c643c Merge "defconfig: msm8996: Disable DEVPORT" b79e25fe5818 msm: camera : Lock Implementation for avoid race condition ce469a70f3bc ANDROID: cuttlefish_defconfig: Disable DEVTMPFS d5f7b0a5556b diag: Prevent out-of-bound access while processing dci transaction cfef4f88308a diag: Prevent out-of-bound access while processing mask commands c9fa4db90a83 pwm: pwm-qpnp: Fix the order of configuring PWM value fe15f47306a1 ANDROID: Move from clang r349610 to r353983c. 8cb9bdaac97a Merge upstream-f2fs-stable-linux-4.4.y into android-4.4 592adc484920 drm/msm: ensure display driver probe completion 77c04577d922 Merge "msm: camera_v2: handle the error value returned during get clock" 5e144157195d icnss: Add check on msa region 6183ceb8d1e7 msm: camera_v2: handle the error value returned during get clock 779dfa61f7b1 msm: ipa_v2: Protect ipa default routing table 8b5d9f6f8eac ARM: dts: msm: add support for apq8096pro CDP 59dda5e0dcec ASoC: msm: Update codec name in HDMI dai link 0cba1d4c1422 f2fs: fix to avoid accessing xattr across the boundary f32a4e2decb0 ARM: dts: msm: Enable HDMI audio support for 8996 c44c78fab1a2 ARM: dts: msm: Update avb flag and partition names for auto ee588a7f2329 f2fs: fix to avoid potential race on sbi->unusable_block_count access/update 993543bcbad2 f2fs: add tracepoint for f2fs_filemap_fault() b60ff4b3605c f2fs: introduce DATA_GENERIC_ENHANCE 43c33bc93b79 f2fs: fix to handle error in f2fs_disable_checkpoint() 9ca2000e9d76 f2fs: remove redundant check in f2fs_file_write_iter() b6bb1574fce6 f2fs: fix to be aware of readonly device in write_checkpoint() 04139be9047a f2fs: fix to skip recovery on readonly device 25f68cbbdb86 f2fs: fix to consider multiple device for readonly check a90ff12b2ff5 f2fs: relocate chksum_offset for large_nat_bitmap feature ad199c5f600f f2fs: allow unfixed f2fs_checkpoint.checksum_offset a3df88564441 f2fs: Replace spaces with tab 12a9d38a0b11 f2fs: insert space before the open parenthesis '(' e3057056de10 f2fs: allow address pointer number of dnode aligning to specified size c351f529e220 f2fs: introduce f2fs_read_single_page() for cleanup 8ac217148510 f2fs: mark is_extension_exist() inline 2c8359eee2ad f2fs: fix to set FI_UPDATE_WRITE correctly 5f2085bab2e2 f2fs: fix to avoid panic in f2fs_inplace_write_data() d6fe88aef4c1 f2fs: fix to do sanity check on valid block count of segment 1c3e295f67d0 f2fs: fix to do sanity check on valid node/block count 4ffbe8fee8a4 f2fs: fix to avoid panic in do_recover_data() 65f109d717d4 f2fs: fix to do sanity check on free nid c60f9c6ced33 f2fs: fix to do checksum even if inode page is uptodate 9a080abdc30b f2fs: fix to avoid panic in f2fs_remove_inode_page() c0bcbe425670 f2fs: fix to clear dirty inode in error path of f2fs_iget() 299dea1adf40 f2fs: remove new blank line of f2fs kernel message 9b4fc7359ca2 f2fs: fix wrong __is_meta_io() macro 02fb7afdd5f0 f2fs: fix to avoid panic in dec_valid_node_count() 5caebe607e13 f2fs: fix to avoid panic in dec_valid_block_count() b5bc76046b10 f2fs: fix to use inline space only if inline_xattr is enable 9bc578bf83ee f2fs: fix to retrieve inline xattr space 0d7333632d79 f2fs: fix error path of recovery b9973998d9df f2fs: fix to avoid deadloop in foreground GC 5047402dec0e f2fs: data: fix warning Using plain integer as NULL pointer 5bed19fbbba0 f2fs: add tracepoint for f2fs_file_write_iter() 7e37cc9d7161 f2fs: add comment for conditional compilation statement 00e77f15eb1d f2fs: fix potential recursive call when enabling data_flush 6b25d4ac2e7d f2fs: improve discard handling with multi-device volumes c4c54093c71d f2fs: Reduce zoned block device memory usage 2c124ddd98a9 f2fs: Fix use of number of devices 8e638383c1bf msm: camera: jpegdma: Added missing lock for dqbuf and streamon 2bc83184b422 defconfig: Enable REGMAP_ALLOW_WRITE_DEBUGFS 81bbb1b91ed2 defconfig: msm8996: Enable radio configs 0b570560f091 radio: add Silabs FM radio support for msm8996 152bacdd85c4 ANDROID: Communicates LMK events to userland where they can be logged dc0d6bda9e08 defconfig: msm8996: Disable DEVPORT 70d7ff1aa709 defconfig: msm8996: Disable EXT2 and EXT3 FS configs 339eab8aede0 defconfig: msm8996: Enable PAN emulation Signed-off-by: Davide Garberi <dade.garberi@gmail.com> Change-Id: Iac613f6970faeadc98d9ed40aae0d96042502ce4
| * | | usb: dwc3: Support float charger detectionSriharsha Allenki2019-06-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Chargers on some platforms do not support FLOAT charger detection. On these platforms, the float charger can be detected depending on the state of the DP and DM lines as detected by the PHY. So, on these platforms check for the DP DM line state and if found floating, do not start the peripheral mode and notify PMIC -ETIMEDOUT implying the connected charger is of type float. Change-Id: I6bf54b0d5c143a849ce9ea7bc515d62204ed2f33 Signed-off-by: Sriharsha Allenki <sallenki@codeaurora.org>
| * | | Merge android-4.4.180 (71cb827) into msm-4.4Srinivasarao P2019-05-23
| |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * refs/heads/tmp-71cb827 Linux 4.4.180 powerpc/lib: fix book3s/32 boot failure due to code patching powerpc/booke64: set RI in default MSR drivers/virt/fsl_hypervisor.c: prevent integer overflow in ioctl drivers/virt/fsl_hypervisor.c: dereferencing error pointers in ioctl bonding: fix arp_validate toggling in active-backup mode ipv4: Fix raw socket lookup for local traffic vrf: sit mtu should not be updated when vrf netdev is the link vlan: disable SIOCSHWTSTAMP in container packet: Fix error path in packet_init net: ucc_geth - fix Oops when changing number of buffers in the ring bridge: Fix error path for kobject_init_and_add() powerpc/64s: Include cpu header USB: serial: fix unthrottle races USB: serial: use variable for status x86/bugs: Change L1TF mitigation string to match upstream x86/speculation/mds: Fix documentation typo Documentation: Correct the possible MDS sysfs values x86/mds: Add MDSUM variant to the MDS documentation x86/speculation/mds: Add 'mitigations=' support for MDS x86/speculation: Support 'mitigations=' cmdline option cpu/speculation: Add 'mitigations=' cmdline option x86/speculation/mds: Print SMT vulnerable on MSBDS with mitigations off x86/speculation/mds: Fix comment x86/speculation/mds: Add SMT warning message x86/speculation: Move arch_smt_update() call to after mitigation decisions x86/cpu/bugs: Use __initconst for 'const' init data Documentation: Add MDS vulnerability documentation Documentation: Move L1TF to separate directory x86/speculation/mds: Add mitigation mode VMWERV x86/speculation/mds: Add sysfs reporting for MDS x86/speculation/l1tf: Document l1tf in sysfs x86/speculation/mds: Add mitigation control for MDS x86/speculation/mds: Conditionally clear CPU buffers on idle entry x86/speculation/mds: Clear CPU buffers on exit to user x86/speculation/mds: Add mds_clear_cpu_buffers() x86/kvm: Expose X86_FEATURE_MD_CLEAR to guests x86/speculation/mds: Add BUG_MSBDS_ONLY x86/speculation/mds: Add basic bug infrastructure for MDS x86/speculation: Consolidate CPU whitelists x86/msr-index: Cleanup bit defines kvm: x86: Report STIBP on GET_SUPPORTED_CPUID x86/speculation: Provide IBPB always command line options x86/speculation: Add seccomp Spectre v2 user space protection mode x86/speculation: Enable prctl mode for spectre_v2_user x86/speculation: Add prctl() control for indirect branch speculation x86/speculation: Prevent stale SPEC_CTRL msr content x86/speculation: Prepare arch_smt_update() for PRCTL mode x86/speculation: Split out TIF update x86/speculation: Prepare for conditional IBPB in switch_mm() x86/speculation: Avoid __switch_to_xtra() calls x86/process: Consolidate and simplify switch_to_xtra() code x86/speculation: Prepare for per task indirect branch speculation control x86/speculation: Add command line control for indirect branch speculation x86/speculation: Unify conditional spectre v2 print functions x86/speculataion: Mark command line parser data __initdata x86/speculation: Mark string arrays const correctly x86/speculation: Reorder the spec_v2 code x86/speculation: Rework SMT state change sched: Add sched_smt_active() x86/Kconfig: Select SCHED_SMT if SMP enabled x86/speculation: Reorganize speculation control MSRs update x86/speculation: Rename SSBD update functions x86/speculation: Disable STIBP when enhanced IBRS is in use x86/speculation: Move STIPB/IBPB string conditionals out of cpu_show_common() x86/speculation: Remove unnecessary ret variable in cpu_show_common() x86/speculation: Clean up spectre_v2_parse_cmdline() x86/speculation: Update the TIF_SSBD comment x86/speculation: Propagate information about RSB filling mitigation to sysfs x86/speculation: Enable cross-hyperthread spectre v2 STIBP mitigation x86/speculation: Apply IBPB more strictly to avoid cross-process data leak x86/mm: Use WRITE_ONCE() when setting PTEs KVM: x86: SVM: Call x86_spec_ctrl_set_guest/host() with interrupts disabled x86/cpu: Sanitize FAM6_ATOM naming x86/microcode: Update the new microcode revision unconditionally x86/microcode: Make sure boot_cpu_data.microcode is up-to-date x86/speculation: Remove SPECTRE_V2_IBRS in enum spectre_v2_mitigation x86/bugs: Fix the AMD SSBD usage of the SPEC_CTRL MSR locking/atomics, asm-generic: Move some macros from <linux/bitops.h> to a new <linux/bits.h> file x86/bugs: Switch the selection of mitigation from CPU vendor to CPU features x86/bugs: Add AMD's SPEC_CTRL MSR usage x86/bugs: Add AMD's variant of SSB_NO x86/speculation: Simplify the CPU bug detection logic x86/speculation: Support Enhanced IBRS on future CPUs x86/cpufeatures: Hide AMD-specific speculation flags x86/MCE: Save microcode revision in machine check records x86/microcode/intel: Check microcode revision before updating sibling threads bitops: avoid integer overflow in GENMASK(_ULL) x86: stop exporting msr-index.h to userland x86/microcode/intel: Add a helper which gives the microcode revision locking/static_keys: Provide DECLARE and well as DEFINE macros Don't jump to compute_result state from check_result state x86/vdso: Pass --eh-frame-hdr to the linker cw1200: fix missing unlock on error in cw1200_hw_scan() gpu: ipu-v3: dp: fix CSC handling selftests/net: correct the return value for run_netsocktests s390: ctcm: fix ctcm_new_device error return code ipvs: do not schedule icmp errors from tunnels init: initialize jump labels before command line option parsing tools lib traceevent: Fix missing equality check for strcmp KVM: x86: avoid misreporting level-triggered irqs as edge-triggered in tracing s390/3270: fix lockdep false positive on view->lock s390/dasd: Fix capacity calculation for large volumes libnvdimm/btt: Fix a kmemdup failure check HID: input: add mapping for keyboard Brightness Up/Down/Toggle keys HID: input: add mapping for Expose/Overview key iio: adc: xilinx: fix potential use-after-free on remove platform/x86: sony-laptop: Fix unintentional fall-through netfilter: compat: initialize all fields in xt_init timer/debug: Change /proc/timer_stats from 0644 to 0600 ASoC: Intel: avoid Oops if DMA setup fails ipv6: fix a potential deadlock in do_ipv6_setsockopt() UAS: fix alignment of scatter/gather segments Bluetooth: Align minimum encryption key size for LE and BR/EDR connections Bluetooth: hidp: fix buffer overflow scsi: qla2xxx: Fix incorrect region-size setting in optrom SYSFS routines usb: dwc3: Fix default lpm_nyet_threshold value genirq: Prevent use-after-free and work list corruption iommu/amd: Set exclusion range correctly scsi: csiostor: fix missing data copy in csio_scsi_err_handler() perf/x86/intel: Fix handling of wakeup_events for multi-entry PEBS ASoC: tlv320aic32x4: Fix Common Pins ASoC: cs4270: Set auto-increment bit for register writes ASoC:soc-pcm:fix a codec fixup issue in TDM case scsi: libsas: fix a race condition when smp task timeout media: v4l2: i2c: ov7670: Fix PLL bypass register values x86/mce: Improve error message when kernel cannot recover, p2 selinux: never allow relabeling on context mounts Input: snvs_pwrkey - initialize necessary driver data before enabling IRQ staging: iio: adt7316: fix the dac write calculation staging: iio: adt7316: fix the dac read calculation staging: iio: adt7316: allow adt751x to use internal vref for all dacs usb: usbip: fix isoc packet num validation in get_pipe ARM: iop: don't use using 64-bit DMA masks ARM: orion: don't use using 64-bit DMA masks xsysace: Fix error handling in ace_setup hugetlbfs: fix memory leak for resv_map net: hns: Fix WARNING when remove HNS driver with SMMU enabled net: hns: Use NAPI_POLL_WEIGHT for hns driver scsi: storvsc: Fix calculation of sub-channel count vfio/pci: use correct format characters rtc: da9063: set uie_unsupported when relevant debugfs: fix use-after-free on symlink traversal jffs2: fix use-after-free on symlink traversal bonding: show full hw address in sysfs for slave entries igb: Fix WARN_ONCE on runtime suspend rtc: sh: Fix invalid alarm warning for non-enabled alarm HID: debug: fix race condition with between rdesc_show() and device removal USB: core: Fix bug caused by duplicate interface PM usage counter USB: core: Fix unterminated string returned by usb_string() USB: w1 ds2490: Fix bug caused by improper use of altsetting array USB: yurex: Fix protection fault after device removal packet: validate msg_namelen in send directly bnxt_en: Improve multicast address setup logic. ipv6: invert flowlabel sharing check in process and user mode ipv6/flowlabel: wait rcu grace period before put_pid() ipv4: ip_do_fragment: Preserve skb_iif during fragmentation ALSA: line6: use dynamic buffers vfio/type1: Limit DMA mappings per container kconfig/[mn]conf: handle backspace (^H) key libata: fix using DMA buffers on stack scsi: zfcp: reduce flood of fcrscn1 trace records on multi-element RSCN ceph: fix use-after-free on symlink traversal usb: u132-hcd: fix resource leak scsi: qla4xxx: fix a potential NULL pointer dereference net: ethernet: ti: fix possible object reference leak net: ibm: fix possible object reference leak net: xilinx: fix possible object reference leak net: ks8851: Set initial carrier state to down net: ks8851: Delay requesting IRQ until opened net: ks8851: Reassert reset pin if chip ID check fails net: ks8851: Dequeue RX packets explicitly ARM: dts: pfla02: increase phy reset duration usb: gadget: net2272: Fix net2272_dequeue() usb: gadget: net2280: Fix net2280_dequeue() usb: gadget: net2280: Fix overrun of OUT messages sc16is7xx: missing unregister/delete driver on error in sc16is7xx_init() netfilter: bridge: set skb transport_header before entering NF_INET_PRE_ROUTING qlcnic: Avoid potential NULL pointer dereference usbnet: ipheth: fix potential null pointer dereference in ipheth_carrier_set usbnet: ipheth: prevent TX queue timeouts when device not ready Documentation: Add nospectre_v1 parameter powerpc/fsl: Add FSL_PPC_BOOK3E as supported arch for nospectre_v2 boot arg powerpc/fsl: Fixed warning: orphan section `__btb_flush_fixup' powerpc/fsl: Sanitize the syscall table for NXP PowerPC 32 bit platforms powerpc/fsl: Flush the branch predictor at each kernel entry (32 bit) powerpc/fsl: Emulate SPRN_BUCSR register powerpc/fsl: Flush branch predictor when entering KVM powerpc/fsl: Enable runtime patching if nospectre_v2 boot arg is used ipv4: set the tcp_min_rtt_wlen range from 0 to one day net: stmmac: move stmmac_check_ether_addr() to driver probe team: fix possible recursive locking when add slaves ipv4: add sanity checks in ipv4_link_failure() Revert "block/loop: Use global lock for ioctl() operation." bpf: reject wrong sized filters earlier tipc: check link name with right length in tipc_nl_compat_link_set tipc: check bearer name with right length in tipc_nl_compat_bearer_enable netfilter: ebtables: CONFIG_COMPAT: drop a bogus WARN_ON NFS: Forbid setting AF_INET6 to "struct sockaddr_in"->sin_family. fs/proc/proc_sysctl.c: Fix a NULL pointer dereference intel_th: gth: Fix an off-by-one in output unassigning slip: make slhc_free() silently accept an error pointer tipc: handle the err returned from cmd header function powerpc/fsl: Fix the flush of branch predictor. powerpc/security: Fix spectre_v2 reporting powerpc/fsl: Update Spectre v2 reporting powerpc/fsl: Flush the branch predictor at each kernel entry (64bit) powerpc/fsl: Add nospectre_v2 command line argument powerpc/fsl: Fix spectre_v2 mitigations reporting powerpc/fsl: Add macro to flush the branch predictor powerpc/fsl: Add infrastructure to fixup branch predictor flush powerpc: Avoid code patching freed init sections powerpc/powernv: Query firmware for count cache flush settings powerpc/pseries: Query hypervisor for count cache flush settings powerpc/64s: Add support for software count cache flush powerpc/64s: Add new security feature flags for count cache flush powerpc/asm: Add a patch_site macro & helpers for patching instructions powerpc/fsl: Add barrier_nospec implementation for NXP PowerPC Book3E powerpc/64: Make meltdown reporting Book3S 64 specific powerpc/64: Call setup_barrier_nospec() from setup_arch() powerpc/64: Add CONFIG_PPC_BARRIER_NOSPEC powerpc/64: Make stf barrier PPC_BOOK3S_64 specific. powerpc/64: Disable the speculation barrier from the command line powerpc64s: Show ori31 availability in spectre_v1 sysfs file not v2 powerpc/64s: Enhance the information in cpu_show_spectre_v1() powerpc: Use barrier_nospec in copy_from_user() powerpc/64: Use barrier_nospec in syscall entry powerpc/64s: Enable barrier_nospec based on firmware settings powerpc/64s: Patch barrier_nospec in modules powerpc/64s: Add support for ori barrier_nospec patching powerpc/64s: Add barrier_nospec powerpc/64s: Add support for a store forwarding barrier at kernel entry/exit powerpc/64s: Fix section mismatch warnings from setup_rfi_flush() powerpc/pseries: Restore default security feature flags on setup powerpc: Move default security feature flags powerpc/pseries: Fix clearing of security feature flags powerpc/64s: Wire up cpu_show_spectre_v2() powerpc/64s: Wire up cpu_show_spectre_v1() powerpc/pseries: Use the security flags in pseries_setup_rfi_flush() powerpc/powernv: Use the security flags in pnv_setup_rfi_flush() powerpc/64s: Enhance the information in cpu_show_meltdown() powerpc/64s: Move cpu_show_meltdown() powerpc/powernv: Set or clear security feature flags powerpc/pseries: Set or clear security feature flags powerpc: Add security feature flags for Spectre/Meltdown powerpc/rfi-flush: Call setup_rfi_flush() after LPM migration powerpc/pseries: Add new H_GET_CPU_CHARACTERISTICS flags powerpc/rfi-flush: Differentiate enabled and patched flush types powerpc/rfi-flush: Always enable fallback flush on pseries powerpc/rfi-flush: Make it possible to call setup_rfi_flush() again powerpc/rfi-flush: Move the logic to avoid a redo into the debugfs code powerpc/powernv: Support firmware disable of RFI flush powerpc/pseries: Support firmware disable of RFI flush powerpc/64s: Improve RFI L1-D cache flush fallback powerpc/xmon: Add RFI flush related fields to paca dump USB: Consolidate LPM checks to avoid enabling LPM twice USB: Add new USB LPM helpers sunrpc: don't mark uninitialised items as VALID. nfsd: Don't release the callback slot unless it was actually held ceph: fix ci->i_head_snapc leak ceph: ensure d_name stability in ceph_dentry_hash() sched/numa: Fix a possible divide-by-zero trace: Fix preempt_enable_no_resched() abuse MIPS: scall64-o32: Fix indirect syscall number load cifs: do not attempt cifs operation on smb2+ rename error KVM: fail KVM_SET_VCPU_EVENTS with invalid exception number kbuild: simplify ld-option implementation ANDROID: cuttlefish_defconfig: Disable DEVTMPFS ANDROID: Move from clang r349610 to r353983c. f2fs: fix to avoid accessing xattr across the boundary f2fs: fix to avoid potential race on sbi->unusable_block_count access/update f2fs: add tracepoint for f2fs_filemap_fault() f2fs: introduce DATA_GENERIC_ENHANCE f2fs: fix to handle error in f2fs_disable_checkpoint() f2fs: remove redundant check in f2fs_file_write_iter() f2fs: fix to be aware of readonly device in write_checkpoint() f2fs: fix to skip recovery on readonly device f2fs: fix to consider multiple device for readonly check f2fs: relocate chksum_offset for large_nat_bitmap feature f2fs: allow unfixed f2fs_checkpoint.checksum_offset f2fs: Replace spaces with tab f2fs: insert space before the open parenthesis '(' f2fs: allow address pointer number of dnode aligning to specified size f2fs: introduce f2fs_read_single_page() for cleanup f2fs: mark is_extension_exist() inline f2fs: fix to set FI_UPDATE_WRITE correctly f2fs: fix to avoid panic in f2fs_inplace_write_data() f2fs: fix to do sanity check on valid block count of segment f2fs: fix to do sanity check on valid node/block count f2fs: fix to avoid panic in do_recover_data() f2fs: fix to do sanity check on free nid f2fs: fix to do checksum even if inode page is uptodate f2fs: fix to avoid panic in f2fs_remove_inode_page() f2fs: fix to clear dirty inode in error path of f2fs_iget() f2fs: remove new blank line of f2fs kernel message f2fs: fix wrong __is_meta_io() macro f2fs: fix to avoid panic in dec_valid_node_count() f2fs: fix to avoid panic in dec_valid_block_count() f2fs: fix to use inline space only if inline_xattr is enable f2fs: fix to retrieve inline xattr space f2fs: fix error path of recovery f2fs: fix to avoid deadloop in foreground GC f2fs: data: fix warning Using plain integer as NULL pointer f2fs: add tracepoint for f2fs_file_write_iter() f2fs: add comment for conditional compilation statement f2fs: fix potential recursive call when enabling data_flush f2fs: improve discard handling with multi-device volumes f2fs: Reduce zoned block device memory usage f2fs: Fix use of number of devices Sleepable function handle_lmk_event() is called in atomic context, so ignored the commit "ANDROID: Communicates LMK events to userland where they can be logged" Conflicts: arch/powerpc/include/asm/uaccess.h kernel/cpu.c kernel/irq/manage.c kernel/time/timer_stats.c net/ipv4/sysctl_net_ipv4.c Change-Id: I3e5bd447057b44a28fc5000403198ae0fd644480 Signed-off-by: Srinivasarao P <spathi@codeaurora.org>
| | * | Merge 4.4.180 into android-4.4Greg Kroah-Hartman2019-05-16
| | |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Changes in 4.4.180 kbuild: simplify ld-option implementation KVM: fail KVM_SET_VCPU_EVENTS with invalid exception number cifs: do not attempt cifs operation on smb2+ rename error MIPS: scall64-o32: Fix indirect syscall number load trace: Fix preempt_enable_no_resched() abuse sched/numa: Fix a possible divide-by-zero ceph: ensure d_name stability in ceph_dentry_hash() ceph: fix ci->i_head_snapc leak nfsd: Don't release the callback slot unless it was actually held sunrpc: don't mark uninitialised items as VALID. USB: Add new USB LPM helpers USB: Consolidate LPM checks to avoid enabling LPM twice powerpc/xmon: Add RFI flush related fields to paca dump powerpc/64s: Improve RFI L1-D cache flush fallback powerpc/pseries: Support firmware disable of RFI flush powerpc/powernv: Support firmware disable of RFI flush powerpc/rfi-flush: Move the logic to avoid a redo into the debugfs code powerpc/rfi-flush: Make it possible to call setup_rfi_flush() again powerpc/rfi-flush: Always enable fallback flush on pseries powerpc/rfi-flush: Differentiate enabled and patched flush types powerpc/pseries: Add new H_GET_CPU_CHARACTERISTICS flags powerpc/rfi-flush: Call setup_rfi_flush() after LPM migration powerpc: Add security feature flags for Spectre/Meltdown powerpc/pseries: Set or clear security feature flags powerpc/powernv: Set or clear security feature flags powerpc/64s: Move cpu_show_meltdown() powerpc/64s: Enhance the information in cpu_show_meltdown() powerpc/powernv: Use the security flags in pnv_setup_rfi_flush() powerpc/pseries: Use the security flags in pseries_setup_rfi_flush() powerpc/64s: Wire up cpu_show_spectre_v1() powerpc/64s: Wire up cpu_show_spectre_v2() powerpc/pseries: Fix clearing of security feature flags powerpc: Move default security feature flags powerpc/pseries: Restore default security feature flags on setup powerpc/64s: Fix section mismatch warnings from setup_rfi_flush() powerpc/64s: Add support for a store forwarding barrier at kernel entry/exit powerpc/64s: Add barrier_nospec powerpc/64s: Add support for ori barrier_nospec patching powerpc/64s: Patch barrier_nospec in modules powerpc/64s: Enable barrier_nospec based on firmware settings powerpc/64: Use barrier_nospec in syscall entry powerpc: Use barrier_nospec in copy_from_user() powerpc/64s: Enhance the information in cpu_show_spectre_v1() powerpc64s: Show ori31 availability in spectre_v1 sysfs file not v2 powerpc/64: Disable the speculation barrier from the command line powerpc/64: Make stf barrier PPC_BOOK3S_64 specific. powerpc/64: Add CONFIG_PPC_BARRIER_NOSPEC powerpc/64: Call setup_barrier_nospec() from setup_arch() powerpc/64: Make meltdown reporting Book3S 64 specific powerpc/fsl: Add barrier_nospec implementation for NXP PowerPC Book3E powerpc/asm: Add a patch_site macro & helpers for patching instructions powerpc/64s: Add new security feature flags for count cache flush powerpc/64s: Add support for software count cache flush powerpc/pseries: Query hypervisor for count cache flush settings powerpc/powernv: Query firmware for count cache flush settings powerpc: Avoid code patching freed init sections powerpc/fsl: Add infrastructure to fixup branch predictor flush powerpc/fsl: Add macro to flush the branch predictor powerpc/fsl: Fix spectre_v2 mitigations reporting powerpc/fsl: Add nospectre_v2 command line argument powerpc/fsl: Flush the branch predictor at each kernel entry (64bit) powerpc/fsl: Update Spectre v2 reporting powerpc/security: Fix spectre_v2 reporting powerpc/fsl: Fix the flush of branch predictor. tipc: handle the err returned from cmd header function slip: make slhc_free() silently accept an error pointer intel_th: gth: Fix an off-by-one in output unassigning fs/proc/proc_sysctl.c: Fix a NULL pointer dereference NFS: Forbid setting AF_INET6 to "struct sockaddr_in"->sin_family. netfilter: ebtables: CONFIG_COMPAT: drop a bogus WARN_ON tipc: check bearer name with right length in tipc_nl_compat_bearer_enable tipc: check link name with right length in tipc_nl_compat_link_set bpf: reject wrong sized filters earlier Revert "block/loop: Use global lock for ioctl() operation." ipv4: add sanity checks in ipv4_link_failure() team: fix possible recursive locking when add slaves net: stmmac: move stmmac_check_ether_addr() to driver probe ipv4: set the tcp_min_rtt_wlen range from 0 to one day powerpc/fsl: Enable runtime patching if nospectre_v2 boot arg is used powerpc/fsl: Flush branch predictor when entering KVM powerpc/fsl: Emulate SPRN_BUCSR register powerpc/fsl: Flush the branch predictor at each kernel entry (32 bit) powerpc/fsl: Sanitize the syscall table for NXP PowerPC 32 bit platforms powerpc/fsl: Fixed warning: orphan section `__btb_flush_fixup' powerpc/fsl: Add FSL_PPC_BOOK3E as supported arch for nospectre_v2 boot arg Documentation: Add nospectre_v1 parameter usbnet: ipheth: prevent TX queue timeouts when device not ready usbnet: ipheth: fix potential null pointer dereference in ipheth_carrier_set qlcnic: Avoid potential NULL pointer dereference netfilter: bridge: set skb transport_header before entering NF_INET_PRE_ROUTING sc16is7xx: missing unregister/delete driver on error in sc16is7xx_init() usb: gadget: net2280: Fix overrun of OUT messages usb: gadget: net2280: Fix net2280_dequeue() usb: gadget: net2272: Fix net2272_dequeue() ARM: dts: pfla02: increase phy reset duration net: ks8851: Dequeue RX packets explicitly net: ks8851: Reassert reset pin if chip ID check fails net: ks8851: Delay requesting IRQ until opened net: ks8851: Set initial carrier state to down net: xilinx: fix possible object reference leak net: ibm: fix possible object reference leak net: ethernet: ti: fix possible object reference leak scsi: qla4xxx: fix a potential NULL pointer dereference usb: u132-hcd: fix resource leak ceph: fix use-after-free on symlink traversal scsi: zfcp: reduce flood of fcrscn1 trace records on multi-element RSCN libata: fix using DMA buffers on stack kconfig/[mn]conf: handle backspace (^H) key vfio/type1: Limit DMA mappings per container ALSA: line6: use dynamic buffers ipv4: ip_do_fragment: Preserve skb_iif during fragmentation ipv6/flowlabel: wait rcu grace period before put_pid() ipv6: invert flowlabel sharing check in process and user mode bnxt_en: Improve multicast address setup logic. packet: validate msg_namelen in send directly USB: yurex: Fix protection fault after device removal USB: w1 ds2490: Fix bug caused by improper use of altsetting array USB: core: Fix unterminated string returned by usb_string() USB: core: Fix bug caused by duplicate interface PM usage counter HID: debug: fix race condition with between rdesc_show() and device removal rtc: sh: Fix invalid alarm warning for non-enabled alarm igb: Fix WARN_ONCE on runtime suspend bonding: show full hw address in sysfs for slave entries jffs2: fix use-after-free on symlink traversal debugfs: fix use-after-free on symlink traversal rtc: da9063: set uie_unsupported when relevant vfio/pci: use correct format characters scsi: storvsc: Fix calculation of sub-channel count net: hns: Use NAPI_POLL_WEIGHT for hns driver net: hns: Fix WARNING when remove HNS driver with SMMU enabled hugetlbfs: fix memory leak for resv_map xsysace: Fix error handling in ace_setup ARM: orion: don't use using 64-bit DMA masks ARM: iop: don't use using 64-bit DMA masks usb: usbip: fix isoc packet num validation in get_pipe staging: iio: adt7316: allow adt751x to use internal vref for all dacs staging: iio: adt7316: fix the dac read calculation staging: iio: adt7316: fix the dac write calculation Input: snvs_pwrkey - initialize necessary driver data before enabling IRQ selinux: never allow relabeling on context mounts x86/mce: Improve error message when kernel cannot recover, p2 media: v4l2: i2c: ov7670: Fix PLL bypass register values scsi: libsas: fix a race condition when smp task timeout ASoC:soc-pcm:fix a codec fixup issue in TDM case ASoC: cs4270: Set auto-increment bit for register writes ASoC: tlv320aic32x4: Fix Common Pins perf/x86/intel: Fix handling of wakeup_events for multi-entry PEBS scsi: csiostor: fix missing data copy in csio_scsi_err_handler() iommu/amd: Set exclusion range correctly genirq: Prevent use-after-free and work list corruption usb: dwc3: Fix default lpm_nyet_threshold value scsi: qla2xxx: Fix incorrect region-size setting in optrom SYSFS routines Bluetooth: hidp: fix buffer overflow Bluetooth: Align minimum encryption key size for LE and BR/EDR connections UAS: fix alignment of scatter/gather segments ipv6: fix a potential deadlock in do_ipv6_setsockopt() ASoC: Intel: avoid Oops if DMA setup fails timer/debug: Change /proc/timer_stats from 0644 to 0600 netfilter: compat: initialize all fields in xt_init platform/x86: sony-laptop: Fix unintentional fall-through iio: adc: xilinx: fix potential use-after-free on remove HID: input: add mapping for Expose/Overview key HID: input: add mapping for keyboard Brightness Up/Down/Toggle keys libnvdimm/btt: Fix a kmemdup failure check s390/dasd: Fix capacity calculation for large volumes s390/3270: fix lockdep false positive on view->lock KVM: x86: avoid misreporting level-triggered irqs as edge-triggered in tracing tools lib traceevent: Fix missing equality check for strcmp init: initialize jump labels before command line option parsing ipvs: do not schedule icmp errors from tunnels s390: ctcm: fix ctcm_new_device error return code selftests/net: correct the return value for run_netsocktests gpu: ipu-v3: dp: fix CSC handling cw1200: fix missing unlock on error in cw1200_hw_scan() x86/vdso: Pass --eh-frame-hdr to the linker Don't jump to compute_result state from check_result state locking/static_keys: Provide DECLARE and well as DEFINE macros x86/microcode/intel: Add a helper which gives the microcode revision x86: stop exporting msr-index.h to userland bitops: avoid integer overflow in GENMASK(_ULL) x86/microcode/intel: Check microcode revision before updating sibling threads x86/MCE: Save microcode revision in machine check records x86/cpufeatures: Hide AMD-specific speculation flags x86/speculation: Support Enhanced IBRS on future CPUs x86/speculation: Simplify the CPU bug detection logic x86/bugs: Add AMD's variant of SSB_NO x86/bugs: Add AMD's SPEC_CTRL MSR usage x86/bugs: Switch the selection of mitigation from CPU vendor to CPU features locking/atomics, asm-generic: Move some macros from <linux/bitops.h> to a new <linux/bits.h> file x86/bugs: Fix the AMD SSBD usage of the SPEC_CTRL MSR x86/speculation: Remove SPECTRE_V2_IBRS in enum spectre_v2_mitigation x86/microcode: Make sure boot_cpu_data.microcode is up-to-date x86/microcode: Update the new microcode revision unconditionally x86/cpu: Sanitize FAM6_ATOM naming KVM: x86: SVM: Call x86_spec_ctrl_set_guest/host() with interrupts disabled x86/mm: Use WRITE_ONCE() when setting PTEs x86/speculation: Apply IBPB more strictly to avoid cross-process data leak x86/speculation: Enable cross-hyperthread spectre v2 STIBP mitigation x86/speculation: Propagate information about RSB filling mitigation to sysfs x86/speculation: Update the TIF_SSBD comment x86/speculation: Clean up spectre_v2_parse_cmdline() x86/speculation: Remove unnecessary ret variable in cpu_show_common() x86/speculation: Move STIPB/IBPB string conditionals out of cpu_show_common() x86/speculation: Disable STIBP when enhanced IBRS is in use x86/speculation: Rename SSBD update functions x86/speculation: Reorganize speculation control MSRs update x86/Kconfig: Select SCHED_SMT if SMP enabled sched: Add sched_smt_active() x86/speculation: Rework SMT state change x86/speculation: Reorder the spec_v2 code x86/speculation: Mark string arrays const correctly x86/speculataion: Mark command line parser data __initdata x86/speculation: Unify conditional spectre v2 print functions x86/speculation: Add command line control for indirect branch speculation x86/speculation: Prepare for per task indirect branch speculation control x86/process: Consolidate and simplify switch_to_xtra() code x86/speculation: Avoid __switch_to_xtra() calls x86/speculation: Prepare for conditional IBPB in switch_mm() x86/speculation: Split out TIF update x86/speculation: Prepare arch_smt_update() for PRCTL mode x86/speculation: Prevent stale SPEC_CTRL msr content x86/speculation: Add prctl() control for indirect branch speculation x86/speculation: Enable prctl mode for spectre_v2_user x86/speculation: Add seccomp Spectre v2 user space protection mode x86/speculation: Provide IBPB always command line options kvm: x86: Report STIBP on GET_SUPPORTED_CPUID x86/msr-index: Cleanup bit defines x86/speculation: Consolidate CPU whitelists x86/speculation/mds: Add basic bug infrastructure for MDS x86/speculation/mds: Add BUG_MSBDS_ONLY x86/kvm: Expose X86_FEATURE_MD_CLEAR to guests x86/speculation/mds: Add mds_clear_cpu_buffers() x86/speculation/mds: Clear CPU buffers on exit to user x86/speculation/mds: Conditionally clear CPU buffers on idle entry x86/speculation/mds: Add mitigation control for MDS x86/speculation/l1tf: Document l1tf in sysfs x86/speculation/mds: Add sysfs reporting for MDS x86/speculation/mds: Add mitigation mode VMWERV Documentation: Move L1TF to separate directory Documentation: Add MDS vulnerability documentation x86/cpu/bugs: Use __initconst for 'const' init data x86/speculation: Move arch_smt_update() call to after mitigation decisions x86/speculation/mds: Add SMT warning message x86/speculation/mds: Fix comment x86/speculation/mds: Print SMT vulnerable on MSBDS with mitigations off cpu/speculation: Add 'mitigations=' cmdline option x86/speculation: Support 'mitigations=' cmdline option x86/speculation/mds: Add 'mitigations=' support for MDS x86/mds: Add MDSUM variant to the MDS documentation Documentation: Correct the possible MDS sysfs values x86/speculation/mds: Fix documentation typo x86/bugs: Change L1TF mitigation string to match upstream USB: serial: use variable for status USB: serial: fix unthrottle races powerpc/64s: Include cpu header bridge: Fix error path for kobject_init_and_add() net: ucc_geth - fix Oops when changing number of buffers in the ring packet: Fix error path in packet_init vlan: disable SIOCSHWTSTAMP in container vrf: sit mtu should not be updated when vrf netdev is the link ipv4: Fix raw socket lookup for local traffic bonding: fix arp_validate toggling in active-backup mode drivers/virt/fsl_hypervisor.c: dereferencing error pointers in ioctl drivers/virt/fsl_hypervisor.c: prevent integer overflow in ioctl powerpc/booke64: set RI in default MSR powerpc/lib: fix book3s/32 boot failure due to code patching Linux 4.4.180 Change-Id: If2d2fdd451b55c002666b32022b269cec9545607 Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
| | | * cpu/speculation: Add 'mitigations=' cmdline optionJosh Poimboeuf2019-05-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit 98af8452945c55652de68536afdde3b520fec429 upstream. Keeping track of the number of mitigations for all the CPU speculation bugs has become overwhelming for many users. It's getting more and more complicated to decide which mitigations are needed for a given architecture. Complicating matters is the fact that each arch tends to have its own custom way to mitigate the same vulnerability. Most users fall into a few basic categories: a) they want all mitigations off; b) they want all reasonable mitigations on, with SMT enabled even if it's vulnerable; or c) they want all reasonable mitigations on, with SMT disabled if vulnerable. Define a set of curated, arch-independent options, each of which is an aggregation of existing options: - mitigations=off: Disable all mitigations. - mitigations=auto: [default] Enable all the default mitigations, but leave SMT enabled, even if it's vulnerable. - mitigations=auto,nosmt: Enable all the default mitigations, disabling SMT if needed by a mitigation. Currently, these options are placeholders which don't actually do anything. They will be fleshed out in upcoming patches. Signed-off-by: Josh Poimboeuf <jpoimboe@redhat.com> Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Tested-by: Jiri Kosina <jkosina@suse.cz> (on x86) Reviewed-by: Jiri Kosina <jkosina@suse.cz> Cc: Borislav Petkov <bp@alien8.de> Cc: "H . Peter Anvin" <hpa@zytor.com> Cc: Andy Lutomirski <luto@kernel.org> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Jiri Kosina <jikos@kernel.org> Cc: Waiman Long <longman@redhat.com> Cc: Andrea Arcangeli <aarcange@redhat.com> Cc: Jon Masters <jcm@redhat.com> Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> Cc: Paul Mackerras <paulus@samba.org> Cc: Michael Ellerman <mpe@ellerman.id.au> Cc: linuxppc-dev@lists.ozlabs.org Cc: Martin Schwidefsky <schwidefsky@de.ibm.com> Cc: Heiko Carstens <heiko.carstens@de.ibm.com> Cc: linux-s390@vger.kernel.org Cc: Catalin Marinas <catalin.marinas@arm.com> Cc: Will Deacon <will.deacon@arm.com> Cc: linux-arm-kernel@lists.infradead.org Cc: linux-arch@vger.kernel.org Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Cc: Tyler Hicks <tyhicks@canonical.com> Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Randy Dunlap <rdunlap@infradead.org> Cc: Steven Price <steven.price@arm.com> Cc: Phil Auld <pauld@redhat.com> Link: https://lkml.kernel.org/r/b07a8ef9b7c5055c3a4637c87d07c296d5016fe0.1555085500.git.jpoimboe@redhat.com [bwh: Backported to 4.4: - Drop the auto,nosmt option which we can't support - Adjust filename] Signed-off-by: Ben Hutchings <ben@decadent.org.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| | | * x86/speculation/mds: Add sysfs reporting for MDSThomas Gleixner2019-05-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit 8a4b06d391b0a42a373808979b5028f5c84d9c6a upstream. Add the sysfs reporting file for MDS. It exposes the vulnerability and mitigation state similar to the existing files for the other speculative hardware vulnerabilities. Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Reviewed-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Reviewed-by: Borislav Petkov <bp@suse.de> Reviewed-by: Jon Masters <jcm@redhat.com> Tested-by: Jon Masters <jcm@redhat.com> [bwh: Backported to 4.4: - Test x86_hyper instead of using hypervisor_is_type() - Adjust context] Signed-off-by: Ben Hutchings <ben@decadent.org.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| | | * x86/speculation: Add prctl() control for indirect branch speculationThomas Gleixner2019-05-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit 9137bb27e60e554dab694eafa4cca241fa3a694f upstream. Add the PR_SPEC_INDIRECT_BRANCH option for the PR_GET_SPECULATION_CTRL and PR_SET_SPECULATION_CTRL prctls to allow fine grained per task control of indirect branch speculation via STIBP and IBPB. Invocations: Check indirect branch speculation status with - prctl(PR_GET_SPECULATION_CTRL, PR_SPEC_INDIRECT_BRANCH, 0, 0, 0); Enable indirect branch speculation with - prctl(PR_SET_SPECULATION_CTRL, PR_SPEC_INDIRECT_BRANCH, PR_SPEC_ENABLE, 0, 0); Disable indirect branch speculation with - prctl(PR_SET_SPECULATION_CTRL, PR_SPEC_INDIRECT_BRANCH, PR_SPEC_DISABLE, 0, 0); Force disable indirect branch speculation with - prctl(PR_SET_SPECULATION_CTRL, PR_SPEC_INDIRECT_BRANCH, PR_SPEC_FORCE_DISABLE, 0, 0); See Documentation/userspace-api/spec_ctrl.rst. Signed-off-by: Tim Chen <tim.c.chen@linux.intel.com> Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Reviewed-by: Ingo Molnar <mingo@kernel.org> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Andy Lutomirski <luto@kernel.org> Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Jiri Kosina <jkosina@suse.cz> Cc: Tom Lendacky <thomas.lendacky@amd.com> Cc: Josh Poimboeuf <jpoimboe@redhat.com> Cc: Andrea Arcangeli <aarcange@redhat.com> Cc: David Woodhouse <dwmw@amazon.co.uk> Cc: Andi Kleen <ak@linux.intel.com> Cc: Dave Hansen <dave.hansen@intel.com> Cc: Casey Schaufler <casey.schaufler@intel.com> Cc: Asit Mallick <asit.k.mallick@intel.com> Cc: Arjan van de Ven <arjan@linux.intel.com> Cc: Jon Masters <jcm@redhat.com> Cc: Waiman Long <longman9394@gmail.com> Cc: Greg KH <gregkh@linuxfoundation.org> Cc: Dave Stewart <david.c.stewart@intel.com> Cc: Kees Cook <keescook@chromium.org> Link: https://lkml.kernel.org/r/20181125185005.866780996@linutronix.de [bwh: Backported to 4.4: - Renumber the PFA flags - Drop changes in tools/include/uapi/linux/prctl.h - Adjust filename] Signed-off-by: Ben Hutchings <ben@decadent.org.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| | | * x86/speculation: Rework SMT state changeThomas Gleixner2019-05-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit a74cfffb03b73d41e08f84c2e5c87dec0ce3db9f upstream. arch_smt_update() is only called when the sysfs SMT control knob is changed. This means that when SMT is enabled in the sysfs control knob the system is considered to have SMT active even if all siblings are offline. To allow finegrained control of the speculation mitigations, the actual SMT state is more interesting than the fact that siblings could be enabled. Rework the code, so arch_smt_update() is invoked from each individual CPU hotplug function, and simplify the update function while at it. Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Reviewed-by: Ingo Molnar <mingo@kernel.org> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Andy Lutomirski <luto@kernel.org> Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Jiri Kosina <jkosina@suse.cz> Cc: Tom Lendacky <thomas.lendacky@amd.com> Cc: Josh Poimboeuf <jpoimboe@redhat.com> Cc: Andrea Arcangeli <aarcange@redhat.com> Cc: David Woodhouse <dwmw@amazon.co.uk> Cc: Tim Chen <tim.c.chen@linux.intel.com> Cc: Andi Kleen <ak@linux.intel.com> Cc: Dave Hansen <dave.hansen@intel.com> Cc: Casey Schaufler <casey.schaufler@intel.com> Cc: Asit Mallick <asit.k.mallick@intel.com> Cc: Arjan van de Ven <arjan@linux.intel.com> Cc: Jon Masters <jcm@redhat.com> Cc: Waiman Long <longman9394@gmail.com> Cc: Greg KH <gregkh@linuxfoundation.org> Cc: Dave Stewart <david.c.stewart@intel.com> Cc: Kees Cook <keescook@chromium.org> Link: https://lkml.kernel.org/r/20181125185004.521974984@linutronix.de [bwh: Backported to 4.4: adjust context] Signed-off-by: Ben Hutchings <ben@decadent.org.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| | | * sched: Add sched_smt_active()Ben Hutchings2019-05-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add the sched_smt_active() function needed for some x86 speculation mitigations. This was introduced upstream by commits 1b568f0aabf2 "sched/core: Optimize SCHED_SMT", ba2591a5993e "sched/smt: Update sched_smt_present at runtime", c5511d03ec09 "sched/smt: Make sched_smt_present track topology", and 321a874a7ef8 "sched/smt: Expose sched_smt_present static key". The upstream implementation uses the static_key_{disable,enable}_cpuslocked() functions, which aren't practical to backport. Signed-off-by: Ben Hutchings <ben@decadent.org.uk> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: Ingo Molnar <mingo@kernel.org> Cc: Peter Zijlstra (Intel) <peterz@infradead.org> Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| | | * x86/speculation: Apply IBPB more strictly to avoid cross-process data leakJiri Kosina2019-05-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit dbfe2953f63c640463c630746cd5d9de8b2f63ae upstream. Currently, IBPB is only issued in cases when switching into a non-dumpable process, the rationale being to protect such 'important and security sensitive' processess (such as GPG) from data leaking into a different userspace process via spectre v2. This is however completely insufficient to provide proper userspace-to-userpace spectrev2 protection, as any process can poison branch buffers before being scheduled out, and the newly scheduled process immediately becomes spectrev2 victim. In order to minimize the performance impact (for usecases that do require spectrev2 protection), issue the barrier only in cases when switching between processess where the victim can't be ptraced by the potential attacker (as in such cases, the attacker doesn't have to bother with branch buffers at all). [ tglx: Split up PTRACE_MODE_NOACCESS_CHK into PTRACE_MODE_SCHED and PTRACE_MODE_IBPB to be able to do ptrace() context tracking reasonably fine-grained ] Fixes: 18bf3c3ea8 ("x86/speculation: Use Indirect Branch Prediction Barrier in context switch") Originally-by: Tim Chen <tim.c.chen@linux.intel.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz> Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Josh Poimboeuf <jpoimboe@redhat.com> Cc: Andrea Arcangeli <aarcange@redhat.com> Cc: "WoodhouseDavid" <dwmw@amazon.co.uk> Cc: Andi Kleen <ak@linux.intel.com> Cc: "SchauflerCasey" <casey.schaufler@intel.com> Link: https://lkml.kernel.org/r/nycvar.YFH.7.76.1809251437340.15880@cbobk.fhfr.pm Signed-off-by: Ben Hutchings <ben@decadent.org.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| | | * locking/atomics, asm-generic: Move some macros from <linux/bitops.h> to a ↵Will Deacon2019-05-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | new <linux/bits.h> file commit 8bd9cb51daac89337295b6f037b0486911e1b408 upstream. In preparation for implementing the asm-generic atomic bitops in terms of atomic_long_*(), we need to prevent <asm/atomic.h> implementations from pulling in <linux/bitops.h>. A common reason for this include is for the BITS_PER_BYTE definition, so move this and some other BIT() and masking macros into a new header file, <linux/bits.h>. Signed-off-by: Will Deacon <will.deacon@arm.com> Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org> Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: linux-arm-kernel@lists.infradead.org Cc: yamada.masahiro@socionext.com Link: https://lore.kernel.org/lkml/1529412794-17720-4-git-send-email-will.deacon@arm.com Signed-off-by: Ingo Molnar <mingo@kernel.org> Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Ben Hutchings <ben@decadent.org.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| | | * bitops: avoid integer overflow in GENMASK(_ULL)Matthias Kaehlcke2019-05-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit c32ee3d9abd284b4fcaacc250b101f93829c7bae upstream. GENMASK(_ULL) performs a left-shift of ~0UL(L), which technically results in an integer overflow. clang raises a warning if the overflow occurs in a preprocessor expression. Clear the low-order bits through a substraction instead of the left-shift to avoid the overflow. (akpm: no change in .text size in my testing) Link: http://lkml.kernel.org/r/20170803212020.24939-1-mka@chromium.org Signed-off-by: Matthias Kaehlcke <mka@chromium.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: Ben Hutchings <ben@decadent.org.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| | | * locking/static_keys: Provide DECLARE and well as DEFINE macrosTony Luck2019-05-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit b8fb03785d4de097507d0cf45873525e0ac4d2b2 upstream. We will need to provide declarations of static keys in header files. Provide DECLARE_STATIC_KEY_{TRUE,FALSE} macros. Signed-off-by: Tony Luck <tony.luck@intel.com> Acked-by: Borislav Petkov <bp@suse.de> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Dan Williams <dan.j.williams@intel.com> Cc: Linus Torvalds <torvalds@linux-foundation.org> Link: http://lkml.kernel.org/r/816881cf85bd3cf13385d212882618f38a3b5d33.1472754711.git.tony.luck@intel.com Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Ben Hutchings <ben@decadent.org.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| | | * USB: core: Fix bug caused by duplicate interface PM usage counterAlan Stern2019-05-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit c2b71462d294cf517a0bc6e4fd6424d7cee5596f upstream. The syzkaller fuzzer reported a bug in the USB hub driver which turned out to be caused by a negative runtime-PM usage counter. This allowed a hub to be runtime suspended at a time when the driver did not expect it. The symptom is a WARNING issued because the hub's status URB is submitted while it is already active: URB 0000000031fb463e submitted while active WARNING: CPU: 0 PID: 2917 at drivers/usb/core/urb.c:363 The negative runtime-PM usage count was caused by an unfortunate design decision made when runtime PM was first implemented for USB. At that time, USB class drivers were allowed to unbind from their interfaces without balancing the usage counter (i.e., leaving it with a positive count). The core code would take care of setting the counter back to 0 before allowing another driver to bind to the interface. Later on when runtime PM was implemented for the entire kernel, the opposite decision was made: Drivers were required to balance their runtime-PM get and put calls. In order to maintain backward compatibility, however, the USB subsystem adapted to the new implementation by keeping an independent usage counter for each interface and using it to automatically adjust the normal usage counter back to 0 whenever a driver was unbound. This approach involves duplicating information, but what is worse, it doesn't work properly in cases where a USB class driver delays decrementing the usage counter until after the driver's disconnect() routine has returned and the counter has been adjusted back to 0. Doing so would cause the usage counter to become negative. There's even a warning about this in the USB power management documentation! As it happens, this is exactly what the hub driver does. The kick_hub_wq() routine increments the runtime-PM usage counter, and the corresponding decrement is carried out by hub_event() in the context of the hub_wq work-queue thread. This work routine may sometimes run after the driver has been unbound from its interface, and when it does it causes the usage counter to go negative. It is not possible for hub_disconnect() to wait for a pending hub_event() call to finish, because hub_disconnect() is called with the device lock held and hub_event() acquires that lock. The only feasible fix is to reverse the original design decision: remove the duplicate interface-specific usage counter and require USB drivers to balance their runtime PM gets and puts. As far as I know, all existing drivers currently do this. Signed-off-by: Alan Stern <stern@rowland.harvard.edu> Reported-and-tested-by: syzbot+7634edaea4d0b341c625@syzkaller.appspotmail.com CC: <stable@vger.kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| | * | Merge upstream-f2fs-stable-linux-4.4.y into android-4.4Jaegeuk Kim2019-05-14
| | |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * origin/upstream-f2fs-stable-linux-4.4.y: f2fs: fix to avoid accessing xattr across the boundary f2fs: fix to avoid potential race on sbi->unusable_block_count access/update f2fs: add tracepoint for f2fs_filemap_fault() f2fs: introduce DATA_GENERIC_ENHANCE f2fs: fix to handle error in f2fs_disable_checkpoint() f2fs: remove redundant check in f2fs_file_write_iter() f2fs: fix to be aware of readonly device in write_checkpoint() f2fs: fix to skip recovery on readonly device f2fs: fix to consider multiple device for readonly check f2fs: relocate chksum_offset for large_nat_bitmap feature f2fs: allow unfixed f2fs_checkpoint.checksum_offset f2fs: Replace spaces with tab f2fs: insert space before the open parenthesis '(' f2fs: allow address pointer number of dnode aligning to specified size f2fs: introduce f2fs_read_single_page() for cleanup f2fs: mark is_extension_exist() inline f2fs: fix to set FI_UPDATE_WRITE correctly f2fs: fix to avoid panic in f2fs_inplace_write_data() f2fs: fix to do sanity check on valid block count of segment f2fs: fix to do sanity check on valid node/block count f2fs: fix to avoid panic in do_recover_data() f2fs: fix to do sanity check on free nid f2fs: fix to do checksum even if inode page is uptodate f2fs: fix to avoid panic in f2fs_remove_inode_page() f2fs: fix to clear dirty inode in error path of f2fs_iget() f2fs: remove new blank line of f2fs kernel message f2fs: fix wrong __is_meta_io() macro f2fs: fix to avoid panic in dec_valid_node_count() f2fs: fix to avoid panic in dec_valid_block_count() f2fs: fix to use inline space only if inline_xattr is enable f2fs: fix to retrieve inline xattr space f2fs: fix error path of recovery f2fs: fix to avoid deadloop in foreground GC f2fs: data: fix warning Using plain integer as NULL pointer f2fs: add tracepoint for f2fs_file_write_iter() f2fs: add comment for conditional compilation statement f2fs: fix potential recursive call when enabling data_flush f2fs: improve discard handling with multi-device volumes f2fs: Reduce zoned block device memory usage f2fs: Fix use of number of devices Change-Id: I5df9e9906428ef2eb852838ec4f598599e0e5c63 Signed-off-by: Jaegeuk Kim <jaegeuk@google.com>
| | | * | f2fs: allow unfixed f2fs_checkpoint.checksum_offsetChao Yu2019-05-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously, f2fs_checkpoint.checksum_offset points fixed position of f2fs_checkpoint structure: "#define CP_CHKSUM_OFFSET 4092" It is unnecessary, and it breaks the consecutiveness of nat and sit bitmap stored across checkpoint park block and payload blocks. This patch allows f2fs to handle unfixed .checksum_offset. In addition, for the case checksum value is stored in the middle of checkpoint park, calculating checksum value with superposition method like we did for inode_checksum. Signed-off-by: Chao Yu <yuchao0@huawei.com> Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
| | | * | f2fs: allow address pointer number of dnode aligning to specified sizeChao Yu2019-05-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch expands scalability of dnode layout, it allows address pointer number of dnode aligning to specified size (now, the size is one byte by default), and later the number can align to compress cluster size (1 << n bytes, n=[2,..)), it can avoid cluster acrossing two dnode, making design of compress meta layout simple. Signed-off-by: Chao Yu <yuchao0@huawei.com> Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
* | | | | Merge LA.UM.7.5.2.r1-02900-8x96.0 of ↵Davide Garberi2019-05-23
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://source.codeaurora.org/quic/la/kernel/msm-4.4 into lineage-16.0 406cc39b36ea update markings as per reference 24fb5a925534 Merge changes Icd8b7e33,I275cb471,I7f7420c7,Ib8552e66 into kernel.lnx.4.4.r37-rel 0766f7d0f3a2 Merge "dsp: afe: check for minimum size before payload access" into kernel.lnx.4.4.r37-rel a6207a7ffe45 msm: camera_v2: handle the error value returned during get clock. 342c54c1fff1 msm: ais: handle the error value returned during get clock 82b8bf6d259a msm: camera : Lock Implementation for avoid race condition. 98ca69a73a10 msm: ais : Lock Implementation for avoid race condition 0e3021b2b072 dsp: afe: check for minimum size before payload access 73b996d01780 Merge 22dc337a69af6c8b2aceecb3cbaef9049ef4fb73 on remote branch 22dc337a69af Merge "msm: mdss: mdp: mixer allocation for pluggable primary display" 830b7b50b385 Merge "msm: kgsl: Fix race condition while making page as dirty" cd6e1cd22ba4 Merge "diag: Validate command length against size of command structure" 7939ca71f88f Merge "misc: ksbridge: Add support for sending uevent with pid/vid" a4b2d7442de2 Merge "usb: misc: lvstest: allow specifying port for compliance mode" 0052d7171569 Merge "usb: misc: lvstest: add entry to place port in compliance mode" 64baae1cd96f Merge "usb: xhci: Support enabling of compliance mode for xhci 1.1" 5ee084c81212 Merge "drm/msm/sde: fix null pointer dereference" 40adef7ded1b Merge "Merge android-4.4.179 (aab9adb) into msm-4.4" 061ce1d939fa diag: Validate command length against size of command structure 2b163b082a57 misc: ksbridge: Add support for sending uevent with pid/vid 1d02b55727d5 msm: kgsl: Fix race condition while making page as dirty adebb0daf71c drm/msm/sde: fix null pointer dereference 589a44d37aba Merge "icnss: Add a flag to indicate PDR" d5f5ce057085 usb: misc: lvstest: allow specifying port for compliance mode 210c76dde3d4 usb: misc: lvstest: add entry to place port in compliance mode b989396a449f usb: xhci: Support enabling of compliance mode for xhci 1.1 57cc803c86c0 Merge "defconfig: msm: Enable USB3 Link Layer test driver for 8996 Auto" d65b615af64f Merge "ARM: dts: msm: Add "qcom,core-dev-table" for msm8996 target" 34c8ac8b2bda Merge "soc: qcom: secure_buffer: Process large SG tables in batches" b08dd67c711f icnss: Add a flag to indicate PDR 32ebd2b51c3a ARM: dts: msm: Add "qcom,core-dev-table" for msm8996 target 680e896288b6 soc: qcom: secure_buffer: Process large SG tables in batches 43808cc02cbc Merge "msm: adm: validate ADSP payload size before access" f4d62ca185dd cnss2: Expose idle restart/shutdown APIs 5a03c1bc9c2b Merge "ARM: dts: msm: move bluetooth node under /vendor for 8996 platform" b5b335db32a1 drivers: qpnp-smbcharger: Fix USB3.0 device does not enumerate in SS mode 52fbc05fb3f3 ARM: dts: msm: move bluetooth node under /vendor for 8996 platform 325632da862b Merge android-4.4.179 (aab9adb) into msm-4.4 78a2fca7feac Merge "drm/msm: ekms: Wait for a vblank in ekms disable" 1a886ff9a1ed Merge "diag: Check buffer size against command structure size" 9a7a4b510d9f diag: Check buffer size against command structure size f175c863efb4 Merge "msm: ipa3: add check to load gsi fw once" 67fabb639087 msm: ipa3: add check to load gsi fw once 5b134f53b323 msm: adm: validate ADSP payload size before access 33ddfc515d05 Merge "msm: ipa: Move NAT invalid protocol define to uapi" aab9adb4b81b Merge 4.4.179 into android-4.4 ecfba02e8979 Merge "cfg80211/nl80211: Offload OWE processing to user space in AP mode" 744acb857e4b Merge "dsp: afe: check for payload size before payload access" f3cf97aa3cfd msm: ipa: Move NAT invalid protocol define to uapi f12b2d3f77a5 cnss2: Expose PCIe DRV connection status 641f454cb5de dsp: afe: check for payload size before payload access d9f2f007f3f0 Merge "diag: dci: Validate dci response length before parsing" 5875149a400a Linux 4.4.179 e6ca59daafd0 kernel/sysctl.c: fix out-of-bounds access when setting file-max 70a0882cd600 Revert "locking/lockdep: Add debug_locks check in __lock_downgrade()" abc81720ea87 ALSA: info: Fix racy addition/deletion of nodes 0e4d4e0d6ba9 mm/vmstat.c: fix /proc/vmstat format for CONFIG_DEBUG_TLBFLUSH=y CONFIG_SMP=n 4088997e5dc1 device_cgroup: fix RCU imbalance in error case 20fdfad30c43 sched/fair: Limit sched_cfs_period_timer() loop to avoid hard lockup 568f6b28743c Revert "kbuild: use -Oz instead of -Os when using clang" 9090d691a874 mac80211: do not call driver wake_tx_queue op during reconfig e70a2d376c59 kprobes: Fix error check when reusing optimized probes abb5b93fe0f5 kprobes: Mark ftrace mcount handler functions nokprobe 3dda8d29b56e x86/kprobes: Verify stack frame on kretprobe bc76b595cd13 arm64: futex: Restore oldval initialization to work around buggy compilers 7977328f4265 crypto: x86/poly1305 - fix overflow during partial reduction f94135f92d97 ALSA: core: Fix card races between register and disconnect 0241c6f9f56c staging: comedi: ni_usb6501: Fix possible double-free of ->usb_rx_buf 9f2bf97bb6c3 staging: comedi: ni_usb6501: Fix use of uninitialized mutex 1d149c6cfcd1 staging: comedi: vmk80xx: Fix possible double-free of ->usb_rx_buf 32ae16ff1eaf staging: comedi: vmk80xx: Fix use of uninitialized semaphore dc4f96499d43 io: accel: kxcjk1013: restore the range after resume. 07921e3cb1ea iio: adc: at91: disable adc channel interrupt in timeout case c69e21be54b4 iio: ad_sigma_delta: select channel when reading register e20204c43c0b iio/gyro/bmg160: Use millidegrees for temperature scale eaa303a2d65d KVM: x86: Don't clear EFER during SMM transitions for 32-bit vCPU 83a98463d6f9 tpm/tpm_i2c_atmel: Return -E2BIG when the transfer is incomplete 5721b1717bd6 modpost: file2alias: check prototype of handler 5a25b6f93f84 modpost: file2alias: go back to simple devtable lookup e9a60ab1609a crypto: crypto4xx - properly set IV after de- and encrypt faac81f7cb34 ipv4: ensure rcu_read_lock() in ipv4_link_failure() fbf569d2beee ipv4: recompile ip options in ipv4_link_failure b6d37bba0f7a tcp: tcp_grow_window() needs to respect tcp_space() b1aaee5a97c9 net: fou: do not use guehdr after iptunnel_pull_offloads in gue_udp_recv dc20066a631c net: bridge: multicast: use rcu to access port list from br_multicast_start_querier 423ffcd5136c net: atm: Fix potential Spectre v1 vulnerabilities d8e18cccd25e bonding: fix event handling for stacked bonds 9ca0f944a76b appletalk: Fix compile regression 54a07fff4b21 ovl: fix uid/gid when creating over whiteout df57807765dd tpm/tpm_crb: Avoid unaligned reads in crb_recv() c947b45f2e0c include/linux/swap.h: use offsetof() instead of custom __swapoffset macro aaedb76c488e lib/div64.c: off by one in shift d49a75f5add4 appletalk: Fix use-after-free in atalk_proc_exit 4528b128bbbc ARM: 8839/1: kprobe: make patch_lock a raw_spinlock_t 3d1167107004 iommu/dmar: Fix buffer overflow during PCI bus notification cc8c23ad5ec8 crypto: sha512/arm - fix crash bug in Thumb2 build 8a2dd49a63c7 crypto: sha256/arm - fix crash bug in Thumb2 build 740562f32daa cifs: fallback to older infolevels on findfirst queryinfo retry c49c3925a846 ACPI / SBS: Fix GPE storm on recent MacBookPro's 1e3975db46da ARM: samsung: Limit SAMSUNG_PM_CHECK config option to non-Exynos platforms 3e56f3036b4d serial: uartps: console_setup() can't be placed to init section 045aac482ad9 f2fs: fix to do sanity check with current segment number 6891371a2d57 9p locks: add mount option for lock retry interval ff831803330c 9p: do not trust pdu content for stat item size ec759c0015fb rsi: improve kernel thread handling to fix kernel panic 48fda9500637 ext4: prohibit fstrim in norecovery mode 0f2d3133530a fix incorrect error code mapping for OBJECTID_NOT_FOUND 35ee305cfe4c x86/hw_breakpoints: Make default case in hw_breakpoint_arch_parse() return an error 158c4cb0d686 iommu/vt-d: Check capability before disabling protected memory 1a883611e2f2 x86/cpu/cyrix: Use correct macros for Cyrix calls on Geode processors c2dc2fdc0cd1 x86/hpet: Prevent potential NULL pointer dereference b17b42fbad1b perf tests: Fix a memory leak in test__perf_evsel__tp_sched_test() 98977a809cda perf tests: Fix a memory leak of cpu_map object in the openat_syscall_event_on_all_cpus test 8b89e3c3cf7f perf evsel: Free evsel->counts in perf_evsel__exit() f0023871b339 perf top: Fix error handling in cmd_top() 63e03efad5ec tools/power turbostat: return the exit status of a command 3a3e67537041 thermal/int340x_thermal: fix mode setting 25c001949c93 thermal/int340x_thermal: Add additional UUIDs 149f72ff296e ALSA: opl3: fix mismatch between snd_opl3_drum_switch definition and declaration 9bb0b8e34607 mmc: davinci: remove extraneous __init annotation b33c00770b36 IB/mlx4: Fix race condition between catas error reset and aliasguid flows 0a2741cd5269 ALSA: sb8: add a check for request_region 574469ec6dcf ALSA: echoaudio: add a check for ioremap_nocache 0e9bb07a374a ext4: report real fs size after failed resize d8ef8e9465ef ext4: add missing brelse() in add_new_gdb_meta_bg() e92dc325a560 perf/core: Restore mmap record type correctly 653ee8df1f32 PCI: Add function 1 DMA alias quirk for Marvell 9170 SATA controller 34419534a70a xtensa: fix return_address e15f3c34844e sched/fair: Do not re-read ->h_load_next during hierarchical load calculation c082a57d41de xen: Prevent buffer overflow in privcmd ioctl 442ebc685261 arm64: futex: Fix FUTEX_WAKE_OP atomic ops with non-zero result value e9b63a38da24 ARM: dts: at91: Fix typo in ISC_D0 on PC9 39aecae01dd2 genirq: Respect IRQCHIP_SKIP_SET_WAKE in irq_chip_set_wake_parent() f449309b7f43 block: do not leak memory in bio_copy_user_iov() ad344fb86201 ASoC: fsl_esai: fix channel swap issue when stream starts 4e843163c6d9 include/linux/bitrev.h: fix constant bitrev ae9981cee7b3 ALSA: seq: Fix OOB-reads from strlcpy 3efb978c3c73 ip6_tunnel: Match to ARPHRD_TUNNEL6 for dev type 8ed95ff262aa net: ethtool: not call vzalloc for zero sized memory request 0ede14314f6d netns: provide pure entropy for net_hash_mix() 68337354043a tcp: Ensure DCTCP reacts to losses 03328716cb33 sctp: initialize _pad of sockaddr_in before copying to user memory 1edf53ecd2ae qmi_wwan: add Olicard 600 91d95c98c6c2 openvswitch: fix flow actions reallocation c4e97b06cfdc net: rds: force to destroy connection if t_sock is NULL in rds_tcp_kill_sock(). a04dde4e15d7 ipv6: sit: reset ip header pointer in ipip6_rcv c0aeeafae944 ipv6: Fix dangling pointer when ipv6 fragment c9b31a7e6726 tty: ldisc: add sysctl to prevent autoloading of ldiscs c3e76f072adb tty: mark Siemens R3964 line discipline as BROKEN 780e236c3737 lib/string.c: implement a basic bcmp 7c45b45fd6e9 x86/vdso: Drop implicit common-page-size linker flag 79739ad2d0ac x86: vdso: Use $LD instead of $CC to link b79e268b1fb4 x86/build: Specify elf_i386 linker emulation explicitly for i386 objects a34640de4046 kbuild: clang: choose GCC_TOOLCHAIN_DIR not on LD 1eb40df35d99 binfmt_elf: switch to new creds when switching to new mm 7ad57b32aa08 drm/dp/mst: Configure no_stop_bit correctly for remote i2c xfers 04ce0e76959c dmaengine: tegra: avoid overflow of byte tracking 589562152f36 x86/build: Mark per-CPU symbols as absolute explicitly for LLD 517fbf72718e wlcore: Fix memory leak in case wl12xx_fetch_firmware failure f2606873984e regulator: act8865: Fix act8600_sudcdc_voltage_ranges setting 98bbbf661567 media: s5p-jpeg: Check for fmt_ver_flag when doing fmt enumeration 421d2aae103c netfilter: physdev: relax br_netfilter dependency 10fc10c3270d dmaengine: imx-dma: fix warning comparison of distinct pointer types e5cb8ab4b0e0 hpet: Fix missing '=' character in the __setup() code of hpet_mmap_enable cdc7a66f679e soc/tegra: fuse: Fix illegal free of IO base address 407f1a8b8d7d hwrng: virtio - Avoid repeated init of completion a6adffa0fff4 media: mt9m111: set initial frame size other than 0x0 d1ba82ccffab tty: increase the default flip buffer limit to 2*640K d9c190a5ee92 ARM: avoid Cortex-A9 livelock on tight dmb loops c627e297b9b6 mt7601u: bump supported EEPROM version 5735cd4e0c78 soc: qcom: gsbi: Fix error handling in gsbi_probe() b396b5e89be6 ASoC: fsl-asoc-card: fix object reference leaks in fsl_asoc_card_probe 46ff76bd4ea1 cdrom: Fix race condition in cdrom_sysctl_register 6b8382afa7af fbdev: fbmem: fix memory access if logo is bigger than the screen 267da08ea979 bcache: improve sysfs_strtoul_clamp() 97f00d95dfb0 bcache: fix input overflow to sequential_cutoff d775179e00cd bcache: fix input overflow to cache set sysfs file io_error_halflife b25147b49301 ALSA: PCM: check if ops are defined before suspending PCM b67ef52116de ARM: 8833/1: Ensure that NEON code always compiles with Clang 7d4d46f51d6c kprobes: Prohibit probing on bsearch() f1289edae514 leds: lp55xx: fix null deref on firmware load failure abcbad869e68 media: mx2_emmaprp: Correct return type for mem2mem buffer helpers 0bc5f939031c media: s5p-g2d: Correct return type for mem2mem buffer helpers 9f127b7284eb media: s5p-jpeg: Correct return type for mem2mem buffer helpers 3967d2d6bcc9 media: sh_veu: Correct return type for mem2mem buffer helpers 853e3862a8d0 SoC: imx-sgtl5000: add missing put_device() 7a3626330297 perf test: Fix failure of 'evsel-tp-sched' test on s390 09a6db51dcb4 scsi: megaraid_sas: return error when create DMA pool failed 98f7f1cf74e4 IB/mlx4: Increase the timeout for CM cache f8d1bf871805 e1000e: Fix -Wformat-truncation warnings 3bd631e5360e mmc: omap: fix the maximum timeout setting 1c2bfc4636de ARM: 8840/1: use a raw_spinlock_t in unwind 2f36d3ea8c55 coresight: etm4x: Add support to enable ETMv4.2 2ad89a6a0dba scsi: core: replace GFP_ATOMIC with GFP_KERNEL in scsi_scan.c f3666bfc4bc4 usb: chipidea: Grab the (legacy) USB PHY by phandle first be8e9e9ebffb tools lib traceevent: Fix buffer overflow in arg_eval 2e5086f3ac6f fs: fix guard_bio_eod to check for real EOD errors 8f983d2cbfad cifs: Fix NULL pointer dereference of devname 4a430ac683b3 dm thin: add sanity checks to thin-pool and external snapshot creation 1605df0045d9 cifs: use correct format characters 1eaab115dc7c fs/file.c: initialize init_files.resize_wait 9b7e7899386f f2fs: do not use mutex lock in atomic context 6c96456d9302 ocfs2: fix a panic problem caused by o2cb_ctl b1399497b701 mm/slab.c: kmemleak no scan alien caches cb4d6cd27604 mm/vmalloc.c: fix kernel BUG at mm/vmalloc.c:512! 2ea83494ce11 mm/page_ext.c: fix an imbalance with kmemleak 4970a8ba94ca mm/cma.c: cma_declare_contiguous: correct err handling 722a15d798ff enic: fix build warning without CONFIG_CPUMASK_OFFSTACK cf503f1b938f sysctl: handle overflow for file-max 28833fee9f4a gpio: gpio-omap: fix level interrupt idling f7b7a59b47a0 tracing: kdb: Fix ftdump to not sleep 09f4e69e09f5 h8300: use cc-cross-prefix instead of hardcoding h8300-unknown-linux- f6e4bc5003ff CIFS: fix POSIX lock leak and invalid ptr deref a6efba2fc33b tty/serial: atmel: RS485 HD w/DMA: enable RX after TX is stopped 59ae59920af8 Bluetooth: Fix decrementing reference count twice in releasing socket 02bfc06ca2fa i2c: core-smbus: prevent stack corruption on read I2C_BLOCK_DATA b3b489eea284 mm: mempolicy: make mbind() return -EIO when MPOL_MF_STRICT is specified a526c14d841b tty/serial: atmel: Add is_half_duplex helper 6f88ce1ff225 lib/int_sqrt: optimize initial value compute 3f44dacd111a ext4: cleanup bh release code in ext4_ind_remove_space() 20df60004a3a arm64: debug: Ensure debug handlers check triggering exception level a930f8ce2003 arm64: debug: Don't propagate UNKNOWN FAR into si_code for debug signals c1cd71e6ee5e diag: dci: Validate dci response length before parsing 2f026ab7c4c7 Merge "msm: wlan: Update regulatory rules for JM" cb95c3b72b79 msm: wlan: Update regulatory rules for JM ef08a221c531 Merge "msm: wlan: Update regulatory database" 220e29e977aa msm: wlan: Update regulatory database d7d16e7e87d2 Merge "defconfig: msm: Enable MFSE QMI client driver on automotive" 3cb076a33884 Merge "soc: qcom: Add QMI client driver for MFSE service" c5319c46a1c1 Merge "ARM: dts: msm: Limit USB3 maximum speed to high for MSM8996 ADP" 1ba1a2f71fc1 defconfig: msm: Enable USB3 Link Layer test driver for 8996 Auto 748303a5169c Merge "dsp: q6core: validate payload size before memory copy" 9f6ce3043e2e Merge "msm: ext_disp: re-initialize hpd completion before signaling events" d3a9050f4f7f msm: ext_disp: re-initialize hpd completion before signaling events 3d1854afebdb Merge "diag: Prevent out of bound access while getting build mask" 57a9ae0f5688 Merge "diag: Check command size against the minimum before parsing" 5c6e98d4e4da Merge "diag: dci: Add missing length check before parsing the buffer" ef3ade93af0f diag: Prevent out of bound access while getting build mask 337a4a87989e diag: Check command size against the minimum before parsing c2b12fecfa29 diag: dci: Add missing length check before parsing the buffer 0ef01d4c95a8 dsp: q6core: validate payload size before memory copy 38d4aa7f0277 msm: For camera driver Adding null checks to uninitialize 147ed3c774d9 Merge "Revert "cfg80211/nl80211: Offload OWE processing to user space"" 523d657b6d08 drm/msm: ekms: Wait for a vblank in ekms disable 633bf5e4dbca cfg80211/nl80211: Offload OWE processing to user space in AP mode 8a44273ed583 Revert "cfg80211/nl80211: Offload OWE processing to user space" f555a6f2d830 ARM: dts: msm: Limit USB3 maximum speed to high for MSM8996 ADP d680847c5813 defconfig: msm: Enable MFSE QMI client driver on automotive a419e9823ca9 soc: qcom: Add QMI client driver for MFSE service 74f9ab0d3ed3 Make arm64 serial port config compatible with crosvm e85ceffc863d msm: mdss: mdp: mixer allocation for pluggable primary display 07797f0ce789 Fix merge issue with 4.4.178 abe4979abd87 Fix merge issue with 4.4.177 aa922bed25d4 ANDROID: cuttlefish_defconfig: Enable CONFIG_OVERLAY_FS Change-Id: I0eca09f00b012afd72006541b20fb23969c4531e
| * | | | Merge android-4.4.179 (aab9adb) into msm-4.4Srinivasarao P2019-05-02
| |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * refs/heads/tmp-aab9adb Linux 4.4.179 kernel/sysctl.c: fix out-of-bounds access when setting file-max Revert "locking/lockdep: Add debug_locks check in __lock_downgrade()" ALSA: info: Fix racy addition/deletion of nodes mm/vmstat.c: fix /proc/vmstat format for CONFIG_DEBUG_TLBFLUSH=y CONFIG_SMP=n device_cgroup: fix RCU imbalance in error case sched/fair: Limit sched_cfs_period_timer() loop to avoid hard lockup Revert "kbuild: use -Oz instead of -Os when using clang" mac80211: do not call driver wake_tx_queue op during reconfig kprobes: Fix error check when reusing optimized probes kprobes: Mark ftrace mcount handler functions nokprobe x86/kprobes: Verify stack frame on kretprobe arm64: futex: Restore oldval initialization to work around buggy compilers crypto: x86/poly1305 - fix overflow during partial reduction ALSA: core: Fix card races between register and disconnect staging: comedi: ni_usb6501: Fix possible double-free of ->usb_rx_buf staging: comedi: ni_usb6501: Fix use of uninitialized mutex staging: comedi: vmk80xx: Fix possible double-free of ->usb_rx_buf staging: comedi: vmk80xx: Fix use of uninitialized semaphore io: accel: kxcjk1013: restore the range after resume. iio: adc: at91: disable adc channel interrupt in timeout case iio: ad_sigma_delta: select channel when reading register iio/gyro/bmg160: Use millidegrees for temperature scale KVM: x86: Don't clear EFER during SMM transitions for 32-bit vCPU tpm/tpm_i2c_atmel: Return -E2BIG when the transfer is incomplete modpost: file2alias: check prototype of handler modpost: file2alias: go back to simple devtable lookup crypto: crypto4xx - properly set IV after de- and encrypt ipv4: ensure rcu_read_lock() in ipv4_link_failure() ipv4: recompile ip options in ipv4_link_failure tcp: tcp_grow_window() needs to respect tcp_space() net: fou: do not use guehdr after iptunnel_pull_offloads in gue_udp_recv net: bridge: multicast: use rcu to access port list from br_multicast_start_querier net: atm: Fix potential Spectre v1 vulnerabilities bonding: fix event handling for stacked bonds appletalk: Fix compile regression ovl: fix uid/gid when creating over whiteout tpm/tpm_crb: Avoid unaligned reads in crb_recv() include/linux/swap.h: use offsetof() instead of custom __swapoffset macro lib/div64.c: off by one in shift appletalk: Fix use-after-free in atalk_proc_exit ARM: 8839/1: kprobe: make patch_lock a raw_spinlock_t iommu/dmar: Fix buffer overflow during PCI bus notification crypto: sha512/arm - fix crash bug in Thumb2 build crypto: sha256/arm - fix crash bug in Thumb2 build cifs: fallback to older infolevels on findfirst queryinfo retry ACPI / SBS: Fix GPE storm on recent MacBookPro's ARM: samsung: Limit SAMSUNG_PM_CHECK config option to non-Exynos platforms serial: uartps: console_setup() can't be placed to init section f2fs: fix to do sanity check with current segment number 9p locks: add mount option for lock retry interval 9p: do not trust pdu content for stat item size rsi: improve kernel thread handling to fix kernel panic ext4: prohibit fstrim in norecovery mode fix incorrect error code mapping for OBJECTID_NOT_FOUND x86/hw_breakpoints: Make default case in hw_breakpoint_arch_parse() return an error iommu/vt-d: Check capability before disabling protected memory x86/cpu/cyrix: Use correct macros for Cyrix calls on Geode processors x86/hpet: Prevent potential NULL pointer dereference perf tests: Fix a memory leak in test__perf_evsel__tp_sched_test() perf tests: Fix a memory leak of cpu_map object in the openat_syscall_event_on_all_cpus test perf evsel: Free evsel->counts in perf_evsel__exit() perf top: Fix error handling in cmd_top() tools/power turbostat: return the exit status of a command thermal/int340x_thermal: fix mode setting thermal/int340x_thermal: Add additional UUIDs ALSA: opl3: fix mismatch between snd_opl3_drum_switch definition and declaration mmc: davinci: remove extraneous __init annotation IB/mlx4: Fix race condition between catas error reset and aliasguid flows ALSA: sb8: add a check for request_region ALSA: echoaudio: add a check for ioremap_nocache ext4: report real fs size after failed resize ext4: add missing brelse() in add_new_gdb_meta_bg() perf/core: Restore mmap record type correctly PCI: Add function 1 DMA alias quirk for Marvell 9170 SATA controller xtensa: fix return_address sched/fair: Do not re-read ->h_load_next during hierarchical load calculation xen: Prevent buffer overflow in privcmd ioctl arm64: futex: Fix FUTEX_WAKE_OP atomic ops with non-zero result value ARM: dts: at91: Fix typo in ISC_D0 on PC9 genirq: Respect IRQCHIP_SKIP_SET_WAKE in irq_chip_set_wake_parent() block: do not leak memory in bio_copy_user_iov() ASoC: fsl_esai: fix channel swap issue when stream starts include/linux/bitrev.h: fix constant bitrev ALSA: seq: Fix OOB-reads from strlcpy ip6_tunnel: Match to ARPHRD_TUNNEL6 for dev type net: ethtool: not call vzalloc for zero sized memory request netns: provide pure entropy for net_hash_mix() tcp: Ensure DCTCP reacts to losses sctp: initialize _pad of sockaddr_in before copying to user memory qmi_wwan: add Olicard 600 openvswitch: fix flow actions reallocation net: rds: force to destroy connection if t_sock is NULL in rds_tcp_kill_sock(). ipv6: sit: reset ip header pointer in ipip6_rcv ipv6: Fix dangling pointer when ipv6 fragment tty: ldisc: add sysctl to prevent autoloading of ldiscs tty: mark Siemens R3964 line discipline as BROKEN lib/string.c: implement a basic bcmp x86/vdso: Drop implicit common-page-size linker flag x86: vdso: Use $LD instead of $CC to link x86/build: Specify elf_i386 linker emulation explicitly for i386 objects kbuild: clang: choose GCC_TOOLCHAIN_DIR not on LD binfmt_elf: switch to new creds when switching to new mm drm/dp/mst: Configure no_stop_bit correctly for remote i2c xfers dmaengine: tegra: avoid overflow of byte tracking x86/build: Mark per-CPU symbols as absolute explicitly for LLD wlcore: Fix memory leak in case wl12xx_fetch_firmware failure regulator: act8865: Fix act8600_sudcdc_voltage_ranges setting media: s5p-jpeg: Check for fmt_ver_flag when doing fmt enumeration netfilter: physdev: relax br_netfilter dependency dmaengine: imx-dma: fix warning comparison of distinct pointer types hpet: Fix missing '=' character in the __setup() code of hpet_mmap_enable soc/tegra: fuse: Fix illegal free of IO base address hwrng: virtio - Avoid repeated init of completion media: mt9m111: set initial frame size other than 0x0 tty: increase the default flip buffer limit to 2*640K ARM: avoid Cortex-A9 livelock on tight dmb loops mt7601u: bump supported EEPROM version soc: qcom: gsbi: Fix error handling in gsbi_probe() ASoC: fsl-asoc-card: fix object reference leaks in fsl_asoc_card_probe cdrom: Fix race condition in cdrom_sysctl_register fbdev: fbmem: fix memory access if logo is bigger than the screen bcache: improve sysfs_strtoul_clamp() bcache: fix input overflow to sequential_cutoff bcache: fix input overflow to cache set sysfs file io_error_halflife ALSA: PCM: check if ops are defined before suspending PCM ARM: 8833/1: Ensure that NEON code always compiles with Clang kprobes: Prohibit probing on bsearch() leds: lp55xx: fix null deref on firmware load failure media: mx2_emmaprp: Correct return type for mem2mem buffer helpers media: s5p-g2d: Correct return type for mem2mem buffer helpers media: s5p-jpeg: Correct return type for mem2mem buffer helpers media: sh_veu: Correct return type for mem2mem buffer helpers SoC: imx-sgtl5000: add missing put_device() perf test: Fix failure of 'evsel-tp-sched' test on s390 scsi: megaraid_sas: return error when create DMA pool failed IB/mlx4: Increase the timeout for CM cache e1000e: Fix -Wformat-truncation warnings mmc: omap: fix the maximum timeout setting ARM: 8840/1: use a raw_spinlock_t in unwind coresight: etm4x: Add support to enable ETMv4.2 scsi: core: replace GFP_ATOMIC with GFP_KERNEL in scsi_scan.c usb: chipidea: Grab the (legacy) USB PHY by phandle first tools lib traceevent: Fix buffer overflow in arg_eval fs: fix guard_bio_eod to check for real EOD errors cifs: Fix NULL pointer dereference of devname dm thin: add sanity checks to thin-pool and external snapshot creation cifs: use correct format characters fs/file.c: initialize init_files.resize_wait f2fs: do not use mutex lock in atomic context ocfs2: fix a panic problem caused by o2cb_ctl mm/slab.c: kmemleak no scan alien caches mm/vmalloc.c: fix kernel BUG at mm/vmalloc.c:512! mm/page_ext.c: fix an imbalance with kmemleak mm/cma.c: cma_declare_contiguous: correct err handling enic: fix build warning without CONFIG_CPUMASK_OFFSTACK sysctl: handle overflow for file-max gpio: gpio-omap: fix level interrupt idling tracing: kdb: Fix ftdump to not sleep h8300: use cc-cross-prefix instead of hardcoding h8300-unknown-linux- CIFS: fix POSIX lock leak and invalid ptr deref tty/serial: atmel: RS485 HD w/DMA: enable RX after TX is stopped Bluetooth: Fix decrementing reference count twice in releasing socket i2c: core-smbus: prevent stack corruption on read I2C_BLOCK_DATA mm: mempolicy: make mbind() return -EIO when MPOL_MF_STRICT is specified tty/serial: atmel: Add is_half_duplex helper lib/int_sqrt: optimize initial value compute ext4: cleanup bh release code in ext4_ind_remove_space() arm64: debug: Ensure debug handlers check triggering exception level arm64: debug: Don't propagate UNKNOWN FAR into si_code for debug signals Make arm64 serial port config compatible with crosvm Fix merge issue with 4.4.178 Fix merge issue with 4.4.177 ANDROID: cuttlefish_defconfig: Enable CONFIG_OVERLAY_FS Change-Id: I0d6e7b00f0198867803d5fe305ce13e205cc7518 Signed-off-by: Srinivasarao P <spathi@codeaurora.org>
| | * | | Merge 4.4.179 into android-4.4Greg Kroah-Hartman2019-04-30
| | |\ \ \ | | | | |/ | | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Changes in 4.4.179 arm64: debug: Don't propagate UNKNOWN FAR into si_code for debug signals arm64: debug: Ensure debug handlers check triggering exception level ext4: cleanup bh release code in ext4_ind_remove_space() lib/int_sqrt: optimize initial value compute tty/serial: atmel: Add is_half_duplex helper mm: mempolicy: make mbind() return -EIO when MPOL_MF_STRICT is specified i2c: core-smbus: prevent stack corruption on read I2C_BLOCK_DATA Bluetooth: Fix decrementing reference count twice in releasing socket tty/serial: atmel: RS485 HD w/DMA: enable RX after TX is stopped CIFS: fix POSIX lock leak and invalid ptr deref h8300: use cc-cross-prefix instead of hardcoding h8300-unknown-linux- tracing: kdb: Fix ftdump to not sleep gpio: gpio-omap: fix level interrupt idling sysctl: handle overflow for file-max enic: fix build warning without CONFIG_CPUMASK_OFFSTACK mm/cma.c: cma_declare_contiguous: correct err handling mm/page_ext.c: fix an imbalance with kmemleak mm/vmalloc.c: fix kernel BUG at mm/vmalloc.c:512! mm/slab.c: kmemleak no scan alien caches ocfs2: fix a panic problem caused by o2cb_ctl f2fs: do not use mutex lock in atomic context fs/file.c: initialize init_files.resize_wait cifs: use correct format characters dm thin: add sanity checks to thin-pool and external snapshot creation cifs: Fix NULL pointer dereference of devname fs: fix guard_bio_eod to check for real EOD errors tools lib traceevent: Fix buffer overflow in arg_eval usb: chipidea: Grab the (legacy) USB PHY by phandle first scsi: core: replace GFP_ATOMIC with GFP_KERNEL in scsi_scan.c coresight: etm4x: Add support to enable ETMv4.2 ARM: 8840/1: use a raw_spinlock_t in unwind mmc: omap: fix the maximum timeout setting e1000e: Fix -Wformat-truncation warnings IB/mlx4: Increase the timeout for CM cache scsi: megaraid_sas: return error when create DMA pool failed perf test: Fix failure of 'evsel-tp-sched' test on s390 SoC: imx-sgtl5000: add missing put_device() media: sh_veu: Correct return type for mem2mem buffer helpers media: s5p-jpeg: Correct return type for mem2mem buffer helpers media: s5p-g2d: Correct return type for mem2mem buffer helpers media: mx2_emmaprp: Correct return type for mem2mem buffer helpers leds: lp55xx: fix null deref on firmware load failure kprobes: Prohibit probing on bsearch() ARM: 8833/1: Ensure that NEON code always compiles with Clang ALSA: PCM: check if ops are defined before suspending PCM bcache: fix input overflow to cache set sysfs file io_error_halflife bcache: fix input overflow to sequential_cutoff bcache: improve sysfs_strtoul_clamp() fbdev: fbmem: fix memory access if logo is bigger than the screen cdrom: Fix race condition in cdrom_sysctl_register ASoC: fsl-asoc-card: fix object reference leaks in fsl_asoc_card_probe soc: qcom: gsbi: Fix error handling in gsbi_probe() mt7601u: bump supported EEPROM version ARM: avoid Cortex-A9 livelock on tight dmb loops tty: increase the default flip buffer limit to 2*640K media: mt9m111: set initial frame size other than 0x0 hwrng: virtio - Avoid repeated init of completion soc/tegra: fuse: Fix illegal free of IO base address hpet: Fix missing '=' character in the __setup() code of hpet_mmap_enable dmaengine: imx-dma: fix warning comparison of distinct pointer types netfilter: physdev: relax br_netfilter dependency media: s5p-jpeg: Check for fmt_ver_flag when doing fmt enumeration regulator: act8865: Fix act8600_sudcdc_voltage_ranges setting wlcore: Fix memory leak in case wl12xx_fetch_firmware failure x86/build: Mark per-CPU symbols as absolute explicitly for LLD dmaengine: tegra: avoid overflow of byte tracking drm/dp/mst: Configure no_stop_bit correctly for remote i2c xfers binfmt_elf: switch to new creds when switching to new mm kbuild: clang: choose GCC_TOOLCHAIN_DIR not on LD x86/build: Specify elf_i386 linker emulation explicitly for i386 objects x86: vdso: Use $LD instead of $CC to link x86/vdso: Drop implicit common-page-size linker flag lib/string.c: implement a basic bcmp tty: mark Siemens R3964 line discipline as BROKEN tty: ldisc: add sysctl to prevent autoloading of ldiscs ipv6: Fix dangling pointer when ipv6 fragment ipv6: sit: reset ip header pointer in ipip6_rcv net: rds: force to destroy connection if t_sock is NULL in rds_tcp_kill_sock(). openvswitch: fix flow actions reallocation qmi_wwan: add Olicard 600 sctp: initialize _pad of sockaddr_in before copying to user memory tcp: Ensure DCTCP reacts to losses netns: provide pure entropy for net_hash_mix() net: ethtool: not call vzalloc for zero sized memory request ip6_tunnel: Match to ARPHRD_TUNNEL6 for dev type ALSA: seq: Fix OOB-reads from strlcpy include/linux/bitrev.h: fix constant bitrev ASoC: fsl_esai: fix channel swap issue when stream starts block: do not leak memory in bio_copy_user_iov() genirq: Respect IRQCHIP_SKIP_SET_WAKE in irq_chip_set_wake_parent() ARM: dts: at91: Fix typo in ISC_D0 on PC9 arm64: futex: Fix FUTEX_WAKE_OP atomic ops with non-zero result value xen: Prevent buffer overflow in privcmd ioctl sched/fair: Do not re-read ->h_load_next during hierarchical load calculation xtensa: fix return_address PCI: Add function 1 DMA alias quirk for Marvell 9170 SATA controller perf/core: Restore mmap record type correctly ext4: add missing brelse() in add_new_gdb_meta_bg() ext4: report real fs size after failed resize ALSA: echoaudio: add a check for ioremap_nocache ALSA: sb8: add a check for request_region IB/mlx4: Fix race condition between catas error reset and aliasguid flows mmc: davinci: remove extraneous __init annotation ALSA: opl3: fix mismatch between snd_opl3_drum_switch definition and declaration thermal/int340x_thermal: Add additional UUIDs thermal/int340x_thermal: fix mode setting tools/power turbostat: return the exit status of a command perf top: Fix error handling in cmd_top() perf evsel: Free evsel->counts in perf_evsel__exit() perf tests: Fix a memory leak of cpu_map object in the openat_syscall_event_on_all_cpus test perf tests: Fix a memory leak in test__perf_evsel__tp_sched_test() x86/hpet: Prevent potential NULL pointer dereference x86/cpu/cyrix: Use correct macros for Cyrix calls on Geode processors iommu/vt-d: Check capability before disabling protected memory x86/hw_breakpoints: Make default case in hw_breakpoint_arch_parse() return an error fix incorrect error code mapping for OBJECTID_NOT_FOUND ext4: prohibit fstrim in norecovery mode rsi: improve kernel thread handling to fix kernel panic 9p: do not trust pdu content for stat item size 9p locks: add mount option for lock retry interval f2fs: fix to do sanity check with current segment number serial: uartps: console_setup() can't be placed to init section ARM: samsung: Limit SAMSUNG_PM_CHECK config option to non-Exynos platforms ACPI / SBS: Fix GPE storm on recent MacBookPro's cifs: fallback to older infolevels on findfirst queryinfo retry crypto: sha256/arm - fix crash bug in Thumb2 build crypto: sha512/arm - fix crash bug in Thumb2 build iommu/dmar: Fix buffer overflow during PCI bus notification ARM: 8839/1: kprobe: make patch_lock a raw_spinlock_t appletalk: Fix use-after-free in atalk_proc_exit lib/div64.c: off by one in shift include/linux/swap.h: use offsetof() instead of custom __swapoffset macro tpm/tpm_crb: Avoid unaligned reads in crb_recv() ovl: fix uid/gid when creating over whiteout appletalk: Fix compile regression bonding: fix event handling for stacked bonds net: atm: Fix potential Spectre v1 vulnerabilities net: bridge: multicast: use rcu to access port list from br_multicast_start_querier net: fou: do not use guehdr after iptunnel_pull_offloads in gue_udp_recv tcp: tcp_grow_window() needs to respect tcp_space() ipv4: recompile ip options in ipv4_link_failure ipv4: ensure rcu_read_lock() in ipv4_link_failure() crypto: crypto4xx - properly set IV after de- and encrypt modpost: file2alias: go back to simple devtable lookup modpost: file2alias: check prototype of handler tpm/tpm_i2c_atmel: Return -E2BIG when the transfer is incomplete KVM: x86: Don't clear EFER during SMM transitions for 32-bit vCPU iio/gyro/bmg160: Use millidegrees for temperature scale iio: ad_sigma_delta: select channel when reading register iio: adc: at91: disable adc channel interrupt in timeout case io: accel: kxcjk1013: restore the range after resume. staging: comedi: vmk80xx: Fix use of uninitialized semaphore staging: comedi: vmk80xx: Fix possible double-free of ->usb_rx_buf staging: comedi: ni_usb6501: Fix use of uninitialized mutex staging: comedi: ni_usb6501: Fix possible double-free of ->usb_rx_buf ALSA: core: Fix card races between register and disconnect crypto: x86/poly1305 - fix overflow during partial reduction arm64: futex: Restore oldval initialization to work around buggy compilers x86/kprobes: Verify stack frame on kretprobe kprobes: Mark ftrace mcount handler functions nokprobe kprobes: Fix error check when reusing optimized probes mac80211: do not call driver wake_tx_queue op during reconfig Revert "kbuild: use -Oz instead of -Os when using clang" sched/fair: Limit sched_cfs_period_timer() loop to avoid hard lockup device_cgroup: fix RCU imbalance in error case mm/vmstat.c: fix /proc/vmstat format for CONFIG_DEBUG_TLBFLUSH=y CONFIG_SMP=n ALSA: info: Fix racy addition/deletion of nodes Revert "locking/lockdep: Add debug_locks check in __lock_downgrade()" kernel/sysctl.c: fix out-of-bounds access when setting file-max Linux 4.4.179 Change-Id: Ib81a248d73ba7504649be93bd6882b290e548882 Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
| | | * | x86/kprobes: Verify stack frame on kretprobeMasami Hiramatsu2019-04-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit 3ff9c075cc767b3060bdac12da72fc94dd7da1b8 upstream. Verify the stack frame pointer on kretprobe trampoline handler, If the stack frame pointer does not match, it skips the wrong entry and tries to find correct one. This can happen if user puts the kretprobe on the function which can be used in the path of ftrace user-function call. Such functions should not be probed, so this adds a warning message that reports which function should be blacklisted. Tested-by: Andrea Righi <righi.andrea@gmail.com> Signed-off-by: Masami Hiramatsu <mhiramat@kernel.org> Acked-by: Steven Rostedt <rostedt@goodmis.org> Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Mathieu Desnoyers <mathieu.desnoyers@efficios.com> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: stable@vger.kernel.org Link: http://lkml.kernel.org/r/155094059185.6137.15527904013362842072.stgit@devbox Signed-off-by: Ingo Molnar <mingo@kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| | | * | appletalk: Fix compile regressionArnd Bergmann2019-04-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [ Upstream commit 27da0d2ef998e222a876c0cec72aa7829a626266 ] A bugfix just broke compilation of appletalk when CONFIG_SYSCTL is disabled: In file included from net/appletalk/ddp.c:65: net/appletalk/ddp.c: In function 'atalk_init': include/linux/atalk.h:164:34: error: expected expression before 'do' #define atalk_register_sysctl() do { } while(0) ^~ net/appletalk/ddp.c:1934:7: note: in expansion of macro 'atalk_register_sysctl' rc = atalk_register_sysctl(); This is easier to avoid by using conventional inline functions as stubs rather than macros. The header already has inline functions for other purposes, so I'm changing over all the macros for consistency. Fixes: 6377f787aeb9 ("appletalk: Fix use-after-free in atalk_proc_exit") Signed-off-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Sasha Levin <sashal@kernel.org>