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-05-05 13:32:49 -06:00
2015-02-21 13:28:45 -08:00
2015-04-22 07:59:39 +10:00
2015-04-22 07:59:39 +10:00
2014-11-10 15:25:30 -05:00
2014-11-10 15:25:30 -05:00
2013-11-23 22:33:55 -08:00
2015-02-09 13:06:48 -05:00
2014-01-14 23:23:03 -05:00
2014-01-14 23:23:04 -05:00
2014-11-10 15:25:30 -05:00
2015-01-28 09:59:20 -05:00
2014-11-10 15:25:30 -05:00
2013-11-11 11:37:50 -05:00
2015-03-31 12:03:48 -04:00
2014-01-16 13:44:11 -05:00
2014-01-16 13:44:11 -05:00
2015-05-05 13:32:47 -06:00
2015-04-16 22:00:50 -04:00
2015-04-15 12:10:21 -04:00
2014-06-03 13:44:08 -04:00
2013-11-23 22:33:47 -08:00
2015-02-27 14:53:32 -05:00
2015-04-30 10:25:21 -04:00
2013-11-23 22:33:47 -08:00
2015-04-15 12:10:20 -04:00
2015-04-15 12:10:20 -04:00
2015-04-15 12:10:24 -04:00
2015-04-15 12:10:17 -04:00
2015-05-05 13:32:47 -06:00
2015-02-12 16:36:31 -08:00
2013-11-23 22:33:47 -08:00
2015-02-09 13:06:49 -05:00
2015-05-05 13:32:47 -06:00
2014-12-08 21:10:03 -08:00
2014-10-10 22:05:18 -04:00
2014-08-01 12:30:37 -04:00
2015-04-15 12:10:17 -04:00
2015-04-15 12:10:23 -04:00
2015-02-09 13:06:47 -05:00
2015-02-09 13:06:49 -05:00
2015-02-09 13:06:49 -05:00
2015-05-05 13:32:47 -06:00
2015-04-15 12:10:22 -04:00
2014-07-10 16:44:14 -04:00
2015-04-30 10:25:21 -04:00
2015-04-15 12:10:17 -04:00
2015-02-04 08:35:52 +11:00
2015-04-24 09:28:01 -07:00
2015-02-04 08:35:52 +11:00
2015-04-24 09:28:01 -07:00
2015-04-22 07:59:39 +10:00
2015-04-22 07:59:39 +10:00
2015-04-22 08:00:40 +10:00
2015-04-22 08:00:40 +10:00
2015-02-04 08:35:52 +11:00
2015-04-22 08:00:41 +10:00
2015-04-22 08:00:40 +10:00
2015-02-04 08:35:52 +11:00
2015-04-22 08:00:43 +10:00
2015-04-22 08:00:43 +10:00
2015-04-22 08:00:40 +10:00
2015-02-04 08:35:52 +11:00