From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753765AbcCBQm4 (ORCPT ); Wed, 2 Mar 2016 11:42:56 -0500 Received: from casper.infradead.org ([85.118.1.10]:40429 "EHLO casper.infradead.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750797AbcCBQmy (ORCPT ); Wed, 2 Mar 2016 11:42:54 -0500 Date: Wed, 2 Mar 2016 17:42:49 +0100 From: Peter Zijlstra To: Steven Rostedt Cc: Sedat Dilek , Jiri Kosina , Tejun Heo , Lai Jiangshan , Benjamin Tissoires , Paul McKenney , Andy Lutomirski , LKML , linux-usb@vger.kernel.org, Greg Kroah-Hartman , Alan Stern , Felipe Balbi , Ingo Molnar Subject: Re: [PATCH] usbhid: Fix lockdep unannotated irqs-off warning Message-ID: <20160302164249.GJ6357@twins.programming.kicks-ass.net> References: <20151012205755.7ad86f4c@grimm.local.home> <20160301100740.759440b7@gandalf.local.home> <20160301151700.GU6356@twins.programming.kicks-ass.net> <20160302151713.GG6357@twins.programming.kicks-ass.net> <20160302162412.GI6357@twins.programming.kicks-ass.net> <20160302113535.6abe9a2c@gandalf.local.home> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20160302113535.6abe9a2c@gandalf.local.home> User-Agent: Mutt/1.5.21 (2012-12-30) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, Mar 02, 2016 at 11:35:35AM -0500, Steven Rostedt wrote: > On Wed, 2 Mar 2016 17:24:12 +0100 > Peter Zijlstra wrote: > > > On Wed, Mar 02, 2016 at 04:53:36PM +0100, Sedat Dilek wrote: > > > ffffffff8110f570 : > > > ffffffff8110f570: 55 push %rbp > > > ffffffff8110f571: 48 89 e5 mov %rsp,%rbp > > > ffffffff8110f574: 41 57 push %r15 > > > ffffffff8110f576: 41 56 push %r14 > > > ffffffff8110f578: 53 push %rbx > > > ffffffff8110f579: 48 83 ec 28 sub $0x28,%rsp > > > > stack offset is 0x28 bytes [*] > > Actually, isn't it really 0x40 bytes? The stack pushed 3 words (8 bytes > each) before doing the subtract. 0x28 == 40 bytes, 3 * 8 = 24, > 40 + 24 = 64 == 0x40. > > > ffffffff8110f5fd: 4c 89 75 d0 mov %r14,-0x30(%rbp) > > > ffffffff8110f601: ff 75 d0 pushq -0x30(%rbp) > > > ffffffff8110f604: 9d popfq > > > > put r14 into -0x30(rbp) and pushes/pops that, see [*] this is 8 bytes > > over stack ?! > > But from rbp, the stack is 0x40 bytes. This may be fine. Ah indeed.