[mips-linux:mips-next 73/100] ld.lld: error: arch/mips/vdso/elf.o is incompatible with elf64-tradlittlemips
by kbuild test robot
CC: linux-mips(a)linux-mips.org
TO: Nathan Chancellor <natechancellor(a)gmail.com>
CC: Thomas Bogendoerfer <tsbogend(a)alpha.franken.de>
tree: https://git.kernel.org/pub/scm/linux/kernel/git/mips/linux.git mips-next
head: c9c2e9c596e90fcf9ee0bf16672f7b938f39b913
commit: 2ff906994b6c2b949c5bf65330a8abb5dde9c8e5 [73/100] MIPS: VDSO: Use $(LD) instead of $(CC) to link VDSO
config: mips-randconfig-r023-20200520 (attached as .config)
compiler: clang version 11.0.0 (https://github.com/llvm/llvm-project e6658079aca6d971b4e9d7137a3a2ecbc9c34aec)
reproduce:
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
git checkout 2ff906994b6c2b949c5bf65330a8abb5dde9c8e5
# 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: kbuild test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>, old ones prefixed by <<):
>> ld.lld: error: arch/mips/vdso/elf.o is incompatible with elf64-tradlittlemips
>> ld.lld: error: arch/mips/vdso/sigreturn.o is incompatible with elf64-tradlittlemips
--
>> ld.lld: error: arch/mips/vdso/elf-n32.o is incompatible with elf32-ntradlittlemips
>> ld.lld: error: arch/mips/vdso/sigreturn-n32.o is incompatible with elf32-ntradlittlemips
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 4 months
[linux-next:master 10679/10701] arch/x86/mm/pgtable.c:427:2: warning: variable length array 'u_pmds' is used
by kbuild test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
head: fb57b1fabcb28f358901b2df90abd2b48abc1ca8
commit: 0e19fc1c40bd7516d5a30a459db4f49d48910847 [10679/10701] mm: consolidate pgd_index() and pgd_offset{_k}() definitions
config: i386-randconfig-a005-20200520 (attached as .config)
compiler: gcc-4.9 (Ubuntu 4.9.3-13ubuntu2) 4.9.3
reproduce:
git checkout 0e19fc1c40bd7516d5a30a459db4f49d48910847
# save the attached .config to linux build tree
make ARCH=i386
If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>, old ones prefixed by <<):
arch/x86/mm/pgtable.c: In function 'pgd_alloc':
>> arch/x86/mm/pgtable.c:427:2: warning: variable length array 'u_pmds' is used [-Wvla]
pmd_t *u_pmds[MAX_PREALLOCATED_USER_PMDS];
^
>> arch/x86/mm/pgtable.c:428:2: warning: variable length array 'pmds' is used [-Wvla]
pmd_t *pmds[MAX_PREALLOCATED_PMDS];
^
vim +/u_pmds +427 arch/x86/mm/pgtable.c
1db491f77b6ed0 Fenghua Yu 2015-01-15 423
d8d5900ef8afc5 Jeremy Fitzhardinge 2008-06-25 424 pgd_t *pgd_alloc(struct mm_struct *mm)
1ec1fe73dfb711 Ingo Molnar 2008-03-19 425 {
d8d5900ef8afc5 Jeremy Fitzhardinge 2008-06-25 426 pgd_t *pgd;
184d47f0fd3651 Kees Cook 2018-10-08 @427 pmd_t *u_pmds[MAX_PREALLOCATED_USER_PMDS];
184d47f0fd3651 Kees Cook 2018-10-08 @428 pmd_t *pmds[MAX_PREALLOCATED_PMDS];
1ec1fe73dfb711 Ingo Molnar 2008-03-19 429
1db491f77b6ed0 Fenghua Yu 2015-01-15 430 pgd = _pgd_alloc();
1ec1fe73dfb711 Ingo Molnar 2008-03-19 431
d8d5900ef8afc5 Jeremy Fitzhardinge 2008-06-25 432 if (pgd == NULL)
d8d5900ef8afc5 Jeremy Fitzhardinge 2008-06-25 433 goto out;
4f76cd382213b2 Jeremy Fitzhardinge 2008-03-17 434
d8d5900ef8afc5 Jeremy Fitzhardinge 2008-06-25 435 mm->pgd = pgd;
4f76cd382213b2 Jeremy Fitzhardinge 2008-03-17 436
f59dbe9ca6707e Joerg Roedel 2018-07-18 437 if (preallocate_pmds(mm, pmds, PREALLOCATED_PMDS) != 0)
d8d5900ef8afc5 Jeremy Fitzhardinge 2008-06-25 438 goto out_free_pgd;
d8d5900ef8afc5 Jeremy Fitzhardinge 2008-06-25 439
f59dbe9ca6707e Joerg Roedel 2018-07-18 440 if (preallocate_pmds(mm, u_pmds, PREALLOCATED_USER_PMDS) != 0)
d8d5900ef8afc5 Jeremy Fitzhardinge 2008-06-25 441 goto out_free_pmds;
d8d5900ef8afc5 Jeremy Fitzhardinge 2008-06-25 442
f59dbe9ca6707e Joerg Roedel 2018-07-18 443 if (paravirt_pgd_alloc(mm) != 0)
f59dbe9ca6707e Joerg Roedel 2018-07-18 444 goto out_free_user_pmds;
f59dbe9ca6707e Joerg Roedel 2018-07-18 445
d8d5900ef8afc5 Jeremy Fitzhardinge 2008-06-25 446 /*
d8d5900ef8afc5 Jeremy Fitzhardinge 2008-06-25 447 * Make sure that pre-populating the pmds is atomic with
d8d5900ef8afc5 Jeremy Fitzhardinge 2008-06-25 448 * respect to anything walking the pgd_list, so that they
d8d5900ef8afc5 Jeremy Fitzhardinge 2008-06-25 449 * never see a partially populated pgd.
d8d5900ef8afc5 Jeremy Fitzhardinge 2008-06-25 450 */
a79e53d85683c6 Andrea Arcangeli 2011-02-16 451 spin_lock(&pgd_lock);
4f76cd382213b2 Jeremy Fitzhardinge 2008-03-17 452
617d34d9e5d832 Jeremy Fitzhardinge 2010-09-21 453 pgd_ctor(mm, pgd);
d8d5900ef8afc5 Jeremy Fitzhardinge 2008-06-25 454 pgd_prepopulate_pmd(mm, pgd, pmds);
f59dbe9ca6707e Joerg Roedel 2018-07-18 455 pgd_prepopulate_user_pmd(mm, pgd, u_pmds);
4f76cd382213b2 Jeremy Fitzhardinge 2008-03-17 456
a79e53d85683c6 Andrea Arcangeli 2011-02-16 457 spin_unlock(&pgd_lock);
4f76cd382213b2 Jeremy Fitzhardinge 2008-03-17 458
4f76cd382213b2 Jeremy Fitzhardinge 2008-03-17 459 return pgd;
d8d5900ef8afc5 Jeremy Fitzhardinge 2008-06-25 460
f59dbe9ca6707e Joerg Roedel 2018-07-18 461 out_free_user_pmds:
f59dbe9ca6707e Joerg Roedel 2018-07-18 462 free_pmds(mm, u_pmds, PREALLOCATED_USER_PMDS);
d8d5900ef8afc5 Jeremy Fitzhardinge 2008-06-25 463 out_free_pmds:
f59dbe9ca6707e Joerg Roedel 2018-07-18 464 free_pmds(mm, pmds, PREALLOCATED_PMDS);
d8d5900ef8afc5 Jeremy Fitzhardinge 2008-06-25 465 out_free_pgd:
1db491f77b6ed0 Fenghua Yu 2015-01-15 466 _pgd_free(pgd);
d8d5900ef8afc5 Jeremy Fitzhardinge 2008-06-25 467 out:
d8d5900ef8afc5 Jeremy Fitzhardinge 2008-06-25 468 return NULL;
4f76cd382213b2 Jeremy Fitzhardinge 2008-03-17 469 }
4f76cd382213b2 Jeremy Fitzhardinge 2008-03-17 470
:::::: The code at line 427 was first introduced by commit
:::::: 184d47f0fd365108bd06ab26cdb3450b716269fd x86/mm: Avoid VLA in pgd_alloc()
:::::: TO: Kees Cook <keescook(a)chromium.org>
:::::: CC: Ingo Molnar <mingo(a)kernel.org>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 4 months
[jpirko-mlxsw:petrm_wip4 5/5] net/sched/cls_api.c:3894:37: sparse: sparse: incorrect type in argument 2 (different address spaces)
by kbuild test robot
tree: https://github.com/jpirko/linux_mlxsw petrm_wip4
head: 762771d39235289a988465b66509744f59996c66
commit: 762771d39235289a988465b66509744f59996c66 [5/5] wip
config: x86_64-allyesconfig (attached as .config)
compiler: gcc-7 (Ubuntu 7.5.0-6ubuntu2) 7.5.0
reproduce:
# apt-get install sparse
# sparse version: v0.6.1-193-gb8fad4bc-dirty
git checkout 762771d39235289a988465b66509744f59996c66
# save the attached .config to linux build tree
make C=1 ARCH=x86_64 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__'
If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <lkp(a)intel.com>
sparse warnings: (new ones prefixed by >>)
net/sched/cls_api.c:270:22: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __be16 [usertype] protocol @@ got icted __be16 [usertype] protocol @@
net/sched/cls_api.c:270:22: sparse: expected restricted __be16 [usertype] protocol
net/sched/cls_api.c:270:22: sparse: got unsigned int [usertype] protocol
net/sched/cls_api.c:1734:16: sparse: sparse: incompatible types in comparison expression (different address spaces):
net/sched/cls_api.c:1734:16: sparse: struct tcf_proto *
net/sched/cls_api.c:1734:16: sparse: struct tcf_proto [noderef] <asn:4> *
net/sched/cls_api.c:1834:20: sparse: sparse: incompatible types in comparison expression (different address spaces):
net/sched/cls_api.c:1834:20: sparse: struct tcf_proto [noderef] <asn:4> *
net/sched/cls_api.c:1834:20: sparse: struct tcf_proto *
net/sched/cls_api.c:1796:25: sparse: sparse: incompatible types in comparison expression (different address spaces):
net/sched/cls_api.c:1796:25: sparse: struct tcf_proto [noderef] <asn:4> *
net/sched/cls_api.c:1796:25: sparse: struct tcf_proto *
net/sched/cls_api.c:1816:16: sparse: sparse: incompatible types in comparison expression (different address spaces):
net/sched/cls_api.c:1816:16: sparse: struct tcf_proto *
net/sched/cls_api.c:1816:16: sparse: struct tcf_proto [noderef] <asn:4> *
net/sched/cls_api.c:1881:25: sparse: sparse: restricted __be16 degrades to integer
net/sched/cls_api.c:2556:50: sparse: sparse: restricted __be16 degrades to integer
>> net/sched/cls_api.c:3894:37: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected struct tcf_proto const *tp @@ got struct tcf_pstruct tcf_proto const *tp @@
>> net/sched/cls_api.c:3894:37: sparse: expected struct tcf_proto const *tp
net/sched/cls_api.c:3894:37: sparse: got struct tcf_proto [noderef] <asn:4> *filter_chain
net/sched/cls_api.c:3785:9: sparse: sparse: context imbalance in 'tc_setup_flow_action' - different lock contexts for basic block
vim +3894 net/sched/cls_api.c
3880
3881 struct sk_buff *tcf_qevent_handle(struct tcf_qevent *qe, struct Qdisc *sch,
3882 struct sk_buff *skb, struct sk_buff **to_free,
3883 int *ret)
3884 {
3885 struct tcf_result cl_res;
3886 struct tcf_proto *fl;
3887
3888 if (!qe->info.block_index)
3889 return skb;
3890
3891 fl = rcu_dereference_bh(qe->filter_chain);
3892
3893 printk(KERN_WARNING "qevent\n");
> 3894 switch (tcf_classify(skb, qe->filter_chain, &cl_res, false)) {
3895 case TC_ACT_SHOT:
3896 qdisc_qstats_drop(sch);
3897 __qdisc_drop(skb, to_free);
3898 *ret = __NET_XMIT_BYPASS;
3899 return NULL;
3900 case TC_ACT_STOLEN:
3901 case TC_ACT_QUEUED:
3902 case TC_ACT_TRAP:
3903 __qdisc_drop(skb, to_free);
3904 *ret = __NET_XMIT_STOLEN;
3905 return NULL;
3906 case TC_ACT_REDIRECT:
3907 skb_do_redirect(skb);
3908 *ret = __NET_XMIT_STOLEN;
3909 return NULL;
3910 }
3911
3912 return skb;
3913 }
3914 EXPORT_SYMBOL(tcf_qevent_handle);
3915
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 4 months
Re: arch/sparc/mm/srmmu.c:300:9: error: variable 'pud' set but not used
by Andrew Morton
On Wed, 20 May 2020 16:20:05 +0300 Mike Rapoport <rppt(a)linux.ibm.com> wrote:
> The kbuild test robot reported the following warning:
>
> arch/sparc/mm/srmmu.c: In function 'srmmu_nocache_init':
> >> arch/sparc/mm/srmmu.c:300:9: error: variable 'pud' set but not used
> >> [-Werror=unused-but-set-variable]
> 300 | pud_t *pud;
>
> This warning is caused by misprint in the page table traversal in
> srmmu_nocache_init() function which accessed a PMD entry using PGD rather
> than PUD.
> Since sparc32 has only 3 page table levels, the PGD and PUD are essentially
> the same and usage of __nocache_fix() removed the type checking.
>
> Use PUD for the consistency and to silence the compiler warning.
>
> ...
>
> --- a/arch/sparc/mm/srmmu.c
> +++ b/arch/sparc/mm/srmmu.c
> @@ -304,7 +304,7 @@ static void __init srmmu_nocache_init(void)
> pgd = pgd_offset_k(vaddr);
> p4d = p4d_offset(__nocache_fix(pgd), vaddr);
> pud = pud_offset(__nocache_fix(p4d), vaddr);
> - pmd = pmd_offset(__nocache_fix(pgd), vaddr);
> + pmd = pmd_offset(__nocache_fix(pud), vaddr);
> pte = pte_offset_kernel(__nocache_fix(pmd), vaddr);
>
> pteval = ((paddr >> 4) | SRMMU_ET_PTE | SRMMU_PRIV);
I added
Fixes: 7235db268a2777bc38 ("sparc32: use pgtable-nopud instead of 4level-fixup")
and, after a bit of thought,
Cc: <stable(a)vger.kernel.org>
Because that's a fairly scary-looking warning.
2 years, 4 months
[linux-review:UPDATE-20200521-054700/Krzysztof-Wilczynski/PCI-Reference-bridge-window-resources-explicitly/20200520-055415 1/1] drivers/pci/setup-bus.c:1189:2: error: 'mmio1_res' undeclared
by kbuild test robot
tree: https://github.com/0day-ci/linux/commits/UPDATE-20200521-054700/Krzysztof...
head: ba7ef1e97861cc12a3504eb041305fc1049d7049
commit: ba7ef1e97861cc12a3504eb041305fc1049d7049 [1/1] PCI: Move from using PCI_BRIDGE_RESOURCES to bridge resource definitions
config: arm-mvebu_v7_defconfig (attached as .config)
compiler: arm-linux-gnueabi-gcc (GCC) 9.3.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
git checkout ba7ef1e97861cc12a3504eb041305fc1049d7049
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=arm
If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>, old ones prefixed by <<):
drivers/pci/setup-bus.c: In function 'pci_bus_size_cardbus':
>> drivers/pci/setup-bus.c:1189:2: error: 'mmio1_res' undeclared (first use in this function)
1189 | mmio1_res->start = pci_cardbus_mem_size;
| ^~~~~~~~~
drivers/pci/setup-bus.c:1189:2: note: each undeclared identifier is reported only once for each function it appears in
vim +/mmio1_res +1189 drivers/pci/setup-bus.c
1108
1109 static void pci_bus_size_cardbus(struct pci_bus *bus,
1110 struct list_head *realloc_head)
1111 {
1112 struct pci_dev *bridge = bus->self;
1113 struct resource *b_res;
1114 resource_size_t b_res_3_size = pci_cardbus_mem_size * 2;
1115 u16 ctrl;
1116
1117 b_res = &bridge->resource[PCI_CB_BRIDGE_IO_0_WINDOW];
1118 if (b_res->parent)
1119 goto handle_b_res_1;
1120 /*
1121 * Reserve some resources for CardBus. We reserve a fixed amount
1122 * of bus space for CardBus bridges.
1123 */
1124 b_res->start = pci_cardbus_io_size;
1125 b_res->end = b_res->start + pci_cardbus_io_size - 1;
1126 b_res->flags |= IORESOURCE_IO | IORESOURCE_STARTALIGN;
1127 if (realloc_head) {
1128 b_res->end -= pci_cardbus_io_size;
1129 add_to_list(realloc_head, bridge, b_res, pci_cardbus_io_size,
1130 pci_cardbus_io_size);
1131 }
1132
1133 handle_b_res_1:
1134 b_res = &bridge->resource[PCI_CB_BRIDGE_IO_1_WINDOW];
1135 if (b_res->parent)
1136 goto handle_b_res_2;
1137 b_res->start = pci_cardbus_io_size;
1138 b_res->end = b_res->start + pci_cardbus_io_size - 1;
1139 b_res->flags |= IORESOURCE_IO | IORESOURCE_STARTALIGN;
1140 if (realloc_head) {
1141 b_res->end -= pci_cardbus_io_size;
1142 add_to_list(realloc_head, bridge, b_res, pci_cardbus_io_size,
1143 pci_cardbus_io_size);
1144 }
1145
1146 handle_b_res_2:
1147 /* MEM1 must not be pref MMIO */
1148 pci_read_config_word(bridge, PCI_CB_BRIDGE_CONTROL, &ctrl);
1149 if (ctrl & PCI_CB_BRIDGE_CTL_PREFETCH_MEM1) {
1150 ctrl &= ~PCI_CB_BRIDGE_CTL_PREFETCH_MEM1;
1151 pci_write_config_word(bridge, PCI_CB_BRIDGE_CONTROL, ctrl);
1152 pci_read_config_word(bridge, PCI_CB_BRIDGE_CONTROL, &ctrl);
1153 }
1154
1155 /* Check whether prefetchable memory is supported by this bridge. */
1156 pci_read_config_word(bridge, PCI_CB_BRIDGE_CONTROL, &ctrl);
1157 if (!(ctrl & PCI_CB_BRIDGE_CTL_PREFETCH_MEM0)) {
1158 ctrl |= PCI_CB_BRIDGE_CTL_PREFETCH_MEM0;
1159 pci_write_config_word(bridge, PCI_CB_BRIDGE_CONTROL, ctrl);
1160 pci_read_config_word(bridge, PCI_CB_BRIDGE_CONTROL, &ctrl);
1161 }
1162
1163 b_res = &bridge->resource[PCI_CB_BRIDGE_MEM_0_WINDOW];
1164 if (b_res->parent)
1165 goto handle_b_res_3;
1166 /*
1167 * If we have prefetchable memory support, allocate two regions.
1168 * Otherwise, allocate one region of twice the size.
1169 */
1170 if (ctrl & PCI_CB_BRIDGE_CTL_PREFETCH_MEM0) {
1171 b_res->start = pci_cardbus_mem_size;
1172 b_res->end = b_res->start + pci_cardbus_mem_size - 1;
1173 b_res->flags |= IORESOURCE_MEM | IORESOURCE_PREFETCH |
1174 IORESOURCE_STARTALIGN;
1175 if (realloc_head) {
1176 b_res->end -= pci_cardbus_mem_size;
1177 add_to_list(realloc_head, bridge, b_res,
1178 pci_cardbus_mem_size, pci_cardbus_mem_size);
1179 }
1180
1181 /* Reduce that to half */
1182 b_res_3_size = pci_cardbus_mem_size;
1183 }
1184
1185 handle_b_res_3:
1186 b_res = &bridge->resource[PCI_CB_BRIDGE_MEM_1_WINDOW];
1187 if (b_res->parent)
1188 goto handle_done;
> 1189 mmio1_res->start = pci_cardbus_mem_size;
1190 mmio1_res->end = b_res->start + b_res_3_size - 1;
1191 mmio1_res->flags |= IORESOURCE_MEM | IORESOURCE_STARTALIGN;
1192 if (realloc_head) {
1193 b_res->end -= b_res_3_size;
1194 add_to_list(realloc_head, bridge, b_res, b_res_3_size,
1195 pci_cardbus_mem_size);
1196 }
1197
1198 handle_done:
1199 ;
1200 }
1201
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 4 months
[tip:x86/entry 23/80] arch/x86/entry/common.c:44:24: warning: no previous prototype for function 'enter_from_user_mode'
by kbuild test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git x86/entry
head: 095b7a3e7745e6fb7cf0a1c09967c4f43e76f8f4
commit: aa9712e07f82a5458f2f16c100c491d736240d60 [23/80] x86/entry/common: Protect against instrumentation
config: x86_64-randconfig-r031-20200520 (attached as .config)
compiler: clang version 11.0.0 (https://github.com/llvm/llvm-project e6658079aca6d971b4e9d7137a3a2ecbc9c34aec)
reproduce:
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
git checkout aa9712e07f82a5458f2f16c100c491d736240d60
# 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: kbuild test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>, old ones prefixed by <<):
>> arch/x86/entry/common.c:44:24: warning: no previous prototype for function 'enter_from_user_mode' [-Wmissing-prototypes]
__visible noinstr void enter_from_user_mode(void)
^
arch/x86/entry/common.c:44:19: note: declare 'static' if the function is not intended to be used outside of this translation unit
__visible noinstr void enter_from_user_mode(void)
^
static
>> arch/x86/entry/common.c:234:24: warning: no previous prototype for function 'prepare_exit_to_usermode' [-Wmissing-prototypes]
__visible noinstr void prepare_exit_to_usermode(struct pt_regs *regs)
^
arch/x86/entry/common.c:234:19: note: declare 'static' if the function is not intended to be used outside of this translation unit
__visible noinstr void prepare_exit_to_usermode(struct pt_regs *regs)
^
static
>> arch/x86/entry/common.c:296:24: warning: no previous prototype for function 'syscall_return_slowpath' [-Wmissing-prototypes]
__visible noinstr void syscall_return_slowpath(struct pt_regs *regs)
^
arch/x86/entry/common.c:296:19: note: declare 'static' if the function is not intended to be used outside of this translation unit
__visible noinstr void syscall_return_slowpath(struct pt_regs *regs)
^
static
3 warnings generated.
vim +/enter_from_user_mode +44 arch/x86/entry/common.c
41
42 #ifdef CONFIG_CONTEXT_TRACKING
43 /* Called on entry from user mode with IRQs off. */
> 44 __visible noinstr void enter_from_user_mode(void)
45 {
46 enum ctx_state state = ct_state();
47
48 user_exit_irqoff();
49
50 instrumentation_begin();
51 CT_WARN_ON(state != CONTEXT_USER);
52 instrumentation_end();
53 }
54 #else
55 static inline void enter_from_user_mode(void) {}
56 #endif
57
58 static noinstr void exit_to_user_mode(void)
59 {
60 user_enter_irqoff();
61 mds_user_clear_cpu_buffers();
62 }
63
64 static void do_audit_syscall_entry(struct pt_regs *regs, u32 arch)
65 {
66 #ifdef CONFIG_X86_64
67 if (arch == AUDIT_ARCH_X86_64) {
68 audit_syscall_entry(regs->orig_ax, regs->di,
69 regs->si, regs->dx, regs->r10);
70 } else
71 #endif
72 {
73 audit_syscall_entry(regs->orig_ax, regs->bx,
74 regs->cx, regs->dx, regs->si);
75 }
76 }
77
78 /*
79 * Returns the syscall nr to run (which should match regs->orig_ax) or -1
80 * to skip the syscall.
81 */
82 static long syscall_trace_enter(struct pt_regs *regs)
83 {
84 u32 arch = in_ia32_syscall() ? AUDIT_ARCH_I386 : AUDIT_ARCH_X86_64;
85
86 struct thread_info *ti = current_thread_info();
87 unsigned long ret = 0;
88 u32 work;
89
90 if (IS_ENABLED(CONFIG_DEBUG_ENTRY))
91 BUG_ON(regs != task_pt_regs(current));
92
93 work = READ_ONCE(ti->flags);
94
95 if (work & (_TIF_SYSCALL_TRACE | _TIF_SYSCALL_EMU)) {
96 ret = tracehook_report_syscall_entry(regs);
97 if (ret || (work & _TIF_SYSCALL_EMU))
98 return -1L;
99 }
100
101 #ifdef CONFIG_SECCOMP
102 /*
103 * Do seccomp after ptrace, to catch any tracer changes.
104 */
105 if (work & _TIF_SECCOMP) {
106 struct seccomp_data sd;
107
108 sd.arch = arch;
109 sd.nr = regs->orig_ax;
110 sd.instruction_pointer = regs->ip;
111 #ifdef CONFIG_X86_64
112 if (arch == AUDIT_ARCH_X86_64) {
113 sd.args[0] = regs->di;
114 sd.args[1] = regs->si;
115 sd.args[2] = regs->dx;
116 sd.args[3] = regs->r10;
117 sd.args[4] = regs->r8;
118 sd.args[5] = regs->r9;
119 } else
120 #endif
121 {
122 sd.args[0] = regs->bx;
123 sd.args[1] = regs->cx;
124 sd.args[2] = regs->dx;
125 sd.args[3] = regs->si;
126 sd.args[4] = regs->di;
127 sd.args[5] = regs->bp;
128 }
129
130 ret = __secure_computing(&sd);
131 if (ret == -1)
132 return ret;
133 }
134 #endif
135
136 if (unlikely(test_thread_flag(TIF_SYSCALL_TRACEPOINT)))
137 trace_sys_enter(regs, regs->orig_ax);
138
139 do_audit_syscall_entry(regs, arch);
140
141 return ret ?: regs->orig_ax;
142 }
143
144 #define EXIT_TO_USERMODE_LOOP_FLAGS \
145 (_TIF_SIGPENDING | _TIF_NOTIFY_RESUME | _TIF_UPROBE | \
146 _TIF_NEED_RESCHED | _TIF_USER_RETURN_NOTIFY | _TIF_PATCH_PENDING)
147
148 static void exit_to_usermode_loop(struct pt_regs *regs, u32 cached_flags)
149 {
150 /*
151 * In order to return to user mode, we need to have IRQs off with
152 * none of EXIT_TO_USERMODE_LOOP_FLAGS set. Several of these flags
153 * can be set at any time on preemptible kernels if we have IRQs on,
154 * so we need to loop. Disabling preemption wouldn't help: doing the
155 * work to clear some of the flags can sleep.
156 */
157 while (true) {
158 /* We have work to do. */
159 local_irq_enable();
160
161 if (cached_flags & _TIF_NEED_RESCHED)
162 schedule();
163
164 if (cached_flags & _TIF_UPROBE)
165 uprobe_notify_resume(regs);
166
167 if (cached_flags & _TIF_PATCH_PENDING)
168 klp_update_patch_state(current);
169
170 /* deal with pending signal delivery */
171 if (cached_flags & _TIF_SIGPENDING)
172 do_signal(regs);
173
174 if (cached_flags & _TIF_NOTIFY_RESUME) {
175 clear_thread_flag(TIF_NOTIFY_RESUME);
176 tracehook_notify_resume(regs);
177 rseq_handle_notify_resume(NULL, regs);
178 }
179
180 if (cached_flags & _TIF_USER_RETURN_NOTIFY)
181 fire_user_return_notifiers();
182
183 /* Disable IRQs and retry */
184 local_irq_disable();
185
186 cached_flags = READ_ONCE(current_thread_info()->flags);
187
188 if (!(cached_flags & EXIT_TO_USERMODE_LOOP_FLAGS))
189 break;
190 }
191 }
192
193 static void __prepare_exit_to_usermode(struct pt_regs *regs)
194 {
195 struct thread_info *ti = current_thread_info();
196 u32 cached_flags;
197
198 addr_limit_user_check();
199
200 lockdep_assert_irqs_disabled();
201 lockdep_sys_exit();
202
203 cached_flags = READ_ONCE(ti->flags);
204
205 if (unlikely(cached_flags & EXIT_TO_USERMODE_LOOP_FLAGS))
206 exit_to_usermode_loop(regs, cached_flags);
207
208 /* Reload ti->flags; we may have rescheduled above. */
209 cached_flags = READ_ONCE(ti->flags);
210
211 if (unlikely(cached_flags & _TIF_IO_BITMAP))
212 tss_update_io_bitmap();
213
214 fpregs_assert_state_consistent();
215 if (unlikely(cached_flags & _TIF_NEED_FPU_LOAD))
216 switch_fpu_return();
217
218 #ifdef CONFIG_COMPAT
219 /*
220 * Compat syscalls set TS_COMPAT. Make sure we clear it before
221 * returning to user mode. We need to clear it *after* signal
222 * handling, because syscall restart has a fixup for compat
223 * syscalls. The fixup is exercised by the ptrace_syscall_32
224 * selftest.
225 *
226 * We also need to clear TS_REGS_POKED_I386: the 32-bit tracer
227 * special case only applies after poking regs and before the
228 * very next return to user mode.
229 */
230 ti->status &= ~(TS_COMPAT|TS_I386_REGS_POKED);
231 #endif
232 }
233
> 234 __visible noinstr void prepare_exit_to_usermode(struct pt_regs *regs)
235 {
236 instrumentation_begin();
237 __prepare_exit_to_usermode(regs);
238 instrumentation_end();
239 exit_to_user_mode();
240 }
241
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 4 months
Re: [PATCH net-next] sctp: Pull the user copies out of the individual sockopt functions.
by kbuild test robot
Hi David,
Thank you for the patch! Perhaps something to improve:
[auto build test WARNING on net-next/master]
[also build test WARNING on net/master linus/master v5.7-rc6 next-20200519]
[cannot apply to ipvs/master]
[if your patch is applied to the wrong git tree, please drop us a note to help
improve the system. BTW, we also suggest to use '--base' option to specify the
base tree in git format-patch, please see https://stackoverflow.com/a/37406982]
url: https://github.com/0day-ci/linux/commits/David-Laight/sctp-Pull-the-user-...
base: https://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next.git 4f65e2f483b6f764c15094d14dd53dda048a4048
config: i386-debian-10.3 (attached as .config)
compiler: gcc-7 (Ubuntu 7.5.0-6ubuntu2) 7.5.0
reproduce:
# save the attached .config to linux build tree
make ARCH=i386
If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>, old ones prefixed by <<):
>> net/sctp/socket.c:7187:5: warning: no previous prototype for 'kernel_sctp_getsockopt' [-Wmissing-prototypes]
int kernel_sctp_getsockopt(struct sock *sk, int optname, int len, void *optval,
^~~~~~~~~~~~~~~~~~~~~~
vim +/kernel_sctp_getsockopt +7187 net/sctp/socket.c
7186
> 7187 int kernel_sctp_getsockopt(struct sock *sk, int optname, int len, void *optval,
7188 int *optlen)
7189 {
7190 int retval;
7191
7192 lock_sock(sk);
7193
7194 switch (optname) {
7195 case SCTP_STATUS:
7196 retval = sctp_getsockopt_sctp_status(sk, len, optval, optlen);
7197 break;
7198 case SCTP_DISABLE_FRAGMENTS:
7199 retval = sctp_getsockopt_disable_fragments(sk, len, optval,
7200 optlen);
7201 break;
7202 case SCTP_EVENTS:
7203 retval = sctp_getsockopt_events(sk, len, optval, optlen);
7204 break;
7205 case SCTP_AUTOCLOSE:
7206 retval = sctp_getsockopt_autoclose(sk, len, optval, optlen);
7207 break;
7208 case SCTP_SOCKOPT_PEELOFF:
7209 retval = sctp_getsockopt_peeloff(sk, len, optval, optlen);
7210 break;
7211 case SCTP_SOCKOPT_PEELOFF_FLAGS:
7212 retval = sctp_getsockopt_peeloff_flags(sk, len, optval, optlen);
7213 break;
7214 case SCTP_PEER_ADDR_PARAMS:
7215 retval = sctp_getsockopt_peer_addr_params(sk, len, optval,
7216 optlen);
7217 break;
7218 case SCTP_DELAYED_SACK:
7219 retval = sctp_getsockopt_delayed_ack(sk, len, optval,
7220 optlen);
7221 break;
7222 case SCTP_INITMSG:
7223 retval = sctp_getsockopt_initmsg(sk, len, optval, optlen);
7224 break;
7225 case SCTP_GET_PEER_ADDRS:
7226 retval = sctp_getsockopt_peer_addrs(sk, len, optval,
7227 optlen);
7228 break;
7229 case SCTP_GET_LOCAL_ADDRS:
7230 retval = sctp_getsockopt_local_addrs(sk, len, optval,
7231 optlen);
7232 break;
7233 case SCTP_SOCKOPT_CONNECTX3:
7234 retval = sctp_getsockopt_connectx3(sk, len, optval, optlen);
7235 break;
7236 case SCTP_DEFAULT_SEND_PARAM:
7237 retval = sctp_getsockopt_default_send_param(sk, len,
7238 optval, optlen);
7239 break;
7240 case SCTP_DEFAULT_SNDINFO:
7241 retval = sctp_getsockopt_default_sndinfo(sk, len,
7242 optval, optlen);
7243 break;
7244 case SCTP_PRIMARY_ADDR:
7245 retval = sctp_getsockopt_primary_addr(sk, len, optval, optlen);
7246 break;
7247 case SCTP_NODELAY:
7248 retval = sctp_getsockopt_nodelay(sk, len, optval, optlen);
7249 break;
7250 case SCTP_RTOINFO:
7251 retval = sctp_getsockopt_rtoinfo(sk, len, optval, optlen);
7252 break;
7253 case SCTP_ASSOCINFO:
7254 retval = sctp_getsockopt_associnfo(sk, len, optval, optlen);
7255 break;
7256 case SCTP_I_WANT_MAPPED_V4_ADDR:
7257 retval = sctp_getsockopt_mappedv4(sk, len, optval, optlen);
7258 break;
7259 case SCTP_MAXSEG:
7260 retval = sctp_getsockopt_maxseg(sk, len, optval, optlen);
7261 break;
7262 case SCTP_GET_PEER_ADDR_INFO:
7263 retval = sctp_getsockopt_peer_addr_info(sk, len, optval,
7264 optlen);
7265 break;
7266 case SCTP_ADAPTATION_LAYER:
7267 retval = sctp_getsockopt_adaptation_layer(sk, len, optval,
7268 optlen);
7269 break;
7270 case SCTP_CONTEXT:
7271 retval = sctp_getsockopt_context(sk, len, optval, optlen);
7272 break;
7273 case SCTP_FRAGMENT_INTERLEAVE:
7274 retval = sctp_getsockopt_fragment_interleave(sk, len, optval,
7275 optlen);
7276 break;
7277 case SCTP_PARTIAL_DELIVERY_POINT:
7278 retval = sctp_getsockopt_partial_delivery_point(sk, len, optval,
7279 optlen);
7280 break;
7281 case SCTP_MAX_BURST:
7282 retval = sctp_getsockopt_maxburst(sk, len, optval, optlen);
7283 break;
7284 case SCTP_AUTH_KEY:
7285 case SCTP_AUTH_CHUNK:
7286 case SCTP_AUTH_DELETE_KEY:
7287 case SCTP_AUTH_DEACTIVATE_KEY:
7288 retval = -EOPNOTSUPP;
7289 break;
7290 case SCTP_HMAC_IDENT:
7291 retval = sctp_getsockopt_hmac_ident(sk, len, optval, optlen);
7292 break;
7293 case SCTP_AUTH_ACTIVE_KEY:
7294 retval = sctp_getsockopt_active_key(sk, len, optval, optlen);
7295 break;
7296 case SCTP_PEER_AUTH_CHUNKS:
7297 retval = sctp_getsockopt_peer_auth_chunks(sk, len, optval,
7298 optlen);
7299 break;
7300 case SCTP_LOCAL_AUTH_CHUNKS:
7301 retval = sctp_getsockopt_local_auth_chunks(sk, len, optval,
7302 optlen);
7303 break;
7304 case SCTP_GET_ASSOC_NUMBER:
7305 retval = sctp_getsockopt_assoc_number(sk, len, optval, optlen);
7306 break;
7307 case SCTP_GET_ASSOC_ID_LIST:
7308 retval = sctp_getsockopt_assoc_ids(sk, len, optval, optlen);
7309 break;
7310 case SCTP_AUTO_ASCONF:
7311 retval = sctp_getsockopt_auto_asconf(sk, len, optval, optlen);
7312 break;
7313 case SCTP_PEER_ADDR_THLDS:
7314 retval = sctp_getsockopt_paddr_thresholds(sk, optval, len,
7315 optlen, false);
7316 break;
7317 case SCTP_PEER_ADDR_THLDS_V2:
7318 retval = sctp_getsockopt_paddr_thresholds(sk, optval, len,
7319 optlen, true);
7320 break;
7321 case SCTP_GET_ASSOC_STATS:
7322 retval = sctp_getsockopt_assoc_stats(sk, len, optval, optlen);
7323 break;
7324 case SCTP_RECVRCVINFO:
7325 retval = sctp_getsockopt_recvrcvinfo(sk, len, optval, optlen);
7326 break;
7327 case SCTP_RECVNXTINFO:
7328 retval = sctp_getsockopt_recvnxtinfo(sk, len, optval, optlen);
7329 break;
7330 case SCTP_PR_SUPPORTED:
7331 retval = sctp_getsockopt_pr_supported(sk, len, optval, optlen);
7332 break;
7333 case SCTP_DEFAULT_PRINFO:
7334 retval = sctp_getsockopt_default_prinfo(sk, len, optval,
7335 optlen);
7336 break;
7337 case SCTP_PR_ASSOC_STATUS:
7338 retval = sctp_getsockopt_pr_assocstatus(sk, len, optval,
7339 optlen);
7340 break;
7341 case SCTP_PR_STREAM_STATUS:
7342 retval = sctp_getsockopt_pr_streamstatus(sk, len, optval,
7343 optlen);
7344 break;
7345 case SCTP_RECONFIG_SUPPORTED:
7346 retval = sctp_getsockopt_reconfig_supported(sk, len, optval,
7347 optlen);
7348 break;
7349 case SCTP_ENABLE_STREAM_RESET:
7350 retval = sctp_getsockopt_enable_strreset(sk, len, optval,
7351 optlen);
7352 break;
7353 case SCTP_STREAM_SCHEDULER:
7354 retval = sctp_getsockopt_scheduler(sk, len, optval,
7355 optlen);
7356 break;
7357 case SCTP_STREAM_SCHEDULER_VALUE:
7358 retval = sctp_getsockopt_scheduler_value(sk, len, optval,
7359 optlen);
7360 break;
7361 case SCTP_INTERLEAVING_SUPPORTED:
7362 retval = sctp_getsockopt_interleaving_supported(sk, len, optval,
7363 optlen);
7364 break;
7365 case SCTP_REUSE_PORT:
7366 retval = sctp_getsockopt_reuse_port(sk, len, optval, optlen);
7367 break;
7368 case SCTP_EVENT:
7369 retval = sctp_getsockopt_event(sk, len, optval, optlen);
7370 break;
7371 case SCTP_ASCONF_SUPPORTED:
7372 retval = sctp_getsockopt_asconf_supported(sk, len, optval,
7373 optlen);
7374 break;
7375 case SCTP_AUTH_SUPPORTED:
7376 retval = sctp_getsockopt_auth_supported(sk, len, optval,
7377 optlen);
7378 break;
7379 case SCTP_ECN_SUPPORTED:
7380 retval = sctp_getsockopt_ecn_supported(sk, len, optval, optlen);
7381 break;
7382 case SCTP_EXPOSE_POTENTIALLY_FAILED_STATE:
7383 retval = sctp_getsockopt_pf_expose(sk, len, optval, optlen);
7384 break;
7385 default:
7386 retval = -ENOPROTOOPT;
7387 break;
7388 }
7389
7390 release_sock(sk);
7391 return retval;
7392 }
7393
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 4 months
[djwong-xfs:repair-metadata-atomically 127/227] fs/xfs/scrub/parent.c:71:1: warning: no previous prototype for function 'xchk_parent_count_parent_dentries'
by kbuild test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/djwong/xfs-linux.git repair-metadata-atomically
head: 03560ddd3fbb967b10047a3d7a31266990f797cf
commit: ad2ea322f076aef144f3b3e9f4d7e3898f34e317 [127/227] xfs: teach online directory repair to scan for the parent
config: x86_64-allyesconfig (attached as .config)
compiler: clang version 11.0.0 (https://github.com/llvm/llvm-project e6658079aca6d971b4e9d7137a3a2ecbc9c34aec)
reproduce:
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
git checkout ad2ea322f076aef144f3b3e9f4d7e3898f34e317
# 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: kbuild test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>, old ones prefixed by <<):
>> fs/xfs/scrub/parent.c:71:1: warning: no previous prototype for function 'xchk_parent_count_parent_dentries' [-Wmissing-prototypes]
xchk_parent_count_parent_dentries(
^
fs/xfs/scrub/parent.c:70:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
int
^
static
1 warning generated.
vim +/xchk_parent_count_parent_dentries +71 fs/xfs/scrub/parent.c
0f28b25731f76f Darrick J. Wong 2017-10-17 68
0f28b25731f76f Darrick J. Wong 2017-10-17 69 /* Count the number of dentries in the parent dir that point to this inode. */
ad2ea322f076ae Darrick J. Wong 2020-03-19 70 int
c517b3aa02cff1 Darrick J. Wong 2018-07-19 @71 xchk_parent_count_parent_dentries(
1d8a748a8aa94a Darrick J. Wong 2018-07-19 72 struct xfs_scrub *sc,
0f28b25731f76f Darrick J. Wong 2017-10-17 73 struct xfs_inode *parent,
0f28b25731f76f Darrick J. Wong 2017-10-17 74 xfs_nlink_t *nlink)
0f28b25731f76f Darrick J. Wong 2017-10-17 75 {
c517b3aa02cff1 Darrick J. Wong 2018-07-19 76 struct xchk_parent_ctx spc = {
c517b3aa02cff1 Darrick J. Wong 2018-07-19 77 .dc.actor = xchk_parent_actor,
0f28b25731f76f Darrick J. Wong 2017-10-17 78 .ino = sc->ip->i_ino,
8feb4732ff9f27 Darrick J. Wong 2019-11-25 79 .sc = sc,
0f28b25731f76f Darrick J. Wong 2017-10-17 80 };
0f28b25731f76f Darrick J. Wong 2017-10-17 81 size_t bufsize;
0f28b25731f76f Darrick J. Wong 2017-10-17 82 loff_t oldpos;
0f28b25731f76f Darrick J. Wong 2017-10-17 83 uint lock_mode;
0f28b25731f76f Darrick J. Wong 2017-10-17 84 int error = 0;
0f28b25731f76f Darrick J. Wong 2017-10-17 85
0f28b25731f76f Darrick J. Wong 2017-10-17 86 /*
0f28b25731f76f Darrick J. Wong 2017-10-17 87 * If there are any blocks, read-ahead block 0 as we're almost
0f28b25731f76f Darrick J. Wong 2017-10-17 88 * certain to have the next operation be a read there. This is
0f28b25731f76f Darrick J. Wong 2017-10-17 89 * how we guarantee that the parent's extent map has been loaded,
0f28b25731f76f Darrick J. Wong 2017-10-17 90 * if there is one.
0f28b25731f76f Darrick J. Wong 2017-10-17 91 */
0f28b25731f76f Darrick J. Wong 2017-10-17 92 lock_mode = xfs_ilock_data_map_shared(parent);
0f28b25731f76f Darrick J. Wong 2017-10-17 93 if (parent->i_d.di_nextents > 0)
06566fda428e64 Christoph Hellwig 2019-11-20 94 error = xfs_dir3_data_readahead(parent, 0, 0);
0f28b25731f76f Darrick J. Wong 2017-10-17 95 xfs_iunlock(parent, lock_mode);
0f28b25731f76f Darrick J. Wong 2017-10-17 96 if (error)
0f28b25731f76f Darrick J. Wong 2017-10-17 97 return error;
0f28b25731f76f Darrick J. Wong 2017-10-17 98
0f28b25731f76f Darrick J. Wong 2017-10-17 99 /*
0f28b25731f76f Darrick J. Wong 2017-10-17 100 * Iterate the parent dir to confirm that there is
0f28b25731f76f Darrick J. Wong 2017-10-17 101 * exactly one entry pointing back to the inode being
0f28b25731f76f Darrick J. Wong 2017-10-17 102 * scanned.
0f28b25731f76f Darrick J. Wong 2017-10-17 103 */
0f28b25731f76f Darrick J. Wong 2017-10-17 104 bufsize = (size_t)min_t(loff_t, XFS_READDIR_BUFSIZE,
0f28b25731f76f Darrick J. Wong 2017-10-17 105 parent->i_d.di_size);
0f28b25731f76f Darrick J. Wong 2017-10-17 106 oldpos = 0;
0f28b25731f76f Darrick J. Wong 2017-10-17 107 while (true) {
0f28b25731f76f Darrick J. Wong 2017-10-17 108 error = xfs_readdir(sc->tp, parent, &spc.dc, bufsize);
0f28b25731f76f Darrick J. Wong 2017-10-17 109 if (error)
0f28b25731f76f Darrick J. Wong 2017-10-17 110 goto out;
8feb4732ff9f27 Darrick J. Wong 2019-11-25 111 if (spc.cancelled) {
8feb4732ff9f27 Darrick J. Wong 2019-11-25 112 error = -EAGAIN;
8feb4732ff9f27 Darrick J. Wong 2019-11-25 113 goto out;
8feb4732ff9f27 Darrick J. Wong 2019-11-25 114 }
0f28b25731f76f Darrick J. Wong 2017-10-17 115 if (oldpos == spc.dc.pos)
0f28b25731f76f Darrick J. Wong 2017-10-17 116 break;
0f28b25731f76f Darrick J. Wong 2017-10-17 117 oldpos = spc.dc.pos;
0f28b25731f76f Darrick J. Wong 2017-10-17 118 }
0f28b25731f76f Darrick J. Wong 2017-10-17 119 *nlink = spc.nlink;
0f28b25731f76f Darrick J. Wong 2017-10-17 120 out:
0f28b25731f76f Darrick J. Wong 2017-10-17 121 return error;
0f28b25731f76f Darrick J. Wong 2017-10-17 122 }
0f28b25731f76f Darrick J. Wong 2017-10-17 123
:::::: The code at line 71 was first introduced by commit
:::::: c517b3aa02cff1dd688aa783b748e06c8aee1285 xfs: shorten xfs_scrub_ prefix
:::::: TO: Darrick J. Wong <darrick.wong(a)oracle.com>
:::::: CC: Darrick J. Wong <darrick.wong(a)oracle.com>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 4 months
[monstr-microblaze:master-next-test 35/84] drivers/usb/dwc3/./trace.h:100: multiple definition of `dwc3_simple_wakeup_capable'; drivers/usb/dwc3/core.o:include/linux/rcupdate.h:773: first defined here
by kbuild test robot
tree: git://git.monstr.eu/linux-2.6-microblaze master-next-test
head: 851bfc6a2e2551b819a7f0d8791ea0a0cce089bf
commit: e8308bd6880b0bc28d9d9f58d6118b645f4cc0d1 [35/84] Revert "fpga: region: Add reset support to the fpga region"
config: i386-randconfig-a006-20200520 (attached as .config)
compiler: gcc-6 (Debian 6.3.0-18+deb9u1) 6.3.0 20170516
reproduce:
git checkout e8308bd6880b0bc28d9d9f58d6118b645f4cc0d1
# save the attached .config to linux build tree
make ARCH=i386
If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>, old ones prefixed by <<):
ld: drivers/usb/dwc3/trace.o: in function `dwc3_simple_wakeup_capable':
>> drivers/usb/dwc3/./trace.h:100: multiple definition of `dwc3_simple_wakeup_capable'; drivers/usb/dwc3/core.o:include/linux/rcupdate.h:773: first defined here
ld: drivers/usb/dwc3/trace.o: in function `dwc3_set_simple_data':
>> drivers/usb/dwc3/./trace.h:100: multiple definition of `dwc3_set_simple_data'; drivers/usb/dwc3/core.o:include/linux/rcupdate.h:773: first defined here
ld: drivers/usb/dwc3/trace.o: in function `dwc3_simple_check_quirks':
drivers/usb/dwc3/core.h:1418: multiple definition of `dwc3_simple_check_quirks'; drivers/usb/dwc3/core.o:drivers/usb/dwc3/core.h:1418: first defined here
ld: drivers/usb/dwc3/trace.o: in function `dwc3_set_usb_core_power':
drivers/usb/dwc3/core.h:1420: multiple definition of `dwc3_set_usb_core_power'; drivers/usb/dwc3/core.o:drivers/usb/dwc3/core.h:1420: first defined here
ld: drivers/usb/dwc3/trace.o: in function `dwc3_mask_phy_reset':
drivers/usb/dwc3/core.h:1422: multiple definition of `dwc3_mask_phy_reset'; drivers/usb/dwc3/core.o:drivers/usb/dwc3/core.h:1422: first defined here
ld: drivers/usb/dwc3/host.o: in function `dwc3_simple_wakeup_capable':
drivers/usb/dwc3/host.c:19: multiple definition of `dwc3_simple_wakeup_capable'; drivers/usb/dwc3/core.o:include/linux/rcupdate.h:773: first defined here
ld: drivers/usb/dwc3/host.o: in function `dwc3_set_simple_data':
drivers/usb/dwc3/host.c:19: multiple definition of `dwc3_set_simple_data'; drivers/usb/dwc3/core.o:include/linux/rcupdate.h:773: first defined here
ld: drivers/usb/dwc3/host.o: in function `dwc3_simple_check_quirks':
drivers/usb/dwc3/core.h:1418: multiple definition of `dwc3_simple_check_quirks'; drivers/usb/dwc3/core.o:drivers/usb/dwc3/core.h:1418: first defined here
ld: drivers/usb/dwc3/host.o: in function `dwc3_set_usb_core_power':
drivers/usb/dwc3/core.h:1420: multiple definition of `dwc3_set_usb_core_power'; drivers/usb/dwc3/core.o:drivers/usb/dwc3/core.h:1420: first defined here
ld: drivers/usb/dwc3/host.o: in function `dwc3_mask_phy_reset':
drivers/usb/dwc3/core.h:1420: multiple definition of `dwc3_mask_phy_reset'; drivers/usb/dwc3/core.o:drivers/usb/dwc3/core.h:1422: first defined here
ld: drivers/usb/dwc3/ulpi.o: in function `dwc3_simple_wakeup_capable':
drivers/usb/dwc3/trace.h:44: multiple definition of `dwc3_simple_wakeup_capable'; drivers/usb/dwc3/core.o:include/linux/rcupdate.h:773: first defined here
ld: drivers/usb/dwc3/ulpi.o: in function `dwc3_set_simple_data':
drivers/usb/dwc3/trace.h:44: multiple definition of `dwc3_set_simple_data'; drivers/usb/dwc3/core.o:include/linux/rcupdate.h:773: first defined here
ld: drivers/usb/dwc3/ulpi.o: in function `dwc3_simple_check_quirks':
drivers/usb/dwc3/core.h:1418: multiple definition of `dwc3_simple_check_quirks'; drivers/usb/dwc3/core.o:drivers/usb/dwc3/core.h:1418: first defined here
ld: drivers/usb/dwc3/ulpi.o: in function `dwc3_set_usb_core_power':
drivers/usb/dwc3/core.h:1420: multiple definition of `dwc3_set_usb_core_power'; drivers/usb/dwc3/core.o:drivers/usb/dwc3/core.h:1420: first defined here
ld: drivers/usb/dwc3/ulpi.o: in function `dwc3_mask_phy_reset':
drivers/usb/dwc3/core.h:1422: multiple definition of `dwc3_mask_phy_reset'; drivers/usb/dwc3/core.o:drivers/usb/dwc3/core.h:1422: first defined here
ld: drivers/usb/dwc3/debugfs.o: in function `dwc3_simple_wakeup_capable':
debugfs.c:(.text+0x0): multiple definition of `dwc3_simple_wakeup_capable'; drivers/usb/dwc3/core.o:include/linux/rcupdate.h:773: first defined here
ld: drivers/usb/dwc3/debugfs.o: in function `dwc3_set_simple_data':
debugfs.c:(.text+0x10): multiple definition of `dwc3_set_simple_data'; drivers/usb/dwc3/core.o:include/linux/rcupdate.h:773: first defined here
ld: drivers/usb/dwc3/debugfs.o: in function `dwc3_simple_check_quirks':
drivers/usb/dwc3/core.h:1418: multiple definition of `dwc3_simple_check_quirks'; drivers/usb/dwc3/core.o:drivers/usb/dwc3/core.h:1418: first defined here
ld: drivers/usb/dwc3/debugfs.o: in function `dwc3_set_usb_core_power':
drivers/usb/dwc3/core.h:1420: multiple definition of `dwc3_set_usb_core_power'; drivers/usb/dwc3/core.o:drivers/usb/dwc3/core.h:1420: first defined here
ld: drivers/usb/dwc3/debugfs.o: in function `dwc3_mask_phy_reset':
drivers/usb/dwc3/core.h:1422: multiple definition of `dwc3_mask_phy_reset'; drivers/usb/dwc3/core.o:drivers/usb/dwc3/core.h:1422: first defined here
vim +100 drivers/usb/dwc3/./trace.h
2c4cbe6e5a9c71 Felipe Balbi 2014-04-30 99
2c4cbe6e5a9c71 Felipe Balbi 2014-04-30 @100 DECLARE_EVENT_CLASS(dwc3_log_request,
2c4cbe6e5a9c71 Felipe Balbi 2014-04-30 101 TP_PROTO(struct dwc3_request *req),
2c4cbe6e5a9c71 Felipe Balbi 2014-04-30 102 TP_ARGS(req),
2c4cbe6e5a9c71 Felipe Balbi 2014-04-30 103 TP_STRUCT__entry(
e42f09b85f200e Felipe Balbi 2017-04-28 104 __string(name, req->dep->name)
2c4cbe6e5a9c71 Felipe Balbi 2014-04-30 105 __field(struct dwc3_request *, req)
4ac4fc9322b1a3 Felipe Balbi 2014-09-17 106 __field(unsigned, actual)
4ac4fc9322b1a3 Felipe Balbi 2014-09-17 107 __field(unsigned, length)
4ac4fc9322b1a3 Felipe Balbi 2014-09-17 108 __field(int, status)
46a01427e969e5 Felipe Balbi 2015-12-03 109 __field(int, zero)
46a01427e969e5 Felipe Balbi 2015-12-03 110 __field(int, short_not_ok)
46a01427e969e5 Felipe Balbi 2015-12-03 111 __field(int, no_interrupt)
2c4cbe6e5a9c71 Felipe Balbi 2014-04-30 112 ),
2c4cbe6e5a9c71 Felipe Balbi 2014-04-30 113 TP_fast_assign(
e42f09b85f200e Felipe Balbi 2017-04-28 114 __assign_str(name, req->dep->name);
2c4cbe6e5a9c71 Felipe Balbi 2014-04-30 115 __entry->req = req;
4ac4fc9322b1a3 Felipe Balbi 2014-09-17 116 __entry->actual = req->request.actual;
4ac4fc9322b1a3 Felipe Balbi 2014-09-17 117 __entry->length = req->request.length;
4ac4fc9322b1a3 Felipe Balbi 2014-09-17 118 __entry->status = req->request.status;
46a01427e969e5 Felipe Balbi 2015-12-03 119 __entry->zero = req->request.zero;
46a01427e969e5 Felipe Balbi 2015-12-03 120 __entry->short_not_ok = req->request.short_not_ok;
46a01427e969e5 Felipe Balbi 2015-12-03 121 __entry->no_interrupt = req->request.no_interrupt;
2c4cbe6e5a9c71 Felipe Balbi 2014-04-30 122 ),
46a01427e969e5 Felipe Balbi 2015-12-03 123 TP_printk("%s: req %p length %u/%u %s%s%s ==> %d",
4ac4fc9322b1a3 Felipe Balbi 2014-09-17 124 __get_str(name), __entry->req, __entry->actual, __entry->length,
46a01427e969e5 Felipe Balbi 2015-12-03 125 __entry->zero ? "Z" : "z",
46a01427e969e5 Felipe Balbi 2015-12-03 126 __entry->short_not_ok ? "S" : "s",
46a01427e969e5 Felipe Balbi 2015-12-03 127 __entry->no_interrupt ? "i" : "I",
4ac4fc9322b1a3 Felipe Balbi 2014-09-17 128 __entry->status
2c4cbe6e5a9c71 Felipe Balbi 2014-04-30 129 )
2c4cbe6e5a9c71 Felipe Balbi 2014-04-30 130 );
2c4cbe6e5a9c71 Felipe Balbi 2014-04-30 131
:::::: The code at line 100 was first introduced by commit
:::::: 2c4cbe6e5a9c71408b496e00a78ea9284e98af16 usb: dwc3: add tracepoints to aid debugging
:::::: TO: Felipe Balbi <balbi(a)ti.com>
:::::: CC: Felipe Balbi <balbi(a)ti.com>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 4 months
Re: [PATCH net-next 03/12] net: atlantic: changes for multi-TC support
by kbuild test robot
Hi Igor,
Thank you for the patch! Perhaps something to improve:
[auto build test WARNING on net-next/master]
[also build test WARNING on next-20200519]
[cannot apply to net/master linus/master ipvs/master v5.7-rc6]
[if your patch is applied to the wrong git tree, please drop us a note to help
improve the system. BTW, we also suggest to use '--base' option to specify the
base tree in git format-patch, please see https://stackoverflow.com/a/37406982]
url: https://github.com/0day-ci/linux/commits/Igor-Russkikh/net-atlantic-QoS-i...
base: https://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next.git 4f65e2f483b6f764c15094d14dd53dda048a4048
config: alpha-allyesconfig (attached as .config)
compiler: alpha-linux-gcc (GCC) 9.3.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=alpha
If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>, old ones prefixed by <<):
>> drivers/net/ethernet/aquantia/atlantic/aq_ptp.c:951:14: warning: no previous prototype for 'ptp_ring_idx' [-Wmissing-prototypes]
951 | unsigned int ptp_ring_idx(const enum aq_tc_mode tc_mode)
| ^~~~~~~~~~~~
vim +/ptp_ring_idx +951 drivers/net/ethernet/aquantia/atlantic/aq_ptp.c
947
948 /* Index must be 8 (8 TCs) or 16 (4 TCs).
949 * It depends on Traffic Class mode.
950 */
> 951 unsigned int ptp_ring_idx(const enum aq_tc_mode tc_mode)
952 {
953 if (tc_mode == AQ_TC_MODE_8TCS)
954 return PTP_8TC_RING_IDX;
955
956 return PTP_4TC_RING_IDX;
957 }
958
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 4 months