* [Buildroot] [PATCH 1/1] fio: fix missing fallocate64()
@ 2014-05-09 20:42 Frank Bergmann
2014-05-12 19:44 ` Thomas Petazzoni
0 siblings, 1 reply; 5+ messages in thread
From: Frank Bergmann @ 2014-05-09 20:42 UTC (permalink / raw)
To: buildroot
Current nios2 toolchain is missing the falloacte64() function call. The
configure script does not detect this correctly and the C library is
swapping fallocate with fallocate64 while compiling with the LARGEFILE*
flags.
The patch disables fallocate in the configure script.
Fixes http://autobuild.buildroot.net/results/9cd30031a40f768f6090cfba44c880fb2406672b
Signed-off-by: Frank Bergmann <frank@frajasalo.de>
---
.../fio-0001-nios2-configure-disable-fallocate.patch | 18 ++++++++++++++++++
package/fio/fio.mk | 4 ++++
2 files changed, 22 insertions(+)
create mode 100644 board/common-nios2/fio/fio-0001-nios2-configure-disable-fallocate.patch
diff --git a/board/common-nios2/fio/fio-0001-nios2-configure-disable-fallocate.patch b/board/common-nios2/fio/fio-0001-nios2-configure-disable-fallocate.patch
new file mode 100644
index 0000000..97b8b63
--- /dev/null
+++ b/board/common-nios2/fio/fio-0001-nios2-configure-disable-fallocate.patch
@@ -0,0 +1,18 @@
+configure: Disable fallocate
+
+Signed-off-by: Frank Bergmann <frank@frajasalo.de>
+
+--- fio-fio-2.1.4.orig/configure 2013-11-16 19:15:12.000000000 +0100
++++ fio-fio-2.1.4/configure 2014-05-09 20:06:35.000000000 +0200
+@@ -578,7 +578,10 @@ int main(int argc, char **argv)
+ }
+ EOF
+ if compile_prog "" "" "linux_fallocate"; then
+- linux_fallocate="yes"
++ # For nios2 disable fallocate because with LARGE_FILE flags it
++ # becomes fallocate64 which isn't available
++ #linux_fallocate="yes"
++ linux_fallocate="no"
+ fi
+ echo "Linux fallocate $linux_fallocate"
+
diff --git a/package/fio/fio.mk b/package/fio/fio.mk
index f9a690e..311779b 100644
--- a/package/fio/fio.mk
+++ b/package/fio/fio.mk
@@ -9,6 +9,10 @@ FIO_SITE = git://git.kernel.dk/fio.git
FIO_LICENSE = GPLv2 + special obligations
FIO_LICENSE_FILES = LICENSE
+ifeq ($(BR2_nios2),y)
+BR2_GLOBAL_PATCH_DIR += "board/common-nios2"
+endif
+
define FIO_CONFIGURE_CMDS
(cd $(@D); ./configure --cc="$(TARGET_CC)" --extra-cflags="$(TARGET_CFLAGS)")
endef
--
1.9.1
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [Buildroot] [PATCH 1/1] fio: fix missing fallocate64()
2014-05-09 20:42 [Buildroot] [PATCH 1/1] fio: fix missing fallocate64() Frank Bergmann
@ 2014-05-12 19:44 ` Thomas Petazzoni
2014-05-19 19:34 ` Frank Bergmann
0 siblings, 1 reply; 5+ messages in thread
From: Thomas Petazzoni @ 2014-05-12 19:44 UTC (permalink / raw)
To: buildroot
Dear Frank Bergmann,
On Fri, 9 May 2014 22:42:48 +0200, Frank Bergmann wrote:
> +ifeq ($(BR2_nios2),y)
> +BR2_GLOBAL_PATCH_DIR += "board/common-nios2"
> +endif
Unfortunately, we don't want to have architecture-specific patches, and
not applied with this mechanism.
I believe the easiest solution is just to make the fio package not
available on NIOS II.
Thanks,
Thomas
--
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
^ permalink raw reply [flat|nested] 5+ messages in thread
* [Buildroot] [PATCH 1/1] fio: fix missing fallocate64()
2014-05-12 19:44 ` Thomas Petazzoni
@ 2014-05-19 19:34 ` Frank Bergmann
2014-05-19 20:15 ` Thomas Petazzoni
0 siblings, 1 reply; 5+ messages in thread
From: Frank Bergmann @ 2014-05-19 19:34 UTC (permalink / raw)
To: buildroot
Dear Thomas Petazzoni,
On 12.05.2014 21:44, Thomas Petazzoni wrote:
> Dear Frank Bergmann,
>
> On Fri, 9 May 2014 22:42:48 +0200, Frank Bergmann wrote:
>
>> +ifeq ($(BR2_nios2),y)
>> +BR2_GLOBAL_PATCH_DIR += "board/common-nios2"
>> +endif
>
> Unfortunately, we don't want to have architecture-specific patches, and
> not applied with this mechanism.
Sorry I didn't take notice of that.
Maybe someone could edit chapter 3.4.4 "Customizing packages"
(http://buildroot.org/downloads/manual/manual.html#packages-custom)
where such architecture-specific patches are mentioned to avoid
misinterpreting it like I did.
With regards,
Frank Bergmann.
^ permalink raw reply [flat|nested] 5+ messages in thread
* [Buildroot] [PATCH 1/1] fio: fix missing fallocate64()
2014-05-19 19:34 ` Frank Bergmann
@ 2014-05-19 20:15 ` Thomas Petazzoni
2014-05-19 20:44 ` Frank Bergmann
0 siblings, 1 reply; 5+ messages in thread
From: Thomas Petazzoni @ 2014-05-19 20:15 UTC (permalink / raw)
To: buildroot
Dear Frank Bergmann,
On Mon, 19 May 2014 21:34:44 +0200, Frank Bergmann wrote:
> On 12.05.2014 21:44, Thomas Petazzoni wrote:
> > Dear Frank Bergmann,
> >
> > On Fri, 9 May 2014 22:42:48 +0200, Frank Bergmann wrote:
> >
> >> +ifeq ($(BR2_nios2),y)
> >> +BR2_GLOBAL_PATCH_DIR += "board/common-nios2"
> >> +endif
> >
> > Unfortunately, we don't want to have architecture-specific patches, and
> > not applied with this mechanism.
>
> Sorry I didn't take notice of that.
> Maybe someone could edit chapter 3.4.4 "Customizing packages"
> (http://buildroot.org/downloads/manual/manual.html#packages-custom)
> where such architecture-specific patches are mentioned to avoid
> misinterpreting it like I did.
I don't think chapter 3.4.4 is wrong, but the BR2_GLOBAL_PATCH_DIR is
not meant to be used by Buildroot upstream itself. It's a way for
Buildroot *users* to apply their own custom patches on top of the
various packages that Buildroot has.
Thomas
--
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
^ permalink raw reply [flat|nested] 5+ messages in thread
* [Buildroot] [PATCH 1/1] fio: fix missing fallocate64()
2014-05-19 20:15 ` Thomas Petazzoni
@ 2014-05-19 20:44 ` Frank Bergmann
0 siblings, 0 replies; 5+ messages in thread
From: Frank Bergmann @ 2014-05-19 20:44 UTC (permalink / raw)
To: buildroot
On 19.05.2014 22:15, Thomas Petazzoni wrote:
> Dear Frank Bergmann,
>
> On Mon, 19 May 2014 21:34:44 +0200, Frank Bergmann wrote:
>
>> On 12.05.2014 21:44, Thomas Petazzoni wrote:
>>> Dear Frank Bergmann,
>>>
>>> On Fri, 9 May 2014 22:42:48 +0200, Frank Bergmann wrote:
>>>
>>>> +ifeq ($(BR2_nios2),y)
>>>> +BR2_GLOBAL_PATCH_DIR += "board/common-nios2"
>>>> +endif
>>>
>>> Unfortunately, we don't want to have architecture-specific patches, and
>>> not applied with this mechanism.
>>
>> Sorry I didn't take notice of that.
>> Maybe someone could edit chapter 3.4.4 "Customizing packages"
>> (http://buildroot.org/downloads/manual/manual.html#packages-custom)
>> where such architecture-specific patches are mentioned to avoid
>> misinterpreting it like I did.
>
> I don't think chapter 3.4.4 is wrong, but the BR2_GLOBAL_PATCH_DIR is
> not meant to be used by Buildroot upstream itself. It's a way for
> Buildroot *users* to apply their own custom patches on top of the
> various packages that Buildroot has.
Ah, I understand now. Thanks for the explanation !
Regards,
Frank Bergmann.
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2014-05-19 20:44 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-05-09 20:42 [Buildroot] [PATCH 1/1] fio: fix missing fallocate64() Frank Bergmann
2014-05-12 19:44 ` Thomas Petazzoni
2014-05-19 19:34 ` Frank Bergmann
2014-05-19 20:15 ` Thomas Petazzoni
2014-05-19 20:44 ` Frank Bergmann
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.