1. 06 Apr, 2019 2 commits
    • Guenter Roeck's avatar
      xsysace: Fix error handling in ace_setup · 47b16820
      Guenter Roeck authored
      If xace hardware reports a bad version number, the error handling code
      in ace_setup() calls put_disk(), followed by queue cleanup. However, since
      the disk data structure has the queue pointer set, put_disk() also
      cleans and releases the queue. This results in blk_cleanup_queue()
      accessing an already released data structure, which in turn may result
      in a crash such as the following.
      
      [   10.681671] BUG: Kernel NULL pointer dereference at 0x00000040
      [   10.681826] Faulting instruction address: 0xc0431480
      [   10.682072] Oops: Kernel access of bad area, sig: 11 [#1]
      [   10.682251] BE PAGE_SIZE=4K PREEMPT Xilinx Virtex440
      [   10.682387] Modules linked in:
      [   10.682528] CPU: 0 PID: 1 Comm: swapper Tainted: G        W         5.0.0-rc6-next-20190218+ #2
      [   10.682733] NIP:  c0431480 LR: c043147c CTR: c0422ad8
      [   10.682863] REGS: cf82fbe0 TRAP: 0300   Tainted: G        W          (5.0.0-rc6-next-20190218+)
      [   10.683065] MSR:  00029000 <CE,EE,ME>  CR: 22000222  XER: 00000000
      [   10.683236] DEAR: 00000040 ESR: 00000000
      [   10.683236] GPR00: c043147c cf82fc90 cf82ccc0 00000000 00000000 00000000 00000002 00000000
      [   10.683236] GPR08: 00000000 00000000 c04310bc 00000000 22000222 00000000 c0002c54 00000000
      [   10.683236] GPR16: 00000000 00000001 c09aa39c c09021b0 c09021dc 00000007 c0a68c08 00000000
      [   10.683236] GPR24: 00000001 ced6d400 ced6dcf0 c0815d9c 00000000 00000000 00000000 cedf0800
      [   10.684331] NIP [c0431480] blk_mq_run_hw_queue+0x28/0x114
      [   10.684473] LR [c043147c] blk_mq_run_hw_queue+0x24/0x114
      [   10.684602] Call Trace:
      [   10.684671] [cf82fc90] [c043147c] blk_mq_run_hw_queue+0x24/0x114 (unreliable)
      [   10.684854] [cf82fcc0] [c04315bc] blk_mq_run_hw_queues+0x50/0x7c
      [   10.685002] [cf82fce0] [c0422b24] blk_set_queue_dying+0x30/0x68
      [   10.685154] [cf82fcf0] [c0423ec0] blk_cleanup_queue+0x34/0x14c
      [   10.685306] [cf82fd10] [c054d73c] ace_probe+0x3dc/0x508
      [   10.685445] [cf82fd50] [c052d740] platform_drv_probe+0x4c/0xb8
      [   10.685592] [cf82fd70] [c052abb0] really_probe+0x20c/0x32c
      [   10.685728] [cf82fda0] [c052ae58] driver_probe_device+0x68/0x464
      [   10.685877] [cf82fdc0] [c052b500] device_driver_attach+0xb4/0xe4
      [   10.686024] [cf82fde0] [c052b5dc] __driver_attach+0xac/0xfc
      [   10.686161] [cf82fe00] [c0528428] bus_for_each_dev+0x80/0xc0
      [   10.686314] [cf82fe30] [c0529b3c] bus_add_driver+0x144/0x234
      [   10.686457] [cf82fe50] [c052c46c] driver_register+0x88/0x15c
      [   10.686610] [cf82fe60] [c09de288] ace_init+0x4c/0xac
      [   10.686742] [cf82fe80] [c0002730] do_one_initcall+0xac/0x330
      [   10.686888] [cf82fee0] [c09aafd0] kernel_init_freeable+0x34c/0x478
      [   10.687043] [cf82ff30] [c0002c6c] kernel_init+0x18/0x114
      [   10.687188] [cf82ff40] [c000f2f0] ret_from_kernel_thread+0x14/0x1c
      [   10.687349] Instruction dump:
      [   10.687435] 3863ffd4 4bfffd70 9421ffd0 7c0802a6 93c10028 7c9e2378 93e1002c 38810008
      [   10.687637] 7c7f1b78 90010034 4bfffc25 813f008c <81290040> 75290100 4182002c 80810008
      [   10.688056] ---[ end trace 13c9ff51d41b9d40 ]---
      
      Fix the problem by setting the disk queue pointer to NULL before calling
      put_disk(). A more comprehensive fix might be to rearrange the code
      to check the hardware version before initializing data structures,
      but I don't know if this would have undesirable side effects, and
      it would increase the complexity of backporting the fix to older kernels.
      
      Fixes: 74489a91 ("Add support for Xilinx SystemACE CompactFlash interface")
      Acked-by: default avatarMichal Simek <michal.simek@xilinx.com>
      Signed-off-by: default avatarGuenter Roeck <linux@roeck-us.net>
      Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
      47b16820
    • John Pittman's avatar
      null_blk: prevent crash from bad home_node value · 7ff684a6
      John Pittman authored
      At module load, if the selected home_node value is greater than
      the available numa nodes, the system will crash in
      __alloc_pages_nodemask() due to a bad paging request.  Prevent this
      user error crash by detecting the bad value, logging an error, and
      setting g_home_node back to the default of NUMA_NO_NODE.
      Signed-off-by: default avatarJohn Pittman <jpittman@redhat.com>
      Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
      7ff684a6
  2. 05 Apr, 2019 2 commits
    • Bart Van Assche's avatar
      block: Revert v5.0 blk_mq_request_issue_directly() changes · fd9c40f6
      Bart Van Assche authored
      blk_mq_try_issue_directly() can return BLK_STS*_RESOURCE for requests that
      have been queued. If that happens when blk_mq_try_issue_directly() is called
      by the dm-mpath driver then dm-mpath will try to resubmit a request that is
      already queued and a kernel crash follows. Since it is nontrivial to fix
      blk_mq_request_issue_directly(), revert the blk_mq_request_issue_directly()
      changes that went into kernel v5.0.
      
      This patch reverts the following commits:
      * d6a51a97 ("blk-mq: replace and kill blk_mq_request_issue_directly") # v5.0.
      * 5b7a6f12 ("blk-mq: issue directly with bypass 'false' in blk_mq_sched_insert_requests") # v5.0.
      * 7f556a44 ("blk-mq: refactor the code of issue request directly") # v5.0.
      
      Cc: Christoph Hellwig <hch@infradead.org>
      Cc: Ming Lei <ming.lei@redhat.com>
      Cc: Jianchao Wang <jianchao.w.wang@oracle.com>
      Cc: Hannes Reinecke <hare@suse.com>
      Cc: Johannes Thumshirn <jthumshirn@suse.de>
      Cc: James Smart <james.smart@broadcom.com>
      Cc: Dongli Zhang <dongli.zhang@oracle.com>
      Cc: Laurence Oberman <loberman@redhat.com>
      Cc: <stable@vger.kernel.org>
      Reported-by: default avatarLaurence Oberman <loberman@redhat.com>
      Tested-by: default avatarLaurence Oberman <loberman@redhat.com>
      Fixes: 7f556a44 ("blk-mq: refactor the code of issue request directly") # v5.0.
      Signed-off-by: default avatarBart Van Assche <bvanassche@acm.org>
      Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
      fd9c40f6
    • YueHaibing's avatar
      paride/pcd: Fix potential NULL pointer dereference and mem leak · f0d17625
      YueHaibing authored
      Syzkaller report this:
      
      pcd: pcd version 1.07, major 46, nice 0
      pcd0: Autoprobe failed
      pcd: No CD-ROM drive found
      kasan: CONFIG_KASAN_INLINE enabled
      kasan: GPF could be caused by NULL-ptr deref or user memory access
      general protection fault: 0000 [#1] SMP KASAN PTI
      CPU: 1 PID: 4525 Comm: syz-executor.0 Not tainted 5.1.0-rc3+ #8
      Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.10.2-1ubuntu1 04/01/2014
      RIP: 0010:pcd_init+0x95c/0x1000 [pcd]
      Code: c4 ab f7 48 89 d8 48 c1 e8 03 80 3c 28 00 74 08 48 89 df e8 56 a3 da f7 4c 8b 23 49 8d bc 24 80 05 00 00 48 89 f8 48 c1 e8 03 <80> 3c 28 00 74 05 e8 39 a3 da f7 49 8b bc 24 80 05 00 00 e8 cc b2
      RSP: 0018:ffff8881e84df880 EFLAGS: 00010202
      RAX: 00000000000000b0 RBX: ffffffffc155a088 RCX: ffffffffc1508935
      RDX: 0000000000040000 RSI: ffffc900014f0000 RDI: 0000000000000580
      RBP: dffffc0000000000 R08: ffffed103ee658b8 R09: ffffed103ee658b8
      R10: 0000000000000001 R11: ffffed103ee658b7 R12: 0000000000000000
      R13: ffffffffc155a778 R14: ffffffffc155a4a8 R15: 0000000000000003
      FS:  00007fe71bee3700(0000) GS:ffff8881f7300000(0000) knlGS:0000000000000000
      CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
      CR2: 000055a7334441a8 CR3: 00000001e9674003 CR4: 00000000007606e0
      DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
      DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
      PKRU: 55555554
      Call Trace:
       ? 0xffffffffc1508000
       ? 0xffffffffc1508000
       do_one_initcall+0xbc/0x47d init/main.c:901
       do_init_module+0x1b5/0x547 kernel/module.c:3456
       load_module+0x6405/0x8c10 kernel/module.c:3804
       __do_sys_finit_module+0x162/0x190 kernel/module.c:3898
       do_syscall_64+0x9f/0x450 arch/x86/entry/common.c:290
       entry_SYSCALL_64_after_hwframe+0x49/0xbe
      RIP: 0033:0x462e99
      Code: f7 d8 64 89 02 b8 ff ff ff ff c3 66 0f 1f 44 00 00 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 bc ff ff ff f7 d8 64 89 01 48
      RSP: 002b:00007fe71bee2c58 EFLAGS: 00000246 ORIG_RAX: 0000000000000139
      RAX: ffffffffffffffda RBX: 000000000073bf00 RCX: 0000000000462e99
      RDX: 0000000000000000 RSI: 0000000020000180 RDI: 0000000000000003
      RBP: 00007fe71bee2c70 R08: 0000000000000000 R09: 0000000000000000
      R10: 0000000000000000 R11: 0000000000000246 R12: 00007fe71bee36bc
      R13: 00000000004bcefa R14: 00000000006f6fb0 R15: 0000000000000004
      Modules linked in: pcd(+) paride solos_pci atm ts_fsm rtc_mt6397 mac80211 nhc_mobility nhc_udp nhc_ipv6 nhc_hop nhc_dest nhc_fragment nhc_routing 6lowpan rtc_cros_ec memconsole intel_xhci_usb_role_switch roles rtc_wm8350 usbcore industrialio_triggered_buffer kfifo_buf industrialio asc7621 dm_era dm_persistent_data dm_bufio dm_mod tpm gnss_ubx gnss_serial serdev gnss max2165 cpufreq_dt hid_penmount hid menf21bmc_wdt rc_core n_tracesink ide_gd_mod cdns_csi2tx v4l2_fwnode videodev media pinctrl_lewisburg pinctrl_intel iptable_security iptable_raw iptable_mangle iptable_nat nf_nat nf_conntrack nf_defrag_ipv6 nf_defrag_ipv4 iptable_filter bpfilter ip6_vti ip_vti ip_gre ipip sit tunnel4 ip_tunnel hsr veth netdevsim vxcan batman_adv cfg80211 rfkill chnl_net caif nlmon dummy team bonding vcan bridge stp llc ip6_gre gre ip6_tunnel tunnel6 tun joydev mousedev ppdev kvm_intel kvm irqbypass crct10dif_pclmul crc32_pclmul crc32c_intel ghash_clmulni_intel aesni_intel aes_x86_64 crypto_simd
       ide_pci_generic piix input_leds cryptd glue_helper psmouse ide_core intel_agp serio_raw intel_gtt ata_generic i2c_piix4 agpgart pata_acpi parport_pc parport floppy rtc_cmos sch_fq_codel ip_tables x_tables sha1_ssse3 sha1_generic ipv6 [last unloaded: bmc150_magn]
      Dumping ftrace buffer:
         (ftrace buffer empty)
      ---[ end trace d873691c3cd69f56 ]---
      
      If alloc_disk fails in pcd_init_units, cd->disk will be
      NULL, however in pcd_detect and pcd_exit, it's not check
      this before free.It may result a NULL pointer dereference.
      
      Also when register_blkdev failed, blk_cleanup_queue() and
      blk_mq_free_tag_set() should be called to free resources.
      Reported-by: default avatarHulk Robot <hulkci@huawei.com>
      Fixes: 81b74ac6 ("paride/pcd: cleanup queues when detection fails")
      Signed-off-by: default avatarYueHaibing <yuehaibing@huawei.com>
      Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
      f0d17625
  3. 04 Apr, 2019 1 commit
  4. 03 Apr, 2019 2 commits
    • YueHaibing's avatar
      paride/pf: Fix potential NULL pointer dereference · 58ccd2d3
      YueHaibing authored
      Syzkaller report this:
      
      pf: pf version 1.04, major 47, cluster 64, nice 0
      pf: No ATAPI disk detected
      kasan: CONFIG_KASAN_INLINE enabled
      kasan: GPF could be caused by NULL-ptr deref or user memory access
      general protection fault: 0000 [#1] SMP KASAN PTI
      CPU: 0 PID: 9887 Comm: syz-executor.0 Tainted: G         C        5.1.0-rc3+ #8
      Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.10.2-1ubuntu1 04/01/2014
      RIP: 0010:pf_init+0x7af/0x1000 [pf]
      Code: 46 77 d2 48 89 d8 48 c1 e8 03 80 3c 28 00 74 08 48 89 df e8 03 25 a6 d2 4c 8b 23 49 8d bc 24 80 05 00 00 48 89 f8 48 c1 e8 03 <80> 3c 28 00 74 05 e8 e6 24 a6 d2 49 8b bc 24 80 05 00 00 e8 79 34
      RSP: 0018:ffff8881abcbf998 EFLAGS: 00010202
      RAX: 00000000000000b0 RBX: ffffffffc1e4a8a8 RCX: ffffffffaec50788
      RDX: 0000000000039b10 RSI: ffffc9000153c000 RDI: 0000000000000580
      RBP: dffffc0000000000 R08: ffffed103ee44e59 R09: ffffed103ee44e59
      R10: 0000000000000001 R11: ffffed103ee44e58 R12: 0000000000000000
      R13: ffffffffc1e4b028 R14: 0000000000000000 R15: 0000000000000020
      FS:  00007f1b78a91700(0000) GS:ffff8881f7200000(0000) knlGS:0000000000000000
      CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
      CR2: 00007f6d72b207f8 CR3: 00000001d5790004 CR4: 00000000007606f0
      DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
      DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
      PKRU: 55555554
      Call Trace:
       ? 0xffffffffc1e50000
       do_one_initcall+0xbc/0x47d init/main.c:901
       do_init_module+0x1b5/0x547 kernel/module.c:3456
       load_module+0x6405/0x8c10 kernel/module.c:3804
       __do_sys_finit_module+0x162/0x190 kernel/module.c:3898
       do_syscall_64+0x9f/0x450 arch/x86/entry/common.c:290
       entry_SYSCALL_64_after_hwframe+0x49/0xbe
      RIP: 0033:0x462e99
      Code: f7 d8 64 89 02 b8 ff ff ff ff c3 66 0f 1f 44 00 00 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 bc ff ff ff f7 d8 64 89 01 48
      RSP: 002b:00007f1b78a90c58 EFLAGS: 00000246 ORIG_RAX: 0000000000000139
      RAX: ffffffffffffffda RBX: 000000000073bf00 RCX: 0000000000462e99
      RDX: 0000000000000000 RSI: 0000000020000180 RDI: 0000000000000003
      RBP: 00007f1b78a90c70 R08: 0000000000000000 R09: 0000000000000000
      R10: 0000000000000000 R11: 0000000000000246 R12: 00007f1b78a916bc
      R13: 00000000004bcefa R14: 00000000006f6fb0 R15: 0000000000000004
      Modules linked in: pf(+) paride gpio_tps65218 tps65218 i2c_cht_wc ati_remote dc395x act_meta_skbtcindex act_ife ife ecdh_generic rc_xbox_dvd sky81452_regulator v4l2_fwnode leds_blinkm snd_usb_hiface comedi(C) aes_ti slhc cfi_cmdset_0020 mtd cfi_util sx8654 mdio_gpio of_mdio fixed_phy mdio_bitbang libphy alcor_pci matrix_keymap hid_uclogic usbhid scsi_transport_fc videobuf2_v4l2 videobuf2_dma_sg snd_soc_pcm179x_spi snd_soc_pcm179x_codec i2c_demux_pinctrl mdev snd_indigodj isl6405 mii enc28j60 cmac adt7316_i2c(C) adt7316(C) fmc_trivial fmc nf_reject_ipv4 authenc rc_dtt200u rtc_ds1672 dvb_usb_dibusb_mc dvb_usb_dibusb_mc_common dib3000mc dibx000_common dvb_usb_dibusb_common dvb_usb dvb_core videobuf2_common videobuf2_vmalloc videobuf2_memops regulator_haptic adf7242 mac802154 ieee802154 s5h1409 da9034_ts snd_intel8x0m wmi cx24120 usbcore sdhci_cadence sdhci_pltfm sdhci mmc_core joydev i2c_algo_bit scsi_transport_iscsi iscsi_boot_sysfs ves1820 lockd grace nfs_acl auth_rpcgss sunrp
       c
       ip_vs snd_soc_adau7002 snd_cs4281 snd_rawmidi gameport snd_opl3_lib snd_seq_device snd_hwdep snd_ac97_codec ad7418 hid_primax hid snd_soc_cs4265 snd_soc_core snd_pcm_dmaengine snd_pcm snd_timer ac97_bus snd_compress snd soundcore ti_adc108s102 eeprom_93cx6 i2c_algo_pca mlxreg_hotplug st_pressure st_sensors industrialio_triggered_buffer kfifo_buf industrialio v4l2_common videodev media snd_soc_adau_utils rc_pinnacle_grey rc_core pps_gpio leds_lm3692x nandcore ledtrig_pattern iptable_security iptable_raw iptable_mangle iptable_nat nf_nat nf_conntrack nf_defrag_ipv6 nf_defrag_ipv4 iptable_filter bpfilter ip6_vti ip_vti ip_gre ipip sit tunnel4 ip_tunnel hsr veth netdevsim vxcan batman_adv cfg80211 rfkill chnl_net caif nlmon dummy team bonding vcan bridge stp llc ip6_gre gre ip6_tunnel tunnel6 tun mousedev ppdev tpm kvm_intel kvm irqbypass crct10dif_pclmul crc32_pclmul crc32c_intel ghash_clmulni_intel aesni_intel ide_pci_generic aes_x86_64 piix crypto_simd input_leds psmouse cryp
       td
       glue_helper ide_core intel_agp serio_raw intel_gtt agpgart ata_generic i2c_piix4 pata_acpi parport_pc parport rtc_cmos floppy sch_fq_codel ip_tables x_tables sha1_ssse3 sha1_generic ipv6 [last unloaded: paride]
      Dumping ftrace buffer:
        (ftrace buffer empty)
      ---[ end trace 7a818cf5f210d79e ]---
      
      If alloc_disk fails in pf_init_units, pf->disk will be
      NULL, however in pf_detect and pf_exit, it's not check
      this before free.It may result a NULL pointer dereference.
      
      Also when register_blkdev failed, blk_cleanup_queue() and
      blk_mq_free_tag_set() should be called to free resources.
      Reported-by: default avatarHulk Robot <hulkci@huawei.com>
      Fixes: 6ce59025 ("paride/pf: cleanup queues when detection fails")
      Signed-off-by: default avatarYueHaibing <yuehaibing@huawei.com>
      Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
      58ccd2d3
    • Jens Axboe's avatar
      io_uring: fix double free in case of fileset regitration failure · 25adf50f
      Jens Axboe authored
      Will Deacon reported the following KASAN complaint:
      
      [  149.890370] ==================================================================
      [  149.891266] BUG: KASAN: double-free or invalid-free in io_sqe_files_unregister+0xa8/0x140
      [  149.892218]
      [  149.892411] CPU: 113 PID: 3974 Comm: io_uring_regist Tainted: G    B             5.1.0-rc3-00012-g40b114779944 #3
      [  149.893623] Hardware name: linux,dummy-virt (DT)
      [  149.894169] Call trace:
      [  149.894539]  dump_backtrace+0x0/0x228
      [  149.895172]  show_stack+0x14/0x20
      [  149.895747]  dump_stack+0xe8/0x124
      [  149.896335]  print_address_description+0x60/0x258
      [  149.897148]  kasan_report_invalid_free+0x78/0xb8
      [  149.897936]  __kasan_slab_free+0x1fc/0x228
      [  149.898641]  kasan_slab_free+0x10/0x18
      [  149.899283]  kfree+0x70/0x1f8
      [  149.899798]  io_sqe_files_unregister+0xa8/0x140
      [  149.900574]  io_ring_ctx_wait_and_kill+0x190/0x3c0
      [  149.901402]  io_uring_release+0x2c/0x48
      [  149.902068]  __fput+0x18c/0x510
      [  149.902612]  ____fput+0xc/0x18
      [  149.903146]  task_work_run+0xf0/0x148
      [  149.903778]  do_notify_resume+0x554/0x748
      [  149.904467]  work_pending+0x8/0x10
      [  149.905060]
      [  149.905331] Allocated by task 3974:
      [  149.905934]  __kasan_kmalloc.isra.0.part.1+0x48/0xf8
      [  149.906786]  __kasan_kmalloc.isra.0+0xb8/0xd8
      [  149.907531]  kasan_kmalloc+0xc/0x18
      [  149.908134]  __kmalloc+0x168/0x248
      [  149.908724]  __arm64_sys_io_uring_register+0x2b8/0x15a8
      [  149.909622]  el0_svc_common+0x100/0x258
      [  149.910281]  el0_svc_handler+0x48/0xc0
      [  149.910928]  el0_svc+0x8/0xc
      [  149.911425]
      [  149.911696] Freed by task 3974:
      [  149.912242]  __kasan_slab_free+0x114/0x228
      [  149.912955]  kasan_slab_free+0x10/0x18
      [  149.913602]  kfree+0x70/0x1f8
      [  149.914118]  __arm64_sys_io_uring_register+0xc2c/0x15a8
      [  149.915009]  el0_svc_common+0x100/0x258
      [  149.915670]  el0_svc_handler+0x48/0xc0
      [  149.916317]  el0_svc+0x8/0xc
      [  149.916817]
      [  149.917101] The buggy address belongs to the object at ffff8004ce07ed00
      [  149.917101]  which belongs to the cache kmalloc-128 of size 128
      [  149.919197] The buggy address is located 0 bytes inside of
      [  149.919197]  128-byte region [ffff8004ce07ed00, ffff8004ce07ed80)
      [  149.921142] The buggy address belongs to the page:
      [  149.921953] page:ffff7e0013381f00 count:1 mapcount:0 mapping:ffff800503417c00 index:0x0 compound_mapcount: 0
      [  149.923595] flags: 0x1ffff00000010200(slab|head)
      [  149.924388] raw: 1ffff00000010200 dead000000000100 dead000000000200 ffff800503417c00
      [  149.925706] raw: 0000000000000000 0000000080400040 00000001ffffffff 0000000000000000
      [  149.927011] page dumped because: kasan: bad access detected
      [  149.927956]
      [  149.928224] Memory state around the buggy address:
      [  149.929054]  ffff8004ce07ec00: 00 00 00 00 00 00 00 00 fc fc fc fc fc fc fc fc
      [  149.930274]  ffff8004ce07ec80: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc
      [  149.931494] >ffff8004ce07ed00: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
      [  149.932712]                    ^
      [  149.933281]  ffff8004ce07ed80: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc
      [  149.934508]  ffff8004ce07ee00: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc
      [  149.935725] ==================================================================
      
      which is due to a failure in registrering a fileset. This frees the
      ctx->user_files pointer, but doesn't clear it. When the io_uring
      instance is later freed through the normal channels, we free this
      pointer again. At this point it's invalid.
      
      Ensure we clear the pointer when we free it for the error case.
      Reported-by: default avatarWill Deacon <will.deacon@arm.com>
      Tested-by: default avatarWill Deacon <will.deacon@arm.com>
      Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
      25adf50f
  5. 02 Apr, 2019 2 commits
  6. 01 Apr, 2019 1 commit
  7. 31 Mar, 2019 9 commits
    • Linus Torvalds's avatar
      Linux 5.1-rc3 · 79a3aaa7
      Linus Torvalds authored
      79a3aaa7
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm · 63fc9c23
      Linus Torvalds authored
      Pull KVM fixes from Paolo Bonzini:
       "A collection of x86 and ARM bugfixes, and some improvements to
        documentation.
      
        On top of this, a cleanup of kvm_para.h headers, which were exported
        by some architectures even though they not support KVM at all. This is
        responsible for all the Kbuild changes in the diffstat"
      
      * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm: (28 commits)
        Documentation: kvm: clarify KVM_SET_USER_MEMORY_REGION
        KVM: doc: Document the life cycle of a VM and its resources
        KVM: selftests: complete IO before migrating guest state
        KVM: selftests: disable stack protector for all KVM tests
        KVM: selftests: explicitly disable PIE for tests
        KVM: selftests: assert on exit reason in CR4/cpuid sync test
        KVM: x86: update %rip after emulating IO
        x86/kvm/hyper-v: avoid spurious pending stimer on vCPU init
        kvm/x86: Move MSR_IA32_ARCH_CAPABILITIES to array emulated_msrs
        KVM: x86: Emulate MSR_IA32_ARCH_CAPABILITIES on AMD hosts
        kvm: don't redefine flags as something else
        kvm: mmu: Used range based flushing in slot_handle_level_range
        KVM: export <linux/kvm_para.h> and <asm/kvm_para.h> iif KVM is supported
        KVM: x86: remove check on nr_mmu_pages in kvm_arch_commit_memory_region()
        kvm: nVMX: Add a vmentry check for HOST_SYSENTER_ESP and HOST_SYSENTER_EIP fields
        KVM: SVM: Workaround errata#1096 (insn_len maybe zero on SMAP violation)
        KVM: Reject device ioctls from processes other than the VM's creator
        KVM: doc: Fix incorrect word ordering regarding supported use of APIs
        KVM: x86: fix handling of role.cr4_pae and rename it to 'gpte_size'
        KVM: nVMX: Do not inherit quadrant and invalid for the root shadow EPT
        ...
      63fc9c23
    • Linus Torvalds's avatar
      Merge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 915ee0da
      Linus Torvalds authored
      Pull x86 fixes from Thomas Gleixner:
       "A pile of x86 updates:
      
         - Prevent exceeding he valid physical address space in the /dev/mem
           limit checks.
      
         - Move all header content inside the header guard to prevent compile
           failures.
      
         - Fix the bogus __percpu annotation in this_cpu_has() which makes
           sparse very noisy.
      
         - Disable switch jump tables completely when retpolines are enabled.
      
         - Prevent leaking the trampoline address"
      
      * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/realmode: Make set_real_mode_mem() static inline
        x86/cpufeature: Fix __percpu annotation in this_cpu_has()
        x86/mm: Don't exceed the valid physical address space
        x86/retpolines: Disable switch jump tables when retpolines are enabled
        x86/realmode: Don't leak the trampoline kernel address
        x86/boot: Fix incorrect ifdeffery scope
        x86/resctrl: Remove unused variable
      915ee0da
    • Linus Torvalds's avatar
      Merge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 590627f7
      Linus Torvalds authored
      Pull perf tooling fixes from Thomas Gleixner:
       "Core libraries:
         - Fix max perf_event_attr.precise_ip detection.
         - Fix parser error for uncore event alias
         - Fixup ordering of kernel maps after obtaining the main kernel map
           address.
      
        Intel PT:
         - Fix TSC slip where A TSC packet can slip past MTC packets so that
           the timestamp appears to go backwards.
         - Fixes for exported-sql-viewer GUI conversion to python3.
      
        ARM coresight:
         - Fix the build by adding a missing case value for enumeration value
           introduced in newer library, that now is the required one.
      
        tool headers:
         - Syncronize kernel headers with the kernel, getting new io_uring and
           pidfd_send_signal syscalls so that 'perf trace' can handle them"
      
      * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        perf pmu: Fix parser error for uncore event alias
        perf scripts python: exported-sql-viewer.py: Fix python3 support
        perf scripts python: exported-sql-viewer.py: Fix never-ending loop
        perf machine: Update kernel map address and re-order properly
        tools headers uapi: Sync powerpc's asm/kvm.h copy with the kernel sources
        tools headers: Update x86's syscall_64.tbl and uapi/asm-generic/unistd
        tools headers uapi: Update drm/i915_drm.h
        tools arch x86: Sync asm/cpufeatures.h with the kernel sources
        tools headers uapi: Sync linux/fcntl.h to get the F_SEAL_FUTURE_WRITE addition
        tools headers uapi: Sync asm-generic/mman-common.h and linux/mman.h
        perf evsel: Fix max perf_event_attr.precise_ip detection
        perf intel-pt: Fix TSC slip
        perf cs-etm: Add missing case value
      590627f7
    • Linus Torvalds's avatar
      Merge branch 'smp-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · c29d8541
      Linus Torvalds authored
      Pull CPU hotplug fixes from Thomas Gleixner:
       "Two SMT/hotplug related fixes:
      
         - Prevent crash when HOTPLUG_CPU is disabled and the CPU bringup
           aborts. This is triggered with the 'nosmt' command line option, but
           can happen by any abort condition. As the real unplug code is not
           compiled in, prevent the fail by keeping the CPU in zombie state.
      
         - Enforce HOTPLUG_CPU for SMP on x86 to avoid the above situation
           completely. With 'nosmt' being a popular option it's required to
           unplug the half brought up sibling CPUs (due to the MCE wreckage)
           completely"
      
      * 'smp-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/smp: Enforce CONFIG_HOTPLUG_CPU when SMP=y
        cpu/hotplug: Prevent crash when CPU bringup fails on CONFIG_HOTPLUG_CPU=n
      c29d8541
    • Linus Torvalds's avatar
      Merge branch 'locking-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 573efdc5
      Linus Torvalds authored
      Pull locking fixlet from Thomas Gleixner:
       "Trivial update to the maintainers file"
      
      * 'locking-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        MAINTAINERS: Remove deleted file from futex file pattern
      573efdc5
    • Linus Torvalds's avatar
      Merge branch 'core-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · f78b5be2
      Linus Torvalds authored
      Pull core fixes from Thomas Gleixner:
       "A small set of core updates:
      
         - Make the watchdog respect the selected CPU mask again. That was
           broken by the rework of the watchdog thread management and caused
           inconsistent state and NMI watchdog being unstoppable.
      
         - Ensure that the objtool build can find the libelf location.
      
         - Remove dead kcore stub code"
      
      * 'core-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        watchdog: Respect watchdog cpumask on CPU hotplug
        objtool: Query pkg-config for libelf location
        proc/kcore: Remove unused kclist_add_remap()
      f78b5be2
    • Linus Torvalds's avatar
      Merge tag 'powerpc-5.1-4' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux · 6536c5f2
      Linus Torvalds authored
      Pull powerpc fixes from Michael Ellerman:
       "Three non-regression fixes.
      
         - Our optimised memcmp could read past the end of one of the buffers
           and potentially trigger a page fault leading to an oops.
      
         - Some of our code to read energy management data on PowerVM had an
           endian bug leading to bogus results.
      
         - When reporting a machine check exception we incorrectly reported
           TLB multihits as D-Cache multhits due to a missing entry in the
           array of causes.
      
        Thanks to: Chandan Rajendra, Gautham R. Shenoy, Mahesh Salgaonkar,
        Segher Boessenkool, Vaidyanathan Srinivasan"
      
      * tag 'powerpc-5.1-4' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux:
        powerpc/pseries/mce: Fix misleading print for TLB mutlihit
        powerpc/pseries/energy: Use OF accessor functions to read ibm,drc-indexes
        powerpc/64: Fix memcmp reading past the end of src/dest
      6536c5f2
    • Linus Torvalds's avatar
      Merge tag 'dmaengine-fix-5.1-rc3' of git://git.infradead.org/users/vkoul/slave-dma · c877b3df
      Linus Torvalds authored
      Pull dmaengine fixes from Vinod Koul:
      
       - Revert "dmaengine: stm32-mdma: Add a check on read_u32_array" as that
         caused regression
      
       - Fix MAINTAINER file uniphier-mdmac.c file path
      
      * tag 'dmaengine-fix-5.1-rc3' of git://git.infradead.org/users/vkoul/slave-dma:
        MAINTAINERS: Fix uniphier-mdmac.c file path
        dmaengine: stm32-mdma: Revert "dmaengine: stm32-mdma: Add a check on read_u32_array"
      c877b3df
  8. 30 Mar, 2019 10 commits
    • Linus Torvalds's avatar
      Merge tag 'led-fixes-for-5.1-rc3' of... · b5c8314f
      Linus Torvalds authored
      Merge tag 'led-fixes-for-5.1-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/j.anaszewski/linux-leds
      
      Pull LED fixes from Jacek Anaszewski:
      
       - fix refcnt leak on interface rename
      
       - use memcpy in device_name_store() to avoid including garbage from a
         previous, longer value in the device_name
      
       - fix a potential NULL pointer dereference in case of_match_device()
         cannot find a match
      
      * tag 'led-fixes-for-5.1-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/j.anaszewski/linux-leds:
        leds: trigger: netdev: use memcpy in device_name_store
        leds: pca9532: fix a potential NULL pointer dereference
        leds: trigger: netdev: fix refcnt leak on interface rename
      b5c8314f
    • Linus Torvalds's avatar
      Merge tag 'gpio-v5.1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio · 3af9a525
      Linus Torvalds authored
      Pull GPIO fixes from Linus Walleij:
       "As you can see [in the git history] I was away on leave and Bartosz
        kindly stepped in and collected a slew of fixes, I pulled them into my
        tree in two sets and merged some two more fixes (fixing my own caused
        bugs) on top.
      
        Summary:
      
         - Revert the extended use of gpio_set_config() and think about how we
           can do this properly.
      
         - Fix up the SPI CS GPIO handling so it now works properly on the SPI
           bus children, as intended.
      
         - Error paths and driver fixes"
      
      * tag 'gpio-v5.1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio:
        gpio: mockup: use simple_read_from_buffer() in debugfs read callback
        gpio: of: Fix of_gpiochip_add() error path
        gpio: of: Check for "spi-cs-high" in child instead of parent node
        gpio: of: Check propname before applying "cs-gpios" quirks
        gpio: mockup: fix debugfs read
        Revert "gpio: use new gpio_set_config() helper in more places"
        gpio: aspeed: fix a potential NULL pointer dereference
        gpio: amd-fch: Fix bogus SPDX identifier
        gpio: adnp: Fix testing wrong value in adnp_gpio_direction_input
        gpio: exar: add a check for the return value of ida_simple_get fails
      3af9a525
    • Rasmus Villemoes's avatar
      leds: trigger: netdev: use memcpy in device_name_store · 90934643
      Rasmus Villemoes authored
      If userspace doesn't end the input with a newline (which can easily
      happen if the write happens from a C program that does write(fd,
      iface, strlen(iface))), we may end up including garbage from a
      previous, longer value in the device_name. For example
      
      # cat device_name
      
      # printf 'eth12' > device_name
      # cat device_name
      eth12
      # printf 'eth3' > device_name
      # cat device_name
      eth32
      
      I highly doubt anybody is relying on this behaviour, so switch to
      simply copying the bytes (we've already checked that size is <
      IFNAMSIZ) and unconditionally zero-terminate it; of course, we also
      still have to strip a trailing newline.
      
      This is also preparation for future patches.
      
      Fixes: 06f502f5 ("leds: trigger: Introduce a NETDEV trigger")
      Signed-off-by: default avatarRasmus Villemoes <linux@rasmusvillemoes.dk>
      Acked-by: default avatarPavel Machek <pavel@ucw.cz>
      Signed-off-by: default avatarJacek Anaszewski <jacek.anaszewski@gmail.com>
      90934643
    • Kangjie Lu's avatar
      leds: pca9532: fix a potential NULL pointer dereference · 0aab8e4d
      Kangjie Lu authored
      In case of_match_device cannot find a match, return -EINVAL to avoid
      NULL pointer dereference.
      
      Fixes: fa4191a6 ("leds: pca9532: Add device tree support")
      Signed-off-by: default avatarKangjie Lu <kjlu@umn.edu>
      Signed-off-by: default avatarJacek Anaszewski <jacek.anaszewski@gmail.com>
      0aab8e4d
    • Linus Torvalds's avatar
      Merge tag 'staging-5.1-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging · 32faca66
      Linus Torvalds authored
      Pull staging driver fixes from Greg KH:
       "Here are some small staging driver fixes for 5.1-rc3, and one driver
        removal.
      
        The biggest thing here is the removal of the mt7621-eth driver as a
        "real" network driver was merged in 5.1-rc1 for this hardware, so this
        old driver can now be removed.
      
        Other than that, there are just a number of small fixes, all resolving
        reported issues and some potential corner cases for error handling
        paths.
      
        All of these have been in linux-next with no reported issues"
      
      * tag 'staging-5.1-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging:
        staging: vt6655: Remove vif check from vnt_interrupt
        staging: erofs: keep corrupted fs from crashing kernel in erofs_readdir()
        staging: octeon-ethernet: fix incorrect PHY mode
        staging: vc04_services: Fix an error code in vchiq_probe()
        staging: erofs: fix error handling when failed to read compresssed data
        staging: vt6655: Fix interrupt race condition on device start up.
        staging: rtlwifi: Fix potential NULL pointer dereference of kzalloc
        staging: rtl8712: uninitialized memory in read_bbreg_hdl()
        staging: rtlwifi: rtl8822b: fix to avoid potential NULL pointer dereference
        staging: rtl8188eu: Fix potential NULL pointer dereference of kcalloc
        staging, mt7621-pci: fix build without pci support
        staging: speakup_soft: Fix alternate speech with other synths
        staging: axis-fifo: add CONFIG_OF dependency
        staging: olpc_dcon_xo_1: add missing 'const' qualifier
        staging: comedi: ni_mio_common: Fix divide-by-zero for DIO cmdtest
        staging: erofs: fix to handle error path of erofs_vmap()
        staging: mt7621-dts: update ethernet settings.
        staging: remove mt7621-eth
      32faca66
    • Linus Torvalds's avatar
      Merge tag 'tty-5.1-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty · 52afe190
      Linus Torvalds authored
      Pull tty/serial fixes from Greg KH:
       "Here are some small tty and serial driver fixes for 5.1-rc3.
      
        Nothing major here, just a number of potential problems fixes for
        error handling paths, as well as some other minor bugfixes for
        reported issues with 5.1-rc1.
      
        All of these have been in linux-next with no reported issues"
      
      * tag 'tty-5.1-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty:
        tty: fix NULL pointer issue when tty_port ops is not set
        Disable kgdboc failed by echo space to /sys/module/kgdboc/parameters/kgdboc
        dt-bindings: serial: Add compatible for Mediatek MT8183
        tty/serial: atmel: RS485 HD w/DMA: enable RX after TX is stopped
        tty/serial: atmel: Add is_half_duplex helper
        serial: sh-sci: Fix setting SCSCR_TIE while transferring data
        serial: ar933x_uart: Fix build failure with disabled console
        tty: serial: qcom_geni_serial: Initialize baud in qcom_geni_console_setup
        sc16is7xx: missing unregister/delete driver on error in sc16is7xx_init()
        tty: mxs-auart: fix a potential NULL pointer dereference
        tty: atmel_serial: fix a potential NULL pointer dereference
        serial: max310x: Fix to avoid potential NULL pointer dereference
        serial: mvebu-uart: Fix to avoid a potential NULL pointer dereference
      52afe190
    • Linus Torvalds's avatar
      Merge tag 'usb-5.1-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb · 8d02a9a8
      Linus Torvalds authored
      Pull USB fixes from Greg KH:
       "Here are some small USB fixes for 5.1-rc3.
      
        Nothing major at all here, just a small collection of fixes for
        reported issues, and potential problems with error handling paths.
        Also a few new device ids, as normal.
      
        All of these have been in linux-next with no reported issues"
      
      * tag 'usb-5.1-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: (25 commits)
        USB: serial: option: add Olicard 600
        USB: serial: cp210x: add new device id
        usb: u132-hcd: fix resource leak
        usb: cdc-acm: fix race during wakeup blocking TX traffic
        usb: mtu3: fix EXTCON dependency
        usb: usb251xb: fix to avoid potential NULL pointer dereference
        usb: core: Try generic PHY_MODE_USB_HOST if usb_phy_roothub_set_mode fails
        phy: sun4i-usb: Support set_mode to USB_HOST for non-OTG PHYs
        xhci: Don't let USB3 ports stuck in polling state prevent suspend
        usb: xhci: dbc: Don't free all memory with spinlock held
        xhci: Fix port resume done detection for SS ports with LPM enabled
        USB: serial: mos7720: fix mos_parport refcount imbalance on error path
        USB: gadget: f_hid: fix deadlock in f_hidg_write()
        usb: gadget: net2272: Fix net2272_dequeue()
        usb: gadget: net2280: Fix net2280_dequeue()
        usb: gadget: net2280: Fix overrun of OUT messages
        usb: dwc3: pci: add support for Comet Lake PCH ID
        usb: usb251xb: Remove unnecessary comparison of unsigned integer with >= 0
        usb: common: Consider only available nodes for dr_mode
        usb: typec: tcpm: Try PD-2.0 if sink does not respond to 3.0 source-caps
        ...
      8d02a9a8
    • Linus Torvalds's avatar
      Merge tag 'acpi-5.1-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 782492a7
      Linus Torvalds authored
      Pull ACPI fix from Rafael Wysocki:
       "This corrects a previous attempt to make Linux use its own set of ACPI
        debug flags different from the upstream ACPICA's default (Erik
        Schmauss)"
      
      * tag 'acpi-5.1-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        ACPI: use different default debug value than ACPICA
      782492a7
    • Linus Torvalds's avatar
      Merge tag 'pm-5.1-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 8e377a1c
      Linus Torvalds authored
      Pull power management fixes from Rafael Wysocki:
       "These fix CPU base frequency reporting in the intel_pstate driver and
        a use-after-free in the scpi-cpufreq driver.
      
        Specifics:
      
         - Fix the ACPI CPPC library to actually follow the specification when
           decoding the guaranteed performance register information and make
           the intel_pstate driver to fall back to the nominal frequency when
           reporting the base frequency if the guaranteed performance register
           information is not there (Srinivas Pandruvada).
      
         - Fix use-after-free in the exit callback of the scpi-cpufreq left
           after an update during the 5.0 development cycle (Vincent Stehlé)"
      
      * tag 'pm-5.1-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        cpufreq: scpi: Fix use after free
        cpufreq: intel_pstate: Also use CPPC nominal_perf for base_frequency
        ACPI / CPPC: Fix guaranteed performance handling
      8e377a1c
    • Linus Torvalds's avatar
      Merge branch 'fixes-v5.1-a' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security · 12195302
      Linus Torvalds authored
      Pull security layer fixes from James Morris:
       "Yama and LSM config fixes"
      
      * 'fixes-v5.1-a' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security:
        LSM: Revive CONFIG_DEFAULT_SECURITY_* for "make oldconfig"
        Yama: mark local symbols as static
      12195302
  9. 29 Mar, 2019 11 commits
    • Linus Torvalds's avatar
      Merge branch 'akpm' (patches from Andrew) · 922c010c
      Linus Torvalds authored
      Merge misc fixes from Andrew Morton:
       "22 fixes"
      
      * emailed patches from Andrew Morton <akpm@linux-foundation.org>: (22 commits)
        fs/proc/proc_sysctl.c: fix NULL pointer dereference in put_links
        fs: fs_parser: fix printk format warning
        checkpatch: add %pt as a valid vsprintf extension
        mm/migrate.c: add missing flush_dcache_page for non-mapped page migrate
        drivers/block/zram/zram_drv.c: fix idle/writeback string compare
        mm/page_isolation.c: fix a wrong flag in set_migratetype_isolate()
        mm/memory_hotplug.c: fix notification in offline error path
        ptrace: take into account saved_sigmask in PTRACE{GET,SET}SIGMASK
        fs/proc/kcore.c: make kcore_modules static
        include/linux/list.h: fix list_is_first() kernel-doc
        mm/debug.c: fix __dump_page when mapping->host is not set
        mm: mempolicy: make mbind() return -EIO when MPOL_MF_STRICT is specified
        include/linux/hugetlb.h: convert to use vm_fault_t
        iommu/io-pgtable-arm-v7s: request DMA32 memory, and improve debugging
        mm: add support for kmem caches in DMA32 zone
        ocfs2: fix inode bh swapping mixup in ocfs2_reflink_inodes_lock
        mm/hotplug: fix offline undo_isolate_page_range()
        fs/open.c: allow opening only regular files during execve()
        mailmap: add Changbin Du
        mm/debug.c: add a cast to u64 for atomic64_read()
        ...
      922c010c
    • Linus Torvalds's avatar
      Merge tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux · f9007cc6
      Linus Torvalds authored
      Pull arm64 fix from Catalin Marinas:
       "Use memblock_alloc() instead of memblock_alloc_low() in
        request_standard_resources(), the latter being limited to the low 4G
        memory range on arm64"
      
      * tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux:
        arm64: replace memblock_alloc_low with memblock_alloc
      f9007cc6
    • Linus Torvalds's avatar
      Merge tag 'iommu-fixes-v5.1-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu · c0b7f2a5
      Linus Torvalds authored
      Pull IOMMU fixes from Joerg Roedel:
      
       - Fix a bug in the AMD IOMMU driver not handling exclusion ranges
         correctly. In fact the driver did not reserve these ranges for IOVA
         allocations, so that dma-handles could be allocated in an exclusion
         range, leading to data corruption. Exclusion ranges have not been
         used by any firmware up to now, so this issue remained undiscovered
         for quite some time.
      
       - Fix wrong warning messages that the IOMMU core code prints when it
         tries to allocate the default domain for an iommu group and the
         driver does not support any of the default domain types (like Intel
         VT-d).
      
      * tag 'iommu-fixes-v5.1-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu:
        iommu/amd: Reserve exclusion range in iova-domain
        iommu: Don't print warning when IOMMU driver only supports unmanaged domains
      c0b7f2a5
    • Linus Torvalds's avatar
      Merge tag 'driver-core-5.1-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core · eed4897d
      Linus Torvalds authored
      Pull driver core fix from Greg KH:
       "Here is a single driver core patch for 5.1-rc3.
      
        After 5.1-rc1, all of the users of BUS_ATTR() are finally removed, so
        we can now drop this macro from include/linux/device.h so that no more
        new users will be created.
      
        This patch has been in linux-next for a while, with no reported
        issues"
      
      * tag 'driver-core-5.1-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core:
        driver core: remove BUS_ATTR()
      eed4897d
    • Linus Torvalds's avatar
      Merge tag 'char-misc-5.1-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc · 6f510923
      Linus Torvalds authored
      Pull char/misc driver fixes from Greg KH:
       "Here are some binder, habanalabs, and vboxguest driver fixes for
        5.1-rc3.
      
        The Binder fixes resolve some reported issues found by testing, first
        by the selinux developers, and then earlier today by syzbot.
      
        The habanalabs fixes are all minor, resolving a number of tiny things.
      
        The vboxguest patches are a bit larger. They resolve the fact that
        virtual box decided to change their api in their latest release in a
        way that broke the existing kernel code, despite saying that they were
        never going to do that. So this is a bit of a "new feature", but is
        good to get merged so that 5.1 will work with the latest release. The
        changes are not large and of course virtual box "swears" they will not
        break this again, but no one is holding their breath here.
      
        All of these have been in linux-next for a while with no reported
        issues"
      
      * tag 'char-misc-5.1-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc:
        virt: vbox: Implement passing requestor info to the host for VirtualBox 6.0.x
        binder: fix race between munmap() and direct reclaim
        binder: fix BUG_ON found by selinux-testsuite
        habanalabs: cast to expected type
        habanalabs: prevent host crash during suspend/resume
        habanalabs: perform accounting for active CS
        habanalabs: fix mapping with page size bigger than 4KB
        habanalabs: complete user context cleanup before hard reset
        habanalabs: fix bug when mapping very large memory area
        habanalabs: fix MMU number of pages calculation
      6f510923
    • Linus Torvalds's avatar
      Merge tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi · 3467b907
      Linus Torvalds authored
      Pull SCSI fixes from James Bottomley:
       "Thirteen fixes, seven of which are for IBM fibre channel and three
        additional for fairly serious bugs in drivers (qla2xxx, mpt3sas,
        aacraid).
      
        Of the three core fixes, the most significant is probably the missed
        run queue causing an indefinite hang. The others are fixing a
        potential use after free on device close and silencing an incorrect
        warning"
      
      * tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi:
        scsi: ibmvfc: Clean up transport events
        scsi: ibmvfc: Byte swap status and error codes when logging
        scsi: ibmvfc: Add failed PRLI to cmd_status lookup array
        scsi: ibmvfc: Remove "failed" from logged errors
        scsi: zfcp: reduce flood of fcrscn1 trace records on multi-element RSCN
        scsi: zfcp: fix scsi_eh host reset with port_forced ERP for non-NPIV FCP devices
        scsi: zfcp: fix rport unblock if deleted SCSI devices on Scsi_Host
        scsi: sd: Quiesce warning if device does not report optimal I/O size
        scsi: sd: Fix a race between closing an sd device and sd I/O
        scsi: core: Run queue when state is set to running after being blocked
        scsi: qla4xxx: fix a potential NULL pointer dereference
        scsi: aacraid: Insure we don't access PCIe space during AER/EEH
        scsi: mpt3sas: Fix kernel panic during expander reset
      3467b907
    • Linus Torvalds's avatar
      Merge branch 'i2c/for-current' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux · 4ad52836
      Linus Torvalds authored
      Pull i2c fixes from Wolfram Sang:
       "A new ID for the i801 driver and some Documentation fixes to make it
        easier for people to find the bindings (which is also a basis for
        further improvements in that area)"
      
      * 'i2c/for-current' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux:
        i2c: wmt: make bindings file name match the driver
        i2c: sun6i-p2wi: make bindings file name match the driver
        i2c: stu300: make bindings file name match the driver
        i2c: mt65xx: make bindings file name match the driver
        i2c: iop3xx: make bindings file name match the driver
        i2c: i801: Add support for Intel Comet Lake
      4ad52836
    • Linus Torvalds's avatar
      Merge tag 'sound-5.1-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound · 9a4a6f0d
      Linus Torvalds authored
      Pull sound fixes from Takashi Iwai:
       "The important fixes at this time are a couple fixes in ALSA core: a
        fix for PCM is about the OOB access in PCM OSS plugins that has been
        for long time, but hasn't hit so often until now just because we
        allocated a large buffer via vmalloc(), and surfaced more often after
        switching to kvmalloc(). Another fix is for a long-standing PCM
        problem wrt racy PM resume.
      
        Others are trivial nospec coverage and usual HD-audio quirks"
      
      * tag 'sound-5.1-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
        ALSA: hda/realtek - Fix speakers on Acer Predator Helios 500 Ryzen laptops
        ALSA: pcm: Don't suspend stream in unrecoverable PCM state
        ALSA: hda/ca0132 - Simplify alt firmware loading code
        ALSA: pcm: Fix possible OOB access in PCM oss plugins
        ALSA: hda/realtek: Enable headset MIC of ASUS X430UN and X512DK with ALC256
        ALSA: hda/realtek: Enable headset mic of ASUS P5440FF with ALC256
        ALSA: hda/realtek: Enable ASUS X441MB and X705FD headset MIC with ALC256
        ALSA: hda/realtek - Add support for Acer Aspire E5-523G/ES1-432 headset mic
        ALSA: hda/realtek: Enable headset MIC of Acer Aspire Z24-890 with ALC286
        ALSA: seq: oss: Fix Spectre v1 vulnerability
        ALSA: rawmidi: Fix potential Spectre v1 vulnerability
      9a4a6f0d
    • Linus Torvalds's avatar
      Merge tag 'kbuild-fixes-v5.1' of... · 0e40da3e
      Linus Torvalds authored
      Merge tag 'kbuild-fixes-v5.1' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild
      
      Pull Kbuild fixes from Masahiro Yamada:
      
       - Remove harmful -Oz option of Clang
      
       - Get back the original behavior (no recursion for in-tree build) for
         GNU Make 4.x
      
       - Some minor fixes for coccinelle patches
      
       - Do not overwrite .gitignore in the output directory in case it is
         version-controlled
      
       - Fix missed record-mcount bug for dynamic ftrace
      
       - Fix endianness bug in modversions for relative CRC
      
       - Cater to '^H' key code in Kconfig ncurses programs
      
      * tag 'kbuild-fixes-v5.1' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild:
        kconfig/[mn]conf: handle backspace (^H) key
        kbuild: modversions: Fix relative CRC byte order interpretation
        scripts: coccinelle: Fix description of badty.cocci
        kbuild: strip whitespace in cmd_record_mcount findstring
        kbuild: do not overwrite .gitignore in output directory
        kbuild: skip parsing pre sub-make code for recursion
        coccinelle: put_device: reduce false positives
        kbuild: skip sub-make for in-tree build with GNU Make 4.x
        Revert "kbuild: use -Oz instead of -Os when using clang"
      0e40da3e
    • Linus Torvalds's avatar
      Merge tag 'for-linus-20190329' of git://git.kernel.dk/linux-block · ffb8e45c
      Linus Torvalds authored
      Pull block fixes from Jens Axboe:
       "Small set of fixes that should go into this series. This contains:
      
         - compat signal mask fix for io_uring (Arnd)
      
         - EAGAIN corner case for direct vs buffered writes for io_uring
           (Roman)
      
         - NVMe pull request from Christoph with various little fixes
      
         - sbitmap ws_active fix, which caused a perf regression for shared
           tags (me)
      
         - sbitmap bit ordering fix (Ming)
      
         - libata on-stack DMA fix (Raymond)"
      
      * tag 'for-linus-20190329' of git://git.kernel.dk/linux-block:
        nvmet: fix error flow during ns enable
        nvmet: fix building bvec from sg list
        nvme-multipath: relax ANA state check
        nvme-tcp: fix an endianess miss-annotation
        libata: fix using DMA buffers on stack
        io_uring: offload write to async worker in case of -EAGAIN
        sbitmap: order READ/WRITE freed instance and setting clear bit
        blk-mq: fix sbitmap ws_active for shared tags
        io_uring: fix big-endian compat signal mask handling
        blk-mq: update comment for blk_mq_hctx_has_pending()
        blk-mq: use blk_mq_put_driver_tag() to put tag
      ffb8e45c
    • Linus Torvalds's avatar
      Merge tag 'ceph-for-5.1-rc3' of git://github.com/ceph/ceph-client · 7376e39a
      Linus Torvalds authored
      Pull ceph fixes from Ilya Dryomov:
       "A patch to avoid choking on multipage bvecs in the messenger and a
        small use-after-free fix"
      
      * tag 'ceph-for-5.1-rc3' of git://github.com/ceph/ceph-client:
        ceph: fix use-after-free on symlink traversal
        libceph: fix breakage caused by multipage bvecs
      7376e39a