1. 15 3月, 2010 3 次提交
    • N
      sunrpc: never return expired entries in sunrpc_cache_lookup · d202cce8
      NeilBrown 提交于
      If sunrpc_cache_lookup finds an expired entry, remove it from
      the cache and return a freshly created non-VALID entry instead.
      This ensures that we only ever get a usable entry, or an
      entry that will become usable once an update arrives.
      i.e. we will never need to repeat the lookup.
      
      This allows us to remove the 'is_expired' test from cache_check
      (i.e. from cache_is_valid).  cache_check should never get an expired
      entry as 'lookup' will never return one.  If it does happen - due to
      inconvenient timing - then just accept it as still valid, it won't be
      very much past it's use-by date.
      Signed-off-by: NNeilBrown <neilb@suse.de>
      Signed-off-by: NJ. Bruce Fields <bfields@citi.umich.edu>
      d202cce8
    • N
      sunrpc/cache: factor out cache_is_expired · 2f50d8b6
      NeilBrown 提交于
      This removes a tiny bit of code duplication, but more important
      prepares for following patch which will perform the expiry check in
      cache_lookup and the rest of the validity check in cache_check.
      Signed-off-by: NNeilBrown <neilb@suse.de>
      Signed-off-by: NJ. Bruce Fields <bfields@citi.umich.edu>
      2f50d8b6
    • N
      sunrpc: don't keep expired entries in the auth caches. · 3af4974e
      NeilBrown 提交于
      currently expired entries remain in the auth caches as long
      as there is a reference.
      This was needed long ago when the auth_domain cache used the same
      cache infrastructure.  But since that (being a very different sort
      of cache) was separated, this test is no longer needed.
      
      So remove the test on refcnt and tidy up the surrounding code.
      
      This allows the cache_dequeue call (which needed to be there to
      drop a potentially awkward reference) can be moved outside of the
      spinlock which is a better place for it.
      Signed-off-by: NNeilBrown <neilb@suse.de>
      Signed-off-by: NJ. Bruce Fields <bfields@citi.umich.edu>
      3af4974e
  2. 10 3月, 2010 1 次提交
  3. 09 3月, 2010 2 次提交
    • L
      Linux 2.6.34-rc1 · 57d54889
      Linus Torvalds 提交于
      57d54889
    • L
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6 · e1015418
      Linus Torvalds 提交于
      * git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6: (62 commits)
        msi-laptop: depends on RFKILL
        msi-laptop: Detect 3G device exists by standard ec command
        msi-laptop: Add resume method for set the SCM load again
        msi-laptop: Support some MSI 3G netbook that is need load SCM
        msi-laptop: Add threeg sysfs file for support query 3G state by standard 66/62 ec command
        msi-laptop: Support standard ec 66/62 command on MSI notebook and nebook
        Driver core: create lock/unlock functions for struct device
        sysfs: fix for thinko with sysfs_bin_attr_init()
        sysfs: Kill unused sysfs_sb variable.
        sysfs: Pass super_block to sysfs_get_inode
        driver core: Use sysfs_rename_link in device_rename
        sysfs: Implement sysfs_rename_link
        sysfs: Pack sysfs_dirent more tightly.
        sysfs: Serialize updates to the vfs inode
        sysfs: windfarm: init sysfs attributes
        sysfs: Use sysfs_attr_init and sysfs_bin_attr_init on module dynamic attributes
        sysfs: Document sysfs_attr_init and sysfs_bin_attr_init
        sysfs: Use sysfs_attr_init and sysfs_bin_attr_init on dynamic attributes
        sysfs: Use one lockdep class per sysfs attribute.
        sysfs: Only take active references on attributes.
        ...
      e1015418
  4. 08 3月, 2010 34 次提交