1. 14 1月, 2014 9 次提交
  2. 06 1月, 2014 4 次提交
    • T
    • N
      NFS: dprintk() should not print negative fileids and inode numbers · 1e8968c5
      Niels de Vos 提交于
      A fileid in NFS is a uint64. There are some occurrences where dprintk()
      outputs a signed fileid. This leads to confusion and more difficult to
      read debugging (negative fileids matching positive inode numbers).
      Signed-off-by: NNiels de Vos <ndevos@redhat.com>
      CC: Santosh Pradhan <spradhan@redhat.com>
      Signed-off-by: NTrond Myklebust <trond.myklebust@primarydata.com>
      1e8968c5
    • A
      nfs: fix dead code of ipv6_addr_scope · a8c22754
      Alexander Aring 提交于
      The correct way to check on IPV6_ADDR_SCOPE_LINKLOCAL is to check with
      the ipv6_addr_src_scope function.
      
      Currently this can't be work, because ipv6_addr_scope returns a int with
      a mask of IPV6_ADDR_SCOPE_MASK (0x00f0U) and IPV6_ADDR_SCOPE_LINKLOCAL
      is 0x02. So the condition is always false.
      Signed-off-by: NAlexander Aring <alex.aring@gmail.com>
      Signed-off-by: NTrond Myklebust <trond.myklebust@primarydata.com>
      a8c22754
    • W
      sunrpc: Fix infinite loop in RPC state machine · 6ff33b7d
      Weston Andros Adamson 提交于
      When a task enters call_refreshresult with status 0 from call_refresh and
      !rpcauth_uptodatecred(task) it enters call_refresh again with no rate-limiting
      or max number of retries.
      
      Instead of trying forever, make use of the retry path that other errors use.
      
      This only seems to be possible when the crrefresh callback is gss_refresh_null,
      which only happens when destroying the context.
      
      To reproduce:
      
      1) mount with sec=krb5 (or sec=sys with krb5 negotiated for non FSID specific
         operations).
      
      2) reboot - the client will be stuck and will need to be hard rebooted
      
      BUG: soft lockup - CPU#0 stuck for 22s! [kworker/0:2:46]
      Modules linked in: rpcsec_gss_krb5 nfsv4 nfs fscache ppdev crc32c_intel aesni_intel aes_x86_64 glue_helper lrw gf128mul ablk_helper cryptd serio_raw i2c_piix4 i2c_core e1000 parport_pc parport shpchp nfsd auth_rpcgss oid_registry exportfs nfs_acl lockd sunrpc autofs4 mptspi scsi_transport_spi mptscsih mptbase ata_generic floppy
      irq event stamp: 195724
      hardirqs last  enabled at (195723): [<ffffffff814a925c>] restore_args+0x0/0x30
      hardirqs last disabled at (195724): [<ffffffff814b0a6a>] apic_timer_interrupt+0x6a/0x80
      softirqs last  enabled at (195722): [<ffffffff8103f583>] __do_softirq+0x1df/0x276
      softirqs last disabled at (195717): [<ffffffff8103f852>] irq_exit+0x53/0x9a
      CPU: 0 PID: 46 Comm: kworker/0:2 Not tainted 3.13.0-rc3-branch-dros_testing+ #4
      Hardware name: VMware, Inc. VMware Virtual Platform/440BX Desktop Reference Platform, BIOS 6.00 07/31/2013
      Workqueue: rpciod rpc_async_schedule [sunrpc]
      task: ffff8800799c4260 ti: ffff880079002000 task.ti: ffff880079002000
      RIP: 0010:[<ffffffffa0064fd4>]  [<ffffffffa0064fd4>] __rpc_execute+0x8a/0x362 [sunrpc]
      RSP: 0018:ffff880079003d18  EFLAGS: 00000246
      RAX: 0000000000000005 RBX: 0000000000000007 RCX: 0000000000000007
      RDX: 0000000000000007 RSI: ffff88007aecbae8 RDI: ffff8800783d8900
      RBP: ffff880079003d78 R08: ffff88006e30e9f8 R09: ffffffffa005a3d7
      R10: ffff88006e30e7b0 R11: ffff8800783d8900 R12: ffffffffa006675e
      R13: ffff880079003ce8 R14: ffff88006e30e7b0 R15: ffff8800783d8900
      FS:  0000000000000000(0000) GS:ffff88007f200000(0000) knlGS:0000000000000000
      CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
      CR2: 00007f3072333000 CR3: 0000000001a0b000 CR4: 00000000001407f0
      Stack:
       ffff880079003d98 0000000000000246 0000000000000000 ffff88007a9a4830
       ffff880000000000 ffffffff81073f47 ffff88007f212b00 ffff8800799c4260
       ffff8800783d8988 ffff88007f212b00 ffffe8ffff604800 0000000000000000
      Call Trace:
       [<ffffffff81073f47>] ? trace_hardirqs_on_caller+0x145/0x1a1
       [<ffffffffa00652d3>] rpc_async_schedule+0x27/0x32 [sunrpc]
       [<ffffffff81052974>] process_one_work+0x211/0x3a5
       [<ffffffff810528d5>] ? process_one_work+0x172/0x3a5
       [<ffffffff81052eeb>] worker_thread+0x134/0x202
       [<ffffffff81052db7>] ? rescuer_thread+0x280/0x280
       [<ffffffff81052db7>] ? rescuer_thread+0x280/0x280
       [<ffffffff810584a0>] kthread+0xc9/0xd1
       [<ffffffff810583d7>] ? __kthread_parkme+0x61/0x61
       [<ffffffff814afd6c>] ret_from_fork+0x7c/0xb0
       [<ffffffff810583d7>] ? __kthread_parkme+0x61/0x61
      Code: e8 87 63 fd e0 c6 05 10 dd 01 00 01 48 8b 43 70 4c 8d 6b 70 45 31 e4 a8 02 0f 85 d5 02 00 00 4c 8b 7b 48 48 c7 43 48 00 00 00 00 <4c> 8b 4b 50 4d 85 ff 75 0c 4d 85 c9 4d 89 cf 0f 84 32 01 00 00
      
      And the output of "rpcdebug -m rpc -s all":
      
      RPC:    61 call_refresh (status 0)
      RPC:    61 call_refresh (status 0)
      RPC:    61 refreshing RPCSEC_GSS cred ffff88007a413cf0
      RPC:    61 refreshing RPCSEC_GSS cred ffff88007a413cf0
      RPC:    61 call_refreshresult (status 0)
      RPC:    61 refreshing RPCSEC_GSS cred ffff88007a413cf0
      RPC:    61 call_refreshresult (status 0)
      RPC:    61 refreshing RPCSEC_GSS cred ffff88007a413cf0
      RPC:    61 call_refresh (status 0)
      RPC:    61 call_refreshresult (status 0)
      RPC:    61 call_refresh (status 0)
      RPC:    61 call_refresh (status 0)
      RPC:    61 refreshing RPCSEC_GSS cred ffff88007a413cf0
      RPC:    61 call_refreshresult (status 0)
      RPC:    61 call_refresh (status 0)
      RPC:    61 refreshing RPCSEC_GSS cred ffff88007a413cf0
      RPC:    61 call_refresh (status 0)
      RPC:    61 refreshing RPCSEC_GSS cred ffff88007a413cf0
      RPC:    61 refreshing RPCSEC_GSS cred ffff88007a413cf0
      RPC:    61 call_refreshresult (status 0)
      RPC:    61 call_refresh (status 0)
      RPC:    61 call_refresh (status 0)
      RPC:    61 call_refresh (status 0)
      RPC:    61 call_refresh (status 0)
      RPC:    61 call_refreshresult (status 0)
      RPC:    61 refreshing RPCSEC_GSS cred ffff88007a413cf0
      Signed-off-by: NWeston Andros Adamson <dros@netapp.com>
      Cc: stable@vger.kernel.org # 2.6.37+
      Signed-off-by: NTrond Myklebust <trond.myklebust@primarydata.com>
      6ff33b7d
  3. 01 1月, 2014 4 次提交
  4. 11 12月, 2013 1 次提交
  5. 07 12月, 2013 12 次提交
  6. 06 12月, 2013 10 次提交
    • G
      aio: clean up aio ring in the fail path · d1b94327
      Gu Zheng 提交于
      Clean up the aio ring file in the fail path of aio_setup_ring
      and ioctx_alloc. And maybe it can fix the GPF issue reported by
      Dave Jones:
      https://lkml.org/lkml/2013/11/25/898Signed-off-by: NGu Zheng <guz.fnst@cn.fujitsu.com>
      Signed-off-by: NBenjamin LaHaise <bcrl@kvack.org>
      d1b94327
    • J
      Merge branch 'free-memory' of... · bfb26328
      James Morris 提交于
      Merge branch 'free-memory' of git://git.kernel.org/pub/scm/linux/kernel/git/zohar/linux-integrity into for-linus
      bfb26328
    • L
      Merge tag 'pm-3.13-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 002acf1f
      Linus Torvalds 提交于
      Pull power management fixes from Rafael Wysocki:
      
       - cpufreq regression fix from Bjørn Mork restoring the pre-3.12
         behavior of the framework during system suspend/hibernation to avoid
         garbage sysfs files from being left behind in case of a suspend error
      
       - PNP regression fix to restore the correct states of devices after
         resume from hibernation broken in 3.12.  From Dmitry Torokhov.
      
       - cpuidle fix to prevent cpuidle device unregistration from crashing
         due to a NULL pointer dereference if cpuidle has been disabled from
         the kernel command line.  From Konrad Rzeszutek Wilk.
      
       - intel_idle fix for the C6 state definition on Intel Avoton/Rangeley
         processors from Arne Bockholdt.
      
       - Power capping framework fix to make the energy_uj sysfs attribute
         work in accordance with the documentation.  From Srinivas Pandruvada.
      
       - epoll fix to make it ignore the EPOLLWAKEUP flag if the kernel has
         been compiled with CONFIG_PM_SLEEP unset (in which case that flag
         should not have any effect).  From Amit Pundir.
      
       - cpufreq fix to prevent governor sysfs files from being lost over
         system suspend/resume in some (arguably unusual) situations.  From
         Viresh Kumar.
      
      * tag 'pm-3.13-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        PowerCap: Fix mode for energy counter
        PNP: fix restoring devices after hibernation
        cpuidle: Check for dev before deregistering it.
        epoll: drop EPOLLWAKEUP if PM_SLEEP is disabled
        cpufreq: fix garbage kobjects on errors during suspend/resume
        cpufreq: suspend governors on system suspend/hibernate
        intel_idle: Fixed C6 state on Avoton/Rangeley processors
      002acf1f
    • R
      Merge branches 'pm-epoll', 'pnp' and 'powercap' · 8e703009
      Rafael J. Wysocki 提交于
      * pm-epoll:
        epoll: drop EPOLLWAKEUP if PM_SLEEP is disabled
      
      * pnp:
        PNP: fix restoring devices after hibernation
      
      * powercap:
        PowerCap: Fix mode for energy counter
      8e703009
    • R
      Merge branches 'pm-cpuidle' and 'pm-cpufreq' · 7cdcec99
      Rafael J. Wysocki 提交于
      * pm-cpuidle:
        cpuidle: Check for dev before deregistering it.
        intel_idle: Fixed C6 state on Avoton/Rangeley processors
      
      * pm-cpufreq:
        cpufreq: fix garbage kobjects on errors during suspend/resume
        cpufreq: suspend governors on system suspend/hibernate
      7cdcec99
    • L
      Merge branch 'stable' of git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile · b52b342d
      Linus Torvalds 提交于
      Pull arch/tile ftrace bug fix from Chris Metcalf:
       "This fixes a build failure with allyesconfig reported by Fengguang Wu
        and fixed by Tony Lu"
      
      * 'stable' of git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile:
        ftrace: default to tilegx if ARCH=tile is specified
      b52b342d
    • L
      Merge branch 'for-linus' of git://git.kernel.dk/linux-block · 5ee54061
      Linus Torvalds 提交于
      Pull block layer fixes from Jens Axboe:
       "A small collection of fixes for the current series. It contains:
      
         - A fix for a use-after-free of a request in blk-mq.  From Ming Lei
      
         - A fix for a blk-mq bug that could attempt to dereference a NULL rq
           if allocation failed
      
         - Two xen-blkfront small fixes
      
         - Cleanup of submit_bio_wait() type uses in the kernel, unifying
           that.  From Kent
      
         - A fix for 32-bit blkg_rwstat reading.  I apologize for this one
           looking mangled in the shortlog, it's entirely my fault for missing
           an empty line between the description and body of the text"
      
      * 'for-linus' of git://git.kernel.dk/linux-block:
        blk-mq: fix use-after-free of request
        blk-mq: fix dereference of rq->mq_ctx if allocation fails
        block: xen-blkfront: Fix possible NULL ptr dereference
        xen-blkfront: Silence pfn maybe-uninitialized warning
        block: submit_bio_wait() conversions
        Update of blkg_stat and blkg_rwstat may happen in bh context
      5ee54061
    • L
      Merge tag 'nfs-for-3.13-3' of git://git.linux-nfs.org/projects/trondmy/linux-nfs · 29be6345
      Linus Torvalds 提交于
      Pull NFS client bugfixes from Trond Myklebust:
       - Stable fix for a NFSv4.1 delegation and state recovery deadlock
       - Stable fix for a loop on irrecoverable errors when returning
         delegations
       - Fix a 3-way deadlock between layoutreturn, open, and state recovery
       - Update the MAINTAINERS file with contact information for Trond
         Myklebust
       - Close needs to handle NFS4ERR_ADMIN_REVOKED
       - Enabling v4.2 should not recompile nfsd and lockd
       - Fix a couple of compile warnings
      
      * tag 'nfs-for-3.13-3' of git://git.linux-nfs.org/projects/trondmy/linux-nfs:
        nfs: fix do_div() warning by instead using sector_div()
        MAINTAINERS: Update contact information for Trond Myklebust
        NFSv4.1: Prevent a 3-way deadlock between layoutreturn, open and state recovery
        SUNRPC: do not fail gss proc NULL calls with EACCES
        NFSv4: close needs to handle NFS4ERR_ADMIN_REVOKED
        NFSv4: Update list of irrecoverable errors on DELEGRETURN
        NFSv4 wait on recovery for async session errors
        NFS: Fix a warning in nfs_setsecurity
        NFS: Enabling v4.2 should not recompile nfsd and lockd
      29be6345
    • T
      ftrace: default to tilegx if ARCH=tile is specified · 2d8eedad
      Tony Lu 提交于
      This matches the existing behavior in arch/tile/Makefile for defconfig.
      
      Reported-by: fengguang.wu@intel.com
      Acked-by: NSteven Rostedt <rostedt@goodmis.org>
      Signed-off-by: NTony Lu <zlu@tilera.com>
      Signed-off-by: NChris Metcalf <cmetcalf@tilera.com>
      2d8eedad
    • S
      tracing: Only run synchronize_sched() at instance deletion time · 3ccb0123
      Steven Rostedt 提交于
      It has been reported that boot up with FTRACE_SELFTEST enabled can take a
      very long time. There can be stalls of over a minute.
      
      This was tracked down to the synchronize_sched() called when a system call
      event is disabled. As the self tests enable and disable thousands of events,
      this makes the synchronize_sched() get called thousands of times.
      
      The synchornize_sched() was added with d562aff9 "tracing: Add support
      for SOFT_DISABLE to syscall events" which caused this regression (added
      in 3.13-rc1).
      
      The synchronize_sched() is to protect against the events being accessed
      when a tracer instance is being deleted. When an instance is being deleted
      all the events associated to it are unregistered. The synchronize_sched()
      makes sure that no more users are running when it finishes.
      
      Instead of calling synchronize_sched() for all syscall events, we only
      need to call it once, after the events are unregistered and before the
      instance is deleted. The event_mutex is held during this action to
      prevent new users from enabling events.
      
      Link: http://lkml.kernel.org/r/20131203124120.427b9661@gandalf.local.homeReported-by: NPetr Mladek <pmladek@suse.cz>
      Acked-by: NTom Zanussi <tom.zanussi@linux.intel.com>
      Acked-by: NPetr Mladek <pmladek@suse.cz>
      Tested-by: NPetr Mladek <pmladek@suse.cz>
      Signed-off-by: NSteven Rostedt <rostedt@goodmis.org>
      3ccb0123