1. 24 May, 2017 1 commit
    • Artem Savkov's avatar
      scsi: scsi_dh_rdac: Use ctlr directly in rdac_failover_get() · 0648a07c
      Artem Savkov authored
      rdac_failover_get references struct rdac_controller as
      ctlr->ms_sdev->handler_data->ctlr for no apparent reason. Besides being
      inefficient this also introduces a null-pointer dereference as
      send_mode_select() sets ctlr->ms_sdev to NULL before calling
      rdac_failover_get():
      
      [   18.432550] device-mapper: multipath service-time: version 0.3.0 loaded
      [   18.436124] BUG: unable to handle kernel NULL pointer dereference at 0000000000000790
      [   18.436129] IP: send_mode_select+0xca/0x560
      [   18.436129] PGD 0
      [   18.436130] P4D 0
      [   18.436130]
      [   18.436132] Oops: 0000 [#1] SMP
      [   18.436133] Modules linked in: dm_service_time sd_mod dm_multipath amdkfd amd_iommu_v2 radeon(+) i2c_algo_bit drm_kms_helper syscopyarea sysfillrect sysimgblt fb_sys_fops ttm qla2xxx drm serio_raw scsi_transport_fc bnx2 i2c_core dm_mirror dm_region_hash dm_log dm_mod
      [   18.436143] CPU: 4 PID: 443 Comm: kworker/u16:2 Not tainted 4.12.0-rc1.1.el7.test.x86_64 #1
      [   18.436144] Hardware name: IBM BladeCenter LS22 -[79013SG]-/Server Blade, BIOS -[L8E164AUS-1.07]- 05/25/2011
      [   18.436145] Workqueue: kmpath_rdacd send_mode_select
      [   18.436146] task: ffff880225116a40 task.stack: ffffc90002bd8000
      [   18.436148] RIP: 0010:send_mode_select+0xca/0x560
      [   18.436148] RSP: 0018:ffffc90002bdbda8 EFLAGS: 00010246
      [   18.436149] RAX: 0000000000000000 RBX: ffffc90002bdbe08 RCX: ffff88017ef04a80
      [   18.436150] RDX: ffffc90002bdbe08 RSI: ffff88017ef04a80 RDI: ffff8802248e4388
      [   18.436151] RBP: ffffc90002bdbe48 R08: 0000000000000000 R09: ffffffff81c104c0
      [   18.436151] R10: 00000000000001ff R11: 000000000000035a R12: ffffc90002bdbdd8
      [   18.436152] R13: ffff8802248e4390 R14: ffff880225152800 R15: ffff8802248e4400
      [   18.436153] FS:  0000000000000000(0000) GS:ffff880227d00000(0000) knlGS:0000000000000000
      [   18.436154] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
      [   18.436154] CR2: 0000000000000790 CR3: 000000042535b000 CR4: 00000000000006e0
      [   18.436155] Call Trace:
      [   18.436159]  ? rdac_activate+0x14e/0x150
      [   18.436161]  ? refcount_dec_and_test+0x11/0x20
      [   18.436162]  ? kobject_put+0x1c/0x50
      [   18.436165]  ? scsi_dh_activate+0x6f/0xd0
      [   18.436168]  process_one_work+0x149/0x360
      [   18.436170]  worker_thread+0x4d/0x3c0
      [   18.436172]  kthread+0x109/0x140
      [   18.436173]  ? rescuer_thread+0x380/0x380
      [   18.436174]  ? kthread_park+0x60/0x60
      [   18.436176]  ret_from_fork+0x2c/0x40
      [   18.436177] Code: 49 c7 46 20 00 00 00 00 4c 89 ef c6 07 00 0f 1f 40 00 45 31 ed c7 45 b0 05 00 00 00 44 89 6d b4 4d 89 f5 4c 8b 75 a8 49 8b 45 20 <48> 8b b0 90 07 00 00 48 8b 56 10 8b 42 10 48 8d 7a 28 85 c0 0f
      [   18.436192] RIP: send_mode_select+0xca/0x560 RSP: ffffc90002bdbda8
      [   18.436192] CR2: 0000000000000790
      [   18.436198] ---[ end trace 40f3e4dca1ffabdd ]---
      [   18.436199] Kernel panic - not syncing: Fatal exception
      [   18.436222] Kernel Offset: disabled
      [-- MARK -- Thu May 18 11:45:00 2017]
      
      Fixes: 32782557 scsi_dh_rdac: switch to scsi_execute_req_flags()
      Cc: stable@vger.kernel.org
      Signed-off-by: default avatarArtem Savkov <asavkov@redhat.com>
      Reviewed-by: default avatarChristoph Hellwig <hch@lst.de>
      Signed-off-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
      0648a07c
  2. 19 May, 2017 3 commits
  3. 18 May, 2017 2 commits
  4. 17 May, 2017 17 commits
  5. 12 May, 2017 3 commits
  6. 09 May, 2017 12 commits
  7. 08 May, 2017 2 commits
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm · 2d3e4866
      Linus Torvalds authored
      Pull KVM updates from Paolo Bonzini:
       "ARM:
         - HYP mode stub supports kexec/kdump on 32-bit
         - improved PMU support
         - virtual interrupt controller performance improvements
         - support for userspace virtual interrupt controller (slower, but
           necessary for KVM on the weird Broadcom SoCs used by the Raspberry
           Pi 3)
      
        MIPS:
         - basic support for hardware virtualization (ImgTec P5600/P6600/I6400
           and Cavium Octeon III)
      
        PPC:
         - in-kernel acceleration for VFIO
      
        s390:
         - support for guests without storage keys
         - adapter interruption suppression
      
        x86:
         - usual range of nVMX improvements, notably nested EPT support for
           accessed and dirty bits
         - emulation of CPL3 CPUID faulting
      
        generic:
         - first part of VCPU thread request API
         - kvm_stat improvements"
      
      * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm: (227 commits)
        kvm: nVMX: Don't validate disabled secondary controls
        KVM: put back #ifndef CONFIG_S390 around kvm_vcpu_kick
        Revert "KVM: Support vCPU-based gfn->hva cache"
        tools/kvm: fix top level makefile
        KVM: x86: don't hold kvm->lock in KVM_SET_GSI_ROUTING
        KVM: Documentation: remove VM mmap documentation
        kvm: nVMX: Remove superfluous VMX instruction fault checks
        KVM: x86: fix emulation of RSM and IRET instructions
        KVM: mark requests that need synchronization
        KVM: return if kvm_vcpu_wake_up() did wake up the VCPU
        KVM: add explicit barrier to kvm_vcpu_kick
        KVM: perform a wake_up in kvm_make_all_cpus_request
        KVM: mark requests that do not need a wakeup
        KVM: remove #ifndef CONFIG_S390 around kvm_vcpu_wake_up
        KVM: x86: always use kvm_make_request instead of set_bit
        KVM: add kvm_{test,clear}_request to replace {test,clear}_bit
        s390: kvm: Cpu model support for msa6, msa7 and msa8
        KVM: x86: remove irq disablement around KVM_SET_CLOCK/KVM_GET_CLOCK
        kvm: better MWAIT emulation for guests
        KVM: x86: virtualize cpuid faulting
        ...
      2d3e4866
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.armlinux.org.uk/~rmk/linux-arm · 9c6ee01e
      Linus Torvalds authored
      Pull ARM updates from Russell King:
       "Lots of little things this time:
      
         - allow modules to be autoloaded according to the HWCAP feature bits
           (used primarily for crypto modules)
      
         - split module core and init PLT sections, since the core code and
           init code could be placed far apart, and the PLT sections need to
           be local to the code block.
      
         - three patches from Chris Brandt to allow Cortex-A9 L2 cache
           optimisations to be disabled where a SoC didn't wire up the out of
           band signals.
      
         - NoMMU compliance fixes, avoiding corruption of vector table which
           is not being used at this point, and avoiding possible register
           state corruption when switching mode.
      
         - fixmap memory attribute compliance update.
      
         - remove unnecessary locking from update_sections_early()
      
         - ftrace fix for DEBUG_RODATA with !FRAME_POINTER"
      
      * 'for-linus' of git://git.armlinux.org.uk/~rmk/linux-arm:
        ARM: 8672/1: mm: remove tasklist locking from update_sections_early()
        ARM: 8671/1: V7M: Preserve registers across switch from Thread to Handler mode
        ARM: 8670/1: V7M: Do not corrupt vector table around v7m_invalidate_l1 call
        ARM: 8668/1: ftrace: Fix dynamic ftrace with DEBUG_RODATA and !FRAME_POINTER
        ARM: 8667/3: Fix memory attribute inconsistencies when using fixmap
        ARM: 8663/1: wire up HWCAP/HWCAP2 feature bits to the CPU modalias
        ARM: 8666/1: mm: dump: Add domain to output
        ARM: 8662/1: module: split core and init PLT sections
        ARM: 8661/1: dts: r7s72100: add l2 cache
        ARM: 8660/1: shmobile: r7s72100: Enable L2 cache
        ARM: 8659/1: l2c: allow CA9 optimizations to be disabled
      9c6ee01e