From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753938AbYHPRuI (ORCPT ); Sat, 16 Aug 2008 13:50:08 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1751500AbYHPRt4 (ORCPT ); Sat, 16 Aug 2008 13:49:56 -0400 Received: from mtagate1.de.ibm.com ([195.212.29.150]:32840 "EHLO mtagate1.de.ibm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751447AbYHPRtz (ORCPT ); Sat, 16 Aug 2008 13:49:55 -0400 Subject: Re: [patch 1/3] kmsg: Kernel message catalog macros. From: Martin Schwidefsky Reply-To: schwidefsky@de.ibm.com To: Rusty Russell Cc: linux-kernel@vger.kernel.org, linux-s390@vger.kernel.org, lf_kernel_messages@lists.linux-foundation.org, Andrew Morton , Michael Holzheu , Gerrit Huizenga , Greg Kroah-Hartman , Randy Dunlap , Jan Kara , Pavel Machek , Sam Ravnborg , Joe Perches , Jochen =?ISO-8859-1?Q?Vo=DF?= , Kunai Takashi , Tim Bird In-Reply-To: <200808150922.23277.rusty@rustcorp.com.au> References: <20080730165656.118280544@de.ibm.com> <200808131433.02966.rusty@rustcorp.com.au> <1218733623.2651.14.camel@localhost> <200808150922.23277.rusty@rustcorp.com.au> Content-Type: text/plain Organization: IBM Corporation Date: Sat, 16 Aug 2008 19:49:45 +0200 Message-Id: <1218908985.6037.12.camel@localhost> Mime-Version: 1.0 X-Mailer: Evolution 2.22.3.1 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, 2008-08-15 at 09:22 +1000, Rusty Russell wrote: > On Friday 15 August 2008 03:07:03 Martin Schwidefsky wrote: > > On Wed, 2008-08-13 at 14:33 +1000, Rusty Russell wrote: > > > On Thursday 31 July 2008 02:56:57 Martin Schwidefsky wrote: > > > > From: Michael Holzheu > > > > From: Martin Schwidefsky > > > > > > > > Introduce a new family of printk macros which prefixes each kmsg > > > > message with a component name and allows to tag the printk with a > > > > message id. > > > > > > Can you hash the format string to generate the id? 6 hex digits should > > > be enough, and your tool can check for clashes. As it's bad form to have > > > identical strings for different semantics anyway, this seems to make > > > sense. > > > > First, how do you do that with the C preprocessor? Second the kmsg-doc > > script will check that the message format strings match if a kmsg with a > > specific id is used in multiple locations. > > Well, why would you do it with the preprocessor? It's simplest to spit it out > at runtime. Ok, so a specialized version of printk will do the work to calculate the hash. Only, what will we do if there ever is a conflict? The message tag has to be unique. The shorter the hash is, the more likely a collision gets. Don't know if 6 hash digits is enough to just ignore the problem. > The (offline) catalogger will need to generate them, of course. > Rusty. Sounds doable to me. -- blue skies, Martin. "Reality continues to ruin my life." - Calvin.