Change references to flashrom-stable

Adapt all mentions of the mailing list and also the version print.

Change-Id: Ib4a3271422ee6cf4d0efb8c3fa858b66a22c0a33
Signed-off-by: Nico Huber <nico.h@gmx.de>
Reviewed-on: https://review.coreboot.org/c/flashrom-stable/+/70922
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
diff --git a/Makefile b/Makefile
index ef1d186..0f546de 100644
--- a/Makefile
+++ b/Makefile
@@ -1258,7 +1258,7 @@
 
 $(PROGRAM).8: $(PROGRAM).8.tmpl
 	@# Add the man page change date and version to the man page
-	@sed -e 's#.TH FLASHROM 8 .*#.TH FLASHROM 8 "$(MAN_DATE)" "$(VERSION)" "$(MAN_DATE)"#' <$< >$@
+	@sed -e 's#.TH FLASHROM 8 .*#.TH FLASHROM 8 "$(MAN_DATE)" "flashrom-stable-$(VERSION)" "$(MAN_DATE)"#' <$< >$@
 
 install: $(PROGRAM)$(EXEC_SUFFIX) $(PROGRAM).8
 	mkdir -p $(DESTDIR)$(PREFIX)/sbin
diff --git a/bitbang_spi.c b/bitbang_spi.c
index 6d14961..d22b6fc 100644
--- a/bitbang_spi.c
+++ b/bitbang_spi.c
@@ -97,7 +97,7 @@
 	    (master->request_bus && !master->release_bus) ||
 	    (!master->request_bus && master->release_bus)) {
 		msg_perr("Incomplete SPI bitbang master setting!\n"
-			 "Please report a bug at flashrom@flashrom.org\n");
+			 "Please report a bug at flashrom-stable@flashrom.org\n");
 		return ERROR_FLASHROM_BUG;
 	}
 
diff --git a/board_enable.c b/board_enable.c
index bfdd858..959b49d 100644
--- a/board_enable.c
+++ b/board_enable.c
@@ -618,9 +618,9 @@
 			/* The data sheet contradicts itself about max size. */
 			max_rom_decode.parallel = 1024 * 1024;
 			msg_pinfo("IT8705F with very unusual settings.\n"
-				  "Please send the output of \"flashrom -V -p internal\" to flashrom@flashrom.org\n"
-				  "with \"IT8705: your board name: flashrom -V\" as the subject to help us finish\n"
-				  "support for your Super I/O. Thanks.\n");
+				  "Please send the output of \"flashrom -V -p internal\" to\n"
+				  "flashrom-stable@flashrom.org with \"IT8705: your board name: flashrom -V\"\n"
+				  "as the subject to help us finish support for your Super I/O. Thanks.\n");
 			ret = 1;
 		} else if (tmp & 0x08) {
 			max_rom_decode.parallel = 512 * 1024;
@@ -2549,7 +2549,7 @@
 		const struct board_match *b = &board_matches[i];
 		if (b->vendor_name == NULL || b->board_name == NULL) {
 			msg_gerr("ERROR: Board enable #%d does not define a vendor and board name.\n"
-				 "Please report a bug at flashrom@flashrom.org\n", i);
+				 "Please report a bug at flashrom-stable@flashrom.org\n", i);
 			ret = 1;
 			continue;
 		}
@@ -2558,7 +2558,7 @@
 		    ((b->lb_vendor == NULL) ^ (b->lb_part == NULL)) ||
 		    (b->max_rom_decode_parallel == 0 && b->enable == NULL)) {
 			msg_gerr("ERROR: Board enable for %s %s is misdefined.\n"
-				 "Please report a bug at flashrom@flashrom.org\n",
+				 "Please report a bug at flashrom-stable@flashrom.org\n",
 				 b->vendor_name, b->board_name);
 			ret = 1;
 		}
@@ -2626,8 +2626,8 @@
 
 		if (partmatch) {
 			/* More than one entry has a matching name. */
-			msg_perr("Board name \"%s\":\"%s\" and PCI IDs matched more than one board enable "
-				 "entry. Please report a bug at flashrom@flashrom.org\n", vendor, model);
+			msg_perr("Board name \"%s\":\"%s\" and PCI IDs matched more than one board enable\n"
+				 "entry. Please report a bug at flashrom-stable@flashrom.org\n", vendor, model);
 			return NULL;
 		}
 		partmatch = board;
