[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#683674: marked as done (unblock: intel-microcode/1.20120606.6)

Your message dated Wed, 19 Sep 2012 14:11:12 +0200
with message-id <20120919121112.GB15583@spike.0x539.de>
and subject line Re: Bug#683674: unblock: intel-microcode/1.20120606.3
has caused the Debian Bug report #683674,
regarding unblock: intel-microcode/1.20120606.6
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact owner@bugs.debian.org

683674: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=683674
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems
--- Begin Message ---
Package: release.debian.org
Severity: normal
User: release.debian.org@packages.debian.org
Usertags: freeze-exception

Please unblock package intel-microcode

Relevant thread in debian-release:

non-free stable and non-free wheezy are currently seriously lacking in
microcode support.  It is worth notice that nearly all recent Intel
_and_ AMD processors have been issued microcode updates, quite often
fixing relevant issues.

Stable lacks support for AMD system processors in userspace entirely,
and deprecated, half-useful support for Intel system processors.  Wheezy
currently has half-done userspace support for AMD system processors
[NOTE: now fixed by a freeze-exception being accepted] that requires
manual intervention to even work, and the same crap as stable for Intel
system processors.

These shortcomings have been fixed in non-free unstable for both Intel
and AMD microcode packages. [NOTE: amd64-microcode already unblocked]

A simple initramfs helper, along with documentation for those who
compile their own kernels and don't use an initramfs, was added to
amd64-microcode in unstable.  It manages to load processor microcode as
early as it is possible for the current Wheezy kernel.  The freeze
exception (unblock request) is in bug #681352, along with the debdiff.

This initramfs helper, which is also used on the updated intel-microcode
packages, is compatible with past and current kernels (tested in
2.6.32.x stable, 3.0.x stable, 3.2.x stable, 3.4.x stable), with the
soon-to-be-issued stable fix for the microcode core that accepts
requests only for the BSP (bootstrap processor) -- tested with 3.0 and
3.2 + fix backport, and with the upcoming per-system microcode sysfs ABI
that does away/deprecates the current per-core sysfs ABI.

Fixing intel-microcode [properly] was _much_ harder.  The ABI used by
microcode.ctl (/dev/cpu/microcode) has been deprecated in the kernel for
_years_ and will be removed sooner or later.  Switching to the sysfs /
firmware-loader based ABI requires new userspace, and in fact the new
intel-microcode package declares a "breaks: microcode.ctl" because the
very microcode data format required by the new ABI is unsupported by

Since it is incredibly hard to deal with Intel microcode release
management, I had to actually write a heavy-duty tool (iucode-tool,
already accepted into Wheezy contrib) to even _know_ WTF I was pushing
to users at every new upstream microcode release.  I've been using it
for a while now.  This tool is also used to generate the
firmware-loader-compatible binary files split by processor
family-model-stepping required to update Intel processor microcode.

The same initrd helper used in amd64-microcode was also added to the
intel-microcode package.  The two packages CAN BE INSTALLED AT THE SAME
TIME in a system: the helpers do not collide, and they're smart enough
to notice the duplication, and attempt the microcode update only once
during boot.

Unfortunately, Intel ships a _LOT_ of microcode.  It's about 550KiB
uncompressed, split over a lot of files in /lib/firmware.  This would
waste a lot of initramfs space, so, should iucode-tool also be present
in the system at update-initramfs time, the intel-microcode package will
by default install to the initramfs only the microcode for the exact
system processors found (which typically means at most 32KiB worth of
uncompressed microcode :p).

Also, using iucode-tool, it was possible to restrict the number of
microcodes shipped in the intel-microcode binary package for the amd64
arch, by removing microcodes for very old processors that do not support
64-bit mode.  I also managed to salvage microcode for older processors
(Pentium II, Pentium III, Pentium-M, 1st and 2nd-gen Xeon) that Intel
did not ship anymore, but which still have Debian users.

This required a complete refactoring of the source package, and the
resulting debdiff for intel-microcode is, well, enourmous.  Mostly
because the *source* package now ships every Intel microcode ".dat" file
to date (each one is ~1.5MiB in size), in order to find the relevant
microcodes for older processors.  To keep the source package
_compressed_ size under control, I switched to XZ compression, and the
compressed source package is still < 1MiB.

The packages in unstable are well tested, and I'd really appreciate if
the Wheezy release managers would grant freeze exceptions for
amd64-microcode and intel-microcode.

diffstats for the intel-microcode update are below.
See explanation  above for why it is so big.

 b/.gitignore                               |    3 
 b/Makefile                                 |   96 
 b/cpu-signatures.txt                       |   98 
 b/debian/README.Debian                     |  131 
 b/debian/README.source                     |  127 
 b/debian/changelog                         |   70 
 b/debian/compat                            |    2 
 b/debian/control                           |   36 
 b/debian/diff-latest-pack.sh               |   25 
 b/debian/initramfs.hook                    |   90 
 b/debian/initramfs.init-premount           |   55 
 b/debian/intel-microcode.NEWS              |   36 
 b/debian/intel-microcode.default           |   15 
 b/debian/intel-microcode.dirs              |    2 
 b/debian/intel-microcode.lintian-overrides |    1 
 b/debian/intel-microcode.postinst          |   61 
 b/debian/intel-microcode.postrm            |   42 
 b/debian/rules                             |   76 
 b/debian/source/format                     |    2 
 b/debian/source/options                    |    1 
 b/microcode-20080220.dat                   |24374 ++++++++++++++++++++++
 b/microcode-20080401.dat                   |24693 ++++++++++++++++++++++
 b/microcode-20080910.dat                   |25849 +++++++++++++++++++++++
 b/microcode-20090330.dat                   |25910 +++++++++++++++++++++++
 b/microcode-20090927.dat                   |28154 +++++++++++++++++++++++++
 b/microcode-20100209.dat                   |30272 +++++++++++++++++++++++++++
 b/microcode-20100826.dat                   |31492 +++++++++++++++++++++++++++++
 b/microcode-20100914.dat                   |29950 +++++++++++++++++++++++++++
 b/microcode-20101123.dat                   |27048 ++++++++++++++++++++++++
 b/microcode-20110428.dat                   |27177 +++++++++++++++++++++++++
 b/microcode-20110915.dat                   |28973 ++++++++++++++++++++++++++
 b/microcode-20111110.dat                   |28971 ++++++++++++++++++++++++++
 b/microcode-20120606.dat                   |30317 +++++++++++++++++++++++++++
 debian/dirs                                |    1 
 debian/postinst                            |   47 
 microcode.dat                              |30317 ---------------------------
 36 files changed, 364068 insertions(+), 30446 deletions(-)

unblock intel-microcode/1.20120606.3

  "One disk to rule them all, One disk to find them. One disk to bring
  them all and in the darkness grind them. In the Land of Redmond
  where the shadows lie." -- The Silicon Valley Tarot
  Henrique Holschuh

--- End Message ---
--- Begin Message ---
On Sat, Sep 08, 2012 at 09:48:40AM -0300, Henrique de Moraes Holschuh wrote:
> Transitional packages were uploaded yesterday, and are in the DELAYED/2
> queue ATM:
> intel-microcode 1.20120606.6    Conflicts: microcode.ctl (<< 1.18~0)
> microcode.ctl   1.18~0+nmu1     Depends: intel-microcode (>> 1), iucode-tool
>                                 Conflicts: intel-microcode (<< 1)

Both unblocked, thanks.

Kind regards
Philipp Kern 

Attachment: signature.asc
Description: Digital signature

--- End Message ---

Reply to: