[PATCH 3/7 v2] nvme-fabrics: Add FC transport FC-NVME definitions
James Smart
james.smart at broadcom.com
Tue Oct 18 15:20:56 PDT 2016
On 10/18/2016 12:49 PM, Jon Derrick wrote:
> Hi James,
>
> Fair warning, I don't really deal with the fabrics part of our driver,
> and I don't see where your macro is actually used.
Its in the new FC transport files (host and target) that are added in
subsequent patches. Wouldn't be used elsewhere.
>
> On Tue, Oct 18, 2016 at 10:59:43AM -0700, James Smart wrote:
> How about:
> static inline __be32 fcnvme_lsdesc_len(size_t lsdesc_sz)
> {
> return cpu_to_be32(lsdesc_sz - 2 * sizeof(u32));
> }
>
> foo = fcnvme_lsdesc_len(sizeof(struct bar));
Yes - that would work.
What is the rule for when it should be a macro vs an inline ? It makes
sense to me to be an inline if you want to strongly check the type of an
argument, but something simple like this, it's not so clear. If I
didn't have the "cpu_to_be32" part, I'd abandon the inline and the macro
and code it directly.
-- james
More information about the Linux-nvme
mailing list