[Ocfs2-test-devel] [REPORT] splice_test.h: conflicting types for ‘splice' comes again

tristan.ye tristan.ye at oracle.com
Mon Apr 13 02:08:19 PDT 2009


On Mon, 2009-04-13 at 16:46 +0800, Coly Li wrote:
> 
> tristan.ye Wrote:
> > On Mon, 2009-04-13 at 14:51 +0800, Coly Li wrote:
> >> On openSuSE 11.1 (almost same to SLES11) the splice in bits/fcntl.h is:
> >> /* Splice two files together.  */
> >> extern ssize_t splice (int __fdin, __off64_t *__offin, int __fdout,
> >>                        __off64_t *__offout, size_t __len,
> >>                        unsigned int __flags);
> >>
> >> And the bits/types.h is:
> >> /* These few don't really vary by system, they always correspond
> >>    to one of the other defined types.  */
> >> typedef __off64_t __loff_t;     /* Type of file sizes and offsets (LFS).  */
> >>
> >> The conflict is on the return value of splice() in bits/fcntl.h, which is int
> >> VS. ssize_t.
> > 
> > It's interesting, the return value of splice from bits/fcntl.h was 'int'
> > instead of ssize_t, that mean I will hit type conflicting error when
> > applying your patch this time:-), things are going to run into a loop..
> > 
> > The best solution for us anyway is to explicitly use splice() defined in
> > splice_test.h by force(I thought that's also the intention of original
> > author) regardless of glibc's splice().
> > 
> > That means we can use a different name such as my_splice() from glibc
> > one.
> > 
> > How do you think about it?
> 
> 1) ssize_t on 32bit system should be int, if your machine is 64bit x86, it
> should still be problematic. BTW, what's the name & version of your devel
> distribution ?

I worked under RHEL5 and its arch was x86_64, I've sent out the
corresponding patch, it should resolve your problem:)

> 
> 
> 2) I strongly suggest to call a test-suit version splice() explicitly. Complying
> glibc declaration without calling the glibc version is kind of confusion (at
> least to me). I can not agree more with your suggestion ;))

Cool, that's a good compromise between you and me i thought:)

> 
> Thanks.




More information about the Ocfs2-test-devel mailing list