From: kernel test robot <lkp@intel.com> To: Thomas Gleixner <tglx@linutronix.de>, LKML <linux-kernel@vger.kernel.org> Cc: kbuild-all@lists.01.org, clang-built-linux@googlegroups.com, linux-arch@vger.kernel.org, Sebastian Andrzej Siewior <bigeasy@linutronix.de>, Valentin Schneider <valentin.schneider@arm.com>, Andrew Morton <akpm@linux-foundation.org>, Linux Memory Management List <linux-mm@kvack.org>, Richard Henderson <rth@twiddle.net>, Ivan Kokshaysky <ink@jurassic.park.msu.ru>, Matt Turner <mattst88@gmail.com>, linux-alpha@vger.kernel.org Subject: Re: [patch 05/13] mm/pagemap: Clenaup PREEMPT_COUNT leftovers Date: Tue, 15 Sep 2020 08:52:24 +0800 [thread overview] Message-ID: <202009150801.cgJKGy06%lkp@intel.com> (raw) In-Reply-To: <20200914204441.486057928@linutronix.de> [-- Attachment #1: Type: text/plain, Size: 18744 bytes --] Hi Thomas, I love your patch! Yet something to improve: [auto build test ERROR on drm-intel/for-linux-next] [also build test ERROR on linus/master v5.9-rc5 next-20200914] [cannot apply to rcu/dev arm/for-next tip/sched/core linux/master] [If your patch is applied to the wrong git tree, kindly drop us a note. And when submitting patch, we suggest to use '--base' as documented in https://git-scm.com/docs/git-format-patch] url: https://github.com/0day-ci/linux/commits/Thomas-Gleixner/preempt-Make-preempt-count-unconditional/20200915-044640 base: git://anongit.freedesktop.org/drm-intel for-linux-next config: arm-randconfig-r002-20200914 (attached as .config) compiler: clang version 12.0.0 (https://github.com/llvm/llvm-project b2c32c90bab09a6e2c1f370429db26017a182143) reproduce (this is a W=1 build): wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # install arm cross compiling tool for clang build # apt-get install binutils-arm-linux-gnueabi # save the attached .config to linux build tree COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=arm If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <lkp@intel.com> All error/warnings (new ones prefixed by >>): In file included from drivers/scsi/scsi.c:47: In file included from include/linux/blkdev.h:13: >> include/linux/pagemap.h:181:2: error: called object type 'void' is not a function or function pointer VM_BUG_ON_PAGE(page_count(page) == 0, page); ^ include/linux/mmdebug.h:46:36: note: expanded from macro 'VM_BUG_ON_PAGE' #define VM_BUG_ON_PAGE(cond, page) VM_BUG_ON(cond) ^ include/linux/mmdebug.h:45:25: note: expanded from macro 'VM_BUG_ON' #define VM_BUG_ON(cond) BUILD_BUG_ON_INVALID(cond) ^ include/linux/build_bug.h:30:33: note: expanded from macro 'BUILD_BUG_ON_INVALID' #define BUILD_BUG_ON_INVALID(e) ((void)(sizeof((__force long)(e)))) ^ In file included from drivers/scsi/scsi.c:62: In file included from include/scsi/scsi_cmnd.h:5: include/linux/dma-mapping.h:632:9: warning: implicit conversion from 'unsigned long long' to 'unsigned long' changes value from 18446744073709551615 to 4294967295 [-Wconstant-conversion] return DMA_BIT_MASK(32); ~~~~~~ ^~~~~~~~~~~~~~~~ include/linux/dma-mapping.h:139:40: note: expanded from macro 'DMA_BIT_MASK' #define DMA_BIT_MASK(n) (((n) == 64) ? ~0ULL : ((1ULL<<(n))-1)) ^~~~~ 1 warning and 1 error generated. -- In file included from drivers/scsi/scsicam.c:19: In file included from include/linux/blkdev.h:13: >> include/linux/pagemap.h:181:2: error: called object type 'void' is not a function or function pointer VM_BUG_ON_PAGE(page_count(page) == 0, page); ^ include/linux/mmdebug.h:46:36: note: expanded from macro 'VM_BUG_ON_PAGE' #define VM_BUG_ON_PAGE(cond, page) VM_BUG_ON(cond) ^ include/linux/mmdebug.h:45:25: note: expanded from macro 'VM_BUG_ON' #define VM_BUG_ON(cond) BUILD_BUG_ON_INVALID(cond) ^ include/linux/build_bug.h:30:33: note: expanded from macro 'BUILD_BUG_ON_INVALID' #define BUILD_BUG_ON_INVALID(e) ((void)(sizeof((__force long)(e)))) ^ 1 error generated. -- In file included from drivers/scsi/scsi_sysfs.c:13: In file included from include/linux/blkdev.h:13: >> include/linux/pagemap.h:181:2: error: called object type 'void' is not a function or function pointer VM_BUG_ON_PAGE(page_count(page) == 0, page); ^ include/linux/mmdebug.h:46:36: note: expanded from macro 'VM_BUG_ON_PAGE' #define VM_BUG_ON_PAGE(cond, page) VM_BUG_ON(cond) ^ include/linux/mmdebug.h:45:25: note: expanded from macro 'VM_BUG_ON' #define VM_BUG_ON(cond) BUILD_BUG_ON_INVALID(cond) ^ include/linux/build_bug.h:30:33: note: expanded from macro 'BUILD_BUG_ON_INVALID' #define BUILD_BUG_ON_INVALID(e) ((void)(sizeof((__force long)(e)))) ^ In file included from drivers/scsi/scsi_sysfs.c:20: In file included from include/scsi/scsi_tcq.h:6: In file included from include/scsi/scsi_cmnd.h:5: include/linux/dma-mapping.h:632:9: warning: implicit conversion from 'unsigned long long' to 'unsigned long' changes value from 18446744073709551615 to 4294967295 [-Wconstant-conversion] return DMA_BIT_MASK(32); ~~~~~~ ^~~~~~~~~~~~~~~~ include/linux/dma-mapping.h:139:40: note: expanded from macro 'DMA_BIT_MASK' #define DMA_BIT_MASK(n) (((n) == 64) ? ~0ULL : ((1ULL<<(n))-1)) ^~~~~ drivers/scsi/scsi_sysfs.c:373:1: warning: format specifies type 'short' but the argument has type 'int' [-Wformat] shost_rd_attr(can_queue, "%hd\n"); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ %d drivers/scsi/scsi_sysfs.c:176:45: note: expanded from macro 'shost_rd_attr' #define shost_rd_attr(field, format_string) \ ^ drivers/scsi/scsi_sysfs.c:173:2: note: expanded from macro '\ shost_rd_attr2' shost_show_function(name, field, format_string) \ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/scsi/scsi_sysfs.c:165:43: note: expanded from macro 'shost_show_function' return snprintf (buf, 20, format_string, shost->field); \ ~~~~~~~~~~~~~ ^~~~~~~~~~~~ 2 warnings and 1 error generated. -- In file included from drivers/scsi/ufs/ufshcd.c:18: In file included from drivers/scsi/ufs/ufshcd.h:32: In file included from include/linux/regulator/consumer.h:35: In file included from include/linux/suspend.h:5: In file included from include/linux/swap.h:9: In file included from include/linux/memcontrol.h:22: In file included from include/linux/writeback.h:14: In file included from include/linux/blk-cgroup.h:23: In file included from include/linux/blkdev.h:13: >> include/linux/pagemap.h:181:2: error: called object type 'void' is not a function or function pointer VM_BUG_ON_PAGE(page_count(page) == 0, page); ^ include/linux/mmdebug.h:46:36: note: expanded from macro 'VM_BUG_ON_PAGE' #define VM_BUG_ON_PAGE(cond, page) VM_BUG_ON(cond) ^ include/linux/mmdebug.h:45:25: note: expanded from macro 'VM_BUG_ON' #define VM_BUG_ON(cond) BUILD_BUG_ON_INVALID(cond) ^ include/linux/build_bug.h:30:33: note: expanded from macro 'BUILD_BUG_ON_INVALID' #define BUILD_BUG_ON_INVALID(e) ((void)(sizeof((__force long)(e)))) ^ In file included from drivers/scsi/ufs/ufshcd.c:18: In file included from drivers/scsi/ufs/ufshcd.h:41: In file included from include/scsi/scsi_cmnd.h:5: include/linux/dma-mapping.h:632:9: warning: implicit conversion from 'unsigned long long' to 'unsigned long' changes value from 18446744073709551615 to 4294967295 [-Wconstant-conversion] return DMA_BIT_MASK(32); ~~~~~~ ^~~~~~~~~~~~~~~~ include/linux/dma-mapping.h:139:40: note: expanded from macro 'DMA_BIT_MASK' #define DMA_BIT_MASK(n) (((n) == 64) ? ~0ULL : ((1ULL<<(n))-1)) ^~~~~ >> drivers/scsi/ufs/ufshcd.c:8716:44: warning: shift count >= width of type [-Wshift-count-overflow] if (!dma_set_mask_and_coherent(hba->dev, DMA_BIT_MASK(64))) ^~~~~~~~~~~~~~~~ include/linux/dma-mapping.h:139:54: note: expanded from macro 'DMA_BIT_MASK' #define DMA_BIT_MASK(n) (((n) == 64) ? ~0ULL : ((1ULL<<(n))-1)) ^ ~~~ 2 warnings and 1 error generated. -- In file included from drivers/scsi/hisi_sas/hisi_sas_main.c:7: In file included from drivers/scsi/hisi_sas/hisi_sas.h:16: In file included from include/linux/libata.h:21: In file included from include/scsi/scsi_host.h:11: In file included from include/linux/blk-mq.h:5: In file included from include/linux/blkdev.h:13: >> include/linux/pagemap.h:181:2: error: called object type 'void' is not a function or function pointer VM_BUG_ON_PAGE(page_count(page) == 0, page); ^ include/linux/mmdebug.h:46:36: note: expanded from macro 'VM_BUG_ON_PAGE' #define VM_BUG_ON_PAGE(cond, page) VM_BUG_ON(cond) ^ include/linux/mmdebug.h:45:25: note: expanded from macro 'VM_BUG_ON' #define VM_BUG_ON(cond) BUILD_BUG_ON_INVALID(cond) ^ include/linux/build_bug.h:30:33: note: expanded from macro 'BUILD_BUG_ON_INVALID' #define BUILD_BUG_ON_INVALID(e) ((void)(sizeof((__force long)(e)))) ^ >> drivers/scsi/hisi_sas/hisi_sas_main.c:2579:41: warning: shift count >= width of type [-Wshift-count-overflow] error = dma_set_mask_and_coherent(dev, DMA_BIT_MASK(64)); ^~~~~~~~~~~~~~~~ include/linux/dma-mapping.h:139:54: note: expanded from macro 'DMA_BIT_MASK' #define DMA_BIT_MASK(n) (((n) == 64) ? ~0ULL : ((1ULL<<(n))-1)) ^ ~~~ 1 warning and 1 error generated. -- In file included from drivers/scsi/scsi_sysfs.c:13: In file included from include/linux/blkdev.h:13: >> include/linux/pagemap.h:181:2: error: called object type 'void' is not a function or function pointer VM_BUG_ON_PAGE(page_count(page) == 0, page); ^ include/linux/mmdebug.h:46:36: note: expanded from macro 'VM_BUG_ON_PAGE' #define VM_BUG_ON_PAGE(cond, page) VM_BUG_ON(cond) ^ include/linux/mmdebug.h:45:25: note: expanded from macro 'VM_BUG_ON' #define VM_BUG_ON(cond) BUILD_BUG_ON_INVALID(cond) ^ include/linux/build_bug.h:30:33: note: expanded from macro 'BUILD_BUG_ON_INVALID' #define BUILD_BUG_ON_INVALID(e) ((void)(sizeof((__force long)(e)))) ^ In file included from drivers/scsi/scsi_sysfs.c:20: In file included from include/scsi/scsi_tcq.h:6: In file included from include/scsi/scsi_cmnd.h:5: include/linux/dma-mapping.h:632:9: warning: implicit conversion from 'unsigned long long' to 'unsigned long' changes value from 18446744073709551615 to 4294967295 [-Wconstant-conversion] return DMA_BIT_MASK(32); ~~~~~~ ^~~~~~~~~~~~~~~~ include/linux/dma-mapping.h:139:40: note: expanded from macro 'DMA_BIT_MASK' #define DMA_BIT_MASK(n) (((n) == 64) ? ~0ULL : ((1ULL<<(n))-1)) ^~~~~ drivers/scsi/scsi_sysfs.c:373:1: warning: format specifies type 'short' but the argument has type 'int' [-Wformat] shost_rd_attr(can_queue, "%hd\n"); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ %d drivers/scsi/scsi_sysfs.c:176:45: note: expanded from macro 'shost_rd_attr' #define shost_rd_attr(field, format_string) \ ^ drivers/scsi/scsi_sysfs.c:173:2: note: expanded from macro '\ shost_rd_attr2' shost_show_function(name, field, format_string) \ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/scsi/scsi_sysfs.c:165:43: note: expanded from macro 'shost_show_function' return snprintf (buf, 20, format_string, shost->field); \ ~~~~~~~~~~~~~ ^~~~~~~~~~~~ drivers/scsi/scsi_sysfs.c:1027:10: fatal error: 'scsi_devinfo_tbl.c' file not found #include "scsi_devinfo_tbl.c" ^~~~~~~~~~~~~~~~~~~~ 2 warnings and 2 errors generated. # https://github.com/0day-ci/linux/commit/a4a0f54fdd08d95dfe20d684b405db8a47fb61d8 git remote add linux-review https://github.com/0day-ci/linux git fetch --no-tags linux-review Thomas-Gleixner/preempt-Make-preempt-count-unconditional/20200915-044640 git checkout a4a0f54fdd08d95dfe20d684b405db8a47fb61d8 vim +/void +181 include/linux/pagemap.h ^1da177e4c3f41 Linus Torvalds 2005-04-16 123 e286781d5f2e9c Nick Piggin 2008-07-25 124 /* e286781d5f2e9c Nick Piggin 2008-07-25 125 * speculatively take a reference to a page. 0139aa7b7fa12c Joonsoo Kim 2016-05-19 126 * If the page is free (_refcount == 0), then _refcount is untouched, and 0 0139aa7b7fa12c Joonsoo Kim 2016-05-19 127 * is returned. Otherwise, _refcount is incremented by 1 and 1 is returned. e286781d5f2e9c Nick Piggin 2008-07-25 128 * e286781d5f2e9c Nick Piggin 2008-07-25 129 * This function must be called inside the same rcu_read_lock() section as has e286781d5f2e9c Nick Piggin 2008-07-25 130 * been used to lookup the page in the pagecache radix-tree (or page table): 0139aa7b7fa12c Joonsoo Kim 2016-05-19 131 * this allows allocators to use a synchronize_rcu() to stabilize _refcount. e286781d5f2e9c Nick Piggin 2008-07-25 132 * e286781d5f2e9c Nick Piggin 2008-07-25 133 * Unless an RCU grace period has passed, the count of all pages coming out e286781d5f2e9c Nick Piggin 2008-07-25 134 * of the allocator must be considered unstable. page_count may return higher e286781d5f2e9c Nick Piggin 2008-07-25 135 * than expected, and put_page must be able to do the right thing when the e286781d5f2e9c Nick Piggin 2008-07-25 136 * page has been finished with, no matter what it is subsequently allocated e286781d5f2e9c Nick Piggin 2008-07-25 137 * for (because put_page is what is used here to drop an invalid speculative e286781d5f2e9c Nick Piggin 2008-07-25 138 * reference). e286781d5f2e9c Nick Piggin 2008-07-25 139 * e286781d5f2e9c Nick Piggin 2008-07-25 140 * This is the interesting part of the lockless pagecache (and lockless e286781d5f2e9c Nick Piggin 2008-07-25 141 * get_user_pages) locking protocol, where the lookup-side (eg. find_get_page) e286781d5f2e9c Nick Piggin 2008-07-25 142 * has the following pattern: e286781d5f2e9c Nick Piggin 2008-07-25 143 * 1. find page in radix tree e286781d5f2e9c Nick Piggin 2008-07-25 144 * 2. conditionally increment refcount e286781d5f2e9c Nick Piggin 2008-07-25 145 * 3. check the page is still in pagecache (if no, goto 1) e286781d5f2e9c Nick Piggin 2008-07-25 146 * 0139aa7b7fa12c Joonsoo Kim 2016-05-19 147 * Remove-side that cares about stability of _refcount (eg. reclaim) has the b93b016313b3ba Matthew Wilcox 2018-04-10 148 * following (with the i_pages lock held): e286781d5f2e9c Nick Piggin 2008-07-25 149 * A. atomically check refcount is correct and set it to 0 (atomic_cmpxchg) e286781d5f2e9c Nick Piggin 2008-07-25 150 * B. remove page from pagecache e286781d5f2e9c Nick Piggin 2008-07-25 151 * C. free the page e286781d5f2e9c Nick Piggin 2008-07-25 152 * e286781d5f2e9c Nick Piggin 2008-07-25 153 * There are 2 critical interleavings that matter: e286781d5f2e9c Nick Piggin 2008-07-25 154 * - 2 runs before A: in this case, A sees elevated refcount and bails out e286781d5f2e9c Nick Piggin 2008-07-25 155 * - A runs before 2: in this case, 2 sees zero refcount and retries; e286781d5f2e9c Nick Piggin 2008-07-25 156 * subsequently, B will complete and 1 will find no page, causing the e286781d5f2e9c Nick Piggin 2008-07-25 157 * lookup to return NULL. e286781d5f2e9c Nick Piggin 2008-07-25 158 * e286781d5f2e9c Nick Piggin 2008-07-25 159 * It is possible that between 1 and 2, the page is removed then the exact same e286781d5f2e9c Nick Piggin 2008-07-25 160 * page is inserted into the same position in pagecache. That's OK: the b93b016313b3ba Matthew Wilcox 2018-04-10 161 * old find_get_page using a lock could equally have run before or after e286781d5f2e9c Nick Piggin 2008-07-25 162 * such a re-insertion, depending on order that locks are granted. e286781d5f2e9c Nick Piggin 2008-07-25 163 * e286781d5f2e9c Nick Piggin 2008-07-25 164 * Lookups racing against pagecache insertion isn't a big problem: either 1 e286781d5f2e9c Nick Piggin 2008-07-25 165 * will find the page or it will not. Likewise, the old find_get_page could run e286781d5f2e9c Nick Piggin 2008-07-25 166 * either before the insertion or afterwards, depending on timing. e286781d5f2e9c Nick Piggin 2008-07-25 167 */ 494eec70f05496 john.hubbard@gmail.com 2019-03-05 168 static inline int __page_cache_add_speculative(struct page *page, int count) e286781d5f2e9c Nick Piggin 2008-07-25 169 { 8375ad98cc1def Paul E. McKenney 2013-04-29 170 #ifdef CONFIG_TINY_RCU a4a0f54fdd08d9 Thomas Gleixner 2020-09-14 171 VM_BUG_ON(preemptible()) e286781d5f2e9c Nick Piggin 2008-07-25 172 /* e286781d5f2e9c Nick Piggin 2008-07-25 173 * Preempt must be disabled here - we rely on rcu_read_lock doing e286781d5f2e9c Nick Piggin 2008-07-25 174 * this for us. e286781d5f2e9c Nick Piggin 2008-07-25 175 * e286781d5f2e9c Nick Piggin 2008-07-25 176 * Pagecache won't be truncated from interrupt context, so if we have e286781d5f2e9c Nick Piggin 2008-07-25 177 * found a page in the radix tree here, we have pinned its refcount by e286781d5f2e9c Nick Piggin 2008-07-25 178 * disabling preempt, and hence no need for the "speculative get" that e286781d5f2e9c Nick Piggin 2008-07-25 179 * SMP requires. e286781d5f2e9c Nick Piggin 2008-07-25 180 */ 309381feaee564 Sasha Levin 2014-01-23 @181 VM_BUG_ON_PAGE(page_count(page) == 0, page); 494eec70f05496 john.hubbard@gmail.com 2019-03-05 182 page_ref_add(page, count); e286781d5f2e9c Nick Piggin 2008-07-25 183 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org [-- Attachment #2: .config.gz --] [-- Type: application/gzip, Size: 26917 bytes --]
WARNING: multiple messages have this Message-ID (diff)
From: kernel test robot <lkp@intel.com> To: kbuild-all@lists.01.org Subject: Re: [patch 05/13] mm/pagemap: Clenaup PREEMPT_COUNT leftovers Date: Tue, 15 Sep 2020 08:52:24 +0800 [thread overview] Message-ID: <202009150801.cgJKGy06%lkp@intel.com> (raw) In-Reply-To: <20200914204441.486057928@linutronix.de> [-- Attachment #1: Type: text/plain, Size: 19034 bytes --] Hi Thomas, I love your patch! Yet something to improve: [auto build test ERROR on drm-intel/for-linux-next] [also build test ERROR on linus/master v5.9-rc5 next-20200914] [cannot apply to rcu/dev arm/for-next tip/sched/core linux/master] [If your patch is applied to the wrong git tree, kindly drop us a note. And when submitting patch, we suggest to use '--base' as documented in https://git-scm.com/docs/git-format-patch] url: https://github.com/0day-ci/linux/commits/Thomas-Gleixner/preempt-Make-preempt-count-unconditional/20200915-044640 base: git://anongit.freedesktop.org/drm-intel for-linux-next config: arm-randconfig-r002-20200914 (attached as .config) compiler: clang version 12.0.0 (https://github.com/llvm/llvm-project b2c32c90bab09a6e2c1f370429db26017a182143) reproduce (this is a W=1 build): wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # install arm cross compiling tool for clang build # apt-get install binutils-arm-linux-gnueabi # save the attached .config to linux build tree COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=arm If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <lkp@intel.com> All error/warnings (new ones prefixed by >>): In file included from drivers/scsi/scsi.c:47: In file included from include/linux/blkdev.h:13: >> include/linux/pagemap.h:181:2: error: called object type 'void' is not a function or function pointer VM_BUG_ON_PAGE(page_count(page) == 0, page); ^ include/linux/mmdebug.h:46:36: note: expanded from macro 'VM_BUG_ON_PAGE' #define VM_BUG_ON_PAGE(cond, page) VM_BUG_ON(cond) ^ include/linux/mmdebug.h:45:25: note: expanded from macro 'VM_BUG_ON' #define VM_BUG_ON(cond) BUILD_BUG_ON_INVALID(cond) ^ include/linux/build_bug.h:30:33: note: expanded from macro 'BUILD_BUG_ON_INVALID' #define BUILD_BUG_ON_INVALID(e) ((void)(sizeof((__force long)(e)))) ^ In file included from drivers/scsi/scsi.c:62: In file included from include/scsi/scsi_cmnd.h:5: include/linux/dma-mapping.h:632:9: warning: implicit conversion from 'unsigned long long' to 'unsigned long' changes value from 18446744073709551615 to 4294967295 [-Wconstant-conversion] return DMA_BIT_MASK(32); ~~~~~~ ^~~~~~~~~~~~~~~~ include/linux/dma-mapping.h:139:40: note: expanded from macro 'DMA_BIT_MASK' #define DMA_BIT_MASK(n) (((n) == 64) ? ~0ULL : ((1ULL<<(n))-1)) ^~~~~ 1 warning and 1 error generated. -- In file included from drivers/scsi/scsicam.c:19: In file included from include/linux/blkdev.h:13: >> include/linux/pagemap.h:181:2: error: called object type 'void' is not a function or function pointer VM_BUG_ON_PAGE(page_count(page) == 0, page); ^ include/linux/mmdebug.h:46:36: note: expanded from macro 'VM_BUG_ON_PAGE' #define VM_BUG_ON_PAGE(cond, page) VM_BUG_ON(cond) ^ include/linux/mmdebug.h:45:25: note: expanded from macro 'VM_BUG_ON' #define VM_BUG_ON(cond) BUILD_BUG_ON_INVALID(cond) ^ include/linux/build_bug.h:30:33: note: expanded from macro 'BUILD_BUG_ON_INVALID' #define BUILD_BUG_ON_INVALID(e) ((void)(sizeof((__force long)(e)))) ^ 1 error generated. -- In file included from drivers/scsi/scsi_sysfs.c:13: In file included from include/linux/blkdev.h:13: >> include/linux/pagemap.h:181:2: error: called object type 'void' is not a function or function pointer VM_BUG_ON_PAGE(page_count(page) == 0, page); ^ include/linux/mmdebug.h:46:36: note: expanded from macro 'VM_BUG_ON_PAGE' #define VM_BUG_ON_PAGE(cond, page) VM_BUG_ON(cond) ^ include/linux/mmdebug.h:45:25: note: expanded from macro 'VM_BUG_ON' #define VM_BUG_ON(cond) BUILD_BUG_ON_INVALID(cond) ^ include/linux/build_bug.h:30:33: note: expanded from macro 'BUILD_BUG_ON_INVALID' #define BUILD_BUG_ON_INVALID(e) ((void)(sizeof((__force long)(e)))) ^ In file included from drivers/scsi/scsi_sysfs.c:20: In file included from include/scsi/scsi_tcq.h:6: In file included from include/scsi/scsi_cmnd.h:5: include/linux/dma-mapping.h:632:9: warning: implicit conversion from 'unsigned long long' to 'unsigned long' changes value from 18446744073709551615 to 4294967295 [-Wconstant-conversion] return DMA_BIT_MASK(32); ~~~~~~ ^~~~~~~~~~~~~~~~ include/linux/dma-mapping.h:139:40: note: expanded from macro 'DMA_BIT_MASK' #define DMA_BIT_MASK(n) (((n) == 64) ? ~0ULL : ((1ULL<<(n))-1)) ^~~~~ drivers/scsi/scsi_sysfs.c:373:1: warning: format specifies type 'short' but the argument has type 'int' [-Wformat] shost_rd_attr(can_queue, "%hd\n"); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ %d drivers/scsi/scsi_sysfs.c:176:45: note: expanded from macro 'shost_rd_attr' #define shost_rd_attr(field, format_string) \ ^ drivers/scsi/scsi_sysfs.c:173:2: note: expanded from macro '\ shost_rd_attr2' shost_show_function(name, field, format_string) \ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/scsi/scsi_sysfs.c:165:43: note: expanded from macro 'shost_show_function' return snprintf (buf, 20, format_string, shost->field); \ ~~~~~~~~~~~~~ ^~~~~~~~~~~~ 2 warnings and 1 error generated. -- In file included from drivers/scsi/ufs/ufshcd.c:18: In file included from drivers/scsi/ufs/ufshcd.h:32: In file included from include/linux/regulator/consumer.h:35: In file included from include/linux/suspend.h:5: In file included from include/linux/swap.h:9: In file included from include/linux/memcontrol.h:22: In file included from include/linux/writeback.h:14: In file included from include/linux/blk-cgroup.h:23: In file included from include/linux/blkdev.h:13: >> include/linux/pagemap.h:181:2: error: called object type 'void' is not a function or function pointer VM_BUG_ON_PAGE(page_count(page) == 0, page); ^ include/linux/mmdebug.h:46:36: note: expanded from macro 'VM_BUG_ON_PAGE' #define VM_BUG_ON_PAGE(cond, page) VM_BUG_ON(cond) ^ include/linux/mmdebug.h:45:25: note: expanded from macro 'VM_BUG_ON' #define VM_BUG_ON(cond) BUILD_BUG_ON_INVALID(cond) ^ include/linux/build_bug.h:30:33: note: expanded from macro 'BUILD_BUG_ON_INVALID' #define BUILD_BUG_ON_INVALID(e) ((void)(sizeof((__force long)(e)))) ^ In file included from drivers/scsi/ufs/ufshcd.c:18: In file included from drivers/scsi/ufs/ufshcd.h:41: In file included from include/scsi/scsi_cmnd.h:5: include/linux/dma-mapping.h:632:9: warning: implicit conversion from 'unsigned long long' to 'unsigned long' changes value from 18446744073709551615 to 4294967295 [-Wconstant-conversion] return DMA_BIT_MASK(32); ~~~~~~ ^~~~~~~~~~~~~~~~ include/linux/dma-mapping.h:139:40: note: expanded from macro 'DMA_BIT_MASK' #define DMA_BIT_MASK(n) (((n) == 64) ? ~0ULL : ((1ULL<<(n))-1)) ^~~~~ >> drivers/scsi/ufs/ufshcd.c:8716:44: warning: shift count >= width of type [-Wshift-count-overflow] if (!dma_set_mask_and_coherent(hba->dev, DMA_BIT_MASK(64))) ^~~~~~~~~~~~~~~~ include/linux/dma-mapping.h:139:54: note: expanded from macro 'DMA_BIT_MASK' #define DMA_BIT_MASK(n) (((n) == 64) ? ~0ULL : ((1ULL<<(n))-1)) ^ ~~~ 2 warnings and 1 error generated. -- In file included from drivers/scsi/hisi_sas/hisi_sas_main.c:7: In file included from drivers/scsi/hisi_sas/hisi_sas.h:16: In file included from include/linux/libata.h:21: In file included from include/scsi/scsi_host.h:11: In file included from include/linux/blk-mq.h:5: In file included from include/linux/blkdev.h:13: >> include/linux/pagemap.h:181:2: error: called object type 'void' is not a function or function pointer VM_BUG_ON_PAGE(page_count(page) == 0, page); ^ include/linux/mmdebug.h:46:36: note: expanded from macro 'VM_BUG_ON_PAGE' #define VM_BUG_ON_PAGE(cond, page) VM_BUG_ON(cond) ^ include/linux/mmdebug.h:45:25: note: expanded from macro 'VM_BUG_ON' #define VM_BUG_ON(cond) BUILD_BUG_ON_INVALID(cond) ^ include/linux/build_bug.h:30:33: note: expanded from macro 'BUILD_BUG_ON_INVALID' #define BUILD_BUG_ON_INVALID(e) ((void)(sizeof((__force long)(e)))) ^ >> drivers/scsi/hisi_sas/hisi_sas_main.c:2579:41: warning: shift count >= width of type [-Wshift-count-overflow] error = dma_set_mask_and_coherent(dev, DMA_BIT_MASK(64)); ^~~~~~~~~~~~~~~~ include/linux/dma-mapping.h:139:54: note: expanded from macro 'DMA_BIT_MASK' #define DMA_BIT_MASK(n) (((n) == 64) ? ~0ULL : ((1ULL<<(n))-1)) ^ ~~~ 1 warning and 1 error generated. -- In file included from drivers/scsi/scsi_sysfs.c:13: In file included from include/linux/blkdev.h:13: >> include/linux/pagemap.h:181:2: error: called object type 'void' is not a function or function pointer VM_BUG_ON_PAGE(page_count(page) == 0, page); ^ include/linux/mmdebug.h:46:36: note: expanded from macro 'VM_BUG_ON_PAGE' #define VM_BUG_ON_PAGE(cond, page) VM_BUG_ON(cond) ^ include/linux/mmdebug.h:45:25: note: expanded from macro 'VM_BUG_ON' #define VM_BUG_ON(cond) BUILD_BUG_ON_INVALID(cond) ^ include/linux/build_bug.h:30:33: note: expanded from macro 'BUILD_BUG_ON_INVALID' #define BUILD_BUG_ON_INVALID(e) ((void)(sizeof((__force long)(e)))) ^ In file included from drivers/scsi/scsi_sysfs.c:20: In file included from include/scsi/scsi_tcq.h:6: In file included from include/scsi/scsi_cmnd.h:5: include/linux/dma-mapping.h:632:9: warning: implicit conversion from 'unsigned long long' to 'unsigned long' changes value from 18446744073709551615 to 4294967295 [-Wconstant-conversion] return DMA_BIT_MASK(32); ~~~~~~ ^~~~~~~~~~~~~~~~ include/linux/dma-mapping.h:139:40: note: expanded from macro 'DMA_BIT_MASK' #define DMA_BIT_MASK(n) (((n) == 64) ? ~0ULL : ((1ULL<<(n))-1)) ^~~~~ drivers/scsi/scsi_sysfs.c:373:1: warning: format specifies type 'short' but the argument has type 'int' [-Wformat] shost_rd_attr(can_queue, "%hd\n"); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ %d drivers/scsi/scsi_sysfs.c:176:45: note: expanded from macro 'shost_rd_attr' #define shost_rd_attr(field, format_string) \ ^ drivers/scsi/scsi_sysfs.c:173:2: note: expanded from macro '\ shost_rd_attr2' shost_show_function(name, field, format_string) \ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/scsi/scsi_sysfs.c:165:43: note: expanded from macro 'shost_show_function' return snprintf (buf, 20, format_string, shost->field); \ ~~~~~~~~~~~~~ ^~~~~~~~~~~~ drivers/scsi/scsi_sysfs.c:1027:10: fatal error: 'scsi_devinfo_tbl.c' file not found #include "scsi_devinfo_tbl.c" ^~~~~~~~~~~~~~~~~~~~ 2 warnings and 2 errors generated. # https://github.com/0day-ci/linux/commit/a4a0f54fdd08d95dfe20d684b405db8a47fb61d8 git remote add linux-review https://github.com/0day-ci/linux git fetch --no-tags linux-review Thomas-Gleixner/preempt-Make-preempt-count-unconditional/20200915-044640 git checkout a4a0f54fdd08d95dfe20d684b405db8a47fb61d8 vim +/void +181 include/linux/pagemap.h ^1da177e4c3f41 Linus Torvalds 2005-04-16 123 e286781d5f2e9c Nick Piggin 2008-07-25 124 /* e286781d5f2e9c Nick Piggin 2008-07-25 125 * speculatively take a reference to a page. 0139aa7b7fa12c Joonsoo Kim 2016-05-19 126 * If the page is free (_refcount == 0), then _refcount is untouched, and 0 0139aa7b7fa12c Joonsoo Kim 2016-05-19 127 * is returned. Otherwise, _refcount is incremented by 1 and 1 is returned. e286781d5f2e9c Nick Piggin 2008-07-25 128 * e286781d5f2e9c Nick Piggin 2008-07-25 129 * This function must be called inside the same rcu_read_lock() section as has e286781d5f2e9c Nick Piggin 2008-07-25 130 * been used to lookup the page in the pagecache radix-tree (or page table): 0139aa7b7fa12c Joonsoo Kim 2016-05-19 131 * this allows allocators to use a synchronize_rcu() to stabilize _refcount. e286781d5f2e9c Nick Piggin 2008-07-25 132 * e286781d5f2e9c Nick Piggin 2008-07-25 133 * Unless an RCU grace period has passed, the count of all pages coming out e286781d5f2e9c Nick Piggin 2008-07-25 134 * of the allocator must be considered unstable. page_count may return higher e286781d5f2e9c Nick Piggin 2008-07-25 135 * than expected, and put_page must be able to do the right thing when the e286781d5f2e9c Nick Piggin 2008-07-25 136 * page has been finished with, no matter what it is subsequently allocated e286781d5f2e9c Nick Piggin 2008-07-25 137 * for (because put_page is what is used here to drop an invalid speculative e286781d5f2e9c Nick Piggin 2008-07-25 138 * reference). e286781d5f2e9c Nick Piggin 2008-07-25 139 * e286781d5f2e9c Nick Piggin 2008-07-25 140 * This is the interesting part of the lockless pagecache (and lockless e286781d5f2e9c Nick Piggin 2008-07-25 141 * get_user_pages) locking protocol, where the lookup-side (eg. find_get_page) e286781d5f2e9c Nick Piggin 2008-07-25 142 * has the following pattern: e286781d5f2e9c Nick Piggin 2008-07-25 143 * 1. find page in radix tree e286781d5f2e9c Nick Piggin 2008-07-25 144 * 2. conditionally increment refcount e286781d5f2e9c Nick Piggin 2008-07-25 145 * 3. check the page is still in pagecache (if no, goto 1) e286781d5f2e9c Nick Piggin 2008-07-25 146 * 0139aa7b7fa12c Joonsoo Kim 2016-05-19 147 * Remove-side that cares about stability of _refcount (eg. reclaim) has the b93b016313b3ba Matthew Wilcox 2018-04-10 148 * following (with the i_pages lock held): e286781d5f2e9c Nick Piggin 2008-07-25 149 * A. atomically check refcount is correct and set it to 0 (atomic_cmpxchg) e286781d5f2e9c Nick Piggin 2008-07-25 150 * B. remove page from pagecache e286781d5f2e9c Nick Piggin 2008-07-25 151 * C. free the page e286781d5f2e9c Nick Piggin 2008-07-25 152 * e286781d5f2e9c Nick Piggin 2008-07-25 153 * There are 2 critical interleavings that matter: e286781d5f2e9c Nick Piggin 2008-07-25 154 * - 2 runs before A: in this case, A sees elevated refcount and bails out e286781d5f2e9c Nick Piggin 2008-07-25 155 * - A runs before 2: in this case, 2 sees zero refcount and retries; e286781d5f2e9c Nick Piggin 2008-07-25 156 * subsequently, B will complete and 1 will find no page, causing the e286781d5f2e9c Nick Piggin 2008-07-25 157 * lookup to return NULL. e286781d5f2e9c Nick Piggin 2008-07-25 158 * e286781d5f2e9c Nick Piggin 2008-07-25 159 * It is possible that between 1 and 2, the page is removed then the exact same e286781d5f2e9c Nick Piggin 2008-07-25 160 * page is inserted into the same position in pagecache. That's OK: the b93b016313b3ba Matthew Wilcox 2018-04-10 161 * old find_get_page using a lock could equally have run before or after e286781d5f2e9c Nick Piggin 2008-07-25 162 * such a re-insertion, depending on order that locks are granted. e286781d5f2e9c Nick Piggin 2008-07-25 163 * e286781d5f2e9c Nick Piggin 2008-07-25 164 * Lookups racing against pagecache insertion isn't a big problem: either 1 e286781d5f2e9c Nick Piggin 2008-07-25 165 * will find the page or it will not. Likewise, the old find_get_page could run e286781d5f2e9c Nick Piggin 2008-07-25 166 * either before the insertion or afterwards, depending on timing. e286781d5f2e9c Nick Piggin 2008-07-25 167 */ 494eec70f05496 john.hubbard(a)gmail.com 2019-03-05 168 static inline int __page_cache_add_speculative(struct page *page, int count) e286781d5f2e9c Nick Piggin 2008-07-25 169 { 8375ad98cc1def Paul E. McKenney 2013-04-29 170 #ifdef CONFIG_TINY_RCU a4a0f54fdd08d9 Thomas Gleixner 2020-09-14 171 VM_BUG_ON(preemptible()) e286781d5f2e9c Nick Piggin 2008-07-25 172 /* e286781d5f2e9c Nick Piggin 2008-07-25 173 * Preempt must be disabled here - we rely on rcu_read_lock doing e286781d5f2e9c Nick Piggin 2008-07-25 174 * this for us. e286781d5f2e9c Nick Piggin 2008-07-25 175 * e286781d5f2e9c Nick Piggin 2008-07-25 176 * Pagecache won't be truncated from interrupt context, so if we have e286781d5f2e9c Nick Piggin 2008-07-25 177 * found a page in the radix tree here, we have pinned its refcount by e286781d5f2e9c Nick Piggin 2008-07-25 178 * disabling preempt, and hence no need for the "speculative get" that e286781d5f2e9c Nick Piggin 2008-07-25 179 * SMP requires. e286781d5f2e9c Nick Piggin 2008-07-25 180 */ 309381feaee564 Sasha Levin 2014-01-23 @181 VM_BUG_ON_PAGE(page_count(page) == 0, page); 494eec70f05496 john.hubbard(a)gmail.com 2019-03-05 182 page_ref_add(page, count); e286781d5f2e9c Nick Piggin 2008-07-25 183 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org [-- Attachment #2: config.gz --] [-- Type: application/gzip, Size: 26917 bytes --]
next prev parent reply other threads:[~2020-09-15 0:52 UTC|newest] Thread overview: 282+ messages / expand[flat|nested] mbox.gz Atom feed top 2020-09-14 20:42 [patch 00/13] preempt: Make preempt count unconditional Thomas Gleixner 2020-09-14 20:42 ` Thomas Gleixner 2020-09-14 20:42 ` [Intel-gfx] " Thomas Gleixner 2020-09-14 20:42 ` Thomas Gleixner 2020-09-14 20:42 ` Thomas Gleixner 2020-09-14 20:42 ` [patch 01/13] lib/debug: Remove pointless ARCH_NO_PREEMPT dependencies Thomas Gleixner 2020-09-14 20:42 ` Thomas Gleixner 2020-09-14 20:42 ` [Intel-gfx] " Thomas Gleixner 2020-09-14 20:42 ` Thomas Gleixner 2020-09-14 20:42 ` Thomas Gleixner 2020-09-14 20:42 ` [patch 02/13] preempt: Make preempt count unconditional Thomas Gleixner 2020-09-14 20:42 ` Thomas Gleixner 2020-09-14 20:42 ` [Intel-gfx] " Thomas Gleixner 2020-09-14 20:42 ` Thomas Gleixner 2020-09-14 20:42 ` Thomas Gleixner 2020-09-14 20:42 ` [patch 03/13] preempt: Clenaup PREEMPT_COUNT leftovers Thomas Gleixner 2020-09-14 20:42 ` Thomas Gleixner 2020-09-14 20:42 ` [Intel-gfx] " Thomas Gleixner 2020-09-14 20:42 ` Thomas Gleixner 2020-09-14 20:42 ` Thomas Gleixner 2020-09-16 10:56 ` Valentin Schneider 2020-09-16 10:56 ` Valentin Schneider 2020-09-16 10:56 ` [Intel-gfx] " Valentin Schneider 2020-09-16 10:56 ` Valentin Schneider 2020-09-14 20:42 ` [patch 04/13] lockdep: " Thomas Gleixner 2020-09-14 20:42 ` Thomas Gleixner 2020-09-14 20:42 ` [Intel-gfx] " Thomas Gleixner 2020-09-14 20:42 ` Thomas Gleixner 2020-09-14 20:42 ` Thomas Gleixner 2020-09-15 16:11 ` Will Deacon 2020-09-15 16:11 ` Will Deacon 2020-09-15 16:11 ` [Intel-gfx] " Will Deacon 2020-09-15 16:11 ` Will Deacon 2020-09-15 16:11 ` Will Deacon 2020-09-14 20:42 ` [patch 05/13] mm/pagemap: " Thomas Gleixner 2020-09-14 20:42 ` Thomas Gleixner 2020-09-14 20:42 ` [Intel-gfx] " Thomas Gleixner 2020-09-14 20:42 ` Thomas Gleixner 2020-09-14 20:42 ` Thomas Gleixner 2020-09-15 0:52 ` kernel test robot [this message] 2020-09-15 0:52 ` kernel test robot 2020-09-15 2:40 ` kernel test robot 2020-09-15 5:28 ` kernel test robot 2020-09-14 20:42 ` [patch 06/13] locking/bitspinlock: " Thomas Gleixner 2020-09-14 20:42 ` Thomas Gleixner 2020-09-14 20:42 ` [Intel-gfx] " Thomas Gleixner 2020-09-14 20:42 ` Thomas Gleixner 2020-09-14 20:42 ` Thomas Gleixner 2020-09-15 16:10 ` Will Deacon 2020-09-15 16:10 ` Will Deacon 2020-09-15 16:10 ` [Intel-gfx] " Will Deacon 2020-09-15 16:10 ` Will Deacon 2020-09-15 16:10 ` Will Deacon 2020-09-14 20:42 ` [patch 07/13] uaccess: " Thomas Gleixner 2020-09-14 20:42 ` Thomas Gleixner 2020-09-14 20:42 ` [Intel-gfx] " Thomas Gleixner 2020-09-14 20:42 ` Thomas Gleixner 2020-09-14 20:42 ` Thomas Gleixner 2020-09-14 20:42 ` [patch 08/13] sched: " Thomas Gleixner 2020-09-14 20:42 ` Thomas Gleixner 2020-09-14 20:42 ` [Intel-gfx] " Thomas Gleixner 2020-09-14 20:42 ` Thomas Gleixner 2020-09-14 20:42 ` Thomas Gleixner 2020-09-16 10:56 ` Valentin Schneider 2020-09-16 10:56 ` Valentin Schneider 2020-09-16 10:56 ` [Intel-gfx] " Valentin Schneider 2020-09-16 10:56 ` Valentin Schneider 2020-09-14 20:42 ` [patch 09/13] ARM: " Thomas Gleixner 2020-09-14 20:42 ` Thomas Gleixner 2020-09-14 20:42 ` [Intel-gfx] " Thomas Gleixner 2020-09-14 20:42 ` Thomas Gleixner 2020-09-14 20:42 ` Thomas Gleixner 2020-09-14 20:42 ` [patch 10/13] xtensa: " Thomas Gleixner 2020-09-14 20:42 ` Thomas Gleixner 2020-09-14 20:42 ` [Intel-gfx] " Thomas Gleixner 2020-09-14 20:42 ` Thomas Gleixner 2020-09-14 20:42 ` Thomas Gleixner 2020-09-14 20:42 ` [patch 11/13] drm/i915: " Thomas Gleixner 2020-09-14 20:42 ` Thomas Gleixner 2020-09-14 20:42 ` [Intel-gfx] " Thomas Gleixner 2020-09-14 20:42 ` Thomas Gleixner 2020-09-14 20:42 ` Thomas Gleixner 2020-09-14 20:42 ` [patch 12/13] rcutorture: " Thomas Gleixner 2020-09-14 20:42 ` Thomas Gleixner 2020-09-14 20:42 ` [Intel-gfx] " Thomas Gleixner 2020-09-14 20:42 ` Thomas Gleixner 2020-09-14 20:42 ` Thomas Gleixner 2020-09-14 20:42 ` [patch 13/13] preempt: Remove PREEMPT_COUNT from Kconfig Thomas Gleixner 2020-09-14 20:42 ` Thomas Gleixner 2020-09-14 20:42 ` [Intel-gfx] " Thomas Gleixner 2020-09-14 20:42 ` Thomas Gleixner 2020-09-14 20:42 ` Thomas Gleixner 2020-09-14 20:54 ` [patch 00/13] preempt: Make preempt count unconditional Steven Rostedt 2020-09-14 20:54 ` Steven Rostedt 2020-09-14 20:54 ` [Intel-gfx] " Steven Rostedt 2020-09-14 20:54 ` Steven Rostedt 2020-09-14 20:54 ` Steven Rostedt 2020-09-14 20:59 ` Linus Torvalds 2020-09-14 20:59 ` Linus Torvalds 2020-09-14 20:59 ` [Intel-gfx] " Linus Torvalds 2020-09-14 20:59 ` Linus Torvalds 2020-09-14 20:59 ` Linus Torvalds 2020-09-14 21:55 ` Thomas Gleixner 2020-09-14 21:55 ` Thomas Gleixner 2020-09-14 21:55 ` Thomas Gleixner 2020-09-14 21:55 ` [Intel-gfx] " Thomas Gleixner 2020-09-14 21:55 ` Thomas Gleixner 2020-09-14 21:55 ` Thomas Gleixner 2020-09-14 22:24 ` Linus Torvalds 2020-09-14 22:24 ` Linus Torvalds 2020-09-14 22:24 ` [Intel-gfx] " Linus Torvalds 2020-09-14 22:24 ` Linus Torvalds 2020-09-14 22:37 ` Linus Torvalds 2020-09-14 22:37 ` Linus Torvalds 2020-09-14 22:37 ` [Intel-gfx] " Linus Torvalds 2020-09-14 22:37 ` Linus Torvalds 2020-09-15 3:21 ` [PATCH] crypto: lib/chacha20poly1305 - Set SG_MITER_ATOMIC unconditionally Herbert Xu 2020-09-15 3:21 ` Herbert Xu 2020-09-15 3:21 ` Herbert Xu 2020-09-15 3:21 ` [Intel-gfx] " Herbert Xu 2020-09-15 3:21 ` Herbert Xu 2020-09-15 3:30 ` Herbert Xu 2020-09-15 6:03 ` Ard Biesheuvel 2020-09-15 6:40 ` Herbert Xu 2020-09-15 6:45 ` Linus Torvalds 2020-09-15 6:55 ` Linus Torvalds 2020-09-15 7:05 ` Herbert Xu 2020-09-15 7:10 ` Ard Biesheuvel 2020-09-15 9:34 ` Thomas Gleixner 2020-09-15 10:02 ` Ard Biesheuvel 2020-09-15 10:05 ` Herbert Xu 2020-09-15 10:08 ` Ard Biesheuvel 2020-09-15 10:10 ` Herbert Xu 2020-09-15 19:04 ` Thomas Gleixner 2020-09-15 7:08 ` Ard Biesheuvel 2020-09-15 6:20 ` [patch 00/13] preempt: Make preempt count unconditional Ard Biesheuvel 2020-09-15 6:20 ` Ard Biesheuvel 2020-09-15 6:20 ` [Intel-gfx] " Ard Biesheuvel 2020-09-15 6:20 ` Ard Biesheuvel 2020-09-15 6:20 ` Ard Biesheuvel 2020-09-15 6:22 ` Herbert Xu 2020-09-15 6:22 ` Herbert Xu 2020-09-15 6:22 ` Herbert Xu 2020-09-15 6:22 ` [Intel-gfx] " Herbert Xu 2020-09-15 6:22 ` Herbert Xu 2020-09-15 6:39 ` Linus Torvalds 2020-09-15 6:39 ` Linus Torvalds 2020-09-15 6:39 ` [Intel-gfx] " Linus Torvalds 2020-09-15 6:39 ` Linus Torvalds 2020-09-15 6:39 ` Linus Torvalds 2020-09-15 7:24 ` Thomas Gleixner 2020-09-15 7:24 ` Thomas Gleixner 2020-09-15 7:24 ` [Intel-gfx] " Thomas Gleixner 2020-09-15 17:29 ` Linus Torvalds 2020-09-15 17:29 ` Linus Torvalds 2020-09-15 17:29 ` [Intel-gfx] " Linus Torvalds 2020-09-15 17:29 ` Linus Torvalds 2020-09-15 17:29 ` Linus Torvalds 2020-09-15 8:39 ` Thomas Gleixner 2020-09-15 8:39 ` Thomas Gleixner 2020-09-15 8:39 ` Thomas Gleixner 2020-09-15 8:39 ` [Intel-gfx] " Thomas Gleixner 2020-09-15 8:39 ` Thomas Gleixner 2020-09-15 17:35 ` Linus Torvalds 2020-09-15 17:35 ` Linus Torvalds 2020-09-15 17:35 ` [Intel-gfx] " Linus Torvalds 2020-09-15 17:35 ` Linus Torvalds 2020-09-15 17:35 ` Linus Torvalds 2020-09-15 19:57 ` Thomas Gleixner 2020-09-15 19:57 ` Thomas Gleixner 2020-09-15 19:57 ` Thomas Gleixner 2020-09-15 19:57 ` [Intel-gfx] " Thomas Gleixner 2020-09-15 19:57 ` Thomas Gleixner 2020-09-15 19:57 ` Thomas Gleixner 2020-09-16 18:34 ` Linus Torvalds 2020-09-16 18:34 ` Linus Torvalds 2020-09-16 18:34 ` [Intel-gfx] " Linus Torvalds 2020-09-16 18:34 ` Linus Torvalds 2020-09-16 18:34 ` Linus Torvalds 2020-09-16 7:37 ` Daniel Vetter 2020-09-16 7:37 ` Daniel Vetter 2020-09-16 7:37 ` [Intel-gfx] " Daniel Vetter 2020-09-16 7:37 ` Daniel Vetter 2020-09-16 7:37 ` Daniel Vetter 2020-09-16 15:29 ` Paul E. McKenney 2020-09-16 15:29 ` Paul E. McKenney 2020-09-16 15:29 ` [Intel-gfx] " Paul E. McKenney 2020-09-16 15:29 ` Paul E. McKenney 2020-09-16 15:29 ` Paul E. McKenney 2020-09-16 18:32 ` Linus Torvalds 2020-09-16 18:32 ` Linus Torvalds 2020-09-16 18:32 ` [Intel-gfx] " Linus Torvalds 2020-09-16 18:32 ` Linus Torvalds 2020-09-16 18:32 ` Linus Torvalds 2020-09-16 20:43 ` Paul E. McKenney 2020-09-16 20:43 ` Paul E. McKenney 2020-09-16 20:43 ` [Intel-gfx] " Paul E. McKenney 2020-09-16 20:43 ` Paul E. McKenney 2020-09-16 20:43 ` Paul E. McKenney 2020-09-17 6:38 ` Ard Biesheuvel 2020-09-17 6:38 ` Ard Biesheuvel 2020-09-17 6:38 ` [Intel-gfx] " Ard Biesheuvel 2020-09-17 6:38 ` Ard Biesheuvel 2020-09-17 6:38 ` Ard Biesheuvel 2020-09-16 20:29 ` Daniel Vetter 2020-09-16 20:29 ` Daniel Vetter 2020-09-16 20:29 ` [Intel-gfx] " Daniel Vetter 2020-09-16 20:29 ` Daniel Vetter 2020-09-16 20:29 ` Daniel Vetter 2020-09-16 20:58 ` Paul E. McKenney 2020-09-16 20:58 ` Paul E. McKenney 2020-09-16 20:58 ` [Intel-gfx] " Paul E. McKenney 2020-09-16 20:58 ` Paul E. McKenney 2020-09-16 20:58 ` Paul E. McKenney 2020-09-16 21:43 ` Daniel Vetter 2020-09-16 21:43 ` Daniel Vetter 2020-09-16 21:43 ` [Intel-gfx] " Daniel Vetter 2020-09-16 21:43 ` Daniel Vetter 2020-09-16 21:43 ` Daniel Vetter 2020-09-16 22:39 ` Paul E. McKenney 2020-09-16 22:39 ` Paul E. McKenney 2020-09-16 22:39 ` [Intel-gfx] " Paul E. McKenney 2020-09-16 22:39 ` Paul E. McKenney 2020-09-16 22:39 ` Paul E. McKenney 2020-09-17 7:52 ` Daniel Vetter 2020-09-17 7:52 ` Daniel Vetter 2020-09-17 7:52 ` [Intel-gfx] " Daniel Vetter 2020-09-17 7:52 ` Daniel Vetter 2020-09-17 7:52 ` Daniel Vetter 2020-09-17 16:28 ` Paul E. McKenney 2020-09-17 16:28 ` Paul E. McKenney 2020-09-17 16:28 ` [Intel-gfx] " Paul E. McKenney 2020-09-17 16:28 ` Paul E. McKenney 2020-09-17 16:28 ` Paul E. McKenney 2020-09-29 8:19 ` Michal Hocko 2020-09-29 8:23 ` [Intel-gfx] " Michal Hocko 2020-09-29 8:23 ` Michal Hocko 2020-09-29 8:23 ` Michal Hocko 2020-09-29 8:23 ` Michal Hocko 2020-09-29 8:21 ` [Intel-gfx] " Michal Hocko 2020-09-29 8:21 ` Michal Hocko 2020-09-29 8:21 ` Michal Hocko 2020-09-29 8:21 ` Michal Hocko 2020-09-29 8:20 ` [Intel-gfx] " Michal Hocko 2020-09-29 8:20 ` Michal Hocko 2020-09-29 8:20 ` Michal Hocko 2020-09-29 8:20 ` Michal Hocko 2020-09-29 8:19 ` [Intel-gfx] " Michal Hocko 2020-09-29 8:19 ` Michal Hocko 2020-09-29 8:19 ` Michal Hocko 2020-09-29 8:19 ` Michal Hocko 2020-09-29 8:19 ` Michal Hocko 2020-09-29 8:19 ` [Intel-gfx] " Michal Hocko 2020-09-29 8:19 ` Michal Hocko 2020-09-29 8:19 ` Michal Hocko 2020-09-29 9:00 ` Daniel Vetter 2020-09-29 9:00 ` Daniel Vetter 2020-09-29 9:00 ` [Intel-gfx] " Daniel Vetter 2020-09-29 9:00 ` Daniel Vetter 2020-09-29 9:00 ` Daniel Vetter 2020-09-29 14:54 ` Michal Hocko 2020-09-29 14:54 ` Michal Hocko 2020-09-29 14:54 ` [Intel-gfx] " Michal Hocko 2020-09-29 14:54 ` Michal Hocko 2020-09-29 14:54 ` Michal Hocko 2020-09-16 19:23 ` Matthew Wilcox 2020-09-16 19:23 ` Matthew Wilcox 2020-09-16 19:23 ` [Intel-gfx] " Matthew Wilcox 2020-09-16 19:23 ` Matthew Wilcox 2020-09-16 19:23 ` Matthew Wilcox 2020-09-16 20:48 ` Paul E. McKenney 2020-09-16 20:48 ` Paul E. McKenney 2020-09-16 20:48 ` [Intel-gfx] " Paul E. McKenney 2020-09-16 20:48 ` Paul E. McKenney 2020-09-16 20:48 ` Paul E. McKenney 2020-09-15 17:25 ` Paul E. McKenney 2020-09-15 17:25 ` Paul E. McKenney 2020-09-15 17:25 ` [Intel-gfx] " Paul E. McKenney 2020-09-15 17:25 ` Paul E. McKenney 2020-09-15 17:25 ` Paul E. McKenney 2020-09-15 17:25 ` Paul E. McKenney 2020-09-14 22:01 ` [Intel-gfx] ✗ Fi.CI.BUILD: failure for " Patchwork
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=202009150801.cgJKGy06%lkp@intel.com \ --to=lkp@intel.com \ --cc=akpm@linux-foundation.org \ --cc=bigeasy@linutronix.de \ --cc=clang-built-linux@googlegroups.com \ --cc=ink@jurassic.park.msu.ru \ --cc=kbuild-all@lists.01.org \ --cc=linux-alpha@vger.kernel.org \ --cc=linux-arch@vger.kernel.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-mm@kvack.org \ --cc=mattst88@gmail.com \ --cc=rth@twiddle.net \ --cc=tglx@linutronix.de \ --cc=valentin.schneider@arm.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.