[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <32abf57d-d3bc-d812-c70f-bba8356162ff@linux.alibaba.com>
Date: Tue, 7 Nov 2023 20:39:12 +0800
From: Gao Xiang <hsiangkao@...ux.alibaba.com>
To: Zizhi Wo <wozizhi@...wei.com>, dhowells@...hat.com
Cc: linux-cachefs@...hat.com, linux-kernel@...r.kernel.org,
yangerkun@...wei.com
Subject: Re: [PATCH -next,V2] fscache: support to disable assert macro
On 2023/11/7 18:16, Zizhi Wo wrote:
> friendly ping
>
> 在 2023/11/2 0:34, WoZ1zh1 写道:
>> In fs/fscache/internal.h, ASSERT macro is enabled by default and can not
>> be disabled, then assert failure will crash the kernel as the BUG() is
>> included in the ASSERT macro. Therefore, add FSCACHE_ASSERT to control it.
Personally it looks good to me, yet we could also turn
them into WARN_ON_ONCE case by case? Anyway, it depends
on how David thinks...
Thanks,
Gao Xiang
>>
>> Signed-off-by: WoZ1zh1 <wozizhi@...wei.com>
>> ---
>> fs/fscache/Kconfig | 10 ++++++++++
>> fs/fscache/internal.h | 2 +-
>> 2 files changed, 11 insertions(+), 1 deletion(-)
>>
>> diff --git a/fs/fscache/Kconfig b/fs/fscache/Kconfig
>> index b313a978ae0a..7ff844038bc3 100644
>> --- a/fs/fscache/Kconfig
>> +++ b/fs/fscache/Kconfig
>> @@ -38,3 +38,13 @@ config FSCACHE_DEBUG
>> enabled by setting bits in /sys/modules/fscache/parameter/debug.
>> See Documentation/filesystems/caching/fscache.rst for more information.
>> +
>> +config FSCACHE_ASSERT
>> + bool "FSCACHE asserts"
>> + default n
>> + depends on FSCACHE
>> + help
>> + Support the ASSERT mode for failure behavior.
>> + Say N here to disable the ASSERT by default.
>> + Say Y to add assertion checks in some places. But the assertion
>> + failure will result in fatal errors that BUG() the kernel.
>> diff --git a/fs/fscache/internal.h b/fs/fscache/internal.h
>> index 1336f517e9b1..951166ed772f 100644
>> --- a/fs/fscache/internal.h
>> +++ b/fs/fscache/internal.h
>> @@ -225,7 +225,7 @@ do { \
>> /*
>> * assertions
>> */
>> -#if 1 /* defined(__KDEBUGALL) */
>> +#ifdef CONFIG_FSCACHE_ASSERT
>> #define ASSERT(X) \
>> do { \
Powered by blists - more mailing lists