[linux-next:master 7032/8629] arch/powerpc/kernel/vdso32/gettimeofday.S:40: Error: syntax error; found `@', expected `,'
by kernel test robot
Hi Michael,
First bad commit (maybe != root cause):
tree: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
head: 860461e4fcaa76200d2d1a53523e0ff7be92e6e8
commit: 231b232df8f67e7d37af01259c21f2a131c3911e [7032/8629] powerpc/64: Make VDSO32 track COMPAT on 64-bit
config: powerpc64-randconfig-r035-20200917 (attached as .config)
compiler: clang version 12.0.0 (https://github.com/llvm/llvm-project 1321160a26e7e489baf9b10d6de90a342f898960)
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 powerpc64 cross compiling tool for clang build
# apt-get install binutils-powerpc64-linux-gnu
git checkout 231b232df8f67e7d37af01259c21f2a131c3911e
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=powerpc64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All error/warnings (new ones prefixed by >>):
arch/powerpc/kernel/vdso32/gettimeofday.S: Assembler messages:
>> arch/powerpc/kernel/vdso32/gettimeofday.S:40: Error: syntax error; found `@', expected `,'
>> arch/powerpc/kernel/vdso32/gettimeofday.S:40: Error: junk at end of line: `@local'
>> arch/powerpc/kernel/vdso32/gettimeofday.S:68: Warning: invalid register expression
>> arch/powerpc/kernel/vdso32/gettimeofday.S:68: Error: operand out of range (3 is not between 0 and 1)
arch/powerpc/kernel/vdso32/gettimeofday.S:68: Error: missing operand
arch/powerpc/kernel/vdso32/gettimeofday.S:69: Warning: invalid register expression
arch/powerpc/kernel/vdso32/gettimeofday.S:69: Error: operand out of range (3 is not between 0 and 1)
arch/powerpc/kernel/vdso32/gettimeofday.S:69: Error: missing operand
arch/powerpc/kernel/vdso32/gettimeofday.S:72: Warning: invalid register expression
arch/powerpc/kernel/vdso32/gettimeofday.S:72: Error: operand out of range (3 is not between 0 and 1)
arch/powerpc/kernel/vdso32/gettimeofday.S:72: Error: missing operand
arch/powerpc/kernel/vdso32/gettimeofday.S:73: Warning: invalid register expression
arch/powerpc/kernel/vdso32/gettimeofday.S:73: Error: operand out of range (3 is not between 0 and 1)
arch/powerpc/kernel/vdso32/gettimeofday.S:73: Error: missing operand
arch/powerpc/kernel/vdso32/gettimeofday.S:86: Error: syntax error; found `@', expected `,'
arch/powerpc/kernel/vdso32/gettimeofday.S:86: Error: junk at end of line: `@local'
arch/powerpc/kernel/vdso32/gettimeofday.S:110: Warning: invalid register expression
arch/powerpc/kernel/vdso32/gettimeofday.S:110: Error: operand out of range (8 is not between 0 and 1)
arch/powerpc/kernel/vdso32/gettimeofday.S:110: Error: missing operand
arch/powerpc/kernel/vdso32/gettimeofday.S:144: Warning: invalid register expression
arch/powerpc/kernel/vdso32/gettimeofday.S:144: Error: missing operand
arch/powerpc/kernel/vdso32/gettimeofday.S:213: Warning: invalid register expression
arch/powerpc/kernel/vdso32/gettimeofday.S:213: Error: operand out of range (4 is not between 0 and 1)
arch/powerpc/kernel/vdso32/gettimeofday.S:213: Error: missing operand
clang-12: error: assembler command failed with exit code 1 (use -v to see invocation)
# https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commi...
git remote add linux-next https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
git fetch --no-tags linux-next master
git checkout 231b232df8f67e7d37af01259c21f2a131c3911e
vim +40 arch/powerpc/kernel/vdso32/gettimeofday.S
597bc5c00b666f Paul Mackerras 2008-10-27 22
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 23 .text
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 24 /*
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 25 * Exact prototype of gettimeofday
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 26 *
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 27 * int __kernel_gettimeofday(struct timeval *tv, struct timezone *tz);
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 28 *
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 29 */
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 30 V_FUNCTION_BEGIN(__kernel_gettimeofday)
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 31 .cfi_startproc
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 32 mflr r12
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 33 .cfi_register lr,r12
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 34
bfc2eae0ad72a4 Christophe Leroy 2019-12-02 35 mr. r10,r3 /* r10 saves tv */
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 36 mr r11,r4 /* r11 saves tz */
ec0895f08f9951 Christophe Leroy 2019-12-02 37 get_datapage r9, r0
74609f4536f2b8 Tony Breeds 2007-06-26 38 beq 3f
6e2f9e9cfd560f Christophe Leroy 2019-12-02 39 LOAD_REG_IMMEDIATE(r7, 1000000) /* load up USEC_PER_SEC */
8fd63a9ea75284 Paul Mackerras 2010-06-20 @40 bl __do_get_tspec@local /* get sec/usec from tb & kernel */
8fd63a9ea75284 Paul Mackerras 2010-06-20 41 stw r3,TVAL32_TV_SEC(r10)
8fd63a9ea75284 Paul Mackerras 2010-06-20 42 stw r4,TVAL32_TV_USEC(r10)
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 43
74609f4536f2b8 Tony Breeds 2007-06-26 44 3: cmplwi r11,0 /* check if tz is NULL */
bfc2eae0ad72a4 Christophe Leroy 2019-12-02 45 mtlr r12
bfc2eae0ad72a4 Christophe Leroy 2019-12-02 46 crclr cr0*4+so
bfc2eae0ad72a4 Christophe Leroy 2019-12-02 47 li r3,0
bfc2eae0ad72a4 Christophe Leroy 2019-12-02 48 beqlr
bfc2eae0ad72a4 Christophe Leroy 2019-12-02 49
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 50 lwz r4,CFG_TZ_MINUTEWEST(r9)/* fill tz */
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 51 lwz r5,CFG_TZ_DSTTIME(r9)
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 52 stw r4,TZONE_TZ_MINWEST(r11)
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 53 stw r5,TZONE_TZ_DSTTIME(r11)
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 54
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 55 blr
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 56 .cfi_endproc
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 57 V_FUNCTION_END(__kernel_gettimeofday)
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 58
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 59 /*
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 60 * Exact prototype of clock_gettime()
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 61 *
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 62 * int __kernel_clock_gettime(clockid_t clock_id, struct timespec *tp);
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 63 *
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 64 */
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 65 V_FUNCTION_BEGIN(__kernel_clock_gettime)
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 66 .cfi_startproc
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 67 /* Check for supported clock IDs */
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 @68 cmpli cr0,r3,CLOCK_REALTIME
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 69 cmpli cr1,r3,CLOCK_MONOTONIC
0c37ec2aa88bd8 Benjamin Herrenschmidt 2005-11-14 70 cror cr0*4+eq,cr0*4+eq,cr1*4+eq
654abc69ef2e69 Christophe Leroy 2019-12-02 71
654abc69ef2e69 Christophe Leroy 2019-12-02 72 cmpli cr5,r3,CLOCK_REALTIME_COARSE
654abc69ef2e69 Christophe Leroy 2019-12-02 73 cmpli cr6,r3,CLOCK_MONOTONIC_COARSE
654abc69ef2e69 Christophe Leroy 2019-12-02 74 cror cr5*4+eq,cr5*4+eq,cr6*4+eq
654abc69ef2e69 Christophe Leroy 2019-12-02 75
654abc69ef2e69 Christophe Leroy 2019-12-02 76 cror cr0*4+eq,cr0*4+eq,cr5*4+eq
654abc69ef2e69 Christophe Leroy 2019-12-02 77 bne cr0, .Lgettime_fallback
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 78
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 79 mflr r12 /* r12 saves lr */
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 80 .cfi_register lr,r12
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 81 mr r11,r4 /* r11 saves tp */
ec0895f08f9951 Christophe Leroy 2019-12-02 82 get_datapage r9, r0
6e2f9e9cfd560f Christophe Leroy 2019-12-02 83 LOAD_REG_IMMEDIATE(r7, NSEC_PER_SEC) /* load up NSEC_PER_SEC */
654abc69ef2e69 Christophe Leroy 2019-12-02 84 beq cr5, .Lcoarse_clocks
654abc69ef2e69 Christophe Leroy 2019-12-02 85 .Lprecise_clocks:
654abc69ef2e69 Christophe Leroy 2019-12-02 86 bl __do_get_tspec@local /* get sec/nsec from tb & kernel */
654abc69ef2e69 Christophe Leroy 2019-12-02 87 bne cr1, .Lfinish /* not monotonic -> all done */
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 88
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 89 /*
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 90 * CLOCK_MONOTONIC
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 91 */
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 92
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 93 /* now we must fixup using wall to monotonic. We need to snapshot
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 94 * that value and do the counter trick again. Fortunately, we still
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 95 * have the counter value in r8 that was returned by __do_get_xsec.
597bc5c00b666f Paul Mackerras 2008-10-27 96 * At this point, r3,r4 contain our sec/nsec values, r5 and r6
597bc5c00b666f Paul Mackerras 2008-10-27 97 * can be used, r7 contains NSEC_PER_SEC.
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 98 */
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 99
dd9a994fc68d19 Christophe Leroy 2019-04-04 100 lwz r5,(WTOM_CLOCK_SEC+LOPART)(r9)
597bc5c00b666f Paul Mackerras 2008-10-27 101 lwz r6,WTOM_CLOCK_NSEC(r9)
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 102
597bc5c00b666f Paul Mackerras 2008-10-27 103 /* We now have our offset in r5,r6. We create a fake dependency
597bc5c00b666f Paul Mackerras 2008-10-27 104 * on that value and re-check the counter
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 105 */
597bc5c00b666f Paul Mackerras 2008-10-27 106 or r0,r6,r5
597bc5c00b666f Paul Mackerras 2008-10-27 107 xor r0,r0,r0
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 108 add r9,r9,r0
597bc5c00b666f Paul Mackerras 2008-10-27 109 lwz r0,(CFG_TB_UPDATE_COUNT+LOPART)(r9)
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 110 cmpl cr0,r8,r0 /* check if updated */
654abc69ef2e69 Christophe Leroy 2019-12-02 111 bne- .Lprecise_clocks
654abc69ef2e69 Christophe Leroy 2019-12-02 112 b .Lfinish_monotonic
654abc69ef2e69 Christophe Leroy 2019-12-02 113
654abc69ef2e69 Christophe Leroy 2019-12-02 114 /*
654abc69ef2e69 Christophe Leroy 2019-12-02 115 * For coarse clocks we get data directly from the vdso data page, so
654abc69ef2e69 Christophe Leroy 2019-12-02 116 * we don't need to call __do_get_tspec, but we still need to do the
654abc69ef2e69 Christophe Leroy 2019-12-02 117 * counter trick.
654abc69ef2e69 Christophe Leroy 2019-12-02 118 */
654abc69ef2e69 Christophe Leroy 2019-12-02 119 .Lcoarse_clocks:
654abc69ef2e69 Christophe Leroy 2019-12-02 120 lwz r8,(CFG_TB_UPDATE_COUNT+LOPART)(r9)
654abc69ef2e69 Christophe Leroy 2019-12-02 121 andi. r0,r8,1 /* pending update ? loop */
654abc69ef2e69 Christophe Leroy 2019-12-02 122 bne- .Lcoarse_clocks
654abc69ef2e69 Christophe Leroy 2019-12-02 123 add r9,r9,r0 /* r0 is already 0 */
654abc69ef2e69 Christophe Leroy 2019-12-02 124
654abc69ef2e69 Christophe Leroy 2019-12-02 125 /*
654abc69ef2e69 Christophe Leroy 2019-12-02 126 * CLOCK_REALTIME_COARSE, below values are needed for MONOTONIC_COARSE
654abc69ef2e69 Christophe Leroy 2019-12-02 127 * too
654abc69ef2e69 Christophe Leroy 2019-12-02 128 */
654abc69ef2e69 Christophe Leroy 2019-12-02 129 lwz r3,STAMP_XTIME_SEC+LOPART(r9)
654abc69ef2e69 Christophe Leroy 2019-12-02 130 lwz r4,STAMP_XTIME_NSEC+LOPART(r9)
654abc69ef2e69 Christophe Leroy 2019-12-02 131 bne cr6,1f
654abc69ef2e69 Christophe Leroy 2019-12-02 132
654abc69ef2e69 Christophe Leroy 2019-12-02 133 /* CLOCK_MONOTONIC_COARSE */
654abc69ef2e69 Christophe Leroy 2019-12-02 134 lwz r5,(WTOM_CLOCK_SEC+LOPART)(r9)
654abc69ef2e69 Christophe Leroy 2019-12-02 135 lwz r6,WTOM_CLOCK_NSEC(r9)
654abc69ef2e69 Christophe Leroy 2019-12-02 136
654abc69ef2e69 Christophe Leroy 2019-12-02 137 /* check if counter has updated */
654abc69ef2e69 Christophe Leroy 2019-12-02 138 or r0,r6,r5
654abc69ef2e69 Christophe Leroy 2019-12-02 139 1: or r0,r0,r3
654abc69ef2e69 Christophe Leroy 2019-12-02 140 or r0,r0,r4
654abc69ef2e69 Christophe Leroy 2019-12-02 141 xor r0,r0,r0
654abc69ef2e69 Christophe Leroy 2019-12-02 142 add r3,r3,r0
654abc69ef2e69 Christophe Leroy 2019-12-02 143 lwz r0,CFG_TB_UPDATE_COUNT+LOPART(r9)
654abc69ef2e69 Christophe Leroy 2019-12-02 144 cmpl cr0,r0,r8 /* check if updated */
654abc69ef2e69 Christophe Leroy 2019-12-02 145 bne- .Lcoarse_clocks
654abc69ef2e69 Christophe Leroy 2019-12-02 146
654abc69ef2e69 Christophe Leroy 2019-12-02 147 /* Counter has not updated, so continue calculating proper values for
654abc69ef2e69 Christophe Leroy 2019-12-02 148 * sec and nsec if monotonic coarse, or just return with the proper
654abc69ef2e69 Christophe Leroy 2019-12-02 149 * values for realtime.
654abc69ef2e69 Christophe Leroy 2019-12-02 150 */
654abc69ef2e69 Christophe Leroy 2019-12-02 151 bne cr6, .Lfinish
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 152
597bc5c00b666f Paul Mackerras 2008-10-27 153 /* Calculate and store result. Note that this mimics the C code,
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 154 * which may cause funny results if nsec goes negative... is that
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 155 * possible at all ?
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 156 */
654abc69ef2e69 Christophe Leroy 2019-12-02 157 .Lfinish_monotonic:
597bc5c00b666f Paul Mackerras 2008-10-27 158 add r3,r3,r5
597bc5c00b666f Paul Mackerras 2008-10-27 159 add r4,r4,r6
597bc5c00b666f Paul Mackerras 2008-10-27 160 cmpw cr0,r4,r7
597bc5c00b666f Paul Mackerras 2008-10-27 161 cmpwi cr1,r4,0
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 162 blt 1f
597bc5c00b666f Paul Mackerras 2008-10-27 163 subf r4,r7,r4
a7f290dad32ee3 Benjamin Herrenschmidt 2005-11-11 164 addi r3,r3,1
654abc69ef2e69 Christophe Leroy 2019-12-02 165 1: bge cr1, .Lfinish
0c37ec2aa88bd8 Benjamin Herrenschmidt 2005-11-14 166 addi r3,r3,-1
597bc5c00b666f Paul Mackerras 2008-10-27 167 add r4,r4,r7
597bc5c00b666f Paul Mackerras 2008-10-27 168
:::::: The code at line 40 was first introduced by commit
:::::: 8fd63a9ea7528463211a6c88d500c51851d960c8 powerpc: Rework VDSO gettimeofday to prevent time going backwards
:::::: TO: Paul Mackerras <paulus(a)samba.org>
:::::: CC: Benjamin Herrenschmidt <benh(a)kernel.crashing.org>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years
[linux-next:master 3012/8629] include/linux/phy.h:320: undefined reference to `mdiobus_alloc_size'
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
head: 860461e4fcaa76200d2d1a53523e0ff7be92e6e8
commit: 2fa4e4b799e191530edbae4b96b85d4486e55053 [3012/8629] net: pcs: Move XPCS into new PCS subdirectory
config: h8300-randconfig-r011-20200917 (attached as .config)
compiler: h8300-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
git checkout 2fa4e4b799e191530edbae4b96b85d4486e55053
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=h8300
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 >>):
h8300-linux-ld: drivers/net/phy/mdio_devres.o: in function `devm_mdiobus_free':
drivers/net/phy/mdio_devres.c:16: undefined reference to `mdiobus_free'
h8300-linux-ld: drivers/net/phy/mdio_devres.o: in function `devm_mdiobus_unregister':
drivers/net/phy/mdio_devres.c:53: undefined reference to `mdiobus_unregister'
h8300-linux-ld: drivers/net/phy/mdio_devres.o: in function `devm_of_mdiobus_register':
drivers/net/phy/mdio_devres.c:120: undefined reference to `of_mdiobus_register'
h8300-linux-ld: drivers/net/phy/mdio_devres.o: in function `devm_mdiobus_alloc_size':
drivers/net/phy/mdio_devres.c:38: undefined reference to `mdiobus_alloc_size'
h8300-linux-ld: drivers/net/phy/mdio_devres.o: in function `__devm_mdiobus_register':
drivers/net/phy/mdio_devres.c:87: undefined reference to `__mdiobus_register'
h8300-linux-ld: drivers/net/phy/mdio-bcm-unimac.o: in function `unimac_mdio_reset':
drivers/net/phy/mdio-bcm-unimac.c:181: undefined reference to `mdiobus_read'
h8300-linux-ld: drivers/net/phy/mdio-bcm-unimac.o: in function `unimac_mdio_remove':
drivers/net/phy/mdio-bcm-unimac.c:305: undefined reference to `mdiobus_unregister'
h8300-linux-ld: drivers/net/phy/mdio-bcm-unimac.c:306: undefined reference to `mdiobus_free'
h8300-linux-ld: drivers/net/phy/mdio-bcm-unimac.o: in function `mdiobus_alloc':
>> include/linux/phy.h:320: undefined reference to `mdiobus_alloc_size'
h8300-linux-ld: drivers/net/phy/mdio-bcm-unimac.o: in function `unimac_mdio_probe':
drivers/net/phy/mdio-bcm-unimac.c:282: undefined reference to `of_mdiobus_register'
h8300-linux-ld: drivers/net/phy/mdio-bcm-unimac.c:295: undefined reference to `mdiobus_free'
h8300-linux-ld: drivers/net/phy/mdio-bitbang.o: in function `mdiobus_alloc':
>> include/linux/phy.h:320: undefined reference to `mdiobus_alloc_size'
h8300-linux-ld: drivers/net/phy/mdio-bitbang.o: in function `free_mdio_bitbang':
drivers/net/phy/mdio-bitbang.c:228: undefined reference to `mdiobus_free'
h8300-linux-ld: drivers/net/phy/mdio-mvusb.o: in function `mvusb_mdio_disconnect':
drivers/net/phy/mdio-mvusb.c:104: undefined reference to `mdiobus_unregister'
h8300-linux-ld: drivers/net/phy/mdio-mvusb.o: in function `mvusb_mdio_probe':
drivers/net/phy/mdio-mvusb.c:96: undefined reference to `of_mdiobus_register'
h8300-linux-ld: drivers/net/pcs/pcs-xpcs.o: in function `xpcs_read':
drivers/net/pcs/pcs-xpcs.c:151: undefined reference to `mdiobus_read'
h8300-linux-ld: drivers/net/pcs/pcs-xpcs.o: in function `xpcs_write':
drivers/net/pcs/pcs-xpcs.c:158: undefined reference to `mdiobus_write'
>> h8300-linux-ld: drivers/net/pcs/pcs-xpcs.c:158: undefined reference to `mdiobus_write'
>> h8300-linux-ld: drivers/net/pcs/pcs-xpcs.c:158: undefined reference to `mdiobus_write'
>> h8300-linux-ld: drivers/net/pcs/pcs-xpcs.c:158: undefined reference to `mdiobus_write'
>> h8300-linux-ld: drivers/net/pcs/pcs-xpcs.c:158: undefined reference to `mdiobus_write'
h8300-linux-ld: drivers/net/pcs/pcs-xpcs.o:drivers/net/pcs/pcs-xpcs.c:158: more undefined references to `mdiobus_write' follow
# https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commi...
git remote add linux-next https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
git fetch --no-tags linux-next master
git checkout 2fa4e4b799e191530edbae4b96b85d4486e55053
vim +320 include/linux/phy.h
00db8189d984d6 Andy Fleming 2005-07-30 316
eb8a54a78e974e Timur Tabi 2012-01-12 317 struct mii_bus *mdiobus_alloc_size(size_t);
eb8a54a78e974e Timur Tabi 2012-01-12 318 static inline struct mii_bus *mdiobus_alloc(void)
eb8a54a78e974e Timur Tabi 2012-01-12 319 {
eb8a54a78e974e Timur Tabi 2012-01-12 @320 return mdiobus_alloc_size(0);
eb8a54a78e974e Timur Tabi 2012-01-12 321 }
eb8a54a78e974e Timur Tabi 2012-01-12 322
:::::: The code at line 320 was first introduced by commit
:::::: eb8a54a78e974e1af3e17fa38bb74d3747c5c1bd phylib: introduce mdiobus_alloc_size()
:::::: TO: Timur Tabi <timur(a)freescale.com>
:::::: CC: David S. Miller <davem(a)davemloft.net>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years
Re: [PATCH v2] sched/deadline: Fix sched_dl_global_validate()
by kernel test robot
Hi Peng,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on tip/sched/core]
[also build test ERROR on tip/master linux/master linus/master v5.9-rc5 next-20200917]
[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/Peng-Liu/sched-deadline-Fix-sche...
base: https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git 848785df48835eefebe0c4eb5da7690690b0a8b7
config: x86_64-randconfig-r004-20200917 (attached as .config)
compiler: clang version 12.0.0 (https://github.com/llvm/llvm-project 1321160a26e7e489baf9b10d6de90a342f898960)
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
# 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 error/warnings (new ones prefixed by >>):
>> kernel/sched/deadline.c:2595:20: error: use of undeclared identifier 'possible_mask'
for_each_cpu(cpu, possible_mask) {
^
>> kernel/sched/deadline.c:2595:15: warning: variable 'cpu' used in loop condition not modified in loop body [-Wfor-loop-analysis]
for_each_cpu(cpu, possible_mask) {
^~~
include/linux/cpumask.h:203:19: note: expanded from macro 'for_each_cpu'
for ((cpu) = 0; (cpu) < 1; (cpu)++, (void)mask)
^~~
1 warning and 1 error generated.
# https://github.com/0day-ci/linux/commit/34a03e474224b29097a1b94a766d6a8eb...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Peng-Liu/sched-deadline-Fix-sched_dl_global_validate/20200918-004123
git checkout 34a03e474224b29097a1b94a766d6a8eb3f7c4e6
vim +/possible_mask +2595 kernel/sched/deadline.c
2584
2585 def_dl_bandwidth.dl_period = global_rt_period();
2586 def_dl_bandwidth.dl_runtime = global_rt_runtime();
2587
2588 if (global_rt_runtime() != RUNTIME_INF)
2589 new_bw = to_ratio(global_rt_period(), global_rt_runtime());
2590
2591 #ifdef CONFIG_SMP
2592 possible_mask = &dl_local_possible_mask;
2593 cpumask_copy(possible_mask, cpu_possible_mask);
2594 #endif /* CONFIG_SMP */
> 2595 for_each_cpu(cpu, possible_mask) {
2596 rcu_read_lock_sched();
2597 dl_b = dl_bw_of(cpu);
2598
2599 raw_spin_lock_irqsave(&dl_b->lock, flags);
2600 dl_b->bw = new_bw;
2601 raw_spin_unlock_irqrestore(&dl_b->lock, flags);
2602 #ifdef CONFIG_SMP
2603 cpumask_andnot(possible_mask, possible_mask,
2604 cpu_rq(cpu)->rd->span);
2605 #endif /* CONFIG_SMP */
2606 rcu_read_unlock_sched();
2607 init_dl_rq_bw_ratio(&cpu_rq(cpu)->dl);
2608 }
2609 }
2610
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years
Re: [PATCH bpf-next v3 4/6] bpf: Introduce bpf_per_cpu_ptr()
by kernel test robot
Hi Hao,
Thank you for the patch! Perhaps something to improve:
[auto build test WARNING on bpf-next/master]
url: https://github.com/0day-ci/linux/commits/Hao-Luo/bpf-BTF-support-for-ksym...
base: https://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next.git master
config: powerpc-randconfig-s032-20200916 (attached as .config)
compiler: powerpc64-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
# apt-get install sparse
# sparse version: v0.6.2-201-g24bdaac6-dirty
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=powerpc
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
sparse warnings: (new ones prefixed by >>)
>> kernel/bpf/helpers.c:631:31: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected void const [noderef] __percpu *__vpp_verify @@ got void const * @@
>> kernel/bpf/helpers.c:631:31: sparse: expected void const [noderef] __percpu *__vpp_verify
>> kernel/bpf/helpers.c:631:31: sparse: got void const *
# https://github.com/0day-ci/linux/commit/3f6ea3c1c73efe466a96ff7499219fe3b...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Hao-Luo/bpf-BTF-support-for-ksyms/20200917-064052
git checkout 3f6ea3c1c73efe466a96ff7499219fe3b03b8f48
vim +631 kernel/bpf/helpers.c
625
626 BPF_CALL_2(bpf_per_cpu_ptr, const void *, ptr, u32, cpu)
627 {
628 if (cpu >= nr_cpu_ids)
629 return (unsigned long)NULL;
630
> 631 return (unsigned long)per_cpu_ptr(ptr, cpu);
632 }
633
634 const struct bpf_func_proto bpf_per_cpu_ptr_proto = {
635 .func = bpf_per_cpu_ptr,
636 .gpl_only = false,
637 .ret_type = RET_PTR_TO_MEM_OR_BTF_ID_OR_NULL,
638 .arg1_type = ARG_PTR_TO_PERCPU_BTF_ID,
639 .arg2_type = ARG_ANYTHING,
640 };
641
> 642 const struct bpf_func_proto bpf_get_current_task_proto __weak;
643 const struct bpf_func_proto bpf_probe_read_user_proto __weak;
644 const struct bpf_func_proto bpf_probe_read_user_str_proto __weak;
645 const struct bpf_func_proto bpf_probe_read_kernel_proto __weak;
646 const struct bpf_func_proto bpf_probe_read_kernel_str_proto __weak;
647
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years
[dhowells-fs:rxrpc-rxgk 17/17] ERROR: modpost: "rxgk_test_decode_ticket" undefined!
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git rxrpc-rxgk
head: 587caf020a85547c72e7e578382360f01bc7690b
commit: 587caf020a85547c72e7e578382360f01bc7690b [17/17] rxrpc: Implement the yfs-rxgk transport class (security index 6)
config: x86_64-randconfig-s022-20200917 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-15) 9.3.0
reproduce:
# apt-get install sparse
# sparse version: v0.6.2-201-g24bdaac6-dirty
git checkout 587caf020a85547c72e7e578382360f01bc7690b
# save the attached .config to linux build tree
make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' 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 >>, old ones prefixed by <<):
>> ERROR: modpost: "rxgk_test_decode_ticket" [net/rxrpc/rxrpc.ko] undefined!
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years
[rcu:rcu/next 34/42] kernel/rcu/rcutorture.c:698:20: error: 'show_rcu_tasks_classic_gp_kthread' undeclared here (not in a function)
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu.git rcu/next
head: 7323bc24b9c5f4d11e9f926eb1d0f3f674f3bd1d
commit: 675d3ca52626bac52da2c6ddaec94dd1a3724f0f [34/42] rcutorture: Make grace-period kthread report match RCU flavor being tested
config: nds32-randconfig-r003-20200917 (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
git checkout 675d3ca52626bac52da2c6ddaec94dd1a3724f0f
# 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 errors (new ones prefixed by >>):
>> kernel/rcu/rcutorture.c:698:20: error: 'show_rcu_tasks_classic_gp_kthread' undeclared here (not in a function)
698 | .gp_kthread_dbg = show_rcu_tasks_classic_gp_kthread,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> kernel/rcu/rcutorture.c:768:20: error: 'show_rcu_tasks_rude_gp_kthread' undeclared here (not in a function)
768 | .gp_kthread_dbg = show_rcu_tasks_rude_gp_kthread,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> kernel/rcu/rcutorture.c:807:20: error: 'show_rcu_tasks_trace_gp_kthread' undeclared here (not in a function)
807 | .gp_kthread_dbg = show_rcu_tasks_trace_gp_kthread,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# https://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu.git/com...
git remote add rcu https://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu.git
git fetch --no-tags rcu rcu/next
git checkout 675d3ca52626bac52da2c6ddaec94dd1a3724f0f
vim +/show_rcu_tasks_classic_gp_kthread +698 kernel/rcu/rcutorture.c
685
686 static struct rcu_torture_ops tasks_ops = {
687 .ttype = RCU_TASKS_FLAVOR,
688 .init = rcu_sync_torture_init,
689 .readlock = tasks_torture_read_lock,
690 .read_delay = rcu_read_delay, /* just reuse rcu's version. */
691 .readunlock = tasks_torture_read_unlock,
692 .get_gp_seq = rcu_no_completed,
693 .deferred_free = rcu_tasks_torture_deferred_free,
694 .sync = synchronize_rcu_tasks,
695 .exp_sync = synchronize_rcu_mult_test,
696 .call = call_rcu_tasks,
697 .cb_barrier = rcu_barrier_tasks,
> 698 .gp_kthread_dbg = show_rcu_tasks_classic_gp_kthread,
699 .fqs = NULL,
700 .stats = NULL,
701 .irq_capable = 1,
702 .slow_gps = 1,
703 .name = "tasks"
704 };
705
706 /*
707 * Definitions for trivial CONFIG_PREEMPT=n-only torture testing.
708 * This implementation does not necessarily work well with CPU hotplug.
709 */
710
711 static void synchronize_rcu_trivial(void)
712 {
713 int cpu;
714
715 for_each_online_cpu(cpu) {
716 rcutorture_sched_setaffinity(current->pid, cpumask_of(cpu));
717 WARN_ON_ONCE(raw_smp_processor_id() != cpu);
718 }
719 }
720
721 static int rcu_torture_read_lock_trivial(void) __acquires(RCU)
722 {
723 preempt_disable();
724 return 0;
725 }
726
727 static void rcu_torture_read_unlock_trivial(int idx) __releases(RCU)
728 {
729 preempt_enable();
730 }
731
732 static struct rcu_torture_ops trivial_ops = {
733 .ttype = RCU_TRIVIAL_FLAVOR,
734 .init = rcu_sync_torture_init,
735 .readlock = rcu_torture_read_lock_trivial,
736 .read_delay = rcu_read_delay, /* just reuse rcu's version. */
737 .readunlock = rcu_torture_read_unlock_trivial,
738 .get_gp_seq = rcu_no_completed,
739 .sync = synchronize_rcu_trivial,
740 .exp_sync = synchronize_rcu_trivial,
741 .fqs = NULL,
742 .stats = NULL,
743 .irq_capable = 1,
744 .name = "trivial"
745 };
746
747 /*
748 * Definitions for rude RCU-tasks torture testing.
749 */
750
751 static void rcu_tasks_rude_torture_deferred_free(struct rcu_torture *p)
752 {
753 call_rcu_tasks_rude(&p->rtort_rcu, rcu_torture_cb);
754 }
755
756 static struct rcu_torture_ops tasks_rude_ops = {
757 .ttype = RCU_TASKS_RUDE_FLAVOR,
758 .init = rcu_sync_torture_init,
759 .readlock = rcu_torture_read_lock_trivial,
760 .read_delay = rcu_read_delay, /* just reuse rcu's version. */
761 .readunlock = rcu_torture_read_unlock_trivial,
762 .get_gp_seq = rcu_no_completed,
763 .deferred_free = rcu_tasks_rude_torture_deferred_free,
764 .sync = synchronize_rcu_tasks_rude,
765 .exp_sync = synchronize_rcu_tasks_rude,
766 .call = call_rcu_tasks_rude,
767 .cb_barrier = rcu_barrier_tasks_rude,
> 768 .gp_kthread_dbg = show_rcu_tasks_rude_gp_kthread,
769 .fqs = NULL,
770 .stats = NULL,
771 .irq_capable = 1,
772 .name = "tasks-rude"
773 };
774
775 /*
776 * Definitions for tracing RCU-tasks torture testing.
777 */
778
779 static int tasks_tracing_torture_read_lock(void)
780 {
781 rcu_read_lock_trace();
782 return 0;
783 }
784
785 static void tasks_tracing_torture_read_unlock(int idx)
786 {
787 rcu_read_unlock_trace();
788 }
789
790 static void rcu_tasks_tracing_torture_deferred_free(struct rcu_torture *p)
791 {
792 call_rcu_tasks_trace(&p->rtort_rcu, rcu_torture_cb);
793 }
794
795 static struct rcu_torture_ops tasks_tracing_ops = {
796 .ttype = RCU_TASKS_TRACING_FLAVOR,
797 .init = rcu_sync_torture_init,
798 .readlock = tasks_tracing_torture_read_lock,
799 .read_delay = srcu_read_delay, /* just reuse srcu's version. */
800 .readunlock = tasks_tracing_torture_read_unlock,
801 .get_gp_seq = rcu_no_completed,
802 .deferred_free = rcu_tasks_tracing_torture_deferred_free,
803 .sync = synchronize_rcu_tasks_trace,
804 .exp_sync = synchronize_rcu_tasks_trace,
805 .call = call_rcu_tasks_trace,
806 .cb_barrier = rcu_barrier_tasks_trace,
> 807 .gp_kthread_dbg = show_rcu_tasks_trace_gp_kthread,
808 .fqs = NULL,
809 .stats = NULL,
810 .irq_capable = 1,
811 .slow_gps = 1,
812 .name = "tasks-tracing"
813 };
814
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years
[hverkuil-media:tegrav5 17/18] ERROR: modpost: "__aeabi_ldivmod" undefined!
by kernel test robot
Hi Hans,
First bad commit (maybe != root cause):
tree: git://linuxtv.org/hverkuil/media_tree.git tegrav5
head: 3ab57682384cccc052812543e535ba545b50d3c0
commit: 2c516ed27b465084be43e9f459e19c80ad729d26 [17/18] tc358840: various fixes
config: arm-allmodconfig (attached as .config)
compiler: arm-linux-gnueabi-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
git checkout 2c516ed27b465084be43e9f459e19c80ad729d26
# 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: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>, old ones prefixed by <<):
ERROR: modpost: "__aeabi_uldivmod" [drivers/media/test-drivers/vidtv/dvb-vidtv-bridge.ko] undefined!
>> ERROR: modpost: "__aeabi_ldivmod" [drivers/media/i2c/tc358840.ko] undefined!
>> ERROR: modpost: "__aeabi_uldivmod" [drivers/media/i2c/tc358840.ko] undefined!
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years
[linux-next:master 8124/8629] ld.lld: error: undefined symbol: net_dim_get_rx_moderation
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
head: 860461e4fcaa76200d2d1a53523e0ff7be92e6e8
commit: 04a834592bf51355383db6fc00cb09f776a6b8dc [8124/8629] ionic: dynamic interrupt moderation
config: x86_64-randconfig-a003-20200917 (attached as .config)
compiler: clang version 12.0.0 (https://github.com/llvm/llvm-project 1321160a26e7e489baf9b10d6de90a342f898960)
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
git checkout 04a834592bf51355383db6fc00cb09f776a6b8dc
# 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 >>):
>> ld.lld: error: undefined symbol: net_dim_get_rx_moderation
>>> referenced by ionic_lif.c:52 (drivers/net/ethernet/pensando/ionic/ionic_lif.c:52)
>>> net/ethernet/pensando/ionic/ionic_lif.o:(ionic_dim_work) in archive drivers/built-in.a
--
>> ld.lld: error: undefined symbol: net_dim
>>> referenced by ionic_txrx.c:456 (drivers/net/ethernet/pensando/ionic/ionic_txrx.c:456)
>>> net/ethernet/pensando/ionic/ionic_txrx.o:(ionic_dim_update) in archive drivers/built-in.a
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years