1. 05 3月, 2011 3 次提交
    • A
      ipx: remove the BKL · b0d0d915
      Arnd Bergmann 提交于
      This replaces all instances of lock_kernel in the
      IPX code with lock_sock. As far as I can tell, this
      is safe to do, because there is no global state
      that needs to be locked in IPX, and the code does
      not recursively take the lock or sleep indefinitely
      while holding it.
      
      Compile-tested only.
      Signed-off-by: NArnd Bergmann <arnd@arndb.de>
      Acked-by: NDavid S. Miller <davem@davemloft.net>
      Cc: Arnaldo Carvalho de Melo <acme@ghostprotocols.net>
      Cc: netdev@vger.kernel.org
      b0d0d915
    • A
      appletalk: remove the BKL · 60d9f461
      Arnd Bergmann 提交于
      This changes appletalk to use lock_sock instead of
      lock_kernel for serialization. I tried to make sure
      that we don't hold the socket lock during sleeping
      functions, but I did not try to prove whether the
      locks are necessary in the first place.
      
      Compile-tested only.
      Signed-off-by: NArnd Bergmann <arnd@arndb.de>
      Acked-by: NDavid S. Miller <davem@davemloft.net>
      Cc: Arnaldo Carvalho de Melo <acme@ghostprotocols.net>
      Cc: David Miller <davem@davemloft.net>
      Cc: netdev@vger.kernel.org
      60d9f461
    • A
      x25: remove the BKL · 77b22836
      Arnd Bergmann 提交于
      This replaces all instances of lock_kernel in x25
      with lock_sock, taking care to release the socket
      lock around sleeping functions (sock_alloc_send_skb
      and skb_recv_datagram). It is not clear whether
      this is a correct solution, but it seem to be what
      other protocols do in the same situation.
      
      Includes a fix suggested by Eric Dumazet.
      Signed-off-by: NArnd Bergmann <arnd@arndb.de>
      Acked-by: NDavid S. Miller <davem@davemloft.net>
      Tested-by: NAndrew Hendry <andrew.hendry@gmail.com>
      Cc: linux-x25@vger.kernel.org
      Cc: netdev@vger.kernel.org
      Cc: Eric Dumazet <eric.dumazet@gmail.com>
      77b22836
  2. 03 3月, 2011 2 次提交
    • A
      ufs: remove the BKL · 788257d6
      Arnd Bergmann 提交于
      This introduces a new per-superblock mutex in UFS to replace
      the big kernel lock. I have been careful to avoid nested
      calls to lock_ufs and to get the lock order right with
      respect to other mutexes, in particular lock_super.
      
      I did not make any attempt to prove that the big kernel
      lock is not needed in a particular place in the code,
      which is very possible.
      
      The mutex has a significant performance impact, so it is only
      used on SMP or PREEMPT configurations.
      
      As Nick Piggin noticed, any allocation inside of the lock
      may end up deadlocking when we get to ufs_getfrag_block
      in the reclaim task, so we now use GFP_NOFS.
      Signed-off-by: NArnd Bergmann <arnd@arndb.de>
      Tested-by: NNick Bowler <nbowler@elliptictech.com>
      Cc: Evgeniy Dushistov <dushistov@mail.ru>
      Cc: Nick Piggin <npiggin@gmail.com>
      788257d6
    • A
      hpfs: remove the BKL · 9a311b96
      Arnd Bergmann 提交于
      This removes the BKL in hpfs in a rather awful
      way, by making the code only work on uniprocessor
      systems without kernel preemption, as suggested
      by Andi Kleen.
      
      The HPFS code probably has close to zero remaining
      users on current kernels, all archeological uses of
      the file system can probably be done with the significant
      restrictions.
      
      The hpfs_lock/hpfs_unlock functions are left in the
      code, sincen Mikulas has indicated that he is still
      interested in fixing it in a better way.
      Signed-off-by: NArnd Bergmann <arnd@arndb.de>
      Acked-by: NAndi Kleen <ak@linux.intel.com>
      Cc: Mikulas Patocka <mikulas@artax.karlin.mff.cuni.cz>
      Cc: linux-fsdevel@vger.kernel.org
      9a311b96
  3. 02 3月, 2011 3 次提交
  4. 22 2月, 2011 32 次提交