From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1760310AbZDSMgL (ORCPT ); Sun, 19 Apr 2009 08:36:11 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1756986AbZDSMf4 (ORCPT ); Sun, 19 Apr 2009 08:35:56 -0400 Received: from mail-ew0-f176.google.com ([209.85.219.176]:42594 "EHLO mail-ew0-f176.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1757169AbZDSMfz (ORCPT ); Sun, 19 Apr 2009 08:35:55 -0400 DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=date:from:to:cc:subject:message-id:references:mime-version :content-type:content-disposition:in-reply-to:user-agent; b=KFpnW18+VGolQBy8qzFb605akq3saeFGlvPNS1Bx+2UVPbh2K7dDqzQhQwLN8rSuaP dza0/+unhuP8wJYr54//eXXk/E4fzxaQVkwTCKOdZNKZ1cXppSVE+5JVay2jgiXDKUMX UeCzTbftCkstyAtAsu8aklf09giLFAQkq+WLA= Date: Sun, 19 Apr 2009 14:35:51 +0200 From: Frederic Weisbecker To: Li Zefan Cc: Ingo Molnar , Steven Rostedt , Zhaolei , Tom Zanussi , KOSAKI Motohiro , LKML , Peter Zijlstra , Peter Zijlstra Subject: Re: [PATCH 1/2 v3] tracing/events: provide string with undefined size support Message-ID: <20090419123550.GB5967@nowhere> References: <1240117295-6873-1-git-send-email-fweisbec@gmail.com> <1240117295-6873-2-git-send-email-fweisbec@gmail.com> <49EAC188.1040409@cn.fujitsu.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <49EAC188.1040409@cn.fujitsu.com> User-Agent: Mutt/1.5.18 (2008-05-17) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Sun, Apr 19, 2009 at 02:15:36PM +0800, Li Zefan wrote: > > @@ -417,18 +495,22 @@ static struct ftrace_event_call event_##call; \ > > \ > > static void ftrace_raw_event_##call(proto) \ > > { \ > > + struct ftrace_str_offsets_##call __maybe_unused __str_offsets; \ > > struct ftrace_event_call *call = &event_##call; \ > > struct ring_buffer_event *event; \ > > struct ftrace_raw_##call *entry; \ > > unsigned long irq_flags; \ > > + int __str_size = 0; \ > > int pc; \ > > \ > > local_save_flags(irq_flags); \ > > pc = preempt_count(); \ > > \ > > + tstruct; \ > > + \ > > event = trace_current_buffer_lock_reserve(event_##call.id, \ > > - sizeof(struct ftrace_raw_##call), \ > > - irq_flags, pc); \ > > + sizeof(struct ftrace_raw_##call) + __str_size,\ > > sizeof(*entry) will make it much shorter. ;) Heh, you're right :-) I will update that. > > > + irq_flags, pc); \ > > if (!event) \ > > return; \ > > entry = ring_buffer_event_data(event); \ >