From mboxrd@z Thu Jan 1 00:00:00 1970 From: Joe Perches Subject: Re: [PATCH 1/2] [RFC] NET: Implement a standard ndev_printk family Date: Mon, 11 Jun 2007 11:28:12 -0700 Message-ID: <1181586492.9836.12.camel@localhost> References: <20070608220007.31573.14931.stgit@localhost.localdomain> <20070608162415.1481dfec@localhost.localdomain> <4669E967.5030708@intel.com> <20070608171040.2b4a2dd7@localhost.localdomain> <466D86B2.8070504@intel.com> <20070611105018.1beaa396@localhost.localdomain> Mime-Version: 1.0 Content-Type: text/plain Content-Transfer-Encoding: 7bit Cc: "Kok, Auke" , netdev@vger.kernel.org, jeff@garzik.org, davem@davemloft.net, arjan@linux.intel.com To: Stephen Hemminger Return-path: Received: from DSL022.labridge.com ([206.117.136.22]:4122 "EHLO Perches.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754521AbXFKTTG (ORCPT ); Mon, 11 Jun 2007 15:19:06 -0400 In-Reply-To: <20070611105018.1beaa396@localhost.localdomain> Sender: netdev-owner@vger.kernel.org List-Id: netdev.vger.kernel.org I like the ndev_printk idea. I think a ndev_ printks should take a const netdev* as the first argument. Also, better for the non-debug use of ndev_dbg is to have a static inline function so printf args are verified. For instance, dev_dbg does: static inline int __attribute__ ((format (printf, 2, 3))) dev_dbg(struct device * dev, const char * fmt, ...) { return 0; } Perhaps ndev_dbg should look like this: static inline int __attribute ((format (printf, 3, 4))) __ndev_dbg(const struct net_device *netdev, u32 level, const char *format, ...) { return 0; } #define ndev_dbg(netdev, level, fmt, args...) \ __ndev_dbg(netdev, NETIF_MSG_##level, fmt, ##args)