Kent Overstreet
c4bd3491b1
six locks: Simplify dispatch
...
Originally, we used inlining/flattening to cause the compiler to
generate different versions of lock/trylock/relock/unlock for each lock
type - read, intent, and write. This made the individual functions
smaller and let the compiler eliminate table lookups: however, as the
code has gotten more complicated these optimizations have gotten less
worthwhile, and all the tricky inlining and dispatching made the code
less readable.
Text size: 11015 bytes -> 7467 bytes, and benchmarks show no loss of
performance.
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2023-10-22 17:10:02 -04:00
..
2023-10-22 17:09:44 -04:00
2023-10-22 17:09:12 -04:00
2023-10-22 17:10:01 -04:00
2023-10-22 17:10:00 -04:00
2023-10-22 17:10:00 -04:00
2023-10-22 17:09:57 -04:00
2023-10-22 17:09:56 -04:00
2023-10-22 17:10:00 -04:00
2023-10-22 17:10:00 -04:00
2023-10-22 17:09:51 -04:00
2023-10-22 17:10:01 -04:00
2023-10-22 17:09:45 -04:00
2023-10-22 17:10:01 -04:00
2023-10-22 17:09:45 -04:00
2023-10-22 17:09:45 -04:00
2023-10-22 17:10:01 -04:00
2023-10-22 17:10:00 -04:00
2023-10-22 17:10:01 -04:00
2023-10-22 17:09:19 -04:00
2023-10-22 17:10:01 -04:00
2023-10-22 17:10:00 -04:00
2023-10-22 17:10:01 -04:00
2023-10-22 17:09:56 -04:00
2023-10-22 17:10:01 -04:00
2023-10-22 17:09:56 -04:00
2023-10-22 17:10:01 -04:00
2023-10-22 17:09:31 -04:00
2023-10-22 17:10:00 -04:00
2023-10-22 17:09:48 -04:00
2023-10-22 17:10:01 -04:00
2023-10-22 17:10:01 -04:00
2023-10-22 17:10:01 -04:00
2023-10-22 17:09:56 -04:00
2023-10-22 17:10:01 -04:00
2023-10-22 17:10:01 -04:00
2023-10-22 17:10:00 -04:00
2023-10-22 17:09:58 -04:00
2023-10-22 17:09:54 -04:00
2023-10-22 17:10:01 -04:00
2023-10-22 17:10:01 -04:00
2023-10-22 17:09:50 -04:00
2023-10-22 17:09:58 -04:00
2023-10-22 17:09:50 -04:00
2023-10-22 17:09:53 -04:00
2023-10-22 17:09:22 -04:00
2023-10-22 17:09:57 -04:00
2023-10-22 17:09:22 -04:00
2023-10-22 17:10:01 -04:00
2023-10-22 17:10:01 -04:00
2023-10-22 17:09:47 -04:00
2023-10-22 17:09:57 -04:00
2023-10-22 17:09:51 -04:00
2023-10-22 17:08:52 -04:00
2023-10-22 17:09:57 -04:00
2023-10-22 17:08:43 -04:00
2023-10-22 17:09:57 -04:00
2023-10-22 17:09:57 -04:00
2023-10-22 17:09:32 -04:00
2023-10-22 17:09:59 -04:00
2023-10-22 17:10:00 -04:00
2023-10-22 17:09:52 -04:00
2023-10-22 17:09:56 -04:00
2023-10-22 17:09:56 -04:00
2023-10-22 17:10:00 -04:00
2023-10-22 17:10:00 -04:00
2023-10-22 17:09:57 -04:00
2023-10-22 17:09:39 -04:00
2023-10-22 17:09:54 -04:00
2023-10-22 17:10:00 -04:00
2023-10-22 17:10:00 -04:00
2023-10-22 17:09:45 -04:00
2023-10-22 17:10:01 -04:00
2023-10-22 17:10:00 -04:00
2023-10-22 17:10:00 -04:00
2023-10-22 17:09:50 -04:00
2023-10-22 17:09:10 -04:00
2023-10-22 17:08:29 -04:00
2023-10-22 17:10:00 -04:00
2023-10-22 17:10:00 -04:00
2023-10-22 17:09:21 -04:00
2023-10-22 17:09:45 -04:00
2023-10-22 17:09:44 -04:00
2023-10-22 17:09:15 -04:00
2023-10-22 17:10:01 -04:00
2023-10-22 17:09:32 -04:00
2023-10-22 17:09:57 -04:00
2023-10-22 17:08:07 -04:00
2023-10-22 17:09:59 -04:00
2023-10-22 17:09:57 -04:00
2023-10-22 17:10:01 -04:00
2023-10-22 17:08:59 -04:00
2023-10-22 17:10:00 -04:00
2023-10-22 17:10:00 -04:00
2023-10-22 17:09:57 -04:00
2023-10-22 17:10:01 -04:00
2023-10-22 17:09:57 -04:00
2023-10-22 17:10:01 -04:00
2023-10-22 17:09:55 -04:00
2023-10-22 17:09:58 -04:00
2023-10-22 17:09:02 -04:00
2023-10-22 17:09:57 -04:00
2023-10-22 17:09:56 -04:00
2023-10-22 17:09:57 -04:00
2023-10-22 17:09:21 -04:00
2023-10-22 17:09:56 -04:00
2023-10-22 17:09:58 -04:00
2023-10-22 17:09:49 -04:00
2023-10-22 17:09:43 -04:00
2023-10-22 17:09:54 -04:00
2023-10-22 17:09:54 -04:00
2023-10-22 17:10:00 -04:00
2023-10-22 17:10:00 -04:00
2023-10-22 17:09:51 -04:00
2023-10-22 17:09:43 -04:00
2023-10-22 17:09:43 -04:00
2023-10-22 17:09:43 -04:00
2023-10-22 17:10:01 -04:00
2023-10-22 17:09:58 -04:00
2023-10-22 17:10:01 -04:00
2023-10-22 17:10:00 -04:00
2023-10-22 17:10:00 -04:00
2023-10-22 17:09:55 -04:00
2023-10-22 17:09:52 -04:00
2023-10-22 17:09:52 -04:00
2023-10-22 17:09:52 -04:00
2023-10-22 17:09:49 -04:00
2023-10-22 17:09:56 -04:00
2023-10-22 17:09:33 -04:00
2023-10-22 17:09:55 -04:00
2023-10-22 17:08:13 -04:00
2023-10-22 17:10:01 -04:00
2023-10-22 17:10:00 -04:00
2023-10-22 17:09:10 -04:00
2023-10-22 17:09:46 -04:00
2023-10-22 17:08:43 -04:00
2023-10-22 17:10:01 -04:00
2023-10-22 17:09:33 -04:00
2023-10-22 17:10:00 -04:00
2023-10-22 17:10:00 -04:00
2023-10-22 17:09:50 -04:00
2023-10-22 17:10:01 -04:00
2023-10-22 17:09:50 -04:00
2023-10-22 17:09:44 -04:00
2023-10-22 17:10:02 -04:00
2023-10-22 17:10:02 -04:00
2023-10-22 17:09:40 -04:00
2023-10-22 17:10:01 -04:00
2023-10-22 17:10:01 -04:00
2023-10-22 17:10:01 -04:00
2023-10-22 17:09:29 -04:00
2023-10-22 17:09:57 -04:00
2023-10-22 17:09:29 -04:00
2023-10-22 17:10:00 -04:00
2023-10-22 17:09:51 -04:00
2023-10-22 17:09:59 -04:00
2023-10-22 17:09:32 -04:00
2023-10-22 17:09:52 -04:00
2023-10-22 17:08:48 -04:00
2023-10-22 17:09:58 -04:00
2023-10-22 17:10:00 -04:00
2023-10-22 17:09:51 -04:00
2023-10-22 17:09:51 -04:00
2023-10-22 17:09:53 -04:00
2023-10-22 17:10:00 -04:00
2023-10-22 17:09:13 -04:00
2023-10-22 17:09:08 -04:00
2023-10-22 17:09:25 -04:00
2023-10-22 17:10:00 -04:00
2023-10-22 17:10:00 -04:00