> -----Original Message----- > From: [email protected] > [mailto:[email protected]] On Behalf Of Qu Wenruo > Sent: Thursday, October 26, 2017 3:29 PM > To: [email protected] > Cc: [email protected] > Subject: [PATCH] btrfs-progs: convert: Open the fs readonly for rollback > > For rollback, we only needs to open the fs to check if it meets the condition > to rollback. > And this RW read makes us failed to rollback btrfs with v2 space cache. > > In fact, we don't even start a transaction during rollback. > > So open the fs RO for rollback, to avoid v2 space cache problem. > > Reported-by: Gu Jinxiang <[email protected]> > Signed-off-by: Qu Wenruo <[email protected]> > --- > convert/main.c | 8 +++++++- > 1 file changed, 7 insertions(+), 1 deletion(-) > > diff --git a/convert/main.c b/convert/main.c index 882daf7ced53..3ec10f233915 > 100644 > --- a/convert/main.c > +++ b/convert/main.c > @@ -1529,7 +1529,13 @@ static int do_rollback(const char *devname) > goto free_mem; > } > fsize = lseek(fd, 0, SEEK_END); > - root = open_ctree_fd(fd, devname, 0, OPEN_CTREE_WRITES); > + > + /* > + * For rollback, we don't really need write anything into btrfs, > + * so open it RO. > + * The write part will happen after we close the btrfs. > + */ > + root = open_ctree_fd(fd, devname, 0, 0); > if (!root) { > error("unable to open ctree"); > ret = -EIO;
Reviewed-by: Gu JinXiang <[email protected]> Tested-by: Gu JinXiang <[email protected]> > -- > 2.14.3 > > -- > To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in the > body of a message to [email protected] > More majordomo info at http://vger.kernel.org/majordomo-info.html > N�Р骒r��y����b�X�肚�v�^�)藓{.n�+�伐�{�n谶�)��骅w*jg�报�����茛j/�赇z罐���2���ㄨ��&�)摺�a囤���G���h��j:+v���w��佶
