All of lore.kernel.org
 help / color / mirror / Atom feed
* [mips-linux:mips-next 98/101] arch/mips/include/asm/div64.h:74:3: error: inconsistent operand constraints in an 'asm'
@ 2021-04-21 20:24 kernel test robot
  2021-04-21 23:26   ` Maciej W. Rozycki
  0 siblings, 1 reply; 5+ messages in thread
From: kernel test robot @ 2021-04-21 20:24 UTC (permalink / raw)
  To: kbuild-all

[-- Attachment #1: Type: text/plain, Size: 16765 bytes --]

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/mips/linux.git mips-next
head:   182dd5bad52c66a54c300fe320b772456572bf23
commit: c49f71f60754acbff37505e1d16ca796bf8a8140 [98/101] MIPS: Reinstate platform `__div64_32' handler
config: mips-malta_qemu_32r6_defconfig (attached as .config)
compiler: mipsel-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/mips/linux.git/commit/?id=c49f71f60754acbff37505e1d16ca796bf8a8140
        git remote add mips-linux https://git.kernel.org/pub/scm/linux/kernel/git/mips/linux.git
        git fetch --no-tags mips-linux mips-next
        git checkout c49f71f60754acbff37505e1d16ca796bf8a8140
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross W=1 ARCH=mips 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>

All errors (new ones prefixed by >>):

   In file included from include/linux/math.h:5,
                    from include/linux/kernel.h:13,
                    from include/asm-generic/bug.h:20,
                    from arch/mips/include/asm/bug.h:42,
                    from include/linux/bug.h:5,
                    from include/linux/mmdebug.h:5,
                    from include/linux/gfp.h:5,
                    from include/linux/slab.h:15,
                    from fs/xfs/kmem.h:9,
                    from fs/xfs/xfs_linux.h:24,
                    from fs/xfs/xfs.h:22,
                    from fs/xfs/libxfs/xfs_alloc_btree.c:6:
   fs/xfs/libxfs/xfs_alloc_btree.c: In function 'xfs_allocbt_free_block':
