* [PATCH] f2fs: fix incorrect return value in f2fs_sanity_check_ckpt()
@ 2021-09-22 15:27 ` Chao Yu
0 siblings, 0 replies; 7+ messages in thread
From: Chao Yu @ 2021-09-22 15:27 UTC (permalink / raw)
To: jaegeuk; +Cc: linux-f2fs-devel, linux-kernel, Chao Yu, Pavel Machek
As Pavel Machek reported in [1]
This code looks quite confused: part of function returns 1 on
corruption, part returns -errno. The problem is not stable-specific.
[1] https://lkml.org/lkml/2021/9/19/207
Let's fix to make 'insane cp_payload case' to return 1 rater than
EFSCORRUPTED, so that return value can be kept consistent for all
error cases, it can avoid confusion of code logic.
Fixes: 65ddf6564843 ("f2fs: fix to do sanity check for sb/cp fields correctly")
Reported-by: Pavel Machek <pavel@denx.de>
Signed-off-by: Chao Yu <chao@kernel.org>
---
fs/f2fs/super.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/fs/f2fs/super.c b/fs/f2fs/super.c
index 8d6d0657a470..e3975cb8e3e8 100644
--- a/fs/f2fs/super.c
+++ b/fs/f2fs/super.c
@@ -3487,7 +3487,7 @@ int f2fs_sanity_check_ckpt(struct f2fs_sb_info *sbi)
NR_CURSEG_PERSIST_TYPE + nat_bits_blocks >= blocks_per_seg)) {
f2fs_warn(sbi, "Insane cp_payload: %u, nat_bits_blocks: %u)",
cp_payload, nat_bits_blocks);
- return -EFSCORRUPTED;
+ return 1;
}
if (unlikely(f2fs_cp_error(sbi))) {
--
2.32.0
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [f2fs-dev] [PATCH] f2fs: fix incorrect return value in f2fs_sanity_check_ckpt()
@ 2021-09-22 15:27 ` Chao Yu
0 siblings, 0 replies; 7+ messages in thread
From: Chao Yu @ 2021-09-22 15:27 UTC (permalink / raw)
To: jaegeuk; +Cc: Pavel Machek, linux-kernel, linux-f2fs-devel
As Pavel Machek reported in [1]
This code looks quite confused: part of function returns 1 on
corruption, part returns -errno. The problem is not stable-specific.
[1] https://lkml.org/lkml/2021/9/19/207
Let's fix to make 'insane cp_payload case' to return 1 rater than
EFSCORRUPTED, so that return value can be kept consistent for all
error cases, it can avoid confusion of code logic.
Fixes: 65ddf6564843 ("f2fs: fix to do sanity check for sb/cp fields correctly")
Reported-by: Pavel Machek <pavel@denx.de>
Signed-off-by: Chao Yu <chao@kernel.org>
---
fs/f2fs/super.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/fs/f2fs/super.c b/fs/f2fs/super.c
index 8d6d0657a470..e3975cb8e3e8 100644
--- a/fs/f2fs/super.c
+++ b/fs/f2fs/super.c
@@ -3487,7 +3487,7 @@ int f2fs_sanity_check_ckpt(struct f2fs_sb_info *sbi)
NR_CURSEG_PERSIST_TYPE + nat_bits_blocks >= blocks_per_seg)) {
f2fs_warn(sbi, "Insane cp_payload: %u, nat_bits_blocks: %u)",
cp_payload, nat_bits_blocks);
- return -EFSCORRUPTED;
+ return 1;
}
if (unlikely(f2fs_cp_error(sbi))) {
--
2.32.0
_______________________________________________
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] 7+ messages in thread
* Re: [PATCH] f2fs: fix incorrect return value in f2fs_sanity_check_ckpt()
2021-09-22 15:27 ` [f2fs-dev] " Chao Yu
(?)
@ 2021-09-24 9:50 ` Pavel Machek
2021-10-27 2:19 ` [f2fs-dev] " Chao Yu
-1 siblings, 1 reply; 7+ messages in thread
From: Pavel Machek @ 2021-09-24 9:50 UTC (permalink / raw)
To: Chao Yu; +Cc: jaegeuk, linux-f2fs-devel, linux-kernel, Pavel Machek
[-- Attachment #1: Type: text/plain, Size: 1308 bytes --]
Hi!
> This code looks quite confused: part of function returns 1 on
> corruption, part returns -errno. The problem is not stable-specific.
>
> [1] https://lkml.org/lkml/2021/9/19/207
>
> Let's fix to make 'insane cp_payload case' to return 1 rater than
> EFSCORRUPTED, so that return value can be kept consistent for all
> error cases, it can avoid confusion of code logic.
>
> Fixes: 65ddf6564843 ("f2fs: fix to do sanity check for sb/cp fields correctly")
> Reported-by: Pavel Machek <pavel@denx.de>
> Signed-off-by: Chao Yu <chao@kernel.org>
Reviewed-by: Pavel Machek <pavel@denx.de>
(This is good minimal fix, but eventually I believe the function
should switch to 0/-errno... for consistency with rest of kernel).
Thank you,
Pavel
> +++ b/fs/f2fs/super.c
> @@ -3487,7 +3487,7 @@ int f2fs_sanity_check_ckpt(struct f2fs_sb_info *sbi)
> NR_CURSEG_PERSIST_TYPE + nat_bits_blocks >= blocks_per_seg)) {
> f2fs_warn(sbi, "Insane cp_payload: %u, nat_bits_blocks: %u)",
> cp_payload, nat_bits_blocks);
> - return -EFSCORRUPTED;
> + return 1;
> }
>
> if (unlikely(f2fs_cp_error(sbi))) {
--
DENX Software Engineering GmbH, Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 195 bytes --]
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] f2fs: fix incorrect return value in f2fs_sanity_check_ckpt()
2021-09-24 9:50 ` Pavel Machek
@ 2021-10-27 2:19 ` Chao Yu
0 siblings, 0 replies; 7+ messages in thread
From: Chao Yu @ 2021-10-27 2:19 UTC (permalink / raw)
To: jaegeuk, Pavel Machek; +Cc: linux-f2fs-devel, linux-kernel
Jaegeuk,
Missed to apply this patch?
Thanks,
On 2021/9/24 17:50, Pavel Machek wrote:
> Hi!
>
>> This code looks quite confused: part of function returns 1 on
>> corruption, part returns -errno. The problem is not stable-specific.
>>
>> [1] https://lkml.org/lkml/2021/9/19/207
>>
>> Let's fix to make 'insane cp_payload case' to return 1 rater than
>> EFSCORRUPTED, so that return value can be kept consistent for all
>> error cases, it can avoid confusion of code logic.
>>
>> Fixes: 65ddf6564843 ("f2fs: fix to do sanity check for sb/cp fields correctly")
>> Reported-by: Pavel Machek <pavel@denx.de>
>> Signed-off-by: Chao Yu <chao@kernel.org>
>
> Reviewed-by: Pavel Machek <pavel@denx.de>
>
> (This is good minimal fix, but eventually I believe the function
> should switch to 0/-errno... for consistency with rest of kernel).
>
> Thank you,
> Pavel
>
>> +++ b/fs/f2fs/super.c
>> @@ -3487,7 +3487,7 @@ int f2fs_sanity_check_ckpt(struct f2fs_sb_info *sbi)
>> NR_CURSEG_PERSIST_TYPE + nat_bits_blocks >= blocks_per_seg)) {
>> f2fs_warn(sbi, "Insane cp_payload: %u, nat_bits_blocks: %u)",
>> cp_payload, nat_bits_blocks);
>> - return -EFSCORRUPTED;
>> + return 1;
>> }
>>
>> if (unlikely(f2fs_cp_error(sbi))) {
>
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [f2fs-dev] [PATCH] f2fs: fix incorrect return value in f2fs_sanity_check_ckpt()
@ 2021-10-27 2:19 ` Chao Yu
0 siblings, 0 replies; 7+ messages in thread
From: Chao Yu @ 2021-10-27 2:19 UTC (permalink / raw)
To: jaegeuk, Pavel Machek; +Cc: linux-kernel, linux-f2fs-devel
Jaegeuk,
Missed to apply this patch?
Thanks,
On 2021/9/24 17:50, Pavel Machek wrote:
> Hi!
>
>> This code looks quite confused: part of function returns 1 on
>> corruption, part returns -errno. The problem is not stable-specific.
>>
>> [1] https://lkml.org/lkml/2021/9/19/207
>>
>> Let's fix to make 'insane cp_payload case' to return 1 rater than
>> EFSCORRUPTED, so that return value can be kept consistent for all
>> error cases, it can avoid confusion of code logic.
>>
>> Fixes: 65ddf6564843 ("f2fs: fix to do sanity check for sb/cp fields correctly")
>> Reported-by: Pavel Machek <pavel@denx.de>
>> Signed-off-by: Chao Yu <chao@kernel.org>
>
> Reviewed-by: Pavel Machek <pavel@denx.de>
>
> (This is good minimal fix, but eventually I believe the function
> should switch to 0/-errno... for consistency with rest of kernel).
>
> Thank you,
> Pavel
>
>> +++ b/fs/f2fs/super.c
>> @@ -3487,7 +3487,7 @@ int f2fs_sanity_check_ckpt(struct f2fs_sb_info *sbi)
>> NR_CURSEG_PERSIST_TYPE + nat_bits_blocks >= blocks_per_seg)) {
>> f2fs_warn(sbi, "Insane cp_payload: %u, nat_bits_blocks: %u)",
>> cp_payload, nat_bits_blocks);
>> - return -EFSCORRUPTED;
>> + return 1;
>> }
>>
>> if (unlikely(f2fs_cp_error(sbi))) {
>
_______________________________________________
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] 7+ messages in thread
* Re: [PATCH] f2fs: fix incorrect return value in f2fs_sanity_check_ckpt()
2021-10-27 2:19 ` [f2fs-dev] " Chao Yu
@ 2021-10-27 22:34 ` Jaegeuk Kim
-1 siblings, 0 replies; 7+ messages in thread
From: Jaegeuk Kim @ 2021-10-27 22:34 UTC (permalink / raw)
To: Chao Yu; +Cc: Pavel Machek, linux-f2fs-devel, linux-kernel
Could you post the patch again? I don't see this in my box.
On 10/27, Chao Yu wrote:
> Jaegeuk,
>
> Missed to apply this patch?
>
> Thanks,
>
> On 2021/9/24 17:50, Pavel Machek wrote:
> > Hi!
> >
> > > This code looks quite confused: part of function returns 1 on
> > > corruption, part returns -errno. The problem is not stable-specific.
> > >
> > > [1] https://lkml.org/lkml/2021/9/19/207
> > >
> > > Let's fix to make 'insane cp_payload case' to return 1 rater than
> > > EFSCORRUPTED, so that return value can be kept consistent for all
> > > error cases, it can avoid confusion of code logic.
> > >
> > > Fixes: 65ddf6564843 ("f2fs: fix to do sanity check for sb/cp fields correctly")
> > > Reported-by: Pavel Machek <pavel@denx.de>
> > > Signed-off-by: Chao Yu <chao@kernel.org>
> >
> > Reviewed-by: Pavel Machek <pavel@denx.de>
> >
> > (This is good minimal fix, but eventually I believe the function
> > should switch to 0/-errno... for consistency with rest of kernel).
> >
> > Thank you,
> > Pavel
> >
> > > +++ b/fs/f2fs/super.c
> > > @@ -3487,7 +3487,7 @@ int f2fs_sanity_check_ckpt(struct f2fs_sb_info *sbi)
> > > NR_CURSEG_PERSIST_TYPE + nat_bits_blocks >= blocks_per_seg)) {
> > > f2fs_warn(sbi, "Insane cp_payload: %u, nat_bits_blocks: %u)",
> > > cp_payload, nat_bits_blocks);
> > > - return -EFSCORRUPTED;
> > > + return 1;
> > > }
> > > if (unlikely(f2fs_cp_error(sbi))) {
> >
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [f2fs-dev] [PATCH] f2fs: fix incorrect return value in f2fs_sanity_check_ckpt()
@ 2021-10-27 22:34 ` Jaegeuk Kim
0 siblings, 0 replies; 7+ messages in thread
From: Jaegeuk Kim @ 2021-10-27 22:34 UTC (permalink / raw)
To: Chao Yu; +Cc: Pavel Machek, linux-kernel, linux-f2fs-devel
Could you post the patch again? I don't see this in my box.
On 10/27, Chao Yu wrote:
> Jaegeuk,
>
> Missed to apply this patch?
>
> Thanks,
>
> On 2021/9/24 17:50, Pavel Machek wrote:
> > Hi!
> >
> > > This code looks quite confused: part of function returns 1 on
> > > corruption, part returns -errno. The problem is not stable-specific.
> > >
> > > [1] https://lkml.org/lkml/2021/9/19/207
> > >
> > > Let's fix to make 'insane cp_payload case' to return 1 rater than
> > > EFSCORRUPTED, so that return value can be kept consistent for all
> > > error cases, it can avoid confusion of code logic.
> > >
> > > Fixes: 65ddf6564843 ("f2fs: fix to do sanity check for sb/cp fields correctly")
> > > Reported-by: Pavel Machek <pavel@denx.de>
> > > Signed-off-by: Chao Yu <chao@kernel.org>
> >
> > Reviewed-by: Pavel Machek <pavel@denx.de>
> >
> > (This is good minimal fix, but eventually I believe the function
> > should switch to 0/-errno... for consistency with rest of kernel).
> >
> > Thank you,
> > Pavel
> >
> > > +++ b/fs/f2fs/super.c
> > > @@ -3487,7 +3487,7 @@ int f2fs_sanity_check_ckpt(struct f2fs_sb_info *sbi)
> > > NR_CURSEG_PERSIST_TYPE + nat_bits_blocks >= blocks_per_seg)) {
> > > f2fs_warn(sbi, "Insane cp_payload: %u, nat_bits_blocks: %u)",
> > > cp_payload, nat_bits_blocks);
> > > - return -EFSCORRUPTED;
> > > + return 1;
> > > }
> > > if (unlikely(f2fs_cp_error(sbi))) {
> >
_______________________________________________
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] 7+ messages in thread
end of thread, other threads:[~2021-10-27 22:40 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-09-22 15:27 [PATCH] f2fs: fix incorrect return value in f2fs_sanity_check_ckpt() Chao Yu
2021-09-22 15:27 ` [f2fs-dev] " Chao Yu
2021-09-24 9:50 ` Pavel Machek
2021-10-27 2:19 ` Chao Yu
2021-10-27 2:19 ` [f2fs-dev] " Chao Yu
2021-10-27 22:34 ` Jaegeuk Kim
2021-10-27 22:34 ` [f2fs-dev] " Jaegeuk Kim
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.