From FEDORA_PATCHES Mon Sep 17 00:00:00 2001
From: Jan Kratochvil <jan.kratochvil@redhat.com>
Date: Thu, 9 Aug 2018 17:18:49 +0200
Subject: gdb-rhbz1187581-power8-regs-7of7.patch

;; Add GDB support to access/display POWER8 registers (IBM, RH BZ 1187581).

commit a7f25a84f4cc1df5248c46346337f19a2a66af5a
Author: Simon Marchi <simon.marchi@ericsson.com>
Date:   Mon Aug 6 16:54:47 2018 -0400

    Fix compilation failure in remote.c

    A recent patch introduced a few of these:

    /home/emaisin/src/binutils-gdb/gdb/remote.c:12862:19: error: format not a string literal and no format arguments [-Werror=format-security]
         error (err_msg);
                       ^

    Fix them by replacing the call to error with

      error ("%s", err_msg);

    gdb/ChangeLog:

            * remote.c (remote_target::download_tracepoint): Fix format
            string errors.

+2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
+
+	* remote.c (remote_target::download_tracepoint): Fix format
+	string errors.
+
 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>

 	* tracefile.c: Include common/byte-vector.h.

diff --git a/gdb/remote.c b/gdb/remote.c
--- a/gdb/remote.c
+++ b/gdb/remote.c
@@ -12826,7 +12826,7 @@ remote_target::download_tracepoint (struct bp_location *loc)
 		  t->step_count, t->pass_count);
 
   if (ret < 0 || ret >= buf.size ())
-    error (err_msg);
+    error ("%s", err_msg);
 
   /* Fast tracepoints are mostly handled by the target, but we can
      tell the target how big of an instruction block should be moved
@@ -12846,7 +12846,7 @@ remote_target::download_tracepoint (struct bp_location *loc)
 			      gdb_insn_length (loc->gdbarch, tpaddr));
 
 	      if (ret < 0 || ret >= size_left)
-		error (err_msg);
+		error ("%s", err_msg);
 	    }
 	  else
 	    /* If it passed validation at definition but fails now,
@@ -12877,7 +12877,7 @@ remote_target::download_tracepoint (struct bp_location *loc)
 			      size_left, ":S");
 
 	      if (ret < 0 || ret >= size_left)
-		error (err_msg);
+		error ("%s", err_msg);
 	    }
 	  else
 	    error (_("Static tracepoint not valid during download"));
@@ -12905,14 +12905,14 @@ remote_target::download_tracepoint (struct bp_location *loc)
 			  size_left, ":X%x,", aexpr->len);
 
 	  if (ret < 0 || ret >= size_left)
-	    error (err_msg);
+	    error ("%s", err_msg);
 
 	  size_left = buf.size () - strlen (buf.data ());
 
 	  /* Two bytes to encode each aexpr byte, plus the terminating
 	     null byte.  */
 	  if (aexpr->len * 2 + 1 > size_left)
-	    error (err_msg);
+	    error ("%s", err_msg);
 
 	  pkt = buf.data () + strlen (buf.data ());
 
@@ -12933,7 +12933,7 @@ remote_target::download_tracepoint (struct bp_location *loc)
 		      size_left, "-");
 
       if (ret < 0 || ret >= size_left)
-	error (err_msg);
+	error ("%s", err_msg);
     }
 
   putpkt (buf.data ());
@@ -12956,7 +12956,7 @@ remote_target::download_tracepoint (struct bp_location *loc)
 		      has_more ? '-' : 0);
 
       if (ret < 0 || ret >= buf.size ())
-	error (err_msg);
+	error ("%s", err_msg);
 
       putpkt (buf.data ());
       remote_get_noisy_reply ();
@@ -12979,7 +12979,7 @@ remote_target::download_tracepoint (struct bp_location *loc)
 		      has_more ? "-" : "");
 
       if (ret < 0 || ret >= buf.size ())
-	error (err_msg);
+	error ("%s", err_msg);
 
       putpkt (buf.data ());
       remote_get_noisy_reply ();
@@ -12994,7 +12994,7 @@ remote_target::download_tracepoint (struct bp_location *loc)
 	  ret = snprintf (buf.data (), buf.size (), "QTDPsrc:");
 
 	  if (ret < 0 || ret >= buf.size ())
-	    error (err_msg);
+	    error ("%s", err_msg);
 
 	  encode_source_string (b->number, loc->address, "at",
 				event_location_to_string (b->location.get ()),
@@ -13010,7 +13010,7 @@ remote_target::download_tracepoint (struct bp_location *loc)
 	  ret = snprintf (buf.data (), buf.size (), "QTDPsrc:");
 
 	  if (ret < 0 || ret >= buf.size ())
-	    error (err_msg);
+	    error ("%s", err_msg);
 
 	  encode_source_string (b->number, loc->address,
 				"cond", b->cond_string,