@@ -2710,7 +2710,7 @@
 		return 1;
 	}
 	msg_pwarn("NOTE: Running an untested board enable procedure.\n"
-		  "Please report success/failure to flashrom@flashrom.org.\n");
+		  "Please report success/failure to flashrom-stable@flashrom.org.\n");
 	return 0;
 }
 
diff --git a/ch341a_spi.c b/ch341a_spi.c
index f415617..67a78ee 100644
--- a/ch341a_spi.c
+++ b/ch341a_spi.c
@@ -422,7 +422,8 @@
 static int ch341a_spi_init(void)
 {
 	if (handle != NULL) {
-		msg_cerr("%s: handle already set! Please report a bug at flashrom@flashrom.org\n", __func__);
+		msg_cerr("%s: handle already set! Please report a bug at flashrom-stable@flashrom.org\n",
+			 __func__);
 		return -1;
 	}
 
diff --git a/chipset_enable.c b/chipset_enable.c
index be886ba..f052685 100644
--- a/chipset_enable.c
+++ b/chipset_enable.c
@@ -1623,8 +1623,8 @@
 		internal_buses_supported = BUS_NONE;
 		msg_pwarn("Flash bus type is unknown (none)\n");
 		msg_pinfo("Please send the log files created by \"flashrom -p internal -o logfile\" to\n"
-			  "flashrom@flashrom.org with \"your board name: flashrom -V\" as the subject to\n"
-			  "help us finish support for your chipset. Thanks.\n");
+			  "flashrom-stable@flashrom.org with \"your board name: flashrom -V\" as the subject\n"
+			  "to help us finish support for your chipset. Thanks.\n");
 		return ERROR_NONFATAL;
 	}
 
@@ -2154,7 +2154,7 @@
 			msg_pwarn("Warning: unexpected second chipset match: "
 				    "\"%s %s\"\n"
 				  "ignoring, please report lspci and board URL "
-				    "to flashrom@flashrom.org\n"
+				    "to flashrom-stable@flashrom.org\n"
 				  "with \'CHIPSET: your board name\' in the "
 				    "subject line.\n",
 				chipset_enables[i].vendor_name,
@@ -2179,8 +2179,8 @@
 				  "flashrom *and* were (not) able to "
 				  "successfully update your firmware with it,\n"
 				  "then please email a report to "
-				  "flashrom@flashrom.org including a verbose "
-				  "(-V) log.\nThank you!\n");
+				  "flashrom-stable@flashrom.org including a\n"
+				  "verbose (-V) log.\nThank you!\n");
 		}
 		if (!(chipset_enables[i].buses & (internal_buses_supported | BUS_SPI))) {
 			msg_pdbg("Skipping chipset enable: No supported buses enabled.\n");
diff --git a/cli_common.c b/cli_common.c
index 606eaa1..8cc1eda 100644
--- a/cli_common.c
+++ b/cli_common.c
@@ -69,10 +69,10 @@
 		}
 		msg_cinfo("The test status of this chip may have been updated in the latest development\n"
 			  "version of flashrom. If you are running the latest development version,\n"
-			  "please email a report to flashrom@flashrom.org if any of the above operations\n"
-			  "work correctly for you with this flash chip. Please include the flashrom log\n"
-			  "file for all operations you tested (see the man page for details), and mention\n"
-			  "which mainboard or programmer you tested in the subject line.\n"
+			  "please email a report to flashrom-stable@flashrom.org if any of the above\n"
+			  "operations work correctly for you with this flash chip. Please include the\n"
+			  "flashrom log file for all operations you tested (see the man page for details),\n"
+			  "and mention which mainboard or programmer you tested in the subject line.\n"
 			  "Thanks for your help!\n");
 	}
 }
