From patchwork Thu Jun 18 11:22:27 2009 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Nikitenko X-Patchwork-Id: 31104 Received: from vger.kernel.org (vger.kernel.org [209.132.176.167]) by demeter.kernel.org (8.14.2/8.14.2) with ESMTP id n5IBLq54023043 for ; Thu, 18 Jun 2009 11:21:52 GMT Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756833AbZFRLVq (ORCPT ); Thu, 18 Jun 2009 07:21:46 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1755828AbZFRLVq (ORCPT ); Thu, 18 Jun 2009 07:21:46 -0400 Received: from mail-bw0-f213.google.com ([209.85.218.213]:33832 "EHLO mail-bw0-f213.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1756833AbZFRLVq (ORCPT ); Thu, 18 Jun 2009 07:21:46 -0400 Received: by bwz9 with SMTP id 9so979613bwz.37 for ; Thu, 18 Jun 2009 04:21:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:date:from:to:cc:subject :message-id:references:mime-version:content-type:content-disposition :in-reply-to:user-agent; bh=idEoE6S7eDxSY0dgJmaU6OWTLLOkZTRJwXpOit/vlJ4=; b=u7CFmgllYp8JyEyRPU5RPE1amwQjS+EcWL3ZEXhUPfG8K1oEs7oE+7CV1V1kgpnmN0 WIztOuD0DnvSeRIiRxPqLPSL7BxByheeTz99u295Kl1NTOMrW10KHUQiFEuXwciFQfnI k2DFRIGpJ3QhjYdCBqNlyt5gfHf7A+CtHWY5Q= 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=v7r8f3PB5fYGVPO7Gus6J/dbLYdkhSdbTOKdLbojndlpPlTmybquE/bpTpIpYn3fx2 4u58WprSty3bVn5wTxSKXVmct9ZTzmLiKwKJaIy9IXUFKAl/7cSPty90Y9Gmn0mAOGzO LMTRXuJtqGWp1QAHHst7nZFC+b6qNtgNWb+Gs= Received: by 10.204.116.15 with SMTP id k15mr1226578bkq.118.1245324107787; Thu, 18 Jun 2009 04:21:47 -0700 (PDT) Received: from localhost ([193.179.131.38]) by mx.google.com with ESMTPS id b17sm3435074fka.6.2009.06.18.04.21.47 (version=TLSv1/SSLv3 cipher=RC4-MD5); Thu, 18 Jun 2009 04:21:47 -0700 (PDT) Date: Thu, 18 Jun 2009 13:22:27 +0200 From: Jan Nikitenko To: Antti Palosaari Cc: linux-media@vger.kernel.org, Mauro Carvalho Chehab Subject: [PATCH] af9015: avoid magically sized temporal buffer in eeprom_dump Message-ID: <20090618112227.GA9930@nikitenko.systek.local> References: <4A2EF922.5040102@iki.fi> <20090618111253.GC9575@nikitenko.systek.local> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <4A2EF922.5040102@iki.fi> User-Agent: Mutt/1.5.16 (2007-06-09) Sender: linux-media-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-media@vger.kernel.org Replace printing to magically sized temporal buffer with use of KERN_CONT for continual printing of eeprom registers dump. Since deb_info is defined as dprintk, which is defined as printk without additional parameters, meaning that deb_info is equivalent to direct printk (without KERN_ facility), we can use KERN_DEBUG and KERN_CONT in there, eliminating the need for sprintf into temporal buffer with not easily readable/magical size. Though it's strange, that deb_info definition uses printk without KERN_ facility and callers don't use it either. Signed-off-by: Jan Nikitenko --- (added missing Singned-off) I do not see better solution for the magical sized buffer, since print_hex_dump like functions need dump of registers in memory (so the magical sized temporal buffer would be needed for a copy anyway). If deb_info was defined with inside KERN_ facility, then this patch would not be valid and so the magically sized temporal buffer might be acceptable to keep there. This patch depends on 'af9015: fix stack corruption bug' patch. linux/drivers/media/dvb/dvb-usb/af9015.c | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html diff -r 722c6faf3ab5 linux/drivers/media/dvb/dvb-usb/af9015.c --- a/linux/drivers/media/dvb/dvb-usb/af9015.c Wed Jun 17 22:39:23 2009 -0300 +++ b/linux/drivers/media/dvb/dvb-usb/af9015.c Thu Jun 18 08:49:58 2009 +0200 @@ -541,24 +541,22 @@ /* dump eeprom */ static int af9015_eeprom_dump(struct dvb_usb_device *d) { - char buf[4+3*16+1], buf2[4]; u8 reg, val; for (reg = 0; ; reg++) { if (reg % 16 == 0) { if (reg) - deb_info("%s\n", buf); - sprintf(buf, "%02x: ", reg); + deb_info(KERN_CONT "\n"); + deb_info(KERN_DEBUG "%02x:", reg); } if (af9015_read_reg_i2c(d, AF9015_I2C_EEPROM, reg, &val) == 0) - sprintf(buf2, "%02x ", val); + deb_info(KERN_CONT, " %02x", val); else - strcpy(buf2, "-- "); - strcat(buf, buf2); + deb_info(KERN_CONT, " --"); if (reg == 0xff) break; } - deb_info("%s\n", buf); + deb_info(KERN_CONT "\n"); return 0; }