Alexey Gladkov
b6c3365289
Use atomic_t for ucounts reference counting
...
The current implementation of the ucounts reference counter requires the
use of spin_lock. We're going to use get_ucounts() in more performance
critical areas like a handling of RLIMIT_SIGPENDING.
Now we need to use spin_lock only if we want to change the hashtable.
v10:
* Always try to put ucounts in case we cannot increase ucounts->count.
This will allow to cover the case when all consumers will return
ucounts at once.
v9:
* Use a negative value to check that the ucounts->count is close to
overflow.
Signed-off-by: Alexey Gladkov <legion@kernel.org>
Link: https://lkml.kernel.org/r/94d1dbecab060a6b116b0a2d1accd8ca1bbb4f5f.1619094428.git.legion@kernel.org
Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
2021-04-30 14:14:01 -05:00
..
2021-04-16 23:52:01 +02:00
2021-02-23 13:39:45 -08:00
2021-01-06 17:39:38 +01:00
2021-02-26 09:41:05 -08:00
2021-02-26 13:59:32 -08:00
2021-04-19 20:02:57 +02:00
2021-03-06 12:52:39 +01:00
2021-04-19 15:08:49 -07:00
2021-03-21 00:17:52 +01:00
2021-01-04 14:39:07 -08:00
2021-02-08 12:22:08 +01:00
2021-04-17 13:40:50 +02:00
2021-03-23 19:53:48 +01:00
2021-02-22 13:43:55 +01:00
2021-02-21 12:35:04 -08:00
2021-03-06 12:40:21 +01:00
2021-03-16 22:13:10 +01:00
2021-04-20 14:38:35 -07:00
2020-03-25 11:50:48 +01:00
2020-12-15 22:46:15 -08:00
2020-07-16 12:35:15 -07:00
2021-02-23 10:25:27 -05:00
2020-12-03 14:58:35 +01:00
2020-12-03 14:58:35 +01:00
2021-01-15 11:58:10 -05:00
2020-08-17 20:26:58 -04:00
2020-08-23 17:36:59 -05:00
2021-02-23 13:39:45 -08:00
2020-07-30 11:15:58 -07:00
2021-01-24 14:27:16 +01:00
2020-08-23 17:36:59 -05:00
2020-06-11 15:14:36 +02:00
2020-09-01 09:58:03 +02:00
2021-01-06 16:24:59 -08:00
2020-12-15 22:46:18 -08:00
2020-04-15 11:21:54 +02:00
2021-04-30 14:14:00 -05:00
2020-12-30 19:36:54 -07:00
2020-04-07 10:43:42 -07:00
2020-12-15 22:46:19 -08:00
2021-04-30 14:14:00 -05:00
2021-03-27 14:09:10 -06:00
2021-03-16 22:13:10 +01:00
2020-06-06 23:42:01 +09:00
2021-02-26 09:41:03 -08:00
2020-11-02 12:14:19 -08:00
2020-11-24 16:47:49 +01:00
2021-03-19 13:16:44 +01:00
2021-02-08 12:24:04 +01:00
2020-12-15 19:36:48 -08:00
2021-02-17 14:12:24 +01:00
2020-11-02 18:00:20 -08:00
2021-02-21 09:29:23 -08:00
2021-02-10 15:49:38 -05:00
2021-02-22 12:33:26 +00:00
2020-10-05 13:37:03 +02:00
2020-08-12 10:58:01 -07:00
2021-02-19 14:57:12 -05:00
2021-01-24 10:09:20 -08:00
2020-04-27 02:07:40 -04:00
2021-02-16 09:59:41 +01:00
2021-01-19 10:24:45 +01:00
2021-01-19 10:24:45 +01:00
2021-02-10 16:57:04 +01:00
2020-09-01 09:58:03 +02:00
2020-12-14 16:40:27 -08:00
2020-09-04 17:51:55 +10:00
2020-11-14 11:26:04 -08:00
2020-12-17 13:01:31 -08:00
2020-12-14 16:40:27 -08:00
2020-12-15 19:36:48 -08:00
2021-03-27 14:09:10 -06:00
2020-10-16 11:11:19 -07:00
2021-03-18 16:58:02 +01:00
2020-07-27 14:31:12 -04:00
2020-12-15 22:46:18 -08:00
2020-11-25 18:52:35 +01:00
2021-01-12 14:26:31 +01:00
2021-01-04 13:53:41 -08:00
2020-12-01 10:30:28 +00:00
2021-02-10 12:40:11 -08:00
2021-03-27 14:09:11 -06:00
2021-02-17 14:12:42 +01:00
2021-01-22 15:09:42 +01:00
2021-02-10 23:34:16 +01:00
2020-09-19 13:13:39 -07:00
2020-09-18 14:24:16 +01:00
2021-03-19 13:16:44 +01:00
2020-11-27 11:10:50 +01:00
2020-12-19 11:18:38 -08:00
2021-04-30 14:14:00 -05:00
2021-02-26 09:41:03 -08:00
2020-12-12 09:17:38 -07:00
2020-11-16 08:08:54 -08:00
2021-01-06 17:17:22 -08:00
2021-02-09 12:27:29 -05:00
2021-04-30 14:14:01 -05:00
2020-10-06 10:31:52 -07:00
2021-04-30 14:14:00 -05:00
2020-08-19 14:14:12 +02:00
2021-03-19 22:23:19 +01:00
2020-04-27 02:07:40 -04:00
2020-08-19 14:13:20 +02:00
2021-01-26 11:16:34 +00:00
2021-04-04 13:26:49 -04:00
2021-04-04 13:26:49 -04:00