diff --git a/dediprog.c b/dediprog.c
index e18356b..841cc02 100644
--- a/dediprog.c
+++ b/dediprog.c
@@ -375,8 +375,8 @@
 	const struct dediprog_data *dp_data = flash->mst->spi.data;
 
 	if (count >= 1 << 16) {
-		msg_perr("%s: Unsupported transfer length of %u blocks! "
-			 "Please report a bug at flashrom@flashrom.org\n",
+		msg_perr("%s: Unsupported transfer length of %u blocks!\n"
+			 "Please report a bug at flashrom-stable@flashrom.org\n",
 			 __func__, count);
 		return 1;
 	}
@@ -459,7 +459,8 @@
 		return 0;
 
 	if ((start % chunksize) || (len % chunksize)) {
-		msg_perr("%s: Unaligned start=%i, len=%i! Please report a bug at flashrom@flashrom.org\n",
+		msg_perr("%s: Unaligned start=%i, len=%i!\n"
+			 "Please report a bug at flashrom-stable@flashrom.org\n",
 			 __func__, start, len);
 		return 1;
 	}
@@ -609,13 +610,15 @@
 	 */
 	if (chunksize != 256) {
 		msg_perr("%s: Chunk sizes other than 256 bytes are unsupported, chunksize=%u!\n"
-			 "Please report a bug at flashrom@flashrom.org\n", __func__, chunksize);
+			 "Please report a bug at flashrom-stable@flashrom.org\n",
+			 __func__, chunksize);
 		return 1;
 	}
 
 	if ((start % chunksize) || (len % chunksize)) {
-		msg_perr("%s: Unaligned start=%i, len=%i! Please report a bug "
-			 "at flashrom@flashrom.org\n", __func__, start, len);
+		msg_perr("%s: Unaligned start=%i, len=%i!\n"
+			 "Please report a bug at flashrom-stable@flashrom.org\n",
+			 __func__, start, len);
 		return 1;
 	}
 
diff --git a/digilent_spi.c b/digilent_spi.c
index 7431671..bcd73ae 100644
--- a/digilent_spi.c
+++ b/digilent_spi.c
@@ -375,7 +375,9 @@
 	int i;
 
 	if (handle != NULL) {
-		msg_cerr("%s: handle already set! Please report a bug at flashrom@flashrom.org\n", __func__);
+		msg_cerr("%s: handle already set!\n"
+			 "Please report a bug at flashrom-stable@flashrom.org\n",
+			 __func__);
 		return -1;
 	}
 
diff --git a/flashrom.8.tmpl b/flashrom.8.tmpl
index 5a2f00c..6fb6ca7 100644
--- a/flashrom.8.tmpl
+++ b/flashrom.8.tmpl
@@ -1592,8 +1592,8 @@
 .br
 some others, please see the flashrom svn changelog for details.
 .br
-All still active authors can be reached via
-.MTOB "flashrom@flashrom.org" "the mailing list" .
+Active maintainers can be reached via
+.MTOB "flashrom-stable@flashrom.org" "the mailing list" .
 .PP
 This manual page was written by
 .MTOB "uwe@hermann-uwe.de" "Uwe Hermann" ,
diff --git a/flashrom.c b/flashrom.c
index 4139349..2fb42fb 100644
--- a/flashrom.c
+++ b/flashrom.c
@@ -297,7 +297,7 @@
 	needlelen = strlen(needle);
 	if (!needlelen) {
 		msg_gerr("%s: empty needle! Please report a bug at "
-			 "flashrom@flashrom.org\n", __func__);
+			 "flashrom-stable@flashrom.org\n", __func__);
 		return NULL;
 	}
 	/* No programmer parameters given. */
@@ -517,7 +517,7 @@
 		break;
 	default:
 		msg_cerr("%s: Unsupported granularity! Please report a bug at "
-			 "flashrom@flashrom.org\n", __func__);
+			 "flashrom-stable@flashrom.org\n", __func__);
 	}
 	return result;
 }
@@ -582,7 +582,7 @@
 		break;
 	default:
 		msg_cerr("%s: Unsupported granularity! Please report a bug at "
-			 "flashrom@flashrom.org\n", __func__);
+			 "flashrom-stable@flashrom.org\n", __func__);
 		/* Claim that no write was needed. A write with unknown
 		 * granularity is too dangerous to try.
 		 */
@@ -809,7 +809,7 @@
 
 			msg_cinfo(" we need to add them manually.\n"
 				  "You can help us by mailing us the output of the following command to "
-				  "flashrom@flashrom.org:\n"
+				  "flashrom-stable@flashrom.org:\n"
 				  "'flashrom -VV [plus the -p/--programmer parameter]'\n"
 				  "Thanks for your help!\n"
 				  "===\n");
