1. Jul 20, 2016
  2. Jul 01, 2016
    • Trond Myklebust's avatar
      NFSv4: Allow retry of operations that used a returned delegation stateid · 8487c479
      Trond Myklebust authored
      
      
      Fix up nfs4_do_handle_exception() so that it can check if the operation
      that received the NFS4ERR_BAD_STATEID was using a defunct delegation.
      Apply that to the case of SETATTR, which will currently return EIO
      in some cases where this happens.
      
      Reported-by: default avatarOlga Kornievskaia <kolga@netapp.com>
      Signed-off-by: default avatarTrond Myklebust <trond.myklebust@primarydata.com>
      8487c479
    • Trond Myklebust's avatar
      NFS/pnfs: Do not clobber existing pgio_done_cb in nfs4_proc_read_setup · ca857cc1
      Trond Myklebust authored
      If a pNFS client sets hdr->pgio_done_cb, then we should not overwrite that
      in nfs4_proc_read_setup()
      
      Fixes: 75bf47eb
      
       ("pNFS/flexfile: Fix erroneous fall back to...")
      Signed-off-by: default avatarTrond Myklebust <trond.myklebust@primarydata.com>
      ca857cc1
    • Trond Myklebust's avatar
      NFS: Fix an Oops in the pNFS files and flexfiles connection setup to the DS · 5c6e5b60
      Trond Myklebust authored
      
      
      Chris Worley reports:
       RIP: 0010:[<ffffffffa0245f80>]  [<ffffffffa0245f80>] rpc_new_client+0x2a0/0x2e0 [sunrpc]
       RSP: 0018:ffff880158f6f548  EFLAGS: 00010246
       RAX: 0000000000000000 RBX: ffff880234f8bc00 RCX: 000000000000ea60
       RDX: 0000000000074cc0 RSI: 000000000000ea60 RDI: ffff880234f8bcf0
       RBP: ffff880158f6f588 R08: 000000000001ac80 R09: ffff880237003300
       R10: ffff880201171000 R11: ffffea0000d75200 R12: ffffffffa03afc60
       R13: ffff880230c18800 R14: 0000000000000000 R15: ffff880158f6f680
       FS:  00007f0e32673740(0000) GS:ffff88023fc40000(0000) knlGS:0000000000000000
       CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
       CR2: 0000000000000008 CR3: 0000000234886000 CR4: 00000000001406e0
       Stack:
        ffffffffa047a680 0000000000000000 ffff880158f6f598 ffff880158f6f680
        ffff880158f6f680 ffff880234d11d00 ffff88023357f800 ffff880158f6f7d0
        ffff880158f6f5b8 ffffffffa024660a ffff880158f6f5b8 ffffffffa02492ec
       Call Trace:
        [<ffffffffa024660a>] rpc_create_xprt+0x1a/0xb0 [sunrpc]
        [<ffffffffa02492ec>] ? xprt_create_transport+0x13c/0x240 [sunrpc]
        [<ffffffffa0246766>] rpc_create+0xc6/0x1a0 [sunrpc]
        [<ffffffffa038e695>] nfs_create_rpc_client+0xf5/0x140 [nfs]
        [<ffffffffa038f31a>] nfs_init_client+0x3a/0xd0 [nfs]
        [<ffffffffa038f22f>] nfs_get_client+0x25f/0x310 [nfs]
        [<ffffffffa025cef8>] ? rpc_ntop+0xe8/0x100 [sunrpc]
        [<ffffffffa047512c>] nfs3_set_ds_client+0xcc/0x100 [nfsv3]
        [<ffffffffa041fa10>] nfs4_pnfs_ds_connect+0x120/0x400 [nfsv4]
        [<ffffffffa03d41c7>] nfs4_ff_layout_prepare_ds+0xe7/0x330 [nfs_layout_flexfiles]
        [<ffffffffa03d1b1b>] ff_layout_pg_init_write+0xcb/0x280 [nfs_layout_flexfiles]
        [<ffffffffa03a14dc>] __nfs_pageio_add_request+0x12c/0x490 [nfs]
        [<ffffffffa03a1fa2>] nfs_pageio_add_request+0xc2/0x2a0 [nfs]
        [<ffffffffa03a0365>] ? nfs_pageio_init+0x75/0x120 [nfs]
        [<ffffffffa03a5b50>] nfs_do_writepage+0x120/0x270 [nfs]
        [<ffffffffa03a5d31>] nfs_writepage_locked+0x61/0xc0 [nfs]
        [<ffffffff813d4115>] ? __percpu_counter_add+0x55/0x70
        [<ffffffffa03a6a9f>] nfs_wb_single_page+0xef/0x1c0 [nfs]
        [<ffffffff811ca4a3>] ? __dec_zone_page_state+0x33/0x40
        [<ffffffffa0395b21>] nfs_launder_page+0x41/0x90 [nfs]
        [<ffffffff811baba0>] invalidate_inode_pages2_range+0x340/0x3a0
        [<ffffffff811bac17>] invalidate_inode_pages2+0x17/0x20
        [<ffffffffa039960e>] nfs_release+0x9e/0xb0 [nfs]
        [<ffffffffa0399570>] ? nfs_open+0x60/0x60 [nfs]
        [<ffffffffa0394dad>] nfs_file_release+0x3d/0x60 [nfs]
        [<ffffffff81226e6c>] __fput+0xdc/0x1e0
        [<ffffffff81226fbe>] ____fput+0xe/0x10
        [<ffffffff810bf2e4>] task_work_run+0xc4/0xe0
        [<ffffffff810a4188>] do_exit+0x2e8/0xb30
        [<ffffffff8102471c>] ? do_audit_syscall_entry+0x6c/0x70
        [<ffffffff811464e6>] ? __audit_syscall_exit+0x1e6/0x280
        [<ffffffff810a4a5f>] do_group_exit+0x3f/0xa0
        [<ffffffff810a4ad4>] SyS_exit_group+0x14/0x20
        [<ffffffff8179b76e>] system_call_fastpath+0x12/0x71
      
      Which seems to be due to a call to utsname() when in a task exit context
      in order to determine the hostname to set in rpc_new_client().
      
      In reality, what we want here is not the hostname of the current task, but
      the hostname that was used to set up the metadata server.
      
      Signed-off-by: default avatarTrond Myklebust <trond.myklebust@primarydata.com>
      5c6e5b60
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm · 1a0a02d1
      Linus Torvalds authored
      Pull KVM fixes from Paolo Bonzini:
       "ARM and x86 fixes"
      
      * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm:
        KVM: nVMX: VMX instructions: fix segment checks when L1 is in long mode.
        KVM: LAPIC: cap __delay at lapic_timer_advance_ns
        KVM: x86: move nsec_to_cycles from x86.c to x86.h
        pvclock: Get rid of __pvclock_read_cycles in function pvclock_read_flags
        pvclock: Cleanup to remove function pvclock_get_nsec_offset
        pvclock: Add CPU barriers to get correct version value
        KVM: arm/arm64: Stop leaking vcpu pid references
        arm64: KVM: fix build with CONFIG_ARM_PMU disabled
      1a0a02d1
    • Linus Torvalds's avatar
      Merge tag 'arc-4.7-rc6-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc · 284341d2
      Linus Torvalds authored
      Pull ARC fix from Vineet Gupta:
       "Reinstate dwarf unwinder/loadable-modules with new gnu tools"
      
      * tag 'arc-4.7-rc6-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc:
        arc: unwind: warn only once if DW2_UNWIND is disabled
        ARC: unwind: ensure that .debug_frame is generated (vs. .eh_frame)
      284341d2
    • Linus Torvalds's avatar
      Merge tag 'pwm/for-4.7-rc6' of... · 20bfdca1
      Linus Torvalds authored
      Merge tag 'pwm/for-4.7-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/thierry.reding/linux-pwm
      
      Pull pwm fixes from Thierry Reding:
       "One more fix for some fallout observed after the introduction of the
        atomic API"
      
      * tag 'pwm/for-4.7-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/thierry.reding/linux-pwm:
        pwm: Fix pwm_apply_args()
      20bfdca1
    • Linus Torvalds's avatar
      Merge tag 'mfd-fixes-4.7' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd · 4aa34ce3
      Linus Torvalds authored
      Pull MFD fixes from Lee Jones:
       "Contained are some standard fixes and unusually an extension to the
        Reset API.  Some of those changes are required to fix a bug introduced
        in -rc1, which introduces extra 'reset line checks' i.e. whether the
        line is shared or not.  If a line is shared and the new *_shared() API
        is not used, the request fails with an error.  This breaks USB in v4.7
        for ST's platforms.
      
        Admittedly, there are some patches contained in our (MFD/Reset)
        immutable branch which are not true -fixes, but there isn't anything I
        can do about that.  Rest assured though, there aren't any API
        'changes'.  Everything is the same from the consumer's perspective.
      
         - Use new reset_*_get_shared() variant to prevent reset line
           obtainment failure (Fixes commit 0b52297f: "reset: Add support
           for shared reset controls")
      
         - Fix unintentional switch() fall-through into error path
      
         - Fix uninitialised variable compiler warning"
      
      * tag 'mfd-fixes-4.7' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd:
        mfd: da9053: Fix compiler warning message for uninitialised variable
        mfd: max77620: Fix FPS switch statements
        phy: phy-stih407-usb: Inform the reset framework that our reset line may be shared
        usb: dwc3: st: Inform the reset framework that our reset line may be shared
        usb: host: ehci-st: Inform the reset framework that our reset line may be shared
        usb: host: ohci-st: Inform the reset framework that our reset line may be shared
        reset: TRIVIAL: Add line break at same place for similar APIs
        reset: Supply *_shared variant calls when using *_optional APIs
        reset: Supply *_shared variant calls when using of_* API
        reset: Ensure drivers are explicit when requesting reset lines
        reset: Reorder inline reset_control_get*() wrappers
      4aa34ce3
  3. Jun 30, 2016
  4. Jun 29, 2016