1. 07 1月, 2011 5 次提交
  2. 18 11月, 2010 1 次提交
  3. 02 10月, 2010 1 次提交
  4. 11 8月, 2010 1 次提交
    • R
      param: use ops in struct kernel_param, rather than get and set fns directly · 9bbb9e5a
      Rusty Russell 提交于
      This is more kernel-ish, saves some space, and also allows us to
      expand the ops without breaking all the callers who are happy for the
      new members to be NULL.
      
      The few places which defined their own param types are changed to the
      new scheme (more which crept in recently fixed in following patches).
      
      Since we're touching them anyway, we change get() and set() to take a
      const struct kernel_param (which they really are).  This causes some
      harmless warnings until we fix them (in following patches).
      
      To reduce churn, module_param_call creates the ops struct so the callers
      don't have to change (and casts the functions to reduce warnings).
      The modern version which takes an ops struct is called module_param_cb.
      Signed-off-by: NRusty Russell <rusty@rustcorp.com.au>
      Reviewed-by: NTakashi Iwai <tiwai@suse.de>
      Tested-by: NPhil Carmody <ext-phil.2.carmody@nokia.com>
      Cc: "David S. Miller" <davem@davemloft.net>
      Cc: Ville Syrjala <syrjala@sci.fi>
      Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com>
      Cc: Alessandro Rubini <rubini@ipvvis.unipv.it>
      Cc: Michal Januszewski <spock@gentoo.org>
      Cc: Trond Myklebust <Trond.Myklebust@netapp.com>
      Cc: "J. Bruce Fields" <bfields@fieldses.org>
      Cc: Neil Brown <neilb@suse.de>
      Cc: linux-kernel@vger.kernel.org
      Cc: linux-input@vger.kernel.org
      Cc: linux-fbdev-devel@lists.sourceforge.net
      Cc: linux-nfs@vger.kernel.org
      Cc: netdev@vger.kernel.org
      9bbb9e5a
  5. 27 1月, 2010 1 次提交
  6. 06 12月, 2009 1 次提交
  7. 04 12月, 2009 1 次提交
  8. 10 8月, 2009 1 次提交
  9. 18 6月, 2009 5 次提交
  10. 29 3月, 2009 4 次提交
  11. 24 12月, 2008 1 次提交
  12. 18 10月, 2008 1 次提交
  13. 30 9月, 2008 1 次提交
  14. 10 7月, 2008 2 次提交
  15. 17 5月, 2008 1 次提交
  16. 24 4月, 2008 3 次提交
  17. 22 2月, 2008 1 次提交
  18. 21 2月, 2008 1 次提交
    • J
      NFS: flush signals before taking down callback thread · 1227a74e
      Jeff Layton 提交于
      Now that the reference counting on the callback thread is working as
      expected, it uncovers another problem.  Peter Staubach noticed while
      testing that patch on an older kernel that he would occasionally see
      this printk in rpc_register fire:
      
          "RPC: failed to contact portmap (errno -512).
      
      The NFSv4 callback thread is signaled by nfs_callback_down(), but never
      flushes that signal. All of the shutdown processing is done with that
      signal pending. This makes it fail the call to unregister the port with
      the portmapper.
      
      In actuality, this rpc_register call isn't necessary at all since the
      port isn't actually registered with the portmapper anymore. Regardless,
      there doesn't seem to be any reason to leave the signal pending while
      the thread is being shut down and flushing it should generally silence
      that printk.
      Signed-off-by: NJeff Layton <jlayton@redhat.com>
      Signed-off-by: NTrond Myklebust <Trond.Myklebust@netapp.com>
      1227a74e
  19. 14 2月, 2008 1 次提交
    • J
      NFS: fix reference counting for NFSv4 callback thread · 8e60029f
      Jeff Layton 提交于
      The reference counting for the NFSv4 callback thread stays artificially
      high. When this thread comes down, it doesn't properly tear down the
      svc_serv, causing a memory leak. In my testing on an older kernel on
      x86_64, memory would leak out of the 8k kmalloc slab. So, we're leaking
      at least a page of memory every time the thread comes down.
      
      svc_create() creates the svc_serv with a sv_nrthreads count of 1, and
      then svc_create_thread() increments that count. Whenever the callback
      thread is started it has a sv_nrthreads count of 2. When coming down, it
      calls svc_exit_thread() which decrements that count and if it hits 0, it
      tears everything down. That never happens here since the count is always
      at 2 when the thread exits.
      
      The problem is that nfs_callback_up() should be calling svc_destroy() on
      the svc_serv on both success and failure. This is how lockd_up_proto()
      handles the reference counting, and doing that here fixes the leak.
      Signed-off-by: NJeff Layton <jlayton@redhat.com>
      Signed-off-by: NTrond Myklebust <Trond.Myklebust@netapp.com>
      8e60029f
  20. 02 2月, 2008 1 次提交
  21. 30 1月, 2008 2 次提交
  22. 18 7月, 2007 1 次提交
    • R
      Freezer: make kernel threads nonfreezable by default · 83144186
      Rafael J. Wysocki 提交于
      Currently, the freezer treats all tasks as freezable, except for the kernel
      threads that explicitly set the PF_NOFREEZE flag for themselves.  This
      approach is problematic, since it requires every kernel thread to either
      set PF_NOFREEZE explicitly, or call try_to_freeze(), even if it doesn't
      care for the freezing of tasks at all.
      
      It seems better to only require the kernel threads that want to or need to
      be frozen to use some freezer-related code and to remove any
      freezer-related code from the other (nonfreezable) kernel threads, which is
      done in this patch.
      
      The patch causes all kernel threads to be nonfreezable by default (ie.  to
      have PF_NOFREEZE set by default) and introduces the set_freezable()
      function that should be called by the freezable kernel threads in order to
      unset PF_NOFREEZE.  It also makes all of the currently freezable kernel
      threads call set_freezable(), so it shouldn't cause any (intentional)
      change of behaviour to appear.  Additionally, it updates documentation to
      describe the freezing of tasks more accurately.
      
      [akpm@linux-foundation.org: build fixes]
      Signed-off-by: NRafael J. Wysocki <rjw@sisk.pl>
      Acked-by: NNigel Cunningham <nigel@nigel.suspend2.net>
      Cc: Pavel Machek <pavel@ucw.cz>
      Cc: Oleg Nesterov <oleg@tv-sign.ru>
      Cc: Gautham R Shenoy <ego@in.ibm.com>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      83144186
  23. 13 2月, 2007 3 次提交