@@ -1012,19 +1012,17 @@
 			/* Blocks with zero size are bugs in flashchips.c. */
 			if (eraser.eraseblocks[i].count &&
 			    !eraser.eraseblocks[i].size) {
-				msg_gerr("ERROR: Flash chip %s erase function "
-					"%i region %i has size 0. Please report"
-					" a bug at flashrom@flashrom.org\n",
-					chip->name, k, i);
+				msg_gerr("ERROR: Flash chip %s erase function %i region %i has size 0.\n"
+					 "Please report a bug at flashrom-stable@flashrom.org\n",
+					 chip->name, k, i);
 				ret = 1;
 			}
 			/* Blocks with zero count are bugs in flashchips.c. */
 			if (!eraser.eraseblocks[i].count &&
 			    eraser.eraseblocks[i].size) {
-				msg_gerr("ERROR: Flash chip %s erase function "
-					"%i region %i has count 0. Please report"
-					" a bug at flashrom@flashrom.org\n",
-					chip->name, k, i);
+				msg_gerr("ERROR: Flash chip %s erase function %i region %i has count 0.\n"
+					 "Please report a bug at flashrom-stable@flashrom.org\n",
+					 chip->name, k, i);
 				ret = 1;
 			}
 			done += eraser.eraseblocks[i].count *
@@ -1040,9 +1038,9 @@
 		if (done != chip->total_size * 1024) {
 			msg_gerr("ERROR: Flash chip %s erase function %i "
 				"region walking resulted in 0x%06x bytes total,"
-				" expected 0x%06x bytes. Please report a bug at"
-				" flashrom@flashrom.org\n", chip->name, k,
-				done, chip->total_size * 1024);
+				" expected 0x%06x bytes.\n"
+				"Please report a bug at flashrom-stable@flashrom.org\n",
+				chip->name, k, done, chip->total_size * 1024);
 			ret = 1;
 		}
 		if (!eraser.block_erase)
@@ -1054,18 +1052,17 @@
 		for (j = k + 1; j < NUM_ERASEFUNCTIONS; j++) {
 			if (eraser.block_erase ==
 			    chip->block_erasers[j].block_erase) {
-				msg_gerr("ERROR: Flash chip %s erase function "
-					"%i and %i are identical. Please report"
-					" a bug at flashrom@flashrom.org\n",
-					chip->name, k, j);
+				msg_gerr("ERROR: Flash chip %s erase function %i and %i are identical.\n"
+					 "Please report a bug at flashrom-stable@flashrom.org\n",
+					 chip->name, k, j);
 				ret = 1;
 			}
 		}
 		if(curr_eraseblock_count > prev_eraseblock_count)
 		{
-			msg_gerr("ERROR: Flash chip %s erase function %i is not "
-					"in order. Please report a bug at flashrom@flashrom.org\n",
-					chip->name, k);
+			msg_gerr("ERROR: Flash chip %s erase function %i is not in order.\n"
+				 "Please report a bug at flashrom-stable@flashrom.org\n",
+				 chip->name, k);
 			ret = 1;
 		}
 		prev_eraseblock_count = curr_eraseblock_count;
@@ -1491,16 +1488,16 @@
 #if CONFIG_INTERNAL == 1
 	if (programmer == &programmer_internal)
 		msg_gerr("This means we have to add special support for your board, programmer or flash\n"
-			 "chip. Please report this to the mailing list at flashrom@flashrom.org or on\n"
-			 "IRC (see https://www.flashrom.org/Contact for details), thanks!\n"
+			 "chip. Please report this to the mailing list at flashrom-stable@flashrom.org or\n"
+			 "on IRC (see https://www.flashrom.org/Contact for details), thanks!\n"
 			 "-------------------------------------------------------------------------------\n"
 			 "You may now reboot or simply leave the machine running.\n");
 	else
 #endif
 		msg_gerr("Please check the connections (especially those to write protection pins) between\n"
 			 "the programmer and the flash chip. If you think the error is caused by flashrom\n"
-			 "please report this to the mailing list at flashrom@flashrom.org or on IRC (see\n"
-			 "https://www.flashrom.org/Contact for details), thanks!\n");
+			 "please report this to the mailing list at flashrom-stable@flashrom.org or on IRC\n"
+			 "(see https://www.flashrom.org/Contact for details), thanks!\n");
 }
 
 static void emergency_help_message(void)
