* [f2fs-dev] [PATCH 1/1] f2fs-toos:fsck.f2fs Fix bad return value @ 2020-10-26 9:40 Robin Hsu via Linux-f2fs-devel 2020-10-28 6:57 ` Chao Yu 2020-11-03 2:52 ` Eric Biggers 0 siblings, 2 replies; 6+ messages in thread From: Robin Hsu via Linux-f2fs-devel @ 2020-10-26 9:40 UTC (permalink / raw) To: linux-f2fs-devel, jaegeuk, chao; +Cc: linux-kernel 'ret' should not have been used here: otherwise, it would be wrongly used as the error code and then be returned from main(). Signed-off-by: Robin Hsu <robinhsu@google.com> --- fsck/fsck.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/fsck/fsck.c b/fsck/fsck.c index f97e9fb..66e4e3f 100644 --- a/fsck/fsck.c +++ b/fsck/fsck.c @@ -3137,8 +3137,7 @@ int fsck_verify(struct f2fs_sb_info *sbi) char ans[255] = {0}; printf("\nDo you want to restore lost files into ./lost_found/? [Y/N] "); - ret = scanf("%s", ans); - ASSERT(ret >= 0); + ASSERT(scanf("%s", ans) >= 0); if (!strcasecmp(ans, "y")) { for (i = 0; i < fsck->nr_nat_entries; i++) { if (f2fs_test_bit(i, fsck->nat_area_bitmap)) -- 2.29.0.rc2.309.g374f81d7ae-goog _______________________________________________ Linux-f2fs-devel mailing list Linux-f2fs-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel ^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [f2fs-dev] [PATCH 1/1] f2fs-toos:fsck.f2fs Fix bad return value 2020-10-26 9:40 [f2fs-dev] [PATCH 1/1] f2fs-toos:fsck.f2fs Fix bad return value Robin Hsu via Linux-f2fs-devel @ 2020-10-28 6:57 ` Chao Yu 2020-11-02 16:09 ` Jaegeuk Kim 2020-11-03 2:52 ` Eric Biggers 1 sibling, 1 reply; 6+ messages in thread From: Chao Yu @ 2020-10-28 6:57 UTC (permalink / raw) To: Robin Hsu, linux-f2fs-devel, jaegeuk, chao; +Cc: linux-kernel On 2020/10/26 17:40, Robin Hsu via Linux-f2fs-devel wrote: > 'ret' should not have been used here: otherwise, it would be wrongly used > as the error code and then be returned from main(). > > Signed-off-by: Robin Hsu <robinhsu@google.com> BTW, how about changing 'ret = EXIT_ERR_CODE' to 'ret = FSCK_ERRORS_LEFT_UNCORRECTED', it's not critical though. Reviewed-by: Chao Yu <yuchao0@huawei.com> Thanks, _______________________________________________ Linux-f2fs-devel mailing list Linux-f2fs-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [f2fs-dev] [PATCH 1/1] f2fs-toos:fsck.f2fs Fix bad return value 2020-10-28 6:57 ` Chao Yu @ 2020-11-02 16:09 ` Jaegeuk Kim 0 siblings, 0 replies; 6+ messages in thread From: Jaegeuk Kim @ 2020-11-02 16:09 UTC (permalink / raw) To: Chao Yu; +Cc: linux-f2fs-devel, linux-kernel On 10/28, Chao Yu wrote: > On 2020/10/26 17:40, Robin Hsu via Linux-f2fs-devel wrote: > > 'ret' should not have been used here: otherwise, it would be wrongly used > > as the error code and then be returned from main(). > > > > Signed-off-by: Robin Hsu <robinhsu@google.com> > > BTW, how about changing 'ret = EXIT_ERR_CODE' to > 'ret = FSCK_ERRORS_LEFT_UNCORRECTED', it's not critical though. > > Reviewed-by: Chao Yu <yuchao0@huawei.com> I think it'd be good to go as is for now. :) > > Thanks, _______________________________________________ Linux-f2fs-devel mailing list Linux-f2fs-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [f2fs-dev] [PATCH 1/1] f2fs-toos:fsck.f2fs Fix bad return value 2020-10-26 9:40 [f2fs-dev] [PATCH 1/1] f2fs-toos:fsck.f2fs Fix bad return value Robin Hsu via Linux-f2fs-devel 2020-10-28 6:57 ` Chao Yu @ 2020-11-03 2:52 ` Eric Biggers 2020-11-03 3:23 ` Jaegeuk Kim 1 sibling, 1 reply; 6+ messages in thread From: Eric Biggers @ 2020-11-03 2:52 UTC (permalink / raw) To: Robin Hsu; +Cc: jaegeuk, linux-kernel, linux-f2fs-devel On Mon, Oct 26, 2020 at 05:40:00PM +0800, Robin Hsu via Linux-f2fs-devel wrote: > 'ret' should not have been used here: otherwise, it would be wrongly used > as the error code and then be returned from main(). > > Signed-off-by: Robin Hsu <robinhsu@google.com> > --- > fsck/fsck.c | 3 +-- > 1 file changed, 1 insertion(+), 2 deletions(-) > > diff --git a/fsck/fsck.c b/fsck/fsck.c > index f97e9fb..66e4e3f 100644 > --- a/fsck/fsck.c > +++ b/fsck/fsck.c > @@ -3137,8 +3137,7 @@ int fsck_verify(struct f2fs_sb_info *sbi) > char ans[255] = {0}; > > printf("\nDo you want to restore lost files into ./lost_found/? [Y/N] "); > - ret = scanf("%s", ans); > - ASSERT(ret >= 0); > + ASSERT(scanf("%s", ans) >= 0); > if (!strcasecmp(ans, "y")) { > for (i = 0; i < fsck->nr_nat_entries; i++) { > if (f2fs_test_bit(i, fsck->nat_area_bitmap)) This patch causes a compiler warning: In file included from f2fs.h:33, from fsck.h:14, from fsck.c:11: fsck.c: In function 'fsck_verify': ../include/f2fs_fs.h:197:11: warning: format '%s' expects a matching 'char *' argument [-Wformat=] printf("[ASSERT] (%s:%4d) " #exp"\n", \ ^~~~~~~~~~~~~~~~~~~~ fsck.c:3151:3: note: in expansion of macro 'ASSERT' ASSERT(scanf("%s", ans) >= 0); ^~~~~~ _______________________________________________ Linux-f2fs-devel mailing list Linux-f2fs-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [f2fs-dev] [PATCH 1/1] f2fs-toos:fsck.f2fs Fix bad return value 2020-11-03 2:52 ` Eric Biggers @ 2020-11-03 3:23 ` Jaegeuk Kim [not found] ` <CAH7-xNRd1QBJUaxajijjrMbWdKKO1AKS2-1Q5HAAkHSUF628ug@mail.gmail.com> 0 siblings, 1 reply; 6+ messages in thread From: Jaegeuk Kim @ 2020-11-03 3:23 UTC (permalink / raw) To: Eric Biggers; +Cc: linux-f2fs-devel, linux-kernel On 11/02, Eric Biggers wrote: > On Mon, Oct 26, 2020 at 05:40:00PM +0800, Robin Hsu via Linux-f2fs-devel wrote: > > 'ret' should not have been used here: otherwise, it would be wrongly used > > as the error code and then be returned from main(). > > > > Signed-off-by: Robin Hsu <robinhsu@google.com> > > --- > > fsck/fsck.c | 3 +-- > > 1 file changed, 1 insertion(+), 2 deletions(-) > > > > diff --git a/fsck/fsck.c b/fsck/fsck.c > > index f97e9fb..66e4e3f 100644 > > --- a/fsck/fsck.c > > +++ b/fsck/fsck.c > > @@ -3137,8 +3137,7 @@ int fsck_verify(struct f2fs_sb_info *sbi) > > char ans[255] = {0}; > > > > printf("\nDo you want to restore lost files into ./lost_found/? [Y/N] "); > > - ret = scanf("%s", ans); > > - ASSERT(ret >= 0); > > + ASSERT(scanf("%s", ans) >= 0); > > if (!strcasecmp(ans, "y")) { > > for (i = 0; i < fsck->nr_nat_entries; i++) { > > if (f2fs_test_bit(i, fsck->nat_area_bitmap)) > > This patch causes a compiler warning: > > In file included from f2fs.h:33, > from fsck.h:14, > from fsck.c:11: > fsck.c: In function 'fsck_verify': > ../include/f2fs_fs.h:197:11: warning: format '%s' expects a matching 'char *' argument [-Wformat=] > printf("[ASSERT] (%s:%4d) " #exp"\n", \ > ^~~~~~~~~~~~~~~~~~~~ > fsck.c:3151:3: note: in expansion of macro 'ASSERT' > ASSERT(scanf("%s", ans) >= 0); > ^~~~~~ Urg. Fixed by this. From c986140e3c5abb9eb7a08928a88acb8273f1bd52 Mon Sep 17 00:00:00 2001 From: Robin Hsu <robinhsu@google.com> Date: Mon, 26 Oct 2020 17:40:00 +0800 Subject: [PATCH] f2fs-toos: fsck.f2fs Fix bad return value 'ret' should not have been used here: otherwise, it would be wrongly used as the error code and then be returned from main(). Signed-off-by: Robin Hsu <robinhsu@google.com> Reviewed-by: Chao Yu <yuchao0@huawei.com> Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org> --- fsck/fsck.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/fsck/fsck.c b/fsck/fsck.c index 647523397f3e..e52672032d2c 100644 --- a/fsck/fsck.c +++ b/fsck/fsck.c @@ -3146,10 +3146,11 @@ int fsck_verify(struct f2fs_sb_info *sbi) #ifndef WITH_ANDROID if (nr_unref_nid && !c.ro) { char ans[255] = {0}; + int res; printf("\nDo you want to restore lost files into ./lost_found/? [Y/N] "); - ret = scanf("%s", ans); - ASSERT(ret >= 0); + res = scanf("%s", ans); + ASSERT(res >= 0); if (!strcasecmp(ans, "y")) { for (i = 0; i < fsck->nr_nat_entries; i++) { if (f2fs_test_bit(i, fsck->nat_area_bitmap)) -- 2.29.1.341.ge80a0c044ae-goog _______________________________________________ Linux-f2fs-devel mailing list Linux-f2fs-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel ^ permalink raw reply related [flat|nested] 6+ messages in thread
[parent not found: <CAH7-xNRd1QBJUaxajijjrMbWdKKO1AKS2-1Q5HAAkHSUF628ug@mail.gmail.com>]
* Re: [f2fs-dev] [PATCH 1/1] f2fs-toos:fsck.f2fs Fix bad return value [not found] ` <CAH7-xNRd1QBJUaxajijjrMbWdKKO1AKS2-1Q5HAAkHSUF628ug@mail.gmail.com> @ 2020-11-04 18:53 ` Jaegeuk Kim 0 siblings, 0 replies; 6+ messages in thread From: Jaegeuk Kim @ 2020-11-04 18:53 UTC (permalink / raw) To: Robin Hsu; +Cc: Eric Biggers, linux-kernel, linux-f2fs-devel On 11/04, Robin Hsu wrote: > The root cause is the ASSERT() marco, In fact, I already fixed it in one > of my recent work. > I separate it as an independent commit here: > > >From 5359588b1804c5e555e9fad92203d76041ef09eb Mon Sep 17 00:00:00 2001 > > From: Robin Hsu <robinhsu@google.com> > > Date: Wed, 4 Nov 2020 10:50:28 +0800 > > Subject: [PATCH] Fix ASSERT() macro with '%' in the expression > > > > Fix a compiling error triggered by ASSERT(exp), when exp contains '%' > > (e.g. integer modular operator) > > > > Signed-off-by: Robin Hsu <robinhsu@google.com> > > Change-Id: I84708dbaf10c675b9950926c9b6ded5b5a3fbd59 Thanks, applied as well. :) > > --- > > include/f2fs_fs.h | 4 ++-- > > 1 file changed, 2 insertions(+), 2 deletions(-) > > > > diff --git a/include/f2fs_fs.h b/include/f2fs_fs.h > > index b5bda13..1348e39 100644 > > --- a/include/f2fs_fs.h > > +++ b/include/f2fs_fs.h > > @@ -194,8 +194,8 @@ static inline uint64_t bswap_64(uint64_t val) > > #define ASSERT(exp) \ > > do { \ > > if (!(exp)) { \ > > - printf("[ASSERT] (%s:%4d) " #exp"\n", \ > > - __func__, __LINE__); \ > > + printf("[ASSERT] (%s:%4d) %s\n", \ > > + __func__, __LINE__, #exp); \ > > exit(-1); \ > > } \ > > } while (0) > > -- > > 2.29.1.341.ge80a0c044ae-goog > > > On Tue, Nov 3, 2020 at 11:23 AM Jaegeuk Kim <jaegeuk@kernel.org> wrote: > > > On 11/02, Eric Biggers wrote: > > > On Mon, Oct 26, 2020 at 05:40:00PM +0800, Robin Hsu via Linux-f2fs-devel > > wrote: > > > > 'ret' should not have been used here: otherwise, it would be wrongly > > used > > > > as the error code and then be returned from main(). > > > > > > > > Signed-off-by: Robin Hsu <robinhsu@google.com> > > > > --- > > > > fsck/fsck.c | 3 +-- > > > > 1 file changed, 1 insertion(+), 2 deletions(-) > > > > > > > > diff --git a/fsck/fsck.c b/fsck/fsck.c > > > > index f97e9fb..66e4e3f 100644 > > > > --- a/fsck/fsck.c > > > > +++ b/fsck/fsck.c > > > > @@ -3137,8 +3137,7 @@ int fsck_verify(struct f2fs_sb_info *sbi) > > > > char ans[255] = {0}; > > > > > > > > printf("\nDo you want to restore lost files into > > ./lost_found/? [Y/N] "); > > > > - ret = scanf("%s", ans); > > > > - ASSERT(ret >= 0); > > > > + ASSERT(scanf("%s", ans) >= 0); > > > > if (!strcasecmp(ans, "y")) { > > > > for (i = 0; i < fsck->nr_nat_entries; i++) { > > > > if (f2fs_test_bit(i, > > fsck->nat_area_bitmap)) > > > > > > This patch causes a compiler warning: > > > > > > In file included from f2fs.h:33, > > > from fsck.h:14, > > > from fsck.c:11: > > > fsck.c: In function 'fsck_verify': > > > ../include/f2fs_fs.h:197:11: warning: format '%s' expects a > > matching 'char *' argument [-Wformat=] > > > printf("[ASSERT] (%s:%4d) " #exp"\n", \ > > > ^~~~~~~~~~~~~~~~~~~~ > > > fsck.c:3151:3: note: in expansion of macro 'ASSERT' > > > ASSERT(scanf("%s", ans) >= 0); > > > ^~~~~~ > > > > Urg. Fixed by this. > > > > From c986140e3c5abb9eb7a08928a88acb8273f1bd52 Mon Sep 17 00:00:00 2001 > > From: Robin Hsu <robinhsu@google.com> > > Date: Mon, 26 Oct 2020 17:40:00 +0800 > > Subject: [PATCH] f2fs-toos: fsck.f2fs Fix bad return value > > > > 'ret' should not have been used here: otherwise, it would be wrongly used > > as the error code and then be returned from main(). > > > > Signed-off-by: Robin Hsu <robinhsu@google.com> > > Reviewed-by: Chao Yu <yuchao0@huawei.com> > > Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org> > > --- > > fsck/fsck.c | 5 +++-- > > 1 file changed, 3 insertions(+), 2 deletions(-) > > > > diff --git a/fsck/fsck.c b/fsck/fsck.c > > index 647523397f3e..e52672032d2c 100644 > > --- a/fsck/fsck.c > > +++ b/fsck/fsck.c > > @@ -3146,10 +3146,11 @@ int fsck_verify(struct f2fs_sb_info *sbi) > > #ifndef WITH_ANDROID > > if (nr_unref_nid && !c.ro) { > > char ans[255] = {0}; > > + int res; > > > > printf("\nDo you want to restore lost files into > > ./lost_found/? [Y/N] "); > > - ret = scanf("%s", ans); > > - ASSERT(ret >= 0); > > + res = scanf("%s", ans); > > + ASSERT(res >= 0); > > if (!strcasecmp(ans, "y")) { > > for (i = 0; i < fsck->nr_nat_entries; i++) { > > if (f2fs_test_bit(i, > > fsck->nat_area_bitmap)) > > -- > > 2.29.1.341.ge80a0c044ae-goog > > > > _______________________________________________ Linux-f2fs-devel mailing list Linux-f2fs-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel ^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2020-11-04 18:53 UTC | newest] Thread overview: 6+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2020-10-26 9:40 [f2fs-dev] [PATCH 1/1] f2fs-toos:fsck.f2fs Fix bad return value Robin Hsu via Linux-f2fs-devel 2020-10-28 6:57 ` Chao Yu 2020-11-02 16:09 ` Jaegeuk Kim 2020-11-03 2:52 ` Eric Biggers 2020-11-03 3:23 ` Jaegeuk Kim [not found] ` <CAH7-xNRd1QBJUaxajijjrMbWdKKO1AKS2-1Q5HAAkHSUF628ug@mail.gmail.com> 2020-11-04 18:53 ` Jaegeuk Kim
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).