* 6.1.140 build failure(fs/btrfs/discard.c:247:5: error: implicit declaration of function 'ASSERT')
@ 2025-05-26 5:40 Wang Yugui
2025-05-26 9:59 ` Qu Wenruo
2025-05-26 11:16 ` Filipe Manana
0 siblings, 2 replies; 4+ messages in thread
From: Wang Yugui @ 2025-05-26 5:40 UTC (permalink / raw)
To: linux-btrfs; +Cc: Filipe Manana
Hi,
Cc: Filipe Manana
I noticed 6.1.140 build failure(fs/btrfs/discard.c:247:5: error: implicit declaration of function 'ASSERT')
fs/btrfs/discard.c: In function 'peek_discard_list':
fs/btrfs/discard.c:247:5: error: implicit declaration of function 'ASSERT'; did you mean 'IS_ERR'? [-Werror=implicit-function-declaration]
ASSERT(block_group->discard_index !=
^~~~~~
IS_ERR
It seems realted to the patch(btrfs-fix-discard-worker-infinite-loop-after-disabling-discard.patch).
I walked around it with the following patch.
diff --git a/fs/btrfs/discard.c b/fs/btrfs/discard.c
index 98bce18..9ffe5c4 100644
--- a/fs/btrfs/discard.c
+++ b/fs/btrfs/discard.c
@@ -7,6 +7,7 @@
#include <linux/math64.h>
#include <linux/sizes.h>
#include <linux/workqueue.h>
+#include "messages.h"
#include "ctree.h"
#include "block-group.h"
#include "discard.h"
Best Regards
Wang Yugui (wangyugui@e16-tech.com)
2025/05/26
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: 6.1.140 build failure(fs/btrfs/discard.c:247:5: error: implicit declaration of function 'ASSERT')
2025-05-26 5:40 6.1.140 build failure(fs/btrfs/discard.c:247:5: error: implicit declaration of function 'ASSERT') Wang Yugui
@ 2025-05-26 9:59 ` Qu Wenruo
2025-05-26 11:16 ` Filipe Manana
1 sibling, 0 replies; 4+ messages in thread
From: Qu Wenruo @ 2025-05-26 9:59 UTC (permalink / raw)
To: Wang Yugui, linux-btrfs; +Cc: Filipe Manana
在 2025/5/26 15:10, Wang Yugui 写道:
> Hi,
> Cc: Filipe Manana
>
> I noticed 6.1.140 build failure(fs/btrfs/discard.c:247:5: error: implicit declaration of function 'ASSERT')
>
> fs/btrfs/discard.c: In function 'peek_discard_list':
> fs/btrfs/discard.c:247:5: error: implicit declaration of function 'ASSERT'; did you mean 'IS_ERR'? [-Werror=implicit-function-declaration]
> ASSERT(block_group->discard_index !=
> ^~~~~~
> IS_ERR
>
> It seems realted to the patch(btrfs-fix-discard-worker-infinite-loop-after-disabling-discard.patch).
>
> I walked around it with the following patch.
>
> diff --git a/fs/btrfs/discard.c b/fs/btrfs/discard.c
> index 98bce18..9ffe5c4 100644
> --- a/fs/btrfs/discard.c
> +++ b/fs/btrfs/discard.c
> @@ -7,6 +7,7 @@
> #include <linux/math64.h>
> #include <linux/sizes.h>
> #include <linux/workqueue.h>
> +#include "messages.h"
> #include "ctree.h"
> #include "block-group.h"
> #include "discard.h"
I think you should send this as a formal patch to the stable list.
Thanks,
Qu
>
>
> Best Regards
> Wang Yugui (wangyugui@e16-tech.com)
> 2025/05/26
>
>
>
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: 6.1.140 build failure(fs/btrfs/discard.c:247:5: error: implicit declaration of function 'ASSERT')
2025-05-26 5:40 6.1.140 build failure(fs/btrfs/discard.c:247:5: error: implicit declaration of function 'ASSERT') Wang Yugui
2025-05-26 9:59 ` Qu Wenruo
@ 2025-05-26 11:16 ` Filipe Manana
2025-05-31 13:16 ` Wang Yugui
1 sibling, 1 reply; 4+ messages in thread
From: Filipe Manana @ 2025-05-26 11:16 UTC (permalink / raw)
To: Wang Yugui; +Cc: linux-btrfs, Filipe Manana, stable, Greg Kroah-Hartman
On Mon, May 26, 2025 at 6:40 AM Wang Yugui <wangyugui@e16-tech.com> wrote:
>
> Hi,
> Cc: Filipe Manana
>
> I noticed 6.1.140 build failure(fs/btrfs/discard.c:247:5: error: implicit declaration of function 'ASSERT')
>
> fs/btrfs/discard.c: In function 'peek_discard_list':
> fs/btrfs/discard.c:247:5: error: implicit declaration of function 'ASSERT'; did you mean 'IS_ERR'? [-Werror=implicit-function-declaration]
> ASSERT(block_group->discard_index !=
> ^~~~~~
> IS_ERR
>
> It seems realted to the patch(btrfs-fix-discard-worker-infinite-loop-after-disabling-discard.patch).
Yes, it is.
The patch, like most stable backports, was automatically picked by the
stable scripts and added to stable releases.
I assume that before the release was made, it was compile tested by
the stable automatic processes.
I just tried it, and it compiles successfully for me:
fdmanana 11:56:26 ~/git/hub/linux ((v6.12))> git clean -xfd
fdmanana 11:57:27 ~/git/hub/linux ((v6.12))> git co v6.1.140
fdmanana 11:59:53 ~/git/hub/linux ((v6.1.140))> make defconfig
HOSTCC scripts/basic/fixdep
HOSTCC scripts/kconfig/conf.o
HOSTCC scripts/kconfig/confdata.o
HOSTCC scripts/kconfig/expr.o
LEX scripts/kconfig/lexer.lex.c
YACC scripts/kconfig/parser.tab.[ch]
HOSTCC scripts/kconfig/lexer.lex.o
HOSTCC scripts/kconfig/menu.o
HOSTCC scripts/kconfig/parser.tab.o
HOSTCC scripts/kconfig/preprocess.o
HOSTCC scripts/kconfig/symbol.o
HOSTCC scripts/kconfig/util.o
HOSTLD scripts/kconfig/conf
*** Default configuration is based on 'x86_64_defconfig'
#
# configuration written to .config
#
# Run make menuconfig to enable btrfs and all its config options
fdmanana 12:01:55 ~/git/hub/linux ((v6.1.140))> make menuconfig
fdmanana 12:02:17 ~/git/hub/linux ((v6.1.140))> grep BTRFS .config
CONFIG_BTRFS_FS=m
CONFIG_BTRFS_FS_POSIX_ACL=y
CONFIG_BTRFS_FS_CHECK_INTEGRITY=y
CONFIG_BTRFS_FS_RUN_SANITY_TESTS=y
CONFIG_BTRFS_DEBUG=y
CONFIG_BTRFS_ASSERT=y
CONFIG_BTRFS_FS_REF_VERIFY=y
fdmanana 12:06:08 ~/git/hub/linux ((v6.1.140))> make fs/btrfs/btrfs.ko
SYNC include/config/auto.conf
CALL scripts/checksyscalls.sh
DESCEND objtool
CC [M] fs/btrfs/super.o
CC [M] fs/btrfs/ctree.o
CC [M] fs/btrfs/extent-tree.o
CC [M] fs/btrfs/print-tree.o
CC [M] fs/btrfs/root-tree.o
CC [M] fs/btrfs/dir-item.o
CC [M] fs/btrfs/file-item.o
CC [M] fs/btrfs/inode-item.o
CC [M] fs/btrfs/disk-io.o
CC [M] fs/btrfs/transaction.o
CC [M] fs/btrfs/inode.o
CC [M] fs/btrfs/file.o
CC [M] fs/btrfs/tree-defrag.o
CC [M] fs/btrfs/extent_map.o
CC [M] fs/btrfs/sysfs.o
CC [M] fs/btrfs/struct-funcs.o
CC [M] fs/btrfs/xattr.o
CC [M] fs/btrfs/ordered-data.o
CC [M] fs/btrfs/extent_io.o
CC [M] fs/btrfs/volumes.o
CC [M] fs/btrfs/async-thread.o
CC [M] fs/btrfs/ioctl.o
CC [M] fs/btrfs/locking.o
CC [M] fs/btrfs/orphan.o
CC [M] fs/btrfs/export.o
CC [M] fs/btrfs/tree-log.o
CC [M] fs/btrfs/free-space-cache.o
CC [M] fs/btrfs/lzo.o
CC [M] fs/btrfs/zstd.o
CC [M] fs/btrfs/compression.o
CC [M] fs/btrfs/delayed-ref.o
CC [M] fs/btrfs/relocation.o
CC [M] fs/btrfs/delayed-inode.o
CC [M] fs/btrfs/scrub.o
CC [M] fs/btrfs/backref.o
CC [M] fs/btrfs/ulist.o
CC [M] fs/btrfs/qgroup.o
CC [M] fs/btrfs/send.o
CC [M] fs/btrfs/dev-replace.o
CC [M] fs/btrfs/raid56.o
CC [M] fs/btrfs/uuid-tree.o
CC [M] fs/btrfs/props.o
CC [M] fs/btrfs/free-space-tree.o
CC [M] fs/btrfs/tree-checker.o
CC [M] fs/btrfs/space-info.o
CC [M] fs/btrfs/block-rsv.o
CC [M] fs/btrfs/delalloc-space.o
CC [M] fs/btrfs/block-group.o
CC [M] fs/btrfs/discard.o
CC [M] fs/btrfs/reflink.o
CC [M] fs/btrfs/subpage.o
CC [M] fs/btrfs/tree-mod-log.o
CC [M] fs/btrfs/extent-io-tree.o
CC [M] fs/btrfs/acl.o
CC [M] fs/btrfs/check-integrity.o
CC [M] fs/btrfs/ref-verify.o
CC [M] fs/btrfs/tests/free-space-tests.o
CC [M] fs/btrfs/tests/extent-buffer-tests.o
CC [M] fs/btrfs/tests/btrfs-tests.o
CC [M] fs/btrfs/tests/extent-io-tests.o
CC [M] fs/btrfs/tests/inode-tests.o
CC [M] fs/btrfs/tests/qgroup-tests.o
CC [M] fs/btrfs/tests/free-space-tree-tests.o
CC [M] fs/btrfs/tests/extent-map-tests.o
LD [M] fs/btrfs/btrfs.o
make[3]: 'fs/btrfs/btrfs.mod' is up to date.
MODPOST modules-only.symvers
WARNING: vmlinux.o is missing.
Modules may not have dependencies or modversions.
You may get many unresolved symbol warnings.
WARNING: modpost: "bio_associate_blkg" [fs/btrfs/btrfs.ko] undefined!
WARNING: modpost: "zstd_cstream_workspace_bound" [fs/btrfs/btrfs.ko] undefined!
WARNING: modpost: "folio_invalidate" [fs/btrfs/btrfs.ko] undefined!
WARNING: modpost: "__page_file_index" [fs/btrfs/btrfs.ko] undefined!
WARNING: modpost: "strcpy" [fs/btrfs/btrfs.ko] undefined!
WARNING: modpost: "inode_init_owner" [fs/btrfs/btrfs.ko] undefined!
WARNING: modpost: "generic_fillattr" [fs/btrfs/btrfs.ko] undefined!
WARNING: modpost: "is_vmalloc_addr" [fs/btrfs/btrfs.ko] undefined!
WARNING: modpost: "krealloc" [fs/btrfs/btrfs.ko] undefined!
WARNING: modpost: "vfs_fsync_range" [fs/btrfs/btrfs.ko] undefined!
WARNING: modpost: suppressed 521 unresolved symbol warnings because
there were too many)
LD [M] fs/btrfs/btrfs.ko
fdmanana 12:11:12 ~/git/hub/linux ((v6.1.140))> gcc --version
gcc (Debian 9.3.0-18) 9.3.0
>
> I walked around it with the following patch.
In the future please cc the stable list when you find problems with
stable backports.
>
> diff --git a/fs/btrfs/discard.c b/fs/btrfs/discard.c
> index 98bce18..9ffe5c4 100644
> --- a/fs/btrfs/discard.c
> +++ b/fs/btrfs/discard.c
> @@ -7,6 +7,7 @@
> #include <linux/math64.h>
> #include <linux/sizes.h>
> #include <linux/workqueue.h>
> +#include "messages.h"
> #include "ctree.h"
> #include "block-group.h"
> #include "discard.h"
>
>
> Best Regards
> Wang Yugui (wangyugui@e16-tech.com)
> 2025/05/26
>
>
>
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: 6.1.140 build failure(fs/btrfs/discard.c:247:5: error: implicit declaration of function 'ASSERT')
2025-05-26 11:16 ` Filipe Manana
@ 2025-05-31 13:16 ` Wang Yugui
0 siblings, 0 replies; 4+ messages in thread
From: Wang Yugui @ 2025-05-31 13:16 UTC (permalink / raw)
To: Filipe Manana; +Cc: linux-btrfs, Filipe Manana, stable, Greg Kroah-Hartman
Hi,
> On Mon, May 26, 2025 at 6:40?AM Wang Yugui <wangyugui@e16-tech.com> wrote:
> >
> > Hi,
> > Cc: Filipe Manana
> >
> > I noticed 6.1.140 build failure(fs/btrfs/discard.c:247:5: error: implicit declaration of function 'ASSERT')
> >
> > fs/btrfs/discard.c: In function 'peek_discard_list':
> > fs/btrfs/discard.c:247:5: error: implicit declaration of function 'ASSERT'; did you mean 'IS_ERR'? [-Werror=implicit-function-declaration]
> > ASSERT(block_group->discard_index !=
> > ^~~~~~
> > IS_ERR
> >
> > It seems realted to the patch(btrfs-fix-discard-worker-infinite-loop-after-disabling-discard.patch).
>
> Yes, it is.
>
> The patch, like most stable backports, was automatically picked by the
> stable scripts and added to stable releases.
> I assume that before the release was made, it was compile tested by
> the stable automatic processes.
>
> I just tried it, and it compiles successfully for me:
>
> fdmanana 11:56:26 ~/git/hub/linux ((v6.12))> git clean -xfd
> fdmanana 11:57:27 ~/git/hub/linux ((v6.12))> git co v6.1.140
> fdmanana 11:59:53 ~/git/hub/linux ((v6.1.140))> make defconfig
>
> fdmanana 12:02:17 ~/git/hub/linux ((v6.1.140))> grep BTRFS .config
> CONFIG_BTRFS_FS=m
> CONFIG_BTRFS_FS_POSIX_ACL=y
> CONFIG_BTRFS_FS_CHECK_INTEGRITY=y
> CONFIG_BTRFS_FS_RUN_SANITY_TESTS=y
> CONFIG_BTRFS_DEBUG=y
> CONFIG_BTRFS_ASSERT=y
> CONFIG_BTRFS_FS_REF_VERIFY=y
>
> fdmanana 12:06:08 ~/git/hub/linux ((v6.1.140))> make fs/btrfs/btrfs.ko
> LD [M] fs/btrfs/btrfs.ko
>
> fdmanana 12:11:12 ~/git/hub/linux ((v6.1.140))> gcc --version
> gcc (Debian 9.3.0-18) 9.3.0
Yes. this build error does NOT happen on 6.1.140 upstream.
It happened here because of some local btrfs backuport of linux 6.2.
Sorry.
Best Regards
Wang Yugui (wangyugui@e16-tech.com)
2025/05/31
> >
> > I walked around it with the following patch.
>
> In the future please cc the stable list when you find problems with
> stable backports.
>
> >
> > diff --git a/fs/btrfs/discard.c b/fs/btrfs/discard.c
> > index 98bce18..9ffe5c4 100644
> > --- a/fs/btrfs/discard.c
> > +++ b/fs/btrfs/discard.c
> > @@ -7,6 +7,7 @@
> > #include <linux/math64.h>
> > #include <linux/sizes.h>
> > #include <linux/workqueue.h>
> > +#include "messages.h"
> > #include "ctree.h"
> > #include "block-group.h"
> > #include "discard.h"
> >
> >
> > Best Regards
> > Wang Yugui (wangyugui@e16-tech.com)
> > 2025/05/26
> >
> >
> >
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2025-05-31 13:47 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-05-26 5:40 6.1.140 build failure(fs/btrfs/discard.c:247:5: error: implicit declaration of function 'ASSERT') Wang Yugui
2025-05-26 9:59 ` Qu Wenruo
2025-05-26 11:16 ` Filipe Manana
2025-05-31 13:16 ` Wang Yugui
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox