From: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
To: Atom2 <ariel.atom2@web2web.at>
Cc: Jeremy Fitzhardinge <jeremy@goop.org>,
daniel.kiper@oracle.com, david.vrabel@citrix.com,
Jan Beulich <JBeulich@suse.com>,
Yang Z Zhang <yang.z.zhang@intel.com>,
"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
boris.ostrovsky@oracle.com
Subject: Re: How many patches are missing in upstream Linux?
Date: Tue, 11 Mar 2014 13:53:52 -0400 [thread overview]
Message-ID: <20140311175352.GC15088@phenom.dumpdata.com> (raw)
In-Reply-To: <531F4A2C.7020209@web2web.at>
On Tue, Mar 11, 2014 at 06:38:52PM +0100, Atom2 wrote:
>
>
> Am 10.03.14 21:55, schrieb Jeremy Fitzhardinge:
> [snip]
> >>The maintainer is being <insert your own opinion here>:
> >> - runtime microcode. What I had been told was to use the 'early
> >> microcode' mechanism - which is now implemented and Xen can also scan
> >> the initramfs to extract the microcode payload and apply it.
> >
> >I've never got that to work, but ucode=-1 with a microcode.dat multiboot
> >modules works pretty well.
> >
> >> But it misses the important part of server longevity in that the
> >> host might be running for years and the microcode might need to be
> >> updated during that time. bpetkov wasn't too thrilled about the
> >> runtime microcode and I hadn't come back to this yet to figure out
> >> what are his exact technical misgivings.
> >
> >I think, in the end, he (and Ingo) were advocating just doing a full
> >emulation of the Intel/AMD update mechanism in the set/getmsr PV
> >callbacks. Which is doable but... well, not pretty. Maybe a new attempt
> >with get a new reception.
>
> I can add my experience from the perspective of a user trying to get
> early microcode loading to work with my system:
>
> First of all I can confirm that it sort of works - but as Jeremy has
> pointed out, there seem to be issues with including it into the
> initramfs. After many unsuccessful tries I also only got it to work
> when I used a separate entry in multiboot (grub2) which referred to
> the blob for uploading the payload to the CPU.
>
> As soon as I had the microcode integrated into the initramfs as
> described at
> http://lists.xen.org/archives/html/xen-devel/2013-09/msg02902.html
> the system would no longer boot with a message stating that it could
> not find the root filesystem - I assume that was at the time when
> the initramfs was about to be unpacked and loaded (if I recall
> correctly there were no messages from the initramfs on screen).
> Therefore I couldn't verify whether the microcode was actually
> lodaded before that.
Hm, that would imply that Linux couldn't skip past the 'non-gzip'
payload of the initramfs. But it does work for me so I am wondering
what I am doing differently.
Could you send an email with your .config and perhaps your serial log
if you still have it?
>
> My feeling at that time was that the unpacking of the initramfs had
> failed and it was probably more a linux issue rather than a XEN
> issue - albeit the concatenated file which per the link above should
> be created by
>
> "cat ucode.cpio /boot/initrd-3.5.0.img >/boot/initrd-3.5.0.ucode.img"
>
> does not resemble a valid cpio archive any longer (you also can't
> work with it on the command line - e.g. list its content). I assume
> that though the kernel expects a valid cpio format file and
> therefore is unable to unpack and subsequently fails.
It should skip the bits that it does not understand.
>
> But in any case, with the additional file in multiboot it works
> flawlessly. The only catch is that the file distributed by Intel
> (the microcode.dat which is a text file) has to be converted inot a
> binary file (I also stripped it down to only contain the parts
> necessary for my CPU, but I don't know whether that's strictly
> necessary). And it must _NOT_ be a cpio archive in that case.
You should be able to do 'cat /lib/firmware/intel_ucode/* > /boot/microcode.blob'
and that would do it too.
>
> Searching google there are a few tools available to convert the
> Intel distributed microcode.dat to binary format and reduce it to
> only the parts required for a specific CPU.
>
> Regards Atom2
next prev parent reply other threads:[~2014-03-11 17:54 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-03-06 5:21 How many patches are missing in upstream Linux? Zhang, Yang Z
2014-03-06 10:38 ` Jan Beulich
2014-03-06 13:47 ` Fabio Fantoni
2014-03-06 19:26 ` Konrad Rzeszutek Wilk
2014-03-06 19:36 ` David Vrabel
2014-03-06 19:39 ` Konrad Rzeszutek Wilk
2014-03-07 1:35 ` Zhang, Yang Z
2014-03-07 1:49 ` Zhang, Yang Z
2014-03-07 9:16 ` Jan Beulich
2014-03-10 20:55 ` Jeremy Fitzhardinge
2014-03-11 15:04 ` Konrad Rzeszutek Wilk
2014-03-11 16:15 ` Jan Beulich
2014-03-11 17:38 ` Konrad Rzeszutek Wilk
2014-03-11 17:38 ` Atom2
2014-03-11 17:53 ` Konrad Rzeszutek Wilk [this message]
2014-03-11 18:35 ` Atom2
2014-03-11 20:33 ` Konrad Rzeszutek Wilk
2014-03-12 1:00 ` Atom2
2014-03-12 8:20 ` Jan Beulich
2014-03-12 11:14 ` Atom2
2014-03-12 11:42 ` Jan Beulich
2014-03-12 11:58 ` Atom2
2014-03-12 13:50 ` Konrad Rzeszutek Wilk
2014-03-12 15:09 ` Atom2
2014-03-12 16:30 ` Konrad Rzeszutek Wilk
2014-03-11 13:32 ` Ian Campbell
2014-03-11 15:09 ` Konrad Rzeszutek Wilk
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20140311175352.GC15088@phenom.dumpdata.com \
--to=konrad.wilk@oracle.com \
--cc=JBeulich@suse.com \
--cc=ariel.atom2@web2web.at \
--cc=boris.ostrovsky@oracle.com \
--cc=daniel.kiper@oracle.com \
--cc=david.vrabel@citrix.com \
--cc=jeremy@goop.org \
--cc=xen-devel@lists.xenproject.org \
--cc=yang.z.zhang@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).