@@ -1509,13 +1506,13 @@
 #if CONFIG_INTERNAL == 1
 	if (programmer == &programmer_internal)
 		msg_gerr("Get help on IRC (see https://www.flashrom.org/Contact) or mail\n"
-			"flashrom@flashrom.org with the subject \"FAILED: <your board name>\"!"
+			"flashrom-stable@flashrom.org with the subject \"FAILED: <your board name>\"!\n"
 			"-------------------------------------------------------------------------------\n"
 			"DO NOT REBOOT OR POWEROFF!\n");
 	else
 #endif
-		msg_gerr("Please report this to the mailing list at flashrom@flashrom.org or\n"
-			 "on IRC (see https://www.flashrom.org/Contact for details), thanks!\n");
+		msg_gerr("Please report this to the mailing list at flashrom-stable@flashrom.org\n"
+			 "or on IRC (see https://www.flashrom.org/Contact for details), thanks!\n");
 }
 
 void list_programmers_linebreak(int startcol, int cols, int paren)
@@ -1632,7 +1629,7 @@
 
 void print_version(void)
 {
-	msg_ginfo("flashrom %s", flashrom_version);
+	msg_ginfo("flashrom-stable %s", flashrom_version);
 	print_sysinfo();
 	msg_ginfo("\n");
 }
@@ -1713,7 +1710,7 @@
 			if (chip->vendor == NULL || chip->name == NULL || chip->bustype == BUS_NONE) {
 				ret = 1;
 				msg_gerr("ERROR: Some field of flash chip #%d (%s) is misconfigured.\n"
-					 "Please report a bug at flashrom@flashrom.org\n", i,
+					 "Please report a bug at flashrom-stable@flashrom.org\n", i,
 					 chip->name == NULL ? "unnamed" : chip->name);
 			}
 			if (selfcheck_eraseblocks(chip)) {
diff --git a/ich_descriptors.c b/ich_descriptors.c
index bacbbb5..8ae8e4a 100644
--- a/ich_descriptors.c
+++ b/ich_descriptors.c
@@ -1066,7 +1066,7 @@
 			msg_pwarn("\nThe flash descriptor looks like a Skylake/Sunrise Point descriptor.\n"
 				  "However, the read frequency isn't set to 17MHz (the only valid value).\n"
 				  "Please report this message, the output of `ich_descriptors_tool` for\n"
-				  "your descriptor and the output of `lspci -nn` to flashrom@flashrom.org\n\n");
+				  "your descriptor and the output of `lspci -nn` to flashrom-stable@flashrom.org\n\n");
 		}
 		break;
 	default:
@@ -1074,7 +1074,7 @@
 			msg_pwarn("\nThe flash descriptor has the read frequency set to 17MHz. However,\n"
 				  "it doesn't look like a Skylake/Sunrise Point compatible descriptor.\n"
 				  "Please report this message, the output of `ich_descriptors_tool` for\n"
-				  "your descriptor and the output of `lspci -nn` to flashrom@flashrom.org\n\n");
+				  "your descriptor and the output of `lspci -nn` to flashrom-stable@flashrom.org\n\n");
 		}
 	}
 	return guess;
diff --git a/jedec.c b/jedec.c
index 0709efa..280eed7 100644
--- a/jedec.c
+++ b/jedec.c
@@ -649,7 +649,7 @@
 	/* Only allow changes to known read/write/lockdown bits */
 	if (((cur ^ new) & ~REG2_MASK) != 0) {
 		msg_cerr("Invalid lock change from 0x%02x to 0x%02x requested at 0x%0*" PRIxPTR "!\n"
-			 "Please report a bug at flashrom@flashrom.org\n",
+			 "Please report a bug at flashrom-stable@flashrom.org\n",
 			 cur, new, PRIxPTR_WIDTH, lockreg);
 		return -1;
 	}
diff --git a/linux_mtd.c b/linux_mtd.c
index 9499f26..e11ff1c 100644
--- a/linux_mtd.c
+++ b/linux_mtd.c
@@ -262,8 +262,9 @@
 	uint32_t u;
 
 	if (mtd_no_erase) {
-		msg_perr("%s: device does not support erasing. Please file a "
-				"bug report at flashrom@flashrom.org\n", __func__);
+		msg_perr("%s: device does not support erasing.\n"
+			 "Please file a bug report at flashrom-stable@flashrom.org\n",
+			 __func__);
 		return 1;
 	}
 
