Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755975AbZGUVe3 (ORCPT ); Tue, 21 Jul 2009 17:34:29 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1755502AbZGUVe3 (ORCPT ); Tue, 21 Jul 2009 17:34:29 -0400 Received: from mail6.webfaction.com ([74.55.86.74]:56093 "EHLO smtp.webfaction.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755145AbZGUVe2 (ORCPT ); Tue, 21 Jul 2009 17:34:28 -0400 Date: Tue, 21 Jul 2009 22:34:36 +0100 (BST) From: Troy Moure To: Linus Torvalds cc: Krzysztof Oledzki , Greg KH , linux-kernel@vger.kernel.org, Andrew Morton , stable@kernel.org, lwn@lwn.net Subject: Re: Linux 2.6.27.27 In-Reply-To: Message-ID: References: <20090720040655.GA11940@kroah.com> <4A645A45.9060509@ans.pl> <20090720151008.GC10015@suse.de> User-Agent: Alpine 2.00 (LFD 1167 2008-08-23) MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 3795 Lines: 77 On Tue, 21 Jul 2009, Linus Torvalds wrote: > > Great. This is all about as perfect as could be asked for. Now it's just a > > question of trying to find the right code generation difference... > > Ok, that "just" is turning out to be really painful. I think I've found something interesting. Look at the the code generated for edid_checksum() in driver/video/fbmon.c. This is what I see for the -fno-strict-overflow kernel: ... ffffffff803b37ed : ffffffff803b37ed: 53 push %rbx ffffffff803b37ee: 48 89 fb mov %rdi,%rbx ffffffff803b37f1: e8 8d fd ff ff callq ffffffff803b3583 ffffffff803b37f6: 85 c0 test %eax,%eax ffffffff803b37f8: 89 c6 mov %eax,%esi ffffffff803b37fa: 74 08 je ffffffff803b3804 ffffffff803b37fc: 48 89 df mov %rbx,%rdi ffffffff803b37ff: e8 c0 fe ff ff callq ffffffff803b36c4 ffffffff803b3804: eb fe jmp ffffffff803b3804 ffffffff803b3806 : ffffffff803b3806: 41 54 push %r12 ffffffff803b3808: 48 85 ff test %rdi,%rdi ... That last insn in edid_checksum() doesn't look *quite* right to me... The -fnone kernel has something a lot more sensible-looking: ffffffff803b39dd : ffffffff803b39dd: 53 push %rbx ffffffff803b39de: 48 89 fb mov %rdi,%rbx ffffffff803b39e1: e8 8d fd ff ff callq ffffffff803b3773 : ffffffff803b3a24: 41 54 push %r12 ffffffff803b3a26: 48 85 ff test %rdi,%rdi Hope that helps narrow things down ;) Troy -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/