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-16 13:53:32 -05:00
2015-04-22 09:18:17 -07:00
2015-04-22 09:18:17 -07:00
2015-04-22 09:04:39 -07:00
2015-04-17 15:32:07 -04:00
2015-04-26 13:36:02 -07:00
2015-04-24 08:23:45 -07:00
2015-05-05 08:42:06 -07:00
2015-04-22 09:18:17 -07:00
2015-04-26 13:36:02 -07:00
2015-04-21 09:42:58 -07:00
2015-04-30 16:48:53 -04:00
2015-04-24 08:46:18 -07:00
2015-04-16 14:01:03 -05:00
2015-04-22 09:04:39 -07:00
2015-04-13 17:07:21 -07:00
2015-04-15 10:02:42 +02:00
2015-04-26 13:44:46 -07:00
2015-04-23 16:55:50 +02:00
2015-04-27 10:10:19 -07:00
2015-05-05 08:42:06 -07:00
2015-04-20 15:16:25 -07:00