|
@@ -345,8 +345,7 @@ static void nilfs_end_bio_write(struct bio *bio, int err)
|
|
|
|
|
|
if (err == -EOPNOTSUPP) {
|
|
|
set_bit(BIO_EOPNOTSUPP, &bio->bi_flags);
|
|
|
- bio_put(bio);
|
|
|
- /* to be detected by submit_seg_bio() */
|
|
|
+ /* to be detected by nilfs_segbuf_submit_bio() */
|
|
|
}
|
|
|
|
|
|
if (!uptodate)
|
|
@@ -377,12 +376,12 @@ static int nilfs_segbuf_submit_bio(struct nilfs_segment_buffer *segbuf,
|
|
|
bio->bi_private = segbuf;
|
|
|
bio_get(bio);
|
|
|
submit_bio(mode, bio);
|
|
|
+ segbuf->sb_nbio++;
|
|
|
if (bio_flagged(bio, BIO_EOPNOTSUPP)) {
|
|
|
bio_put(bio);
|
|
|
err = -EOPNOTSUPP;
|
|
|
goto failed;
|
|
|
}
|
|
|
- segbuf->sb_nbio++;
|
|
|
bio_put(bio);
|
|
|
|
|
|
wi->bio = NULL;
|