On Sat, Dec 3, 2016 at 3:52 PM, Greg KH <gregkh@xxxxxxxxxxxxxxxxxxx> wrote: > On Sat, Dec 03, 2016 at 03:41:19PM +0530, Chinmay VS wrote: >> From: ChinmayVS <cvs268@xxxxxxxxx> >> >> Macros with multiple statements should be enclosed in a do - while loop >> >> Signed-off-by: ChinmayVS <cvs268@xxxxxxxxx> >> --- >> drivers/staging/greybus/loopback.c | 4 +++- >> 1 file changed, 3 insertions(+), 1 deletion(-) >> >> diff --git a/drivers/staging/greybus/loopback.c b/drivers/staging/greybus/loopback.c >> index 7882306..39f0a25 100644 >> --- a/drivers/staging/greybus/loopback.c >> +++ b/drivers/staging/greybus/loopback.c >> @@ -177,9 +177,11 @@ static ssize_t name##_avg_show(struct device *dev, \ >> static DEVICE_ATTR_RO(name##_avg) >> >> #define gb_loopback_stats_attrs(field) \ >> +do { \ >> gb_loopback_ro_stats_attr(field, min, u); \ >> gb_loopback_ro_stats_attr(field, max, u); \ >> - gb_loopback_ro_avg_attr(field) >> + gb_loopback_ro_avg_attr(field) \ >> +} while (0) >> >> #define gb_loopback_attr(field, type) \ >> static ssize_t field##_show(struct device *dev, \ > > Always build test your changes so you don't get a grumpy maintainer > yelling at you for not test-building your patches... > Thanks. My bad. Now that i tried and saw it doesn't even build, i see my mistake. gb_loopback_stats_attrs() is used to define functions from a template. The macro is not in any function by itself already. Back to running checkpatch and finding other ERRORs to cleanup in staging. (will remember to +V before pushing to the mailing list.) _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel