Re: [PATCH] mm/madvise: allow MADV_DONTNEED to free memory that is MLOCK_ONFAULT

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Jason,

I love your patch! Perhaps something to improve:

[auto build test WARNING on mmotm/master]
[also build test WARNING on v4.17 next-20180608]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

url:    https://github.com/0day-ci/linux/commits/Jason-Baron/mm-madvise-allow-MADV_DONTNEED-to-free-memory-that-is-MLOCK_ONFAULT/20180609-185549
base:   git://git.cmpxchg.org/linux-mmotm.git master
config: alpha-allmodconfig (attached as .config)
compiler: alpha-linux-gnu-gcc (Debian 7.2.0-11) 7.2.0
reproduce:
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # save the attached .config to linux build tree
        GCC_VERSION=7.2.0 make.cross ARCH=alpha 

All warnings (new ones prefixed by >>):

   In file included from mm//internal.h:18:0,
                    from mm//swap.c:39:
   include/uapi/asm-generic/mman-common.h:22:0: warning: "MAP_FIXED" redefined
    #define MAP_FIXED 0x10  /* Interpret addr exactly */
    
   In file included from include/uapi/linux/mman.h:5:0,
                    from include/linux/mman.h:9,
                    from mm//swap.c:20:
   arch/alpha/include/uapi/asm/mman.h:17:0: note: this is the location of the previous definition
    #define MAP_FIXED 0x100  /* Interpret addr exactly */
    
   In file included from mm//internal.h:18:0,
                    from mm//swap.c:39:
   include/uapi/asm-generic/mman-common.h:23:0: warning: "MAP_ANONYMOUS" redefined
    #define MAP_ANONYMOUS 0x20  /* don't use a file */
    
   In file included from include/uapi/linux/mman.h:5:0,
                    from include/linux/mman.h:9,
                    from mm//swap.c:20:
   arch/alpha/include/uapi/asm/mman.h:18:0: note: this is the location of the previous definition
    #define MAP_ANONYMOUS 0x10  /* don't use a file */
    
   In file included from mm//internal.h:18:0,
                    from mm//swap.c:39:
   include/uapi/asm-generic/mman-common.h:27:0: warning: "MAP_UNINITIALIZED" redefined
    # define MAP_UNINITIALIZED 0x0  /* Don't support this flag */
    
   In file included from mm//swap.c:20:0:
   include/linux/mman.h:25:0: note: this is the location of the previous definition
    #define MAP_UNINITIALIZED 0
    
   In file included from mm//internal.h:18:0,
                    from mm//swap.c:39:
>> include/uapi/asm-generic/mman-common.h:31:0: warning: "MAP_FIXED_NOREPLACE" redefined
    #define MAP_FIXED_NOREPLACE 0x100000 /* MAP_FIXED which doesn't unmap underlying mapping */
    
   In file included from include/uapi/linux/mman.h:5:0,
                    from include/linux/mman.h:9,
                    from mm//swap.c:20:
   arch/alpha/include/uapi/asm/mman.h:35:0: note: this is the location of the previous definition
    #define MAP_FIXED_NOREPLACE 0x200000/* MAP_FIXED which doesn't unmap underlying mapping */
    
   In file included from mm//internal.h:18:0,
                    from mm//swap.c:39:
   include/uapi/asm-generic/mman-common.h:39:0: warning: "MS_INVALIDATE" redefined
    #define MS_INVALIDATE 2  /* invalidate the caches */
    
   In file included from include/uapi/linux/mman.h:5:0,
                    from include/linux/mman.h:9,
                    from mm//swap.c:20:
   arch/alpha/include/uapi/asm/mman.h:39:0: note: this is the location of the previous definition
    #define MS_INVALIDATE 4  /* invalidate the caches */
    
   In file included from mm//internal.h:18:0,
                    from mm//swap.c:39:
   include/uapi/asm-generic/mman-common.h:40:0: warning: "MS_SYNC" redefined
    #define MS_SYNC  4  /* synchronous memory sync */
    
   In file included from include/uapi/linux/mman.h:5:0,
                    from include/linux/mman.h:9,
                    from mm//swap.c:20:
   arch/alpha/include/uapi/asm/mman.h:38:0: note: this is the location of the previous definition
    #define MS_SYNC  2  /* synchronous memory sync */
    
   In file included from mm//internal.h:18:0,
                    from mm//swap.c:39:
>> include/uapi/asm-generic/mman-common.h:46:0: warning: "MADV_DONTNEED" redefined
    #define MADV_DONTNEED 4  /* don't need these pages */
    
   In file included from include/uapi/linux/mman.h:5:0,
                    from include/linux/mman.h:9,
                    from mm//swap.c:20:
   arch/alpha/include/uapi/asm/mman.h:52:0: note: this is the location of the previous definition
    #define MADV_DONTNEED 6  /* don't need these pages */
    

vim +/MAP_FIXED_NOREPLACE +31 include/uapi/asm-generic/mman-common.h

