Re: [PATCH 03/18] libosd: OSDv1 Headers

From: Boaz Harrosh
Date: Wed Nov 05 2008 - 08:30:13 EST


James Bottomley wrote:
> On Wed, 2008-11-05 at 14:54 +0200, Boaz Harrosh wrote:
>>>> + struct _osd_io_info {
>>>> + struct bio *bio;
>>>> + u64 total_bytes;
>>> u64(!)
>>>
>> Do you mean that I need to use __u64? or what do you mean?
>
> He means you've used u64 in a header without actually including any file
> that defines the typedef. Linux header files aren't supposed to depend
> on include order. They're supposed to stand alone. The point is that
> if I include just #include osd_initiator.h into an empty kernel file
> it's not supposed to spit undefined errors.
>
> Right at the moment the u64 probably works because blkdev.h #includes
> the file which defines it, but you're not supposed to rely on that.
>
> James
>

I have addressed that issue. The osd_initiator.h includes the
osd_protocol.h file. osd_protocol.h does include all the types
needed. All of the osd_initiator.h types are derived from
osd_protocol.h, the only added definitions are from blkdev.h.

The very first #include in osd_initiator.c is osd_initiator.h
which preforms exactly the check you suggest.

Boaz
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/