From mboxrd@z Thu Jan 1 00:00:00 1970 From: Paolo Bonzini Subject: Re: [GIT PULL] First batch of KVM changes for 4.1 Date: Thu, 23 Apr 2015 14:02:29 +0200 Message-ID: <5538DF55.30709@redhat.com> References: <553100C1.5000408@redhat.com> <20150417131037.GG23123@twins.programming.kicks-ass.net> <55310CF2.6070107@redhat.com> <20150417190146.GA24395@amt.cnet> <55316598.908@redhat.com> <20150417201841.GA31302@amt.cnet> <55353058.2000008@redhat.com> <20150422212148.GA17494@amt.cnet> <5538B7B3.2020009@redhat.com> <20150423115117.GA32371@amt.cnet> Mime-Version: 1.0 Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 8bit Cc: Andy Lutomirski , Peter Zijlstra , Linus Torvalds , "linux-kernel@vger.kernel.org" , Gleb Natapov , kvm list , Ralf Baechle , Andrew Lutomirski To: Marcelo Tosatti Return-path: In-Reply-To: <20150423115117.GA32371@amt.cnet> Sender: linux-kernel-owner@vger.kernel.org List-Id: kvm.vger.kernel.org On 23/04/2015 13:51, Marcelo Tosatti wrote: >>> > > https://bugzilla.redhat.com/show_bug.cgi?id=1174664 >> > >> > That was the missing volatile in an asm. Older compilers didn't catch >> > it. :( > How do you know that? It looks like memory corruption (look at the > pattern at the end). I suspect some kind of operator error there, it makes no sense. On the other hand, bug 1178975 is much clearer and the symptoms are the same. In that bug, you can see that the same kernel source works on f20 (package version 3.17.7-200.fc20.x86_64) and fails on f21 (package version 3.17.7-300.fc21.x86_64). Of course the compiler is different. The newer one hoists the lsl out of the loop; if you get a CPU migration at the wrong time, the cpu != cpu1 condition will always be true the loop will never exit. Paolo