From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrew Cooper Subject: Re: [PATCH] x86, amd_ucode: Skip microcode updates for final levels Date: Fri, 31 Jul 2015 21:48:28 +0100 Message-ID: <55BBDF1C.3080809@citrix.com> References: <1438273386-4733-1-git-send-email-aravind.gopalakrishnan@amd.com> <55BA5866.4070009@citrix.com> <55BBDE61.8060806@amd.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <55BBDE61.8060806@amd.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Aravind Gopalakrishnan , jbeulich@suse.com Cc: boris.ostrovsky@oracle.com, xen-devel@lists.xen.org, keir@xen.org, Suravee.Suthikulpanit@amd.com, "Hurwitz, Sherry" List-Id: xen-devel@lists.xenproject.org On 31/07/2015 21:45, Aravind Gopalakrishnan wrote: > On 7/30/2015 12:01 PM, Andrew Cooper wrote: >> On 30/07/15 17:23, Aravind Gopalakrishnan wrote: >>> Some of older[Fam10h] systems require that the microcode versions >>> that it comes up with should not be updated by the microcode driver. >>> Otherwise, system hangs are known to occur. >>> >>> In this patch, we check for those microcode versions and abort the >>> update process if existing microcode level is already applied by >>> the BIOS. >>> >>> A linux version of the patch has already made it into tip- >>> http://marc.info/?l=linux-kernel&m=143703405627170 >>> >>> Signed-off-by: Aravind Gopalakrishnan >>> --- >>> xen/arch/x86/microcode_amd.c | 31 +++++++++++++++++++++++++++++++ >>> 1 file changed, 31 insertions(+) >>> >>> diff --git a/xen/arch/x86/microcode_amd.c >>> b/xen/arch/x86/microcode_amd.c >>> index f79b397..c958a47 100644 >>> --- a/xen/arch/x86/microcode_amd.c >>> +++ b/xen/arch/x86/microcode_amd.c >>> @@ -347,6 +347,30 @@ static int container_fast_forward(const void >>> *data, size_t size_left, size_t *of >>> return 0; >>> } >>> >> Please include the same comment as the Linux patch, explaining that >> these microcode versions can't be updated from. > > Ok, will do that. > >> I would also like to see some documentation from AMD concerning this. > > (hopefully) answering Boris' question too here- > > So, the patch id values have only been obtained empirically. > The Linux patch provides the bug reference for > this:https://bugzilla.suse.com/show_bug.cgi?id=913996 > (It's a fairly long thread but the gist of it is that people > predominantly seem to be experiencing system hang issues > when they try to update microcode levels from these patch ids: > 0x01000098, 0x0100009f, 0x010000af) > > From discussing about it internally, we gathered that OS/hypervisor > cannot reliably perform microcode updates beyond these specified levels > due to HW issues. Ok - please include this information in the comment as well please. ~Andrew