diff --git a/ni845x_spi.c b/ni845x_spi.c
index f6f4fe8..1df76c0 100644
--- a/ni845x_spi.c
+++ b/ni845x_spi.c
@@ -163,7 +163,7 @@
 			// malformed resource string detected
 			msg_pwarn("Warning: Unable to parse the %s NI-845x resource string.\n",
 				  resource_name);
-			msg_pwarn("Please report a bug at flashrom@flashrom.org\n");
+			msg_pwarn("Please report a bug at flashrom-stable@flashrom.org\n");
 			continue;
 		}
 
diff --git a/opaque.c b/opaque.c
index 276934f..ab39100 100644
--- a/opaque.c
+++ b/opaque.c
@@ -51,8 +51,8 @@
 	struct registered_master rmst;
 
 	if (!mst->probe || !mst->read || !mst->write || !mst->erase) {
-		msg_perr("%s called with incomplete master definition. "
-			 "Please report a bug at flashrom@flashrom.org\n",
+		msg_perr("%s called with incomplete master definition.\n"
+			 "Please report a bug at flashrom-stable@flashrom.org\n",
 			 __func__);
 		return ERROR_FLASHROM_BUG;
 	}
diff --git a/pcidev.c b/pcidev.c
index 9ffe05c..2c6bbed 100644
--- a/pcidev.c
+++ b/pcidev.c
@@ -142,7 +142,7 @@
 		addr &= PCI_ROM_ADDRESS_MASK;
 		break;
 	case TYPE_UNKNOWN:
-		msg_perr("BAR type unknown, please report a bug at flashrom@flashrom.org\n");
+		msg_perr("BAR type unknown, please report a bug at flashrom-stable@flashrom.org\n");
 	}
 
 	return (uintptr_t)addr;
@@ -152,7 +152,8 @@
 {
 	if (pacc == NULL) {
 		msg_perr("%s: Tried to cleanup an invalid PCI context!\n"
-			 "Please report a bug at flashrom@flashrom.org\n", __func__);
+			 "Please report a bug at flashrom-stable@flashrom.org\n",
+			 __func__);
 		return 1;
 	}
 	pci_cleanup(pacc);
@@ -164,7 +165,7 @@
 {
 	if (pacc != NULL) {
 		msg_perr("%s: Tried to allocate a new PCI context, but there is still an old one!\n"
-			 "Please report a bug at flashrom@flashrom.org\n", __func__);
+			 "Please report a bug at flashrom-stable@flashrom.org\n", __func__);
 		return 1;
 	}
 	pacc = pci_alloc();     /* Get the pci_access structure */
@@ -222,8 +223,8 @@
 			if (devs[i].status == NT)
 				msg_pinfo("===\nThis PCI device is UNTESTED. Please report the 'flashrom -p "
 					  "xxxx' output\n"
-					  "to flashrom@flashrom.org if it works for you. Please add the name "
-					  "of your\n"
+					  "to flashrom-stable@flashrom.org if it works for you. Please add "
+					  "the name of your\n"
 					  "PCI device to the subject. Thank you for your help!\n===\n");
 
 			/* FIXME: We should count all matching devices, not
@@ -271,7 +272,7 @@
 	struct undo_pci_write_data *data = p;
 	if (pacc == NULL || data->dev == NULL) {
 		msg_perr("%s: Tried to undo PCI writes without a valid PCI %s!\n"
-			"Please report a bug at flashrom@flashrom.org\n",
+			"Please report a bug at flashrom-stable@flashrom.org\n",
 			__func__, data->dev == NULL ? "device" : "context");
 		return 1;
 	}
diff --git a/physmap.c b/physmap.c
index 796860c..e2d47d6 100644
--- a/physmap.c
+++ b/physmap.c
@@ -316,7 +316,7 @@
 	/* No need to check for zero size, such mappings would have yielded ERROR_PTR. */
 	if (virt_addr == ERROR_PTR) {
 		msg_perr("Trying to unmap a nonexisting mapping!\n"
-			 "Please report a bug at flashrom@flashrom.org\n");
+			 "Please report a bug at flashrom-stable@flashrom.org\n");
 		return;
 	}
 
@@ -330,7 +330,7 @@
 	/* No need to check for zero size, such mappings would have yielded ERROR_PTR. */
 	if (virt_addr == ERROR_PTR) {
 		msg_perr("Trying to unmap a nonexisting mapping!\n"
-			 "Please report a bug at flashrom@flashrom.org\n");
+			 "Please report a bug at flashrom-stable@flashrom.org\n");
 		return;
 	}
 	tmp = (uintptr_t)virt_addr;
