Re: [PATCH] ubifs: Fix WARN_ON logic in exit path

From: Randy Dunlap
Date: Sat Oct 13 2018 - 12:21:50 EST


On 10/13/18 1:18 AM, Richard Weinberger wrote:
> ubifs_assert() is not WARN_ON(), so we have to invert
> the checks.
> Randy faced this warning with UBIFS being a module, since
> most users use UBIFS as builtin because UBIFS is the rootfs
> nobody noticed so far. :-(
> Including me.
>
> Reported-by: Randy Dunlap <rdunlap@xxxxxxxxxxxxx>
> Fixes: 54169ddd382d ("ubifs: Turn two ubifs_assert() into a WARN_ON()")
> Signed-off-by: Richard Weinberger <richard@xxxxxx>

Thanks. Works for me.

> ---
> Greg,
>
> can you please take this patch directly?
> It fixes a brown paper bug which was introduced in rc1, I'd like to avoid
> having it in a release and going the -stable path.
>
> Thanks,
> //richard
> ---
> fs/ubifs/super.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/fs/ubifs/super.c b/fs/ubifs/super.c
> index bf000c8aeffb..fec62e9dfbe6 100644
> --- a/fs/ubifs/super.c
> +++ b/fs/ubifs/super.c
> @@ -2337,8 +2337,8 @@ late_initcall(ubifs_init);
>
> static void __exit ubifs_exit(void)
> {
> - WARN_ON(list_empty(&ubifs_infos));
> - WARN_ON(atomic_long_read(&ubifs_clean_zn_cnt) == 0);
> + WARN_ON(!list_empty(&ubifs_infos));
> + WARN_ON(atomic_long_read(&ubifs_clean_zn_cnt) != 0);
>
> dbg_debugfs_exit();
> ubifs_compressors_exit();
>


--
~Randy