Commit ec9cc18fc2e6 ("bcachefs: Add checks for invalid snapshot IDs")
intends to check the sanity of a snapshot and panic when
BCACHEFS_DEBUG is set, but that conditional has a typo.
Fix the typo to refer to the actual existing Kconfig symbol.
This was found with ./scripts/checkkconfigsymbols.py.
Signed-off-by: Lukas Bulwahn <[email protected]>
---
fs/bcachefs/snapshot.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/fs/bcachefs/snapshot.h b/fs/bcachefs/snapshot.h
index b7d2fed37c4f..3fdb41b33d2d 100644
--- a/fs/bcachefs/snapshot.h
+++ b/fs/bcachefs/snapshot.h
@@ -77,7 +77,7 @@ static inline u32 __bch2_snapshot_parent(struct bch_fs *c, u32 id)
return 0;
u32 parent = s->parent;
- if (IS_ENABLED(CONFIG_BCACHEFS_DEBU) &&
+ if (IS_ENABLED(CONFIG_BCACHEFS_DEBUG) &&
parent &&
s->depth != snapshot_t(c, parent)->depth + 1)
panic("id %u depth=%u parent %u depth=%u\n",
--
2.44.0
On 2024/4/11 16:29, Lukas Bulwahn wrote:
> Commit ec9cc18fc2e6 ("bcachefs: Add checks for invalid snapshot IDs")
> intends to check the sanity of a snapshot and panic when
> BCACHEFS_DEBUG is set, but that conditional has a typo.
>
> Fix the typo to refer to the actual existing Kconfig symbol.
>
> This was found with ./scripts/checkkconfigsymbols.py.
>
> Signed-off-by: Lukas Bulwahn <[email protected]>
> ---
> fs/bcachefs/snapshot.h | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/fs/bcachefs/snapshot.h b/fs/bcachefs/snapshot.h
> index b7d2fed37c4f..3fdb41b33d2d 100644
> --- a/fs/bcachefs/snapshot.h
> +++ b/fs/bcachefs/snapshot.h
> @@ -77,7 +77,7 @@ static inline u32 __bch2_snapshot_parent(struct bch_fs *c, u32 id)
> return 0;
>
> u32 parent = s->parent;
> - if (IS_ENABLED(CONFIG_BCACHEFS_DEBU) &&
> + if (IS_ENABLED(CONFIG_BCACHEFS_DEBUG) &&
> parent &&
> s->depth != snapshot_t(c, parent)->depth + 1)
> panic("id %u depth=%u parent %u depth=%u\n",
Reviewed-by: Hongbo Li <[email protected]>
Also, I am curious why such spelling errors cannot be detected at the
compilation stage.
On 2024/4/11 16:29, Lukas Bulwahn wrote:
> Commit ec9cc18fc2e6 ("bcachefs: Add checks for invalid snapshot IDs")
> intends to check the sanity of a snapshot and panic when
> BCACHEFS_DEBUG is set, but that conditional has a typo.
>
> Fix the typo to refer to the actual existing Kconfig symbol.
>
> This was found with ./scripts/checkkconfigsymbols.py.
>
> Signed-off-by: Lukas Bulwahn <[email protected]>
> ---
> fs/bcachefs/snapshot.h | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/fs/bcachefs/snapshot.h b/fs/bcachefs/snapshot.h
> index b7d2fed37c4f..3fdb41b33d2d 100644
> --- a/fs/bcachefs/snapshot.h
> +++ b/fs/bcachefs/snapshot.h
> @@ -77,7 +77,7 @@ static inline u32 __bch2_snapshot_parent(struct bch_fs *c, u32 id)
> return 0;
>
> u32 parent = s->parent;
> - if (IS_ENABLED(CONFIG_BCACHEFS_DEBU) &&
> + if (IS_ENABLED(CONFIG_BCACHEFS_DEBUG) &&
> parent &&
> s->depth != snapshot_t(c, parent)->depth + 1)
> panic("id %u depth=%u parent %u depth=%u\n",
On Thu, Apr 11, 2024 at 05:21:05PM +0800, Hongbo Li wrote:
> Also, I am curious why such spelling errors cannot be detected at the
> compilation stage.
>
The IS_ENABLED() macro is testing whether the define exists or not.
In this case both "CONFIG_BCACHEFS_DEBUG" and "CONFIG_BCACHEFS_DEBU" do
not exist for this config.
Lukas's scripts make a list of macros we expect to exist and then checks
against the list.
regards,
dan carpenter
Thanks, I got it!
On 2024/4/11 18:21, Dan Carpenter wrote:
> On Thu, Apr 11, 2024 at 05:21:05PM +0800, Hongbo Li wrote:
>> Also, I am curious why such spelling errors cannot be detected at the
>> compilation stage.
>>
>
> The IS_ENABLED() macro is testing whether the define exists or not.
> In this case both "CONFIG_BCACHEFS_DEBUG" and "CONFIG_BCACHEFS_DEBU" do
> not exist for this config.
>
> Lukas's scripts make a list of macros we expect to exist and then checks
> against the list.
>
> regards,
> dan carpenter
>
On Thu, Apr 11, 2024 at 05:21:05PM +0800, Hongbo Li wrote:
> Also, I am curious why such spelling errors cannot be detected at the
> compilation stage.
code coverage analysis would catch this. I'm one patch away from fully
automated code coverage.
Thanks, got it. And I found many similar cases in other kernel modules.
Also, the janitors project seems quite interesting.
On 2024/4/12 1:31, Kent Overstreet wrote:
> On Thu, Apr 11, 2024 at 05:21:05PM +0800, Hongbo Li wrote:
>> Also, I am curious why such spelling errors cannot be detected at the
>> compilation stage.
>
> code coverage analysis would catch this. I'm one patch away from fully
> automated code coverage.