From: kbuild test robot <fengguang.wu@intel.com>
To: Vlastimil Babka <vbabka@suse.cz>
Cc: kbuild-all@01.org, Andrew Morton <akpm@linux-foundation.org>,
Linux Memory Management List <linux-mm@kvack.org>
Subject: [linux-next:master 1860/2084] include/linux/mm.h:1602:2: note: in expansion of macro 'spin_lock_init'
Date: Thu, 28 Jan 2016 15:23:12 +0800 [thread overview]
Message-ID: <201601281504.800eqd3p%fengguang.wu@intel.com> (raw)
[-- Attachment #1: Type: text/plain, Size: 13063 bytes --]
tree: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
head: 888c8375131656144c1605071eab2eb6ac49abc3
commit: cec08ed70d3d5209368a435fed278ae667117a0c [1860/2084] mm, printk: introduce new format string for flags
config: s390-allyesconfig (attached as .config)
reproduce:
wget https://git.kernel.org/cgit/linux/kernel/git/wfg/lkp-tests.git/plain/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
git checkout cec08ed70d3d5209368a435fed278ae667117a0c
# save the attached .config to linux build tree
make.cross ARCH=s390
All error/warnings (new ones prefixed by >>):
In file included from include/linux/spinlock.h:81:0,
from include/linux/rcupdate.h:38,
from include/linux/tracepoint.h:19,
from include/linux/mmdebug.h:7,
from arch/s390/include/asm/cmpxchg.h:10,
from arch/s390/include/asm/atomic.h:19,
from include/linux/atomic.h:4,
from include/linux/debug_locks.h:5,
from include/linux/lockdep.h:23,
from include/linux/hardirq.h:5,
from include/linux/kvm_host.h:10,
from arch/s390/kernel/asm-offsets.c:10:
>> include/linux/spinlock_types.h:30:21: error: field 'dep_map' has incomplete type
struct lockdep_map dep_map;
^
include/linux/spinlock_types.h:72:23: error: field 'dep_map' has incomplete type
struct lockdep_map dep_map;
^
In file included from include/linux/spinlock_types.h:86:0,
from include/linux/spinlock.h:81,
from include/linux/rcupdate.h:38,
from include/linux/tracepoint.h:19,
from include/linux/mmdebug.h:7,
from arch/s390/include/asm/cmpxchg.h:10,
from arch/s390/include/asm/atomic.h:19,
from include/linux/atomic.h:4,
from include/linux/debug_locks.h:5,
from include/linux/lockdep.h:23,
from include/linux/hardirq.h:5,
from include/linux/kvm_host.h:10,
from arch/s390/kernel/asm-offsets.c:10:
>> include/linux/rwlock_types.h:21:21: error: field 'dep_map' has incomplete type
struct lockdep_map dep_map;
^
In file included from include/linux/smp.h:14:0,
from arch/s390/include/asm/spinlock.h:12,
from include/linux/spinlock.h:87,
from include/linux/rcupdate.h:38,
from include/linux/tracepoint.h:19,
from include/linux/mmdebug.h:7,
from arch/s390/include/asm/cmpxchg.h:10,
from arch/s390/include/asm/atomic.h:19,
from include/linux/atomic.h:4,
from include/linux/debug_locks.h:5,
from include/linux/lockdep.h:23,
from include/linux/hardirq.h:5,
from include/linux/kvm_host.h:10,
from arch/s390/kernel/asm-offsets.c:10:
include/linux/llist.h: In function 'llist_del_all':
>> include/linux/llist.h:193:2: error: implicit declaration of function 'xchg' [-Werror=implicit-function-declaration]
return xchg(&head->first, NULL);
^
>> include/linux/llist.h:193:2: warning: return makes pointer from integer without a cast
In file included from include/linux/rcupdate.h:38:0,
from include/linux/tracepoint.h:19,
from include/linux/mmdebug.h:7,
from arch/s390/include/asm/cmpxchg.h:10,
from arch/s390/include/asm/atomic.h:19,
from include/linux/atomic.h:4,
from include/linux/debug_locks.h:5,
from include/linux/lockdep.h:23,
from include/linux/hardirq.h:5,
from include/linux/kvm_host.h:10,
from arch/s390/kernel/asm-offsets.c:10:
include/linux/spinlock.h: At top level:
>> include/linux/spinlock.h:94:15: warning: 'struct lock_class_key' declared inside parameter list
struct lock_class_key *key);
^
>> include/linux/spinlock.h:94:15: warning: its scope is only this definition or declaration, which is probably not what you want
In file included from include/linux/spinlock.h:274:0,
from include/linux/rcupdate.h:38,
from include/linux/tracepoint.h:19,
from include/linux/mmdebug.h:7,
from arch/s390/include/asm/cmpxchg.h:10,
from arch/s390/include/asm/atomic.h:19,
from include/linux/atomic.h:4,
from include/linux/debug_locks.h:5,
from include/linux/lockdep.h:23,
from include/linux/hardirq.h:5,
from include/linux/kvm_host.h:10,
from arch/s390/kernel/asm-offsets.c:10:
>> include/linux/rwlock.h:19:15: warning: 'struct lock_class_key' declared inside parameter list
struct lock_class_key *key);
^
In file included from include/linux/spinlock.h:280:0,
from include/linux/rcupdate.h:38,
from include/linux/tracepoint.h:19,
from include/linux/mmdebug.h:7,
from arch/s390/include/asm/cmpxchg.h:10,
from arch/s390/include/asm/atomic.h:19,
from include/linux/atomic.h:4,
from include/linux/debug_locks.h:5,
from include/linux/lockdep.h:23,
from include/linux/hardirq.h:5,
from include/linux/kvm_host.h:10,
from arch/s390/kernel/asm-offsets.c:10:
include/linux/spinlock_api_smp.h: In function '__raw_spin_trylock':
>> include/linux/spinlock_api_smp.h:92:3: error: implicit declaration of function 'spin_acquire' [-Werror=implicit-function-declaration]
spin_acquire(&lock->dep_map, 0, 1, _RET_IP_);
^
include/linux/spinlock_api_smp.h: In function '__raw_spin_lock_irqsave':
>> include/linux/spinlock_api_smp.h:119:2: error: implicit declaration of function 'LOCK_CONTENDED' [-Werror=implicit-function-declaration]
LOCK_CONTENDED(lock, do_raw_spin_trylock, do_raw_spin_lock);
^
include/linux/spinlock_api_smp.h: In function '__raw_spin_unlock':
>> include/linux/spinlock_api_smp.h:152:2: error: implicit declaration of function 'spin_release' [-Werror=implicit-function-declaration]
spin_release(&lock->dep_map, 1, _RET_IP_);
^
In file included from include/linux/spinlock_api_smp.h:192:0,
from include/linux/spinlock.h:280,
from include/linux/rcupdate.h:38,
from include/linux/tracepoint.h:19,
from include/linux/mmdebug.h:7,
from arch/s390/include/asm/cmpxchg.h:10,
from arch/s390/include/asm/atomic.h:19,
from include/linux/atomic.h:4,
from include/linux/debug_locks.h:5,
from include/linux/lockdep.h:23,
from include/linux/hardirq.h:5,
from include/linux/kvm_host.h:10,
from arch/s390/kernel/asm-offsets.c:10:
include/linux/rwlock_api_smp.h: In function '__raw_read_trylock':
>> include/linux/rwlock_api_smp.h:121:3: error: implicit declaration of function 'rwlock_acquire_read' [-Werror=implicit-function-declaration]
rwlock_acquire_read(&lock->dep_map, 0, 1, _RET_IP_);
^
include/linux/rwlock_api_smp.h: In function '__raw_write_trylock':
>> include/linux/rwlock_api_smp.h:132:3: error: implicit declaration of function 'rwlock_acquire' [-Werror=implicit-function-declaration]
rwlock_acquire(&lock->dep_map, 0, 1, _RET_IP_);
^
include/linux/rwlock_api_smp.h: In function '__raw_read_lock_irqsave':
>> include/linux/rwlock_api_smp.h:160:2: error: implicit declaration of function 'LOCK_CONTENDED_FLAGS' [-Werror=implicit-function-declaration]
LOCK_CONTENDED_FLAGS(lock, do_raw_read_trylock, do_raw_read_lock,
^
>> include/linux/rwlock_api_smp.h:161:9: error: 'do_raw_read_lock_flags' undeclared (first use in this function)
do_raw_read_lock_flags, &flags);
^
include/linux/rwlock_api_smp.h:161:9: note: each undeclared identifier is reported only once for each function it appears in
include/linux/rwlock_api_smp.h: In function '__raw_write_lock_irqsave':
>> include/linux/rwlock_api_smp.h:188:9: error: 'do_raw_write_lock_flags' undeclared (first use in this function)
do_raw_write_lock_flags, &flags);
^
include/linux/rwlock_api_smp.h: In function '__raw_write_unlock':
>> include/linux/rwlock_api_smp.h:218:2: error: implicit declaration of function 'rwlock_release' [-Werror=implicit-function-declaration]
rwlock_release(&lock->dep_map, 1, _RET_IP_);
^
In file included from include/linux/rcupdate.h:41:0,
from include/linux/tracepoint.h:19,
from include/linux/mmdebug.h:7,
from arch/s390/include/asm/cmpxchg.h:10,
from arch/s390/include/asm/atomic.h:19,
from include/linux/atomic.h:4,
from include/linux/debug_locks.h:5,
from include/linux/lockdep.h:23,
from include/linux/hardirq.h:5,
from include/linux/kvm_host.h:10,
from arch/s390/kernel/asm-offsets.c:10:
include/linux/seqlock.h: At top level:
>> include/linux/seqlock.h:50:21: error: field 'dep_map' has incomplete type
struct lockdep_map dep_map;
^
>> include/linux/seqlock.h:55:15: warning: 'struct lock_class_key' declared inside parameter list
struct lock_class_key *key)
^
include/linux/seqlock.h: In function '__seqcount_init':
>> include/linux/seqlock.h:60:2: error: implicit declaration of function 'lockdep_init_map' [-Werror=implicit-function-declaration]
lockdep_init_map(&s->dep_map, name, key, 0);
^
include/linux/seqlock.h: In function 'seqcount_lockdep_reader_access':
>> include/linux/seqlock.h:80:2: error: implicit declaration of function 'seqcount_acquire_read' [-Werror=implicit-function-declaration]
seqcount_acquire_read(&l->dep_map, 0, 0, _RET_IP_);
^
vim +/spin_lock_init +1602 include/linux/mm.h
49076ec2cc Kirill A. Shutemov 2013-11-14 1586 {
49076ec2cc Kirill A. Shutemov 2013-11-14 1587 return ptlock_ptr(pmd_page(*pmd));
49076ec2cc Kirill A. Shutemov 2013-11-14 1588 }
49076ec2cc Kirill A. Shutemov 2013-11-14 1589
49076ec2cc Kirill A. Shutemov 2013-11-14 1590 static inline bool ptlock_init(struct page *page)
49076ec2cc Kirill A. Shutemov 2013-11-14 1591 {
4c21e2f244 Hugh Dickins 2005-10-29 1592 /*
49076ec2cc Kirill A. Shutemov 2013-11-14 1593 * prep_new_page() initialize page->private (and therefore page->ptl)
49076ec2cc Kirill A. Shutemov 2013-11-14 1594 * with 0. Make sure nobody took it in use in between.
49076ec2cc Kirill A. Shutemov 2013-11-14 1595 *
49076ec2cc Kirill A. Shutemov 2013-11-14 1596 * It can happen if arch try to use slab for page table allocation:
1d798ca3f1 Kirill A. Shutemov 2015-11-06 1597 * slab code uses page->slab_cache, which share storage with page->ptl.
4c21e2f244 Hugh Dickins 2005-10-29 1598 */
309381feae Sasha Levin 2014-01-23 1599 VM_BUG_ON_PAGE(*(unsigned long *)&page->ptl, page);
49076ec2cc Kirill A. Shutemov 2013-11-14 1600 if (!ptlock_alloc(page))
49076ec2cc Kirill A. Shutemov 2013-11-14 1601 return false;
49076ec2cc Kirill A. Shutemov 2013-11-14 @1602 spin_lock_init(ptlock_ptr(page));
49076ec2cc Kirill A. Shutemov 2013-11-14 1603 return true;
49076ec2cc Kirill A. Shutemov 2013-11-14 1604 }
49076ec2cc Kirill A. Shutemov 2013-11-14 1605
49076ec2cc Kirill A. Shutemov 2013-11-14 1606 /* Reset page->mapping so free_pages_check won't complain. */
49076ec2cc Kirill A. Shutemov 2013-11-14 1607 static inline void pte_lock_deinit(struct page *page)
49076ec2cc Kirill A. Shutemov 2013-11-14 1608 {
49076ec2cc Kirill A. Shutemov 2013-11-14 1609 page->mapping = NULL;
49076ec2cc Kirill A. Shutemov 2013-11-14 1610 ptlock_free(page);
:::::: The code at line 1602 was first introduced by commit
:::::: 49076ec2ccaf68610aa03d96bced9a6694b93ca1 mm: dynamically allocate page->ptl if it cannot be embedded to struct page
:::::: TO: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
:::::: CC: Linus Torvalds <torvalds@linux-foundation.org>
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation
[-- Attachment #2: .config.gz --]
[-- Type: application/octet-stream, Size: 40169 bytes --]
next reply other threads:[~2016-01-28 7:24 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-01-28 7:23 kbuild test robot [this message]
2016-01-28 17:34 ` [linux-next:master 1860/2084] include/linux/mm.h:1602:2: note: in expansion of macro 'spin_lock_init' Vlastimil Babka
2016-01-28 22:23 ` Stephen Rothwell
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=201601281504.800eqd3p%fengguang.wu@intel.com \
--to=fengguang.wu@intel.com \
--cc=akpm@linux-foundation.org \
--cc=kbuild-all@01.org \
--cc=linux-mm@kvack.org \
--cc=vbabka@suse.cz \
/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: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).