[PATCH] libc: posix_fadvise: Fix build breakage for !LFS

Bernhard Reutner-Fischer rep.dot.nop at gmail.com
Mon Aug 18 10:01:20 UTC 2014


On Tue, Jul 22, 2014 at 08:03:58PM +0530, Vineet Gupta wrote:
> On Thursday 12 June 2014 09:40 PM, Bernhard Reutner-Fischer wrote:
> > On Tue, Apr 01, 2014 at 10:53:29AM +0530, Vineet Gupta wrote:
> >> Ping ^ 2
> >>
> >> On Tuesday 04 February 2014 10:02 AM, Vineet Gupta wrote:
> >>> Ping !
> >>>
> >>> On Thursday 09 January 2014 03:05 PM, Vineet Gupta wrote:
> >>>> commit 00571b43df2e "libc: posix_fadvise: restore implementation for xtensa"
> >>>> enabled posix_fadvise() for all arches (it was just not generated
> >>>> before).
> >>>>
> >>>> However this also unearthed an issue introduced by ee84b8b400
> >>>> "linux: posix_fadvise: use new SYSCALL_ALIGN_64BIT" which is to
> >>>> referencing LFS'ish code (off64_t) w/o proper checks which causes build
> >>>> to break for !LFS.
> >>>>
> >>>> Fix this by calling posix_fadvise64() only for LFS case and open-code
> >>>> it's equivalent for !LFS.
> > 
> > I do not like the open-coding, can we avoid it?
> 
> I don't like it too however I don't see how it will work. W/o LFS we can't call
> any *64 stuff.
> 
> > I.e. let the __NR_fadvise64_64 based impl live in posix_fadvise64.c,
> > __WORDSIZE == 64 ?
> 
> I don't think I understand.
> 
> 1. My patch doesn't touch wordsize == 64 case, it handles the size 32 case.
> 2. I agree that current code is open coding posix_fadvise64 inside posix_fadvise,
> but I don't know a better way of doing it - ideas / suggestions welcome !

We can revisit this later.
Applied this one for now, thanks!


More information about the uClibc mailing list