Jens Axboe
dac56212e8
bio: skip atomic inc/dec of ->bi_cnt for most use cases
...
Struct bio has a reference count that controls when it can be freed.
Most uses cases is allocating the bio, which then returns with a
single reference to it, doing IO, and then dropping that single
reference. We can remove this atomic_dec_and_test() in the completion
path, if nobody else is holding a reference to the bio.
If someone does call bio_get() on the bio, then we flag the bio as
now having valid count and that we must properly honor the reference
count when it's being put.
Tested-by: Robert Elliott <elliott@hp.com >
Signed-off-by: Jens Axboe <axboe@fb.com >
2015-05-05 13:32:49 -06:00
..
2015-04-13 07:52:44 -07:00
2015-02-16 18:48:47 +01:00
2015-02-16 18:48:47 +01:00
2015-03-03 17:23:59 +01:00
2015-01-14 19:23:47 +01:00
2015-03-26 17:56:23 -07:00
2015-03-25 10:52:48 -07:00
2015-03-25 10:52:48 -07:00
2015-02-16 18:48:44 +01:00
2015-03-25 10:52:48 -07:00
2015-04-13 07:52:54 -07:00
2015-04-26 06:27:03 -07:00
2015-04-10 14:04:47 -07:00
2015-04-10 14:04:47 -07:00
2015-03-03 17:23:57 +01:00
2014-11-20 17:20:07 -08:00
2015-04-13 07:27:41 -07:00
2015-02-16 18:48:43 +01:00
2015-04-15 15:06:57 -04:00
2015-04-29 13:22:09 -07:00
2015-02-16 18:48:44 +01:00
2014-11-21 11:59:54 -08:00
2015-04-26 06:27:00 -07:00
2015-03-25 10:52:48 -07:00
2015-04-26 17:22:07 -07:00
2015-04-26 06:27:01 -07:00
2015-04-10 14:07:22 -07:00
2014-10-14 10:51:22 +02:00
2015-01-21 18:02:05 -08:00
2015-04-10 14:07:22 -07:00
2015-05-01 07:46:21 -07:00
2015-05-01 07:46:21 -07:00
2015-01-06 11:04:29 -08:00
2014-11-19 10:34:35 -08:00
2014-11-19 10:34:35 -08:00
2015-02-16 18:48:44 +01:00
2015-03-03 17:23:57 +01:00
2015-03-02 14:04:44 -08:00
2014-11-21 11:59:56 -08:00
2014-09-17 13:37:12 -07:00
2014-10-02 17:14:50 +02:00
2015-02-16 18:48:44 +01:00
2015-04-13 07:52:59 -07:00
2015-04-13 07:52:50 -07:00
2015-03-25 10:52:48 -07:00
2015-01-21 18:06:47 -08:00
2015-01-21 18:06:48 -08:00
2015-04-13 07:52:50 -07:00
2015-03-25 10:52:48 -07:00
2015-03-26 17:55:52 -07:00
2015-04-26 17:22:07 -07:00
2015-02-16 18:48:44 +01:00
2015-03-03 17:24:02 +01:00
2015-04-10 14:07:22 -07:00
2015-04-10 14:07:22 -07:00
2015-04-26 17:22:07 -07:00
2015-03-26 17:56:23 -07:00
2014-09-17 13:38:02 -07:00
2015-05-05 13:32:49 -06:00
2015-02-16 18:48:45 +01:00
2015-04-26 17:22:07 -07:00
2015-02-16 18:48:44 +01:00