Re: [PATCHv3 1/3] USB: gadget: mass/file storage: set serial number

Michał Nazarewicz
2010-07-20T14:39:22Z

On Tue, 20 Jul 2010 16:08:53 +0200, Alan Stern <stern@rowland.harvard.edu> wrote:

> On Tue, 20 Jul 2010, [utf-8] MichaÅ‚ Nazarewicz wrote:
>
>> > On Mon, 19 Jul 2010, [utf-8] Michal‚ Nazarewicz wrote:
>> >> 1/3: http://lkml.org/lkml/2010/7/8/317
>> >> Adds serial to mass storage gadget and g_multi introducing
>> >> fsg_string_serial_fill() macro used by abovementioned
>> >> gadgets and file storage gadget.
>>
>> On Mon, 19 Jul 2010 19:06:32 +0200, Alan Stern <stern@rowland.harvard.edu> wrote:
>> > Ah, yes. My personal taste would be to write fsg_string_serial_fill_n
>> > as an inline routine instead of as a macro, and not try to make it
>> > separate from fsg_string_serial_fill.
>>
>> Not sure what you meant by "make it separate from fsg_string_serial_fill".
>
> I mean have a single function, called "fsg_string_serial_fill", instead
> of two separate macros called "fsg_string_serial_fill" and
> "fsg_string_serial_fill_n".

I wanted to keep fsg_string_serial_fill() as a macro so that it can
use ARRAY_SIZE() on the first argument to check the size. If there
was a single function it would have to explicitly take the length of
the destination array as an argument -- that's what the *_n() function
is for.

The rationale is that not having to use ARRAY_SIZE() is, well,
simpler. ;)

Basically, what you are proposing is to remove the
fsg_string_serial_fill() macro and leave only the *_n() changed to
an inline function and force all callers use sizeof/ARRAY_SIZE().

Am I getting that right? Personally, I'd leave things like they are
changing the *_n() to a function. What do you think?

--
Best regards, _ _
| Humble Liege of Serenely Enlightened Majesty of o' \,=./ `o
| Computer Science, Michał "mina86" Nazarewicz (o o)
+----[mina86*mina86.com]---[mina86*jabber.org]----ooO--(_)--Ooo--