public inbox for linux-media@vger.kernel.org
 help / color / mirror / Atom feed
From: Baruch Siach <baruch@tkos.co.il>
To: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
Cc: Ezequiel Garcia <ezequiel@collabora.com>,
	linux-media@vger.kernel.org, Hans Verkuil <hverkuil@xs4all.nl>,
	Peter Korsgaard <peter@korsgaard.com>
Subject: Re: [PATCH] libv4l: fixup lfs mismatch in preload libraries
Date: Thu, 12 Jul 2018 22:13:53 +0300	[thread overview]
Message-ID: <87tvp4fery.fsf@tkos.co.il> (raw)
In-Reply-To: <20180712055428.0d853914@coco.lan>


Mauro Carvalho Chehab writes:

> Em Wed, 11 Jul 2018 22:38:56 +0300
> Baruch Siach <baruch@tkos.co.il> escreveu:
>> Added Peter's updated address to Cc.
>>
>> Mauro Carvalho Chehab writes:
>> > Em Wed, 11 Jul 2018 10:22:51 -0300
>> > Ezequiel Garcia <ezequiel@collabora.com> escreveu:
>> >
>> >> From: Peter Korsgaard <jacmet@sunsite.dk>
>> >>
>> >> Ensure that the lfs variants are not transparently used instead of the !lfs
>> >> ones so both can be wrapped, independently of any custom CFLAGS/CPPFLAGS.
>> >>
>> >> Without this patch, the following assembler errors appear
>> >> during cross-compiling with Buildroot:
>> >>
>> >> /tmp/ccc3gdJg.s: Assembler messages:
>> >> /tmp/ccc3gdJg.s:67: Error: symbol `open64' is already defined
>> >> /tmp/ccc3gdJg.s:130: Error: symbol `mmap64' is already defined
>> >>
>> >> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
>> >> Signed-off-by: Ezequiel Garcia <ezequiel@collabora.com>
>> >> ---
>> >>  lib/libv4l1/v4l1compat.c  | 3 +++
>> >>  lib/libv4l2/v4l2convert.c | 3 +++
>> >>  2 files changed, 6 insertions(+)
>> >>
>> >> diff --git a/lib/libv4l1/v4l1compat.c b/lib/libv4l1/v4l1compat.c
>> >> index cb79629ff88f..e5c9e56261e2 100644
>> >> --- a/lib/libv4l1/v4l1compat.c
>> >> +++ b/lib/libv4l1/v4l1compat.c
>> >> @@ -19,6 +19,9 @@
>> >>  # Foundation, Inc., 51 Franklin Street, Suite 500, Boston, MA  02110-1335  USA
>> >>   */
>> >>
>> >> +/* ensure we see *64 variants and they aren't transparently used */
>> >> +#undef _LARGEFILE_SOURCE
>> >> +#undef _FILE_OFFSET_BITS
>> >
>> > Hmm... shouldn't this be autodetected? I didn't check anything,
>> > but I would be expecting that different distros (and BSD) may be
>> > doing different things here, specially if they use different gcc
>> > versions or even different libc implementations.
>>
>> See Peter's explanation here:
>>
>>   http://lists.busybox.net/pipermail/buildroot/2017-December/210067.html
>
> The link Peter provided seems to be specific to glibc. The main
> point I want to bring is: would this change affect users with
> other setups? There are some users that compile it against FreeBSD
> and Android. Some compile using dietlibc or uclibc. Also, people
> build it against 32-bits and 64-bits on x86, arm and other archs.
>
> So, the question is: are you sure that the above change is also valid for
> *all* other environments? If not, I would be expecting it to be
> attached to some automake test, to be sure that it will be applied
> only to the affected setups.

Buildroot has been carrying this patch since 2012[1] with no one
complaining. Buildroot supports glibc, uClibc, and musl libc on a wide
range of architectures (x86, ARM, MIPS, PowerPC, Sparc, xtensa, arc, and
more) both 32-bit and 64-bit.

I don't know about FreeBSD.

baruch

[1] https://git.buildroot.org/buildroot/commit/?id=d059b1cc61dcafde47723c45b834409026a39dbe

>> >>  #define _LARGEFILE64_SOURCE 1
>> >>
>> >>  #include <config.h>
>> >> diff --git a/lib/libv4l2/v4l2convert.c b/lib/libv4l2/v4l2convert.c
>> >> index 7c9a04c086ed..13ca4cfb1b08 100644
>> >> --- a/lib/libv4l2/v4l2convert.c
>> >> +++ b/lib/libv4l2/v4l2convert.c
>> >> @@ -23,6 +23,9 @@
>> >>  /* prevent GCC 4.7 inlining error */
>> >>  #undef _FORTIFY_SOURCE
>> >>
>> >> +/* ensure we see *64 variants and they aren't transparently used */
>> >> +#undef _LARGEFILE_SOURCE
>> >> +#undef _FILE_OFFSET_BITS
>> >>  #define _LARGEFILE64_SOURCE 1
>> >>
>> >>  #ifdef ANDROID

--
     http://baruch.siach.name/blog/                  ~. .~   Tk Open Systems
=}------------------------------------------------ooO--U--Ooo------------{=
   - baruch@tkos.co.il - tel: +972.52.368.4656, http://www.tkos.co.il -

  reply	other threads:[~2018-07-12 19:24 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-07-11 13:22 [PATCH] libv4l: fixup lfs mismatch in preload libraries Ezequiel Garcia
2018-07-11 14:55 ` Mauro Carvalho Chehab
2018-07-11 19:38   ` Baruch Siach
2018-07-11 22:57     ` Ezequiel Garcia
2018-07-12  8:54     ` Mauro Carvalho Chehab
2018-07-12 19:13       ` Baruch Siach [this message]
2018-07-12 20:13         ` Peter Korsgaard

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87tvp4fery.fsf@tkos.co.il \
    --to=baruch@tkos.co.il \
    --cc=ezequiel@collabora.com \
    --cc=hverkuil@xs4all.nl \
    --cc=linux-media@vger.kernel.org \
    --cc=mchehab+samsung@kernel.org \
    --cc=peter@korsgaard.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox