aboutsummaryrefslogtreecommitdiff
path: root/scripts
Commit message (Collapse)AuthorAgeFilesLines
* Merge 3.18.130 into android-msm-marlin-3.18-ltsPetri Gynther2018-12-171-1/+1
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Linux 3.18.130 selftests: Move networking/timestamping from Documentation staging: rts5208: fix gcc-8 logic error warning vme: ca91cx42: fix LM_CTL address mask vme: Fix wrong pointer utilization in ca91cx42_slave_get * exec: avoid gcc-8 warning for get_task_comm fs/exec.c include/linux/sched.h * kconfig: Avoid format overflow warning from GCC 8.1 scripts/kconfig/confdata.c staging: speakup: Replace strncpy with memcpy matroxfb: fix size of memcpy * pstore: Convert console write to use ->write_buf fs/pstore/platform.c ocfs2: fix potential use after free debugobjects: avoid recursive calls with kmemleak hfsplus: do not free node before using hfs: do not free node before using ocfs2: fix deadlock caused by ocfs2_defrag_extent() fscache, cachefiles: remove redundant variable 'cache' fscache: fix race between enablement and dropping of object drm/ast: fixed reading monitor EDID not stable issue KVM: x86: fix empty-body warnings USB: omap_udc: fix USB gadget functionality on Palm Tungsten E USB: omap_udc: fix omap_udc_start() on 15xx machines USB: omap_udc: fix crashes on probe error and module removal USB: omap_udc: use devm_request_irq() exportfs: do not read dentry after free ASoC: omap-dmic: Add pm_qos handling to avoid overruns with CPU_IDLE ASoC: omap-mcpdm: Add pm_qos handling to avoid under/overruns with CPU_IDLE Btrfs: send, fix infinite loop due to directory rename dependencies hwmon: (w83795) temp4_type has writable permission s390/cpum_cf: Reject request for sampling in event initialization sysv: return 'err' instead of 0 in __sysv_write_inode ARM: OMAP1: ams-delta: Fix possible use of uninitialized field ARM: OMAP2+: prm44xx: Fix section annotation on omap44xx_prm_enable_io_wakeup * ipv6: Check available headroom in ip6_xmit() even without options net/ipv6/ip6_output.c * neighbour: Avoid writing before skb->head in neigh_hh_output() include/net/neighbour.h * tun: forbid iface creation with rtnl ops drivers/net/tun.c * rtnetlink: ndo_dflt_fdb_dump() only work for ARPHRD_ETHER devices net/core/rtnetlink.c net: Prevent invalid access to skb->prev in __qdisc_drop_all net: 8139cp: fix a BUG triggered by changing mtu with network traffic Change-Id: I0f9e64f278de37078e891b54e3f7c3a397e229ad Signed-off-by: Petri Gynther <pgynther@google.com>
| * kconfig: Avoid format overflow warning from GCC 8.1Nathan Chancellor2018-12-171-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit 2ae89c7a82ea9d81a19b4fc2df23bef4b112f24e upstream. In file included from scripts/kconfig/zconf.tab.c:2485: scripts/kconfig/confdata.c: In function ‘conf_write’: scripts/kconfig/confdata.c:773:22: warning: ‘%s’ directive writing likely 7 or more bytes into a region of size between 1 and 4097 [-Wformat-overflow=] sprintf(newname, "%s%s", dirname, basename); ^~ scripts/kconfig/confdata.c:773:19: note: assuming directive output of 7 bytes sprintf(newname, "%s%s", dirname, basename); ^~~~~~ scripts/kconfig/confdata.c:773:2: note: ‘sprintf’ output 1 or more bytes (assuming 4104) into a destination of size 4097 sprintf(newname, "%s%s", dirname, basename); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ scripts/kconfig/confdata.c:776:23: warning: ‘.tmpconfig.’ directive writing 11 bytes into a region of size between 1 and 4097 [-Wformat-overflow=] sprintf(tmpname, "%s.tmpconfig.%d", dirname, (int)getpid()); ^~~~~~~~~~~ scripts/kconfig/confdata.c:776:3: note: ‘sprintf’ output between 13 and 4119 bytes into a destination of size 4097 sprintf(tmpname, "%s.tmpconfig.%d", dirname, (int)getpid()); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Increase the size of tmpname and newname to make GCC happy. Cc: stable@vger.kernel.org Signed-off-by: Nathan Chancellor <natechancellor@gmail.com> Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
* | Merge 3.18.129 into android-msm-marlin-3.18-ltsGreg Kroah-Hartman2018-12-132-2/+5
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Linux 3.18.129 mac80211: fix reordering of buffered broadcast packets mac80211: Clear beacon_int in ieee80211_do_stop kgdboc: fix KASAN global-out-of-bounds bug in param_set_kgdboc_var() Staging: lustre: remove two build warnings USB: serial: option: add device ID for HP lt2523 (Novatel E371) * xhci: Prevent U1/U2 link pm states if exit latency is too long drivers/usb/host/xhci.c SUNRPC: Fix leak of krb5p encode pages * ALSA: pcm: Fix interval evaluation with openmin/max include/sound/pcm_params.h * ALSA: pcm: Call snd_pcm_unlink() conditionally at closing sound/core/pcm_native.c ALSA: hda: Add support for AMD Stoney Ridge * USB: check usb_get_extra_descriptor for proper size drivers/usb/core/hub.c drivers/usb/core/usb.c include/linux/usb.h usb: appledisplay: Add 27" Apple Cinema Display * usb: quirk: add no-LPM quirk on SanDisk Ultra Flair device drivers/usb/core/quirks.c powerpc/vdso64: Use double word compare on pointers net: amd: add missing of_node_put() net: faraday: ftmac100: remove netif_running(netdev) check before disabling interrupts net/mlx4: Fix UBSAN warning of signed integer overflow net/mlx4_core: Zero out lkey field in SW2HW_MPT fw command can: rcar_can: Fix erroneous registration iommu/ipmmu-vmsa: Fix crash on early domain free usb: gadget: dummy: fix nonsensical comparisons * mm: cleancache: fix corruption on missed inode invalidation mm/truncate.c * Input: xpad - quirk all PDP Xbox One gamepads drivers/input/joystick/xpad.c kgdboc: Fix warning with module build kgdboc: Fix restrict error scsi: csiostor: Avoid content leaks and casts ALSA: trident: Suppress gcc string warning * scsi: scsi_devinfo: cleanly zero-pad devinfo strings drivers/scsi/scsi_devinfo.c drm/ast: Fix incorrect free on ioregs mips: fix mips_get_syscall_arg o32 check uprobes: Fix handle_swbp() vs. unregister() + register() race once more iser: set sector for ambiguous mr status errors kdb: use memmove instead of overlapping memcpy scsi: bfa: convert to strlcpy/strlcat drm: gma500: fix logic error * ip_tunnel: Fix name string concatenate in __ip_tunnel_create() net/ipv4/ip_tunnel.c * kernfs: Replace strncpy with memcpy fs/kernfs/symlink.c unifdef: use memcpy instead of strncpy * kobject: Replace strncpy with memcpy lib/kobject.c * disable stringop truncation warnings for now Makefile * Kbuild: suppress packed-not-aligned warning for default setting only scripts/Makefile.extrawarn * usb: core: quirks: add RESET_RESUME quirk for Cherry G230 Stream series drivers/usb/core/quirks.c * USB: usb-storage: Add new IDs to ums-realtek drivers/usb/storage/unusual_realtek.h dmaengine: at_hdmac: fix module unloading dmaengine: at_hdmac: fix memory leak in at_dma_xlate() ext2: fix potential use after free ALSA: sparc: Fix invalid snd_free_pages() at error path ALSA: ac97: Fix incorrect bit shift at AC97-SPSA control write ALSA: wss: Fix invalid snd_free_pages() at error path usbnet: ipheth: fix potential recvmsg bug and recvmsg bug 2 s390/qeth: fix length check in SNMP processing rapidio/rionet: do not free skb before reading its length Revert "wlcore: Add missing PM call for wlcore_cmd_wait_for_event_or_timeout()" Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
| * unifdef: use memcpy instead of strncpyLinus Torvalds2018-12-131-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit 38c7b224ce22c25fed04007839edf974bd13439d upstream. New versions of gcc reasonably warn about the odd pattern of strncpy(p, q, strlen(q)); which really doesn't make sense: the strncpy() ends up being just a slow and odd way to write memcpy() in this case. There was a comment about _why_ the code used strncpy - to avoid the terminating NUL byte, but memcpy does the same and avoids the warning. Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| * Kbuild: suppress packed-not-aligned warning for default setting onlyXiongfeng Wang2018-12-131-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit 321cb0308a9e76841394b4bbab6a1107cfedbae0 upstream. gcc-8 reports many -Wpacked-not-aligned warnings. The below are some examples. ./include/linux/ceph/msgr.h:67:1: warning: alignment 1 of 'struct ceph_entity_addr' is less than 8 [-Wpacked-not-aligned] } __attribute__ ((packed)); ./include/linux/ceph/msgr.h:67:1: warning: alignment 1 of 'struct ceph_entity_addr' is less than 8 [-Wpacked-not-aligned] } __attribute__ ((packed)); ./include/linux/ceph/msgr.h:67:1: warning: alignment 1 of 'struct ceph_entity_addr' is less than 8 [-Wpacked-not-aligned] } __attribute__ ((packed)); This patch suppresses this kind of warnings for default setting. Signed-off-by: Xiongfeng Wang <xiongfeng.wang@linaro.org> Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
* | Merge 3.18.123 into android-msm-marlin-3.18-ltsGreg Kroah-Hartman2018-10-102-6/+6
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Linux 3.18.123 USB: serial: ti_usb_3410_5052: fix array underflow in completion handler drm/panel: type promotion bug in s6e8aa0_read_mtp_id() * ALSA: pcm: Fix snd_interval_refine first/last with open min/max sound/core/pcm_lib.c rtc: bq4802: add error handling for devm_ioremap parport: sunbpp: fix error return code ARM: hisi: check of_iomap and fix missing of_node_put ARM: hisi: handle of_iomap and fix missing of_node_put MIPS: loongson64: cs5536: Fix PCI_OHCI_INT_REG reads mtdchar: fix overflows in adjustment of `count` * audit: fix use-after-free in audit_add_watch kernel/audit_watch.c * binfmt_elf: Respect error return from `regset->active' fs/binfmt_elf.c CIFS: fix wrapping bugs in num_entries() cifs: prevent integer overflow in nxt_dir_entry() usb: cdc-wdm: Fix a sleep-in-atomic-context bug in service_outstanding_interrupt() USB: yurex: Fix buffer over-read in yurex_write() usb: misc: uss720: Fix two sleep-in-atomic-context bugs USB: serial: io_ti: fix array underflow in completion handler usb: host: u132-hcd: Fix a sleep-in-atomic-context bug in u132_get_frame() * usb: Avoid use-after-free by flushing endpoints early in usb_set_interface() drivers/usb/core/message.c * USB: Add quirk to support DJI CineSSD drivers/usb/core/quirks.c drivers/usb/storage/scsiglue.c drivers/usb/storage/unusual_devs.h * usb: Don't die twice if PCI xhci host is not responding in resume drivers/usb/core/hcd-pci.c Tools: hv: Fix a bug in the key delete code IB/ipoib: Avoid a race condition between start_xmit and cm_rep_handler xen/netfront: fix waiting for xenbus state change * pstore: Fix incorrect persistent ram buffer mapping fs/pstore/ram_core.c RDMA/cma: Protect cma dev list with lock platform/x86: toshiba_acpi: Fix defined but not used build warnings s390/qeth: reset layer2 attribute on layer switch s390/qeth: fix race in used-buffer accounting mac80211: restrict delayed tailroom needed decrement powerpc/powernv: opal_put_chars partial write fix * perf powerpc: Fix callchain ip filtering tools/perf/arch/powerpc/util/skip-callchain-idx.c * fbdev: Distinguish between interlaced and progressive modes drivers/video/fbdev/core/modedb.c * perf powerpc: Fix callchain ip filtering when return address is in a register tools/perf/arch/powerpc/util/skip-callchain-idx.c fbdev/via: fix defined but not used warning video: goldfishfb: fix memory leak on driver remove fbdev: omapfb: off by one in omapfb_register_client() mtd/maps: fix solutionengine.c printk format warnings MIPS: ath79: fix system restart gfs2: Special-case rindex for gfs2_grow * xfrm: fix 'passing zero to ERR_PTR()' warning net/xfrm/xfrm_policy.c * ALSA: usb-audio: Fix multiple definitions in AU0828_DEVICE() macro sound/usb/quirks-table.h ALSA: msnd: Fix the default sample sizes * mm: get rid of vmacache_flush_all() entirely include/linux/mm_types.h include/linux/sched.h include/linux/vmacache.h mm/debug.c mm/vmacache.c * netfilter: x_tables: avoid stack-out-of-bounds read in xt_copy_counters_from_user net/netfilter/x_tables.c * xhci: Fix use-after-free in xhci_free_virt_device drivers/usb/host/xhci.c MIPS: WARN_ON invalid DMA cache maintenance, not BUG_ON f2fs: fix to do sanity check with {sit,nat}_ver_bitmap_bytesize mfd: ti_am335x_tscadc: Fix struct clk memory leak partitions/aix: fix usage of uninitialized lv_info and lvname structures partitions/aix: append null character to print data from disk net: dcb: For wild-card lookups, use priority -1, not 0 net: mvneta: fix mtu change on port without link gpio: ml-ioh: Fix buffer underwrite on probe error path x86/mm: Remove in_nmi() warning from vmalloc_fault() Bluetooth: hidp: Fix handling of strncpy for hid->name information scsi: 3ware: fix return 0 on the error path of probe ata: libahci: Correct setting of DEVSLP register MIPS: Fix ISA virt/bus conversion for non-zero PHYS_OFFSET ath10k: prevent active scans on potential unusable channels macintosh/via-pmu: Add missing mmio accessors tty: rocket: Fix possible buffer overwrite on register_PCI * uio: potential double frees if __uio_register_device() fails drivers/uio/uio.c md/raid5: fix data corruption of replacements after originals dropped scsi: target: fix __transport_register_session locking * Bluetooth: h5: Fix missing dependency on BT_HCIUART_SERDEV drivers/bluetooth/Kconfig staging/rts5208: Fix read overflow in memcpy staging: rt5208: Fix a sleep-in-atomic bug in xd_copy_page kthread: fix boot hang (regression) on MIPS/OpenRISC * kthread: Fix use-after-free if kthread fork fails kernel/fork.c * cfq: Give a chance for arming slice idle timer in case of group_idle block/cfq-iosched.c i2c: xiic: Make the start and the byte count write atomic ASoC: wm8994: Fix missing break in switch Fixes: Commit 86af955d02bb ("mm: numa: avoid waiting on freed migrated pages") enic: do not call enic_change_mtu in enic_probe irda: Only insert new objects into the global database via setsockopt irda: Fix memory leak caused by repeated binds of irda socket * kbuild: make missing $DEPMOD a Warning instead of an Error scripts/depmod.sh debugobjects: Make stack check warning more informative btrfs: Don't remove block group that still has pinned down bytes btrfs: relocation: Only remove reloc rb_trees if reloc control has been initialized btrfs: replace: Reset on-disk dev stats value after replace powerpc/pseries: Avoid using the size greater than RTAS_ERROR_LOG_MAX. SMB3: Number of requests sent should be displayed for SMB3 not just CIFS smb3: fix reset of bytes read and written stats selftests/powerpc: Kill child processes on SIGINT staging: comedi: ni_mio_common: fix subdevice flags for PFI subdevice * dm kcopyd: avoid softlockup in run_complete_job drivers/md/dm-kcopyd.c PCI: mvebu: Fix I/O space end address calculation scsi: aic94xx: fix an error code in aic94xx_init() s390/dasd: fix hanging offline processing due to canceled worker powerpc: Fix size calculation using resource_size() * net/9p: fix error path of p9_virtio_probe net/9p/trans_virtio.c platform/x86: asus-nb-wmi: Add keymap entry for lid flip action on UX360 mfd: sm501: Set coherent_dma_mask when creating subdevices ipvs: fix race between ip_vs_conn_new() and ip_vs_del_dest() * mm/fadvise.c: fix signed overflow UBSAN complaint mm/fadvise.c * scripts: modpost: check memory allocation results scripts/mod/modpost.c * fat: validate ->i_start before using fs/fat/cache.c fs/fat/fat.h fs/fat/fatent.c reiserfs: change j_timestamp type to time64_t * fork: don't copy inconsistent signal handler state to child kernel/fork.c hfs: prevent crash on exit from failed search hfsplus: don't return 0 when fill_super() failed cifs: check if SMB2 PDU size has been padded and suppress the warning Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
| * kbuild: make missing $DEPMOD a Warning instead of an ErrorRandy Dunlap2018-09-261-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit 914b087ff9e0e9a399a4927fa30793064afc0178 upstream. When $DEPMOD is not found, only print a warning instead of exiting with an error message and error status: Warning: 'make modules_install' requires /sbin/depmod. Please install it. This is probably in the kmod package. Change the Error to a Warning because "not all build hosts for cross compiling Linux are Linux systems and are able to provide a working port of depmod, especially at the file patch /sbin/depmod." I.e., "make modules_install" may be used to copy/install the loadable modules files to a target directory on a build system and then transferred to an embedded device where /sbin/depmod is run instead of it being run on the build system. Fixes: 934193a654c1 ("kbuild: verify that $DEPMOD is installed") Signed-off-by: Randy Dunlap <rdunlap@infradead.org> Reported-by: H. Nikolaus Schaller <hns@goldelico.com> Cc: stable@vger.kernel.org Cc: Lucas De Marchi <lucas.demarchi@profusion.mobi> Cc: Lucas De Marchi <lucas.de.marchi@gmail.com> Cc: Michal Marek <michal.lkml@markovi.net> Cc: Jessica Yu <jeyu@kernel.org> Cc: Chih-Wei Huang <cwhuang@linux.org.tw> Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com> Signed-off-by: Maxim Zhukov <mussitantesmortem@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| * scripts: modpost: check memory allocation resultsRandy Dunlap2018-09-261-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [ Upstream commit 1f3aa9002dc6a0d59a4b599b4fc8f01cf43ef014 ] Fix missing error check for memory allocation functions in scripts/mod/modpost.c. Fixes kernel bugzilla #200319: https://bugzilla.kernel.org/show_bug.cgi?id=200319 Signed-off-by: Randy Dunlap <rdunlap@infradead.org> Cc: Yuexing Wang <wangyxlandq@gmail.com> Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com> Signed-off-by: Sasha Levin <alexander.levin@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
* | Merge 3.18.119 into android-msm-marlin-3.18-ltsPetri Gynther2018-08-241-1/+7
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Linux 3.18.119 Bluetooth: hidp: buffer overflow in hidp_process_report * crypto: ablkcipher - fix crash flushing dcache in error path crypto/ablkcipher.c * crypto: blkcipher - fix crash flushing dcache in error path crypto/blkcipher.c crypto: vmac - separate tfm and request context crypto: vmac - require a block cipher with 128-bit block size kbuild: verify that $DEPMOD is installed i2c: ismt: fix wrong device address when unmap the data buffer * mm: slub: fix format mismatches in slab_err() callers mm/slub.c * ALSA: info: Check for integer overflow in snd_info_entry_write() sound/core/info.c kprobes/x86: Fix %p uses in error messages ARM: dts: imx6sx: fix irq for pcie bridge * fix __legitimize_mnt()/mntput() race fs/namespace.c * fix mntput/mntput race fs/namespace.c * root dentries need RCU-delayed freeing fs/dcache.c xen/netfront: don't cache skb_shinfo() Change-Id: I399a95109bdf2a559e0880bb355444a84e97c0ef Signed-off-by: Petri Gynther <pgynther@google.com>
| * kbuild: verify that $DEPMOD is installedRandy Dunlap2018-08-171-1/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit 934193a654c1f4d0643ddbf4b2529b508cae926e upstream. Verify that 'depmod' ($DEPMOD) is installed. This is a partial revert of commit 620c231c7a7f ("kbuild: do not check for ancient modutils tools"). Also update Documentation/process/changes.rst to refer to kmod instead of module-init-tools. Fixes kernel bugzilla #198965: https://bugzilla.kernel.org/show_bug.cgi?id=198965 Signed-off-by: Randy Dunlap <rdunlap@infradead.org> Cc: Lucas De Marchi <lucas.demarchi@profusion.mobi> Cc: Lucas De Marchi <lucas.de.marchi@gmail.com> Cc: Michal Marek <michal.lkml@markovi.net> Cc: Jessica Yu <jeyu@kernel.org> Cc: Chih-Wei Huang <cwhuang@linux.org.tw> Cc: stable@vger.kernel.org # any kernel since 2012 Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
* | Merge 3.18.112 into android-msm-marlin-3.18-ltsPetri Gynther2018-08-203-10/+26
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Linux 3.18.112 * Revert "vti4: Don't override MTU passed on link creation via IFLA_MTU" net/ipv4/ip_vti.c Linux 3.18.111 kdb: make "mdr" command repeat * regulator: of: Add a missing 'of_node_put()' in an error handling path of 'of_regulator_match()' drivers/regulator/of_regulator.c scsi: lpfc: Fix frequency of Release WQE CQEs scsi: lpfc: Fix soft lockup in lpfc worker thread during LIP testing scsi: lpfc: Fix issue_lip if link is disabled netlabel: If PF_INET6, check sk_buff ip header version * audit: return on memory error to avoid null pointer dereference kernel/audit.c clk: samsung: exynos3250: Fix PLL rates clk: samsung: exynos5250: Fix PLL rates clk: samsung: exynos5260: Fix PLL rates clk: samsung: s3c2410: Fix PLL rates media: cx25821: prevent out-of-bounds read on array card udf: Provide saner default for invalid uid / gid * PCI: Add function 1 DMA alias quirk for Marvell 88SE9220 drivers/pci/quirks.c serial: arc_uart: Fix out-of-bounds access through DT alias serial: fsl_lpuart: Fix out-of-bounds access through DT alias serial: imx: Fix out-of-bounds access through serial port index serial: samsung: Fix out-of-bounds access through serial port index serial: xuartps: Fix out-of-bounds access through DT alias rtc: tx4939: avoid unintended sign extension on a 24 bit shift staging: rtl8192u: return -ENOMEM on failed allocation of priv->oldaddr media: em28xx: USB bulk packet size fix dmaengine: pl330: fix a race condition in case of threaded irqs media: s3c-camif: fix out-of-bounds array access media: cx23885: Set subdev host data to clk_freq pointer media: cx23885: Override 888 ImpactVCBe crystal frequency ALSA: vmaster: Propagate slave error * usb: gadget: composite: fix incorrect handling of OS desc requests drivers/usb/gadget/composite.c include/linux/usb/composite.h usb: gadget: udc: change comparison to bitshift when dealing with a mask cdrom: do not call check_disk_change() inside cdrom_open() hwmon: (pmbus/adm1275) Accept negative page register values hwmon: (pmbus/max8688) Accept negative page register values * perf/core: Fix perf_output_read_group() kernel/events/core.c powerpc: Add missing prototype for arch_irq_work_raise() * usb: gadget: ffs: Let setup() return USB_GADGET_DELAYED_STATUS drivers/usb/gadget/function/f_fs.c usb: dwc2: Fix interval type issue * PCI: Restore config space on runtime resume despite being unbound drivers/pci/pci-driver.c MIPS: ath79: Fix AR724X_PLL_REG_PCIE_CONFIG offset * xhci: zero usb device slot_id member when disabling and freeing a xhci slot drivers/usb/host/xhci-mem.c i2c: mv64xxx: Apply errata delay only in standard mode ACPICA: acpi: acpica: fix acpi operand cache leak in nseval.c ACPICA: Events: add a return on failure from acpi_hw_register_read bcache: quit dc->writeback_thread when BCACHE_DEV_DETACHING is set zorro: Set up z->dev.dma_mask for the DMA API * usb: dwc3: Update DWC_usb31 GTXFIFOSIZ reg fields drivers/usb/dwc3/core.h arm: dts: socfpga: fix GIC PPI warning virtio-net: Fix operstate for virtio when no VIRTIO_NET_F_STATUS ima: Fallback to the builtin hash algorithm ath10k: Fix kernel panic while using worker (ath10k_sta_rc_update_wk) net/mlx5: Protect from command bit overflow tools/thermal: tmon: fix for segfault powerpc/perf: Fix kernel address leak via sampling registers powerpc/perf: Prevent kernel address leak to userspace via BHRB buffer hwmon: (nct6775) Fix writing pwmX_mode parisc/pci: Switch LBA PCI bus from Hard Fail to Soft Fail mode m68k: set dma and coherent masks for platform FEC ethernets powerpc/mpic: Check if cpu_possible() in mpic_physmask() ACPI: acpi_pad: Fix memory leak in power saving threads xen/acpi: off by one in read_acpi_id() btrfs: fix lockdep splat in btrfs_alloc_subvolume_writers Btrfs: fix copy_items() return value when logging an inode btrfs: tests/qgroup: Fix wrong tree backref level sparc64: Make atomic_xchg() an inline function rather than a macro. KVM: VMX: raise internal error for exception during invalid protected mode state * sched/rt: Fix rq->clock_update_flags < RQCF_ACT_SKIP warning kernel/sched/rt.c btrfs: Fix possible softlock on single core machines Btrfs: fix NULL pointer dereference in log_dir_items Btrfs: bail out on error during replay_dir_deletes * mm: fix races between address_space dereference and free in page_evicatable mm/vmscan.c mm/ksm: fix interaction with THP dp83640: Ensure against premature access to PHY registers after reset scsi: aacraid: Insure command thread is not recursively stopped Force log to disk before reading the AGF during a fstrim sr: get/drop reference to device in revalidate and check_events * swap: divide-by-zero when zero length swap file on ssd mm/swapfile.c * fs/proc/proc_sysctl.c: fix potential page fault while unregistering sysctl table fs/proc/proc_sysctl.c sh: fix debug trap failure to process signals before return to user net: mvneta: fix enable of all initialized RXQs * net: Fix untag for vlan packets without ethernet header net/core/skbuff.c llc: properly handle dev_queue_xmit() return value net-usb: add qmi_wwan if on lte modem wistron neweb d18q1 net: qmi_wwan: add BroadMobi BM806U 2020:2033 batman-adv: fix packet loss for broadcasted DHCP packets to a server batman-adv: fix multicast-via-unicast transmission with AP isolation selftests: ftrace: Add a testcase for probepoint selftests: ftrace: Add a testcase for string type with kprobe_event selftests: ftrace: Add probe event argument syntax testcase mm/mempolicy.c: avoid use uninitialized preferred_node * vti4: Don't override MTU passed on link creation via IFLA_MTU net/ipv4/ip_vti.c * vti4: Don't count header length twice on tunnel setup net/ipv4/ip_vti.c batman-adv: fix header size check in batadv_dbg_arp() * net: Fix vlan untag for bridge and vlan_dev with reorder_hdr off include/uapi/linux/if_ether.h net/core/skbuff.c * netfilter: ebtables: fix erroneous reject of last rule net/bridge/netfilter/ebtables.c USB: OHCI: Fix NULL dereference in HCDs using HCD_LOCAL_MEM xen: xenbus: use put_device() instead of kfree() fbdev: Fixing arbitrary kernel leak in case FBIOGETCMAP_SPARC in sbusfb_ioctl_helper(). * scsi: sd: Keep disk read-only when re-reading partition drivers/scsi/sd.c usb: musb: call pm_runtime_{get,put}_sync before reading vbus registers e1000e: allocate ring descriptors with dma_zalloc_coherent e1000e: Fix check_for_link return value with autoneg off watchdog: f71808e_wdt: Fix magic close handling Btrfs: send, fix issuing write op when processing hole in no data mode xen/pirq: fix error path cleanup when binding MSIs net/tcp/illinois: replace broken algorithm reference link * sit: fix IFLA_MTU ignored on NEWLINK net/ipv6/sit.c bcache: fix kcrashes with fio in RAID5 backend dev * r8152: fix tx packets accounting drivers/net/usb/r8152.c clocksource/drivers/fsl_ftm_timer: Fix error return checking * netfilter: ebtables: convert BUG_ONs to WARN_ONs net/bridge/netfilter/ebtables.c batman-adv: invalidate checksum on fragment reassembly batman-adv: fix packet checksum in receive path md/raid1: fix NULL pointer dereference media: dmxdev: fix error code for invalid ioctls x86/topology: Update the 'cpu cores' field in /proc/cpuinfo correctly across CPU hotplug operations locking/xchg/alpha: Fix xchg() and cmpxchg() memory ordering bugs * regulatory: add NUL to request alpha2 include/net/regulatory.h smsc75xx: fix smsc75xx_set_features() ARM: OMAP: Fix dmtimer init for omap1 s390/cio: clear timer when terminating driver I/O s390/cio: fix return code after missing interrupt * kernel/relay.c: limit kmalloc size to KMALLOC_MAX_SIZE kernel/relay.c locking/xchg/alpha: Add unconditional memory barrier to cmpxchg() drm/exynos: fix comparison to bitshift when dealing with a mask md raid10: fix NULL deference in handle_write_completed() mac80211: round IEEE80211_TX_STATUS_HEADROOM up to multiple of 4 NFC: llcp: Limit size of SDP URI ARM: OMAP1: clock: Fix debugfs_create_*() usage ARM: OMAP3: Fix prm wake interrupt for resume scsi: qla4xxx: skip error recovery in case of register disconnect. scsi: aacraid: fix shutdown crash when init fails selftests: memfd: add config fragment for fuse usb: gadget: fsl_udc_core: fix ep valid checks usb: gadget: f_uac2: fix bFirstInterface in composite gadget scsi: qla2xxx: Avoid triggering undefined behavior in qla2x00_mbx_completion() scsi: mptfusion: Add bounds check in mptctl_hp_targetinfo() scsi: sym53c8xx_2: iterator underflow in sym_getsync() scsi: bnx2fc: Fix check in SCSI completion handler for timed out request * scsi: ufs: Enable quirk to ignore sending WRITE_SAME command drivers/scsi/ufs/ufshcd.c * irqchip/gic-v3: Change pr_debug message to pr_devel drivers/irqchip/irq-gic-v3.c bcache: return attach error when no cache set exist bcache: fix for data collapse after re-attaching an attached device bcache: fix for allocator and register thread race bcache: properly set task state in bch_writeback_thread() cifs: silence compiler warnings showing up with gcc-8.0.0 * proc: fix /proc/*/map_files lookup fs/proc/base.c xen/grant-table: Use put_page instead of free_page MIPS: TXx9: use IS_BUILTIN() for CONFIG_LEDS_CLASS ACPI: processor_perflib: Do not send _PPC change notification if not ready * firmware: dmi_scan: Fix handling of empty DMI strings drivers/firmware/dmi_scan.c * x86/power: Fix swsusp_arch_resume prototype include/linux/suspend.h kernel/power/power.h IB/ipoib: Fix for potential no-carrier state * mm: pin address_space before dereferencing it while isolating an LRU page mm/vmscan.c * asm-generic: provide generic_pmdp_establish() include/asm-generic/pgtable.h mm/mempolicy: add nodes_empty check in SYSC_migrate_pages mm/mempolicy: fix the check of nodemask from user ocfs2/acl: use 'ip_xattr_sem' to protect getting extended attribute ocfs2: return -EROFS to mount.ocfs2 if inode block is invalid RDMA/mlx5: Avoid memory leak in case of XRCD dealloc failure jffs2: Fix use-after-free bug in jffs2_iget()'s error handling path HID: roccat: prevent an out of bounds read in kovaplus_profile_activated() scsi: fas216: fix sense buffer initialization btrfs: Fix out of bounds access in btrfs_search_slot * kconfig: Fix expr_free() E_NOT leak scripts/kconfig/expr.c * kconfig: Fix automatic menu creation mem leak scripts/kconfig/menu.c kconfig: Don't leak main menus during parsing watchdog: sp5100_tco: Fix watchdog disable bit nfs: Do not convert nfs_idmap_cache_timeout to jiffies dm thin: fix documentation relative to low water mark threshold tools lib traceevent: Fix get_field_str() for dynamic strings * PCI: Add function 1 DMA alias quirk for Marvell 9128 drivers/pci/quirks.c * tracing/hrtimer: Fix tracing bugs by taking all clock bases and modes into account include/trace/events/timer.h kvm: x86: fix KVM_XEN_HVM_CONFIG ioctl ASoC: au1x: Fix timeout tests in au1xac97c_ac97_read() firewire-ohci: work around oversized DMA reads on JMicron controllers * kernel/signal.c: avoid undefined behaviour in kill_something_info kernel/signal.c xen-swiotlb: fix the check condition for xen_swiotlb_free_coherent libata: Blacklist some Sandisk SSDs for NCQ * do d_instantiate/unlock_new_inode combinations safely fs/dcache.c fs/ecryptfs/inode.c fs/ext4/namei.c include/linux/dcache.h * aio: fix io_destroy(2) vs. lookup_ioctx() race fs/aio.c affs_lookup(): close a race with affs_remove_link() KVM: Fix spelling mistake: "cop_unsuable" -> "cop_unusable" MIPS: Fix ptrace(2) PTRACE_PEEKUSR and PTRACE_POKEUSR accesses to o32 FGRs MIPS: ptrace: Expose FIR register through FP regset Change-Id: Ia6acd6cbeb826e23bcb8b5452dbd3b224410b7ad Signed-off-by: Petri Gynther <pgynther@google.com>
| * kconfig: Fix expr_free() E_NOT leakUlf Magnusson2018-05-301-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [ Upstream commit 5b1374b3b3c2fc4f63a398adfa446fb8eff791a4 ] Only the E_NOT operand and not the E_NOT node itself was freed, due to accidentally returning too early in expr_free(). Outline of leak: switch (e->type) { ... case E_NOT: expr_free(e->left.expr); return; ... } *Never reached, 'e' leaked* free(e); Fix by changing the 'return' to a 'break'. Summary from Valgrind on 'menuconfig' (ARCH=x86) before the fix: LEAK SUMMARY: definitely lost: 44,448 bytes in 1,852 blocks ... Summary after the fix: LEAK SUMMARY: definitely lost: 1,608 bytes in 67 blocks ... Signed-off-by: Ulf Magnusson <ulfalizer@gmail.com> Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com> Signed-off-by: Sasha Levin <alexander.levin@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| * kconfig: Fix automatic menu creation mem leakUlf Magnusson2018-05-301-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [ Upstream commit ae7440ef0c8013d68c00dad6900e7cce5311bb1c ] expr_trans_compare() always allocates and returns a new expression, giving the following leak outline: ... *Allocate* basedep = expr_trans_compare(basedep, E_UNEQUAL, &symbol_no); ... for (menu = parent->next; menu; menu = menu->next) { ... *Copy* dep2 = expr_copy(basedep); ... *Free copy* expr_free(dep2); } *basedep lost!* Fix by freeing 'basedep' after the loop. Summary from Valgrind on 'menuconfig' (ARCH=x86) before the fix: LEAK SUMMARY: definitely lost: 344,376 bytes in 14,349 blocks ... Summary after the fix: LEAK SUMMARY: definitely lost: 44,448 bytes in 1,852 blocks ... Signed-off-by: Ulf Magnusson <ulfalizer@gmail.com> Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com> Signed-off-by: Sasha Levin <alexander.levin@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| * kconfig: Don't leak main menus during parsingUlf Magnusson2018-05-301-9/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [ Upstream commit 0724a7c32a54e3e50d28e19e30c59014f61d4e2c ] If a 'mainmenu' entry appeared in the Kconfig files, two things would leak: - The 'struct property' allocated for the default "Linux Kernel Configuration" prompt. - The string for the T_WORD/T_WORD_QUOTE prompt after the T_MAINMENU token, allocated on the heap in zconf.l. To fix it, introduce a new 'no_mainmenu_stmt' nonterminal that matches if there's no 'mainmenu' and adds the default prompt. That means the prompt only gets allocated once regardless of whether there's a 'mainmenu' statement or not, and managing it becomes simple. Summary from Valgrind on 'menuconfig' (ARCH=x86) before the fix: LEAK SUMMARY: definitely lost: 344,568 bytes in 14,352 blocks ... Summary after the fix: LEAK SUMMARY: definitely lost: 344,440 bytes in 14,350 blocks ... Signed-off-by: Ulf Magnusson <ulfalizer@gmail.com> Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com> Signed-off-by: Sasha Levin <alexander.levin@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
* | Merge 3.18.105 into android-msm-marlin-3.18-ltsPetri Gynther2018-08-171-0/+1
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Linux 3.18.105 * Revert "xhci: plat: Register shutdown for xhci_plat" drivers/usb/host/xhci-plat.c * ipv6: the entire IPv6 header chain must fit the first fragment net/ipv6/ip6_output.c * net sched actions: fix dumping which requires several messages to user space net/sched/act_api.c r8169: fix setting driver_data after register_netdev * ip6_tunnel: better validate user provided tunnel names net/ipv6/ip6_tunnel.c * vti6: better validate user provided tunnel names net/ipv6/ip6_vti.c ip6_gre: better validate user provided tunnel names * ipv6: sit: better validate user provided tunnel names net/ipv6/sit.c * ip_tunnel: better validate user provided tunnel names net/ipv4/ip_tunnel.c * net: fool proof dev_valid_name() net/core/dev.c * bonding: process the err returned by dev_set_allmulti properly in bond_enslave drivers/net/bonding/bond_main.c * bonding: move dev_mc_sync after master_upper_dev_link in bond_enslave drivers/net/bonding/bond_main.c * bonding: fix the err path for dev hwaddr sync in bond_enslave drivers/net/bonding/bond_main.c vhost: correctly remove wait queue during poll failure sky2: Increase D3 delay to sky2 stops working after suspend sctp: sctp_sockaddr_af must check minimal addr length for AF_INET6 sctp: do not leak kernel memory to user space pptp: remove a buggy dst release in pptp_connect() * netlink: make sure nladdr has correct size in netlink_connect() net/netlink/af_netlink.c * net: fix possible out-of-bound read in skb_network_protocol() net/core/dev.c * futex: Remove requirement for lock_page() in get_futex_key() kernel/futex.c * random: use lockless method of accessing and updating f->reg_idx drivers/char/random.c virtio_net: check return value of skb_to_sgvec in one more location virtio_net: check return value of skb_to_sgvec always rxrpc: check return value of skb_to_sgvec always * ipsec: check return value of skb_to_sgvec always net/ipv4/ah4.c net/ipv4/esp4.c net/ipv6/ah6.c net/ipv6/esp6.c EDAC, mv64x60: Fix an error handling path tty: n_gsm: Allow ADM response in addition to UA for control dlci scsi: libsas: initialize sas_phy status according to response of DISCOVER scsi: libsas: fix error when getting phy events scsi: libsas: fix memory leak in sas_smp_get_phy_events() bcache: segregate flash only volume write streams bcache: stop writeback thread after detaching vxlan: dont migrate permanent fdb entries during learn ACPICA: Disassembler: Abort on an invalid/unknown AML opcode ACPICA: Events: Add runtime stub support for event APIs * Bluetooth: Send HCI Set Event Mask Page 2 command only when needed net/bluetooth/hci_core.c iio: magnetometer: st_magn_spi: fix spi_device_id table sparc64: ldc abort during vds iso boot sctp: fix recursive locking warning in sctp_do_peeloff bnx2x: Allow vfs to disable txvlan offload xen: avoid type warning in xchg_xen_ulong perf tests: Decompress kernel module before objdump net: emac: fix reset timeout with AR8035 phy MIPS: kprobes: flush_insn_slot should flush only if probe initialised MIPS: mm: fixed mappings: correct initialisation * perf/core: Correct event creation with PERF_FORMAT_GROUP kernel/events/core.c e1000e: Undo e1000e_pm_freeze if __e1000_shutdown fails * net: phy: avoid genphy_aneg_done() for PHYs without clause 22 support drivers/net/phy/phy.c mceusb: sporadic RX truncation corruption fix cx25840: fix unchecked return values e1000e: fix race condition around skb_tstamp_tx() tags: honor COMPILED_SOURCE with apart output directory perf report: Ensure the perf DSO mapping matches what libdw sees net/mlx4: Fix the check in attaching steering rules * skbuff: return -EMSGSIZE in skb_to_sgvec to prevent overflow include/linux/skbuff.h net/core/skbuff.c bio-integrity: Do not allocate integrity context for bio w/o data Fix serial console on SNI RM400 machines drm/omap: fix tiled buffer stride calculations mISDN: Fix a sleep-in-atomic bug qlcnic: Fix a sleep-in-atomic bug in qlcnic_82xx_hw_write_wx_2M and qlcnic_82xx_hw_read_wx_2M perf trace: Add mmap alias for s390 powerpc/spufs: Fix coredump of SPU contexts KVM: SVM: do not zero out segment attributes if segment is unusable or not present net: freescale: fix potential null pointer dereference * rtc: interface: Validate alarm-time before handling rollover drivers/rtc/interface.c * arm64: futex: Fix undefined behaviour with FUTEX_OP_OPARG_SHIFT usage arch/arm64/include/asm/futex.h powerpc/[booke|4xx]: Don't clobber TCR[WP] when setting TCR[DIE] ovl: filter trusted xattr for non-admin hdlcdrv: Fix divide by zero in hdlcdrv_ioctl wl1251: check return from call to wl1251_acx_arp_ip_filter vfb: fix video mode and line_length being set when loaded scsi: libiscsi: Allow sd_shutdown on bad transport * l2tp: fix missing print session offset info net/l2tp/l2tp_netlink.c net: llc: add lock_sock in llc_ui_bind to avoid a race condition KVM: nVMX: Fix handling of lmsw instruction * bonding: Don't update slave->link until ready to commit drivers/net/bonding/bond_main.c * net: move somaxconn init from sysctl code net/core/net_namespace.c net/core/sysctl_net_core.c * ext4: fix off-by-one on max nr_pages in ext4_find_unwritten_pgoff() fs/ext4/file.c * fix race in drivers/char/random.c:get_reg() drivers/char/random.c scsi: bnx2fc: fix race condition in bnx2fc_get_host_stats() * netfilter: ctnetlink: fix incorrect nf_ct_put during hash resize net/netfilter/nf_conntrack_netlink.c libceph: NULL deref on crush_decode() error path * block: fix an error code in add_partition() block/partition-generic.c leds: pca955x: Correct I2C Functionality ray_cs: Avoid reading past end of buffer ARM: davinci: da8xx: Create DSP device only when assigned memory * xfrm: fix state migration copy replay sequence numbers net/xfrm/xfrm_state.c selftests/powerpc: Fix TM resched DSCR test with some compilers ath5k: fix memory leak on buf on failed eeprom read sh_eth: Use platform device for printing before register_netdev() USB: ene_usb6250: fix SCSI residue overwriting net: x25: fix one potential use-after-free issue USB: ene_usb6250: fix first command execution usb: chipidea: properly handle host or gadget initialization failure * neighbour: update neigh timestamps iff update is effective net/core/neighbour.c ata: libahci: properly propagate return value of platform_get_irq() btrfs: fix incorrect error return ret being passed to mapping_set_error usb: dwc3: keystone: check return value async_tx: Fix DMA_PREP_FENCE usage in do_async_gen_syndrome() * ipv6: avoid dad-failures for addresses with NODAD net/ipv6/addrconf.c ARM: dts: imx6qdl-wandboard: Fix audio channel swap x86/tsc: Provide 'tsc=unstable' boot parameter staging: wlan-ng: prism2mgmt.c: fixed a double endian conversion before calling hfa384x_drvr_setconfig16, also fixes relative sparse warning PowerCap: Fix an error code in powercap_register_zone() SMB2: Fix share type handling vmxnet3: ensure that adapter is in proper state during force_close KVM: PPC: Book3S PR: Check copy_to/from_user return values netxen_nic: set rcode to the return status from the call to netxen_issue_cmd net: qca_spi: Fix alignment issues in rx path CIFS: silence lockdep splat in cifs_relock_file() net/mlx4_en: Avoid adding steering rules with invalid ring s390: move _text symbol to address higher than zero * pidns: disable pid allocation if pid_ns_prepare_proc() is failed in alloc_pid() kernel/pid.c lockd: fix lockd shutdown race net: ethernet: ti: cpsw: adjust cpsw fifos depth for fullduplex flow control qlge: Avoid reading past end of buffer bna: Avoid reading past end of buffer mac80211: bail out from prep_connection() if a reconfig is ongoing * af_key: Fix slab-out-of-bounds in pfkey_compile_policy. net/key/af_key.c IB/srpt: Fix abort handling NFSv4.1: RECLAIM_COMPLETE must handle NFS4ERR_CONN_NOT_BOUND_TO_SESSION Linux 3.18.104 net: fec: fix build error in fec driver Change-Id: I4271a8e3f0dc5c5ea30cca2fba101e2fb9e53132 Signed-off-by: Petri Gynther <pgynther@google.com>
| * tags: honor COMPILED_SOURCE with apart output directoryRobert Jarzmik2018-04-131-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [ Upstream commit cbf52a3e6a8a92beec6e0c70abf4111cd8f8faf7 ] When the kernel is compiled with an "O=" argument, the object files are not in the source tree, but in the build tree. This patch fixes O= build by looking for object files in the build tree. Fixes: 923e02ecf3f8 ("scripts/tags.sh: Support compiled source") Signed-off-by: Robert Jarzmik <robert.jarzmik@free.fr> Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com> Signed-off-by: Sasha Levin <alexander.levin@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
* | Merge 3.18.100 into android-msm-marlin-3.18Thierry Strudel2018-03-202-1/+15
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Linux 3.18.100 fixup: sctp: verify size of a new chunk in _sctp_make_chunk() serial: 8250_pci: Add Brainboxes UC-260 4 port serial device usb: usbmon: Read text within supplied buffer size USB: usbmon: remove assignment from IS_ERR argument * usb: quirks: add control message delay for 1b1c:1b20 * staging: android: ashmem: Fix lockdep issue during llseek uas: fix comparison for error code tty/serial: atmel: add new version check for usart serial: sh-sci: prevent lockup on full TTY buffers x86: Treat R_X86_64_PLT32 as R_X86_64_PC32 x86/module: Detect and skip invalid relocations scripts: recordmcount: break hardlinks ubi: Fix race condition between ubi volume creation and udev netfilter: ipv6: fix use-after-free Write in nf_nat_ipv6_manip_pkt netfilter: bridge: ebt_among: add missing match size checks * netfilter: ebtables: CONFIG_COMPAT: don't trust userland offsets * netfilter: IDLETIMER: be syzkaller friendly * netfilter: nat: cope with negative port range netfilter: x_tables: fix missing timer initialization in xt_LED ALSA: seq: More protection for concurrent write and ioctl races ALSA: seq: Don't allow resizing pool in use x86/MCE: Serialize sysfs changes Input: matrix_keypad - fix race when disabling interrupts MIPS: BMIPS: Do not mask IPIs during suspend scsi: qla2xxx: Fix NULL pointer crash due to active timer for ABTS Linux 3.18.99 * dm io: fix duplicate bio completion due to missing ref count * fib_semantics: Don't match route with mismatching tclassid * net: ipv4: don't allow setting net.ipv4.route.min_pmtu below 68 sctp: verify size of a new chunk in _sctp_make_chunk() s390/qeth: fix IPA command submission race s390/qeth: fix SETIP command handling sctp: fix dst refcnt leak in sctp_v6_get_dst() * udplite: fix partial checksum initialization * ppp: prevent unregistered channels from connecting to PPP units * netlink: ensure to loop over all netns in genlmsg_multicast_allns() * net: fix race on decreasing number of TX queues * ipv6 sit: work around bogus gcc-8 -Wrestrict warning hdlc_ppp: carrier detect ok, don't turn off negotiation * bridge: check brport attr show in brport_show * leds: do not overflow sysfs buffer in led_trigger_show net: fec: introduce fec_ptp_stop and use in probe fail path ARM: mvebu: Fix broken PL310_ERRATA_753970 selects cpufreq: s3c24xx: Fix broken s3c_cpufreq_init() * ALSA: usb-audio: Add a quirck for B&W PX headphones tpm_i2c_nuvoton: fix potential buffer overruns caused by bit glitches on the bus tpm_i2c_infineon: fix potential buffer overruns caused by bit glitches on the bus Linux 3.18.98 net: gianfar_ptp: move set_fipers() to spinlock protecting area sctp: make use of pre-calculated len xen/gntdev: Fix partial gntdev_mmap() cleanup xen/gntdev: Fix off-by-one error when unmapping with holes SolutionEngine771x: fix Ether platform data mdio-sun4i: Fix a memory leak xen-netfront: enable device after manual module load drm/ttm: check the return value of kzalloc e1000: fix disabling already-disabled warning xfs: quota: check result of register_shrinker() xfs: quota: fix missed destroy of qi_tree_lock s390/dasd: fix wrongly assigned configuration data * led: core: Fix brightness setting when setting delay_off=0 bnx2x: Improve reliability in case of nested PCI errors tg3: Enable PHY reset in MTU change path for 5720 tg3: Add workaround to restrict 5762 MRRS to 2048 scsi: storvsc: Fix scsi_cmd error assignments in storvsc_handle_error net: arc_emac: fix arc_emac_rx() error paths spi: atmel: fixed spin_lock usage inside atmel_spi_remove * sget(): handle failures of register_shrinker() * ipv6: icmp6: Allow icmp messages to be looped back mtd: nand: gpmi: Fix failure when a erased page has a bitflip at BBM * hrtimer: Ensure POSIX compliance (relative CLOCK_REALTIME hrtimers) * ipv6: Skip XFRM lookup if dst_entry in socket cache is valid Linux 3.18.97 * ASN.1: fix out-of-bounds read when parsing indefinite length item * usb: gadget: f_fs: Process all descriptors during bind * usb: dwc3: gadget: Set maxpacket size for ep0 IN * arm64: Disable unhandled signal log messages by default * irqchip/gic-v3: Use wmb() instead of smb_wmb() in gic_raise_softirq() x86/oprofile: Fix bogus GCC-8 warning in nmi_setup() iio: adis_lib: Initialize trigger before requesting interrupt * iio: buffer: check if a buffer has been set up when poll is called cfg80211: fix cfg80211_beacon_dup scsi: ibmvfc: fix misdefined reserved field in ibmvfc_fcp_rsp_info PCI: keystone: Fix interrupt-controller-node lookup * netfilter: drop outermost socket lock in getsockopt() Linux 3.18.96 crypto: s5p-sss - Fix kernel Oops in AES-ECB mode KVM: async_pf: Fix #DF due to inject "Page not Present" and "Page Ready" exceptions simultaneously hippi: Fix a Fix a possible sleep-in-atomic bug in rr_close * xen: XEN_ACPI_PROCESSOR is Dom0-only x86/mm/kmmio: Fix mmiotrace for page unaligned addresses * mm/early_ioremap: Fix boot hang with earlyprintk=efi,keep dmaengine: jz4740: disable/unprepare clk if probe fails * xfrm: Fix stack-out-of-bounds with misconfigured transport mode policies. spi: sun4i: disable clocks in the remove function * 509: fix printing uninitialized stack memory when OID is empty btrfs: Fix possible off-by-one in btrfs_search_path_in_tree net_sched: red: Avoid illegal values net_sched: red: Avoid devision by zero gianfar: fix a flooded alignment reports because of padding issue. s390/dasd: prevent prefix I/O error powerpc/perf: Fix oops when grouping different pmu events scripts/kernel-doc: Don't fail with status != 0 if error encountered with -none media: s5k6aa: describe some function parameters perf bench numa: Fixup discontiguous/sparse numa nodes perf top: Fix window dimensions change handling ARM: dts: am4372: Correct the interrupts_properties of McASP ARM: AM33xx: PRM: Remove am33xx_pwrdm_read_prev_pwrst function * usb: build drivers/usb/common/ when USB_SUPPORT is set usbip: keep usbip_device sockfd state in sync with tcp_socket dn_getsockoptdecnet: move nf_{get/set}sockopt outside sock lock video: fbdev/mmp: add MODULE_LICENSE ASoC: ux500: add MODULE_LICENSE tag * selinux: ensure the context is NUL terminated in security_context_to_sid_core() * Provide a function to create a NUL-terminated string from unterminated data * net: avoid skb_warn_bad_offload on IS_ERR netfilter: xt_RATEEST: acquire xt_rateest_mutex for hash insert * netfilter: on sockopt() acquire sock lock only in the required scope netfilter: ipt_CLUSTERIP: fix out-of-bounds accesses in clusterip_tg_check() * netfilter: x_tables: avoid out-of-bounds reads in xt_request_find_{match|target} * netfilter: x_tables: fix int overflow in xt_alloc_table_info() crypto: x86/twofish-3way - Fix %rbp usage * selinux: skip bounded transition processing if the policy isn't loaded * xfrm: check id proto in validate_tmpl() * mm,vmscan: Make unregister_shrinker() no-op if register_shrinker() failed. media: r820t: fix r820t_write_reg for KASAN ARM: dts: s5pv210: add interrupt-parent for ohci ALSA: seq: Fix racy pool initializations Btrfs: fix crash due to not cleaning up tree log block's dirty bits Btrfs: fix deadlock in run_delalloc_nocow console/dummy: leave .con_font_get set to NULL video: fbdev: atmel_lcdfb: fix display-timings lookup ext4: correct documentation for grpid mount option * ext4: save error to disk in __ext4_grp_locked_error() drm/radeon: adjust tested variable ALSA: seq: Fix regression by incorrect ioctl_mutex usages arm: spear13xx: Fix spics gpio controller's warning arm: spear13xx: Fix dmas cells arm: spear600: Add missing interrupt-parent of rtc s390: fix handling of -1 in set{,fs}[gu]id16 syscalls * PM / devfreq: Propagate error from devfreq_add_device() IB/mlx4: Fix incorrectly releasing steerable UD QPs when have only ETH ports Linux 3.18.95 mn10300/misalignment: Use SIGSEGV SEGV_MAPERR to report a failed user copy ACPI: sbshc: remove raw pointer from printk() message pktcdvd: Fix pkt_setup_dev() error path EDAC, octeon: Fix an uninitialized variable warning xtensa: fix futex_atomic_cmpxchg_inatomic alpha: fix reboot on Avanti platform alpha: fix crash if pthread_create races with signal delivery signal/sh: Ensure si_signo is initialized in do_divide_error signal/openrisc: Fix do_unaligned_access to send the proper signal * kernel/async.c: revert "async: simplify lowest_in_progress()" media: cxusb, dib0700: ignore XC2028_I2C_FLUSH crypto: caam - fix endless loop when DECO acquire fails * crypto: cryptd - pass through absence of ->setkey() * crypto: hash - introduce crypto_hash_alg_has_setkey() * kernfs: fix regression in kernfs_fop_write caused by wrong type NFS: commit direct writes even if they fail partially NFS: Add a cond_resched() to nfs_commit_release_pages() mtd: nand: Fix nand_do_read_oob() return value media: dvb-usb-v2: lmedm04: move ts2020 attach to dm04_lme2510_tuner media: dvb-usb-v2: lmedm04: Improve logic checking of warm start dccp: CVE-2017-8824: use-after-free in DCCP code usbip: vhci: stop printing kernel pointer addresses in messages usbip: stub: stop printing kernel pointer addresses in messages usbip: prevent leaking socket pointer address in messages usbip: vhci-hcd: Add USB3 SuperSpeed support usb: usbip: Fix possible deadlocks reported by lockdep usbip: Fix potential format overflow in userspace tools usbip: prevent vhci_hcd driver from leaking a socket pointer address usbip: fix stub_rx: harden CMD_SUBMIT path to handle malicious input usbip: fix stub_rx: get_pipe() to validate endpoint number * posix-timer: Properly check sigevent->sigev_notify CIFS: zero sensitive data when freeing cifs: Fix autonegotiate security settings mismatch cifs: Fix missing put_xid in cifs_file_strict_mmap * ipv4: Map neigh lookup keys in __ipv4_neigh_lookup_noref() * KEYS: encrypted: fix buffer overread in valid_master_desc() ARM: exynos_defconfig: Enable NFSv4 client ARM: exynos_defconfig: Enable options to mount a rootfs via NFS * tcp: release sk_frag.page in tcp_disconnect r8169: fix RTL8168EP take too long to complete driver initialization. qlcnic: fix deadlock bug * net: igmp: add a missing rcu locking section ip6mr: fix stale iterator vhost_net: stop device during reset owner Linux 3.18.94 um: Fix out-of-tree build ASoC: pcm512x: add missing MODULE_DESCRIPTION/AUTHOR/LICENSE spi: imx: do not access registers while clocks disabled * selinux: general protection fault in sock_has_perm usb: uas: unconditionally bring back host after reset * usb: f_fs: Prevent gadget unbind if it is already unbound * USB: serial: simple: add Motorola Tetra driver usbip: list: don't list devices attached to vhci_hcd usbip: prevent bind loops on devices attached to vhci_hcd USB: serial: io_edgeport: fix possible sleep-in-atomic CDC-ACM: apply quirk for card reader USB: cdc-acm: Do not log urb submission errors on disconnect * USB: serial: pl2303: new device id for Chilitag staging: rtl8188eu: Fix incorrect response to SIOCGIWESSID * usb: gadget: don't dereference g until after it has been null checked media: usbtv: add a new usbid * scsi: ufs: ufshcd: fix potential NULL pointer dereference in ufshcd_config_vreg * quota: Check for register_shrinker() failure. * net: ethernet: xilinx: Mark XILINX_LL_TEMAC broken on 64-bit hwmon: (pmbus) Use 64bit math for DIRECT format values nfsd: check for use of the closed special stateid nfsd: CLOSE SHOULD return the invalid special stateid for NFSv4.x (x>0) xen-netfront: remove warning when unloading module KVM: VMX: Fix rflags cache during vCPU reset mac80211: fix the update of path metric for RANN frame bcache: check return value of register_shrinker KVM: X86: Fix operand/address-size during instruction decoding KVM: x86: Don't re-execute instruction when not passing CR2 value KVM: x86: emulator: Return to user-mode on L1 CPL=0 emulation failure igb: Free IRQs when device is hotplugged gpio: iop: add missing MODULE_DESCRIPTION/AUTHOR/LICENSE ALSA: seq: Make ioctls race-free * loop: fix concurrent lo_open/lo_release um: Remove copy&paste code from init.h um: Stop abusing __KERNEL__ um: link vmlinux with -no-pie * Input: do not emit unneeded EV_SYN when suspending Linux 3.18.93 * hrtimer: Reset hrtimer cpu base proper on CPU hotplug * ipv4: Make neigh lookup keys for loopback/point-to-point devices be INADDR_ANY * ipv6: fix udpv6 sendmsg crash caused by too small MTU * net: Allow neigh contructor functions ability to modify the primary_key vmxnet3: repair memory leak sctp: return error if the asoc has been peeled off in sctp_wait_for_sndbuf sctp: do not allow the v4 socket to bind a v4mapped v6 address * pppoe: take ->needed_headroom of lower device into account on xmit * net: qdisc_pkt_len_init() should be more robust * tcp: __tcp_hdrlen() helper * net: igmp: fix source address check for IGMPv3 reports dccp: don't restart ccid2_hc_tx_rto_expire() if sk in closed state * net: tcp: close sock if net namespace is exiting x86/microcode/intel: Extend BDW late-loading further with LLC size check * eventpoll.h: add missing epoll event masks scsi: libiscsi: fix shifting of DID_REQUEUE host byte * fs/fcntl: f_setown, avoid undefined behaviour reiserfs: don't preallocate blocks for extended attributes reiserfs: fix race in prealloc discard netfilter: xt_osf: Add missing permission checks netfilter: nfnetlink_cthelper: Add missing permission checks netfilter: nf_conntrack_sip: extend request line validation * netfilter: restart search if moved to other chain * netfilter: nf_ct_expect: remove the redundant slash when policy name is empty ipc: msg, make msgrcv work with LONG_MIN hwpoison, memcg: forcibly uncharge LRU pages * mm/mmap.c: do not blow on PROT_NONE MAP_FIXED holes in the stack can: af_can: canfd_rcv(): replace WARN_ONCE by pr_warn_once can: af_can: can_rcv(): replace WARN_ONCE by pr_warn_once usbip: Fix implicit fallthrough warning x86/asm/32: Make sync_core() handle missing CPUID on all 32-bit kernels MIPS: AR7: ensure the port type's FCR value is used arm64: KVM: Fix SMCCC handling of unimplemented SMC/HVC calls dm thin metadata: THIN_MAX_CONCURRENT_LOCKS should be 6 dm btree: fix serious bug in btree_split_beneath() ARM: dts: kirkwood: fix pin-muxing of MPP7 on OpenBlocks A7 * phy: work around 'phys' references to usb-nop-xceiv devices Input: twl4030-vibra - fix sibling-node lookup Input: twl4030-vibra - fix ERROR: Bad of_node_put() warning Input: twl6040-vibra - fix child-node lookup Input: twl6040-vibra - fix DT node memory management Input: 88pm860x-ts - fix child-node lookup * pipe: avoid round_pipe_size() nr_pages overflow on 32-bit * af_key: fix buffer overread in parse_exthdrs() * af_key: fix buffer overread in verify_address_len() ALSA: hda - Apply the existing quirk to iMac 14,1 * ALSA: pcm: Remove yet superfluous WARN_ON() * futex: Prevent overflow by strengthen input validation * scsi: sg: disable SET_FORCE_LOW_DMA * gcov: disable for COMPILE_TEST Linux 3.18.92 e1000e: Fix e1000_check_for_copper_link_ich8lan return value. uas: ignore UAS for Norelsys NS1068(X) chips * Bluetooth: Prevent stack info leak from the EFS element. * staging: android: ashmem: fix a race condition in ASHMEM_SET_SIZE ioctl usbip: remove kernel addresses from usb device and urb debug msgs USB: fix usbmon BUG trigger usb: misc: usb3503: make sure reset is low for at least 100us USB: serial: cp210x: add new device ID ELV ALC 8xxx USB: serial: cp210x: add IDs for LifeScan OneTouch Verio IQ Revert "can: kvaser_usb: free buf in error paths" target: Avoid early CMD_T_PRE_EXECUTE failures during ABORT_TASK iscsi-target: Make TASK_REASSIGN use proper se_cmd->cmd_kref x86/microcode/intel: Extend BDW late-loading with a revision check * crypto: algapi - fix NULL dereference in crypto_remove_spawns() * net: stmmac: enable EEE in MII, GMII or RGMII only sh_eth: fix SH7757 GEther initialization sh_eth: fix TSU resource handling RDS: null pointer dereference in rds_atomic_free_op RDS: Heap OOB write in rds_message_alloc_sgs() 8021q: fix a memory leak for VLAN 0 device x86/acpi: Reduce code duplication in mp_override_legacy_irq() ALSA: aloop: Fix racy hw constraints adjustment ALSA: aloop: Fix inconsistent format due to incomplete rule ALSA: aloop: Release cable upon open error path ALSA: pcm: Allow aborting mutex lock at OSS read/write loops ALSA: pcm: Abort properly at pending signal in OSS read/write loops ALSA: pcm: Add missing error checks in OSS emulation plugin builder * ALSA: pcm: Remove incorrect snd_BUG_ON() usages x86/acpi: Handle SCI interrupts above legacy space gracefully kvm: vmx: Scrub hardware GPRs at VM-exit * perf/core: Fix concurrent sys_perf_event_open() vs. 'move_group' race MIPS: Also verify sizeof `elf_fpreg_t' with PTRACE_SETREGSET MIPS: Disallow outsized PTRACE_SETREGSET NT_PRFPREG regset accesses MIPS: Fix an FCSR access API regression with NT_PRFPREG and MSA MIPS: Consistently handle buffer counter with PTRACE_SETREGSET MIPS: Guard against any partial write attempt with PTRACE_SETREGSET MIPS: Factor out NT_PRFPREG regset access helpers IB/srpt: Disable RDMA access by the initiator can: gs_usb: fix return value of the "set_bittiming" callback Input: elantech - add new icbody type 15 * kernel/signal.c: remove the no longer needed SIGNAL_UNKILLABLE check in complete_signal() * kernel/signal.c: protect the SIGNAL_UNKILLABLE tasks from !sig_kernel_only() signals * kernel/signal.c: protect the traced SIGNAL_UNKILLABLE tasks from SIGKILL fscache: Fix the default for fscache_maybe_release_page() crypto: n2 - cure use after free kernel/acct.c: fix the acct->needcheck check in check_free_space() Linux 3.18.91 * n_tty: fix EXTPROC vs ICANON interaction with TIOCINQ (aka FIONREAD) * usb: xhci: Add XHCI_TRUST_TX_LENGTH for Renesas uPD720201 * usb: add RESET_RESUME for ELSA MicroLink 56K * usb: Add device quirk for Logitech HD Pro Webcam C925e USB: serial: option: add support for Telit ME910 PID 0x1101 * net: ipv4: fix for a race condition in raw_sendmsg sctp: Replace use of sockets_allocated with specified macro. net: mvmdio: disable/unprepare clocks in EPROBE_DEFER case tg3: Fix rx hang on MTU change with 5717/5719 * tcp md5sig: Use skb's saddr when replying to an incoming segment net: qmi_wwan: add Sierra EM7565 1199:9091 * netlink: Add netns check on taps * net: igmp: Use correct source address on IGMPv3 reports * ipv6: mcast: better catch silly mtu values * ipv4: igmp: guard against silly MTU values * kbuild: add '-fno-stack-check' to kernel build options ASoC: twl4030: fix child-node lookup * ring-buffer: Mask out the info bits when returning buffer page length * tracing: Fix crash when it fails to alloc ring buffer * tracing: Fix possible double free on failure of allocating trace buffer * tracing: Remove extra zeroing out of the ring buffer page net: mvneta: clear interface link status on port disable powerpc/perf: Dereference BHRB entries safely KVM: X86: Fix load RFLAGS w/o the fixed bit parisc: Hide Diva-built-in serial aux and graphics card * PCI / PM: Force devices to D0 in pci_pm_thaw_noirq() * ALSA: usb-audio: Fix the missing ctl name suffix at parsing SU * ALSA: rawmidi: Avoid racy info ioctl via ctl device mfd: twl6040: Fix child-node lookup mfd: twl4030-audio: Fix sibling-node lookup crypto: mcryptd - protect the per-CPU queue with a lock ACPI: APEI / ERST: Fix missing error handling in erst_reader() Linux 3.18.90 fm10k: ensure we process SM mbx when processing VF mbx scsi: lpfc: PLOGI failures during NPIV testing scsi: lpfc: Fix secure firmware updates PCI/AER: Report non-fatal errors only to the affected endpoint igb: check memory allocation failure PCI: Create SR-IOV virtfn/physfn links before attaching driver scsi: cxgb4i: fix Tx skb leak * PCI: Avoid bus reset if bridge itself is broken net: phy: at803x: Change error to EINVAL for invalid MAC crypto: crypto4xx - increase context and scatter ring buffer elements backlight: pwm_bl: Fix overflow condition cpuidle: powernv: Pass correct drv->cpumask for registration ARM: dma-mapping: disallow dma_get_sgtable() for non-kernel managed memory * xhci: plat: Register shutdown for xhci_plat isdn: kcapi: avoid uninitialized data ARM: dts: am335x-evmsk: adjust mmc2 param to allow suspend netfilter: nf_nat_snmp: Fix panic when snmp_trap_helper fails to register netfilter: nfnl_cthelper: fix a race when walk the nf_ct_helper_hash table irda: vlsi_ir: fix check for DMA mapping errors i40e: Do not enable NAPI on q_vectors that have no rings * net: Do not allow negative values for busy_read and busy_poll sysctl interfaces s390/qeth: no ETH header for outbound AF_IUCV * HID: xinmo: fix for out of range for THT 2P arcade controller. hwmon: (asus_atk0110) fix uninitialized data access ARM: dts: ti: fix PCI bus dtc warnings KVM: x86: correct async page present tracepoint scsi: lpfc: Fix PT2PT PRLI reject netfilter: nfnl_cthelper: Fix memory leak netfilter: nfnl_cthelper: fix runtime expectation policy updates usb: gadget: udc: remove pointer dereference after free usb: gadget: f_uvc: Sanity check wMaxPacketSize for SuperSpeed net: qmi_wwan: Add USB IDs for MDM6600 modem on Motorola Droid 4 * crypto: deadlock between crypto_alg_sem/rtnl_mutex/genl_mutex * r8152: fix the list rx_done may be used without initialization * cpuidle: Validate cpu_dev in cpuidle_add_sysfs() ALSA: hda - add support for docking station for HP 820 G2 * arm64: Initialise high_memory global variable earlier Linux 3.18.89 usb: musb: da8xx: fix babble condition handling ath9k: fix tx99 potential info leak macvlan: Only deliver one copy of the frame to the macvlan interface udf: Avoid overflow when session starts at large offset scsi: bfa: integer overflow in debugfs * scsi: scsi_devinfo: Add REPORTLUN2 to EMC SYMMETRIX blacklist entry raid5: Set R5_Expanded on parity devices as well as data. * pinctrl: adi2: Fix Kconfig build problem * tty fix oops when rmmod 8250 * PCI: Detach driver before procfs & sysfs teardown on device remove xfs: fix log block underflow during recovery cycle verification bcache: fix wrong cache_misses statistics bcache: explicitly destroy mutex while exiting GFS2: Take inode off order_write list when setting jdata flag * thermal/drivers/step_wise: Fix temperature regulation misbehavior * ppp: Destroy the mutex when cleanup clk: tegra: Fix cclk_lp divisor register * mm: Handle 0 flags in _calc_vm_trans() macro arm-ccn: perf: Prevent module unload while PMU is in use target/file: Do not return error for UNMAP if length is zero target:fix condition return in core_pr_dump_initiator_port() iscsi-target: fix memory leak in lio_target_tiqn_addtpg() target/iscsi: Fix a race condition in iscsit_add_reject_from_cmd() powerpc/ipic: Fix status get and status clear powerpc/opal: Fix EBUSY bug in acquiring tokens powerpc/powernv/cpufreq: Fix the frequency read by /proc/cpuinfo PCI/PME: Handle invalid data when reading Root Status video: fbdev: au1200fb: Return an error code if a memory allocation fails video: fbdev: au1200fb: Release some resources if a memory allocation fails video: udlfb: Fix read EDID timeout fbdev: controlfb: Add missing modes to fix out of bounds access target: Use system workqueue for ALUA transitions btrfs: add missing memset while reading compressed inline extents NFSv4.1 respect server's max size in CREATE_SESSION perf symbols: Fix symbols__fixup_end heuristic for corner cases afs: Fix afs_kill_pages() afs: Fix page leak in afs_write_begin() afs: Populate and use client modification time afs: Fix the maths in afs_fs_store_data() afs: Flush outstanding writes when an fd is closed afs: Adjust mode bits processing afs: Populate group ID from vnode status afs: Fix missing put_page() drm/radeon: reinstate oland workaround for sclk * sched/deadline: Use deadline instead of period when calculating overflow drm/radeon/si: add dpm quirk for Oland openrisc: fix issue handling 8 byte get_user calls * net: Resend IGMP memberships upon peer notification. * dmaengine: Fix array index out of bounds warning in __get_unmap_pool() net: wimax/i2400m: fix NULL-deref at probe Input: i8042 - add TUXEDO BU1406 (N24_25BU) to the nomux list NFSD: fix nfsd_reset_versions for NFSv4. NFSD: fix nfsd_minorversion(.., NFSD_AVAIL) net: bcmgenet: Power up the internal PHY before probing the MII net: bcmgenet: correct MIB access of UniMAC RUNT counters net: bcmgenet: correct the RBUF_OVFL_CNT and RBUF_ERR_CNT MIB values usb: phy: isp1301: Add OF device ID table mac80211: Fix addition of mesh configuration element * KEYS: Don't permit request_key() to construct a new keyring * Don't leak a key reference if request_key() tries to use a revoked keyring * ext4: fix crash when a directory's i_size is too small * xhci: Don't add a virt_dev to the devs array before it's fully allocated usbip: fix stub_send_ret_submit() vulnerability to null transfer_buffer * USB: core: prevent malicious bNumInterfaces overflow * USB: uas and storage: Add US_FL_BROKEN_FUA for another JMicron JMS567 ID autofs: fix careless error in recent commit crypto: salsa20 - fix blkcipher_walk API usage * crypto: hmac - require that the underlying hash algorithm is unkeyed Linux 3.18.88 * usb: gadget: ffs: Forbid usb_ep_alloc_request from sleeping arm: KVM: Fix VTTBR_BADDR_MASK BUG_ON off-by-one * audit: ensure that 'audit=1' actually enables audit for PID 1 afs: Connect up the CB.ProbeUuid IB/mlx5: Assign send CQ and recv CQ of UMR QP IB/mlx4: Increase maximal message size under UD QP * xfrm: Copy policy family in clone_policy atm: horizon: Fix irq release error sctp: use the right sk after waking up from wait_buf sleep sctp: do not free asoc when it is already dead in sctp_sendmsg sparc64/mm: set fields in deferred pages sunrpc: Fix rpc_task_begin trace point NFS: Fix a typo in nfs_rename() dynamic-debug-howto: fix optional/omitted ending line number to be LARGE instead of 0 * lib/genalloc.c: make the avail variable an atomic_long_t * route: update fnhe_expires for redirect when the fnhe exists * route: also update fnhe_genid when updating a route cache EDAC, i5000, i5400: Fix definition of NRECMEMB register EDAC, i5000, i5400: Fix use of MTR_DRAM_WIDTH macro axonram: Fix gendisk handling i2c: riic: fix restart condition crypto: s5p-sss - Fix completing crypto request in IRQ handler * ipv6: reorder icmpv6_init() and ip6_mr_init() bnx2x: fix possible overrun of VFPF multicast addresses array spi_ks8995: fix "BUG: key accdaa28 not in .data!" arm: KVM: Survive unknown traps from guests KVM: nVMX: reset nested_run_pending if the vCPU is going to be reset irqchip/crossbar: Fix incorrect type of register size scsi: lpfc: Fix crash during Hardware error recovery on SLI3 adapters * workqueue: trigger WARN if queue_delayed_work() is called with NULL @wq libata: drop WARN from protocol error in ata_sff_qc_issue() USB: gadgetfs: Fix a potential memory leak in 'dev_config()' usb: gadget: configs: plug memory leak selftest/powerpc: Fix false failures for skipped tests Revert "s390/kbuild: enable modversions for symbols exported from asm" * Revert "drm/armada: Fix compile fail" * net/packet: fix a race in packet_bind() and packet_notifier() * sit: update frag_off info rds: Fix NULL pointer dereference in __rds_rdma_map * arm64: fpsimd: Prevent registers leaking from dead tasks KVM: VMX: remove I/O port 0x80 bypass on Intel hosts * arm64: KVM: fix VTTBR_BADDR_MASK BUG_ON off-by-one media: dvb: i2c transfers over usb cannot be done from stack kdb: Fix handling of kallsyms_symbol_next() return value iommu/vt-d: Fix scatterlist offset handling * ALSA: usb-audio: Add check return value for usb_string() * ALSA: usb-audio: Fix out-of-bound error ALSA: seq: Remove spurious WARN_ON() at timer check * ALSA: pcm: prevent UAF in snd_pcm_info x86/PCI: Make broadcom_postcore_init() check acpi_disabled * X.509: reject invalid BIT STRING for subjectPublicKey * KEYS: add missing permission check for request_key() destination * ASN.1: check for error from ASN1_OP_END__ACT actions * efi: Move some sysfs files to be read-only by root isa: Prevent NULL dereference in isa_bus driver callbacks hv: kvp: Avoid reading past allocated blocks from KVP file virtio: release virtio index when fail to device_register can: usb_8dev: cancel urb on -EPIPE and -EPROTO can: esd_usb2: cancel urb on -EPIPE and -EPROTO can: ems_usb: cancel urb on -EPIPE and -EPROTO can: kvaser_usb: cancel urb on -EPIPE and -EPROTO can: kvaser_usb: ratelimit errors if incomplete messages are received can: kvaser_usb: Fix comparison bug in kvaser_usb_read_bulk_callback() can: kvaser_usb: free buf in error paths Linux 3.18.87 usb: host: fix incorrect updating of offset * USB: usbfs: Filter flags passed in from user space * USB: devio: Prevent integer overflow in proc_do_submiturb() * USB: Increase usbfs transfer limit * usb: hub: Cycle HUB power when initialization fails serial: 8250_pci: Add Amazon PCI serial device ID * usb: quirks: Add no-lpm quirk for KY-688 USB 3.1 Type-C Hub uas: Always apply US_FL_NO_ATA_1X quirk to Seagate devices ima: fix hash algorithm initialization net: fec: fix multicast filtering hardware setup * mm: avoid returning VM_FAULT_RETRY from ->page_mkwrite handlers tipc: fix cleanup at module unload net: sctp: fix array overrun read on sctp_timer_tbl NFSv4: Fix client recovery when server reboots multiple times net/appletalk: Fix kernel memory disclosure * vti6: fix device register to report IFLA_INFO_KIND ARM: OMAP1: DMA: Correct the number of logical channels perf test attr: Fix ignored test case result * sysrq : fix Show Regs call trace on ARM EDAC, sb_edac: Fix missing break in switch spi: sh-msiof: Fix DMA transfer size check serial: 8250_fintek: Fix rs485 disablement on invalid ioctl() bcache: recover data from backing when data is clean bcache: only permit to recovery read error when cache device is clean Linux 3.18.86 drm/i915: Prevent zero length "index" write drm/i915: Don't try indexed reads to alternate slave addresses NFS: revalidate "." etc correctly on "open". drm/panel: simple: Add missing panel_simple_unprepare() calls eeprom: at24: check at24_read/write arguments KVM: x86: inject exceptions produced by x86_decode_insn KVM: x86: Exit to user-mode on #UD intercept when emulator requires btrfs: clear space cache inode generation always * mm/madvise.c: fix madvise() infinite loop under special circumstances mm, thp: Do not make page table dirty unconditionally in touch_p[mu]d() * ipsec: Fix aborted xfrm policy dump crash * netlink: add a start callback for starting a netlink dump Linux 3.18.85 xen: xenbus driver must not accept invalid transaction ids s390/kbuild: enable modversions for symbols exported from asm ASoC: wm_adsp: Don't overrun firmware file buffer when reading region data btrfs: return the actual error value from from btrfs_uuid_tree_iterate netfilter: nf_tables: fix oob access netfilter: nft_queue: use raw_smp_processor_id() staging: iio: cdc: fix improper return value mac80211: Suppress NEW_PEER_CANDIDATE event if no room mac80211: Remove invalid flag operations in mesh TSF synchronization ALSA: hda - Apply ALC269_FIXUP_NO_SHUTUP on HDA_FIXUP_ACT_PROBE * drm/armada: Fix compile fail net: 3com: typhoon: typhoon_init_one: fix incorrect return values net: 3com: typhoon: typhoon_init_one: make return values more specific * PCI: Apply _HPX settings only to relevant devices RDS: RDMA: return appropriate error on rdma map failures e1000e: Separate signaling for link check/link up e1000e: Fix return value test e1000e: Fix error path in link detection iio: iio-trig-periodic-rtc: Free trigger resource correctly * USB: fix buffer overflows with parsing CDC headers mtd: nand: Fix writing mtdoops to nand flash. net/9p: Switch to wait_event_killable() * media: v4l2-ctrl: Fix flags field on Control events media: rc: check for integer overflow media: Don't do DMA on stack for firmware upload in the AS102 driver powerpc/signal: Properly handle return value from uprobe_deny_signal() parisc: Fix validity check of pointer size argument in new CAS implementation ixgbe: Fix skb list corruption on Power systems fm10k: Use smp_rmb rather than read_barrier_depends i40evf: Use smp_rmb rather than read_barrier_depends ixgbevf: Use smp_rmb rather than read_barrier_depends igbvf: Use smp_rmb rather than read_barrier_depends igb: Use smp_rmb rather than read_barrier_depends i40e: Use smp_rmb rather than read_barrier_depends * time: Always make sure wall_to_monotonic isn't positive NFC: fix device-allocation error return IB/srpt: Do not accept invalid initiator port names clk: ti: dra7-atl-clock: fix child-node lookups clk: ti: dra7-atl-clock: Fix of_node reference counting KVM: SVM: obey guest PAT KVM: nVMX: set IDTR and GDTR limits when loading L1 host state iscsi-target: Fix non-immediate TMR reference leak fs/9p: Compare qid.path in v9fs_test_inode * ALSA: timer: Remove kernel warning at compat ioctl error paths * ALSA: usb-audio: Add sanity checks in v2 clock parsers * ALSA: usb-audio: Fix potential out-of-bound access at parsing SU * ALSA: usb-audio: Add sanity checks to FE parser * ext4: fix interaction between i_size, fallocate, and delalloc after a crash nfsd: deal with revoked delegations appropriately nfs: Fix ugly referral attributes NFS: Fix typo in nomigration mount option isofs: fix timestamps beyond 2027 bcache: check ca->alloc_thread initialized before wake up it eCryptfs: use after free in ecryptfs_release_messaging() nilfs2: fix race condition that causes file system corruption autofs: don't fail mount for transient error MIPS: BCM47XX: Fix LED inversion for WRT54GSv1 MIPS: Fix an n32 core file generation regset support regression * dm: fix race between dm_get_from_kobject() and __dm_destroy() * dm bufio: fix integer overflow when limiting maximum cache size ALSA: hda: Add Raven PCI ID ARM: 8721/1: mm: dump: check hardware RO bit for LPAE x86/decoder: Add new TEST instruction pattern * lib/mpi: call cond_resched() from mpi_powm() loop * sched: Make resched_cpu() unconditional * ipv6: only call ip6_route_dev_notify() once for NETDEV_UNREGISTER s390/disassembler: increase show_code buffer size Linux 3.18.84 coda: fix 'kernel memory exposure attempt' in fsync ipmi: fix unsigned long underflow ocfs2: should wait dio before inode lock in ocfs2_setattr() ima: do not update security.ima if appraisal status is not INTEGRITY_PASS vlan: fix a use-after-free in vlan_device_event() * af_netlink: ensure that NLMSG_DONE never fails in dumps fealnx: Fix building error on MIPS sctp: do not peel off an assoc from one netns to another one * netfilter/ipvs: clear ipvs_property flag when SKB net namespace changed * tcp: do not mangle skb->cb[] in tcp_make_synack() net/sctp: Always set scope_id in sctp_inet6_skb_msgname * ipv6/dccp: do not inherit ipv6_mc_list from parent Linux 3.18.83 USB: serial: garmin_gps: fix memory leak on probe errors USB: serial: garmin_gps: fix I/O after failed probe and remove USB: serial: garmin_gps: fix memory leak on failed URB submit USB: serial: qcserial: add pid/vid for Sierra Wireless EM7355 fw update * USB: Add delay-init quirk for Corsair K70 LUX keyboards * USB: usbfs: compute urb->actual_length for isochronous uapi: fix linux/rds.h userspace compilation errors uapi: fix linux/rds.h userspace compilation error Revert "uapi: fix linux/rds.h userspace compilation errors" * Revert "crypto: xts - Add ECB dependency" MIPS: Netlogic: Exclude netlogic,xlp-pic code from XLR builds MIPS: init: Ensure reserved memory regions are not added to bootmem MIPS: End asm function prologue macros with .insn ixgbe: handle close/suspend race with netif_device_detach/present ixgbe: fix AER error handling gpu: drm: mgag200: mgag200_main:- Handle error from pci_iomap backlight: adp5520: Fix error handling in adp5520_bl_probe() * backlight: lcd: Fix race condition during register ALSA: vx: Fix possible transfer overflow ALSA: vx: Don't try to update capture stream before running scsi: lpfc: Correct issue leading to oops during link reset scsi: lpfc: Correct host name in symbolic_name field scsi: lpfc: FCoE VPort enable-disable does not bring up the VPort scsi: lpfc: Add missing memory barrier staging: rtl8188eu: fix incorrect ERROR tags from logs igb: Fix hw_dbg logging in igb_update_flash_i210 igb: close/suspend race in netif_device_detach igb: reset the PHY before reading the PHY ID drm/sti: sti_vtg: Handle return NULL error from devm_ioremap_nocache * ata: SATA_MV should depend on HAS_DMA * ata: SATA_HIGHBANK should depend on HAS_DMA * ata: ATA_BMDMA should depend on HAS_DMA ARM: dts: Fix omap3 off mode pull defines ARM: OMAP2+: Fix init for multiple quirks for the same SoC extcon: palmas: Check the parent instance to prevent the NULL iscsi-target: Fix iscsi_np reset hung task during parallel delete media: dib0700: fix invalid dvb_detach argument media: imon: Fix null-ptr-deref in imon_probe Linux 3.18.82 target/iscsi: Fix iSCSI task reassignment handling * security/keys: add CONFIG_KEYS_COMPAT to Kconfig ip6_gre: only increase err_count for some certain type icmpv6 in ip6gre_err ipip: only increase err_count for some certain type icmp in ipip_err * ipv6: flowlabel: do not leave opt->tot_len with garbage sctp: reset owner sk for data chunks on out queues when migrating a sock * tun: allow positive return values on dev_get_valid_name() call net/unix: don't show information about sockets from other namespaces sctp: add the missing sock_owned_by_user check in sctp_icmp_redirect * tun: call dev_get_valid_name() before register_netdevice() * l2tp: check ps->sock before running pppol2tp_session_ioctl() * tcp: fix tcp_mtu_probe() vs highest_sack * tun/tap: sanitize TUNSETSNDBUF input Revert "ARM: dts: imx53-qsb-common: fix FEC pinmux config" Input: ims-psu - check if CDC union descriptor is sane usb: usbtest: fix NULL pointer dereference mac80211: don't compare TKIP TX MIC key in reinstall prevention mac80211: use constant time comparison with keys mac80211: accept key reinstall without changing anything Revert "ceph: unlock dangling spinlock in try_flush_caps()" Linux 3.18.81 x86/oprofile/ppro: Do not use __this_cpu*() in preemptible context can: c_can: don't indicate triple sampling support for D_CAN rbd: use GFP_NOIO for parent stat and data requests MIPS: AR7: Ensure that serial ports are properly set up MIPS: Fix CM region target definitions MIPS: microMIPS: Fix incorrect mask in insn_table_MM ALSA: seq: Avoid invalid lockdep class warning ALSA: seq: Fix OSS sysex delivery in OSS emulation ARM: 8720/1: ensure dump_instr() checks addr_limit * KEYS: fix NULL pointer dereference during ASN.1 parsing [ver #2] crypto: x86/sha1-mb - fix panic due to unaligned access KEYS: trusted: fix writing past end of buffer in trusted_read() KEYS: trusted: sanitize all key material IB/ipoib: Change list_del to list_del_init in the tx object Input: mpr121 - set missing event capability Input: mpr121 - handle multiple bits change of status register * IPsec: do not ignore crypto err in ah4 input * usb: hcd: initialize hcd->flags to 0 when rm hcd serial: sh-sci: Fix register offsets for the IRDA serial port * phy: increase size of MII_BUS_ID_SIZE and bus_id dt-bindings: Add vendor prefix for LEGO dt-bindings: Add LEGO MINDSTORMS EV3 compatible specification iio: trigger: free trigger resource correctly ARM: omap2plus_defconfig: Fix probe errors on UARTs 5 and 6 drm: drm_minor_register(): Clean up debugfs on failure ARM: dts: imx53-qsb-common: fix FEC pinmux config xen/netback: set default upper limit of tx/rx queues to 8 video: fbdev: pmag-ba-fb: Remove bad `__init' annotation Linux 3.18.80 staging: r8712u: Fix Sparse warning in rtl871x_xmit.c xen: don't print error message in case of missing Xenstore entry bt8xx: fix memory leak s390/dasd: check for device error pointer within state change interrupts staging: lustre: ptlrpc: skip lock if export failed staging: lustre: hsm: stack overrun in hai_dump_data_field platform/x86: intel_mid_thermal: Fix module autoload xen/manage: correct return value check on xenbus_scanf() cx231xx: Fix I2C on Internal Master 3 Bus i2c: riic: correctly finish transfers * ext4: do not use stripe_width if it is not set * ext4: fix stripe-unaligned allocations staging: rtl8712u: Fix endian settings for structs describing network packets mmc: s3cmci: include linux/interrupt.h for tasklet_struct x86/microcode/intel: Disable late loading on model 79 drm/msm: fix an integer overflow test drm/msm: Fix potential buffer overflow issue ocfs2: fstrim: Fix start offset of first cluster group during fstrim ARM: 8715/1: add a private asm/unaligned.h * arm64: ensure __dump_instr() checks addr_limit ASoC: adau17x1: Workaround for noise bug in ADC * KEYS: fix out-of-bounds read during ASN.1 parsing * KEYS: return full count in keyring_read() if buffer is too small cifs: check MaxPathNameComponentLength != 0 before using it ALSA: seq: Fix nested rwsem annotation for lockdep splat * ALSA: timer: Add missing mutex lock for compat ioctls * blk-mq: fix race between timeout and freeing request Linux 3.18.79 * ecryptfs: fix dereference of NULL user_key_payload can: kvaser_usb: Correct return value in printout * scsi: sg: Re-fix off by one in sg_fill_request_table() scsi: zfcp: fix erp_action use-before-initialize in REC action trace * assoc_array: Fix a buggy node-splitting case Input: gtco - fix potential out-of-bound access * fuse: fix READDIRPLUS skipping an entry * spi: uapi: spidev: add missing ioctl header * usb: xhci: Handle error condition in xhci_stop_device() ceph: unlock dangling spinlock in try_flush_caps() Linux 3.18.78 FS-Cache: fix dereference of NULL user_key_payload * af_packet: don't pass empty blocks for PACKET_V3 parisc: Fix double-word compare and exchange in LWS code on 32-bit kernels parisc: Avoid trashing sr2 and sr3 in LWS code * cls_api.c: Fix dumping of non-existing actions' stats. * KEYS: don't let add_key() update an uninstantiated key lib/digsig: fix dereference of NULL user_key_payload * KEYS: encrypted: fix dereference of NULL user_key_payload bus: mbus: fix window size calculation for 4GB windows brcmsmac: make some local variables 'static const' to reduce stack size i2c: ismt: Separate I2C block read from SMBus block read ALSA: hda: Remove superfluous '-' added by printk conversion ALSA: seq: Enable 'use' locking in all configurations can: esd_usb2: Fix can_dlc value for received RTR, frames can: gs_usb: fix busy loop if no more TX context is available * usb: hub: Allow reset retry for USB2 devices on connect bounce * usb: quirks: add quirk for WORLDE MINI MIDI keyboard usb: cdc_acm: Add quirk for Elatec TWN3 USB: serial: metro-usb: add MS7820 device id * USB: core: fix out-of-bounds access bug in usb_get_bos_descriptor() * USB: devio: Revert "USB: devio: Don't corrupt user memory" Linux 3.18.77 Revert "tty: goldfish: Fix a parameter of a call to free_irq" target/iscsi: Fix unsolicited data seq_end_offset calculation * uapi: fix linux/mroute6.h userspace compilation errors uapi: fix linux/rds.h userspace compilation errors scsi: scsi_dh_emc: return success in clariion_std_inquiry() ocfs2/dlmglue: prepare tracking logic to avoid recursive cluster lock * crypto: xts - Add ECB dependency net/mlx4_core: Fix VF overwrite of module param which disables DMFS on new probed PFs Btrfs: send, fix failure to rename top level inode due to name collision iio: adc: xilinx: Fix error handling * netfilter: nf_ct_expect: Change __nf_ct_expect_check() return value. irqchip/crossbar: Fix incorrect type of local variables watchdog: kempld: fix gcc-4.3 build locking/lockdep: Add nest_lock integrity test Revert "bsg-lib: don't free job in bsg_prepare_job" * net: Set sk_prot_creator when cloning sockets to the right proto * packet: in packet_do_bind, test fanout with bind_lock held * l2tp: fix race condition in l2tp_tunnel_delete * l2tp: Avoid schedule while atomic in exit_net * vti: fix use after free in vti_tunnel_xmit/vti6_tnl_xmit isdn/i4l: fetch the ppp_write buffer in one shot * packet: hold bind lock when rebinding to fanout hook bpf/verifier: reject BPF_ALU64|BPF_END * sctp: potential read out of bounds in sctp_ulpevent_type_enabled() * ext4: avoid deadlock when expanding inode size drm/dp/mst: save vcpi with payloads x86/mm: Disable preemption during CR3 read+write Linux 3.18.76 Revert "usb: gadget: inode.c: fix unbalanced spin_lock in ep0_write" ALSA: seq: Fix missing NULL check at remove_events ioctl USB: serial: console: fix use-after-free after failed setup USB: serial: qcserial: add Dell DW5818, DW5819 USB: serial: option: add support for TP-Link LTE module USB: serial: cp210x: add support for ELV TFD500 * fix unbalanced page refcounting in bio_map_user_iov * direct-io: Prevent NULL pointer access in submit_page_section * usb: gadget: composite: Fix use-after-free in usb_composite_overwrite_options ALSA: caiaq: Fix stray URB at probe error path ALSA: seq: Fix copy_from_user() call inside lock ALSA: seq: Fix use-after-free at creating a port * ALSA: usb-audio: Kill stray URB at exiting iommu/amd: Finish TLB flush in amd_iommu_unmap() usb: renesas_usbhs: Fix DMAC sequence for receiving zero-length packet KVM: nVMX: fix guest CR4 loading when emulating L2 to L1 exit * crypto: shash - Fix zero-length shash ahash digest crash * HID: usbhid: fix out-of-bounds bug CIFS: Reconnect expired SMB sessions * ext4: in ext4_seek_{hole,data}, return -ENXIO for negative offsets Linux 3.18.75 * ext4: fix fencepost in s_first_meta_bg validation * ext4: validate s_first_meta_bg at mount time ext4: Don't clear SGID when inheriting ACLs * ext4: fix data corruption for mmap writes * fs/super.c: fix race between freeze_super() and thaw_super() * ext4: only call ext4_truncate when size <= isize drm/i915/bios: ignore HDMI on port A HID: i2c-hid: allocate hid buffers for real worst case * driver core: platform: Don't read past the end of "driver_override" buffer ALSA: usx2y: Suppress kernel warning at page allocation failures * lsm: fix smack_inode_removexattr and xattr_getsecurity memleak uwb: ensure that endpoint is interrupt uwb: properly check kthread_run return value iio: adc: mcp320x: Fix oops on module unload iio: ad7793: Fix the serial interface reset * iio: core: Return error for failed read_reg staging: iio: ad7192: Fix - use the dedicated reset function avoiding dma from stack. iio: ad_sigma_delta: Implement a dedicated reset function * xhci: fix finding correct bus_state structure for USB 3.1 hosts * USB: fix out-of-bounds in usb_set_configuration * usb: Increase quirk delay for USB devices USB: uas: fix bug in handling of alternate settings * USB: devio: Don't corrupt user memory USB: dummy-hcd: fix infinite-loop resubmission bug USB: dummy-hcd: fix connection failures (wrong speed) * usb: pci-quirks.c: Corrected timeout values used in handshake * ALSA: usb-audio: Check out-of-bounds access by corrupted buffer descriptor usb: renesas_usbhs: fix usbhsf_fifo_clear() for RX direction usb: renesas_usbhs: fix the BCLR setting condition for non-DCP pipe * usb-storage: unusual_devs entry to fix write-access regression for Seagate external drives USB: gadgetfs: fix copy_to_user while holding spinlock USB: gadgetfs: Fix crash caused by inadequate synchronization usb: gadget: inode.c: fix unbalanced spin_lock in ep0_write Linux 3.18.74 * mpi: Fix NULL ptr dereference in mpi_powm() [ver #3] crypto: algif_skcipher - Load TX SG list after waiting staging: nvec: remove duplicated const ttpci: address stringop overflow warning ALSA: au88x0: avoid theoretical uninitialized access IB/qib: fix false-postive maybe-uninitialized warning libata: transport: Remove circular dependency at free time xfs: remove kmem_zalloc_greedy md/raid10: submit bio directly to replacement disk rds: ib: add error handle parisc: perf: Fix potential NULL pointer dereference netfilter: nfnl_cthelper: fix incorrect helper->expect_class_max exynos-gsc: Do not swap cb/cr for semi planar formats * netfilter: invoke synchronize_rcu after set the _hook_ to NULL * mmc: sdio: fix alignment issue in struct sdio_func * usb: plusb: Add support for PL-27A1 team: fix memory leaks * net/packet: check length in getsockopt() called with PACKET_HDRLEN * net: core: Prevent from dereferencing null pointer when releasing SKB * audit: log 32-bit socketcalls * partitions/efi: Fix integer overflow in GPT size calculation USB: serial: mos7840: fix control-message error handling USB: serial: mos7720: fix control-message error handling IB/ipoib: Replace list_del of the neigh->list with list_del_init IB/ipoib: rtnl_unlock can not come after free_netdev IB/ipoib: Fix deadlock over vlan_mutex tty: goldfish: Fix a parameter of a call to free_irq ARM: 8635/1: nommu: allow enabling REMAP_VECTORS_TO_RAM hwmon: (gl520sm) Fix overflows and crash seen when writing into limit attributes sh_eth: use correct name for ECMR_MPDE bit MIPS: Ensure bss section ends on a long-aligned address RDS: RDMA: Fix the composite message user notification drm: bridge: add DT bindings for TI ths8135 Linux 3.18.73 fix xen_swiotlb_dma_mmap prototype swiotlb-xen: implement xen_swiotlb_dma_mmap callback video: fbdev: aty: do not leak uninitialized padding in clk to userspace x86/fpu: Don't let userspace set bogus xcomp_bv btrfs: prevent to set invalid default subvolid * PCI: Fix race condition with driver_override kvm: nVMX: Don't allow L2 to access the hardware CR8 * arm64: Make sure SPsel is always set bsg-lib: don't free job in bsg_prepare_job * nl80211: check for the required netlink attributes presence * vfs: Return -ENXIO for negative SEEK_HOLE / SEEK_DATA offsets SMB3: Don't ignore O_SYNC/O_DSYNC and O_DIRECT flags SMB: Validate negotiate (to protect against downgrade) even if signing off powerpc/pseries: Fix parent_dn reference leak in add_dt_node() * KEYS: prevent KEYCTL_READ on negative key * KEYS: prevent creating a different user's keyrings * KEYS: fix writing past end of user-supplied buffer in keyring_read() crypto: talitos - fix sha224 scsi: scsi_transport_iscsi: fix the issue that iscsi_if_rx doesn't parse nlmsg properly * tracing: Erase irqsoff trace with empty write * tracing: Fix trace_pipe behavior for instance traces KVM: PPC: Book3S: Fix race and leak in kvm_vm_ioctl_create_spapr_tce() mac80211: flush hw_roc_start work before cancelling the ROC cifs: release auth_key.response for reconnect. cifs: release cifs root_cred after exit_cifs Linux 3.18.72 bcache: fix bch_hprint crash and improve output bcache: fix for gc and write-back race bcache: Correct return value for sysfs attach errors bcache: correct cache_dirty_target in __update_writeback_rate() bcache: Fix leak of bdev reference bcache: initialize dirty stripes in flash_dev_run() media: uvcvideo: Prevent heap overflow when accessing mapped controls * media: v4l2-compat-ioctl32: Fix timespec conversion PCI: shpchp: Enable bridge bus mastering if MSI is enabled ARC: Re-enable MMU upon Machine Check exception * tracing: Apply trace_clock changes to instance max buffer ftrace: Fix selftest goto location on error scsi: qla2xxx: Fix an integer overflow in sysfs code * scsi: sg: fixup infoleak when using SG_GET_REQUEST_TABLE * scsi: sg: factor out sg_fill_request_table() * scsi: sg: off by one in sg_ioctl() * scsi: sg: use standard lists for sg_requests * scsi: sg: remove 'save_scat_len' scsi: zfcp: trace high part of "new" 64 bit SCSI LUN scsi: zfcp: trace HBA FSF response by default on dismiss or timedout late response scsi: zfcp: fix payload with full FCP_RSP IU in SCSI trace records scsi: zfcp: fix missing trace records for early returns in TMF eh handlers scsi: zfcp: add handling for FCP_RESID_OVER to the fcp ingress path scsi: zfcp: fix queuecommand for scsi_eh commands when DIX enabled skd: Submit requests to firmware before triggering the doorbell skd: Avoid that module unloading triggers a use-after-free md/bitmap: disable bitmap_resize for file-backed bitmaps. * block: Relax a check in blk_start_queue() powerpc: Fix DAR reporting when alignment handler faults * ext4: fix incorrect quotaoff if the quota feature is enabled crypto: AF_ALG - remove SGL terminator indicator when chaining Input: i8042 - add Gigabyte P57 to the keyboard reset table ip6_gre: fix endianness errors in ip6gre_err Revert "usb: musb: fix tx fifo flush handling again" f2fs: check hot_data for roll-forward recovery * ipv6: fix typo in fib6_net_exit() * ipv6: fix memory leak with multiple tables during netns destruction * tcp: initialize rcv_mss to TCP_MIN_MSS instead of 0 * Revert "net: phy: Correctly process PHY_HALTED in phy_stop_machine()" qlge: avoid memcpy buffer overflow * ipv6: accept 64k - 1 packet length in ip6_find_1stfragopt() Linux 3.18.71 xfs: XFS_IS_REALTIME_INODE() should be false if no rt device present ARM: 8692/1: mm: abort uaccess retries upon fatal signal * Bluetooth: Properly check L2CAP config option output buffer length ALSA: msnd: Optimize / harden DSP and MIDI loops locktorture: Fix potential memory leak with rw lock test btrfs: resume qgroup rescan on rw remount * scsi: sg: recheck MMAP_IO request length with lock held * scsi: sg: protect against races between mmap() and SG_SET_RESERVED_SIZE * cs5536: add support for IDE controller variant * workqueue: Fix flag collision * cma: fix calculation of aligned offset dlm: avoid double-free on error path in dlm_device_{register,unregister} Input: trackpoint - assume 3 buttons when buttons detection fails * driver core: bus: Fix a potential double free staging/rts5208: fix incorrect shift to extract upper nybble * USB: core: Avoid race of async_completed() w/ usbdev_release() * usb:xhci:Fix regression when ATI chipsets detected * usb: Add device quirk for Logitech HD Pro Webcam C920-C USB: serial: option: add support for D-Link DWM-157 C1 * usb: quirks: add delay init quirk for Corsair Strafe RGB keyboard Conflicts: drivers/input/input.c drivers/media/v4l2-core/v4l2-compat-ioctl32.c drivers/scsi/sg.c drivers/usb/dwc3/gadget.c drivers/usb/gadget/function/f_fs.c drivers/usb/host/xhci-hub.c net/ipv4/raw.c net/packet/af_packet.c sound/usb/card.c sound/usb/mixer.c Change-Id: I4ca2d8f23d99e69b73d055262327f4c71da20a7c Signed-off-by: Thierry Strudel <tstrudel@google.com>
| * scripts: recordmcount: break hardlinksRussell King2018-03-181-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit dd39a26538e37f6c6131e829a4a510787e43c783 upstream. recordmcount edits the file in-place, which can cause problems when using ccache in hardlink mode. Arrange for recordmcount to break a hardlinked object. Link: http://lkml.kernel.org/r/E1a7MVT-0000et-62@rmk-PC.arm.linux.org.uk Cc: stable@vger.kernel.org # 2.6.37+ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk> Signed-off-by: Steven Rostedt <rostedt@goodmis.org> Cc: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| * scripts/kernel-doc: Don't fail with status != 0 if error encountered with -noneWill Deacon2018-02-251-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [ Upstream commit e814bccbafece52a24e152d2395b5d49eef55841 ] My bisect scripts starting running into build failures when trying to compile 4.15-rc1 with the builds failing with things like: drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c:2078: error: Cannot parse struct or union! The line in question is actually just a #define, but after some digging it turns out that my scripts pass W=1 and since commit 3a025e1d1c2ea ("Add optional check for bad kernel-doc comments") that results in kernel-doc running on each source file. The file in question has a badly formatted comment immediately before the #define: /** * struct brcmf_skbuff_cb reserves first two bytes in sk_buff::cb for * bus layer usage. */ which causes the regex in dump_struct to fail (lack of braces following struct declaration) and kernel-doc returns 1, which causes the build to fail. Fix the issue by always returning 0 from kernel-doc when invoked with -none. It successfully generates no documentation, and prints out any issues. Cc: Matthew Wilcox <mawilcox@microsoft.com> Cc: Jonathan Corbet <corbet@lwn.net> Signed-off-by: Will Deacon <will.deacon@arm.com> Signed-off-by: Jonathan Corbet <corbet@lwn.net> Signed-off-by: Sasha Levin <alexander.levin@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
* | Merge linux-3.18.70 into android-msm-marlin-3.18Thierry Strudel2017-09-121-3/+3
|\| | | | | | | | | Change-Id: Ifbed5d4275df07fa37f66c873eab5740228e422a Signed-off-by: Thierry Strudel <tstrudel@google.com>
| * checkpatch: silence perl 5.26.0 unescaped left brace warningsCyril Bur2017-07-211-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit 8d81ae05d0176da1c54aeaed697fa34be5c5575e upstream. As of perl 5, version 26, subversion 0 (v5.26.0) some new warnings have occurred when running checkpatch. Unescaped left brace in regex is deprecated here (and will be fatal in Perl 5.30), passed through in regex; marked by <-- HERE in m/^(.\s*){ <-- HERE \s*/ at scripts/checkpatch.pl line 3544. Unescaped left brace in regex is deprecated here (and will be fatal in Perl 5.30), passed through in regex; marked by <-- HERE in m/^(.\s*){ <-- HERE \s*/ at scripts/checkpatch.pl line 3885. Unescaped left brace in regex is deprecated here (and will be fatal in Perl 5.30), passed through in regex; marked by <-- HERE in m/^(\+.*(?:do|\))){ <-- HERE / at scripts/checkpatch.pl line 4374. It seems perfectly reasonable to do as the warning suggests and simply escape the left brace in these three locations. Link: http://lkml.kernel.org/r/20170607060135.17384-1-cyrilbur@gmail.com Signed-off-by: Cyril Bur <cyrilbur@gmail.com> Acked-by: Joe Perches <joe@perches.com> 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>
* | Big merge into 3.18.52Greg Kroah-Hartman2017-05-123-6/+45
|\| | | | | | | | | | | | | This merges from 3.18.44 to 3.18.52 all in one big chunk to make things go faster on the review side. Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
| * kbuild: mergeconfig: fix "jobserver unavailable" warningMasahiro Yamada2017-05-081-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit de4619937229378e81f95e99c9866acc8e207d34 upstream. If "make kvmconfig" is run with "-j" option, a warning message, "jobserver unavailable: using -j1. Add `+' to parent make rule.", is displayed. $ make -s defconfig *** Default configuration is based on 'x86_64_defconfig' # # configuration written to .config # $ make -j8 kvmconfig Using ./.config as base Merging ./arch/x86/configs/kvm_guest.config [ snip ] # # merged configuration written to ./.config (needs make) # make[2]: warning: jobserver unavailable: using -j1. Add `+' to parent make rule. scripts/kconfig/conf --oldconfig Kconfig [ snip ] # # configuration written to .config # Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com> Reviewed-by: Josh Triplett <josh@joshtriplett.org> Reviewed-by: Darren Hart <dvhart@linux.intel.com> Signed-off-by: Michal Marek <mmarek@suse.cz> Signed-off-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| * modpost: don't emit section mismatch warnings for compiler optimizationsPaul Gortmaker2017-05-081-0/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit 4a3893d069b788f3570c19c12d9e986e8e15870f upstream. Currently an allyesconfig build [gcc-4.9.1] can generate the following: WARNING: vmlinux.o(.text.unlikely+0x3864): Section mismatch in reference from the function cpumask_empty.constprop.3() to the variable .init.data:nmi_ipi_mask which comes from the cpumask_empty usage in arch/x86/kernel/nmi_selftest.c. Normally we would not see a symbol entry for cpumask_empty since it is: static inline bool cpumask_empty(const struct cpumask *srcp) however in this case, the variant of the symbol gets emitted when GCC does constant propagation optimization. Fix things up so that any locally optimized constprop variants don't warn when accessing variables that live in the __init sections. [arnd: adapted text_sections definition to 3.18] Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> Signed-off-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| * modpost: expand pattern matching to support substring matchesPaul Gortmaker2017-05-081-1/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit 09c20c032b0f753969ae778d9783d946f054d7fe upstream. Currently the match() function supports a leading * to match any prefix and a trailing * to match any suffix. However there currently is not a combination of both that can be used to target matches of whole families of functions that share a common substring. Here we expand the *foo and foo* match to also support *foo* with the goal of targeting compiler generated symbol names that contain strings like ".constprop." and ".isra." Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> Signed-off-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| * kconfig/nconf: Fix hang when editing symbol with a long promptBen Hutchings2017-01-151-4/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [ Upstream commit 79e51b5c2deea542b3bb8c66e0d502230b017dde ] Currently it is impossible to edit the value of a config symbol with a prompt longer than (terminal width - 2) characters. dialog_inputbox() calculates a negative x-offset for the input window and newwin() fails as this is invalid. It also doesn't check for this failure, so it busy-loops calling wgetch(NULL) which immediately returns -1. The additions in the offset calculations also don't match the intended size of the window. Limit the window size and calculate the offset similarly to show_scroll_win(). Cc: stable <stable@vger.kernel.org> Fixes: 692d97c380c6 ("kconfig: new configuration interface (nconfig)") Signed-off-by: Ben Hutchings <ben.hutchings@codethink.co.uk> Signed-off-by: Sasha Levin <alexander.levin@verizon.com>
| * scripts/has-stack-protector: add -fno-PIESebastian Andrzej Siewior2016-12-231-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [ Upstream commit 82031ea29e454b574bc6f49a33683a693ca5d907 ] Adding -no-PIE to the fstack protector check. -no-PIE was introduced before -fstack-protector so there is no need for a runtime check. Without it the build stops: |Cannot use CONFIG_CC_STACKPROTECTOR_STRONG: -fstack-protector-strong available but compiler is broken due to -mcmodel=kernel + -fPIE if -fPIE is enabled by default. Tagging it stable so it is possible to compile recent stable kernels as well. Cc: stable@vger.kernel.org Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de> Signed-off-by: Michal Marek <mmarek@suse.com> Signed-off-by: Sasha Levin <alexander.levin@verizon.com>
* | Merge 3.18.40 into android-msm-marlin-3.18Greg Kroah-Hartman2017-05-091-1/+8
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Changes in 3.18.40 Revert "drm/i915/ilk: Don't disable SSC source if it's in use" HID: uhid: fix timeout when probe races with IO s5p-mfc: Set device name for reserved memory region devs s5p-mfc: Add release callback for memory region devs netlabel: add address family checks to netlbl_{sock,req}_delattr() PCI: Mark Atheros AR9485 and QCA9882 to avoid bus reset gpio: pca953x: Fix NBANK calculation for PCA9536 Update my main e-mails at the Kernel tree usb: dwc3: fix for the isoc transfer EP_BUSY flag crypto: gcm - Filter out async ghash if necessary of: fix memory leak related to safe_name() serial: samsung: Fix ERR pointer dereference on deferred probe hp-wmi: Fix wifi cannot be hard-unblocked usb: renesas_usbhs: fix the sequence in xfer_work() usb: renesas_usbhs: fix NULL pointer dereference in xfer_work() usb: renesas_usbhs: protect the CFIFOSEL setting in usbhsg_ep_enable() ext4: check for extents that wrap around ext4: fix deadlock during page writeback ext4: don't call ext4_should_journal_data() on the journal inode ARM: dts: sunxi: Add a startup delay for fixed regulator enabled phys ext4: validate s_reserved_gdt_blocks on mount drm/radeon: add a delay after ATPX dGPU power off drm/radeon: Poll for both connect/disconnect on analog connectors [media] media: dvb_ringbuffer: Add memory barriers [media] Fix RC5 decoding with Fintek CIR chipset Bluetooth: Add USB ID 13D3:3487 to ath3k Bluetooth: Add support of 13d3:3490 AR3012 device [media] media: usbtv: prevent access to free'd resources cifs: Check for existing directory when opening file with O_CREAT s390/mm: fix gmap tlb flush issues USB: quirks: Fix another ELAN touchscreen usb: quirks: Add no-lpm quirk for Elan KVM: nVMX: Fix memory corruption when using VMCS shadowing drm/radeon: support backlight control for UNIPHY3 ext4: short-cut orphan cleanup on error powerpc/tm: Avoid SLB faults in treclaim/trecheckpoint when RI=0 powerpc/tm: Fix stack pointer corruption in __tm_recheckpoint() USB: serial: option: add support for Telit LE910 PID 0x1206 Bluetooth: Fix l2cap_sock_setsockopt() with optname BT_RCVMTU crypto: scatterwalk - Fix test in scatterwalk_done arm64: debug: unmask PSTATE.D earlier mtd: nand: fix bug writing 1 byte less than page size target: Fix missing complete during ABORT_TASK + CMD_T_FABRIC_STOP target: Fix race between iscsi-target connection shutdown + ABORT_TASK cifs: fix crash due to race in hmac(md5) handling audit: Fix check of return value of strnlen_user() Fix broken audit tests for exec arg len audit: fix a double fetch in audit_log_single_execve_arg() iscsi-target: Fix panic when adding second TCP connection to iSCSI session gpio: intel-mid: Remove potentially harmful code nfs: don't create zero-length requests dcache: let the dentry count go down to zero without taking d_lock fs/dcache.c: avoid soft-lockup in dput() net/irda: fix NULL pointer dereference on memory allocation failure module: Invalidate signatures on force-loaded modules Documentation/module-signing.txt: Note need for version info if reusing a key Input: i8042 - break load dependency between atkbd/psmouse and i8042 fs/cifs: make share unaccessible at root level mountable CIFS: Fix a possible invalid memory access in smb2_query_symlink() KVM: PPC: Book3S HV: Pull out TM state save/restore into separate procedures KVM: PPC: Book3S HV: Save/restore TM state in H_CEDE KEYS: 64-bit MIPS needs to use compat_sys_keyctl for 32-bit userspace drm/radeon: fix firmware info version checks ARC: mm: don't loose PTE_SPECIAL in pte_modify() fuse: fsync() did not return IO errors fuse: fuse_flush must check mapping->flags for errors fuse: fix wrong assignment of ->flags in fuse_send_init() ubi: Fix race condition between ubi device creation and udev ubi: Make volume resize power cut aware drm/nouveau/fbcon: fix font width not divisible by 8 ALSA: hda/realtek: Enable HP amp and mute LED on HP Folio 9480m [v3] x86/syscalls/64: Add compat_sys_keyctl for 32-bit userspace balloon: check the number of available pages in leak balloon ftrace/recordmcount: Work around for addition of metag magic but not relocations dm flakey: error READ bios during the down_interval mm/hugetlb: avoid soft lockup in set_max_huge_pages() sysv, ipc: fix security-layer leaking ALSA: hda: add AMD Bonaire AZ PCI ID with proper driver caps metag: Fix __cmpxchg_u32 asm constraint for CMP block: fix use-after-free in seq file powerpc/iommu: Remove the dependency on EEH struct in DDW mechanism powerpc/pseries: Fix PCI config address for DDW posix_acl: Add set_posix_acl nfsd: check permissions when setting ACLs perf/x86: Fix undefined shift on 32-bit kernels Linux 3.18.40 Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
| * ftrace/recordmcount: Work around for addition of metag magic but not relocationsLaura Abbott2016-08-221-1/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [ Upstream commit b2e1c26f0b62531636509fbcb6dab65617ed8331 ] glibc recently did a sync up (94e73c95d9b5 "elf.h: Sync with the gabi webpage") that added a #define for EM_METAG but did not add relocations This triggers build errors: scripts/recordmcount.c: In function 'do_file': scripts/recordmcount.c:466:28: error: 'R_METAG_ADDR32' undeclared (first use in this function) case EM_METAG: reltype = R_METAG_ADDR32; ^~~~~~~~~~~~~~ scripts/recordmcount.c:466:28: note: each undeclared identifier is reported only once for each function it appears in scripts/recordmcount.c:468:20: error: 'R_METAG_NONE' undeclared (first use in this function) rel_type_nop = R_METAG_NONE; ^~~~~~~~~~~~ Work around this change with some more #ifdefery for the relocations. Fedora Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=1354034 Link: http://lkml.kernel.org/r/1468005530-14757-1-git-send-email-labbott@redhat.com Cc: stable@vger.kernel.org # v3.9+ Cc: James Hogan <james.hogan@imgtec.com> Fixes: 00512bdd4573 ("metag: ftrace support") Reported-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Laura Abbott <labbott@redhat.com> Signed-off-by: Steven Rostedt <rostedt@goodmis.org> Signed-off-by: Sasha Levin <alexander.levin@verizon.com>
* | ANDROID: checkpatch: special audit for revert commit lineWei Wang2017-04-101-0/+1
| | | | | | | | | | | | | | Bug: 37158168 Test: checkpatch.pl --patch [diff] and no longer see failure Change-Id: I65cf9a46874621dd6d5c349d2d3ca3b862d61ba3 Signed-off-by: Wei Wang <wvw@google.com>
* | Merge 3.18.36 into android-msm-marlin-3.18Greg Kroah-Hartman2017-02-151-1/+1
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Changes in 3.18.36: crypto: public_key: select CRYPTO_AKCIPHER scsi_lib: correctly retry failed zero length REQ_TYPE_FS commands crypto: ccp - Fix AES XTS error for request sizes above 4096 powerpc/pseries/eeh: Handle RTAS delay requests in configure_bridge powerpc: Fix definition of SIAR and SDAR registers powerpc: Use privileged SPR number for MMCR2 mac80211_hwsim: Add missing check for HWSIM_ATTR_SIGNAL mac80211: mesh: flush mesh paths unconditionally scsi: Add QEMU CD-ROM to VPD Inquiry Blacklist drm/fb-helper: Propagate errors from initial config failure drm/nouveau/fbcon: fix out-of-bounds memory accesses ARM: fix PTRACE_SETVFPREGS on SMP systems KVM: irqfd: fix NULL pointer dereference in kvm_irq_map_gsi KVM: x86: fix OOPS after invalid KVM_SET_DEBUGREGS arm64: GICv3: introduce symbolic names for GICv3 ICC_SGI1R_EL1 fields irqchip/gic-v3: Fix ICC_SGI1R_EL1.INTID decoding mask locking/ww_mutex: Report recursive ww_mutex locking early ALSA: hda - Fix headset mic detection problem for Dell machine of: irq: fix of_irq_get[_byname]() kernel-doc parisc: Fix pagefault crash in unaligned __get_user() call mnt: If fs_fully_visible fails call put_filesystem. mnt: fs_fully_visible test the proper mount for MNT_LOCKED x86, build: copy ldlinux.c32 to image.iso of: fix autoloading due to broken modalias with no 'compatible' cpufreq: intel_pstate: Fix ->set_policy() interface for no_turbo fix d_walk()/non-delayed __d_free() race gpiolib: Fix NULL pointer deference gpio: bcm-kona: fix bcm_kona_gpio_reset() warnings wext: Fix 32 bit iwpriv compatibility issue with 64 bit Kernel proc: prevent stacking filesystems on top ecryptfs: forbid opening files without mmap handler Linux 3.18.36 Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
| * of: fix autoloading due to broken modalias with no 'compatible'Sasha Levin2016-06-191-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [ Upstream commit b3c0a4dab7e35a9b6d69c0415641d2280fdefb2b ] Because of an improper dereference, a stray 'C' character was output to the modalias when no 'compatible' was specified. This is the case for some old PowerMac drivers which only set the 'name' property. Fix it to let them match again. Reported-by: Mathieu Malaterre <malat@debian.org> Signed-off-by: Wolfram Sang <wsa@the-dreams.de> Tested-by: Mathieu Malaterre <malat@debian.org> Cc: Philipp Zabel <p.zabel@pengutronix.de> Cc: Andreas Schwab <schwab@linux-m68k.org> Fixes: 6543becf26fff6 ("mod/file2alias: make modalias generation safe for cross compiling") Cc: stable@vger.kernel.org # v3.9+ Signed-off-by: Michael Ellerman <mpe@ellerman.id.au> Signed-off-by: Sasha Levin <sasha.levin@oracle.com>
* | Merge commit linux-3.18-{32,33,34,35} into android-msm-marlin-3.18Patrick Tjin2017-02-131-0/+1
|\ \
| * | Merge 3.18.35 into android-msm-marlin-3.18Greg Kroah-Hartman2017-02-061-0/+1
| |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Changes in 3.18.35: dmaengine: imx-sdma: switch to dynamic context mode after script loaded regulator: core: Use class device list for regulator_list in late init ath5k: Change led pin configuration for compaq c700 laptop xfs: disallow ro->rw remount on norecovery mount xfs: disallow rw remount on fs with unknown ro-compat features rtlwifi: rtl8723be: Fix module parameter initialization drm/gma500: Fix possible out of bounds read Bluetooth: vhci: fix open_timeout vs. hdev race Bluetooth: vhci: purge unhandled skbs cpuidle: Indicate when a device has been unregistered Bluetooth: vhci: Fix race at creating hci device powerpc/book3s64: Fix branching to OOL handlers in relocatable kernel PM / Runtime: Fix error path in pm_runtime_force_resume() crypto: s5p-sss - Remove useless hash interrupt handler crypto: s5p-sss - Fix missed interrupts when working with 8 kB blocks ath9k: Fix LED polarity for some Mini PCI AR9220 MB92 cards. pinctrl: exynos5440: Use off-stack memory for pinctrl_gpio_range btrfs: bugfix: handle FS_IOC32_{GETFLAGS,SETFLAGS,GETVERSION} in btrfs_ioctl usb: core: hub: hub_port_init lock controller instead of bus TTY: n_gsm, fix false positive WARN_ON arm/arm64: KVM: Enforce Break-Before-Make on Stage-2 page tables aacraid: Relinquish CPU during timeout wait aacraid: Fix for aac_command_thread hang ext4: fix hang when processing corrupted orphaned inode list ext4: clean up error handling when orphan list is corrupted MIPS: ath79: make bootconsole wait for both THRE and TEMT QE-UART: add "fsl,t1040-ucc-uart" to of_device_id thunderbolt: Fix double free of drom buffer USB: serial: option: add support for Cinterion PH8 and AHxx USB: leave LPM alone if possible when binding/unbinding interface drivers usb: misc: usbtest: format the data pattern according to max packet size usb: misc: usbtest: fix pattern tests for scatterlists. mcb: Fixed bar number assignment for the gdd USB: serial: option: add more ZTE device ids USB: serial: option: add even more ZTE device ids ACPI / osi: Fix an issue that acpi_osi=!* cannot disable ACPICA internal strings USB: cp210x: relocate private data from USB interface to port USB: serial: cp210x: fix hardware flow-control disable ext4: fix oops on corrupted filesystem ext4: address UBSAN warning in mb_find_order_for_block() ext4: silence UBSAN in ext4_mb_init() mm: fix huge zero page accounting in smaps report arm64: Ensure pmd_present() returns false after pmd_mknotpresent() can: fix handling of unmodifiable configuration options MIPS: Fix siginfo.h to use strict posix types MIPS: Don't unwind to user mode with EVA MIPS: Avoid using unwind_stack() with usermode mfd: omap-usb-tll: Fix scheduling while atomic BUG USB: serial: io_edgeport: fix memory leaks in attach error path USB: serial: io_edgeport: fix memory leaks in probe error path USB: serial: keyspan: fix use-after-free in probe error path USB: serial: mxuport: fix use-after-free in probe error path USB: serial: quatech2: fix use-after-free in probe error path crypto: caam - fix caam_jr_alloc() ret code MIPS: KVM: Fix timer IRQ race when freezing timer MIPS: KVM: Fix timer IRQ race when writing CP0_Compare gcov: disable tree-loop-im to reduce stack usage irqchip/gic: Ensure ordering between read of INTACK and shared data kbuild: move -Wunused-const-variable to W=1 warning level rtlwifi: Fix logic error in enter/exit power-save mode rtlwifi: pci: use dev_kfree_skb_irq instead of kfree_skb in rtl_pci_reset_trx_ring sched/loadavg: Fix loadavg artifacts on fully idle and on fully loaded systems powerpc/eeh: Don't report error in eeh_pe_reset_and_recover() powerpc/eeh: Restore initial state in eeh_pe_reset_and_recover() MIPS: math-emu: Fix jalr emulation when rd == $0 ring-buffer: Add unlikelys to make fast path the default ring-buffer: Remove duplicate use of '&' in recursive code ring-buffer: Move recursive check to per_cpu descriptor ring-buffer: Use long for nr_pages to avoid overflow failures ring-buffer: Prevent overflow of size in ring_buffer_resize() mmc: mmc: Fix partition switch timeout for some eMMCs PCI: Disable all BAR sizing for devices with non-compliant BARs MIPS: MSA: Fix a link error on `_init_msa_upper' with older GCC drm/fb_helper: Fix references to dev->mode_config.num_connector fs/cifs: correctly to anonymous authentication via NTLMSSP fs/cifs: correctly to anonymous authentication for the LANMAN authentication fs/cifs: correctly to anonymous authentication for the NTLM(v1) authentication fs/cifs: correctly to anonymous authentication for the NTLM(v2) authentication remove directory incorrectly tries to set delete on close on non-empty directories cpuidle: Fix cpuidle_state_is_coupled() argument in cpuidle_enter() xfs: xfs_iflush_cluster fails to abort on error xfs: fix inode validity check in xfs_iflush_cluster xfs: skip stale inodes in xfs_iflush_cluster ASoC: ak4642: Fix up max_register setting ASoC: ak4642: Enable cache usage to fix crashes on resume cifs: Create dedicated keyring for spnego operations Input: uinput - handle compat ioctl for UI_SET_PHYS PM / sleep: Handle failures in device_suspend_late() consistently drm/i915: Don't leave old junk in ilk active watermarks on readout mmc: longer timeout for long read time quirk mmc: sdhci-acpi: Add two host capabilities for Intel mmc: sdhci-acpi: Remove MMC_CAP_BUS_WIDTH_TEST for Intel controllers sunrpc: fix stripping of padded MIC tokens wait/ptrace: assume __WALL if the child is traced x86/xen: Override ACPI IRQ management callback __acpi_unregister_gsi xen/x86: actually allocate legacy interrupts on PV guests xen/events: Don't move disabled irqs UBI: Fastmap: Ensure that only one fastmap work is scheduled UBI: do propagate positive error codes up UBI: fix missing brace control flow UBI: Fix static volume checks when Fastmap is used dma-debug: avoid spinlock recursion when disabling dma-debug Linux 3.18.35 Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
| | * kbuild: move -Wunused-const-variable to W=1 warning levelArnd Bergmann2016-06-061-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [ Upstream commit c9c6837d39311b0cc14cdbe7c18e815ab44aefb1 ] gcc-6 started warning by default about variables that are not used anywhere and that are marked 'const', generating many false positives in an allmodconfig build, e.g.: arch/arm/mach-davinci/board-da830-evm.c:282:20: warning: 'da830_evm_emif25_pins' defined but not used [-Wunused-const-variable=] arch/arm/plat-omap/dmtimer.c:958:34: warning: 'omap_timer_match' defined but not used [-Wunused-const-variable=] drivers/bluetooth/hci_bcm.c:625:39: warning: 'acpi_bcm_default_gpios' defined but not used [-Wunused-const-variable=] drivers/char/hw_random/omap-rng.c:92:18: warning: 'reg_map_omap4' defined but not used [-Wunused-const-variable=] drivers/devfreq/exynos/exynos5_bus.c:381:32: warning: 'exynos5_busfreq_int_pm' defined but not used [-Wunused-const-variable=] drivers/dma/mv_xor.c:1139:34: warning: 'mv_xor_dt_ids' defined but not used [-Wunused-const-variable=] This is similar to the existing -Wunused-but-set-variable warning that was added in an earlier release and that we disable by default now and only enable when W=1 is set, so it makes sense to do the same here. Once we have eliminated the majority of the warnings for both, we can put them back into the default list. We probably want this in backport kernels as well, to allow building them with gcc-6 without introducing extra warnings. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Olof Johansson <olof@lixom.net> Acked-by: Lee Jones <lee.jones@linaro.org> Cc: stable@vger.kernel.org Signed-off-by: Michal Marek <mmarek@suse.com> Signed-off-by: Sasha Levin <sasha.levin@oracle.com>
* | | arm64: Allow kernel to be compressed with LZ4David Lin2017-02-101-1/+1
|/ / | | | | | | | | | | | | | | | | | | | | This patch enables arm64 arch kernel to be compressed with LZ4 when the CONFIG_KERNEL_LZ4 config is turned on. By default it would still be using the GZIP compression if the config is not specified. Bug: 33918223 Change-Id: I58fb462da38a950f33b4ae5a607f9962c47a070e Signed-off-by: David Lin <dtwlin@google.com>
* | Revert "scripts: gcc-wrapper: Use wrapper to check compiler warnings"Greg Hackmann2016-09-191-102/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | gcc-wrapper simulates building with -Werror, but with a few hardcoded file:line combinations that don't get promoted to errors. We're already building with -Werror anyway without issue, so this script is redundant and just adds a dependency on Python 2. This reverts commit ca2dc1f081b0a15d28b5b0d3f032b89aa819b65c. Change-Id: Id4a75ff16fb75e7d621c532a37ddcbe0efa01040 Signed-off-by: Greg Hackmann <ghackmann@google.com>
* | Merge AU_LINUX_ANDROID_LA.HB.1.3.9.06.00.01.213.216 into android-msm-marlin-3.18Steve Pfetsch2016-07-136-9/+9
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The following camera commit was reverted in the branch being merged: f3c656d msm: camera: sensor: power_down eeprom if read fails The following sched commits were reverted in the branch being merged: 556f086 Revert "sched: warn/panic upon excessive scheduling latency" ef07180 Revert "sched: add scheduling latency tracking procfs node" ab273d4 sched: eliminate sched_early_detection_duration knob eb7bc52 sched: Remove the sched heavy task frequency guidance feature 49fe8ea sched: eliminate sched_migration_fixup knob 650cf42 sched: eliminate sched_enable_power_aware knob and parameter f212108 sched: eliminate sched_freq_account_wait_time knob 08f5e5b sched: eliminate sched_account_wait_time knob fa70996 sched: don't assume higher capacity means higher power in lb e62daff sched/cputime: Fix steal_account_process_tick() to always return jiffies c8d69b6 sched: Fix crash in sched_init_numa() 71dc6a3 sched: Fix cpu_active_mask/cpu_online_mask race Conflicts: Makefile arch/arm64/kernel/setup.c arch/arm64/mm/mmap.c arch/x86/boot/Makefile arch/x86/mm/mmap.c drivers/block/zram/zcomp.c drivers/block/zram/zcomp_lz4.c drivers/block/zram/zcomp_lzo.c drivers/leds/leds-qpnp-flash.c drivers/md/dm-crypt.c drivers/staging/android/lowmemorykiller.c drivers/video/msm/mdss/mdss_debug.c fs/notify/inotify/inotify_user.c fs/sdcardfs/dentry.c fs/sdcardfs/packagelist.c include/linux/dcache.h include/linux/mm.h init/do_mounts_dm.c mm/kasan/Makefile mm/mmap.c scripts/Makefile.lib sound/core/control_compat.c sound/soc/msm/msm8996.c Change-Id: Id16ec29883f2797af471a6b05d2b95df1f6a185f
| * \ Merge tag 'lsk-v3.18-16.04-android' into 'msm-3.18'Imran Khan2016-06-096-15/+9
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | LSK Android 16.04 v3.18 * origin/tmp-a79bee5: (1037 commits) mm: vmalloc: don't remove inexistent guard hole in remove_vm_area() arm64: Don't relocate non-existent initrd mm/early_ioremap: add explicit #include of asm/early_ioremap.h compiler, atomics, kasan: Provide READ_ONCE_NOCHECK() locking: Remove atomicy checks from {READ,WRITE}_ONCE ARM64: kasan: print memory assignment UPSTREAM: arm64: Fix text patching logic when using fixmap Linux 3.18.31 crypto: algif_skcipher - Fix race condition in skcipher_check_key crypto: algif_skcipher - Remove custom release parent function crypto: algif_skcipher - Add nokey compatibility path crypto: algif_skcipher - Require setkey before accept(2) ALSA: hda - Fix regression of monitor_present flag in eld proc file arm64: errata: Add -mpc-relative-literal-loads to build flags mm/page_alloc: prevent merging between isolated and other pageblocks mm: use 'unsigned int' for page order mm: page_alloc: pass PFN to __free_pages_bootmem ocfs2/dlm: fix BUG in dlm_move_lockres_to_recovery_list ocfs2/dlm: fix race between convert and recovery Input: ati_remote2 - fix crashes on detecting device with invalid descriptor ideapad-laptop: Add ideapad Y700 (15) to the no_hw_rfkill DMI list staging: comedi: ni_mio_common: fix the ni_write[blw]() functions rapidio/rionet: fix deadlock on SMP fs/coredump: prevent fsuid=0 dumps into user-controlled directories tracing: Fix trace_printk() to print when not using bprintk() KVM: fix spin_lock_init order on x86 KVM: VMX: avoid guest hang on invalid invept instruction target: Fix target_release_cmd_kref shutdown comp leak bitops: Do not default to __clear_bit() for __clear_bit_unlock() ALSA: usb-audio: add Microsoft HD-5001 to quirks splice: handle zero nr_pages in splice_to_pipe() tracing: Fix crash from reading trace_pipe with sendfile USB: uas: Reduce can_queue to MAX_CMNDS USB: cdc-acm: more sanity checking USB: usb_driver_claim_interface: add sanity checking USB: iowarrior: fix oops with malicious USB descriptors x86/apic: Fix suspicious RCU usage in smp_trace_call_function_interrupt() Thermal: Ignore invalid trip points Input: synaptics - handle spurious release of trackstick buttons, again Input: ims-pcu - sanity check against missing interfaces mmc: sdhci: Fix override of timeout clk wrt max_busy_timeout x86/iopl: Fix iopl capability check on Xen PV ARM: dts: sunxi: Adjust touchscreen compatible for sun5i and later nfsd: fix deadlock secinfo+readdir compound ALSA: usb-audio: Fix NULL dereference in create_fixed_stream_quirk() mmc: mmc_spi: Add Card Detect comments and fix CD GPIO case ALSA: hda - Fix unconditional GPIO toggle via automute HID: i2c-hid: fix OOB write in i2c_hid_set_or_send_report() net: mvneta: enable change MAC address when interface is up md: multipath: don't hardcopy bio in .make_request path drm/radeon: rework fbdev handling on chips with no connectors radeon/fb: add wrapper functions around fb connector add/remove Input: powermate - fix oops with malicious USB descriptors s390/pci: enforce fmb page boundary rule s390/pci: extract software counters from fmb ALSA: intel8x0: Add clock quirk entry for AD1981B on IBM ThinkPad X41. ALSA: hda - Add new GPU codec ID 0x10de0083 to snd-hda ALSA: hda - Add new GPU codec ID 0x10de0082 to snd-hda ALSA: hda - Add new GPU codec ID 0x10de007d to snd-hda bus: imx-weim: Take the 'status' property value into account xtensa: clear all DBREAKC registers on start xtensa: fix preemption in {clear,copy}_user_highpage xtensa: ISS: don't hang if stdin EOF is reached ALSA: hda - fix the mic mute button and led problem for a Lenovo AIO Bluetooth: btusb: Add a new AR3012 ID 13d3:3472 EDAC/sb_edac: Fix computation of channel address jbd2: fix FS corruption possibility in jbd2_journal_destroy() on umount path sg: fix dxferp in from_to case drm/radeon: Don't drop DP 2.7 Ghz link setup on some cards. drm/radeon: disable runtime pm on PX laptops without dGPU power control be2iscsi: set the boot_kset pointer to NULL in case of failure x86/PCI: Mark Broadwell-EP Home Agent & PCU as having non-compliant BARs bcache: fix cache_set_flush() NULL pointer dereference on OOM bcache: cleaned up error handling around register_cache() bcache: fix race of writeback thread starting before complete initialization sched/cputime: Fix steal_account_process_tick() to always return jiffies perf/x86/intel: Add definition for PT PMI bit x86: Add new MSRs and MSR bits used for Intel Skylake PMU support KVM: i8254: change PIT discard tick policy usb: hub: fix a typo in hub_port_init() leading to wrong logic of: alloc anywhere from memblock if range not specified mtip32xx: Handle FTL rebuild failure state during device initialization mtip32xx: fix incorrectly setting MTIP_DDF_SEC_LOCK_BIT mtip32xx: Handle safe removal during IO mtip32xx: fix crash on surprise removal of the drive mtip32xx: fix rmmod issue mtip32xx: Avoid issuing standby immediate cmd during FTL rebuild mtip32xx: Print exact time when an internal command is interrupted quota: Fix possible GPF due to uninitialised pointers xfs: fix two memory leaks in xfs_attr_list.c error paths nfsd4: fix bad bounds checking watchdog: rc32434_wdt: fix ioctl error handling [media] bttv: Width must be a multiple of 16 when capturing planar formats IB/srpt: Simplify srpt_handle_tsk_mgmt() mmc: sdhci: fix data timeout (part 2) mmc: sdhci: fix data timeout (part 1) Bluetooth: btusb: Add a new AR3012 ID 04ca:3014 crypto: ccp - memset request context to zero during import md/raid5: Compare apples to apples (or sectors to sectors) PCI: Disable IO/MEM decoding for devices with non-compliant BARs PCI: Add dev->has_secondary_link to track downstream PCIe links x86, irq: Keep balance of IOAPIC pin reference count mtd: onenand: fix deadlock in onenand_block_markbad aacraid: Fix memory leak in aac_fib_map_free Bluetooth: Add new AR3012 ID 0489:e095 Bluetooth: btusb: Add new AR3012 ID 13d3:3395 perf tools: Dont stop PMU parsing on alias parse error ext4: iterate over buffer heads correctly in move_extent_per_page() [media] saa7134: Fix bytesperline not being set correctly for planar formats [media] adv7511: TX_EDID_PRESENT is still 1 after a disconnect scripts/coccinelle: modernize & clk: rockchip: Add pclk_peri to critical clocks on RK3066/RK3188 clk: rockchip: add pclk_cpu to the list of rk3188 critical clocks fs: sdcardfs: build fix include/linux/poison.h: fix LIST_POISON{1,2} offset KEYS: Fix handling of stored error in a negatively instantiated user key KVM: x86: Reload pit counters for all channels when restoring state Revert "drm/radeon: call hpd_irq_event on resume" modules: fix longstanding /proc/kallsyms vs module insertion race. btrfs: async-thread: Fix a use-after-free error for trace security: let security modules use PTRACE_MODE_* with bitmasks kernel/resource.c: fix muxed resource handling in __request_region() [media] si2157: return -EINVAL if firmware blob is too big [media] si2157: Bounds check firmware btrfs: initialize the seq counter in struct btrfs_device Btrfs: fix transaction handle leak on failure to create hard link Btrfs: fix number of transaction units required to create symlink Btrfs: send, don't BUG_ON() when an empty symlink is found btrfs: statfs: report zero available if metadata are exhausted Btrfs: igrab inode in writepage Btrfs: add missing brelse when superblock checksum fails iw_cxgb3: Fix incorrectly returning error on success arm64: kill off the libgcc dependency lib/clz_tab.c: put in lib-y rather than obj-y compiler-gcc.h: neatening compiler-gcc: integrate the various compiler-gcc[345].h files lib/ucs2_string: Correct ucs2 -> utf8 conversion efi: Add pstore variables to the deletion whitelist efi: Make efivarfs entries immutable by default efi: Make our variable validation list include the guid efi: Do variable name validation tests in utf8 efi: Use ucs2_as_utf8 in efivarfs instead of open coding a bad version efi: efivar_create_sysfs_entry() should return negative error codes lib/ucs2_string: Add ucs2 -> utf8 helper functions ARM: 8457/1: psci-smp is built only for SMP drm/gma500: Use correct unref in the gem bo create function module: wrapper for symbol name. iio: pressure: mpl115: fix temperature offset sign iio: dac: mcp4725: set iio name property in sysfs iio: adis_buffer: Fix out-of-bounds memory access ptrace: use fsuid, fsgid, effective creds for fs access checks HID: multitouch: fix input mode switching on some Elan panels sched: Fix crash in sched_init_numa() ALSA: hda - Implement loopback control switch for Realtek and other codecs ALSA: usb-audio: Set correct type for some UAC2 mixer controls. HID: fix hid_ignore_special_drivers module parameter HID: core: do not scan reports if the group is already set usb: retry reset if a device times out ARM: dts: armada-375: use armada-370-sata for SATA tools/hv: Use include/uapi with __EXPORTED_HEADERS__ tools: hv: Makefile: Add hv_fcopy_daemon to Makefile staging: comedi: ni_tiocmd: change mistaken use of start_src for start_arg net: irda: Fix use-after-free in irtty_open() crypto: ccp - Don't assume export/import areas are aligned crypto: ccp - Limit the amount of information exported [media] pwc: Add USB id for Philips Spc880nc webcam [media] media: v4l2-compat-ioctl32: fix missing length copy in put_v4l2_buffer32 tty: Fix GPF in flush_to_ldisc(), part 2 crypto: ccp - Add hash state import and export support EDAC, amd64_edac: Shift wrapping issue in f1x_get_norm_dct_addr() fuse: break infinite loop in fuse_fill_write_pages() ovl: fix permission checking for setattr powerpc: Fix dedotify for binutils >= 2.26 arm64: account for sparsemem section alignment when choosing vmemmap offset arm64: vmemmap: use virtual projection of linear region drm/dp/mst: Reverse order of MST enable and clearing VC payload table. drm/dp/mst: move GUID storage from mgr, port to only mst branch irqchip/omap-intc: Add support for spurious irq handling irqchip: omap-intc: Improve IRQ handler MAINTAINERS: return arch/sh to maintained state, with new maintainers ALSA: hda - Fixup inverted internal mic for Lenovo E50-80 net: Fix skb_set_peeked use-after-free bug net: Clone skb before setting peeked flag BACKPORT: selinux: restrict kernel module loading android: base-cfg: enable CONFIG_QUOTA ANDROID: dm: rename dm-linear methods for dm-android-verity ANDROID: mmc: Add CONFIG_MMC_SIMULATE_MAX_SPEED ANDROID: dm verity fec: add sysfs attribute fec/corrected sdcardfs: remove unneeded __init and __exit sdcardfs: Remove unused code ANDROID: dm: Mounting root as linear device when verity disabled BACKPORT: nl80211: Stop scheduled scan if netlink client disappears sdcardfs: remove effectless config option trace: cpufreq: fix typo in min/max cpufreq inotify: Fix erroneous update of bit count CHROMIUM: usb: gadget: f_accessory: add .raw_request callback CHROMIUM: usb: gadget: audio_source: add .free_func callback ANDROID: usb: gadget: Add support for MTP OS desc CHROMIUM: usb: gadget: f_mtp: fix usb_ss_ep_comp_descriptor CHROMIUM: usb: gadget: f_mtp: Add SuperSpeed support sdcardfs: Add support for d_canonicalize vfs: add d_canonical_path for stacked filesystem support kasan: add functions to clear stack poison kasan: fix kmemleak false-positive in kasan_module_alloc() kasan: always taint kernel on report mm, slub, kasan: enable user tracking by default with KASAN=y kasan: use IS_ALIGNED in memory_is_poisoned_8() kasan: Fix a type conversion error lib: test_kasan: add some testcases kasan: update reference to kasan prototype repo kasan: move KASAN_SANITIZE in arch/x86/boot/Makefile kasan: various fixes in documentation kasan: update log messages kasan: accurately determine the type of the bad access kasan: update reported bug types for kernel memory accesses kasan: update reported bug types for not user nor kernel memory accesses mm/kasan: prevent deadlock in kasan reporting mm/kasan: don't use kasan shadow pointer in generic functions mm/kasan: MODULE_VADDR is not available on all archs mm/kasan: rename kasan_enabled() to kasan_report_enabled() arm64: KASAN depends on !(ARM64_16K_PAGES && ARM64_VA_BITS_48) arm64: kasan: fix issues reported by sparse arm64: add KASAN support sdcardfs: Bring up to date with Android M permissions: Changed type-casting in packagelist management Port of sdcardfs to 3.18 Included sdcardfs source code for kernel 3.0 BACKPORT: FROMLIST: mm: ASLR: use get_random_long() FROMLIST: drivers: char: random: add get_random_long() ANDROID: usb: u_ether: Add missing rx_work init Revert "mmc: core: Hold a wake lock accross delayed work + mmc rescan" Revert "mmc: Extend wakelock if bus is dead" ANDROID: dm-crypt: Remove WQ_NON_REENTRANT flag. ANDROID: recommended.cfg: Setup verity root A/B ANDROID: dm-android-verity: Rebase on top of 4.1 ANDROID: dm: Rebase on top of 4.1 ANDROID: dm: Add android verity target UPSTREAM: lib/string.c: introduce strreplace() CHROMIUM: dm: boot time specification of dm= ANDROID: dm-crypt: run in a WQ_HIGHPRI workqueue ANDROID: dm-verity: run in a WQ_HIGHPRI workqueue ANDROID: mmc: move to a SCHED_FIFO thread net: tcp: fix rtable leak in tcp_is_local[6] UPSTREAM: arm64: cpu hotplug: ensure we mask out CPU_TASKS_FROZEN in notifiers android: base-cfg: Add CONFIG_IP_MULTICAST kasan: fix last shadow judgement in memory_is_poisoned_16() mm/mempool.c: kasan: poison mempool elements mm/mempool: avoid KASAN marking mempool poison checks as use-after-free mm/mempool: allow NULL `pool' pointer in mempool_destroy() mm/mempool.c: kasan: poison mempool elements mm, mempool: poison elements backed by slab allocator mm, mempool: disallow mempools based on slab caches with constructors mm, mempool: do not allow atomic resizing x86/kasan, mm: Introduce generic kasan_populate_zero_shadow() x86/kasan: Define KASAN_SHADOW_OFFSET per architecture kasan: remove duplicate definition of the macro KASAN_FREE_PAGE kasan: show gcc version requirements in Kconfig and Documentation kasan: Makefile: shut up warnings if CONFIG_COMPILE_TEST=y kasan, module: move MODULE_ALIGN macro into <linux/moduleloader.h> kasan, module, vmalloc: rework shadow allocation for modules kasan: enable instrumentation of global variables module: fix types of device tables aliases kernel: add support for .init_array.* constructors mm: vmalloc: pass additional vm_flags to __vmalloc_node_range() mm: vmalloc: add flag preventing guard hole allocation kasan: enable stack instrumentation x86_64: kasan: add interceptors for memset/memmove/memcpy functions lib: add kasan test module kmemleak: disable kasan instrumentation for kmemleak fs: dcache: manually unpoison dname after allocation to shut up kasan's reports mm: slub: add kernel address sanitizer support for slub allocator mm: slub: introduce metadata_access_enable()/metadata_access_disable() mm: slub: share object_err function mm: slub: introduce virt_to_obj function mm: page_alloc: add kasan hooks on alloc and free paths x86_64: add KASan support kasan: disable memory hotplug kasan: add kernel address sanitizer infrastructure compiler: introduce __alias(symbol) shortcut MODULE_DEVICE_TABLE: fix some callsites arm64: Move some head.text functions to executable section arm64: introduce VA_START macro - the first kernel virtual address. arm64: support initrd outside kernel linear map mm: add utility for early copy from unmapped ram arm64: Change memcpy in kernel to use the copy template file arm64: move PGD_SIZE definition to pgalloc.h arm64: pgalloc: consistently use PGALLOC_GFP arm64: use ENDPIPROC() to annotate position independent assembler routines arm64: add macros for common adrp usages arm64: guard asm/assembler.h against multiple inclusions x86/iopl/64: Properly context-switch IOPL on Xen PV Linux 3.18.30 PM / OPP: Fix incorrect comments PM / OPP: Initialize regulator pointer to an error value PM / OPP: Initialize u_volt_min/max to a valid value PM / OPP: Fix NULL pointer dereference crash when disabling OPPs PM / OPP: Add dev_pm_opp_set_rate() regulator: core: Define regulator_set_voltage_triplet() PM / OPP: Manage device clk PM / OPP: Parse clock-latency and voltage-tolerance for v1 bindings PM / OPP: Introduce dev_pm_opp_get_max_transition_latency() PM / OPP: Introduce dev_pm_opp_get_max_volt_latency() PM / OPP: Disable OPPs that aren't supported by the regulator PM / OPP: get/put regulators from OPP core PM / OPP: build bug fix PM / OPP: Use snprintf() instead of sprintf() PM / OPP: Set cpu_dev->id in cpumask first PM / OPP: Fix parsing of opp-microvolt and opp-microamp properties PM / OPP: Parse 'opp-<prop>-<name>' bindings PM / OPP: Parse 'opp-supported-hw' binding PM / OPP: Add missing doc comments PM / OPP: Rename OPP nodes as opp@<opp-hz> PM / OPP: Remove 'operating-points-names' binding PM / OPP: Add {opp-microvolt|opp-microamp}-<name> binding PM / OPP: Add "opp-supported-hw" binding PM / OPP: Add opp_rcu_lockdep_assert() to _find_device_opp() PM / OPP: Hold dev_opp_list_lock for writers PM / OPP: Protect updates to list_dev with mutex PM / OPP: Propagate error properly from dev_pm_opp_set_sharing_cpus() PM / OPP: Parse all power-supply related bindings together PM / OPP: Rename routines specific to old bindings with _v1 PM / OPP: Improve print messages with pr_fmt PM / OPP: passing NULL to PTR_ERR() PM / OPP: Move cpu specific code to opp/cpu.c PM / OPP: Move opp core to its own directory PM / OPP: Prefix exported opp routines with dev_pm_opp_ PM / OPP: Rename opp init/free table routines PM / OPP: Return suspend_opp only if it is enabled imx6q: free OPP table created during ->init() exynos5440: free OPP table created during ->init() cpufreq: arm_big_little: free OPP table created during ->init() PM / OPP: reuse of_parse_phandle() PM: Convert dev_pm_put_subsys_data() into a void function PM: Update function header for dev_pm_get_subsys_data() arm64: psci: move psci firmware calls out of line Revert "MIPS: Kconfig: Disable SMP/CPS for 64-bit" ld-version: Fix awk regex compile failure tracing: Fix check for cpu online when event is disabled Revert "drm/radeon/pm: adjust display configuration after powerstate" KVM: VMX: disable PEBS before a guest entry KVM: PPC: Book3S HV: Sanitize special-purpose register values on guest exit ARM: dts: dra7: do not gate cpsw clock due to errata i877 ARM: dts: dra7: Add CPSW and MDIO module nodes for dra7 target: Drop incorrect ABORT_TASK put for completed commands ovl: copy new uid/gid into overlayfs runtime inode ovl: fix getcwd() failure after unsuccessful rmdir mac80211: Fix Public Action frame RX in AP mode ASoC: wm_adsp: Fix enum ctl accesses in a wrong type ASoC: wm8994: Fix enum ctl accesses in a wrong type ASoC: wm8958: Fix enum ctl accesses in a wrong type can: gs_usb: fixed disconnect bug by removing erroneous use of kfree() mac80211: minstrel_ht: set default tx aggregation timeout to 0 iwlwifi: mvm: inc pending frames counter also when txing non-sta mac80211: fix use of uninitialised values in RX aggregation cfg80211/wext: fix message ordering wext: fix message delay/ordering Linux 3.18.29 arm64: kernel: pause/unpause function graph tracer in cpu_suspend() ipv6: drop frames with attached skb->sk in forwarding Correct backport for ip6_gre: release cached dst on tunnel removal KVM: x86: move steal time initialization to vcpu entry time tools: Add a "make all" rule HID: usbhid: fix recursive deadlock iwlwifi: pcie: support loading FW with extended mem range ubi: Fix out of bounds write in volume update code MIPS: traps: Fix SIGFPE information leak from `do_ov' and `do_trap_or_bp' block: bio: introduce helpers to get the 1st and last bvec ALSA: hda - Fix mic issues on Acer Aspire E1-472 PM / sleep / x86: Fix crash on graph trace through x86 suspend drm/radeon/pm: update current crtc info after setting the powerstate USB: qcserial: add Sierra Wireless EM74xx device ID USB: qcserial: add Sierra Wireless MC74xx/EM74xx drm/ast: Fix incorrect register check for DRAM width ALSA: seq: oss: Don't drain at closing a client ALSA: usb-audio: Add a quirk for Plantronics DA45 USB: serial: option: add support for Quectel UC20 USB: serial: option: add support for Telit LE922 PID 0x1045 USB: cp210x: Add ID for Parrot NMEA GPS Flight Recorder USB: qcserial: add Dell Wireless 5809e Gobi 4G HSPA+ (rev3) ALSA: hdsp: Fix wrong boolean ctl value accesses ALSA: hdspm: Fix zero-division ALSA: hdspm: Fix wrong boolean ctl value accesses arm/arm64: KVM: Fix ioctl error handling Fix cifs_uniqueid_to_ino_t() function for s390x CIFS: Fix SMB2+ interim response processing for read requests cifs: fix out-of-bounds access in lease parsing ALSA: timer: Fix ioctls for X32 ABI ALSA: timer: Fix broken compat timer user status ioctl ALSA: rawmidi: Fix ioctls X32 ABI ALSA: ctl: Fix ioctls for X32 ABI vfio: fix ioctl error handling do_last(): don't let a bogus return value from ->open() et.al. to confuse us hpfs: don't truncate the file when delete fails mm: thp: fix SMP race condition between THP page fault and MADV_DONTNEED libata: Align ata_device's id on a cacheline iommu/amd: Apply workaround for ATS write permission check iommu/amd: Fix boot warning when device 00:00.0 is not iommu covered ALSA: hda - Fix headset support and noise on HP EliteBook 755 G2 ALSA: hda - Fixup speaker pass-through control for nid 0x14 on ALC225 ALSA: hda/realtek - Support Dell headset mode for ALC225 ALSA: hda - Fixing background noise on Dell Inspiron 3162 Fix directory hardlinks from deleted directories jffs2: Fix page lock / f->sem deadlock Revert "jffs2: Fix lock acquisition order bug in jffs2_write_begin" KVM: x86: MMU: fix ubsan index-out-of-range warning ALSA: hda - Add mic mute hotkey quirk for Lenovo ThinkCentre AIO ALSA: hda - Fixing speaker noise on the two latest thinkpad models ALSA: hda - Fix headphone noise after Dell XPS 13 resume back from S3 ALSA: hda/realtek - Dell XPS one ALC3260 speaker no sound after resume back ALSA: hda/realtek - Support Dell headset mode for ALC298 ALSA: hda/realtek - Support Dell headset mode for ALC288 ALSA: hda - Enable docking station for an HP machine ALSA: hda - Enable mic mute hotkey and LEDs for an HP machine ALSA: hda/realtek - Supported HP mute Led for ALC286 ALSA: hda/realtek - Clean up mute/mic GPIO LED handling usb: chipidea: otg: change workqueue ci_otg as freezable libceph: don't bail early from try_read() when skipping a message tracing: Fix showing function event in available_events KVM: async_pf: do not warn on page allocation failures KVM: arm/arm64: vgic: Ensure bitmaps are long enough sunrpc/cache: fix off-by-one in qword_get() drm/radeon/pm: adjust display configuration after powerstate s390/compat: correct restore of high gprs on signal return can: ems_usb: Fix possible tx overflow hwmon: (ads1015) Handle negative conversion values correctly Adding Intel Lewisburg device IDs for SATA ahci: Order SATA device IDs for codename Lewisburg USB: option: add "4G LTE usb-modem U901" usb: cp210x support SEL C662 Vendor/Device USB: cp210x: add IDs for GE B650V3 and B850V3 boards USB: cp210x: add ID for ELV Marble Sound Board 1 USB: option: add support for SIM7100E NFSv4: Fix a dentry leak on alias use usb: dwc3: Fix assignment of EP transfer resources [media] adv7604: fix tx 5v detect regression xen/pcifront: Fix mysterious crashes when NUMA locality information was extracted. xen/pciback: Don't allow MSI-X ops if PCI_COMMAND_MEMORY is not set. xen/pciback: Return error on XEN_PCI_OP_enable_msix when device has MSI or MSI-X enabled xen/pciback: Save xen_pci_op commands before processing it iwlwifi: mvm: don't allow sched scans without matches to be started libata: fix HDIO_GET_32BIT ioctl nfs: fix nfs_size_to_loff_t xen/scsiback: correct frontend counting x86/entry/compat: Add missing CLAC to entry_INT80_32 target: Fix race with SCF_SEND_DELAYED_TAS handling target: Fix remote-port TMR ABORT + se_cmd fabric stop target: Fix TAS handling for multi-session se_node_acls target: Fix LUN_RESET active I/O handling for ACK_KREF target: fix COMPARE_AND_WRITE non zero SGL offset data corruption target: Fix race for SCF_COMPARE_AND_WRITE_POST checking iscsi-target: Fix rx_login_comp hang after login failure Linux 3.18.28 fs-writeback: unplug before cond_resched in writeback_sb_inodes ext4: fix crashes in dioread_nolock mode ALSA: pcm: Fix rwsem deadlock for non-atomic PCM stream ALSA: pcm: More kerneldoc updates drm/qxl: use kmalloc_array to alloc reloc_info in qxl_process_single_command drm/radeon: use post-decrement in error handling ALSA: seq: Fix double port list deletion tracing: Fix freak link error caused by branch tracer tracepoints: Do not trace when cpu is offline dmaengine: dw: disable BLOCK IRQs for non-cyclic xfer ALSA: seq: Fix leak of pool buffer at concurrent writes ALSA: seq: Drop superfluous error/debug messages after malloc failures powerpc/powernv: Shorten EEH function names ALSA: usb-audio: avoid freeing umidi object twice EVM: Use crypto_memneq() for digest comparisons ext4: don't read blocks from disk after extents being swapped ext4: move_extent improve bh vanishing success factor ext4: fix potential integer overflow btrfs: properly set the termination value of ctx->pos in readdir ARM: 8519/1: ICST: try other dividends than 1 s390/dasd: fix refcount for PAV reassignment s390/dasd: prevent incorrect length error under z/VM after PAV changes cifs: fix erroneous return value drm/radeon: hold reference to fences in radeon_sa_bo_new ahci: Intel DNV device IDs SATA phy: twl4030-usb: Fix unbalanced pm_runtime_enable on module reload phy: twl4030-usb: Relase usb phy on unload phy: core: fix wrong err handle for phy_power_on phy: core: Fixup return value of phy_exit when !pm_runtime_enabled ALSA: timer: Fix race at concurrent reads ALSA: timer: Handle disconnection more safely ALSA: timer: Fix race between stop and interrupt ARM: 8517/1: ICST: avoid arithmetic overflow in icst_hz() ALSA: timer: Fix wrong instance passed to slave callbacks drm/i915/dsi: don't pass arbitrary data to sideband drm/i915/dsi: defend gpio table against out of bounds access ALSA: dummy: Implement timer backend switching more safely klist: fix starting point removed bug in klist iterators ALSA: hda - Fix speaker output from VAIO AiO machines pty: make sure super_block is still valid in final /dev/tty close pty: fix possible use after free of tty->driver_data tty: Add support for PCIe WCH382 2S multi-IO card tty: Add support for the WCH384 4S multi-IO card parport: Add support for the WCH382 2S/1P multi-IO card qla2xxx: Use pci_enable_msix_range() instead of pci_enable_msix() crypto: user - lock crypto_alg_list on alg dump ALSA: hda - Fix static checker warning in patch_hdmi.c SCSI: Add Marvell Console to VPD blacklist scsi_dh_rdac: always retry MODE SELECT on command lock violation Btrfs: fix hang on extent buffer lock caused by the inode_paths ioctl target: Fix LUN_RESET active TMR descriptor handling target: Remove first argument of target_{get,put}_sess_cmd() ASoC: dpcm: fix the BE state on hw_free cputime: Prevent 32bit overflow in time[val|spec]_to_cputime() MIPS: Fix buffer overflow in syscall_get_arguments() libata: fix sff host state machine locking while polling intel_scu_ipcutil: underflow in scu_reg_access() qla2xxx: terminate exchange when command is aborted by LIO qla2xxx: added sess generations to detect RSCN update races qla2xxx: Mark port lost when we receive an RSCN for it. qla2xxx: Abort stale cmds on qla_tgt_wq when plogi arrives qla2xxx: drop cmds/tmrs arrived while session is being deleted qla2xxx: delay plogi/prli ack until existing sessions are deleted qla2xxx: cleanup cmd in qla workqueue before processing TMR qla2xxx: kill sessions/log out initiator on RSCN and port down events libata: disable forced PORTS_IMPL for >= AHCI 1.3 PCI/AER: Flush workqueue on device remove to avoid use-after-free ASoC: rt5645: fix the shift bit of IN1 boost iommu/vt-d: Fix 64-bit accesses to 32-bit DMAR_GSTS_REG qla2xxx: fix busy wait regression Linux 3.18.27 xfrm: dst_entries_init() per-net dst_ops xen-netfront: update num_queues to real created xen-netfront: respect user provided max_queues xen-netback: respect user provided max_queues team: Replace rcu_read_lock with a mutex in team_vlan_rx_kill_vid ppp, slip: Validate VJ compression slot parameters completely isdn_ppp: Add checks for allocation failure in isdn_ppp_open() ipv6: update skb->csum when CE mark is propagated net: bpf: reject invalid shifts phonet: properly unshare skbs in phonet_rcv() bonding: Prevent IPv6 link local address on enslaved devices tcp_yeah: don't set ssthresh below 2 ipv6: tcp: add rcu locking in tcp_v6_send_synack() net: sctp: prevent writes to cookie_hmac_alg from accessing invalid memory vxlan: fix test which detect duplicate vxlan iface net: possible use after free in dst_release net: sched: fix missing free per cpu on qstats net: filter: make JITs zero A for SKF_AD_ALU_XOR_X bridge: Only call /sbin/bridge-stp for the initial network namespace unix: properly account for FDs passed over unix sockets connector: bump skb->users before callback invocation sctp: sctp should release assoc when sctp_make_abort_user return NULL in sctp_close ipv6/addrlabel: fix ip6addrlbl_get() veth: don’t modify ip_summed; doing so treats packets with bad checksums as good. X.509: Don't strip leading 00's from key ID when constructing key description radix-tree: fix oops after radix_tree_iter_retry mm: replace vma_lock_anon_vma with anon_vma_lock_read/write ocfs2/dlm: clear refmap bit of recovery lock while doing local recovery cleanup dump_stack: avoid potential deadlocks drm/dp/mst: Calculate MST PBN with 31.32 fixed point drm: Add drm_fixp_from_fraction and drm_fixp2int_ceil drm: fix missing reference counting decrease ARM: nomadik: set up MCDATDIR2 [media] saa7134-alsa: Only frees registered sound cards ALSA: timer: Fix leftover link at closing ALSA: timer: Fix double unlink of active_list [media] tda1004x: only update the frontend properties if locked xhci: Fix list corruption in urb dequeue at host removal usb: xhci: apply XHCI_PME_STUCK_QUIRK to Intel Broxton-M platforms usb: xhci: set SSIC port unused only if xhci_suspend succeeds usb: xhci: add a quirk bit for ssic port unused usb: xhci: handle both SSIC ports in PME stuck quirk xhci: Move xhci_pme_quirk() behind #ifdef CONFIG_PM xhci: Workaround to get D3 working in Intel xHCI xhci: call BIOS workaround to enable runtime suspend on Intel Braswell radix-tree: fix race in gang lookup drivers/scsi/sg.c: mark VMA as VM_IO to prevent migration ALSA: seq: Fix lockdep warnings due to double mutex locks ALSA: rawmidi: Fix race at copying & updating the position ALSA: rawmidi: Make snd_rawmidi_transmit() race-free ALSA: hda - Add fixup for Mac Mini 7,1 model drm/radeon: mask out WC from BO on unsupported arches drm/radeon: Always disable RADEON_GEM_GTT_UC along with RADEON_GEM_GTT_WC drm: add helper to check for wc memory support ALSA: timer: Fix link corruption due to double start or stop ALSA: timer: Code cleanup ALSA: timer: Harden slave timer list handling ALSA: seq: Fix yet another races among ALSA timer accesses ALSA: pcm: Fix potential deadlock in OSS emulation ALSA: rawmidi: Remove kernel WARNING for NULL user-space buffer check ALSA: seq: Fix race at closing in virmidi driver crypto: algif_hash - wait for crypto_ahash_init() to complete ALSA: usb-audio: Add quirk for Microsoft LifeCam HD-6000 ALSA: usb-audio: Add native DSD support for PS Audio NuWave DAC ALSA: usb: Add native DSD support for Aune X1S drm/i915/dp: fall back to 18 bpp when sink capability is unknown crypto: shash - Fix has_key setting ARM: dts: at91: sama5d4: fix instance id of DBGU rfkill: fix rfkill_fop_read wait_event usage mac80211: Requeue work after scan complete for all VIF types. arm64: restore bogomips information in /proc/cpuinfo USB: fix invalid memory access in hub_activate() serial: 8250_pci: Add Intel Broadwell ports x86/mm/pat: Avoid truncation when converting cpa->numpages to address Staging: speakup: Fix getting port information drm/vmwgfx: respect 'nomodeset' ALSA: dummy: Disable switching timer backend via sysfs seccomp: always propagate NO_NEW_PRIVS on tsync irqchip/atmel-aic: Fix wrong bit operation for IRQ priority staging/speakup: Use tty_ldisc_ref() for paste kworker n_tty: Fix unsafe reference to "other" ldisc tty: Fix unsafe ldisc reference via ioctl(TIOCGETD) SCSI: fix crashes in sd and sr runtime PM powerpc/eeh: Fix PE location code arm64: mm: avoid calling apply_to_page_range on empty range ALSA: bebob: Use a signed return type for get_formation_index ALSA: usb-audio: Fix TEAC UD-501/UD-503/NT-503 usb delay ALSA: compress: Disable GET_CODEC_CAPS ioctl for some architectures USB: option: fix Cinterion AHxx enumeration USB: serial: ftdi_sio: add support for Yaesu SCU-18 cable ALSA: seq: Degrade the error message for too many opens ALSA: seq: Fix incorrect sanity check at snd_seq_oss_synth_cleanup() USB: serial: option: Adding support for Telit LE922 USB: serial: visor: fix crash on detecting device without write_urbs USB: visor: fix null-deref at probe USB: cp210x: add ID for IAI USB to RS485 adaptor usb: hub: do not clear BOS field during reset device cdc-acm:exclude Samsung phone 04e8:685d usb: cdc-acm: send zero packet for intel 7260 modem usb: cdc-acm: handle unlinked urb in acm read callback ideapad-laptop: Add Lenovo Yoga 700 to no_hw_rfkill dmi list ideapad-laptop: Add Lenovo Yoga 900 to no_hw_rfkill dmi list ACPI / PCI / hotplug: unlock in error path in acpiphp_enable_slot() MIPS: Fix some missing CONFIG_CPU_MIPSR6 #ifdefs HID: hidpp: update input_configured callback usb: gadget: build audio_source function only if SND is enabled usb: gadget: function: fix unused func warning kbuild: Makefile.clean: make Kbuild and Makefile optional iscsi-target: Fix potential dead-lock during node acl delete ideapad-laptop: Add Lenovo ideapad Y700-17ISK to no_hw_rfkill dmi list IB/qib: Support creating qps with GFP_NOIO flag IB/qib: fix mcast detach when qp not attached crypto: crc32c - Fix crc32c soft dependency crypto: algif_hash - Fix race condition in hash_check_key crypto: af_alg - Forbid bind(2) when nokey child sockets are present crypto: algif_hash - Remove custom release parent function crypto: af_alg - Allow af_af_alg_release_parent to be called on nokey path crypto: algif_hash - Require setkey before accept(2) crypto: hash - Add crypto_ahash_has_setkey mac802154: fix typo IEEE802515 to IEEE802154 crypto: af_alg - Add nokey compatibility path crypto: af_alg - Fix socket double-free when accept fails crypto: af_alg - Disallow bind/setkey/... after accept(2) printk: do cond_resched() between lines while outputting to consoles kernel/panic.c: turn off locks debug before releasing console lock panic: release stale console lock to always get the logbuf printed out memcg: only free spare array when readers are done mm: soft-offline: check return value in second __get_any_page() call zram: try vmalloc() after kmalloc() zram/zcomp: use GFP_NOIO to allocate streams ocfs2/dlm: ignore cleaning the migration mle that is inuse scripts/bloat-o-meter: fix python3 syntax error dma-debug: switch check from _text to _stext m32r: fix m32104ut_defconfig build fail cifs_dbg() outputs an uninitialized buffer in cifs_readdir() cifs: fix race between call_async() and reconnect() cifs: Ratelimit kernel log messages cifs: convert printk(LEVEL...) to pr_<level> cifs: convert to print_hex_dump() instead of custom implementation sparc64: fix incorrect sign extension in sys_sparc64_personality mmc: core: Enable tuning according to the actual timing mmc: core: enable CMD19 tuning for DDR50 mode mmc: core: Simplify by adding mmc_execute_tuning() mmc: core: Fix error paths and messages in mmc_init_card mmc: mmci: fix an ages old detection error dmaengine: dw: fix cyclic transfer callbacks dmaengine: dw: fix cyclic transfer setup dmaengine: dw: Make error prints unique. Part #1 KVM: PPC: Fix ONE_REG AltiVec support parisc: Fix __ARCH_SI_PREAMBLE_SIZE virtio_balloon: fix race between migration and ballooning Input: elantech - mark protocols v2 and v3 as semi-mt xfs: handle dquot buffer readahead in log recovery correctly xfs: inode recovery readahead can race with inode buffer creation s390: fix normalization bug in exception table sorting drm/nouveau/kms: take mode_config mutex in connector hotplug path uml: flush stdout before forking uml: fix hostfs mknod() dm snapshot: fix hung bios when copy error occurs locks: fix unlock when fcntl_setlk races with a close locks: update comments that refer to inode->i_flock iwlwifi: update and fix 7265 series PCI IDs PCI: host: Mark PCIe/PCI (MSI) IRQ cascade handlers as IRQF_NO_THREAD PCI: imx6: Use tabs for indentation PCI: Fix minimum allocation address overwrite drm/dp/mst: fix in RAD element access gpu: drm: drm_dp_mst_topology.c: Fix improper use of strncat drm/dp/mst: fix in MSTB RAD initialization drm/dp/mst: process broadcast messages correctly udf: Check output buffer length when converting name to CS0 udf: Prevent buffer overrun with multi-byte characters Input: i8042 - add Fujitsu Lifebook U745 to the nomux list wlcore/wl12xx: spi: fix NULL pointer dereference (Oops) bcache: Change refill_dirty() to always scan entire disk if necessary bcache: prevent crash on changing writeback_running bcache: allows use of register in udev to avoid "device_busy" error. bcache: unregister reboot notifier if bcache fails to unregister device bcache: fix a leak in bch_cached_dev_run() bcache: clear BCACHE_DEV_UNLINK_DONE flag when attaching a backing device bcache: Add a cond_resched() call to gc bcache: fix a livelock when we cause a huge number of cache misses rtlwifi: rtl_pci: Fix kernel panic NFS: Fix attribute cache revalidation NFS: Remove the "NFS_CAP_CHANGE_ATTR" capability rtlwifi: rtl8192cu: Add missing parameter setup rtlwifi: rtl8192ce: Fix handling of module parameters rtlwifi: rtl8192se: Fix module parameter initialization rtlwifi: rtl8192de: Fix incorrect module parameter descriptions rtlwifi: rtl8188ee: Fix module parameter initialization posix-clock: Fix return code on the poll method's error path Thermal: do thermal zone update after a cooling device registered Thermal: handle thermal zone device properly during system sleep Thermal: initialize thermal zone device correctly nfs: Fix race in __update_open_stateid() udf: limit the maximum number of indirect extents in a row mmc: sdhci: Fix sdhci_runtime_pm_bus_on/off() mmc: sdio: Fix invalid vdd in voltage switch power cycle drm/radeon: clean up fujitsu quirks drm/radeon: Fix off-by-one errors in radeon_vm_bo_set_addr android: recommended.cfg: enable taskstats Revert "usb: gadget: composite: Fix corruption when changing configuration" selinux: nlmsgtab: add SOCK_DESTROY to the netlink mapping tables drm/radeon: fence PT updates manually v2 futex: Drop refcount if requeue_pi() acquired the rtmutex dm thin: fix race condition when destroying thin pool workqueue EDAC: Robustify workqueues destruction ovl: check dentry positiveness in ovl_cleanup_whiteouts() wlcore/wl12xx: spi: fix oops on firmware load rtlwifi: fix memory leak for USB device Bluetooth: Add support of Toshiba Broadcom based devices ovl: root: copy attr KVM: PPC: Fix emulation of H_SET_DABR/X on POWER8 time: Avoid signed overflow in timekeeping_get_ns() drm/radeon: call hpd_irq_event on resume tools lib traceevent: Fix output of %llu for 64 bit values read on 32 bit machines [media] media: dvb-core: Don't force CAN_INVERSION_AUTO in oneshot mode [media] gspca: ov534/topro: prevent a division by 0 [media] vb2: fix a regression in poll() behavior for output,streams ovl: use a minimal buffer in ovl_copy_xattr ovl: allow zero size xattr Revert "net: wireless: Add CONFIG_WIFI_CONTROL_FUNC option" neigh: Better handling of transition to NUD_PROBE state net: diag: support v4mapped sockets in inet_diag_find_one_icsk() net: tcp: deal with listen sockets properly in tcp_abort. net: diag: Support destroying TCP sockets. net: diag: Support SOCK_DESTROY for inet sockets. net: diag: Add the ability to destroy a socket. net: diag: split inet_diag_dump_one_icsk into two ipv6: inet6_sk() should use sk_fullsock() net: add sk_fullsock() helper Linux 3.18.26 Revert "workqueue: make sure delayed work run in local cpu" KEYS: Fix keyring ref leak in join_session_keyring() KEYS: Fix race between read and revoke net: check both type and procotol for tcp sockets usb: Use the USB_SS_MULT() macro to decode burst multiplier for log message usb: core : hub: Fix BOS 'NULL pointer' kernel panic usb: musb: USB_TI_CPPI41_DMA requires dmaengine support usb: gadget: pxa27x: fix suspend callback USB: whci-hcd: add check for dma mapping error USB: add quirk for devices with broken LPM USB: cp210x: Remove CP2110 ID from compatibility list USB: serial: Another Infineon flash loader USB ID USB: cdc_acm: Ignore Infineon Flash Loader utility rbd: don't leak parent_spec in rbd_dev_probe_parent() RDS: verify the underlying transport exists before creating a connection iwlwifi: bump firmware API for mvm devices to 12 iwlwifi: 7000: fix reported firmware name for 7265D ALSA: hda/hdmi - apply Skylake fix-ups to Broxton display codec ceph: fix message length computation ocfs2: fix umask ignored issue nfs: if we have no valid attrs, then don't declare the attribute cache valid nfs4: start callback_ident at idr 1 nfsd: serialize state seqid morphing operations firewire: ohci: fix JMicron JMB38x IT context discovery ext4, jbd2: ensure entering into panic after recording an error in superblock rbd: don't put snap_context twice in rbd_queue_workfn() Btrfs: fix race when listing an inode's xattrs Btrfs: fix race leading to BUG_ON when running delalloc for nodatacow Btrfs: fix race leading to incorrect item deletion when dropping extents Btrfs: fix file corruption and data loss after cloning inline extents RDS: fix race condition when sending a message on unbound socket UPSTREAM: selinux: fix bug in conditional rules handling UPSTREAM: KEYS: Fix keyring ref leak in join_session_keyring() ion: fix page pool cache policy UPSTREAM: memcg: Only free spare array when readers are done unix: avoid use-after-free in ep_remove_wait_queue af_unix: Revert 'lock_interruptible' in stream receive code fou: clean up socket with kfree_rcu bluetooth: Validate socket address length in sco_sock_bind(). pptp: verify sockaddr_len in pptp_bind() and pptp_connect() skbuff: Fix offset error in skb_reorder_vlan_header vlan: Fix untag operations of stacked vlans with REORDER_HEADER off net: fix IP early demux races sh_eth: fix kernel oops in skb_put() net: add validation for the socket syscall protocol argument ipv6: sctp: clone options to avoid use after free net: qca_spi: fix transmit queue timeout handling sctp: also copy sk_tsflags when copying the socket sctp: update the netstamp_needed counter when copying sockets sctp: use the same clock as if sock source timestamps were on atl1c: Improve driver not to do order 4 GFP_ATOMIC allocation gre6: allow to update all parameters via rtnl arm64: Add dtb files to archclean rule UPSTREAM: seccomp: cap SECCOMP_RET_ERRNO data to MAX_ERRNO Input: xpad - fix clash of presence handling with LED setting Input: xpad - query wireless controller state at init Input: xpad - move the input device creation to a new function Input: xpad - x360w: report dpad as buttons and axes Input: xpad - factor out URB submission in xpad_play_effect Input: xpad - remove needless bulk out URB used for LED setup Input: xpad - use ida() for finding the pad_nr Input: xpad - clarify LED enumeration Input: xpad - fix Razer Atrox Arcade Stick button mapping Input: xpad - add Covert Forces edition of the Xbox One controller Input: xpad - re-send LED command on present event Input: xpad - set the LEDs properly on XBox Wireless controllers Input: xpad - add rumble support for Xbox One controller Input: initialize device counter variables with -1 xt_qtaguid: fix a race condition in if_tag_stat_update FROMLIST: x86: mm: support ARCH_MMAP_RND_BITS. FROMLIST: arm64: mm: support ARCH_MMAP_RND_BITS. FROMLIST: arm: mm: support ARCH_MMAP_RND_BITS. FROMLIST: mm: mmap: Add new /proc tunable for mmap_base ASLR. Revert "mm: mmap: Add new /proc tunable for mmap_base ASLR." Revert "arm: mm: support ARCH_MMAP_RND_BITS." UPSTREAM: HID: hid-input: allow input_configured callback return errors Revert "HID: Add input_register callback." usb: gadget: rndis: use %z format specifier for size_t of: Fix build warnings UPSTREAM: include/linux/poison.h: fix LIST_POISON{1,2} offset UPSTREAM: mm: more aggressive page stealing for UNMOVABLE allocations UPSTREAM: mm: always steal split buddies in fallback allocations UPSTREAM: mm: when stealing freepages, also take pages created by splitting buddy page ANDROID: rtc-palmas: correct for bcd year UPSTREAM: proc: actually make proc_fd_permission() thread-friendly ANDROID: android: base-cfg: enable CONFIG_DM_VERITY_FEC UPSTREAM: dm verity: add ignore_zero_blocks feature UPSTREAM: dm verity: add support for forward error correction UPSTREAM: dm verity: factor out verity_for_bv_block() UPSTREAM: dm verity: factor out structures and functions useful to separate object UPSTREAM: dm verity: move dm-verity.c to dm-verity-target.c UPSTREAM: dm verity: separate function for parsing opt args UPSTREAM: dm verity: clean up duplicate hashing code ANDROID: dm verity: port upstream changes to 3.18 BACKPORT: mm: /proc/pid/smaps:: show proportional swap share of the mapping of: handle both '/' and ':' in path strings of: unittest: Add option string test case with longer path of: unittest: Add options string testcase variants of: fix handling of '/' in options for of_find_node_by_path() of/unittest: Fix the wrong expected value in of_selftest_property_string of/unittest: remove the duplicate of_changeset_init of/overlay: Remove unused variable of/overlay: Directly include idr.h of: Drop superfluous dependance for OF_OVERLAY of: Add prompt for OF_OVERLAY config of/pci: Remove duplicate kfree in of_pci_get_host_bridge_resources() of/fdt: fix sparse warning of: EXPORT_SYMBOL_GPL of_property_read_u64_array of/unittest: Overlays with sub-devices tests of/unittest: Remove obsolete code of/platform: Handle of_populate drivers in notifier of/overlay: Do not generate duplicate nodes Removes OF_UNITTEST dependency on OF_DYNAMIC config symbol drivers: of: Export of_reserved_mem_device_{init,release} of: Delete unnecessary check before calling "of_node_put()" of: Drop ->next pointer from struct device_node of: support passing console options with stdout-path of: add optional options parameter to of_find_node_by_path() of: Remove unneeded and incorrect MODULE_DEVICE_TABLE of: base, fix of_property_read_string_helper kernel-doc of: remove select of non-existant OF_DEVICE config symbol of/overlay: Add overlay unittests of/overlay: Introduce DT overlay support of/reconfig: Add OF_DYNAMIC notifier for platform_bus_type of/reconfig: Always use the same structure for notifiers of/reconfig: Add debug output for OF_RECONFIG notifiers of/reconfig: Add empty stubs for the of_reconfig methods of/reconfig: Add of_reconfig_get_state_change() of notifier helper. of/resolver: Switch to new local fixups format. of: Refactor __of_node_alloc() into __of_node_dup() of: Use vargs in __of_node_alloc of: Properly set the OF_POPULATED_BUS flag on root node of/fdt: export fdt blob as /sys/firmware/fdt of: Change of_device_is_available() to return bool of.h: Keep extern declaration of of_* variables when !CONFIG_OF of/irq: Export of_irq_get() of/platform: Move platform devices under /sys/devices/platform of: check for size < 0 after rounding in early_init_dt_add_memory_arch of/fdt: Don't clear initial_boot_params if fdt_check_header() fails of/unittest: Remove test devices after adding them of: Fix padding in _OF_DECLARE macro definition of: Request and map make argument name constant of/unittest: Rename selftest.c to unittest.c of: Eliminate of_allnodes list of: introduce of_property_read_s32 Linux 3.18.25 ipv6: sctp: implement sctp_v6_destroy_sock() net/neighbour: fix crash at dumping device-agnostic proxy entries ipv6: add complete rcu protection around np->opt ipv6: distinguish frag queues by device for multicast and link-local packets broadcom: fix PHY_ID_BCM5481 entry in the id table net: ip6mr: fix static mfc/dev leaks on table destruction net: ipmr: fix static mfc/dev leaks on table destruction net, scm: fix PaX detected msg_controllen overflow in scm_detach_fds tcp: initialize tp->copied_seq in case of cross SYN connection tcp: fix potential huge kmalloc() calls in TCP_REPAIR tcp: md5: fix lockdep annotation net: qmi_wwan: add XS Stick W100-2 from 4G Systems snmp: Remove duplicate OUTMCAST stat increment ip_tunnel: disable preemption when updating per-cpu tstats sctp: translate host order to network order when setting a hmacid packet: fix tpacket_snd max frame len packet: infer protocol from ethernet header if unset packet: only allow extra vlan len on ethernet devices packet: tpacket_snd(): fix signed/unsigned comparison packet: always probe for transport header packet: do skb_probe_transport_header when we actually have data tools/net: Use include/uapi with __EXPORTED_HEADERS__ Revert "net: Fix skb_set_peeked use-after-free bug" ipv6: addrconf: validate new MTU before applying it KVM: x86: Use new is_noncanonical_address in _linearize KVM: x86: work around infinite loop in microcode when #AC is delivered ARM: orion: Fix DSA platform device after mvmdio conversion RDS: verify the underlying transport exists before creating a connection packet: race condition in packet_bind ipv4: disable BH when changing ip local port range ipv6: clean up dev_snmp6 proc entry when we fail to initialize inet6_dev sfc: push partner queue for skb->xmit_more sit: fix sit0 percpu double allocations mmc: Extend wakelock if bus is dead Revert "mmc: mmcblk: Add support for deferred SD bus resume" Revert "mmc: block: Remove call to mmc_blk_set_blksize" ipv6: gre: support SIT encapsulation qmi_wwan: add Sierra Wireless MC74xx/EM74xx virtio-net: drop NETIF_F_FRAGLIST net: fix a race in dst_release() net: avoid NULL deref in inet_ctl_sock_destroy() qmi_wwan: fix entry for HP lt4112 LTE/HSPA+ Gobi 4G Module ipmr: fix possible race resulting from improper usage of IP_INC_STATS_BH() in preemptible context. stmmac: Correctly report PTP capabilities. net/mlx4: Copy/set only sizeof struct mlx4_eqe bytes RDS-TCP: Recover correctly from pskb_pull()/pksb_trim() failure in rds_tcp_data_recv ppp: fix pppoe_dev deletion condition in pppoe_release() macvtap: unbreak receiving of gro skb with frag list irda: precedence bug in irlmp_seq_hb_idx() audit: create private file name copies when auditing inodes audit: correctly record file names with different path name types mptfusion: prevent some memory corruption mfd: wm5110: Add register patch for rev E and above [media] gscpa_m5602: use msecs_to_jiffies for conversions [media] v4l: vsp1: Fix VI6_WPF_SZCLIP_SIZE_MASK macro [media] v4l: vsp1: Fix VI6_DPR_ROUTE_FP_MASK macro [media] v4l: vsp1: Fix VI6_DPR_ROUTE_FXA_MASK macro [media] usbvision: fix locking error Input: zhenhua - ensure we have BITREVERSE Input: omap4-keypad - fix memory leak Input: serio - fix blocking of parport Input: psmouse - add small delay for IBM trackpoint pass-through mode HID: quirks: add QUIRK_NOGET for an other TPV touchscreen HID: apple: Add support for the 2015 Macbook Pro usb: musb: fix cppi channel teardown for isoch transfer usb: musb: cppi41: improve rx channel abort routine USB: symbolserial: Correct transferred data size usb: chipidea: debug: add runtime pm for register access s390/3270: redraw screen on unsolicited device end iommu/amd: Handle integer overflow in dma_ops_area_alloc client MUST ignore EncryptionKeyLength if CAP_EXTENDED_SECURITY is set USB: usbtmc: add device quirk for Rigol DS6104 sched: Fix cpu_active_mask/cpu_online_mask race PCI: Add VPD function 0 quirk for Intel Ethernet devices PCI: Add dev_flags bit to access VPD through function 0 PCI: Add flag for devices that don't reset on D3hot->D0 transition KEYS: Fix crash when attempt to garbage collect an uninstantiated keyring KEYS: Fix race between key destruction and finding a keyring by name ext4: fix loss of delalloc extent info in ext4_zero_range() ext4: allocate entire range in zero range vhost/scsi: potential memory corruption serial: 8250_pci: Add support for 12 port Exar boards serial: 8250_pci: Add support for 16 port Exar boards md/raid5: fix locking in handle_stripe_clean_event() IB/cm: Fix rb-tree duplicate free and use-after-free mvsas: Fix NULL pointer dereference in mvs_slot_task_free Revert "md: allow a partially recovered device to be hot-added to an array." md/raid10: submit_bio_wait() returns 0 on success md/raid1: submit_bio_wait() returns 0 on success crypto: api - Only abort operations on fatal signal module: Fix locking in symbol_put_addr() xen-blkfront: check for null drvdata in blkback_changed (XenbusStateClosing) xhci: Add spurious wakeup quirk for LynxPoint-LP controllers xhci: handle no ping response error properly dm btree: fix leak of bufio-backed block in btree_split_beneath error path dm btree remove: fix a bug when rebalancing nodes after removal Revert "ARM64: unwind: Fix PC calculation" rbd: require stable pages if message data CRCs are enabled iio: mxs-lradc: Fix temperature offset drm/radeon: don't try to recreate sysfs entries on resume ... Conflicts: Makefile android/configs/android-recommended.cfg arch/Kconfig arch/arm/mm/mmap.c arch/arm64/Kconfig arch/arm64/include/asm/kasan.h arch/arm64/include/asm/pgalloc.h arch/arm64/kernel/setup.c arch/arm64/lib/memcpy.S arch/arm64/lib/memmove.S arch/arm64/lib/memset.S arch/arm64/mm/kasan_init.c arch/arm64/mm/mmap.c arch/mips/mm/mmap.c arch/powerpc/mm/mmap.c arch/x86/mm/kasan_init_64.c arch/x86/mm/mmap.c drivers/bluetooth/ath3k.c drivers/bluetooth/btusb.c drivers/firmware/efi/libstub/Makefile drivers/hid/hid-logitech-hidpp.c drivers/hid/hid-magicmouse.c drivers/hid/hid-ntrig.c drivers/hid/hid-rmi.c drivers/hid/hid-sony.c drivers/mmc/card/Kconfig drivers/mmc/card/block.c drivers/mmc/card/queue.c drivers/mmc/card/queue.h drivers/mmc/core/core.c drivers/mmc/core/core.h drivers/net/wireless/Kconfig drivers/of/Kconfig drivers/of/Makefile drivers/scsi/sd.c drivers/staging/android/ion/ion_system_heap.c drivers/usb/dwc3/gadget.c drivers/usb/gadget/Kconfig drivers/usb/gadget/function/f_fs.c drivers/usb/gadget/function/f_mtp.c drivers/usb/gadget/function/u_ether.c drivers/usb/serial/option.c drivers/usb/serial/qcserial.c include/linux/compiler-gcc.h include/linux/kasan.h include/linux/vmalloc.h kernel/module.c kernel/sysctl.c lib/Kconfig.kasan lib/radix-tree.c lib/test_kasan.c mm/kasan/Makefile mm/kasan/kasan.c mm/kasan/kasan.h mm/kasan/kasan_init.c mm/kasan/report.c mm/mempool.c mm/page_alloc.c mm/slub.c scripts/Makefile.lib scripts/module-common.lds sound/core/compress_offload.c USB and MMC related changes were ignored completely as suggested by respective teams. Changes related to DM-VERITY were skipped in this upmerge as they will be pulled in by corresponding team on need basis. Change-Id: I3e94c43cf595440299c91562e1226b1e4c77abeb Signed-off-by: Imran Khan <kimran@codeaurora.org>
| | * \ Merge branch 'linux-linaro-lsk-v3.18' into linux-linaro-lsk-v3.18-androidAlex Shi2016-04-273-0/+44
| | |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: arch/arm64/kernel/head.S arch/arm64/mm/Makefile
| | | * \ Merge branch 'v3.18/topic/KASAN' into linux-linaro-lsk-v3.18Alex Shi2016-04-273-0/+44
| | | |\ \
| | | | * | arm64: add KASAN supportAndrey Ryabinin2016-04-111-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds arch specific code for kernel address sanitizer (see Documentation/kasan.txt). 1/8 of kernel addresses reserved for shadow memory. There was no big enough hole for this, so virtual addresses for shadow were stolen from vmalloc area. At early boot stage the whole shadow region populated with just one physical page (kasan_zero_page). Later, this page reused as readonly zero shadow for some memory that KASan currently don't track (vmalloc). After mapping the physical memory, pages for shadow memory are allocated and mapped. Functions like memset/memmove/memcpy do a lot of memory accesses. If bad pointer passed to one of these function it is important to catch this. Compiler's instrumentation cannot do this since these functions are written in assembly. KASan replaces memory functions with manually instrumented variants. Original functions declared as weak symbols so strong definitions in mm/kasan/kasan.c could replace them. Original functions have aliases with '__' prefix in name, so we could call non-instrumented variant if needed. Some files built without kasan instrumentation (e.g. mm/slub.c). Original mem* function replaced (via #define) with prefixed variants to disable memory access checks for such files. Signed-off-by: Andrey Ryabinin <ryabinin.a.a@gmail.com> Tested-by: Linus Walleij <linus.walleij@linaro.org> Reviewed-by: Catalin Marinas <catalin.marinas@arm.com> Signed-off-by: Catalin Marinas <catalin.marinas@arm.com> (cherry picked from commit 39d114ddc68223022c12ae3a1573912bc4b585e5) Signed-off-by: Alex Shi <alex.shi@linaro.org> BTW, commit 9f25e6ad5 arm64: expose number of page table levels on Kconfig level change CONFIG_ARM64_PGTABLE_LEVELS to CONFIG_PGTABLE_LEVELS, which would introduce much conflicts, since only arch/arm64/mm/kasan_init.c use two of instance of this config, just change them back.
| | | | * | kasan: Makefile: shut up warnings if CONFIG_COMPILE_TEST=yAndrey Ryabinin2016-04-111-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It might be annoying to constantly see this: scripts/Makefile.kasan:16: Cannot use CONFIG_KASAN: -fsanitize=kernel-address is not supported by compiler while performing allmodconfig/allyesconfig build tests. Disable this warning if CONFIG_COMPILE_TEST=y. Signed-off-by: Andrey Ryabinin <a.ryabinin@samsung.com> Cc: Michal Marek <mmarek@suse.cz> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> (cherry picked from commit 6e54abac1b8e0b7febffdbad37b605daef1cfcff) Signed-off-by: Alex Shi <alex.shi@linaro.org>
| | | | * | kasan: enable instrumentation of global variablesAndrey Ryabinin2016-04-111-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This feature let us to detect accesses out of bounds of global variables. This will work as for globals in kernel image, so for globals in modules. Currently this won't work for symbols in user-specified sections (e.g. __init, __read_mostly, ...) The idea of this is simple. Compiler increases each global variable by redzone size and add constructors invoking __asan_register_globals() function. Information about global variable (address, size, size with redzone ...) passed to __asan_register_globals() so we could poison variable's redzone. This patch also forces module_alloc() to return 8*PAGE_SIZE aligned address making shadow memory handling ( kasan_module_alloc()/kasan_module_free() ) more simple. Such alignment guarantees that each shadow page backing modules address space correspond to only one module_alloc() allocation. Signed-off-by: Andrey Ryabinin <a.ryabinin@samsung.com> Cc: Dmitry Vyukov <dvyukov@google.com> Cc: Konstantin Serebryany <kcc@google.com> Cc: Dmitry Chernenkov <dmitryc@google.com> Signed-off-by: Andrey Konovalov <adech.fo@gmail.com> Cc: Yuri Gribov <tetra2005@gmail.com> Cc: Konstantin Khlebnikov <koct9i@gmail.com> Cc: Sasha Levin <sasha.levin@oracle.com> Cc: Christoph Lameter <cl@linux.com> Cc: Joonsoo Kim <iamjoonsoo.kim@lge.com> Cc: Dave Hansen <dave.hansen@intel.com> Cc: Andi Kleen <andi@firstfloor.org> Cc: Ingo Molnar <mingo@elte.hu> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: "H. Peter Anvin" <hpa@zytor.com> Cc: Christoph Lameter <cl@linux.com> Cc: Pekka Enberg <penberg@kernel.org> Cc: David Rientjes <rientjes@google.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> (cherry picked from commit bebf56a1b176c2e1c9efe44e7e6915532cc682cf) Signed-off-by: Alex Shi <alex.shi@linaro.org>
| | | | * | kernel: add support for .init_array.* constructorsAndrey Ryabinin2016-04-111-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | KASan uses constructors for initializing redzones for global variables. Globals instrumentation in GCC 4.9.2 produces constructors with priority (.init_array.00099) Currently kernel ignores such constructors. Only constructors with default priority supported (.init_array) This patch adds support for constructors with priorities. For kernel image we put pointers to constructors between __ctors_start/__ctors_end and do_ctors() will call them on start up. For modules we merge .init_array.* sections into resulting .init_array. Module code properly handles constructors in .init_array section. Signed-off-by: Andrey Ryabinin <a.ryabinin@samsung.com> Cc: Dmitry Vyukov <dvyukov@google.com> Cc: Konstantin Serebryany <kcc@google.com> Cc: Dmitry Chernenkov <dmitryc@google.com> Signed-off-by: Andrey Konovalov <adech.fo@gmail.com> Cc: Yuri Gribov <tetra2005@gmail.com> Cc: Konstantin Khlebnikov <koct9i@gmail.com> Cc: Sasha Levin <sasha.levin@oracle.com> Cc: Christoph Lameter <cl@linux.com> Cc: Joonsoo Kim <iamjoonsoo.kim@lge.com> Cc: Dave Hansen <dave.hansen@intel.com> Cc: Andi Kleen <andi@firstfloor.org> Cc: Ingo Molnar <mingo@elte.hu> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: "H. Peter Anvin" <hpa@zytor.com> Cc: Christoph Lameter <cl@linux.com> Cc: Pekka Enberg <penberg@kernel.org> Cc: David Rientjes <rientjes@google.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> (cherry picked from commit 9ddf82521c86ae07af79dbe5a93c52890f2bab23) Signed-off-by: Alex Shi <alex.shi@linaro.org>
| | | | * | kasan: enable stack instrumentationAndrey Ryabinin2016-04-111-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Stack instrumentation allows to detect out of bounds memory accesses for variables allocated on stack. Compiler adds redzones around every variable on stack and poisons redzones in function's prologue. Such approach significantly increases stack usage, so all in-kernel stacks size were doubled. Signed-off-by: Andrey Ryabinin <a.ryabinin@samsung.com> Cc: Dmitry Vyukov <dvyukov@google.com> Cc: Konstantin Serebryany <kcc@google.com> Cc: Dmitry Chernenkov <dmitryc@google.com> Signed-off-by: Andrey Konovalov <adech.fo@gmail.com> Cc: Yuri Gribov <tetra2005@gmail.com> Cc: Konstantin Khlebnikov <koct9i@gmail.com> Cc: Sasha Levin <sasha.levin@oracle.com> Cc: Christoph Lameter <cl@linux.com> Cc: Joonsoo Kim <iamjoonsoo.kim@lge.com> Cc: Dave Hansen <dave.hansen@intel.com> Cc: Andi Kleen <andi@firstfloor.org> Cc: Ingo Molnar <mingo@elte.hu> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: "H. Peter Anvin" <hpa@zytor.com> Cc: Christoph Lameter <cl@linux.com> Cc: Pekka Enberg <penberg@kernel.org> Cc: David Rientjes <rientjes@google.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> (cherry picked from commit c420f167db8c799d69fe43a801c58a7f02e9d57c) Signed-off-by: Alex Shi <alex.shi@linaro.org> Conflicts: skip numa_balancing in include/linux/init_task.h
| | | | * | kasan: add kernel address sanitizer infrastructureAndrey Ryabinin2016-04-112-0/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Kernel Address sanitizer (KASan) is a dynamic memory error detector. It provides fast and comprehensive solution for finding use-after-free and out-of-bounds bugs. KASAN uses compile-time instrumentation for checking every memory access, therefore GCC > v4.9.2 required. v4.9.2 almost works, but has issues with putting symbol aliases into the wrong section, which breaks kasan instrumentation of globals. This patch only adds infrastructure for kernel address sanitizer. It's not available for use yet. The idea and some code was borrowed from [1]. Basic idea: The main idea of KASAN is to use shadow memory to record whether each byte of memory is safe to access or not, and use compiler's instrumentation to check the shadow memory on each memory access. Address sanitizer uses 1/8 of the memory addressable in kernel for shadow memory and uses direct mapping with a scale and offset to translate a memory address to its corresponding shadow address. Here is function to translate address to corresponding shadow address: unsigned long kasan_mem_to_shadow(unsigned long addr) { return (addr >> KASAN_SHADOW_SCALE_SHIFT) + KASAN_SHADOW_OFFSET; } where KASAN_SHADOW_SCALE_SHIFT = 3. So for every 8 bytes there is one corresponding byte of shadow memory. The following encoding used for each shadow byte: 0 means that all 8 bytes of the corresponding memory region are valid for access; k (1 <= k <= 7) means that the first k bytes are valid for access, and other (8 - k) bytes are not; Any negative value indicates that the entire 8-bytes are inaccessible. Different negative values used to distinguish between different kinds of inaccessible memory (redzones, freed memory) (see mm/kasan/kasan.h). To be able to detect accesses to bad memory we need a special compiler. Such compiler inserts a specific function calls (__asan_load*(addr), __asan_store*(addr)) before each memory access of size 1, 2, 4, 8 or 16. These functions check whether memory region is valid to access or not by checking corresponding shadow memory. If access is not valid an error printed. Historical background of the address sanitizer from Dmitry Vyukov: "We've developed the set of tools, AddressSanitizer (Asan), ThreadSanitizer and MemorySanitizer, for user space. We actively use them for testing inside of Google (continuous testing, fuzzing, running prod services). To date the tools have found more than 10'000 scary bugs in Chromium, Google internal codebase and various open-source projects (Firefox, OpenSSL, gcc, clang, ffmpeg, MySQL and lots of others): [2] [3] [4]. The tools are part of both gcc and clang compilers. We have not yet done massive testing under the Kernel AddressSanitizer (it's kind of chicken and egg problem, you need it to be upstream to start applying it extensively). To date it has found about 50 bugs. Bugs that we've found in upstream kernel are listed in [5]. We've also found ~20 bugs in out internal version of the kernel. Also people from Samsung and Oracle have found some. [...] As others noted, the main feature of AddressSanitizer is its performance due to inline compiler instrumentation and simple linear shadow memory. User-space Asan has ~2x slowdown on computational programs and ~2x memory consumption increase. Taking into account that kernel usually consumes only small fraction of CPU and memory when running real user-space programs, I would expect that kernel Asan will have ~10-30% slowdown and similar memory consumption increase (when we finish all tuning). I agree that Asan can well replace kmemcheck. We have plans to start working on Kernel MemorySanitizer that finds uses of unitialized memory. Asan+Msan will provide feature-parity with kmemcheck. As others noted, Asan will unlikely replace debug slab and pagealloc that can be enabled at runtime. Asan uses compiler instrumentation, so even if it is disabled, it still incurs visible overheads. Asan technology is easily portable to other architectures. Compiler instrumentation is fully portable. Runtime has some arch-dependent parts like shadow mapping and atomic operation interception. They are relatively easy to port." Comparison with other debugging features: ======================================== KMEMCHECK: - KASan can do almost everything that kmemcheck can. KASan uses compile-time instrumentation, which makes it significantly faster than kmemcheck. The only advantage of kmemcheck over KASan is detection of uninitialized memory reads. Some brief performance testing showed that kasan could be x500-x600 times faster than kmemcheck: $ netperf -l 30 MIGRATED TCP STREAM TEST from 0.0.0.0 (0.0.0.0) port 0 AF_INET to localhost (127.0.0.1) port 0 AF_INET Recv Send Send Socket Socket Message Elapsed Size Size Size Time Throughput bytes bytes bytes secs. 10^6bits/sec no debug: 87380 16384 16384 30.00 41624.72 kasan inline: 87380 16384 16384 30.00 12870.54 kasan outline: 87380 16384 16384 30.00 10586.39 kmemcheck: 87380 16384 16384 30.03 20.23 - Also kmemcheck couldn't work on several CPUs. It always sets number of CPUs to 1. KASan doesn't have such limitation. DEBUG_PAGEALLOC: - KASan is slower than DEBUG_PAGEALLOC, but KASan works on sub-page granularity level, so it able to find more bugs. SLUB_DEBUG (poisoning, redzones): - SLUB_DEBUG has lower overhead than KASan. - SLUB_DEBUG in most cases are not able to detect bad reads, KASan able to detect both reads and writes. - In some cases (e.g. redzone overwritten) SLUB_DEBUG detect bugs only on allocation/freeing of object. KASan catch bugs right before it will happen, so we always know exact place of first bad read/write. [1] https://code.google.com/p/address-sanitizer/wiki/AddressSanitizerForKernel [2] https://code.google.com/p/address-sanitizer/wiki/FoundBugs [3] https://code.google.com/p/thread-sanitizer/wiki/FoundBugs [4] https://code.google.com/p/memory-sanitizer/wiki/FoundBugs [5] https://code.google.com/p/address-sanitizer/wiki/AddressSanitizerForKernel#Trophies Based on work by Andrey Konovalov. Signed-off-by: Andrey Ryabinin <a.ryabinin@samsung.com> Acked-by: Michal Marek <mmarek@suse.cz> Signed-off-by: Andrey Konovalov <adech.fo@gmail.com> Cc: Dmitry Vyukov <dvyukov@google.com> Cc: Konstantin Serebryany <kcc@google.com> Cc: Dmitry Chernenkov <dmitryc@google.com> Cc: Yuri Gribov <tetra2005@gmail.com> Cc: Konstantin Khlebnikov <koct9i@gmail.com> Cc: Sasha Levin <sasha.levin@oracle.com> Cc: Christoph Lameter <cl@linux.com> Cc: Joonsoo Kim <iamjoonsoo.kim@lge.com> Cc: Dave Hansen <dave.hansen@intel.com> Cc: Andi Kleen <andi@firstfloor.org> Cc: Ingo Molnar <mingo@elte.hu> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: "H. Peter Anvin" <hpa@zytor.com> Cc: Christoph Lameter <cl@linux.com> Cc: Pekka Enberg <penberg@kernel.org> Cc: David Rientjes <rientjes@google.com> Cc: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> (cherry picked from commit 0b24becc810dc3be6e3f94103a866f214c282394) Signed-off-by: Alex Shi <alex.shi@linaro.org>
| | * | | | Merge branch 'linux-linaro-lsk-v3.18' into linux-linaro-lsk-v3.18-androidAlex Shi2016-04-211-1/+1
| | |\| | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: keep -fno-pic flag in arch/arm64/Makefile
| | | * | | Merge tag 'v3.18.31' into linux-linaro-lsk-v3.18Alex Shi2016-04-211-1/+1
| | | |\ \ \ | | | | | |/ | | | | |/| | | | | | | This is the 3.18.31 stable release
| | | | * | scripts/coccinelle: modernize &Julia Lawall2016-04-181-1/+1
| | | | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [ Upstream commit 1b669e713f277a4d4b3cec84e13d16544ac8286d ] & is no longer allowed in column 0, since Coccinelle 1.0.4. Signed-off-by: Julia Lawall <Julia.Lawall@lip6.fr> Tested-by: Nishanth Menon <nm@ti.com> Cc: stable@vger.kernel.org Signed-off-by: Michal Marek <mmarek@suse.com> Signed-off-by: Sasha Levin <sasha.levin@oracle.com>