[PATCH] staging: greybus: Fix macro definition

Chinmay V S cvs268 at gmail.com
Sat Dec 3 10:47:37 UTC 2016


On Sat, Dec 3, 2016 at 3:52 PM, Greg KH <gregkh at linuxfoundation.org> wrote:
> On Sat, Dec 03, 2016 at 03:41:19PM +0530, Chinmay VS wrote:
>> From: ChinmayVS <cvs268 at gmail.com>
>>
>> Macros with multiple statements should be enclosed in a do - while loop
>>
>> Signed-off-by: ChinmayVS <cvs268 at gmail.com>
>> ---
>>  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.)


More information about the devel mailing list