[pve-devel] [PATCH 01/13] libc: added syncfs support / patch
Stefan Priebe
s.priebe at profihost.ag
Tue Nov 6 09:17:30 CET 2012
Signed-off-by: Stefan Priebe <s.priebe at profihost.ag>
---
.../eglibc-2.11.3/debian/control | 2 +-
.../eglibc-2.11.3/debian/patches/series | 2 +
.../debian/patches/synfs_support.patch | 129 ++++++++++++++++++++
3 files changed, 132 insertions(+), 1 deletions(-)
create mode 100644 pve-squeeze.sources/chroot_needed_to_build/eglibc-2.11.3/debian/patches/synfs_support.patch
diff --git a/pve-squeeze.sources/chroot_needed_to_build/eglibc-2.11.3/debian/control b/pve-squeeze.sources/chroot_needed_to_build/eglibc-2.11.3/debian/control
index 25e0cb8..1bca198 100644
--- a/pve-squeeze.sources/chroot_needed_to_build/eglibc-2.11.3/debian/control
+++ b/pve-squeeze.sources/chroot_needed_to_build/eglibc-2.11.3/debian/control
@@ -3,7 +3,7 @@ Section: libs
Priority: required
Build-Depends: gettext, make (>= 3.80), dpkg-dev (>= 1.15.3.1), bzip2, lzma, xz-utils, file, quilt,
autoconf, sed (>= 4.0.5-4), gawk, debhelper (>= 5.0), tar (>= 1.22),
- linux-libc-dev [!hurd-i386 !kfreebsd-i386 !kfreebsd-amd64],
+ linux-libc-dev (>= 2.6.39) [!hurd-i386 !kfreebsd-i386 !kfreebsd-amd64],
mig (>= 1.3-2) [hurd-i386], hurd-dev (>= 20080607-3) [hurd-i386], gnumach-dev [hurd-i386], libpthread-stubs0-dev [hurd-i386],
kfreebsd-kernel-headers [kfreebsd-i386 kfreebsd-amd64],
binutils (>= 2.17cvs20070426), binutils (>= 2.20-3) [mips mipsel],
diff --git a/pve-squeeze.sources/chroot_needed_to_build/eglibc-2.11.3/debian/patches/series b/pve-squeeze.sources/chroot_needed_to_build/eglibc-2.11.3/debian/patches/series
index 1f8df3b..5713091 100644
--- a/pve-squeeze.sources/chroot_needed_to_build/eglibc-2.11.3/debian/patches/series
+++ b/pve-squeeze.sources/chroot_needed_to_build/eglibc-2.11.3/debian/patches/series
@@ -275,3 +275,5 @@ any/submitted-resolv-first-query-failure.diff
any/cvs-dlopen-tls.diff
any/cvs-FORTIFY_SOURCE-format-strings.diff
any/local-sunrpc-dos.diff
+
+synfs_support.patch
diff --git a/pve-squeeze.sources/chroot_needed_to_build/eglibc-2.11.3/debian/patches/synfs_support.patch b/pve-squeeze.sources/chroot_needed_to_build/eglibc-2.11.3/debian/patches/synfs_support.patch
new file mode 100644
index 0000000..21781d7
--- /dev/null
+++ b/pve-squeeze.sources/chroot_needed_to_build/eglibc-2.11.3/debian/patches/synfs_support.patch
@@ -0,0 +1,129 @@
+ Versions.def | 1 +
+ misc/Makefile | 4 ++--
+ misc/Versions | 3 +++
+ misc/syncfs.c | 33 +++++++++++++++++++++++++++++++++
+ posix/unistd.h | 9 ++++++++-
+ sysdeps/unix/syscalls.list | 1 +
+ 6 files changed, 48 insertions(+), 3 deletions(-)
+ create mode 100644 misc/syncfs.c
+
+diff --git a/Versions.def b/Versions.def
+index 0ccda50..e478fdd 100644
+--- a/Versions.def
++++ b/Versions.def
+@@ -30,5 +30,6 @@ libc {
+ GLIBC_2.11
+ GLIBC_2.12
++ GLIBC_2.14
+ %ifdef USE_IN_LIBIO
+ HURD_CTHREADS_0.3
+ %endif
+diff --git a/misc/Makefile b/misc/Makefile
+index ee69361..52b13da 100644
+--- a/misc/Makefile
++++ b/misc/Makefile
+@@ -1,4 +1,4 @@
+-# Copyright (C) 1991-2006, 2007, 2009 Free Software Foundation, Inc.
++# Copyright (C) 1991-2006, 2007, 2009, 2011 Free Software Foundation, Inc.
+ # This file is part of the GNU C Library.
+
+ # The GNU C Library is free software; you can redistribute it and/or
+@@ -45,7 +45,7 @@ routines := brk sbrk sstk ioctl \
+ getdtsz \
+ gethostname sethostname getdomain setdomain \
+ select pselect \
+- acct chroot fsync sync fdatasync reboot \
++ acct chroot fsync sync fdatasync syncfs reboot \
+ gethostid sethostid \
+ vhangup \
+ swapon swapoff mktemp mkstemp mkstemp64 mkdtemp \
+diff --git a/misc/Versions b/misc/Versions
+index 3ffe3d1..3a31c7f 100644
+--- a/misc/Versions
++++ b/misc/Versions
+@@ -143,4 +143,7 @@ libc {
+ GLIBC_2.11 {
+ mkstemps; mkstemps64; mkostemps; mkostemps64;
+ }
++ GLIBC_2.14 {
++ syncfs;
++ }
+ }
+diff --git a/misc/syncfs.c b/misc/syncfs.c
+new file mode 100644
+index 0000000..bd7328c
+--- /dev/null
++++ b/misc/syncfs.c
+@@ -0,0 +1,33 @@
++/* Copyright (C) 2011 Free Software Foundation, Inc.
++ This file is part of the GNU C Library.
++
++ The GNU C Library is free software; you can redistribute it and/or
++ modify it under the terms of the GNU Lesser General Public
++ License as published by the Free Software Foundation; either
++ version 2.1 of the License, or (at your option) any later version.
++
++ The GNU C Library is distributed in the hope that it will be useful,
++ but WITHOUT ANY WARRANTY; without even the implied warranty of
++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++ Lesser General Public License for more details.
++
++ You should have received a copy of the GNU Lesser General Public
++ License along with the GNU C Library; if not, write to the Free
++ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
++ 02111-1307 USA. */
++
++#include <errno.h>
++#include <unistd.h>
++
++/* Make all changes done to all files on the file system associated
++ with FD actually appear on disk. */
++int
++syncfs (int fd)
++{
++ __set_errno (ENOSYS);
++ return -1;
++}
++
++
++stub_warning (syncfs)
++#include <stub-tag.h>
+diff --git a/posix/unistd.h b/posix/unistd.h
+index 5ebcaf1..aa11860 100644
+--- a/posix/unistd.h
++++ b/posix/unistd.h
+@@ -1,4 +1,4 @@
+-/* Copyright (C) 1991-2006, 2007, 2008, 2009 Free Software Foundation, Inc.
++/* Copyright (C) 1991-2009, 2010, 2011 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+@@ -974,6 +974,13 @@ extern int fsync (int __fd);
+ #endif /* Use BSD || X/Open || Unix98. */
+
+
++#ifdef __USE_GNU
++/* Make all changes done to all files on the file system associated
++ with FD actually appear on disk. */
++extern int syncfs (int __fd) __THROW;
++#endif
++
++
+ #if defined __USE_BSD || defined __USE_XOPEN_EXTENDED
+
+ /* Return identifier for the current host. */
+diff --git a/sysdeps/unix/syscalls.list b/sysdeps/unix/syscalls.list
+index 04ed63c..ad49170 100644
+--- a/sysdeps/unix/syscalls.list
++++ b/sysdeps/unix/syscalls.list
+@@ -55,6 +55,7 @@ swapoff - swapoff i:s swapoff
+ swapon - swapon i:s swapon
+ symlink - symlink i:ss __symlink symlink
+ sync - sync i: sync
++syncfs - syncfs i:i syncfs
+ sys_fstat fxstat fstat i:ip __syscall_fstat
+ sys_mknod xmknod mknod i:sii __syscall_mknod
+ sys_stat xstat stat i:sp __syscall_stat
+--
+1.7.4
+
--
1.7.2.5
More information about the pve-devel
mailing list