Message ID | 1427296070-8472-8-git-send-email-axboe@fb.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
> -----Original Message----- > From: Jens Axboe [mailto:axboe@fb.com] > Sent: Wednesday, March 25, 2015 8:08 AM > To: linux-kernel@vger.kernel.org; linux-fsdevel@vger.kernel.org > Cc: Ming Lin-SSI; david@fromorbit.com; Jens Axboe > Subject: [PATCH 7/7] ext4: add support for write stream IDs > > Signed-off-by: Jens Axboe <axboe@fb.com> > --- > fs/ext4/page-io.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/fs/ext4/page-io.c b/fs/ext4/page-io.c index > b24a2541a9ba..f642d0b87a32 100644 > --- a/fs/ext4/page-io.c > +++ b/fs/ext4/page-io.c > @@ -390,6 +390,7 @@ submit_and_retry: > ret = io_submit_init_bio(io, bh); > if (ret) > return ret; > + bio_set_streamid(io->io_bio, inode_streamid(inode)); For "writeback" and "ordered" journal mode, it should be OK. But for "journal" journal mode, Step1: data written to journal Step2: data written from journal to fs Do we need other code to carry stream_id in step2? Thanks, Ming > } > ret = bio_add_page(io->io_bio, bh->b_page, bh->b_size, > bh_offset(bh)); > if (ret != bh->b_size) > -- > 1.9.1 -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On 03/26/2015 02:34 PM, Ming Lin-SSI wrote: >> -----Original Message----- >> From: Jens Axboe [mailto:axboe@fb.com] >> Sent: Wednesday, March 25, 2015 8:08 AM >> To: linux-kernel@vger.kernel.org; linux-fsdevel@vger.kernel.org >> Cc: Ming Lin-SSI; david@fromorbit.com; Jens Axboe >> Subject: [PATCH 7/7] ext4: add support for write stream IDs >> >> Signed-off-by: Jens Axboe <axboe@fb.com> >> --- >> fs/ext4/page-io.c | 1 + >> 1 file changed, 1 insertion(+) >> >> diff --git a/fs/ext4/page-io.c b/fs/ext4/page-io.c index >> b24a2541a9ba..f642d0b87a32 100644 >> --- a/fs/ext4/page-io.c >> +++ b/fs/ext4/page-io.c >> @@ -390,6 +390,7 @@ submit_and_retry: >> ret = io_submit_init_bio(io, bh); >> if (ret) >> return ret; >> + bio_set_streamid(io->io_bio, inode_streamid(inode)); > > For "writeback" and "ordered" journal mode, it should be OK. > > But for "journal" journal mode, > Step1: data written to journal > Step2: data written from journal to fs > > Do we need other code to carry stream_id in step2? For either mode, arguably the journal should be written with its own stream ID. But that's a subject that the filesystem guys need to tackle, once the support is one. For the case of maintaining stream ID when in data=journal mode and copying the data out, I doubt that a use case that anyone would care about. If they do, the ext4/3 guys would need to sort that out. I'll update the commit message to reflect that, it is a bit under explained at the moment.
diff --git a/fs/ext4/page-io.c b/fs/ext4/page-io.c index b24a2541a9ba..f642d0b87a32 100644 --- a/fs/ext4/page-io.c +++ b/fs/ext4/page-io.c @@ -390,6 +390,7 @@ submit_and_retry: ret = io_submit_init_bio(io, bh); if (ret) return ret; + bio_set_streamid(io->io_bio, inode_streamid(inode)); } ret = bio_add_page(io->io_bio, bh->b_page, bh->b_size, bh_offset(bh)); if (ret != bh->b_size)
Signed-off-by: Jens Axboe <axboe@fb.com> --- fs/ext4/page-io.c | 1 + 1 file changed, 1 insertion(+)