1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141
|
v2.3:
* Processor signature scan strategies can now be selected at
runtime, using a new optional argument of the --scan-system
option. It is possible to disable the "exact" scan strategy
(which uses the kernel cpuid device) at build time to reduce the
impact on executable size.
* Microcode updates for a specific signature can now be optionally
selected based on their revision, not just processor flags mask.
v2.2:
* build infrastructure changes: autoconf 2.69 or later, and
automake 1.13 or later are now required. The configure script
will attempt to auto-detect and enable several warning and
hardening options by default if CFLAGS/LDFLAGS are *unset*, or if
given the new --enable-extend-flags option. "-O3" optimization
mode will be used by default. The usual ways to override *FLAGS
are respected by configure and the Makefile.
v2.1.1:
* Fix CVE-2017-0357: iucode_tool: heap buffer overflow on -tr loader
v2.1:
* The early initramfs cpio archives created by iucode_tool are now
deterministic. Instead of the current system time, the date of
the latest microcode included in the early initramfs will be used.
* There is a new option to minimize the size of the early initramfs:
--mini-earlyfw. This option causes iucode_tool to create a non-
standard cpio archive which is typically 736 bytes smaller.
WARNING: the microcode data file might not be visible to the
regular initramfs when this mode is used.
* iucode-tool will now create valid early initramfs archives past
year 2038.
v2.0:
* This new major version has several non-backwards-compatible
changes. Scripts that scrape iucode_tool's stdout/stderr messages
might have to be updated, and the behavior for -s and -S options
changed.
* The microcode listing output format used by --list and
--list-all changed: the processor flags mask field is now
labeled "pf_mask" instead of "pf mask", and the first field
(bundle id/microcode id) is wider for --list-all, and completely
changed for --list (refer to next entry).
* The output for the --list option now uses the same microcode
numbering used in --list-all and error messages, and also the
same indentation as --list-all. For this reason, --list will
output the bundle assignment list to stdout when not in --quiet
mode, the same way --list-all does.
* The --scan-system/-S option can now only be specified once, and
it may be overridden by -s !<signature> options that come
*after* it in command line ordering. To emulate the previous
behavior, always specify --scan-system just once, and as the
last option (i.e. after any -s options).
* Error and warning messages, as well as some verbose (and debug)
messages were updated, and some of them were demoted to higher
verbosity levels.
* Other relevant changes since v1.6.1:
* Microcodes are now sorted by signature (ascending) and processor
flags mask (descending). Before, microcodes with the same
signature but different processor flags mask had unspecified
ordering.
* The .dat format loader was optimized to run a lot faster on
files that match the Intel layout exactly, and improved its
error detection.
* iucode_tool now flushes output data files to permanent storage
using fdatasync() before closing them, to better detect write
errors. This causes a performance hit, but it is much safer.
* Fix large file support (LFS) on 32-bit builds.
* Abort with an error when attempting to write more than 4GiB to a
cpio (early initramfs) archive, due to a limitation of that cpio
file format.
v1.6.1:
* Memory usage was greatly reduced when processing large microcode
bundles.
v1.6:
* Fix --scan-system to properly support mixed-stepping systems
(broken since v1.2, partially fixed in v1.5.2).
v1.5:
* There is a new option to write out microcodes, capable of writing
out every revision of every microcode: --write-all-named-to. All
other write out options will only output a single revision of a
microcode. Refer to the manpage for details.
v1.4:
* There is a new file type loader: -tr (recover microcode in
binary format), which searches for valid microcodes in Intel
binary format anywhere inside a binary file.
For standard, undamaged microcode data files, the default
binary loader (-tb) should be used instead: it is faster, and
it will properly complain of data file corruption. Refer to
the manpage for details.
v1.3:
* The .dat file loader was fixed to properly report IO errors, and
enhanced to report the number of the line that caused a syntax
error, as well as to accept comments at the end of a line.
Before, comments had to be on a line of their own. Note that
the .dat file loader assumes all comments start with / and span
to the end of line.
* It is now safe to call iucode_tool with stdin, stdout or stderr
closed: /dev/null will be used, instead.
v1.2.1:
* Due to gitorious.org planned shutdown at the end of 2015-05,
iucode-tool has a new home at gitlab:
https://gitlab.com/iucode-tool
The old home at Debian Alioth will remain as a backup location:
http://anonscm.debian.org/gitweb/?p=users/hmh/intel-microcode.git
v1.2:
* Scalability improvement for --scan-system: by compile-time
default, use the cpuid instruction directly on the running
processor, and assume all other cores have the same
signature. The code now depends on gcc's cpuid.h header.
v1.1:
* Working support for extended signature tables
v1.0.2:
* iucode-tool has a new home at gitorious:
https://gitorious.org/iucode-tool
The old home at Debian Alioth will remain as a backup location:
http://anonscm.debian.org/gitweb/?p=users/hmh/intel-microcode.git
v1.0:
* Added --write-earlyfw, useful to support microcode
updates during very early boot (kernel support added in
Linux v3.9)
* iucode_tool has implemented the most important features
it currently needs, bump the major version number to 1.
v0.9:
* Added -s! and --lose-date-filtering options, described in
the iucode_tool(8) manpage.
|