summaryrefslogtreecommitdiff
path: root/sys-freebsd/freebsd-usbin/files/freebsd-usbin-SA-1803-speculative_execution-amd64-11.patch
diff options
context:
space:
mode:
Diffstat (limited to 'sys-freebsd/freebsd-usbin/files/freebsd-usbin-SA-1803-speculative_execution-amd64-11.patch')
-rw-r--r--sys-freebsd/freebsd-usbin/files/freebsd-usbin-SA-1803-speculative_execution-amd64-11.patch189
1 files changed, 0 insertions, 189 deletions
diff --git a/sys-freebsd/freebsd-usbin/files/freebsd-usbin-SA-1803-speculative_execution-amd64-11.patch b/sys-freebsd/freebsd-usbin/files/freebsd-usbin-SA-1803-speculative_execution-amd64-11.patch
deleted file mode 100644
index 0cc67ad8f342..000000000000
--- a/sys-freebsd/freebsd-usbin/files/freebsd-usbin-SA-1803-speculative_execution-amd64-11.patch
+++ /dev/null
@@ -1,189 +0,0 @@
---- usr.sbin/cpucontrol/cpucontrol.8.orig
-+++ usr.sbin/cpucontrol/cpucontrol.8
-@@ -24,7 +24,7 @@
- .\"
- .\" $FreeBSD$
- .\"
--.Dd June 30, 2009
-+.Dd January 5, 2018
- .Dt CPUCONTROL 8
- .Os
- .Sh NAME
-@@ -36,44 +36,48 @@
- .Nm
- .Op Fl vh
- .Fl m Ar msr
--.Bk
- .Ar device
- .Ek
-+.Bk
- .Nm
- .Op Fl vh
- .Fl m Ar msr Ns = Ns Ar value
--.Bk
- .Ar device
- .Ek
-+.Bk
- .Nm
- .Op Fl vh
- .Fl m Ar msr Ns &= Ns Ar mask
--.Bk
- .Ar device
- .Ek
-+.Bk
- .Nm
- .Op Fl vh
- .Fl m Ar msr Ns |= Ns Ar mask
--.Bk
- .Ar device
- .Ek
-+.Bk
- .Nm
- .Op Fl vh
- .Fl i Ar level
--.Bk
- .Ar device
- .Ek
-+.Bk
- .Nm
- .Op Fl vh
- .Fl i Ar level,level_type
--.Bk
- .Ar device
- .Ek
-+.Bk
- .Nm
- .Op Fl vh
- .Op Fl d Ar datadir
- .Fl u
-+.Ar device
-+.Ek
- .Bk
-+.Nm
-+.Fl e
- .Ar device
- .Ek
- .Sh DESCRIPTION
-@@ -129,6 +133,20 @@
- .Nm
- utility will walk through the configured data directories
- and apply all firmware updates available for this CPU.
-+.It Fl e
-+Re-evaluate the kernel flags indicating the present CPU features.
-+This command is typically executed after a firmware update was applied
-+which changes information reported by the
-+.Dv CPUID
-+instruction.
-+.Pp
-+.Bf -symbolic
-+Only execute the
-+.Fl e
-+command after the microcode update was applied to all CPUs in the system.
-+The kernel does not operate correctly if the features of processors are
-+not identical.
-+.Ef
- .It Fl v
- Increase the verbosity level.
- .It Fl h
---- usr.sbin/cpucontrol/cpucontrol.c.orig
-+++ usr.sbin/cpucontrol/cpucontrol.c
-@@ -60,6 +60,7 @@
- #define FLAG_I 0x01
- #define FLAG_M 0x02
- #define FLAG_U 0x04
-+#define FLAG_E 0x10
-
- #define OP_INVAL 0x00
- #define OP_READ 0x01
-@@ -114,7 +115,7 @@
- if (name == NULL)
- name = "cpuctl";
- fprintf(stderr, "Usage: %s [-vh] [-d datadir] [-m msr[=value] | "
-- "-i level | -i level,level_type | -u] device\n", name);
-+ "-i level | -i level,level_type | -e | -u] device\n", name);
- exit(EX_USAGE);
- }
-
-@@ -338,6 +339,25 @@
- }
-
- static int
-+do_eval_cpu_features(const char *dev)
-+{
-+ int fd, error;
-+
-+ assert(dev != NULL);
-+
-+ fd = open(dev, O_RDWR);
-+ if (fd < 0) {
-+ WARN(0, "error opening %s for writing", dev);
-+ return (1);
-+ }
-+ error = ioctl(fd, CPUCTL_EVAL_CPU_FEATURES, NULL);
-+ if (error < 0)
-+ WARN(0, "ioctl(%s, CPUCTL_EVAL_CPU_FEATURES)", dev);
-+ close(fd);
-+ return (error);
-+}
-+
-+static int
- do_update(const char *dev)
- {
- int fd;
-@@ -431,11 +451,14 @@
- * Add all default data dirs to the list first.
- */
- datadir_add(DEFAULT_DATADIR);
-- while ((c = getopt(argc, argv, "d:hi:m:uv")) != -1) {
-+ while ((c = getopt(argc, argv, "d:ehi:m:uv")) != -1) {
- switch (c) {
- case 'd':
- datadir_add(optarg);
- break;
-+ case 'e':
-+ flags |= FLAG_E;
-+ break;
- case 'i':
- flags |= FLAG_I;
- cmdarg = optarg;
-@@ -464,22 +487,25 @@
- /* NOTREACHED */
- }
- dev = argv[0];
-- c = flags & (FLAG_I | FLAG_M | FLAG_U);
-+ c = flags & (FLAG_E | FLAG_I | FLAG_M | FLAG_U);
- switch (c) {
-- case FLAG_I:
-- if (strstr(cmdarg, ",") != NULL)
-- error = do_cpuid_count(cmdarg, dev);
-- else
-- error = do_cpuid(cmdarg, dev);
-- break;
-- case FLAG_M:
-- error = do_msr(cmdarg, dev);
-- break;
-- case FLAG_U:
-- error = do_update(dev);
-- break;
-- default:
-- usage(); /* Only one command can be selected. */
-+ case FLAG_I:
-+ if (strstr(cmdarg, ",") != NULL)
-+ error = do_cpuid_count(cmdarg, dev);
-+ else
-+ error = do_cpuid(cmdarg, dev);
-+ break;
-+ case FLAG_M:
-+ error = do_msr(cmdarg, dev);
-+ break;
-+ case FLAG_U:
-+ error = do_update(dev);
-+ break;
-+ case FLAG_E:
-+ error = do_eval_cpu_features(dev);
-+ break;
-+ default:
-+ usage(); /* Only one command can be selected. */
- }
- SLIST_FREE(&datadirs, next, free);
- return (error == 0 ? 0 : 1);