diff --git a/print.c b/print.c
index 8d55b8b..1f6bece 100644
--- a/print.c
+++ b/print.c
@@ -497,8 +497,9 @@
 			}
 			break;
 		default:
-			msg_gerr("\n%s: %s: Uninitialized programmer type! Please report a bug at "
-				 "flashrom@flashrom.org\n", __func__, prog->name);
+			msg_gerr("\n%s: %s: Uninitialized programmer type!\n"
+				 "Please report a bug at flashrom-stable@flashrom.org\n",
+				 __func__, prog->name);
 			break;
 		}
 	}
diff --git a/programmer.c b/programmer.c
index bee60e3..d7f1968 100644
--- a/programmer.c
+++ b/programmer.c
@@ -87,8 +87,8 @@
 	if (!mst->chip_writeb || !mst->chip_writew || !mst->chip_writel ||
 	    !mst->chip_writen || !mst->chip_readb || !mst->chip_readw ||
 	    !mst->chip_readl || !mst->chip_readn) {
-		msg_perr("%s called with incomplete master definition. "
-			 "Please report a bug at flashrom@flashrom.org\n",
+		msg_perr("%s called with incomplete master definition.\n"
+			 "Please report a bug at flashrom-stable@flashrom.org\n",
 			 __func__);
 		return ERROR_FLASHROM_BUG;
 	}
diff --git a/sb600spi.c b/sb600spi.c
index 8664fa9..7727118 100644
--- a/sb600spi.c
+++ b/sb600spi.c
@@ -113,8 +113,9 @@
 			msg_pdbg("SB8xx/SB9xx/Hudson-1 detected.\n");
 		} else {
 			msg_pwarn("SB device found but SMBus revision 0x%02x does not match known values.\n"
-				  "Assuming SB8xx/SB9xx/Hudson-1. Please send a log to flashrom@flashrom.org\n",
-				   rev);
+				  "Assuming SB8xx/SB9xx/Hudson-1.\n"
+				  "Please send a log to flashrom-stable@flashrom.org\n",
+				  rev);
 			amd_gen = CHIPSET_SB89XX;
 		}
 	} else if (dev->device_id == 0x780e) {
@@ -134,8 +135,8 @@
 			msg_pdbg("Yangtze detected.\n");
 		} else {
 			msg_pwarn("FCH device found but SMBus revision 0x%02x does not match known values.\n"
-				  "Please report this to flashrom@flashrom.org and include this log and\n"
-				  "the output of lspci -nnvx, thanks!.\n", rev);
+				  "Please report this to flashrom-stable@flashrom.org and include this\n"
+				  "log and the output of lspci -nnvx, thanks!.\n", rev);
 		}
 	} else if (dev->device_id == 0x790e) {
 		int rev = find_smbus_dev_rev(0x1022, 0x790B);
@@ -149,15 +150,15 @@
 			msg_pdbg("Promontory detected.\n");
 		} else {
 			msg_pwarn("FCH device found but SMBus revision 0x%02x does not match known values.\n"
-				  "Please report this to flashrom@flashrom.org and include this log and\n"
-				  "the output of lspci -nnvx, thanks!.\n", rev);
+				  "Please report this to flashrom-stable@flashrom.org and include this\n"
+				  "log and the output of lspci -nnvx, thanks!.\n", rev);
 		}
 
 
 	} else
 		msg_pwarn("%s: Unknown LPC device %" PRIx16 ":%" PRIx16 ".\n"
-			  "Please report this to flashrom@flashrom.org and include this log and\n"
-			  "the output of lspci -nnvx, thanks!\n",
+			  "Please report this to flashrom-stable@flashrom.org and include this\n"
+			  "log and the output of lspci -nnvx, thanks!\n",
 			  __func__, dev->vendor_id, dev->device_id);
 	if (amd_gen == CHIPSET_AMD_UNKNOWN) {
 		msg_perr("Could not determine chipset generation.");
diff --git a/sfdp.c b/sfdp.c
index b549417..bf14482 100644
--- a/sfdp.c
+++ b/sfdp.c
@@ -86,7 +86,7 @@
 	if (erasefn == NULL || total_size == 0 || block_size == 0 ||
 	    total_size % block_size != 0) {
 		msg_cdbg("%s: invalid input, please report to "
-			 "flashrom@flashrom.org\n", __func__);
+			 "flashrom-stable@flashrom.org\n", __func__);
 		return 1;
 	}
 
