Browse Source

kgdb: Replace strstr() by strchr() for single-character needles

Some versions of gcc replace calls to strstr() with single-character
"needle" string parameters by calls to strchr() behind our back.
This causes linking errors if strchr() is defined as an inline function
in <asm/string.h> (e.g. on m68k, which BTW doesn't have kgdb support).

Prevent this by explicitly calling strchr() instead.

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
Geert Uytterhoeven 15 năm trước cách đây
mục cha
commit
59d309f9c8
1 tập tin đã thay đổi với 4 bổ sung4 xóa
  1. 4 4
      drivers/misc/kgdbts.c

+ 4 - 4
drivers/misc/kgdbts.c

@@ -891,16 +891,16 @@ static void kgdbts_run_tests(void)
 	int nmi_sleep = 0;
 	int nmi_sleep = 0;
 	int i;
 	int i;
 
 
-	ptr = strstr(config, "F");
+	ptr = strchr(config, 'F');
 	if (ptr)
 	if (ptr)
 		fork_test = simple_strtol(ptr + 1, NULL, 10);
 		fork_test = simple_strtol(ptr + 1, NULL, 10);
-	ptr = strstr(config, "S");
+	ptr = strchr(config, 'S');
 	if (ptr)
 	if (ptr)
 		do_sys_open_test = simple_strtol(ptr + 1, NULL, 10);
 		do_sys_open_test = simple_strtol(ptr + 1, NULL, 10);
-	ptr = strstr(config, "N");
+	ptr = strchr(config, 'N');
 	if (ptr)
 	if (ptr)
 		nmi_sleep = simple_strtol(ptr+1, NULL, 10);
 		nmi_sleep = simple_strtol(ptr+1, NULL, 10);
-	ptr = strstr(config, "I");
+	ptr = strchr(config, 'I');
 	if (ptr)
 	if (ptr)
 		sstep_test = simple_strtol(ptr+1, NULL, 10);
 		sstep_test = simple_strtol(ptr+1, NULL, 10);