5f6164f3 include/asm-generic/mman.h             Michael S. Tsirkin 2006-02-15  17  
5f6164f3 include/asm-generic/mman.h             Michael S. Tsirkin 2006-02-15  18  #define MAP_SHARED	0x01		/* Share changes */
5f6164f3 include/asm-generic/mman.h             Michael S. Tsirkin 2006-02-15  19  #define MAP_PRIVATE	0x02		/* Changes are private */
1c972597 include/uapi/asm-generic/mman-common.h Dan Williams       2017-11-01  20  #define MAP_SHARED_VALIDATE 0x03	/* share + validate extension flags */
5f6164f3 include/asm-generic/mman.h             Michael S. Tsirkin 2006-02-15  21  #define MAP_TYPE	0x0f		/* Mask for type of mapping */
5f6164f3 include/asm-generic/mman.h             Michael S. Tsirkin 2006-02-15  22  #define MAP_FIXED	0x10		/* Interpret addr exactly */
5f6164f3 include/asm-generic/mman.h             Michael S. Tsirkin 2006-02-15  23  #define MAP_ANONYMOUS	0x20		/* don't use a file */
ea637639 include/asm-generic/mman-common.h      Jie Zhang          2009-12-14  24  #ifdef CONFIG_MMAP_ALLOW_UNINITIALIZED
ea637639 include/asm-generic/mman-common.h      Jie Zhang          2009-12-14  25  # define MAP_UNINITIALIZED 0x4000000	/* For anonymous mmap, memory could be uninitialized */
ea637639 include/asm-generic/mman-common.h      Jie Zhang          2009-12-14  26  #else
ea637639 include/asm-generic/mman-common.h      Jie Zhang          2009-12-14 @27  # define MAP_UNINITIALIZED 0x0		/* Don't support this flag */
ea637639 include/asm-generic/mman-common.h      Jie Zhang          2009-12-14  28  #endif
4ed28639 include/uapi/asm-generic/mman-common.h Michal Hocko       2018-04-10  29  
4ed28639 include/uapi/asm-generic/mman-common.h Michal Hocko       2018-04-10  30  /* 0x0100 - 0x80000 flags are defined in asm-generic/mman.h */
4ed28639 include/uapi/asm-generic/mman-common.h Michal Hocko       2018-04-10 @31  #define MAP_FIXED_NOREPLACE	0x100000	/* MAP_FIXED which doesn't unmap underlying mapping */
5f6164f3 include/asm-generic/mman.h             Michael S. Tsirkin 2006-02-15  32  
b0f205c2 include/uapi/asm-generic/mman-common.h Eric B Munson      2015-11-05  33  /*
b0f205c2 include/uapi/asm-generic/mman-common.h Eric B Munson      2015-11-05  34   * Flags for mlock
b0f205c2 include/uapi/asm-generic/mman-common.h Eric B Munson      2015-11-05  35   */
b0f205c2 include/uapi/asm-generic/mman-common.h Eric B Munson      2015-11-05  36  #define MLOCK_ONFAULT	0x01		/* Lock pages in range after they are faulted in, do not prefault */
b0f205c2 include/uapi/asm-generic/mman-common.h Eric B Munson      2015-11-05  37  
5f6164f3 include/asm-generic/mman.h             Michael S. Tsirkin 2006-02-15  38  #define MS_ASYNC	1		/* sync memory asynchronously */
5f6164f3 include/asm-generic/mman.h             Michael S. Tsirkin 2006-02-15  39  #define MS_INVALIDATE	2		/* invalidate the caches */
5f6164f3 include/asm-generic/mman.h             Michael S. Tsirkin 2006-02-15  40  #define MS_SYNC		4		/* synchronous memory sync */
5f6164f3 include/asm-generic/mman.h             Michael S. Tsirkin 2006-02-15  41  
5f6164f3 include/asm-generic/mman.h             Michael S. Tsirkin 2006-02-15  42  #define MADV_NORMAL	0		/* no further special treatment */
5f6164f3 include/asm-generic/mman.h             Michael S. Tsirkin 2006-02-15  43  #define MADV_RANDOM	1		/* expect random page references */
5f6164f3 include/asm-generic/mman.h             Michael S. Tsirkin 2006-02-15  44  #define MADV_SEQUENTIAL	2		/* expect sequential page references */
5f6164f3 include/asm-generic/mman.h             Michael S. Tsirkin 2006-02-15  45  #define MADV_WILLNEED	3		/* will need these pages */
5f6164f3 include/asm-generic/mman.h             Michael S. Tsirkin 2006-02-15 @46  #define MADV_DONTNEED	4		/* don't need these pages */
5f6164f3 include/asm-generic/mman.h             Michael S. Tsirkin 2006-02-15  47  

:::::: The code at line 31 was first introduced by commit
:::::: 4ed28639519c7bad5f518e70b3284c6e0763e650 fs, elf: drop MAP_FIXED usage from elf_map

:::::: TO: Michal Hocko <mhocko@xxxxxxxx>
:::::: CC: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

Attachment: .config.gz
Description: application/gzip


[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux