Le 29/08/19 à 14:32, Sergey Senozhatsky a écrit : > On (08/29/19 14:28), Jiri Slaby wrote: > [..] >> as is its definition in the structure (and its other uses). >> >>> ./include/linux/wait.h:67:26: note: in definition of macro ‘init_waitqueue_head’ >>> __init_waitqueue_head((wq_head), #wq_head, &__key); \ >>> ^~~~~~~ >>> scripts/Makefile.build:278: recipe for target 'mm/zsmalloc.o' failed >>> make[1]: *** [mm/zsmalloc.o] Error 1 >>> Makefile:1073: recipe for target 'mm' failed >>> >>> You can find my configuration file attached. >> You forgot to attach it, but you have CONFIG_COMPACTION=n, I assume. >> >>> Does anybody have any idea about this ? >> Sure, this will fix it (or turn on compaction): >> --- a/mm/zsmalloc.c >> +++ b/mm/zsmalloc.c >> @@ -2413,7 +2413,9 @@ struct zs_pool *zs_create_pool(const char *name) >> if (!pool->name) >> goto err; >> >> +#ifdef CONFIG_COMPACTION >> init_waitqueue_head(&pool->migration_wait); >> +#endif > The fix is correct. I believe Andrew already has the same patch > in his tree. > > -ss No reaction of the stable team on this ? Meanwhile, the fix is in the mainline tree (commit 441e254cd40dc03beec3c650ce6ce6074bc6517f). Hopefully it can be included in the next stable releases. However, if I read the config text, memory compaction should always be enabled, even if it is disabled by default. Thanks in advance, François Valenduc