[PATCH v2 2/2] riscv: Add jump-label implementation

kernel test robot lkp at intel.com
Mon Jul 13 18:06:38 EDT 2020


Hi Emil,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on linus/master]
[also build test ERROR on v5.8-rc5 next-20200713]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use  as documented in
https://git-scm.com/docs/git-format-patch]

url:    https://github.com/0day-ci/linux/commits/Emil-Renner-Berthing/riscv-Support-R_RISCV_ADD64-and-R_RISCV_SUB64-relocs/20200709-051310
base:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git dcde237b9b0eb1d19306e6f48c0a4e058907619f
config: riscv-allyesconfig (attached as .config)
compiler: riscv64-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
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=riscv 

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

All errors (new ones prefixed by >>):

   In file included from include/linux/compiler_types.h:68,
                    from <command-line>:
   arch/riscv/include/asm/jump_label.h: In function 'arch_static_branch':
>> arch/riscv/include/asm/jump_label.h:26:15: error: expected ':' before 'RISCV_LGPTR'
      26 |   " .align  " RISCV_LGPTR "  \n\t"
         |               ^~~~~~~~~~~
   include/linux/compiler-gcc.h:121:47: note: in definition of macro 'asm_volatile_goto'
     121 | #define asm_volatile_goto(x...) do { asm goto(x); asm (""); } while (0)
         |                                               ^
   In file included from include/linux/jump_label.h:117,
                    from include/linux/dynamic_debug.h:6,
                    from include/linux/printk.h:404,
                    from kernel/module_signature.c:10:
   arch/riscv/include/asm/jump_label.h:33:1: warning: label 'label' defined but not used [-Wunused-label]
      33 | label:
         | ^~~~~
   In file included from include/linux/compiler_types.h:68,
                    from <command-line>:
   arch/riscv/include/asm/jump_label.h: In function 'arch_static_branch_jump':
   arch/riscv/include/asm/jump_label.h:47:15: error: expected ':' before 'RISCV_LGPTR'
      47 |   " .align  " RISCV_LGPTR "  \n\t"
         |               ^~~~~~~~~~~
   include/linux/compiler-gcc.h:121:47: note: in definition of macro 'asm_volatile_goto'
     121 | #define asm_volatile_goto(x...) do { asm goto(x); asm (""); } while (0)
         |                                               ^
   In file included from include/linux/jump_label.h:117,
                    from include/linux/dynamic_debug.h:6,
                    from include/linux/printk.h:404,
                    from kernel/module_signature.c:10:
   arch/riscv/include/asm/jump_label.h:54:1: warning: label 'label' defined but not used [-Wunused-label]
      54 | label:
         | ^~~~~
--
   In file included from include/linux/compiler_types.h:68,
                    from <command-line>:
   arch/riscv/include/asm/jump_label.h: In function 'arch_static_branch':
>> arch/riscv/include/asm/jump_label.h:26:15: error: expected ':' before 'RISCV_LGPTR'
      26 |   " .align  " RISCV_LGPTR "  \n\t"
         |               ^~~~~~~~~~~
   include/linux/compiler-gcc.h:121:47: note: in definition of macro 'asm_volatile_goto'
     121 | #define asm_volatile_goto(x...) do { asm goto(x); asm (""); } while (0)
         |                                               ^
   In file included from include/linux/jump_label.h:117,
                    from include/linux/dynamic_debug.h:6,
                    from include/linux/printk.h:404,
                    from include/drm/drm_print.h:30,
                    from drivers/gpu/drm/tidss/tidss_irq.c:7:
   arch/riscv/include/asm/jump_label.h:33:1: warning: label 'label' defined but not used [-Wunused-label]
      33 | label:
         | ^~~~~
   In file included from include/linux/compiler_types.h:68,
                    from <command-line>:
   arch/riscv/include/asm/jump_label.h: In function 'arch_static_branch_jump':
   arch/riscv/include/asm/jump_label.h:47:15: error: expected ':' before 'RISCV_LGPTR'
      47 |   " .align  " RISCV_LGPTR "  \n\t"
         |               ^~~~~~~~~~~
   include/linux/compiler-gcc.h:121:47: note: in definition of macro 'asm_volatile_goto'
     121 | #define asm_volatile_goto(x...) do { asm goto(x); asm (""); } while (0)
         |                                               ^
   In file included from include/linux/jump_label.h:117,
                    from include/linux/dynamic_debug.h:6,
                    from include/linux/printk.h:404,
                    from include/drm/drm_print.h:30,
                    from drivers/gpu/drm/tidss/tidss_irq.c:7:
   arch/riscv/include/asm/jump_label.h:54:1: warning: label 'label' defined but not used [-Wunused-label]
      54 | label:
         | ^~~~~
   In file included from arch/riscv/include/asm/kgdb.h:109,
                    from include/linux/kgdb.h:20,
                    from include/linux/fb.h:5,
                    from include/drm/drm_crtc.h:31,
                    from drivers/gpu/drm/tidss/tidss_crtc.h:13,
                    from drivers/gpu/drm/tidss/tidss_irq.c:9:
   At top level:
   arch/riscv/include/asm/gdb_xml.h:23:19: warning: 'riscv_gdb_stub_cpuxml' defined but not used [-Wunused-const-variable=]
      23 | static const char riscv_gdb_stub_cpuxml[2048] =
         |                   ^~~~~~~~~~~~~~~~~~~~~
   arch/riscv/include/asm/gdb_xml.h:16:19: warning: 'riscv_gdb_stub_target_desc' defined but not used [-Wunused-const-variable=]
      16 | static const char riscv_gdb_stub_target_desc[256] =
         |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~
   arch/riscv/include/asm/gdb_xml.h:13:19: warning: 'gdb_xfer_read_cpuxml' defined but not used [-Wunused-const-variable=]
      13 | static const char gdb_xfer_read_cpuxml[39] =
         |                   ^~~~~~~~~~~~~~~~~~~~
   arch/riscv/include/asm/gdb_xml.h:10:19: warning: 'gdb_xfer_read_target' defined but not used [-Wunused-const-variable=]
      10 | static const char gdb_xfer_read_target[31] = "qXfer:features:read:target.xml:";
         |                   ^~~~~~~~~~~~~~~~~~~~
   arch/riscv/include/asm/gdb_xml.h:7:19: warning: 'riscv_gdb_stub_feature' defined but not used [-Wunused-const-variable=]
       7 | static const char riscv_gdb_stub_feature[64] =
         |                   ^~~~~~~~~~~~~~~~~~~~~~

vim +26 arch/riscv/include/asm/jump_label.h

    15	
    16	static __always_inline bool arch_static_branch(struct static_key *key,
    17						       bool branch)
    18	{
    19		asm_volatile_goto(
    20			"	.option push				\n\t"
    21			"	.option norelax				\n\t"
    22			"	.option norvc				\n\t"
    23			"1:	nop					\n\t"
    24			"	.option pop				\n\t"
    25			"	.pushsection	__jump_table, \"aw\"	\n\t"
  > 26			"	.align		" RISCV_LGPTR "		\n\t"
    27			"	.long		1b - ., %l[label] - .	\n\t"
    28			"	" RISCV_PTR "	%0 - .			\n\t"
    29			"	.popsection				\n\t"
    30			:  :  "i"(&((char *)key)[branch]) :  : label);
    31	
    32		return false;
    33	label:
    34		return true;
    35	}
    36	

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
-------------- next part --------------
A non-text attachment was scrubbed...
Name: .config.gz
Type: application/gzip
Size: 65165 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-riscv/attachments/20200713/899406bb/attachment.gz>


More information about the linux-riscv mailing list