From mboxrd@z Thu Jan 1 00:00:00 1970 From: joe@perches.com (Joe Perches) Date: Tue, 18 Mar 2014 17:47:52 -0700 Subject: [PATCH 00/12] scsi/NCR5380: fix debugging macros and #include structure In-Reply-To: References: <20140318002822.372705594@telegraphics.com.au> <1395112756.20860.1.camel@joe-AO722> <1395146702.2812.47.camel@joe-AO722> <1395148051.2812.51.camel@joe-AO722> Message-ID: <1395190072.8649.2.camel@joe-AO722> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org On Wed, 2014-03-19 at 10:14 +1100, Finn Thain wrote: > As for side-effects, chip register accesses would be affected if dprintk() > expanded to no_printk() when NDEBUG & flg == 0. > > E.g. NCR5380.c line 1213: > dprintk(NDEBUG_INTR, "scsi : unknown interrupt, BASR 0x%X, MR 0x%X, SR 0x%x\n", > basr, NCR5380_read(MODE_REG), NCR5380_read(STATUS_REG)); > > I don't want to re-introduce side-effects into a dozen different NCR5380 > drivers on three different architectures when I can test only one of those > drivers. It's difficult to get good code coverage even for one driver. Hi again Finn. If dprintk expanded directly to no_printk, then true. But using "if (0)" prevents the no_printk from occurring at all so there would be no side-effects and the format & args would still be verified by the compiler. So I believe you shouldn't worry about side-effects. cheers, Joe