diff options
author | Nick Piggin <npiggin@kernel.dk> | 2010-08-18 04:37:37 +1000 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2010-08-18 08:35:48 -0400 |
commit | 2dc91abe03d8ce6dd7f9251faffafca5f6b9e85d (patch) | |
tree | 1712fcb512310a80a7d2c7f92b30ce91750efaf1 /fs/file_table.c | |
parent | d996b62a8df1d935b01319bf8defb95b5709f7b8 (diff) | |
download | linux-2dc91abe03d8ce6dd7f9251faffafca5f6b9e85d.tar.bz2 |
lglock: introduce special lglock and brlock spin locks
lglock: introduce special lglock and brlock spin locks
This patch introduces "local-global" locks (lglocks). These can be used to:
- Provide fast exclusive access to per-CPU data, with exclusive access to
another CPU's data allowed but possibly subject to contention, and to provide
very slow exclusive access to all per-CPU data.
- Or to provide very fast and scalable read serialisation, and to provide
very slow exclusive serialisation of data (not necessarily per-CPU data).
Brlocks are also implemented as a short-hand notation for the latter use
case.
Thanks to Paul for local/global naming convention.
Cc: linux-kernel@vger.kernel.org
Cc: Al Viro <viro@ZenIV.linux.org.uk>
Cc: "Paul E. McKenney" <paulmck@linux.vnet.ibm.com>
Signed-off-by: Nick Piggin <npiggin@kernel.dk>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'fs/file_table.c')
0 files changed, 0 insertions, 0 deletions