@@ -115,8 +115,8 @@
 			  opcode);
 		return 0;
 	}
-	msg_cinfo("%s: Not enough space to store another eraser (i=%d)."
-		  " Please report this at flashrom@flashrom.org\n",
+	msg_cinfo("%s: Not enough space to store another eraser (i=%d).\n"
+		  "Please report this at flashrom-stable@flashrom.org\n",
 		  __func__, i);
 	return 1;
 }
diff --git a/spi.c b/spi.c
index aed2a92..86141cc 100644
--- a/spi.c
+++ b/spi.c
@@ -76,9 +76,8 @@
 {
 	unsigned int max_data = flash->mst->spi.max_data_read;
 	if (max_data == MAX_DATA_UNSPECIFIED) {
-		msg_perr("%s called, but SPI read chunk size not defined "
-			 "on this hardware. Please report a bug at "
-			 "flashrom@flashrom.org\n", __func__);
+		msg_perr("%s called, but SPI read chunk size not defined on this hardware.\n"
+			 "Please report a bug at flashrom-stable@flashrom.org\n", __func__);
 		return 1;
 	}
 	return spi_read_chunked(flash, buf, start, len, max_data);
@@ -88,9 +87,8 @@
 {
 	unsigned int max_data = flash->mst->spi.max_data_write;
 	if (max_data == MAX_DATA_UNSPECIFIED) {
-		msg_perr("%s called, but SPI write chunk size not defined "
-			 "on this hardware. Please report a bug at "
-			 "flashrom@flashrom.org\n", __func__);
+		msg_perr("%s called, but SPI write chunk size not defined on this hardware.\n"
+			 "Please report a bug at flashrom-stable@flashrom.org\n", __func__);
 		return 1;
 	}
 	return spi_write_chunked(flash, buf, start, len, max_data);
@@ -139,8 +137,8 @@
 	    !mst->multicommand ||
 	    ((mst->command == default_spi_send_command) &&
 	     (mst->multicommand == default_spi_send_multicommand))) {
-		msg_perr("%s called with incomplete master definition. "
-			 "Please report a bug at flashrom@flashrom.org\n",
+		msg_perr("%s called with incomplete master definition.\n"
+			 "Please report a bug at flashrom-stable@flashrom.org\n",
 			 __func__);
 		return ERROR_FLASHROM_BUG;
 	}
diff --git a/spi25.c b/spi25.c
index 20f5e97..734df28 100644
--- a/spi25.c
+++ b/spi25.c
@@ -636,8 +636,9 @@
 	case 0xdc:
 		return &spi_block_erase_dc;
 	default:
-		msg_cinfo("%s: unknown erase opcode (0x%02x). Please report "
-			  "this at flashrom@flashrom.org\n", __func__, opcode);
+		msg_cinfo("%s: unknown erase opcode (0x%02x).\n"
+			  "Please report this at flashrom-stable@flashrom.org\n",
+			  __func__, opcode);
 		return NULL;
 	}
 }
@@ -758,8 +759,9 @@
 	 */
 	/* The data sheet requires a start address with the low bit cleared. */
 	if (start % 2) {
-		msg_cerr("%s: start address not even! Please report a bug at "
-			 "flashrom@flashrom.org\n", __func__);
+		msg_cerr("%s: start address not even!\n"
+			 "Please report a bug at flashrom-stable@flashrom.org\n",
+			 __func__);
 		if (spi_chip_write_1(flash, buf, start, start % 2))
 			return SPI_GENERIC_ERROR;
 		pos += start % 2;
@@ -768,8 +770,9 @@
 	}
 	/* The data sheet requires total AAI write length to be even. */
 	if (len % 2) {
-		msg_cerr("%s: total write length not even! Please report a "
-			 "bug at flashrom@flashrom.org\n", __func__);
+		msg_cerr("%s: total write length not even!\n"
+			 "Please report a bug at flashrom-stable@flashrom.org\n",
+			 __func__);
 		/* Do not return an error for now. */
 		//return SPI_GENERIC_ERROR;
 	}