Files
Linux/include/linux
Nikanth Karthikesan d9c7d394a8 block: prevent possible io_context->refcount overflow
Currently io_context has an atomic_t(32-bit) as refcount.  In the case of
cfq, for each device against whcih a task does I/O, a reference to the
io_context would be taken.  And when there are multiple process sharing
io_contexts(CLONE_IO) would also have a reference to the same io_context.

Theoretically the possible maximum number of processes sharing the same
io_context + the number of disks/cfq_data referring to the same io_context
can overflow the 32-bit counter on a very high-end machine.

Even though it is an improbable case, let us make it atomic_long_t.

Signed-off-by: Nikanth Karthikesan <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Jens Axboe <[email protected]>
2009-06-10 23:07:15 +02:00
..
…
…
…
2009-04-07 10:23:34 +01:00
…
…
2009-03-31 09:56:26 +01:00
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
2009-04-01 08:59:23 -07:00
2009-04-01 08:59:23 -07:00
…
…
…
…
…
…
2009-05-02 15:36:10 -07:00
…
2009-04-23 10:06:35 +01:00
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
2009-04-03 14:53:32 -07:00
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
2009-04-03 14:53:32 -07:00
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
2009-05-22 20:25:34 +02:00
…
…
…
…
…
…
…
…
…
…
…
2009-04-03 09:48:29 -07:00
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
2009-05-22 20:28:35 +02:00
2009-04-02 19:04:53 -07:00
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
2009-04-13 15:04:29 -07:00
…
…
…
…
…
…
…
…
…
…
…
…
…
2009-04-21 13:41:48 -07:00
2009-04-21 13:41:48 -07:00
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
2009-05-09 10:49:41 -04:00
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
2009-04-06 16:06:26 +01:00
…
…
…
…
…
…
…
…
…
2009-04-28 07:37:28 +02:00
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
2009-04-02 19:04:48 -07:00
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
2009-04-03 17:41:23 -07:00
2009-04-01 13:28:15 -04:00
2009-04-03 17:41:12 -07:00
…
…
2009-04-30 15:32:11 +00:00
…
…
…
…
…
…
…
…
…
…
2009-04-01 08:59:13 -07:00
2009-04-01 08:59:13 -07:00
…
…
…
…
…
…
…
…
…
2009-04-13 14:51:23 -07:00
…
…
…
2009-04-24 08:54:21 +02:00
…
…
…
…
2009-04-01 08:59:13 -07:00
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
2009-05-09 10:49:41 -04:00
…
…
…
2009-04-01 08:59:24 -07:00
…
…
…
…
…
…
…
…
…
…
…
2009-04-08 14:33:38 -07:00
…
…
…
…
…
…
2009-04-13 15:04:29 -07:00
…
…
2009-04-03 12:23:06 +02:00
…
2009-04-21 19:40:00 -07:00
2009-04-03 12:23:06 +02:00
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
2009-05-12 11:11:48 +02:00
…
…
…
…
…
…
2009-04-01 08:59:15 -07:00
…
…
2009-04-02 19:05:01 -07:00
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
2009-04-17 10:50:27 -07:00
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…