All of lore.kernel.org
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: kbuild-all@lists.01.org
Subject: [gustavoars-linux:for-next/kspp 5/5] kernel/debug/gdbstub.c:1049:4: warning: fallthrough annotation in unreachable code
Date: Mon, 12 Jul 2021 18:40:34 +0800	[thread overview]
Message-ID: <202107121816.wo6I99CS-lkp@intel.com> (raw)

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

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/gustavoars/linux.git for-next/kspp
head:   cd013b8a781567829cbb0764958b640642edc6ff
commit: cd013b8a781567829cbb0764958b640642edc6ff [5/5] Makefile: Enable -Wimplicit-fallthrough for Clang
config: riscv-randconfig-r031-20210711 (attached as .config)
compiler: clang version 13.0.0 (https://github.com/llvm/llvm-project 8d69635ed9ecf36fd0ca85906bfde17949671cbe)
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 riscv cross compiling tool for clang build
        # apt-get install binutils-riscv64-linux-gnu
        # https://git.kernel.org/pub/scm/linux/kernel/git/gustavoars/linux.git/commit/?id=cd013b8a781567829cbb0764958b640642edc6ff
        git remote add gustavoars-linux https://git.kernel.org/pub/scm/linux/kernel/git/gustavoars/linux.git
        git fetch --no-tags gustavoars-linux for-next/kspp
        git checkout cd013b8a781567829cbb0764958b640642edc6ff
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=riscv 

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

All warnings (new ones prefixed by >>):

>> kernel/debug/gdbstub.c:1049:4: warning: fallthrough annotation in unreachable code [-Wimplicit-fallthrough]
                           fallthrough;
                           ^
   include/linux/compiler_attributes.h:210:41: note: expanded from macro 'fallthrough'
   # define fallthrough                    __attribute__((__fallthrough__))
                                           ^
   1 warning generated.


vim +1049 kernel/debug/gdbstub.c

53197fc4954924 Jason Wessel        2010-04-02   953  
53197fc4954924 Jason Wessel        2010-04-02   954  /*
2bbd9b0f2b4ec0 Bhaskar Chowdhury   2021-03-17   955   * This function performs all gdbserial command processing
53197fc4954924 Jason Wessel        2010-04-02   956   */
53197fc4954924 Jason Wessel        2010-04-02   957  int gdb_serial_stub(struct kgdb_state *ks)
53197fc4954924 Jason Wessel        2010-04-02   958  {
53197fc4954924 Jason Wessel        2010-04-02   959  	int error = 0;
53197fc4954924 Jason Wessel        2010-04-02   960  	int tmp;
53197fc4954924 Jason Wessel        2010-04-02   961  
55751145dc1e08 Jason Wessel        2010-08-05   962  	/* Initialize comm buffer and globals. */
53197fc4954924 Jason Wessel        2010-04-02   963  	memset(remcom_out_buffer, 0, sizeof(remcom_out_buffer));
55751145dc1e08 Jason Wessel        2010-08-05   964  	kgdb_usethread = kgdb_info[ks->cpu].task;
55751145dc1e08 Jason Wessel        2010-08-05   965  	ks->kgdb_usethreadid = shadow_pid(kgdb_info[ks->cpu].task->pid);
55751145dc1e08 Jason Wessel        2010-08-05   966  	ks->pass_exception = 0;
53197fc4954924 Jason Wessel        2010-04-02   967  
53197fc4954924 Jason Wessel        2010-04-02   968  	if (kgdb_connected) {
84a0bd5b283072 Jason Wessel        2010-08-05   969  		unsigned char thref[BUF_THREAD_ID_SIZE];
53197fc4954924 Jason Wessel        2010-04-02   970  		char *ptr;
53197fc4954924 Jason Wessel        2010-04-02   971  
53197fc4954924 Jason Wessel        2010-04-02   972  		/* Reply to host that an exception has occurred */
53197fc4954924 Jason Wessel        2010-04-02   973  		ptr = remcom_out_buffer;
53197fc4954924 Jason Wessel        2010-04-02   974  		*ptr++ = 'T';
50e1499f468fd7 Andy Shevchenko     2011-10-31   975  		ptr = hex_byte_pack(ptr, ks->signo);
53197fc4954924 Jason Wessel        2010-04-02   976  		ptr += strlen(strcpy(ptr, "thread:"));
53197fc4954924 Jason Wessel        2010-04-02   977  		int_to_threadref(thref, shadow_pid(current->pid));
53197fc4954924 Jason Wessel        2010-04-02   978  		ptr = pack_threadid(ptr, thref);
53197fc4954924 Jason Wessel        2010-04-02   979  		*ptr++ = ';';
53197fc4954924 Jason Wessel        2010-04-02   980  		put_packet(remcom_out_buffer);
53197fc4954924 Jason Wessel        2010-04-02   981  	}
53197fc4954924 Jason Wessel        2010-04-02   982  
53197fc4954924 Jason Wessel        2010-04-02   983  	while (1) {
53197fc4954924 Jason Wessel        2010-04-02   984  		error = 0;
53197fc4954924 Jason Wessel        2010-04-02   985  
53197fc4954924 Jason Wessel        2010-04-02   986  		/* Clear the out buffer. */
53197fc4954924 Jason Wessel        2010-04-02   987  		memset(remcom_out_buffer, 0, sizeof(remcom_out_buffer));
53197fc4954924 Jason Wessel        2010-04-02   988  
53197fc4954924 Jason Wessel        2010-04-02   989  		get_packet(remcom_in_buffer);
53197fc4954924 Jason Wessel        2010-04-02   990  
53197fc4954924 Jason Wessel        2010-04-02   991  		switch (remcom_in_buffer[0]) {
53197fc4954924 Jason Wessel        2010-04-02   992  		case '?': /* gdbserial status */
53197fc4954924 Jason Wessel        2010-04-02   993  			gdb_cmd_status(ks);
53197fc4954924 Jason Wessel        2010-04-02   994  			break;
53197fc4954924 Jason Wessel        2010-04-02   995  		case 'g': /* return the value of the CPU registers */
53197fc4954924 Jason Wessel        2010-04-02   996  			gdb_cmd_getregs(ks);
53197fc4954924 Jason Wessel        2010-04-02   997  			break;
53197fc4954924 Jason Wessel        2010-04-02   998  		case 'G': /* set the value of the CPU registers - return OK */
53197fc4954924 Jason Wessel        2010-04-02   999  			gdb_cmd_setregs(ks);
53197fc4954924 Jason Wessel        2010-04-02  1000  			break;
53197fc4954924 Jason Wessel        2010-04-02  1001  		case 'm': /* mAA..AA,LLLL  Read LLLL bytes at address AA..AA */
53197fc4954924 Jason Wessel        2010-04-02  1002  			gdb_cmd_memread(ks);
53197fc4954924 Jason Wessel        2010-04-02  1003  			break;
53197fc4954924 Jason Wessel        2010-04-02  1004  		case 'M': /* MAA..AA,LLLL: Write LLLL bytes at address AA..AA */
53197fc4954924 Jason Wessel        2010-04-02  1005  			gdb_cmd_memwrite(ks);
53197fc4954924 Jason Wessel        2010-04-02  1006  			break;
55751145dc1e08 Jason Wessel        2010-08-05  1007  #if DBG_MAX_REG_NUM > 0
55751145dc1e08 Jason Wessel        2010-08-05  1008  		case 'p': /* pXX Return gdb register XX (in hex) */
55751145dc1e08 Jason Wessel        2010-08-05  1009  			gdb_cmd_reg_get(ks);
55751145dc1e08 Jason Wessel        2010-08-05  1010  			break;
55751145dc1e08 Jason Wessel        2010-08-05  1011  		case 'P': /* PXX=aaaa Set gdb register XX to aaaa (in hex) */
55751145dc1e08 Jason Wessel        2010-08-05  1012  			gdb_cmd_reg_set(ks);
55751145dc1e08 Jason Wessel        2010-08-05  1013  			break;
55751145dc1e08 Jason Wessel        2010-08-05  1014  #endif /* DBG_MAX_REG_NUM > 0 */
53197fc4954924 Jason Wessel        2010-04-02  1015  		case 'X': /* XAA..AA,LLLL: Write LLLL bytes at address AA..AA */
53197fc4954924 Jason Wessel        2010-04-02  1016  			gdb_cmd_binwrite(ks);
53197fc4954924 Jason Wessel        2010-04-02  1017  			break;
53197fc4954924 Jason Wessel        2010-04-02  1018  			/* kill or detach. KGDB should treat this like a
53197fc4954924 Jason Wessel        2010-04-02  1019  			 * continue.
53197fc4954924 Jason Wessel        2010-04-02  1020  			 */
53197fc4954924 Jason Wessel        2010-04-02  1021  		case 'D': /* Debugger detach */
53197fc4954924 Jason Wessel        2010-04-02  1022  		case 'k': /* Debugger detach via kill */
53197fc4954924 Jason Wessel        2010-04-02  1023  			gdb_cmd_detachkill(ks);
53197fc4954924 Jason Wessel        2010-04-02  1024  			goto default_handle;
53197fc4954924 Jason Wessel        2010-04-02  1025  		case 'R': /* Reboot */
53197fc4954924 Jason Wessel        2010-04-02  1026  			if (gdb_cmd_reboot(ks))
53197fc4954924 Jason Wessel        2010-04-02  1027  				goto default_handle;
53197fc4954924 Jason Wessel        2010-04-02  1028  			break;
53197fc4954924 Jason Wessel        2010-04-02  1029  		case 'q': /* query command */
53197fc4954924 Jason Wessel        2010-04-02  1030  			gdb_cmd_query(ks);
53197fc4954924 Jason Wessel        2010-04-02  1031  			break;
53197fc4954924 Jason Wessel        2010-04-02  1032  		case 'H': /* task related */
53197fc4954924 Jason Wessel        2010-04-02  1033  			gdb_cmd_task(ks);
53197fc4954924 Jason Wessel        2010-04-02  1034  			break;
53197fc4954924 Jason Wessel        2010-04-02  1035  		case 'T': /* Query thread status */
53197fc4954924 Jason Wessel        2010-04-02  1036  			gdb_cmd_thread(ks);
53197fc4954924 Jason Wessel        2010-04-02  1037  			break;
53197fc4954924 Jason Wessel        2010-04-02  1038  		case 'z': /* Break point remove */
53197fc4954924 Jason Wessel        2010-04-02  1039  		case 'Z': /* Break point set */
53197fc4954924 Jason Wessel        2010-04-02  1040  			gdb_cmd_break(ks);
53197fc4954924 Jason Wessel        2010-04-02  1041  			break;
dcc7871128e994 Jason Wessel        2010-05-20  1042  #ifdef CONFIG_KGDB_KDB
dcc7871128e994 Jason Wessel        2010-05-20  1043  		case '3': /* Escape into back into kdb */
dcc7871128e994 Jason Wessel        2010-05-20  1044  			if (remcom_in_buffer[1] == '\0') {
dcc7871128e994 Jason Wessel        2010-05-20  1045  				gdb_cmd_detachkill(ks);
dcc7871128e994 Jason Wessel        2010-05-20  1046  				return DBG_PASS_EVENT;
dcc7871128e994 Jason Wessel        2010-05-20  1047  			}
dcc7871128e994 Jason Wessel        2010-05-20  1048  #endif
df561f6688fef7 Gustavo A. R. Silva 2020-08-23 @1049  			fallthrough;
53197fc4954924 Jason Wessel        2010-04-02  1050  		case 'C': /* Exception passing */
53197fc4954924 Jason Wessel        2010-04-02  1051  			tmp = gdb_cmd_exception_pass(ks);
53197fc4954924 Jason Wessel        2010-04-02  1052  			if (tmp > 0)
53197fc4954924 Jason Wessel        2010-04-02  1053  				goto default_handle;
53197fc4954924 Jason Wessel        2010-04-02  1054  			if (tmp == 0)
53197fc4954924 Jason Wessel        2010-04-02  1055  				break;
df561f6688fef7 Gustavo A. R. Silva 2020-08-23  1056  			fallthrough;	/* on tmp < 0 */
53197fc4954924 Jason Wessel        2010-04-02  1057  		case 'c': /* Continue packet */
53197fc4954924 Jason Wessel        2010-04-02  1058  		case 's': /* Single step packet */
53197fc4954924 Jason Wessel        2010-04-02  1059  			if (kgdb_contthread && kgdb_contthread != current) {
53197fc4954924 Jason Wessel        2010-04-02  1060  				/* Can't switch threads in kgdb */
53197fc4954924 Jason Wessel        2010-04-02  1061  				error_packet(remcom_out_buffer, -EINVAL);
53197fc4954924 Jason Wessel        2010-04-02  1062  				break;
53197fc4954924 Jason Wessel        2010-04-02  1063  			}
df561f6688fef7 Gustavo A. R. Silva 2020-08-23  1064  			fallthrough;	/* to default processing */
53197fc4954924 Jason Wessel        2010-04-02  1065  		default:
53197fc4954924 Jason Wessel        2010-04-02  1066  default_handle:
53197fc4954924 Jason Wessel        2010-04-02  1067  			error = kgdb_arch_handle_exception(ks->ex_vector,
53197fc4954924 Jason Wessel        2010-04-02  1068  						ks->signo,
53197fc4954924 Jason Wessel        2010-04-02  1069  						ks->err_code,
53197fc4954924 Jason Wessel        2010-04-02  1070  						remcom_in_buffer,
53197fc4954924 Jason Wessel        2010-04-02  1071  						remcom_out_buffer,
53197fc4954924 Jason Wessel        2010-04-02  1072  						ks->linux_regs);
53197fc4954924 Jason Wessel        2010-04-02  1073  			/*
53197fc4954924 Jason Wessel        2010-04-02  1074  			 * Leave cmd processing on error, detach,
53197fc4954924 Jason Wessel        2010-04-02  1075  			 * kill, continue, or single step.
53197fc4954924 Jason Wessel        2010-04-02  1076  			 */
53197fc4954924 Jason Wessel        2010-04-02  1077  			if (error >= 0 || remcom_in_buffer[0] == 'D' ||
53197fc4954924 Jason Wessel        2010-04-02  1078  			    remcom_in_buffer[0] == 'k') {
53197fc4954924 Jason Wessel        2010-04-02  1079  				error = 0;
53197fc4954924 Jason Wessel        2010-04-02  1080  				goto kgdb_exit;
53197fc4954924 Jason Wessel        2010-04-02  1081  			}
53197fc4954924 Jason Wessel        2010-04-02  1082  
53197fc4954924 Jason Wessel        2010-04-02  1083  		}
53197fc4954924 Jason Wessel        2010-04-02  1084  
53197fc4954924 Jason Wessel        2010-04-02  1085  		/* reply to the request */
53197fc4954924 Jason Wessel        2010-04-02  1086  		put_packet(remcom_out_buffer);
53197fc4954924 Jason Wessel        2010-04-02  1087  	}
53197fc4954924 Jason Wessel        2010-04-02  1088  
53197fc4954924 Jason Wessel        2010-04-02  1089  kgdb_exit:
53197fc4954924 Jason Wessel        2010-04-02  1090  	if (ks->pass_exception)
53197fc4954924 Jason Wessel        2010-04-02  1091  		error = 1;
53197fc4954924 Jason Wessel        2010-04-02  1092  	return error;
53197fc4954924 Jason Wessel        2010-04-02  1093  }
dcc7871128e994 Jason Wessel        2010-05-20  1094  

:::::: The code at line 1049 was first introduced by commit
:::::: df561f6688fef775baa341a0f5d960becd248b11 treewide: Use fallthrough pseudo-keyword

:::::: TO: Gustavo A. R. Silva <gustavoars@kernel.org>
:::::: CC: Gustavo A. R. Silva <gustavoars@kernel.org>

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

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

WARNING: multiple messages have this Message-ID (diff)
From: kernel test robot <lkp@intel.com>
To: "Gustavo A. R. Silva" <gustavoars@kernel.org>
Cc: clang-built-linux@googlegroups.com, kbuild-all@lists.01.org,
	"Gustavo A. R. Silva" <gustavo@embeddedor.com>,
	LKML <linux-kernel@vger.kernel.org>,
	Kees Cook <keescook@chromium.org>
Subject: [gustavoars-linux:for-next/kspp 5/5] kernel/debug/gdbstub.c:1049:4: warning: fallthrough annotation in unreachable code
Date: Mon, 12 Jul 2021 18:40:34 +0800	[thread overview]
Message-ID: <202107121816.wo6I99CS-lkp@intel.com> (raw)

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

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/gustavoars/linux.git for-next/kspp
head:   cd013b8a781567829cbb0764958b640642edc6ff
commit: cd013b8a781567829cbb0764958b640642edc6ff [5/5] Makefile: Enable -Wimplicit-fallthrough for Clang
config: riscv-randconfig-r031-20210711 (attached as .config)
compiler: clang version 13.0.0 (https://github.com/llvm/llvm-project 8d69635ed9ecf36fd0ca85906bfde17949671cbe)
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 riscv cross compiling tool for clang build
        # apt-get install binutils-riscv64-linux-gnu
        # https://git.kernel.org/pub/scm/linux/kernel/git/gustavoars/linux.git/commit/?id=cd013b8a781567829cbb0764958b640642edc6ff
        git remote add gustavoars-linux https://git.kernel.org/pub/scm/linux/kernel/git/gustavoars/linux.git
        git fetch --no-tags gustavoars-linux for-next/kspp
        git checkout cd013b8a781567829cbb0764958b640642edc6ff
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=riscv 

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

All warnings (new ones prefixed by >>):

>> kernel/debug/gdbstub.c:1049:4: warning: fallthrough annotation in unreachable code [-Wimplicit-fallthrough]
                           fallthrough;
                           ^
   include/linux/compiler_attributes.h:210:41: note: expanded from macro 'fallthrough'
   # define fallthrough                    __attribute__((__fallthrough__))
                                           ^
   1 warning generated.


vim +1049 kernel/debug/gdbstub.c

53197fc4954924 Jason Wessel        2010-04-02   953  
53197fc4954924 Jason Wessel        2010-04-02   954  /*
2bbd9b0f2b4ec0 Bhaskar Chowdhury   2021-03-17   955   * This function performs all gdbserial command processing
53197fc4954924 Jason Wessel        2010-04-02   956   */
53197fc4954924 Jason Wessel        2010-04-02   957  int gdb_serial_stub(struct kgdb_state *ks)
53197fc4954924 Jason Wessel        2010-04-02   958  {
53197fc4954924 Jason Wessel        2010-04-02   959  	int error = 0;
53197fc4954924 Jason Wessel        2010-04-02   960  	int tmp;
53197fc4954924 Jason Wessel        2010-04-02   961  
55751145dc1e08 Jason Wessel        2010-08-05   962  	/* Initialize comm buffer and globals. */
53197fc4954924 Jason Wessel        2010-04-02   963  	memset(remcom_out_buffer, 0, sizeof(remcom_out_buffer));
55751145dc1e08 Jason Wessel        2010-08-05   964  	kgdb_usethread = kgdb_info[ks->cpu].task;
55751145dc1e08 Jason Wessel        2010-08-05   965  	ks->kgdb_usethreadid = shadow_pid(kgdb_info[ks->cpu].task->pid);
55751145dc1e08 Jason Wessel        2010-08-05   966  	ks->pass_exception = 0;
53197fc4954924 Jason Wessel        2010-04-02   967  
53197fc4954924 Jason Wessel        2010-04-02   968  	if (kgdb_connected) {
84a0bd5b283072 Jason Wessel        2010-08-05   969  		unsigned char thref[BUF_THREAD_ID_SIZE];
53197fc4954924 Jason Wessel        2010-04-02   970  		char *ptr;
53197fc4954924 Jason Wessel        2010-04-02   971  
53197fc4954924 Jason Wessel        2010-04-02   972  		/* Reply to host that an exception has occurred */
53197fc4954924 Jason Wessel        2010-04-02   973  		ptr = remcom_out_buffer;
53197fc4954924 Jason Wessel        2010-04-02   974  		*ptr++ = 'T';
50e1499f468fd7 Andy Shevchenko     2011-10-31   975  		ptr = hex_byte_pack(ptr, ks->signo);
53197fc4954924 Jason Wessel        2010-04-02   976  		ptr += strlen(strcpy(ptr, "thread:"));
53197fc4954924 Jason Wessel        2010-04-02   977  		int_to_threadref(thref, shadow_pid(current->pid));
53197fc4954924 Jason Wessel        2010-04-02   978  		ptr = pack_threadid(ptr, thref);
53197fc4954924 Jason Wessel        2010-04-02   979  		*ptr++ = ';';
53197fc4954924 Jason Wessel        2010-04-02   980  		put_packet(remcom_out_buffer);
53197fc4954924 Jason Wessel        2010-04-02   981  	}
53197fc4954924 Jason Wessel        2010-04-02   982  
53197fc4954924 Jason Wessel        2010-04-02   983  	while (1) {
53197fc4954924 Jason Wessel        2010-04-02   984  		error = 0;
53197fc4954924 Jason Wessel        2010-04-02   985  
53197fc4954924 Jason Wessel        2010-04-02   986  		/* Clear the out buffer. */
53197fc4954924 Jason Wessel        2010-04-02   987  		memset(remcom_out_buffer, 0, sizeof(remcom_out_buffer));
53197fc4954924 Jason Wessel        2010-04-02   988  
53197fc4954924 Jason Wessel        2010-04-02   989  		get_packet(remcom_in_buffer);
53197fc4954924 Jason Wessel        2010-04-02   990  
53197fc4954924 Jason Wessel        2010-04-02   991  		switch (remcom_in_buffer[0]) {
53197fc4954924 Jason Wessel        2010-04-02   992  		case '?': /* gdbserial status */
53197fc4954924 Jason Wessel        2010-04-02   993  			gdb_cmd_status(ks);
53197fc4954924 Jason Wessel        2010-04-02   994  			break;
53197fc4954924 Jason Wessel        2010-04-02   995  		case 'g': /* return the value of the CPU registers */
53197fc4954924 Jason Wessel        2010-04-02   996  			gdb_cmd_getregs(ks);
53197fc4954924 Jason Wessel        2010-04-02   997  			break;
53197fc4954924 Jason Wessel        2010-04-02   998  		case 'G': /* set the value of the CPU registers - return OK */
53197fc4954924 Jason Wessel        2010-04-02   999  			gdb_cmd_setregs(ks);
53197fc4954924 Jason Wessel        2010-04-02  1000  			break;
53197fc4954924 Jason Wessel        2010-04-02  1001  		case 'm': /* mAA..AA,LLLL  Read LLLL bytes at address AA..AA */
53197fc4954924 Jason Wessel        2010-04-02  1002  			gdb_cmd_memread(ks);
53197fc4954924 Jason Wessel        2010-04-02  1003  			break;
53197fc4954924 Jason Wessel        2010-04-02  1004  		case 'M': /* MAA..AA,LLLL: Write LLLL bytes at address AA..AA */
53197fc4954924 Jason Wessel        2010-04-02  1005  			gdb_cmd_memwrite(ks);
53197fc4954924 Jason Wessel        2010-04-02  1006  			break;
55751145dc1e08 Jason Wessel        2010-08-05  1007  #if DBG_MAX_REG_NUM > 0
55751145dc1e08 Jason Wessel        2010-08-05  1008  		case 'p': /* pXX Return gdb register XX (in hex) */
55751145dc1e08 Jason Wessel        2010-08-05  1009  			gdb_cmd_reg_get(ks);
55751145dc1e08 Jason Wessel        2010-08-05  1010  			break;
55751145dc1e08 Jason Wessel        2010-08-05  1011  		case 'P': /* PXX=aaaa Set gdb register XX to aaaa (in hex) */
55751145dc1e08 Jason Wessel        2010-08-05  1012  			gdb_cmd_reg_set(ks);
55751145dc1e08 Jason Wessel        2010-08-05  1013  			break;
55751145dc1e08 Jason Wessel        2010-08-05  1014  #endif /* DBG_MAX_REG_NUM > 0 */
53197fc4954924 Jason Wessel        2010-04-02  1015  		case 'X': /* XAA..AA,LLLL: Write LLLL bytes at address AA..AA */
53197fc4954924 Jason Wessel        2010-04-02  1016  			gdb_cmd_binwrite(ks);
53197fc4954924 Jason Wessel        2010-04-02  1017  			break;
53197fc4954924 Jason Wessel        2010-04-02  1018  			/* kill or detach. KGDB should treat this like a
53197fc4954924 Jason Wessel        2010-04-02  1019  			 * continue.
53197fc4954924 Jason Wessel        2010-04-02  1020  			 */
53197fc4954924 Jason Wessel        2010-04-02  1021  		case 'D': /* Debugger detach */
53197fc4954924 Jason Wessel        2010-04-02  1022  		case 'k': /* Debugger detach via kill */
53197fc4954924 Jason Wessel        2010-04-02  1023  			gdb_cmd_detachkill(ks);
53197fc4954924 Jason Wessel        2010-04-02  1024  			goto default_handle;
53197fc4954924 Jason Wessel        2010-04-02  1025  		case 'R': /* Reboot */
53197fc4954924 Jason Wessel        2010-04-02  1026  			if (gdb_cmd_reboot(ks))
53197fc4954924 Jason Wessel        2010-04-02  1027  				goto default_handle;
53197fc4954924 Jason Wessel        2010-04-02  1028  			break;
53197fc4954924 Jason Wessel        2010-04-02  1029  		case 'q': /* query command */
53197fc4954924 Jason Wessel        2010-04-02  1030  			gdb_cmd_query(ks);
53197fc4954924 Jason Wessel        2010-04-02  1031  			break;
53197fc4954924 Jason Wessel        2010-04-02  1032  		case 'H': /* task related */
53197fc4954924 Jason Wessel        2010-04-02  1033  			gdb_cmd_task(ks);
53197fc4954924 Jason Wessel        2010-04-02  1034  			break;
53197fc4954924 Jason Wessel        2010-04-02  1035  		case 'T': /* Query thread status */
53197fc4954924 Jason Wessel        2010-04-02  1036  			gdb_cmd_thread(ks);
53197fc4954924 Jason Wessel        2010-04-02  1037  			break;
53197fc4954924 Jason Wessel        2010-04-02  1038  		case 'z': /* Break point remove */
53197fc4954924 Jason Wessel        2010-04-02  1039  		case 'Z': /* Break point set */
53197fc4954924 Jason Wessel        2010-04-02  1040  			gdb_cmd_break(ks);
53197fc4954924 Jason Wessel        2010-04-02  1041  			break;
dcc7871128e994 Jason Wessel        2010-05-20  1042  #ifdef CONFIG_KGDB_KDB
dcc7871128e994 Jason Wessel        2010-05-20  1043  		case '3': /* Escape into back into kdb */
dcc7871128e994 Jason Wessel        2010-05-20  1044  			if (remcom_in_buffer[1] == '\0') {
dcc7871128e994 Jason Wessel        2010-05-20  1045  				gdb_cmd_detachkill(ks);
dcc7871128e994 Jason Wessel        2010-05-20  1046  				return DBG_PASS_EVENT;
dcc7871128e994 Jason Wessel        2010-05-20  1047  			}
dcc7871128e994 Jason Wessel        2010-05-20  1048  #endif
df561f6688fef7 Gustavo A. R. Silva 2020-08-23 @1049  			fallthrough;
53197fc4954924 Jason Wessel        2010-04-02  1050  		case 'C': /* Exception passing */
53197fc4954924 Jason Wessel        2010-04-02  1051  			tmp = gdb_cmd_exception_pass(ks);
53197fc4954924 Jason Wessel        2010-04-02  1052  			if (tmp > 0)
53197fc4954924 Jason Wessel        2010-04-02  1053  				goto default_handle;
53197fc4954924 Jason Wessel        2010-04-02  1054  			if (tmp == 0)
53197fc4954924 Jason Wessel        2010-04-02  1055  				break;
df561f6688fef7 Gustavo A. R. Silva 2020-08-23  1056  			fallthrough;	/* on tmp < 0 */
53197fc4954924 Jason Wessel        2010-04-02  1057  		case 'c': /* Continue packet */
53197fc4954924 Jason Wessel        2010-04-02  1058  		case 's': /* Single step packet */
53197fc4954924 Jason Wessel        2010-04-02  1059  			if (kgdb_contthread && kgdb_contthread != current) {
53197fc4954924 Jason Wessel        2010-04-02  1060  				/* Can't switch threads in kgdb */
53197fc4954924 Jason Wessel        2010-04-02  1061  				error_packet(remcom_out_buffer, -EINVAL);
53197fc4954924 Jason Wessel        2010-04-02  1062  				break;
53197fc4954924 Jason Wessel        2010-04-02  1063  			}
df561f6688fef7 Gustavo A. R. Silva 2020-08-23  1064  			fallthrough;	/* to default processing */
53197fc4954924 Jason Wessel        2010-04-02  1065  		default:
53197fc4954924 Jason Wessel        2010-04-02  1066  default_handle:
53197fc4954924 Jason Wessel        2010-04-02  1067  			error = kgdb_arch_handle_exception(ks->ex_vector,
53197fc4954924 Jason Wessel        2010-04-02  1068  						ks->signo,
53197fc4954924 Jason Wessel        2010-04-02  1069  						ks->err_code,
53197fc4954924 Jason Wessel        2010-04-02  1070  						remcom_in_buffer,
53197fc4954924 Jason Wessel        2010-04-02  1071  						remcom_out_buffer,
53197fc4954924 Jason Wessel        2010-04-02  1072  						ks->linux_regs);
53197fc4954924 Jason Wessel        2010-04-02  1073  			/*
53197fc4954924 Jason Wessel        2010-04-02  1074  			 * Leave cmd processing on error, detach,
53197fc4954924 Jason Wessel        2010-04-02  1075  			 * kill, continue, or single step.
53197fc4954924 Jason Wessel        2010-04-02  1076  			 */
53197fc4954924 Jason Wessel        2010-04-02  1077  			if (error >= 0 || remcom_in_buffer[0] == 'D' ||
53197fc4954924 Jason Wessel        2010-04-02  1078  			    remcom_in_buffer[0] == 'k') {
53197fc4954924 Jason Wessel        2010-04-02  1079  				error = 0;
53197fc4954924 Jason Wessel        2010-04-02  1080  				goto kgdb_exit;
53197fc4954924 Jason Wessel        2010-04-02  1081  			}
53197fc4954924 Jason Wessel        2010-04-02  1082  
53197fc4954924 Jason Wessel        2010-04-02  1083  		}
53197fc4954924 Jason Wessel        2010-04-02  1084  
53197fc4954924 Jason Wessel        2010-04-02  1085  		/* reply to the request */
53197fc4954924 Jason Wessel        2010-04-02  1086  		put_packet(remcom_out_buffer);
53197fc4954924 Jason Wessel        2010-04-02  1087  	}
53197fc4954924 Jason Wessel        2010-04-02  1088  
53197fc4954924 Jason Wessel        2010-04-02  1089  kgdb_exit:
53197fc4954924 Jason Wessel        2010-04-02  1090  	if (ks->pass_exception)
53197fc4954924 Jason Wessel        2010-04-02  1091  		error = 1;
53197fc4954924 Jason Wessel        2010-04-02  1092  	return error;
53197fc4954924 Jason Wessel        2010-04-02  1093  }
dcc7871128e994 Jason Wessel        2010-05-20  1094  

:::::: The code at line 1049 was first introduced by commit
:::::: df561f6688fef775baa341a0f5d960becd248b11 treewide: Use fallthrough pseudo-keyword

:::::: TO: Gustavo A. R. Silva <gustavoars@kernel.org>
:::::: CC: Gustavo A. R. Silva <gustavoars@kernel.org>

---
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: 38504 bytes --]

             reply	other threads:[~2021-07-12 10:40 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-07-12 10:40 kernel test robot [this message]
2021-07-12 10:40 ` [gustavoars-linux:for-next/kspp 5/5] kernel/debug/gdbstub.c:1049:4: warning: fallthrough annotation in unreachable code kernel test robot
2021-07-12 11:22 ` Andy Shevchenko
2021-07-12 11:22   ` Andy Shevchenko

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=202107121816.wo6I99CS-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=kbuild-all@lists.01.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.