>> arch/mips/include/asm/div64.h:74:3: error: inconsistent operand constraints in an 'asm'
      74 |   __asm__("divu $0, %z1, %z2"    \
         |   ^~~~~~~
   include/asm-generic/div64.h:245:11: note: in expansion of macro '__div64_32'
     245 |   __rem = __div64_32(&(n), __base); \
         |           ^~~~~~~~~~
   fs/xfs/xfs_mount.h:291:25: note: in expansion of macro 'do_div'
     291 |  return (xfs_agblock_t) do_div(ld, mp->m_sb.sb_agblocks);
         |                         ^~~~~~
--
   fs/xfs/libxfs/xfs_bmap.c: In function 'xfs_bmap_del_extent_real':
   fs/xfs/libxfs/xfs_bmap.c:5157:18: warning: variable 'bno' set but not used [-Wunused-but-set-variable]
    5157 |    xfs_fsblock_t bno;
         |                  ^~~
   In file included from include/linux/math.h:5,
                    from include/linux/kernel.h:13,
                    from include/asm-generic/bug.h:20,
                    from arch/mips/include/asm/bug.h:42,
                    from include/linux/bug.h:5,
                    from include/linux/mmdebug.h:5,
                    from include/linux/gfp.h:5,
                    from include/linux/slab.h:15,
                    from fs/xfs/kmem.h:9,
                    from fs/xfs/xfs_linux.h:24,
                    from fs/xfs/xfs.h:22,
                    from fs/xfs/libxfs/xfs_bmap.c:6:
   fs/xfs/libxfs/xfs_bmap.c: In function 'xfs_bmap_worst_indlen.isra.0':
>> arch/mips/include/asm/div64.h:74:3: error: inconsistent operand constraints in an 'asm'
      74 |   __asm__("divu $0, %z1, %z2"    \
         |   ^~~~~~~
   include/asm-generic/div64.h:245:11: note: in expansion of macro '__div64_32'
     245 |   __rem = __div64_32(&(n), __base); \
         |           ^~~~~~~~~~
   fs/xfs/libxfs/xfs_bmap.c:177:3: note: in expansion of macro 'do_div'
     177 |   do_div(len, maxrecs);
         |   ^~~~~~
--
   In file included from include/linux/math.h:5,
                    from include/linux/kernel.h:13,
                    from include/asm-generic/bug.h:20,
                    from arch/mips/include/asm/bug.h:42,
                    from include/linux/bug.h:5,
                    from include/linux/mmdebug.h:5,
                    from include/linux/gfp.h:5,
                    from include/linux/slab.h:15,
                    from fs/xfs/kmem.h:9,
                    from fs/xfs/xfs_linux.h:24,
                    from fs/xfs/xfs.h:22,
                    from fs/xfs/libxfs/xfs_bmap_btree.c:6:
   fs/xfs/libxfs/xfs_bmap_btree.c: In function 'xfs_bmbt_free_block':
>> arch/mips/include/asm/div64.h:74:3: error: inconsistent operand constraints in an 'asm'
      74 |   __asm__("divu $0, %z1, %z2"    \
         |   ^~~~~~~
   include/asm-generic/div64.h:245:11: note: in expansion of macro '__div64_32'
     245 |   __rem = __div64_32(&(n), __base); \
         |           ^~~~~~~~~~
   fs/xfs/xfs_mount.h:283:2: note: in expansion of macro 'do_div'
     283 |  do_div(ld, mp->m_sb.sb_agblocks);
         |  ^~~~~~
--
   In file included from include/linux/math.h:5,
                    from include/linux/kernel.h:13,
                    from include/asm-generic/bug.h:20,
                    from arch/mips/include/asm/bug.h:42,
                    from include/linux/bug.h:5,
                    from include/linux/mmdebug.h:5,
                    from include/linux/gfp.h:5,
                    from include/linux/slab.h:15,
                    from fs/xfs/kmem.h:9,
                    from fs/xfs/xfs_linux.h:24,
                    from fs/xfs/xfs.h:22,
                    from fs/xfs/libxfs/xfs_btree.c:6:
   fs/xfs/libxfs/xfs_btree.c: In function 'xfs_btree_buf_to_ptr.isra.0':
>> arch/mips/include/asm/div64.h:74:3: error: inconsistent operand constraints in an 'asm'
      74 |   __asm__("divu $0, %z1, %z2"    \
         |   ^~~~~~~
   include/asm-generic/div64.h:245:11: note: in expansion of macro '__div64_32'
     245 |   __rem = __div64_32(&(n), __base); \
         |           ^~~~~~~~~~
   fs/xfs/xfs_mount.h:283:2: note: in expansion of macro 'do_div'
     283 |  do_div(ld, mp->m_sb.sb_agblocks);
         |  ^~~~~~
>> arch/mips/include/asm/div64.h:74:3: error: inconsistent operand constraints in an 'asm'
      74 |   __asm__("divu $0, %z1, %z2"    \
         |   ^~~~~~~
   include/asm-generic/div64.h:245:11: note: in expansion of macro '__div64_32'
     245 |   __rem = __div64_32(&(n), __base); \
         |           ^~~~~~~~~~
   fs/xfs/xfs_mount.h:291:25: note: in expansion of macro 'do_div'
     291 |  return (xfs_agblock_t) do_div(ld, mp->m_sb.sb_agblocks);
         |                         ^~~~~~
--
   In file included from include/linux/math.h:5,
                    from include/linux/kernel.h:13,
                    from include/asm-generic/bug.h:20,
                    from arch/mips/include/asm/bug.h:42,
                    from include/linux/bug.h:5,
                    from include/linux/mmdebug.h:5,
                    from include/linux/gfp.h:5,
                    from include/linux/slab.h:15,
                    from fs/xfs/kmem.h:9,
                    from fs/xfs/xfs_linux.h:24,
                    from fs/xfs/xfs.h:22,
                    from fs/xfs/libxfs/xfs_ialloc.c:6:
   fs/xfs/libxfs/xfs_ialloc.c: In function 'xfs_ialloc_setup_geometry':
>> arch/mips/include/asm/div64.h:74:3: error: inconsistent operand constraints in an 'asm'
      74 |   __asm__("divu $0, %z1, %z2"    \
         |   ^~~~~~~
   include/asm-generic/div64.h:245:11: note: in expansion of macro '__div64_32'
     245 |   __rem = __div64_32(&(n), __base); \
         |           ^~~~~~~~~~
   fs/xfs/libxfs/xfs_ialloc.c:2854:3: note: in expansion of macro 'do_div'
    2854 |   do_div(icount, igeo->ialloc_blks);
         |   ^~~~~~
--
   In file included from include/linux/math.h:5,
                    from include/linux/kernel.h:13,
                    from include/asm-generic/bug.h:20,
                    from arch/mips/include/asm/bug.h:42,
                    from include/linux/bug.h:5,
                    from include/linux/mmdebug.h:5,
                    from include/linux/gfp.h:5,
                    from include/linux/slab.h:15,
                    from fs/xfs/kmem.h:9,
                    from fs/xfs/xfs_linux.h:24,
                    from fs/xfs/xfs.h:22,
                    from fs/xfs/libxfs/xfs_ialloc_btree.c:6:
   fs/xfs/libxfs/xfs_ialloc_btree.c: In function '__xfs_inobt_free_block.isra.0':
>> arch/mips/include/asm/div64.h:74:3: error: inconsistent operand constraints in an 'asm'
      74 |   __asm__("divu $0, %z1, %z2"    \
         |   ^~~~~~~
   include/asm-generic/div64.h:245:11: note: in expansion of macro '__div64_32'
     245 |   __rem = __div64_32(&(n), __base); \
         |           ^~~~~~~~~~
   fs/xfs/xfs_mount.h:283:2: note: in expansion of macro 'do_div'
     283 |  do_div(ld, mp->m_sb.sb_agblocks);
         |  ^~~~~~
--
   In file included from include/linux/math.h:5,
                    from include/linux/kernel.h:13,
                    from include/asm-generic/bug.h:20,
                    from arch/mips/include/asm/bug.h:42,
                    from include/linux/bug.h:5,
                    from include/linux/mmdebug.h:5,
                    from include/linux/gfp.h:5,
                    from include/linux/slab.h:15,
                    from fs/xfs/kmem.h:9,
                    from fs/xfs/xfs_linux.h:24,
                    from fs/xfs/xfs.h:22,
                    from fs/xfs/libxfs/xfs_inode_buf.c:6:
   fs/xfs/libxfs/xfs_inode_buf.c: In function 'xfs_inode_buf_verify':
>> arch/mips/include/asm/div64.h:74:3: error: inconsistent operand constraints in an 'asm'
      74 |   __asm__("divu $0, %z1, %z2"    \
         |   ^~~~~~~
   include/asm-generic/div64.h:245:11: note: in expansion of macro '__div64_32'
     245 |   __rem = __div64_32(&(n), __base); \
         |           ^~~~~~~~~~
   fs/xfs/xfs_mount.h:283:2: note: in expansion of macro 'do_div'
     283 |  do_div(ld, mp->m_sb.sb_agblocks);
         |  ^~~~~~
--
   In file included from include/linux/math.h:5,
                    from include/linux/kernel.h:13,
                    from include/asm-generic/bug.h:20,
                    from arch/mips/include/asm/bug.h:42,
                    from include/linux/bug.h:5,
                    from include/linux/mmdebug.h:5,
                    from include/linux/gfp.h:5,
                    from include/linux/slab.h:15,
                    from fs/xfs/kmem.h:9,
                    from fs/xfs/xfs_linux.h:24,
                    from fs/xfs/xfs.h:22,
                    from fs/xfs/libxfs/xfs_log_rlimit.c:6:
   fs/xfs/libxfs/xfs_log_rlimit.c: In function 'xfs_log_calc_minimum_size':
>> arch/mips/include/asm/div64.h:74:3: error: inconsistent operand constraints in an 'asm'
      74 |   __asm__("divu $0, %z1, %z2"    \
         |   ^~~~~~~
   include/asm-generic/div64.h:245:11: note: in expansion of macro '__div64_32'
     245 |   __rem = __div64_32(&(n), __base); \
         |           ^~~~~~~~~~
   fs/xfs/xfs_linux.h:186:2: note: in expansion of macro 'do_div'
     186 |  do_div(x, y);
         |  ^~~~~~
--
   In file included from include/linux/math.h:5,
                    from include/linux/kernel.h:13,
                    from include/asm-generic/bug.h:20,
                    from arch/mips/include/asm/bug.h:42,
                    from include/linux/bug.h:5,
                    from include/linux/mmdebug.h:5,
                    from include/linux/gfp.h:5,
                    from include/linux/slab.h:15,
                    from fs/xfs/kmem.h:9,
                    from fs/xfs/xfs_linux.h:24,
                    from fs/xfs/xfs.h:22,
                    from fs/xfs/libxfs/xfs_rmap_btree.c:6:
   fs/xfs/libxfs/xfs_rmap_btree.c: In function 'xfs_rmapbt_free_block':
>> arch/mips/include/asm/div64.h:74:3: error: inconsistent operand constraints in an 'asm'
      74 |   __asm__("divu $0, %z1, %z2"    \
         |   ^~~~~~~
   include/asm-generic/div64.h:245:11: note: in expansion of macro '__div64_32'
     245 |   __rem = __div64_32(&(n), __base); \
         |           ^~~~~~~~~~
   fs/xfs/xfs_mount.h:291:25: note: in expansion of macro 'do_div'
     291 |  return (xfs_agblock_t) do_div(ld, mp->m_sb.sb_agblocks);
         |                         ^~~~~~
--
   In file included from include/linux/math.h:5,
                    from include/linux/kernel.h:13,
                    from include/asm-generic/bug.h:20,
                    from arch/mips/include/asm/bug.h:42,
                    from include/linux/bug.h:5,
                    from include/linux/mmdebug.h:5,
                    from include/linux/gfp.h:5,
                    from include/linux/slab.h:15,
                    from fs/xfs/kmem.h:9,
                    from fs/xfs/xfs_linux.h:24,
                    from fs/xfs/xfs.h:22,
                    from fs/xfs/libxfs/xfs_refcount_btree.c:6:
   fs/xfs/libxfs/xfs_refcount_btree.c: In function 'xfs_refcountbt_free_block':
>> arch/mips/include/asm/div64.h:74:3: error: inconsistent operand constraints in an 'asm'
      74 |   __asm__("divu $0, %z1, %z2"    \
         |   ^~~~~~~
   include/asm-generic/div64.h:245:11: note: in expansion of macro '__div64_32'
     245 |   __rem = __div64_32(&(n), __base); \
         |           ^~~~~~~~~~
   fs/xfs/xfs_mount.h:283:2: note: in expansion of macro 'do_div'
     283 |  do_div(ld, mp->m_sb.sb_agblocks);
         |  ^~~~~~
--
   In file included from include/linux/math.h:5,
                    from include/linux/kernel.h:13,
                    from include/asm-generic/bug.h:20,
                    from arch/mips/include/asm/bug.h:42,
                    from include/linux/bug.h:5,
                    from include/linux/mmdebug.h:5,
                    from include/linux/gfp.h:5,
                    from include/linux/slab.h:15,
                    from fs/xfs/kmem.h:9,
                    from fs/xfs/xfs_linux.h:24,
                    from fs/xfs/xfs.h:22,
                    from fs/xfs/libxfs/xfs_sb.c:6:
   fs/xfs/libxfs/xfs_sb.c: In function 'xfs_validate_sb_common':
>> arch/mips/include/asm/div64.h:74:3: error: inconsistent operand constraints in an 'asm'
      74 |   __asm__("divu $0, %z1, %z2"    \
         |   ^~~~~~~
   include/asm-generic/div64.h:245:11: note: in expansion of macro '__div64_32'
     245 |   __rem = __div64_32(&(n), __base); \
         |           ^~~~~~~~~~
   include/linux/math64.h:91:15: note: in expansion of macro 'do_div'
      91 |  *remainder = do_div(dividend, divisor);
         |               ^~~~~~
>> arch/mips/include/asm/div64.h:74:3: error: inconsistent operand constraints in an 'asm'
      74 |   __asm__("divu $0, %z1, %z2"    \
         |   ^~~~~~~
   include/asm-generic/div64.h:245:11: note: in expansion of macro '__div64_32'
     245 |   __rem = __div64_32(&(n), __base); \
         |           ^~~~~~~~~~
   fs/xfs/xfs_linux.h:193:2: note: in expansion of macro 'do_div'
     193 |  do_div(x, y);
         |  ^~~~~~
>> arch/mips/include/asm/div64.h:74:3: error: inconsistent operand constraints in an 'asm'
      74 |   __asm__("divu $0, %z1, %z2"    \
         |   ^~~~~~~
   include/asm-generic/div64.h:245:11: note: in expansion of macro '__div64_32'
     245 |   __rem = __div64_32(&(n), __base); \
         |           ^~~~~~~~~~
   include/linux/math64.h:91:15: note: in expansion of macro 'do_div'
      91 |  *remainder = do_div(dividend, divisor);
         |               ^~~~~~
..


vim +/asm +74 arch/mips/include/asm/div64.h

    58	
    59	#define __div64_32(n, base) ({						\
    60		unsigned long __upper, __low, __high, __radix;			\
    61		unsigned long long __modquot;					\
    62		unsigned long long __quot;					\
    63		unsigned long long __div;					\
    64		unsigned long __mod;						\
    65										\
    66		__div = (*n);							\
    67		__radix = (base);						\
    68										\
    69		__high = __div >> 32;						\
    70		__low = __div;							\
    71		__upper = __high;						\
    72										\
    73		if (__high) {							\
  > 74			__asm__("divu	$0, %z1, %z2"				\
    75			: "=x" (__modquot)					\
    76			: "Jr" (__high), "Jr" (__radix));			\
    77			__upper = __modquot >> 32;				\
    78			__high = __modquot;					\
    79		}								\
    80										\
    81		__mod = do_div64_32(__low, __upper, __low, __radix);		\
    82										\
    83		__quot = __high;						\
    84		__quot = __quot << 32 | __low;					\
    85		(*n) = __quot;							\
    86		__mod;								\
    87	})
    88	

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org

[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 16991 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2021-04-22  4:56 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-04-21 20:24 [mips-linux:mips-next 98/101] arch/mips/include/asm/div64.h:74:3: error: inconsistent operand constraints in an 'asm' kernel test robot
2021-04-21 23:26 ` Maciej W. Rozycki
2021-04-21 23:26   ` Maciej W. Rozycki
2021-04-22  4:55   ` [kbuild-all] " Rong Chen
2021-04-22  4:55     ` Rong Chen

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.