[sashal-linux-stable:queue-5.4 130/132] kernel/rcu/tree.c:617:2: error: implicit declaration of function 'IRQ_WORK_INIT'
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/sashal/linux-stable.git queue-5.4
head: d2c5af89e80c5b71f1da59879464a930947306a2
commit: 3c62d9df8c0139b34bca94fb340c95c03d3158d3 [130/132] rcu/nocb: Trigger self-IPI on late deferred wake up before user resume
config: x86_64-randconfig-a003-20210318 (attached as .config)
compiler: clang version 13.0.0 (https://github.com/llvm/llvm-project 436c6c9c20cc522c92a923440a5fc509c342a7db)
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 x86_64 cross compiling tool for clang build
# apt-get install binutils-x86-64-linux-gnu
# https://git.kernel.org/pub/scm/linux/kernel/git/sashal/linux-stable.git/c...
git remote add sashal-linux-stable https://git.kernel.org/pub/scm/linux/kernel/git/sashal/linux-stable.git
git fetch --no-tags sashal-linux-stable queue-5.4
git checkout 3c62d9df8c0139b34bca94fb340c95c03d3158d3
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=x86_64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
kernel/rcu/tree.c:191:15: warning: no previous prototype for function 'rcu_rnp_online_cpus' [-Wmissing-prototypes]
unsigned long rcu_rnp_online_cpus(struct rcu_node *rnp)
^
kernel/rcu/tree.c:191:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
unsigned long rcu_rnp_online_cpus(struct rcu_node *rnp)
^
static
kernel/rcu/tree.c:297:6: warning: no previous prototype for function 'rcu_dynticks_curr_cpu_in_eqs' [-Wmissing-prototypes]
bool rcu_dynticks_curr_cpu_in_eqs(void)
^
kernel/rcu/tree.c:297:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
bool rcu_dynticks_curr_cpu_in_eqs(void)
^
static
>> kernel/rcu/tree.c:617:2: error: implicit declaration of function 'IRQ_WORK_INIT' [-Werror,-Wimplicit-function-declaration]
IRQ_WORK_INIT(late_wakeup_func);
^
>> kernel/rcu/tree.c:616:40: error: initializing 'typeof(struct irq_work)' (aka 'struct irq_work') with an expression of incompatible type 'int'
static DEFINE_PER_CPU(struct irq_work, late_wakeup_work) =
^
include/linux/percpu-defs.h:115:31: note: expanded from macro 'DEFINE_PER_CPU'
DEFINE_PER_CPU_SECTION(type, name, "")
^
include/linux/percpu-defs.h:104:37: note: expanded from macro 'DEFINE_PER_CPU_SECTION'
__PCPU_ATTRS(sec) __typeof__(type) name
^
2 warnings and 2 errors generated.
vim +/IRQ_WORK_INIT +617 kernel/rcu/tree.c
615
> 616 static DEFINE_PER_CPU(struct irq_work, late_wakeup_work) =
> 617 IRQ_WORK_INIT(late_wakeup_func);
618
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 6 months
[linux-rt-devel:linux-5.12.y-rt-rebase 30/193] kernel/printk/printk.c:2654:4: error: implicit declaration of function 'latched_seq_write'
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/rt/linux-rt-devel.git linux-5.12.y-rt-rebase
head: 2664a7f5d3d24da4b2657a1e933181d376b77616
commit: bc04b285e73c1a64fd5d9723af20a21ce0feb628 [30/193] printk: use seqcount_latch for console_seq
config: mips-randconfig-r016-20210318 (attached as .config)
compiler: clang version 13.0.0 (https://github.com/llvm/llvm-project 436c6c9c20cc522c92a923440a5fc509c342a7db)
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 mips cross compiling tool for clang build
# apt-get install binutils-mips-linux-gnu
# https://git.kernel.org/pub/scm/linux/kernel/git/rt/linux-rt-devel.git/com...
git remote add linux-rt-devel https://git.kernel.org/pub/scm/linux/kernel/git/rt/linux-rt-devel.git
git fetch --no-tags linux-rt-devel linux-5.12.y-rt-rebase
git checkout bc04b285e73c1a64fd5d9723af20a21ce0feb628
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=mips
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
In file included from kernel/printk/printk.c:62:
kernel/printk/internal.h:56:20: warning: no previous prototype for function 'vprintk_func' [-Wmissing-prototypes]
__printf(1, 0) int vprintk_func(const char *fmt, va_list args) { return 0; }
^
kernel/printk/internal.h:56:16: note: declare 'static' if the function is not intended to be used outside of this translation unit
__printf(1, 0) int vprintk_func(const char *fmt, va_list args) { return 0; }
^
static
kernel/printk/printk.c:176:5: warning: no previous prototype for function 'devkmsg_sysctl_set_loglvl' [-Wmissing-prototypes]
int devkmsg_sysctl_set_loglvl(struct ctl_table *table, int write,
^
kernel/printk/printk.c:176:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
int devkmsg_sysctl_set_loglvl(struct ctl_table *table, int write,
^
static
kernel/printk/printk.c:2288:2: error: FIXME
#error FIXME
^
kernel/printk/printk.c:2648:9: error: implicit declaration of function 'latched_seq_read_nolock' [-Werror,-Wimplicit-function-declaration]
seq = latched_seq_read_nolock(&console_seq);
^
>> kernel/printk/printk.c:2654:4: error: implicit declaration of function 'latched_seq_write' [-Werror,-Wimplicit-function-declaration]
latched_seq_write(&console_seq, r.info->seq);
^
kernel/printk/printk.c:2664:4: error: implicit declaration of function 'latched_seq_write' [-Werror,-Wimplicit-function-declaration]
latched_seq_write(&console_seq, seq + 1);
^
kernel/printk/printk.c:2691:3: error: implicit declaration of function 'latched_seq_write' [-Werror,-Wimplicit-function-declaration]
latched_seq_write(&console_seq, seq + 1);
^
kernel/printk/printk.c:2782:4: error: implicit declaration of function 'latched_seq_write' [-Werror,-Wimplicit-function-declaration]
latched_seq_write(&console_seq, prb_first_valid_seq(prb));
^
kernel/printk/printk.c:3029:32: error: implicit declaration of function 'latched_seq_read_nolock' [-Werror,-Wimplicit-function-declaration]
exclusive_console_stop_seq = latched_seq_read_nolock(&console_seq);
^
kernel/printk/printk.c:3033:3: error: implicit declaration of function 'latched_seq_write' [-Werror,-Wimplicit-function-declaration]
latched_seq_write(&console_seq, syslog_seq);
^
2 warnings and 8 errors generated.
vim +/latched_seq_write +2654 kernel/printk/printk.c
2582
2583 /**
2584 * console_unlock - unlock the console system
2585 *
2586 * Releases the console_lock which the caller holds on the console system
2587 * and the console driver list.
2588 *
2589 * While the console_lock was held, console output may have been buffered
2590 * by printk(). If this is the case, console_unlock(); emits
2591 * the output prior to releasing the lock.
2592 *
2593 * If there is output waiting, we wake /dev/kmsg and syslog() users.
2594 *
2595 * console_unlock(); may be called from any context.
2596 */
2597 void console_unlock(void)
2598 {
2599 static char ext_text[CONSOLE_EXT_LOG_MAX];
2600 static char text[CONSOLE_LOG_MAX];
2601 unsigned long flags;
2602 bool do_cond_resched, retry;
2603 struct printk_info info;
2604 struct printk_record r;
2605 u64 seq;
2606
2607 if (console_suspended) {
2608 up_console_sem();
2609 return;
2610 }
2611
2612 prb_rec_init_rd(&r, &info, text, sizeof(text));
2613
2614 /*
2615 * Console drivers are called with interrupts disabled, so
2616 * @console_may_schedule should be cleared before; however, we may
2617 * end up dumping a lot of lines, for example, if called from
2618 * console registration path, and should invoke cond_resched()
2619 * between lines if allowable. Not doing so can cause a very long
2620 * scheduling stall on a slow console leading to RCU stall and
2621 * softlockup warnings which exacerbate the issue with more
2622 * messages practically incapacitating the system.
2623 *
2624 * console_trylock() is not able to detect the preemptive
2625 * context reliably. Therefore the value must be stored before
2626 * and cleared after the "again" goto label.
2627 */
2628 do_cond_resched = console_may_schedule;
2629 again:
2630 console_may_schedule = 0;
2631
2632 /*
2633 * We released the console_sem lock, so we need to recheck if
2634 * cpu is online and (if not) is there at least one CON_ANYTIME
2635 * console.
2636 */
2637 if (!can_use_console()) {
2638 console_locked = 0;
2639 up_console_sem();
2640 return;
2641 }
2642
2643 for (;;) {
2644 size_t ext_len = 0;
2645 size_t len;
2646
2647 skip:
2648 seq = latched_seq_read_nolock(&console_seq);
2649 if (!prb_read_valid(prb, seq, &r))
2650 break;
2651
2652 if (seq != r.info->seq) {
2653 console_dropped += r.info->seq - seq;
> 2654 latched_seq_write(&console_seq, r.info->seq);
2655 seq = r.info->seq;
2656 }
2657
2658 if (suppress_message_printing(r.info->level)) {
2659 /*
2660 * Skip record we have buffered and already printed
2661 * directly to the console when we received it, and
2662 * record that has level above the console loglevel.
2663 */
2664 latched_seq_write(&console_seq, seq + 1);
2665 goto skip;
2666 }
2667
2668 /* Output to all consoles once old messages replayed. */
2669 if (unlikely(exclusive_console &&
2670 seq >= exclusive_console_stop_seq)) {
2671 exclusive_console = NULL;
2672 }
2673
2674 /*
2675 * Handle extended console text first because later
2676 * record_print_text() will modify the record buffer in-place.
2677 */
2678 if (nr_ext_console_drivers) {
2679 ext_len = info_print_ext_header(ext_text,
2680 sizeof(ext_text),
2681 r.info);
2682 ext_len += msg_print_ext_body(ext_text + ext_len,
2683 sizeof(ext_text) - ext_len,
2684 &r.text_buf[0],
2685 r.info->text_len,
2686 &r.info->dev_info);
2687 }
2688 len = record_print_text(&r,
2689 console_msg_format & MSG_FORMAT_SYSLOG,
2690 printk_time);
2691 latched_seq_write(&console_seq, seq + 1);
2692
2693 printk_safe_enter_irqsave(flags);
2694
2695 /*
2696 * While actively printing out messages, if another printk()
2697 * were to occur on another CPU, it may wait for this one to
2698 * finish. This task can not be preempted if there is a
2699 * waiter waiting to take over.
2700 */
2701 console_lock_spinning_enable();
2702
2703 stop_critical_timings(); /* don't trace print latency */
2704 call_console_drivers(ext_text, ext_len, text, len);
2705 start_critical_timings();
2706
2707 if (console_lock_spinning_disable_and_check()) {
2708 printk_safe_exit_irqrestore(flags);
2709 return;
2710 }
2711
2712 printk_safe_exit_irqrestore(flags);
2713
2714 if (do_cond_resched)
2715 cond_resched();
2716 }
2717
2718 console_locked = 0;
2719
2720 up_console_sem();
2721
2722 /*
2723 * Someone could have filled up the buffer again, so re-check if there's
2724 * something to flush. In case we cannot trylock the console_sem again,
2725 * there's a new owner and the console_unlock() from them will do the
2726 * flush, no worries.
2727 */
2728 retry = prb_read_valid(prb, latched_seq_read_nolock(&console_seq), NULL);
2729 if (retry && console_trylock())
2730 goto again;
2731 }
2732 EXPORT_SYMBOL(console_unlock);
2733
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 6 months
[sashal-linux-stable:queue-5.4 119/132] drivers/of/address.c:1007:25: error: variable has incomplete type 'struct of_range_parser'
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/sashal/linux-stable.git queue-5.4
head: d2c5af89e80c5b71f1da59879464a930947306a2
commit: c3dd1d15539e5e491c6dabbb53611c3c77767d64 [119/132] of/address: Introduce of_dma_get_max_cpu_address()
config: arm-randconfig-r023-20210318 (attached as .config)
compiler: clang version 13.0.0 (https://github.com/llvm/llvm-project 436c6c9c20cc522c92a923440a5fc509c342a7db)
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
# https://git.kernel.org/pub/scm/linux/kernel/git/sashal/linux-stable.git/c...
git remote add sashal-linux-stable https://git.kernel.org/pub/scm/linux/kernel/git/sashal/linux-stable.git
git fetch --no-tags sashal-linux-stable queue-5.4
git checkout c3dd1d15539e5e491c6dabbb53611c3c77767d64
# 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(a)intel.com>
All errors (new ones prefixed by >>):
>> drivers/of/address.c:1007:25: error: variable has incomplete type 'struct of_range_parser'
struct of_range_parser parser;
^
drivers/of/address.c:1007:9: note: forward declaration of 'struct of_range_parser'
struct of_range_parser parser;
^
>> drivers/of/address.c:1010:18: error: variable has incomplete type 'struct of_range'
struct of_range range;
^
drivers/of/address.c:1010:9: note: forward declaration of 'struct of_range'
struct of_range range;
^
>> drivers/of/address.c:1020:3: error: implicit declaration of function 'of_dma_range_parser_init' [-Werror,-Wimplicit-function-declaration]
of_dma_range_parser_init(&parser, np);
^
drivers/of/address.c:1020:3: note: did you mean 'of_pci_range_parser_init'?
drivers/of/address.c:254:5: note: 'of_pci_range_parser_init' declared here
int of_pci_range_parser_init(struct of_pci_range_parser *parser,
^
>> drivers/of/address.c:1021:3: error: implicit declaration of function 'for_each_of_range' [-Werror,-Wimplicit-function-declaration]
for_each_of_range(&parser, &range)
^
4 errors generated.
vim +1007 drivers/of/address.c
995
996 /**
997 * of_dma_get_max_cpu_address - Gets highest CPU address suitable for DMA
998 * @np: The node to start searching from or NULL to start from the root
999 *
1000 * Gets the highest CPU physical address that is addressable by all DMA masters
1001 * in the sub-tree pointed by np, or the whole tree if NULL is passed. If no
1002 * DMA constrained device is found, it returns PHYS_ADDR_MAX.
1003 */
1004 phys_addr_t __init of_dma_get_max_cpu_address(struct device_node *np)
1005 {
1006 phys_addr_t max_cpu_addr = PHYS_ADDR_MAX;
> 1007 struct of_range_parser parser;
1008 phys_addr_t subtree_max_addr;
1009 struct device_node *child;
> 1010 struct of_range range;
1011 const __be32 *ranges;
1012 u64 cpu_end = 0;
1013 int len;
1014
1015 if (!np)
1016 np = of_root;
1017
1018 ranges = of_get_property(np, "dma-ranges", &len);
1019 if (ranges && len) {
> 1020 of_dma_range_parser_init(&parser, np);
> 1021 for_each_of_range(&parser, &range)
1022 if (range.cpu_addr + range.size > cpu_end)
1023 cpu_end = range.cpu_addr + range.size - 1;
1024
1025 if (max_cpu_addr > cpu_end)
1026 max_cpu_addr = cpu_end;
1027 }
1028
1029 for_each_available_child_of_node(np, child) {
1030 subtree_max_addr = of_dma_get_max_cpu_address(child);
1031 if (max_cpu_addr > subtree_max_addr)
1032 max_cpu_addr = subtree_max_addr;
1033 }
1034
1035 return max_cpu_addr;
1036 }
1037
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 6 months
Re: [PATCH v5 26/27] mm/filemap: Convert page wait queues to be folios
by kernel test robot
Hi "Matthew,
Thank you for the patch! Perhaps something to improve:
[auto build test WARNING on next-20210319]
[cannot apply to linux/master linus/master hnaz-linux-mm/master v5.12-rc3 v5.12-rc2 v5.12-rc1 v5.12-rc3]
[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/Matthew-Wilcox-Oracle/Memory-Fol...
base: f00397ee41c79b6155b9b44abd0055b2c0621349
config: nds32-defconfig (attached as .config)
compiler: nds32le-linux-gcc (GCC) 9.3.0
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
# https://github.com/0day-ci/linux/commit/93822cea6776a7c6c5b1341ed1c3fdbd1...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Matthew-Wilcox-Oracle/Memory-Folios/20210320-134732
git checkout 93822cea6776a7c6c5b1341ed1c3fdbd1e5eeaab
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=nds32
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
mm/filemap.c:1400: warning: Function parameter or member 'folio' not described in 'add_folio_wait_queue'
>> mm/filemap.c:1400: warning: expecting prototype for add_page_wait_queue(). Prototype was for add_folio_wait_queue() instead
vim +1400 mm/filemap.c
9a1ea439b16b92 Hugh Dickins 2018-12-28 1391
385e1ca5f21c46 David Howells 2009-04-03 1392 /**
385e1ca5f21c46 David Howells 2009-04-03 1393 * add_page_wait_queue - Add an arbitrary waiter to a page's wait queue
697f619fc87aa9 Randy Dunlap 2009-04-13 1394 * @page: Page defining the wait queue of interest
697f619fc87aa9 Randy Dunlap 2009-04-13 1395 * @waiter: Waiter to add to the queue
385e1ca5f21c46 David Howells 2009-04-03 1396 *
385e1ca5f21c46 David Howells 2009-04-03 1397 * Add an arbitrary @waiter to the wait queue for the nominated @page.
385e1ca5f21c46 David Howells 2009-04-03 1398 */
93822cea6776a7 Matthew Wilcox (Oracle 2021-03-20 1399) void add_folio_wait_queue(struct folio *folio, wait_queue_entry_t *waiter)
385e1ca5f21c46 David Howells 2009-04-03 @1400 {
93822cea6776a7 Matthew Wilcox (Oracle 2021-03-20 1401) wait_queue_head_t *q = folio_waitqueue(folio);
385e1ca5f21c46 David Howells 2009-04-03 1402 unsigned long flags;
385e1ca5f21c46 David Howells 2009-04-03 1403
385e1ca5f21c46 David Howells 2009-04-03 1404 spin_lock_irqsave(&q->lock, flags);
9c3a815f471a84 Linus Torvalds 2017-08-28 1405 __add_wait_queue_entry_tail(q, waiter);
93822cea6776a7 Matthew Wilcox (Oracle 2021-03-20 1406) SetFolioWaiters(folio);
385e1ca5f21c46 David Howells 2009-04-03 1407 spin_unlock_irqrestore(&q->lock, flags);
385e1ca5f21c46 David Howells 2009-04-03 1408 }
93822cea6776a7 Matthew Wilcox (Oracle 2021-03-20 1409) EXPORT_SYMBOL_GPL(add_folio_wait_queue);
385e1ca5f21c46 David Howells 2009-04-03 1410
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 6 months
[sashal-linux-stable:queue-5.4 112/132] fs/btrfs/free-space-cache.c:2555:3: error: non-void function '__btrfs_return_cluster_to_free_space' should return a value
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/sashal/linux-stable.git queue-5.4
head: d2c5af89e80c5b71f1da59879464a930947306a2
commit: b9261330db0b8da110db4761197e9601d4d4124d [112/132] btrfs: avoid double put of block group when emptying cluster
config: arm-randconfig-r023-20210318 (attached as .config)
compiler: clang version 13.0.0 (https://github.com/llvm/llvm-project 436c6c9c20cc522c92a923440a5fc509c342a7db)
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
# https://git.kernel.org/pub/scm/linux/kernel/git/sashal/linux-stable.git/c...
git remote add sashal-linux-stable https://git.kernel.org/pub/scm/linux/kernel/git/sashal/linux-stable.git
git fetch --no-tags sashal-linux-stable queue-5.4
git checkout b9261330db0b8da110db4761197e9601d4d4124d
# 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(a)intel.com>
All errors (new ones prefixed by >>):
>> fs/btrfs/free-space-cache.c:2555:3: error: non-void function '__btrfs_return_cluster_to_free_space' should return a value [-Wreturn-type]
return;
^
1 error generated.
vim +/__btrfs_return_cluster_to_free_space +2555 fs/btrfs/free-space-cache.c
2536
2537 /*
2538 * for a given cluster, put all of its extents back into the free
2539 * space cache. If the block group passed doesn't match the block group
2540 * pointed to by the cluster, someone else raced in and freed the
2541 * cluster already. In that case, we just return without changing anything
2542 */
2543 static int
2544 __btrfs_return_cluster_to_free_space(
2545 struct btrfs_block_group_cache *block_group,
2546 struct btrfs_free_cluster *cluster)
2547 {
2548 struct btrfs_free_space_ctl *ctl = block_group->free_space_ctl;
2549 struct btrfs_free_space *entry;
2550 struct rb_node *node;
2551
2552 spin_lock(&cluster->lock);
2553 if (cluster->block_group != block_group) {
2554 spin_unlock(&cluster->lock);
> 2555 return;
2556 }
2557
2558 cluster->block_group = NULL;
2559 cluster->window_start = 0;
2560 list_del_init(&cluster->block_group_list);
2561
2562 node = rb_first(&cluster->root);
2563 while (node) {
2564 bool bitmap;
2565
2566 entry = rb_entry(node, struct btrfs_free_space, offset_index);
2567 node = rb_next(&entry->offset_index);
2568 rb_erase(&entry->offset_index, &cluster->root);
2569 RB_CLEAR_NODE(&entry->offset_index);
2570
2571 bitmap = (entry->bitmap != NULL);
2572 if (!bitmap) {
2573 try_merge_free_space(ctl, entry, false);
2574 steal_from_bitmap(ctl, entry, false);
2575 }
2576 tree_insert_offset(&ctl->free_space_offset,
2577 entry->offset, &entry->offset_index, bitmap);
2578 }
2579 cluster->root = RB_ROOT;
2580 spin_unlock(&cluster->lock);
2581 btrfs_put_block_group(block_group);
2582 return 0;
2583 }
2584
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 6 months
[efi:next 4/6] drivers/firmware/google/gsmi.c:477:18: error: initialization of 'efi_status_t efi_char16_t const efi_guid_t u32 long unsigned int void {aka 'long unsigned int short unsigned int const struct <anonymous> unsigned i...
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/efi/efi.git next
head: d272258400e00e203ef6d9ba5b8620d5582889b2
commit: 1561b67449a89cce2daf84ad097e56c5673b9e6f [4/6] efi: use const* parameters for get/setvar by-ref arguments annotated as IN
config: x86_64-allyesconfig (attached as .config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce (this is a W=1 build):
# https://git.kernel.org/pub/scm/linux/kernel/git/efi/efi.git/commit/?id=15...
git remote add efi https://git.kernel.org/pub/scm/linux/kernel/git/efi/efi.git
git fetch --no-tags efi next
git checkout 1561b67449a89cce2daf84ad097e56c5673b9e6f
# save the attached .config to linux build tree
make W=1 ARCH=x86_64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
>> drivers/firmware/google/gsmi.c:477:18: error: initialization of 'efi_status_t (*)(const efi_char16_t *, const efi_guid_t *, u32 *, long unsigned int *, void *)' {aka 'long unsigned int (*)(const short unsigned int *, const struct <anonymous> *, unsigned int *, long unsigned int *, void *)'} from incompatible pointer type 'efi_status_t (*)(efi_char16_t *, efi_guid_t *, u32 *, long unsigned int *, void *)' {aka 'long unsigned int (*)(short unsigned int *, struct <anonymous> *, unsigned int *, long unsigned int *, void *)'} [-Werror=incompatible-pointer-types]
477 | .get_variable = gsmi_get_variable,
| ^~~~~~~~~~~~~~~~~
drivers/firmware/google/gsmi.c:477:18: note: (near initialization for 'efivar_ops.get_variable')
drivers/firmware/google/gsmi.c:478:18: error: initialization of 'efi_status_t (*)(const efi_char16_t *, const efi_guid_t *, u32, long unsigned int, void *)' {aka 'long unsigned int (*)(const short unsigned int *, const struct <anonymous> *, unsigned int, long unsigned int, void *)'} from incompatible pointer type 'efi_status_t (*)(efi_char16_t *, efi_guid_t *, u32, long unsigned int, void *)' {aka 'long unsigned int (*)(short unsigned int *, struct <anonymous> *, unsigned int, long unsigned int, void *)'} [-Werror=incompatible-pointer-types]
478 | .set_variable = gsmi_set_variable,
| ^~~~~~~~~~~~~~~~~
drivers/firmware/google/gsmi.c:478:18: note: (near initialization for 'efivar_ops.set_variable')
cc1: some warnings being treated as errors
vim +477 drivers/firmware/google/gsmi.c
74c5b31c6618f0 Mike Waychison 2011-04-29 475
74c5b31c6618f0 Mike Waychison 2011-04-29 476 static const struct efivar_operations efivar_ops = {
74c5b31c6618f0 Mike Waychison 2011-04-29 @477 .get_variable = gsmi_get_variable,
74c5b31c6618f0 Mike Waychison 2011-04-29 478 .set_variable = gsmi_set_variable,
74c5b31c6618f0 Mike Waychison 2011-04-29 479 .get_next_variable = gsmi_get_next_variable,
74c5b31c6618f0 Mike Waychison 2011-04-29 480 };
74c5b31c6618f0 Mike Waychison 2011-04-29 481
:::::: The code at line 477 was first introduced by commit
:::::: 74c5b31c6618f01079212332b2e5f6c42f2d6307 driver: Google EFI SMI
:::::: TO: Mike Waychison <mikew(a)google.com>
:::::: CC: Greg Kroah-Hartman <gregkh(a)suse.de>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 6 months
[arnd-playground:randconfig-v5.12 398/597] arch/mips/include/asm/pci.h:101:35: error: called object is not a function or function pointer
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/arnd/playground.git randconfig-v5.12
head: fd21c2581b744639b5207c11651ab40abf13701a
commit: 997a2bb5a4fcdbf3f5e10032b711f07ea7b7f276 [398/597] pci: add 'bus_assigned_by_firmware' flag
config: mips-allyesconfig (attached as .config)
compiler: mips-linux-gcc (GCC) 9.3.0
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
# https://git.kernel.org/pub/scm/linux/kernel/git/arnd/playground.git/commi...
git remote add arnd-playground https://git.kernel.org/pub/scm/linux/kernel/git/arnd/playground.git
git fetch --no-tags arnd-playground randconfig-v5.12
git checkout 997a2bb5a4fcdbf3f5e10032b711f07ea7b7f276
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=mips
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
In file included from include/linux/pci.h:1821,
from drivers/scsi/bnx2fc/bnx2fc.h:34,
from drivers/scsi/bnx2fc/bnx2fc_els.c:17:
include/linux/pci.h: In function 'pci_assign_all_busses':
>> arch/mips/include/asm/pci.h:101:35: error: called object is not a function or function pointer
101 | #define pcibios_assign_all_busses 1
| ^
include/linux/pci.h:1860:9: note: in expansion of macro 'pcibios_assign_all_busses'
1860 | return pcibios_assign_all_busses();
| ^~~~~~~~~~~~~~~~~~~~~~~~~
--
In file included from include/linux/pci.h:1821,
from drivers/ipack/carriers/tpci200.h:16,
from drivers/ipack/carriers/tpci200.c:14:
include/linux/pci.h: In function 'pci_assign_all_busses':
>> arch/mips/include/asm/pci.h:101:35: error: called object is not a function or function pointer
101 | #define pcibios_assign_all_busses 1
| ^
include/linux/pci.h:1860:9: note: in expansion of macro 'pcibios_assign_all_busses'
1860 | return pcibios_assign_all_busses();
| ^~~~~~~~~~~~~~~~~~~~~~~~~
drivers/ipack/carriers/tpci200.c: In function 'tpci200_enable_irq':
drivers/ipack/carriers/tpci200.c:110:4: warning: taking address of packed member of 'struct tpci200_regs' may result in an unaligned pointer value [-Waddress-of-packed-member]
110 | &tpci200->info->interface_regs->control[islot],
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/ipack/carriers/tpci200.c: In function 'tpci200_disable_irq':
drivers/ipack/carriers/tpci200.c:118:4: warning: taking address of packed member of 'struct tpci200_regs' may result in an unaligned pointer value [-Waddress-of-packed-member]
118 | &tpci200->info->interface_regs->control[islot],
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/ipack/carriers/tpci200.c: In function 'tpci200_get_clockrate':
drivers/ipack/carriers/tpci200.c:373:9: warning: taking address of packed member of 'struct tpci200_regs' may result in an unaligned pointer value [-Waddress-of-packed-member]
373 | addr = &tpci200->info->interface_regs->control[dev->slot];
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/ipack/carriers/tpci200.c: In function 'tpci200_set_clockrate':
drivers/ipack/carriers/tpci200.c:385:9: warning: taking address of packed member of 'struct tpci200_regs' may result in an unaligned pointer value [-Waddress-of-packed-member]
385 | addr = &tpci200->info->interface_regs->control[dev->slot];
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/ipack/carriers/tpci200.c: In function 'tpci200_get_error':
drivers/ipack/carriers/tpci200.c:409:9: warning: taking address of packed member of 'struct tpci200_regs' may result in an unaligned pointer value [-Waddress-of-packed-member]
409 | addr = &tpci200->info->interface_regs->status;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/ipack/carriers/tpci200.c: In function 'tpci200_get_timeout':
drivers/ipack/carriers/tpci200.c:423:9: warning: taking address of packed member of 'struct tpci200_regs' may result in an unaligned pointer value [-Waddress-of-packed-member]
423 | addr = &tpci200->info->interface_regs->status;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/ipack/carriers/tpci200.c: In function 'tpci200_reset_timeout':
drivers/ipack/carriers/tpci200.c:438:9: warning: taking address of packed member of 'struct tpci200_regs' may result in an unaligned pointer value [-Waddress-of-packed-member]
438 | addr = &tpci200->info->interface_regs->status;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
--
In file included from include/linux/pci.h:1821,
from drivers/net/wireless/intel/iwlwifi/dvm/../iwl-devtrace-io.h:17,
from drivers/net/wireless/intel/iwlwifi/dvm/../iwl-devtrace.h:94,
from drivers/net/wireless/intel/iwlwifi/dvm/../iwl-io.h:8,
from drivers/net/wireless/intel/iwlwifi/dvm/lib.c:17:
include/linux/pci.h: In function 'pci_assign_all_busses':
>> arch/mips/include/asm/pci.h:101:35: error: called object is not a function or function pointer
101 | #define pcibios_assign_all_busses 1
| ^
include/linux/pci.h:1860:9: note: in expansion of macro 'pcibios_assign_all_busses'
1860 | return pcibios_assign_all_busses();
| ^~~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/wireless/intel/iwlwifi/dvm/lib.c: In function 'iwlagn_wowlan_program_keys':
drivers/net/wireless/intel/iwlwifi/dvm/lib.c:923:42: warning: taking address of packed member of 'struct iwlagn_p1k_cache' may result in an unaligned pointer value [-Waddress-of-packed-member]
923 | iwlagn_convert_p1k(p1k, data->tkip->tx.p1k);
| ~~~~~~~~~~~~~~^~~~
drivers/net/wireless/intel/iwlwifi/dvm/lib.c:952:37: warning: taking address of packed member of 'struct iwlagn_p1k_cache' may result in an unaligned pointer value [-Waddress-of-packed-member]
952 | iwlagn_convert_p1k(p1k, rx_p1ks[0].p1k);
| ~~~~~~~~~~^~~~
drivers/net/wireless/intel/iwlwifi/dvm/lib.c:955:37: warning: taking address of packed member of 'struct iwlagn_p1k_cache' may result in an unaligned pointer value [-Waddress-of-packed-member]
955 | iwlagn_convert_p1k(p1k, rx_p1ks[1].p1k);
| ~~~~~~~~~~^~~~
--
In file included from include/linux/pci.h:1821,
from drivers/net/wireless/intel/iwlwifi/dvm/../iwl-devtrace-io.h:17,
from drivers/net/wireless/intel/iwlwifi/dvm/../iwl-devtrace.h:94,
from drivers/net/wireless/intel/iwlwifi/dvm/../iwl-io.h:8,
from drivers/net/wireless/intel/iwlwifi/dvm/rx.c:24:
include/linux/pci.h: In function 'pci_assign_all_busses':
>> arch/mips/include/asm/pci.h:101:35: error: called object is not a function or function pointer
101 | #define pcibios_assign_all_busses 1
| ^
include/linux/pci.h:1860:9: note: in expansion of macro 'pcibios_assign_all_busses'
1860 | return pcibios_assign_all_busses();
| ^~~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/wireless/intel/iwlwifi/dvm/rx.c: In function 'iwlagn_accumulative_statistics':
drivers/net/wireless/intel/iwlwifi/dvm/rx.c:323:2: warning: converting a packed 'struct statistics_general_common' pointer (alignment 1) to a '__le32' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
323 | ACCUM(common);
| ^~~~~
In file included from drivers/net/wireless/intel/iwlwifi/dvm/power.h:16,
from drivers/net/wireless/intel/iwlwifi/dvm/dev.h:36,
from drivers/net/wireless/intel/iwlwifi/dvm/rx.c:25:
drivers/net/wireless/intel/iwlwifi/dvm/commands.h:2617:8: note: defined here
2617 | struct statistics_general_common {
| ^~~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/wireless/intel/iwlwifi/dvm/rx.c:318:17: warning: taking address of packed member of 'struct <anonymous>' may result in an unaligned pointer value [-Waddress-of-packed-member]
318 | (__le32 *)&priv->delta_stats._name, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
319 | (__le32 *)&priv->max_delta_stats._name, \
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
320 | (__le32 *)&priv->accum_stats._name, \
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
321 | sizeof(*_name));
| ~~~~~~~~~~~~~~~~
322 |
|
323 | ACCUM(common);
| ~~~~~~~~~~~~
drivers/net/wireless/intel/iwlwifi/dvm/rx.c:323:2: note: in expansion of macro 'ACCUM'
323 | ACCUM(common);
| ^~~~~
drivers/net/wireless/intel/iwlwifi/dvm/rx.c:319:17: warning: taking address of packed member of 'struct <anonymous>' may result in an unaligned pointer value [-Waddress-of-packed-member]
319 | (__le32 *)&priv->max_delta_stats._name, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
320 | (__le32 *)&priv->accum_stats._name, \
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
321 | sizeof(*_name));
| ~~~~~~~~~~~~~~~~
322 |
|
323 | ACCUM(common);
| ~~~~~~~~~~~~
drivers/net/wireless/intel/iwlwifi/dvm/rx.c:323:2: note: in expansion of macro 'ACCUM'
323 | ACCUM(common);
| ^~~~~
drivers/net/wireless/intel/iwlwifi/dvm/rx.c:320:17: warning: taking address of packed member of 'struct <anonymous>' may result in an unaligned pointer value [-Waddress-of-packed-member]
320 | (__le32 *)&priv->accum_stats._name, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
321 | sizeof(*_name));
| ~~~~~~~~~~~~~~~~
322 |
|
323 | ACCUM(common);
| ~~~~~~~~~~~~
drivers/net/wireless/intel/iwlwifi/dvm/rx.c:323:2: note: in expansion of macro 'ACCUM'
323 | ACCUM(common);
| ^~~~~
drivers/net/wireless/intel/iwlwifi/dvm/rx.c:324:2: warning: converting a packed 'struct statistics_rx_non_phy' pointer (alignment 1) to a '__le32' {aka 'unsigned int'} pointer (alignment 4) may result in an unaligned pointer value [-Waddress-of-packed-member]
324 | ACCUM(rx_non_phy);
| ^~~~~
In file included from drivers/net/wireless/intel/iwlwifi/dvm/power.h:16,
from drivers/net/wireless/intel/iwlwifi/dvm/dev.h:36,
from drivers/net/wireless/intel/iwlwifi/dvm/rx.c:25:
drivers/net/wireless/intel/iwlwifi/dvm/commands.h:2501:8: note: defined here
2501 | struct statistics_rx_non_phy {
| ^~~~~~~~~~~~~~~~~~~~~
drivers/net/wireless/intel/iwlwifi/dvm/rx.c:318:17: warning: taking address of packed member of 'struct <anonymous>' may result in an unaligned pointer value [-Waddress-of-packed-member]
318 | (__le32 *)&priv->delta_stats._name, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
319 | (__le32 *)&priv->max_delta_stats._name, \
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
320 | (__le32 *)&priv->accum_stats._name, \
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
321 | sizeof(*_name));
| ~~~~~~~~~~~~~~~~
322 |
|
323 | ACCUM(common);
| ~~~~~~~~~~~~~~
324 | ACCUM(rx_non_phy);
| ~~~~~~~~~~~~~~~~
drivers/net/wireless/intel/iwlwifi/dvm/rx.c:324:2: note: in expansion of macro 'ACCUM'
324 | ACCUM(rx_non_phy);
| ^~~~~
drivers/net/wireless/intel/iwlwifi/dvm/rx.c:319:17: warning: taking address of packed member of 'struct <anonymous>' may result in an unaligned pointer value [-Waddress-of-packed-member]
319 | (__le32 *)&priv->max_delta_stats._name, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
320 | (__le32 *)&priv->accum_stats._name, \
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
321 | sizeof(*_name));
| ~~~~~~~~~~~~~~~~
322 |
|
323 | ACCUM(common);
| ~~~~~~~~~~~~~~
324 | ACCUM(rx_non_phy);
| ~~~~~~~~~~~~~~~~
drivers/net/wireless/intel/iwlwifi/dvm/rx.c:324:2: note: in expansion of macro 'ACCUM'
324 | ACCUM(rx_non_phy);
| ^~~~~
--
In file included from include/linux/pci.h:1821,
from drivers/net/wireless/intel/iwlwifi/mvm/../iwl-devtrace-io.h:17,
from drivers/net/wireless/intel/iwlwifi/mvm/../iwl-devtrace.h:94,
from drivers/net/wireless/intel/iwlwifi/mvm/../iwl-io.h:8,
from drivers/net/wireless/intel/iwlwifi/mvm/fw.c:16:
include/linux/pci.h: In function 'pci_assign_all_busses':
>> arch/mips/include/asm/pci.h:101:35: error: called object is not a function or function pointer
101 | #define pcibios_assign_all_busses 1
| ^
include/linux/pci.h:1860:9: note: in expansion of macro 'pcibios_assign_all_busses'
1860 | return pcibios_assign_all_busses();
| ^~~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/wireless/intel/iwlwifi/mvm/fw.c: In function 'iwl_mvm_mfu_assert_dump_notif':
drivers/net/wireless/intel/iwlwifi/mvm/fw.c:145:22: warning: taking address of packed member of 'struct iwl_mfu_assert_dump_notif' may result in an unaligned pointer value [-Waddress-of-packed-member]
145 | __le32 *dump_data = mfu_dump_notif->data;
| ^~~~~~~~~~~~~~
--
In file included from include/linux/pci.h:1821,
from drivers/net/wireless/intel/iwlwifi/mvm/../iwl-devtrace-io.h:17,
from drivers/net/wireless/intel/iwlwifi/mvm/../iwl-devtrace.h:94,
from drivers/net/wireless/intel/iwlwifi/mvm/../iwl-io.h:8,
from drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c:20:
include/linux/pci.h: In function 'pci_assign_all_busses':
>> arch/mips/include/asm/pci.h:101:35: error: called object is not a function or function pointer
101 | #define pcibios_assign_all_busses 1
| ^
include/linux/pci.h:1860:9: note: in expansion of macro 'pcibios_assign_all_busses'
1860 | return pcibios_assign_all_busses();
| ^~~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c: In function 'iwl_mvm_get_regdomain':
drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c:207:15: warning: taking address of packed member of 'struct iwl_mcc_update_resp' may result in an unaligned pointer value [-Waddress-of-packed-member]
207 | resp->channels,
| ~~~~^~~~~~~~~~
--
In file included from include/linux/pci.h:1821,
from drivers/net/wireless/intel/iwlwifi/mvm/../iwl-devtrace-io.h:17,
from drivers/net/wireless/intel/iwlwifi/mvm/../iwl-devtrace.h:94,
from drivers/net/wireless/intel/iwlwifi/mvm/../iwl-io.h:8,
from drivers/net/wireless/intel/iwlwifi/mvm/../fw/dbg.h:13,
from drivers/net/wireless/intel/iwlwifi/mvm/mvm.h:29,
from drivers/net/wireless/intel/iwlwifi/mvm/phy-ctxt.c:9:
include/linux/pci.h: In function 'pci_assign_all_busses':
>> arch/mips/include/asm/pci.h:101:35: error: called object is not a function or function pointer
101 | #define pcibios_assign_all_busses 1
| ^
include/linux/pci.h:1860:9: note: in expansion of macro 'pcibios_assign_all_busses'
1860 | return pcibios_assign_all_busses();
| ^~~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/wireless/intel/iwlwifi/mvm/phy-ctxt.c: In function 'iwl_mvm_phy_ctxt_cmd_data_v1':
drivers/net/wireless/intel/iwlwifi/mvm/phy-ctxt.c:126:36: warning: taking address of packed member of 'struct iwl_phy_context_cmd_tail' may result in an unaligned pointer value [-Waddress-of-packed-member]
126 | iwl_mvm_phy_ctxt_set_rxchain(mvm, &tail->rxchain_info,
| ^~~~~~~~~~~~~~~~~~~
drivers/net/wireless/intel/iwlwifi/mvm/phy-ctxt.c: In function 'iwl_mvm_phy_ctxt_cmd_data':
drivers/net/wireless/intel/iwlwifi/mvm/phy-ctxt.c:146:36: warning: taking address of packed member of 'struct iwl_phy_context_cmd' may result in an unaligned pointer value [-Waddress-of-packed-member]
146 | iwl_mvm_phy_ctxt_set_rxchain(mvm, &cmd->rxchain_info,
| ^~~~~~~~~~~~~~~~~~
--
In file included from include/linux/pci.h:1821,
from drivers/net/wireless/intel/iwlwifi/mvm/../iwl-devtrace-io.h:17,
from drivers/net/wireless/intel/iwlwifi/mvm/../iwl-devtrace.h:94,
from drivers/net/wireless/intel/iwlwifi/mvm/../iwl-io.h:8,
from drivers/net/wireless/intel/iwlwifi/mvm/mac-ctxt.c:10:
include/linux/pci.h: In function 'pci_assign_all_busses':
>> arch/mips/include/asm/pci.h:101:35: error: called object is not a function or function pointer
101 | #define pcibios_assign_all_busses 1
| ^
include/linux/pci.h:1860:9: note: in expansion of macro 'pcibios_assign_all_busses'
1860 | return pcibios_assign_all_busses();
| ^~~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/wireless/intel/iwlwifi/mvm/mac-ctxt.c: In function 'iwl_mvm_mac_ctxt_send_beacon_v6':
drivers/net/wireless/intel/iwlwifi/mvm/mac-ctxt.c:882:33: warning: taking address of packed member of 'struct iwl_mac_beacon_cmd_v6' may result in an unaligned pointer value [-Waddress-of-packed-member]
882 | iwl_mvm_mac_ctxt_set_tim(mvm, &beacon_cmd.tim_idx,
| ^~~~~~~~~~~~~~~~~~~
drivers/net/wireless/intel/iwlwifi/mvm/mac-ctxt.c:883:7: warning: taking address of packed member of 'struct iwl_mac_beacon_cmd_v6' may result in an unaligned pointer value [-Waddress-of-packed-member]
883 | &beacon_cmd.tim_size,
| ^~~~~~~~~~~~~~~~~~~~
drivers/net/wireless/intel/iwlwifi/mvm/mac-ctxt.c: In function 'iwl_mvm_mac_ctxt_send_beacon_v7':
drivers/net/wireless/intel/iwlwifi/mvm/mac-ctxt.c:902:33: warning: taking address of packed member of 'struct iwl_mac_beacon_cmd_v7' may result in an unaligned pointer value [-Waddress-of-packed-member]
902 | iwl_mvm_mac_ctxt_set_tim(mvm, &beacon_cmd.tim_idx,
| ^~~~~~~~~~~~~~~~~~~
drivers/net/wireless/intel/iwlwifi/mvm/mac-ctxt.c:903:7: warning: taking address of packed member of 'struct iwl_mac_beacon_cmd_v7' may result in an unaligned pointer value [-Waddress-of-packed-member]
903 | &beacon_cmd.tim_size,
| ^~~~~~~~~~~~~~~~~~~~
drivers/net/wireless/intel/iwlwifi/mvm/mac-ctxt.c: In function 'iwl_mvm_mac_ctxt_send_beacon_v9':
drivers/net/wireless/intel/iwlwifi/mvm/mac-ctxt.c:955:33: warning: taking address of packed member of 'struct iwl_mac_beacon_cmd' may result in an unaligned pointer value [-Waddress-of-packed-member]
955 | iwl_mvm_mac_ctxt_set_tim(mvm, &beacon_cmd.tim_idx,
| ^~~~~~~~~~~~~~~~~~~
drivers/net/wireless/intel/iwlwifi/mvm/mac-ctxt.c:956:7: warning: taking address of packed member of 'struct iwl_mac_beacon_cmd' may result in an unaligned pointer value [-Waddress-of-packed-member]
956 | &beacon_cmd.tim_size,
| ^~~~~~~~~~~~~~~~~~~~
--
In file included from include/linux/pci.h:1821,
from drivers/net/wireless/intel/iwlwifi/mvm/../iwl-devtrace-io.h:17,
from drivers/net/wireless/intel/iwlwifi/mvm/../iwl-devtrace.h:94,
from drivers/net/wireless/intel/iwlwifi/mvm/../iwl-io.h:8,
from drivers/net/wireless/intel/iwlwifi/mvm/../fw/dbg.h:13,
from drivers/net/wireless/intel/iwlwifi/mvm/mvm.h:29,
from drivers/net/wireless/intel/iwlwifi/mvm/rx.c:11:
include/linux/pci.h: In function 'pci_assign_all_busses':
>> arch/mips/include/asm/pci.h:101:35: error: called object is not a function or function pointer
101 | #define pcibios_assign_all_busses 1
| ^
include/linux/pci.h:1860:9: note: in expansion of macro 'pcibios_assign_all_busses'
1860 | return pcibios_assign_all_busses();
| ^~~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/wireless/intel/iwlwifi/mvm/rx.c: In function 'iwl_mvm_handle_rx_statistics_tlv':
drivers/net/wireless/intel/iwlwifi/mvm/rx.c:732:24: warning: taking address of packed member of 'struct iwl_statistics_operational_ntfy' may result in an unaligned pointer value [-Waddress-of-packed-member]
732 | data.beacon_counter = stats->beacon_counter;
| ^~~~~
drivers/net/wireless/intel/iwlwifi/mvm/rx.c:754:43: warning: taking address of packed member of 'struct iwl_statistics_operational_ntfy' may result in an unaligned pointer value [-Waddress-of-packed-member]
754 | iwl_mvm_update_tcm_from_stats(mvm, stats->air_time,
| ~~~~~^~~~~~~~~~
drivers/net/wireless/intel/iwlwifi/mvm/rx.c:755:17: warning: taking address of packed member of 'struct iwl_statistics_operational_ntfy' may result in an unaligned pointer value [-Waddress-of-packed-member]
755 | stats->rx_bytes);
| ~~~~~^~~~~~~~~~
drivers/net/wireless/intel/iwlwifi/mvm/rx.c: In function 'iwl_mvm_handle_rx_statistics':
drivers/net/wireless/intel/iwlwifi/mvm/rx.c:805:25: warning: taking address of packed member of 'struct mvm_statistics_general_v8' may result in an unaligned pointer value [-Waddress-of-packed-member]
805 | data.beacon_counter = stats->general.beacon_counter;
| ^~~~~
drivers/net/wireless/intel/iwlwifi/mvm/rx.c:827:25: warning: taking address of packed member of 'struct mvm_statistics_general' may result in an unaligned pointer value [-Waddress-of-packed-member]
827 | data.beacon_counter = stats->general.beacon_counter;
| ^~~~~
drivers/net/wireless/intel/iwlwifi/mvm/rx.c:848:19: warning: taking address of packed member of 'struct mvm_statistics_load_v1' may result in an unaligned pointer value [-Waddress-of-packed-member]
848 | bytes = (void *)&v11->load_stats.byte_count;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/wireless/intel/iwlwifi/mvm/rx.c:849:22: warning: taking address of packed member of 'struct mvm_statistics_load_v1' may result in an unaligned pointer value [-Waddress-of-packed-member]
849 | air_time = (void *)&v11->load_stats.air_time;
| ^~~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/wireless/intel/iwlwifi/mvm/rx.c:854:19: warning: taking address of packed member of 'struct mvm_statistics_load' may result in an unaligned pointer value [-Waddress-of-packed-member]
854 | bytes = (void *)&stats->load_stats.byte_count;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/wireless/intel/iwlwifi/mvm/rx.c:855:22: warning: taking address of packed member of 'struct mvm_statistics_load' may result in an unaligned pointer value [-Waddress-of-packed-member]
855 | air_time = (void *)&stats->load_stats.air_time;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
..
vim +101 arch/mips/include/asm/pci.h
97
98 /* Can be used to override the logic in pci_scan_bus for skipping
99 already-configured bus numbers - to be used for buggy BIOSes
100 or architectures with incomplete PCI setup by the loader */
> 101 #define pcibios_assign_all_busses 1
102
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 6 months
[sashal-linux-stable:queue-5.4 126/132] sound/pci/hda/patch_conexant.c:571:3: error: implicit declaration of function 'snd_hda_gen_add_mute_led_cdev'
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/sashal/linux-stable.git queue-5.4
head: d2c5af89e80c5b71f1da59879464a930947306a2
commit: 66b2cb0924ca417f308620440bfb5b8642c28a88 [126/132] ALSA: hda/conexant: Use the new vmaster mute LED helper
config: arm-randconfig-r013-20210318 (attached as .config)
compiler: clang version 13.0.0 (https://github.com/llvm/llvm-project 436c6c9c20cc522c92a923440a5fc509c342a7db)
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
# https://git.kernel.org/pub/scm/linux/kernel/git/sashal/linux-stable.git/c...
git remote add sashal-linux-stable https://git.kernel.org/pub/scm/linux/kernel/git/sashal/linux-stable.git
git fetch --no-tags sashal-linux-stable queue-5.4
git checkout 66b2cb0924ca417f308620440bfb5b8642c28a88
# 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(a)intel.com>
All errors (new ones prefixed by >>):
sound/pci/hda/patch_conexant.c:140:44: warning: declaration of 'struct led_classdev' will not be visible outside of this function [-Wvisibility]
static int cx_auto_vmaster_mute_led(struct led_classdev *led_cdev,
^
sound/pci/hda/patch_conexant.c:141:14: warning: declaration of 'enum led_brightness' will not be visible outside of this function [-Wvisibility]
enum led_brightness brightness)
^
sound/pci/hda/patch_conexant.c:141:29: error: variable has incomplete type 'enum led_brightness'
enum led_brightness brightness)
^
sound/pci/hda/patch_conexant.c:141:14: note: forward declaration of 'enum led_brightness'
enum led_brightness brightness)
^
sound/pci/hda/patch_conexant.c:143:53: error: incomplete definition of type 'struct led_classdev'
struct hda_codec *codec = dev_to_hda_codec(led_cdev->dev->parent);
~~~~~~~~^
include/sound/hda_codec.h:289:45: note: expanded from macro 'dev_to_hda_codec'
#define dev_to_hda_codec(_dev) container_of(_dev, struct hda_codec, core.dev)
^~~~
include/linux/kernel.h:993:26: note: expanded from macro 'container_of'
void *__mptr = (void *)(ptr); \
^~~
sound/pci/hda/patch_conexant.c:140:44: note: forward declaration of 'struct led_classdev'
static int cx_auto_vmaster_mute_led(struct led_classdev *led_cdev,
^
sound/pci/hda/patch_conexant.c:143:53: error: incomplete definition of type 'struct led_classdev'
struct hda_codec *codec = dev_to_hda_codec(led_cdev->dev->parent);
~~~~~~~~^
include/sound/hda_codec.h:289:45: note: expanded from macro 'dev_to_hda_codec'
#define dev_to_hda_codec(_dev) container_of(_dev, struct hda_codec, core.dev)
^~~~
include/linux/kernel.h:994:34: note: expanded from macro 'container_of'
BUILD_BUG_ON_MSG(!__same_type(*(ptr), ((type *)0)->member) && \
^~~
include/linux/compiler_types.h:220:63: note: expanded from macro '__same_type'
#define __same_type(a, b) __builtin_types_compatible_p(typeof(a), typeof(b))
^
note: (skipping 1 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all)
include/linux/compiler.h:417:22: note: expanded from macro 'compiletime_assert'
_compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
^~~~~~~~~
include/linux/compiler.h:405:23: note: expanded from macro '_compiletime_assert'
__compiletime_assert(condition, msg, prefix, suffix)
^~~~~~~~~
include/linux/compiler.h:397:9: note: expanded from macro '__compiletime_assert'
if (!(condition)) \
^~~~~~~~~
sound/pci/hda/patch_conexant.c:140:44: note: forward declaration of 'struct led_classdev'
static int cx_auto_vmaster_mute_led(struct led_classdev *led_cdev,
^
sound/pci/hda/patch_conexant.c:143:53: error: incomplete definition of type 'struct led_classdev'
struct hda_codec *codec = dev_to_hda_codec(led_cdev->dev->parent);
~~~~~~~~^
include/sound/hda_codec.h:289:45: note: expanded from macro 'dev_to_hda_codec'
#define dev_to_hda_codec(_dev) container_of(_dev, struct hda_codec, core.dev)
^~~~
include/linux/kernel.h:995:20: note: expanded from macro 'container_of'
!__same_type(*(ptr), void), \
^~~
include/linux/compiler_types.h:220:63: note: expanded from macro '__same_type'
#define __same_type(a, b) __builtin_types_compatible_p(typeof(a), typeof(b))
^
note: (skipping 1 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all)
include/linux/compiler.h:417:22: note: expanded from macro 'compiletime_assert'
_compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
^~~~~~~~~
include/linux/compiler.h:405:23: note: expanded from macro '_compiletime_assert'
__compiletime_assert(condition, msg, prefix, suffix)
^~~~~~~~~
include/linux/compiler.h:397:9: note: expanded from macro '__compiletime_assert'
if (!(condition)) \
^~~~~~~~~
sound/pci/hda/patch_conexant.c:140:44: note: forward declaration of 'struct led_classdev'
static int cx_auto_vmaster_mute_led(struct led_classdev *led_cdev,
^
>> sound/pci/hda/patch_conexant.c:571:3: error: implicit declaration of function 'snd_hda_gen_add_mute_led_cdev' [-Werror,-Wimplicit-function-declaration]
snd_hda_gen_add_mute_led_cdev(codec, cx_auto_vmaster_mute_led);
^
sound/pci/hda/patch_conexant.c:571:3: note: did you mean 'snd_hda_gen_add_micmute_led'?
sound/pci/hda/hda_generic.h:357:5: note: 'snd_hda_gen_add_micmute_led' declared here
int snd_hda_gen_add_micmute_led(struct hda_codec *codec,
^
sound/pci/hda/patch_conexant.c:636:40: warning: declaration of 'struct led_classdev' will not be visible outside of this function [-Wvisibility]
static int cxt_gpio_mute_update(struct led_classdev *led_cdev,
^
sound/pci/hda/patch_conexant.c:637:10: warning: declaration of 'enum led_brightness' will not be visible outside of this function [-Wvisibility]
enum led_brightness brightness)
^
sound/pci/hda/patch_conexant.c:637:25: error: variable has incomplete type 'enum led_brightness'
enum led_brightness brightness)
^
sound/pci/hda/patch_conexant.c:637:10: note: forward declaration of 'enum led_brightness'
enum led_brightness brightness)
^
sound/pci/hda/patch_conexant.c:639:53: error: incomplete definition of type 'struct led_classdev'
struct hda_codec *codec = dev_to_hda_codec(led_cdev->dev->parent);
~~~~~~~~^
include/sound/hda_codec.h:289:45: note: expanded from macro 'dev_to_hda_codec'
#define dev_to_hda_codec(_dev) container_of(_dev, struct hda_codec, core.dev)
^~~~
include/linux/kernel.h:993:26: note: expanded from macro 'container_of'
void *__mptr = (void *)(ptr); \
^~~
sound/pci/hda/patch_conexant.c:636:40: note: forward declaration of 'struct led_classdev'
static int cxt_gpio_mute_update(struct led_classdev *led_cdev,
^
sound/pci/hda/patch_conexant.c:639:53: error: incomplete definition of type 'struct led_classdev'
struct hda_codec *codec = dev_to_hda_codec(led_cdev->dev->parent);
~~~~~~~~^
include/sound/hda_codec.h:289:45: note: expanded from macro 'dev_to_hda_codec'
#define dev_to_hda_codec(_dev) container_of(_dev, struct hda_codec, core.dev)
^~~~
include/linux/kernel.h:994:34: note: expanded from macro 'container_of'
BUILD_BUG_ON_MSG(!__same_type(*(ptr), ((type *)0)->member) && \
^~~
include/linux/compiler_types.h:220:63: note: expanded from macro '__same_type'
#define __same_type(a, b) __builtin_types_compatible_p(typeof(a), typeof(b))
^
note: (skipping 1 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all)
include/linux/compiler.h:417:22: note: expanded from macro 'compiletime_assert'
_compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
^~~~~~~~~
include/linux/compiler.h:405:23: note: expanded from macro '_compiletime_assert'
__compiletime_assert(condition, msg, prefix, suffix)
^~~~~~~~~
include/linux/compiler.h:397:9: note: expanded from macro '__compiletime_assert'
if (!(condition)) \
^~~~~~~~~
sound/pci/hda/patch_conexant.c:636:40: note: forward declaration of 'struct led_classdev'
static int cxt_gpio_mute_update(struct led_classdev *led_cdev,
^
sound/pci/hda/patch_conexant.c:639:53: error: incomplete definition of type 'struct led_classdev'
struct hda_codec *codec = dev_to_hda_codec(led_cdev->dev->parent);
~~~~~~~~^
include/sound/hda_codec.h:289:45: note: expanded from macro 'dev_to_hda_codec'
#define dev_to_hda_codec(_dev) container_of(_dev, struct hda_codec, core.dev)
^~~~
include/linux/kernel.h:995:20: note: expanded from macro 'container_of'
!__same_type(*(ptr), void), \
^~~
include/linux/compiler_types.h:220:63: note: expanded from macro '__same_type'
#define __same_type(a, b) __builtin_types_compatible_p(typeof(a), typeof(b))
^
note: (skipping 1 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all)
include/linux/compiler.h:417:22: note: expanded from macro 'compiletime_assert'
_compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
^~~~~~~~~
include/linux/compiler.h:405:23: note: expanded from macro '_compiletime_assert'
__compiletime_assert(condition, msg, prefix, suffix)
^~~~~~~~~
include/linux/compiler.h:397:9: note: expanded from macro '__compiletime_assert'
if (!(condition)) \
^~~~~~~~~
sound/pci/hda/patch_conexant.c:636:40: note: forward declaration of 'struct led_classdev'
static int cxt_gpio_mute_update(struct led_classdev *led_cdev,
^
sound/pci/hda/patch_conexant.c:647:43: warning: declaration of 'struct led_classdev' will not be visible outside of this function [-Wvisibility]
static int cxt_gpio_micmute_update(struct led_classdev *led_cdev,
^
sound/pci/hda/patch_conexant.c:648:13: warning: declaration of 'enum led_brightness' will not be visible outside of this function [-Wvisibility]
enum led_brightness brightness)
^
sound/pci/hda/patch_conexant.c:648:28: error: variable has incomplete type 'enum led_brightness'
enum led_brightness brightness)
^
sound/pci/hda/patch_conexant.c:648:13: note: forward declaration of 'enum led_brightness'
enum led_brightness brightness)
^
sound/pci/hda/patch_conexant.c:650:53: error: incomplete definition of type 'struct led_classdev'
struct hda_codec *codec = dev_to_hda_codec(led_cdev->dev->parent);
~~~~~~~~^
include/sound/hda_codec.h:289:45: note: expanded from macro 'dev_to_hda_codec'
#define dev_to_hda_codec(_dev) container_of(_dev, struct hda_codec, core.dev)
^~~~
include/linux/kernel.h:993:26: note: expanded from macro 'container_of'
void *__mptr = (void *)(ptr); \
vim +/snd_hda_gen_add_mute_led_cdev +571 sound/pci/hda/patch_conexant.c
562
563 static void cxt_fixup_mute_led_eapd(struct hda_codec *codec,
564 const struct hda_fixup *fix, int action)
565 {
566 struct conexant_spec *spec = codec->spec;
567
568 if (action == HDA_FIXUP_ACT_PRE_PROBE) {
569 spec->mute_led_eapd = 0x1b;
570 spec->dynamic_eapd = 1;
> 571 snd_hda_gen_add_mute_led_cdev(codec, cx_auto_vmaster_mute_led);
572 }
573 }
574
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 6 months
[sashal-linux-stable:queue-5.4 70/132] arch/powerpc/include/asm/cputable.h:476:6: error: 'CPU_FTR_ARCH_31' undeclared; did you mean
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/sashal/linux-stable.git queue-5.4
head: d2c5af89e80c5b71f1da59879464a930947306a2
commit: 93badfe8759710113a0c24505cd72fc5d7778db8 [70/132] powerpc: Add POWER10 architected mode
config: powerpc-allyesconfig (attached as .config)
compiler: powerpc64-linux-gcc (GCC) 9.3.0
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
# https://git.kernel.org/pub/scm/linux/kernel/git/sashal/linux-stable.git/c...
git remote add sashal-linux-stable https://git.kernel.org/pub/scm/linux/kernel/git/sashal/linux-stable.git
git fetch --no-tags sashal-linux-stable queue-5.4
git checkout 93badfe8759710113a0c24505cd72fc5d7778db8
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=powerpc
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
In file included from arch/powerpc/include/asm/mmu.h:132,
from arch/powerpc/include/asm/lppaca.h:47,
from arch/powerpc/include/asm/paca.h:17,
from arch/powerpc/include/asm/current.h:13,
from include/linux/thread_info.h:21,
from include/asm-generic/preempt.h:5,
from ./arch/powerpc/include/generated/asm/preempt.h:1,
from include/linux/preempt.h:78,
from include/linux/spinlock.h:51,
from include/linux/seqlock.h:36,
from include/linux/time.h:6,
from include/linux/compat.h:10,
from arch/powerpc/kernel/asm-offsets.c:14:
arch/powerpc/include/asm/cpu_has_feature.h: In function 'early_cpu_has_feature':
>> arch/powerpc/include/asm/cputable.h:476:6: error: 'CPU_FTR_ARCH_31' undeclared (first use in this function); did you mean 'CPU_FTR_ARCH_300'?
476 | CPU_FTR_ARCH_31)
| ^~~~~~~~~~~~~~~
arch/powerpc/include/asm/cputable.h:502:55: note: in expansion of macro 'CPU_FTRS_POWER10'
502 | CPU_FTRS_POWER9_DD2_1 | CPU_FTRS_POWER9_DD2_2 | CPU_FTRS_POWER10)
| ^~~~~~~~~~~~~~~~
arch/powerpc/include/asm/cputable.h:577:25: note: in expansion of macro 'CPU_FTRS_POSSIBLE'
577 | ~CPU_FTR_HVMODE & CPU_FTRS_POSSIBLE & CPU_FTRS_POWER9 & \
| ^~~~~~~~~~~~~~~~~
arch/powerpc/include/asm/cpu_has_feature.h:12:13: note: in expansion of macro 'CPU_FTRS_ALWAYS'
12 | return !!((CPU_FTRS_ALWAYS & feature) ||
| ^~~~~~~~~~~~~~~
arch/powerpc/include/asm/cputable.h:476:6: note: each undeclared identifier is reported only once for each function it appears in
476 | CPU_FTR_ARCH_31)
| ^~~~~~~~~~~~~~~
arch/powerpc/include/asm/cputable.h:502:55: note: in expansion of macro 'CPU_FTRS_POWER10'
502 | CPU_FTRS_POWER9_DD2_1 | CPU_FTRS_POWER9_DD2_2 | CPU_FTRS_POWER10)
| ^~~~~~~~~~~~~~~~
arch/powerpc/include/asm/cputable.h:577:25: note: in expansion of macro 'CPU_FTRS_POSSIBLE'
577 | ~CPU_FTR_HVMODE & CPU_FTRS_POSSIBLE & CPU_FTRS_POWER9 & \
| ^~~~~~~~~~~~~~~~~
arch/powerpc/include/asm/cpu_has_feature.h:12:13: note: in expansion of macro 'CPU_FTRS_ALWAYS'
12 | return !!((CPU_FTRS_ALWAYS & feature) ||
| ^~~~~~~~~~~~~~~
arch/powerpc/include/asm/cpu_has_feature.h: In function 'cpu_has_feature':
>> arch/powerpc/include/asm/cputable.h:476:6: error: 'CPU_FTR_ARCH_31' undeclared (first use in this function); did you mean 'CPU_FTR_ARCH_300'?
476 | CPU_FTR_ARCH_31)
| ^~~~~~~~~~~~~~~
arch/powerpc/include/asm/cputable.h:502:55: note: in expansion of macro 'CPU_FTRS_POWER10'
502 | CPU_FTRS_POWER9_DD2_1 | CPU_FTRS_POWER9_DD2_2 | CPU_FTRS_POWER10)
| ^~~~~~~~~~~~~~~~
arch/powerpc/include/asm/cputable.h:577:25: note: in expansion of macro 'CPU_FTRS_POSSIBLE'
577 | ~CPU_FTR_HVMODE & CPU_FTRS_POSSIBLE & CPU_FTRS_POWER9 & \
| ^~~~~~~~~~~~~~~~~
arch/powerpc/include/asm/cpu_has_feature.h:39:6: note: in expansion of macro 'CPU_FTRS_ALWAYS'
39 | if (CPU_FTRS_ALWAYS & feature)
| ^~~~~~~~~~~~~~~
--
In file included from arch/powerpc/include/asm/mmu.h:132,
from arch/powerpc/include/asm/lppaca.h:47,
from arch/powerpc/include/asm/paca.h:17,
from arch/powerpc/include/asm/current.h:13,
from include/linux/thread_info.h:21,
from include/asm-generic/preempt.h:5,
from ./arch/powerpc/include/generated/asm/preempt.h:1,
from include/linux/preempt.h:78,
from include/linux/spinlock.h:51,
from include/linux/seqlock.h:36,
from include/linux/time.h:6,
from include/linux/compat.h:10,
from arch/powerpc/kernel/asm-offsets.c:14:
arch/powerpc/include/asm/cpu_has_feature.h: In function 'early_cpu_has_feature':
>> arch/powerpc/include/asm/cputable.h:476:6: error: 'CPU_FTR_ARCH_31' undeclared (first use in this function); did you mean 'CPU_FTR_ARCH_300'?
476 | CPU_FTR_ARCH_31)
| ^~~~~~~~~~~~~~~
arch/powerpc/include/asm/cputable.h:502:55: note: in expansion of macro 'CPU_FTRS_POWER10'
502 | CPU_FTRS_POWER9_DD2_1 | CPU_FTRS_POWER9_DD2_2 | CPU_FTRS_POWER10)
| ^~~~~~~~~~~~~~~~
arch/powerpc/include/asm/cputable.h:577:25: note: in expansion of macro 'CPU_FTRS_POSSIBLE'
577 | ~CPU_FTR_HVMODE & CPU_FTRS_POSSIBLE & CPU_FTRS_POWER9 & \
| ^~~~~~~~~~~~~~~~~
arch/powerpc/include/asm/cpu_has_feature.h:12:13: note: in expansion of macro 'CPU_FTRS_ALWAYS'
12 | return !!((CPU_FTRS_ALWAYS & feature) ||
| ^~~~~~~~~~~~~~~
arch/powerpc/include/asm/cputable.h:476:6: note: each undeclared identifier is reported only once for each function it appears in
476 | CPU_FTR_ARCH_31)
| ^~~~~~~~~~~~~~~
arch/powerpc/include/asm/cputable.h:502:55: note: in expansion of macro 'CPU_FTRS_POWER10'
502 | CPU_FTRS_POWER9_DD2_1 | CPU_FTRS_POWER9_DD2_2 | CPU_FTRS_POWER10)
| ^~~~~~~~~~~~~~~~
arch/powerpc/include/asm/cputable.h:577:25: note: in expansion of macro 'CPU_FTRS_POSSIBLE'
577 | ~CPU_FTR_HVMODE & CPU_FTRS_POSSIBLE & CPU_FTRS_POWER9 & \
| ^~~~~~~~~~~~~~~~~
arch/powerpc/include/asm/cpu_has_feature.h:12:13: note: in expansion of macro 'CPU_FTRS_ALWAYS'
12 | return !!((CPU_FTRS_ALWAYS & feature) ||
| ^~~~~~~~~~~~~~~
arch/powerpc/include/asm/cpu_has_feature.h: In function 'cpu_has_feature':
>> arch/powerpc/include/asm/cputable.h:476:6: error: 'CPU_FTR_ARCH_31' undeclared (first use in this function); did you mean 'CPU_FTR_ARCH_300'?
476 | CPU_FTR_ARCH_31)
| ^~~~~~~~~~~~~~~
arch/powerpc/include/asm/cputable.h:502:55: note: in expansion of macro 'CPU_FTRS_POWER10'
502 | CPU_FTRS_POWER9_DD2_1 | CPU_FTRS_POWER9_DD2_2 | CPU_FTRS_POWER10)
| ^~~~~~~~~~~~~~~~
arch/powerpc/include/asm/cputable.h:577:25: note: in expansion of macro 'CPU_FTRS_POSSIBLE'
577 | ~CPU_FTR_HVMODE & CPU_FTRS_POSSIBLE & CPU_FTRS_POWER9 & \
| ^~~~~~~~~~~~~~~~~
arch/powerpc/include/asm/cpu_has_feature.h:39:6: note: in expansion of macro 'CPU_FTRS_ALWAYS'
39 | if (CPU_FTRS_ALWAYS & feature)
| ^~~~~~~~~~~~~~~
make[2]: *** [scripts/Makefile.build:99: arch/powerpc/kernel/asm-offsets.s] Error 1
make[2]: Target '__build' not remade because of errors.
make[1]: *** [Makefile:1135: prepare0] Error 2
make[1]: Target 'modules_prepare' not remade because of errors.
make: *** [Makefile:179: sub-make] Error 2
make: Target 'modules_prepare' not remade because of errors.
--
In file included from arch/powerpc/include/asm/mmu.h:132,
from arch/powerpc/include/asm/lppaca.h:47,
from arch/powerpc/include/asm/paca.h:17,
from arch/powerpc/include/asm/current.h:13,
from include/linux/thread_info.h:21,
from include/asm-generic/preempt.h:5,
from ./arch/powerpc/include/generated/asm/preempt.h:1,
from include/linux/preempt.h:78,
from include/linux/spinlock.h:51,
from include/linux/seqlock.h:36,
from include/linux/time.h:6,
from include/linux/compat.h:10,
from arch/powerpc/kernel/asm-offsets.c:14:
arch/powerpc/include/asm/cpu_has_feature.h: In function 'early_cpu_has_feature':
>> arch/powerpc/include/asm/cputable.h:476:6: error: 'CPU_FTR_ARCH_31' undeclared (first use in this function); did you mean 'CPU_FTR_ARCH_300'?
476 | CPU_FTR_ARCH_31)
| ^~~~~~~~~~~~~~~
arch/powerpc/include/asm/cputable.h:502:55: note: in expansion of macro 'CPU_FTRS_POWER10'
502 | CPU_FTRS_POWER9_DD2_1 | CPU_FTRS_POWER9_DD2_2 | CPU_FTRS_POWER10)
| ^~~~~~~~~~~~~~~~
arch/powerpc/include/asm/cputable.h:577:25: note: in expansion of macro 'CPU_FTRS_POSSIBLE'
577 | ~CPU_FTR_HVMODE & CPU_FTRS_POSSIBLE & CPU_FTRS_POWER9 & \
| ^~~~~~~~~~~~~~~~~
arch/powerpc/include/asm/cpu_has_feature.h:12:13: note: in expansion of macro 'CPU_FTRS_ALWAYS'
12 | return !!((CPU_FTRS_ALWAYS & feature) ||
| ^~~~~~~~~~~~~~~
arch/powerpc/include/asm/cputable.h:476:6: note: each undeclared identifier is reported only once for each function it appears in
476 | CPU_FTR_ARCH_31)
| ^~~~~~~~~~~~~~~
arch/powerpc/include/asm/cputable.h:502:55: note: in expansion of macro 'CPU_FTRS_POWER10'
502 | CPU_FTRS_POWER9_DD2_1 | CPU_FTRS_POWER9_DD2_2 | CPU_FTRS_POWER10)
| ^~~~~~~~~~~~~~~~
arch/powerpc/include/asm/cputable.h:577:25: note: in expansion of macro 'CPU_FTRS_POSSIBLE'
577 | ~CPU_FTR_HVMODE & CPU_FTRS_POSSIBLE & CPU_FTRS_POWER9 & \
| ^~~~~~~~~~~~~~~~~
arch/powerpc/include/asm/cpu_has_feature.h:12:13: note: in expansion of macro 'CPU_FTRS_ALWAYS'
12 | return !!((CPU_FTRS_ALWAYS & feature) ||
| ^~~~~~~~~~~~~~~
arch/powerpc/include/asm/cpu_has_feature.h: In function 'cpu_has_feature':
>> arch/powerpc/include/asm/cputable.h:476:6: error: 'CPU_FTR_ARCH_31' undeclared (first use in this function); did you mean 'CPU_FTR_ARCH_300'?
476 | CPU_FTR_ARCH_31)
| ^~~~~~~~~~~~~~~
arch/powerpc/include/asm/cputable.h:502:55: note: in expansion of macro 'CPU_FTRS_POWER10'
502 | CPU_FTRS_POWER9_DD2_1 | CPU_FTRS_POWER9_DD2_2 | CPU_FTRS_POWER10)
| ^~~~~~~~~~~~~~~~
arch/powerpc/include/asm/cputable.h:577:25: note: in expansion of macro 'CPU_FTRS_POSSIBLE'
577 | ~CPU_FTR_HVMODE & CPU_FTRS_POSSIBLE & CPU_FTRS_POWER9 & \
| ^~~~~~~~~~~~~~~~~
arch/powerpc/include/asm/cpu_has_feature.h:39:6: note: in expansion of macro 'CPU_FTRS_ALWAYS'
39 | if (CPU_FTRS_ALWAYS & feature)
| ^~~~~~~~~~~~~~~
make[2]: *** [scripts/Makefile.build:99: arch/powerpc/kernel/asm-offsets.s] Error 1
make[2]: Target '__build' not remade because of errors.
make[1]: *** [Makefile:1135: prepare0] Error 2
make[1]: Target 'prepare' not remade because of errors.
make: *** [Makefile:179: sub-make] Error 2
make: Target 'prepare' not remade because of errors.
vim +476 arch/powerpc/include/asm/cputable.h
293
294 #define CPU_FTRS_PPC601 (CPU_FTR_COMMON | \
295 CPU_FTR_COHERENT_ICACHE)
296 #define CPU_FTRS_603 (CPU_FTR_COMMON | CPU_FTR_MAYBE_CAN_DOZE | \
297 CPU_FTR_MAYBE_CAN_NAP | CPU_FTR_PPC_LE | CPU_FTR_NOEXECUTE)
298 #define CPU_FTRS_604 (CPU_FTR_COMMON | CPU_FTR_PPC_LE)
299 #define CPU_FTRS_740_NOTAU (CPU_FTR_COMMON | \
300 CPU_FTR_MAYBE_CAN_DOZE | CPU_FTR_L2CR | \
301 CPU_FTR_MAYBE_CAN_NAP | CPU_FTR_PPC_LE)
302 #define CPU_FTRS_740 (CPU_FTR_COMMON | \
303 CPU_FTR_MAYBE_CAN_DOZE | CPU_FTR_L2CR | \
304 CPU_FTR_TAU | CPU_FTR_MAYBE_CAN_NAP | \
305 CPU_FTR_PPC_LE)
306 #define CPU_FTRS_750 (CPU_FTR_COMMON | \
307 CPU_FTR_MAYBE_CAN_DOZE | CPU_FTR_L2CR | \
308 CPU_FTR_TAU | CPU_FTR_MAYBE_CAN_NAP | \
309 CPU_FTR_PPC_LE)
310 #define CPU_FTRS_750CL (CPU_FTRS_750)
311 #define CPU_FTRS_750FX1 (CPU_FTRS_750 | CPU_FTR_DUAL_PLL_750FX | CPU_FTR_NO_DPM)
312 #define CPU_FTRS_750FX2 (CPU_FTRS_750 | CPU_FTR_NO_DPM)
313 #define CPU_FTRS_750FX (CPU_FTRS_750 | CPU_FTR_DUAL_PLL_750FX)
314 #define CPU_FTRS_750GX (CPU_FTRS_750FX)
315 #define CPU_FTRS_7400_NOTAU (CPU_FTR_COMMON | \
316 CPU_FTR_MAYBE_CAN_DOZE | CPU_FTR_L2CR | \
317 CPU_FTR_ALTIVEC_COMP | \
318 CPU_FTR_MAYBE_CAN_NAP | CPU_FTR_PPC_LE)
319 #define CPU_FTRS_7400 (CPU_FTR_COMMON | \
320 CPU_FTR_MAYBE_CAN_DOZE | CPU_FTR_L2CR | \
321 CPU_FTR_TAU | CPU_FTR_ALTIVEC_COMP | \
322 CPU_FTR_MAYBE_CAN_NAP | CPU_FTR_PPC_LE)
323 #define CPU_FTRS_7450_20 (CPU_FTR_COMMON | \
324 CPU_FTR_L2CR | CPU_FTR_ALTIVEC_COMP | \
325 CPU_FTR_L3CR | CPU_FTR_SPEC7450 | \
326 CPU_FTR_NEED_COHERENT | CPU_FTR_PPC_LE | CPU_FTR_NEED_PAIRED_STWCX)
327 #define CPU_FTRS_7450_21 (CPU_FTR_COMMON | \
328 CPU_FTR_MAYBE_CAN_NAP | CPU_FTR_L2CR | CPU_FTR_ALTIVEC_COMP | \
329 CPU_FTR_L3CR | CPU_FTR_SPEC7450 | \
330 CPU_FTR_NAP_DISABLE_L2_PR | CPU_FTR_L3_DISABLE_NAP | \
331 CPU_FTR_NEED_COHERENT | CPU_FTR_PPC_LE | CPU_FTR_NEED_PAIRED_STWCX)
332 #define CPU_FTRS_7450_23 (CPU_FTR_COMMON | \
333 CPU_FTR_NEED_PAIRED_STWCX | \
334 CPU_FTR_MAYBE_CAN_NAP | CPU_FTR_L2CR | CPU_FTR_ALTIVEC_COMP | \
335 CPU_FTR_L3CR | CPU_FTR_SPEC7450 | \
336 CPU_FTR_NAP_DISABLE_L2_PR | CPU_FTR_NEED_COHERENT | CPU_FTR_PPC_LE)
337 #define CPU_FTRS_7455_1 (CPU_FTR_COMMON | \
338 CPU_FTR_NEED_PAIRED_STWCX | \
339 CPU_FTR_L2CR | CPU_FTR_ALTIVEC_COMP | CPU_FTR_L3CR | \
340 CPU_FTR_SPEC7450 | CPU_FTR_NEED_COHERENT | CPU_FTR_PPC_LE)
341 #define CPU_FTRS_7455_20 (CPU_FTR_COMMON | \
342 CPU_FTR_NEED_PAIRED_STWCX | \
343 CPU_FTR_MAYBE_CAN_NAP | CPU_FTR_L2CR | CPU_FTR_ALTIVEC_COMP | \
344 CPU_FTR_L3CR | CPU_FTR_SPEC7450 | \
345 CPU_FTR_NAP_DISABLE_L2_PR | CPU_FTR_L3_DISABLE_NAP | \
346 CPU_FTR_NEED_COHERENT | CPU_FTR_PPC_LE)
347 #define CPU_FTRS_7455 (CPU_FTR_COMMON | \
348 CPU_FTR_MAYBE_CAN_NAP | CPU_FTR_L2CR | CPU_FTR_ALTIVEC_COMP | \
349 CPU_FTR_L3CR | CPU_FTR_SPEC7450 | CPU_FTR_NAP_DISABLE_L2_PR | \
350 CPU_FTR_NEED_COHERENT | CPU_FTR_PPC_LE | CPU_FTR_NEED_PAIRED_STWCX)
351 #define CPU_FTRS_7447_10 (CPU_FTR_COMMON | \
352 CPU_FTR_MAYBE_CAN_NAP | CPU_FTR_L2CR | CPU_FTR_ALTIVEC_COMP | \
353 CPU_FTR_L3CR | CPU_FTR_SPEC7450 | CPU_FTR_NAP_DISABLE_L2_PR | \
354 CPU_FTR_NEED_COHERENT | CPU_FTR_NO_BTIC | CPU_FTR_PPC_LE | \
355 CPU_FTR_NEED_PAIRED_STWCX)
356 #define CPU_FTRS_7447 (CPU_FTR_COMMON | \
357 CPU_FTR_MAYBE_CAN_NAP | CPU_FTR_L2CR | CPU_FTR_ALTIVEC_COMP | \
358 CPU_FTR_L3CR | CPU_FTR_SPEC7450 | CPU_FTR_NAP_DISABLE_L2_PR | \
359 CPU_FTR_NEED_COHERENT | CPU_FTR_PPC_LE | CPU_FTR_NEED_PAIRED_STWCX)
360 #define CPU_FTRS_7447A (CPU_FTR_COMMON | \
361 CPU_FTR_MAYBE_CAN_NAP | CPU_FTR_L2CR | CPU_FTR_ALTIVEC_COMP | \
362 CPU_FTR_SPEC7450 | CPU_FTR_NAP_DISABLE_L2_PR | \
363 CPU_FTR_NEED_COHERENT | CPU_FTR_PPC_LE | CPU_FTR_NEED_PAIRED_STWCX)
364 #define CPU_FTRS_7448 (CPU_FTR_COMMON | \
365 CPU_FTR_MAYBE_CAN_NAP | CPU_FTR_L2CR | CPU_FTR_ALTIVEC_COMP | \
366 CPU_FTR_SPEC7450 | CPU_FTR_NAP_DISABLE_L2_PR | \
367 CPU_FTR_PPC_LE | CPU_FTR_NEED_PAIRED_STWCX)
368 #define CPU_FTRS_82XX (CPU_FTR_COMMON | CPU_FTR_MAYBE_CAN_DOZE | CPU_FTR_NOEXECUTE)
369 #define CPU_FTRS_G2_LE (CPU_FTR_COMMON | CPU_FTR_MAYBE_CAN_DOZE | \
370 CPU_FTR_MAYBE_CAN_NAP | CPU_FTR_NOEXECUTE)
371 #define CPU_FTRS_E300 (CPU_FTR_MAYBE_CAN_DOZE | \
372 CPU_FTR_MAYBE_CAN_NAP | \
373 CPU_FTR_COMMON | CPU_FTR_NOEXECUTE)
374 #define CPU_FTRS_E300C2 (CPU_FTR_MAYBE_CAN_DOZE | \
375 CPU_FTR_MAYBE_CAN_NAP | \
376 CPU_FTR_COMMON | CPU_FTR_FPU_UNAVAILABLE | CPU_FTR_NOEXECUTE)
377 #define CPU_FTRS_CLASSIC32 (CPU_FTR_COMMON)
378 #define CPU_FTRS_8XX (CPU_FTR_NOEXECUTE)
379 #define CPU_FTRS_40X (CPU_FTR_NODSISRALIGN | CPU_FTR_NOEXECUTE)
380 #define CPU_FTRS_44X (CPU_FTR_NODSISRALIGN | CPU_FTR_NOEXECUTE)
381 #define CPU_FTRS_440x6 (CPU_FTR_NODSISRALIGN | CPU_FTR_NOEXECUTE | \
382 CPU_FTR_INDEXED_DCR)
383 #define CPU_FTRS_47X (CPU_FTRS_440x6)
384 #define CPU_FTRS_E200 (CPU_FTR_SPE_COMP | \
385 CPU_FTR_NODSISRALIGN | CPU_FTR_COHERENT_ICACHE | \
386 CPU_FTR_NOEXECUTE | \
387 CPU_FTR_DEBUG_LVL_EXC)
388 #define CPU_FTRS_E500 (CPU_FTR_MAYBE_CAN_DOZE | \
389 CPU_FTR_SPE_COMP | CPU_FTR_MAYBE_CAN_NAP | CPU_FTR_NODSISRALIGN | \
390 CPU_FTR_NOEXECUTE)
391 #define CPU_FTRS_E500_2 (CPU_FTR_MAYBE_CAN_DOZE | \
392 CPU_FTR_SPE_COMP | CPU_FTR_MAYBE_CAN_NAP | \
393 CPU_FTR_NODSISRALIGN | CPU_FTR_NOEXECUTE)
394 #define CPU_FTRS_E500MC (CPU_FTR_NODSISRALIGN | \
395 CPU_FTR_LWSYNC | CPU_FTR_NOEXECUTE | \
396 CPU_FTR_DBELL | CPU_FTR_DEBUG_LVL_EXC | CPU_FTR_EMB_HV)
397 /*
398 * e5500/e6500 erratum A-006958 is a timebase bug that can use the
399 * same workaround as CPU_FTR_CELL_TB_BUG.
400 */
401 #define CPU_FTRS_E5500 (CPU_FTR_NODSISRALIGN | \
402 CPU_FTR_LWSYNC | CPU_FTR_NOEXECUTE | \
403 CPU_FTR_DBELL | CPU_FTR_POPCNTB | CPU_FTR_POPCNTD | \
404 CPU_FTR_DEBUG_LVL_EXC | CPU_FTR_EMB_HV | CPU_FTR_CELL_TB_BUG)
405 #define CPU_FTRS_E6500 (CPU_FTR_NODSISRALIGN | \
406 CPU_FTR_LWSYNC | CPU_FTR_NOEXECUTE | \
407 CPU_FTR_DBELL | CPU_FTR_POPCNTB | CPU_FTR_POPCNTD | \
408 CPU_FTR_DEBUG_LVL_EXC | CPU_FTR_EMB_HV | CPU_FTR_ALTIVEC_COMP | \
409 CPU_FTR_CELL_TB_BUG | CPU_FTR_SMT)
410
411 /* 64-bit CPUs */
412 #define CPU_FTRS_PPC970 (CPU_FTR_LWSYNC | \
413 CPU_FTR_PPCAS_ARCH_V2 | CPU_FTR_CTRL | \
414 CPU_FTR_ALTIVEC_COMP | CPU_FTR_CAN_NAP | CPU_FTR_MMCRA | \
415 CPU_FTR_CP_USE_DCBTZ | CPU_FTR_STCX_CHECKS_ADDRESS | \
416 CPU_FTR_HVMODE | CPU_FTR_DABRX)
417 #define CPU_FTRS_POWER5 (CPU_FTR_LWSYNC | \
418 CPU_FTR_PPCAS_ARCH_V2 | CPU_FTR_CTRL | \
419 CPU_FTR_MMCRA | CPU_FTR_SMT | \
420 CPU_FTR_COHERENT_ICACHE | CPU_FTR_PURR | \
421 CPU_FTR_STCX_CHECKS_ADDRESS | CPU_FTR_POPCNTB | CPU_FTR_DABRX)
422 #define CPU_FTRS_POWER6 (CPU_FTR_LWSYNC | \
423 CPU_FTR_PPCAS_ARCH_V2 | CPU_FTR_CTRL | \
424 CPU_FTR_MMCRA | CPU_FTR_SMT | \
425 CPU_FTR_COHERENT_ICACHE | \
426 CPU_FTR_PURR | CPU_FTR_SPURR | CPU_FTR_REAL_LE | \
427 CPU_FTR_DSCR | CPU_FTR_UNALIGNED_LD_STD | \
428 CPU_FTR_STCX_CHECKS_ADDRESS | CPU_FTR_POPCNTB | CPU_FTR_CFAR | \
429 CPU_FTR_DABRX)
430 #define CPU_FTRS_POWER7 (CPU_FTR_LWSYNC | \
431 CPU_FTR_PPCAS_ARCH_V2 | CPU_FTR_CTRL | CPU_FTR_ARCH_206 |\
432 CPU_FTR_MMCRA | CPU_FTR_SMT | \
433 CPU_FTR_COHERENT_ICACHE | \
434 CPU_FTR_PURR | CPU_FTR_SPURR | CPU_FTR_REAL_LE | \
435 CPU_FTR_DSCR | CPU_FTR_SAO | CPU_FTR_ASYM_SMT | \
436 CPU_FTR_STCX_CHECKS_ADDRESS | CPU_FTR_POPCNTB | CPU_FTR_POPCNTD | \
437 CPU_FTR_CFAR | CPU_FTR_HVMODE | \
438 CPU_FTR_VMX_COPY | CPU_FTR_HAS_PPR | CPU_FTR_DABRX | CPU_FTR_PKEY)
439 #define CPU_FTRS_POWER8 (CPU_FTR_LWSYNC | \
440 CPU_FTR_PPCAS_ARCH_V2 | CPU_FTR_CTRL | CPU_FTR_ARCH_206 |\
441 CPU_FTR_MMCRA | CPU_FTR_SMT | \
442 CPU_FTR_COHERENT_ICACHE | \
443 CPU_FTR_PURR | CPU_FTR_SPURR | CPU_FTR_REAL_LE | \
444 CPU_FTR_DSCR | CPU_FTR_SAO | \
445 CPU_FTR_STCX_CHECKS_ADDRESS | CPU_FTR_POPCNTB | CPU_FTR_POPCNTD | \
446 CPU_FTR_CFAR | CPU_FTR_HVMODE | CPU_FTR_VMX_COPY | \
447 CPU_FTR_DBELL | CPU_FTR_HAS_PPR | CPU_FTR_DAWR | \
448 CPU_FTR_ARCH_207S | CPU_FTR_TM_COMP | CPU_FTR_PKEY)
449 #define CPU_FTRS_POWER8E (CPU_FTRS_POWER8 | CPU_FTR_PMAO_BUG)
450 #define CPU_FTRS_POWER9 (CPU_FTR_LWSYNC | \
451 CPU_FTR_PPCAS_ARCH_V2 | CPU_FTR_CTRL | CPU_FTR_ARCH_206 |\
452 CPU_FTR_MMCRA | CPU_FTR_SMT | \
453 CPU_FTR_COHERENT_ICACHE | \
454 CPU_FTR_PURR | CPU_FTR_SPURR | CPU_FTR_REAL_LE | \
455 CPU_FTR_DSCR | CPU_FTR_SAO | \
456 CPU_FTR_STCX_CHECKS_ADDRESS | CPU_FTR_POPCNTB | CPU_FTR_POPCNTD | \
457 CPU_FTR_CFAR | CPU_FTR_HVMODE | CPU_FTR_VMX_COPY | \
458 CPU_FTR_DBELL | CPU_FTR_HAS_PPR | CPU_FTR_ARCH_207S | \
459 CPU_FTR_TM_COMP | CPU_FTR_ARCH_300 | CPU_FTR_PKEY | \
460 CPU_FTR_P9_TLBIE_STQ_BUG | CPU_FTR_P9_TLBIE_ERAT_BUG | CPU_FTR_P9_TIDR)
461 #define CPU_FTRS_POWER9_DD2_0 CPU_FTRS_POWER9
462 #define CPU_FTRS_POWER9_DD2_1 (CPU_FTRS_POWER9 | CPU_FTR_POWER9_DD2_1)
463 #define CPU_FTRS_POWER9_DD2_2 (CPU_FTRS_POWER9 | CPU_FTR_POWER9_DD2_1 | \
464 CPU_FTR_P9_TM_HV_ASSIST | \
465 CPU_FTR_P9_TM_XER_SO_BUG)
466 #define CPU_FTRS_POWER10 (CPU_FTR_LWSYNC | \
467 CPU_FTR_PPCAS_ARCH_V2 | CPU_FTR_CTRL | CPU_FTR_ARCH_206 |\
468 CPU_FTR_MMCRA | CPU_FTR_SMT | \
469 CPU_FTR_COHERENT_ICACHE | \
470 CPU_FTR_PURR | CPU_FTR_SPURR | CPU_FTR_REAL_LE | \
471 CPU_FTR_DSCR | CPU_FTR_SAO | \
472 CPU_FTR_STCX_CHECKS_ADDRESS | CPU_FTR_POPCNTB | CPU_FTR_POPCNTD | \
473 CPU_FTR_CFAR | CPU_FTR_HVMODE | CPU_FTR_VMX_COPY | \
474 CPU_FTR_DBELL | CPU_FTR_HAS_PPR | CPU_FTR_ARCH_207S | \
475 CPU_FTR_TM_COMP | CPU_FTR_ARCH_300 | CPU_FTR_PKEY | \
> 476 CPU_FTR_ARCH_31)
477 #define CPU_FTRS_CELL (CPU_FTR_LWSYNC | \
478 CPU_FTR_PPCAS_ARCH_V2 | CPU_FTR_CTRL | \
479 CPU_FTR_ALTIVEC_COMP | CPU_FTR_MMCRA | CPU_FTR_SMT | \
480 CPU_FTR_PAUSE_ZERO | CPU_FTR_CELL_TB_BUG | CPU_FTR_CP_USE_DCBTZ | \
481 CPU_FTR_UNALIGNED_LD_STD | CPU_FTR_DABRX)
482 #define CPU_FTRS_PA6T (CPU_FTR_LWSYNC | \
483 CPU_FTR_PPCAS_ARCH_V2 | CPU_FTR_ALTIVEC_COMP | \
484 CPU_FTR_PURR | CPU_FTR_REAL_LE | CPU_FTR_DABRX)
485 #define CPU_FTRS_COMPATIBLE (CPU_FTR_PPCAS_ARCH_V2)
486
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 6 months