Thread (7 messages) 7 messages, 3 authors, 2021-08-07

Re: mmotm 2021-08-05-19-46 uploaded (mm/filemap.c)

From: Randy Dunlap <hidden>
Date: 2021-08-06 05:00:40
Also in: linux-fsdevel, linux-mm, lkml, mm-commits

On 8/5/21 7:46 PM, akpm@linux-foundation.org wrote:
The mm-of-the-moment snapshot 2021-08-05-19-46 has been uploaded to

    https://www.ozlabs.org/~akpm/mmotm/

mmotm-readme.txt says

README for mm-of-the-moment:

https://www.ozlabs.org/~akpm/mmotm/

This is a snapshot of my -mm patch queue.  Uploaded at random hopefully
more than once a week.

You will need quilt to apply these patches to the latest Linus release (5.x
or 5.x-rcY).  The series file is in broken-out.tar.gz and is duplicated in
https://ozlabs.org/~akpm/mmotm/series

The file broken-out.tar.gz contains two datestamp files: .DATE and
.DATE-yyyy-mm-dd-hh-mm-ss.  Both contain the string yyyy-mm-dd-hh-mm-ss,
followed by the base kernel version against which this patch series is to
be applied.
on i386, I am seeing lots of build errors due to references to
some PAGE_ flags that are only defined for 64BIT:

In file included from ../mm/filemap.c:44:0:
../include/linux/page_idle.h: In function ‘folio_test_young’:
../include/linux/page_idle.h:25:18: error: ‘PAGE_EXT_YOUNG’ undeclared (first use in this function); did you mean ‘PAGEOUTRUN’?
   return test_bit(PAGE_EXT_YOUNG, &page_ext->flags);
                   ^~~~~~~~~~~~~~
                   PAGEOUTRUN
../include/linux/page_idle.h:25:18: note: each undeclared identifier is reported only once for each function it appears in
../include/linux/page_idle.h:25:43: error: dereferencing pointer to incomplete type ‘struct page_ext’
   return test_bit(PAGE_EXT_YOUNG, &page_ext->flags);
                                            ^~
../include/linux/page_idle.h: In function ‘folio_set_young’:
../include/linux/page_idle.h:35:10: error: ‘PAGE_EXT_YOUNG’ undeclared (first use in this function); did you mean ‘PAGEOUTRUN’?
   set_bit(PAGE_EXT_YOUNG, &page_ext->flags);
           ^~~~~~~~~~~~~~
           PAGEOUTRUN
../include/linux/page_idle.h: In function ‘folio_test_clear_young’:
../include/linux/page_idle.h:45:28: error: ‘PAGE_EXT_YOUNG’ undeclared (first use in this function); did you mean ‘PAGEOUTRUN’?
   return test_and_clear_bit(PAGE_EXT_YOUNG, &page_ext->flags);
                             ^~~~~~~~~~~~~~
                             PAGEOUTRUN
../include/linux/page_idle.h: In function ‘folio_test_idle’:
../include/linux/page_idle.h:55:18: error: ‘PAGE_EXT_IDLE’ undeclared (first use in this function); did you mean ‘CPU_NOT_IDLE’?
   return test_bit(PAGE_EXT_IDLE, &page_ext->flags);
                   ^~~~~~~~~~~~~
                   CPU_NOT_IDLE
   AS      arch/x86/crypto/twofish-i586-asm_32.o
   AR      arch/x86/events/zhaoxin/built-in.a
../include/linux/page_idle.h: In function ‘folio_set_idle’:
../include/linux/page_idle.h:65:10: error: ‘PAGE_EXT_IDLE’ undeclared (first use in this function); did you mean ‘CPU_NOT_IDLE’?
   set_bit(PAGE_EXT_IDLE, &page_ext->flags);
           ^~~~~~~~~~~~~
           CPU_NOT_IDLE
../include/linux/page_idle.h: In function ‘folio_clear_idle’:
../include/linux/page_idle.h:75:12: error: ‘PAGE_EXT_IDLE’ undeclared (first use in this function); did you mean ‘CPU_NOT_IDLE’?
   clear_bit(PAGE_EXT_IDLE, &page_ext->flags);
             ^~~~~~~~~~~~~
             CPU_NOT_IDLE
   CC      mm/kfence/kfence_test.o
   CC      arch/x86/events/intel/uncore_nhmex.o
   CC      arch/x86/platform/atom/punit_atom_debug.o
../include/linux/page_idle.h: In function ‘folio_test_idle’:
../include/linux/page_idle.h:56:1: error: control reaches end of non-void function [-Werror=return-type]
  }

See:
--- a/include/linux/page_ext.h~mm-idle_page_tracking-make-pg_idle-reusable
+++ a/include/linux/page_ext.h
@@ -19,7 +19,7 @@ struct page_ext_operations {
  enum page_ext_flags {
  	PAGE_EXT_OWNER,
  	PAGE_EXT_OWNER_ALLOCATED,
-#if defined(CONFIG_IDLE_PAGE_TRACKING) && !defined(CONFIG_64BIT)
+#if defined(CONFIG_PAGE_IDLE_FLAG) && !defined(CONFIG_64BIT)
  	PAGE_EXT_YOUNG,
  	PAGE_EXT_IDLE,
  #endif

-- 
~Randy
Reported-by: Randy Dunlap <rdunlap@infradead.org>
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help