From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753389AbcCGRP6 (ORCPT ); Mon, 7 Mar 2016 12:15:58 -0500 Received: from mail-vk0-f43.google.com ([209.85.213.43]:36334 "EHLO mail-vk0-f43.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752803AbcCGRPu (ORCPT ); Mon, 7 Mar 2016 12:15:50 -0500 MIME-Version: 1.0 Reply-To: sedat.dilek@gmail.com In-Reply-To: References: Date: Mon, 7 Mar 2016 18:15:49 +0100 Message-ID: Subject: Re: [PATCH] usbhid: Fix lockdep unannotated irqs-off warning From: Sedat Dilek To: Jiri Kosina Cc: Alan Stern , Steven Rostedt , Tejun Heo , Lai Jiangshan , Benjamin Tissoires , Paul McKenney , Andy Lutomirski , LKML , USB list , Greg Kroah-Hartman , Peter Zijlstra , Ingo Molnar Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, Mar 7, 2016 at 6:05 PM, Jiri Kosina wrote: > On Mon, 7 Mar 2016, Alan Stern wrote: > >> > 319: 9c pushfq >> > 31a: 41 5c pop %r12 >> > 31c: 48 89 df mov %rbx,%rdi >> > 31f: e8 00 00 00 00 callq 324 >> > 324: 41 54 push %r12 >> > 326: 9d popfq >> >> spin_unlock_irq(&usbhid->lock); while attempting to preserve the Z >> flag. The problem is that this code sequence will also preserve the >> Interrupt Flag! > > You are right Alan, thanks a lot, for reason I could not understand I > completely missed the pushf/popf last time I was looking at the generated > assembly! > > OK, a little bit of googling revealed related discussion on LLVM > mailinglist: > > http://lists.llvm.org/pipermail/llvm-dev/2015-July/088780.html > > Seems like it has been reported already, but noone dared to fix it yet. > > This basically makes LLVM unusable for compiling the kernel. > OK, OK. Did someone look at the next/follow-ups in this thread? For example: D6629 "x86: Emit LAHF/SAHF instead of PUSHF/POPF" [2]? - Sedat - [1] http://lists.llvm.org/pipermail/llvm-dev/2015-July/088874.html [2] http://reviews.llvm.org/D6629