From c7b0cbaafec836ea5147a41ca6ec54f7eaa5022b Mon Sep 17 00:00:00 2001 From: =?utf8?q?Arkadiusz=20Mi=C5=9Bkiewicz?= Date: Thu, 9 May 2013 06:42:09 +0200 Subject: [PATCH] - up to 3.1.11 --- xfsprogs-miscfix-v2.patch | 122 +------------------------------------- xfsprogs.spec | 6 +- 2 files changed, 4 insertions(+), 124 deletions(-) diff --git a/xfsprogs-miscfix-v2.patch b/xfsprogs-miscfix-v2.patch index 11e8c13..6b1c00a 100644 --- a/xfsprogs-miscfix-v2.patch +++ b/xfsprogs-miscfix-v2.patch @@ -29,124 +29,4 @@ TOOL_SUBDIRS = copy db estimate fsck fsr growfs io logprint mkfs quota \ mdrestore repair rtcp m4 man doc po debian ---- xfsprogs-3.1.10/libxcmd/input.c~ 2012-12-13 22:29:24.000000000 +0100 -+++ xfsprogs-3.1.10/libxcmd/input.c 2012-12-14 07:01:24.852839169 +0100 -@@ -88,7 +88,7 @@ - - if (!line) - return NULL; -- printf(get_prompt()); -+ printf("%s", get_prompt()); - fflush(stdout); - if (!fgets(line, MAXREADLINESZ, stdin)) { - free(line); ---- /dev/null 2011-06-01 08:46:43.490033582 +0200 -+++ xfsprogs/io/sync_file_range.c 2012-11-12 18:54:28.047526230 +0100 -@@ -0,0 +1,107 @@ -+/* -+ * Copyright (c) 2012 Red Hat, Inc. -+ * All Rights Reserved. -+ * -+ * This program is free software; you can redistribute it and/or -+ * modify it under the terms of the GNU General Public License as -+ * published by the Free Software Foundation. -+ * -+ * This program is distributed in the hope that it would be useful, -+ * but WITHOUT ANY WARRANTY; without even the implied warranty of -+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+ * GNU General Public License for more details. -+ * -+ * You should have received a copy of the GNU General Public License -+ * along with this program; if not, write the Free Software Foundation, -+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -+ */ -+ -+#include -+#include -+#include -+#include "init.h" -+#include "io.h" -+ -+static cmdinfo_t sync_range_cmd; -+ -+static void -+sync_range_help(void) -+{ -+ printf(_( -+"\n" -+" Trigger specific writeback commands on a range of the current file\n" -+"\n" -+" With no options, the SYNC_FILE_RANGE_WRITE is implied.\n" -+" -a -- wait for IO to finish after writing (SYNC_FILE_RANGE_WAIT_AFTER).\n" -+" -b -- wait for IO to finish before writing (SYNC_FILE_RANGE_WAIT_BEFORE).\n" -+" -w -- write dirty data in range (SYNC_FILE_RANGE_WRITE).\n" -+"\n")); -+} -+ -+static int -+sync_range_f( -+ int argc, -+ char **argv) -+{ -+ off64_t offset = 0, length = 0; -+ int c, sync_mode = 0; -+ size_t blocksize, sectsize; -+ -+ while ((c = getopt(argc, argv, "abw")) != EOF) { -+ switch (c) { -+ case 'a': -+ sync_mode = SYNC_FILE_RANGE_WAIT_AFTER; -+ break; -+ case 'b': -+ sync_mode = SYNC_FILE_RANGE_WAIT_BEFORE; -+ break; -+ case 'w': -+ sync_mode = SYNC_FILE_RANGE_WRITE; -+ break; -+ default: -+ return command_usage(&sync_range_cmd); -+ } -+ } -+ -+ /* default to just starting writeback on the range */ -+ if (!sync_mode) -+ sync_mode = SYNC_FILE_RANGE_WRITE; -+ -+ if (optind != argc - 2) -+ return command_usage(&sync_range_cmd); -+ init_cvtnum(&blocksize, §size); -+ offset = cvtnum(blocksize, sectsize, argv[optind]); -+ if (offset < 0) { -+ printf(_("non-numeric offset argument -- %s\n"), -+ argv[optind]); -+ return 0; -+ } -+ optind++; -+ length = cvtnum(blocksize, sectsize, argv[optind]); -+ if (length < 0) { -+ printf(_("non-numeric length argument -- %s\n"), -+ argv[optind]); -+ return 0; -+ } -+ -+ if (sync_file_range(file->fd, offset, length, sync_mode) < 0) { -+ perror("sync_file_range"); -+ return 0; -+ } -+ return 0; -+} -+ -+void -+sync_range_init(void) -+{ -+ sync_range_cmd.name = "sync_range"; -+ sync_range_cmd.cfunc = sync_range_f; -+ sync_range_cmd.argmin = 2; -+ sync_range_cmd.argmax = -1; -+ sync_range_cmd.flags = CMD_NOMAP_OK | CMD_FOREIGN_OK; -+ sync_range_cmd.args = _("[-abw] off len"); -+ sync_range_cmd.oneline = _("Control writeback on a range of a file"); -+ sync_range_cmd.help = sync_range_help; -+ -+ add_command(&sync_range_cmd); -+} + diff --git a/xfsprogs.spec b/xfsprogs.spec index c02a906..9dc008a 100644 --- a/xfsprogs.spec +++ b/xfsprogs.spec @@ -7,12 +7,12 @@ Summary: Tools for the XFS filesystem Summary(pl.UTF-8): Narzędzia do systemu plików XFS Name: xfsprogs -Version: 3.1.10 -Release: 2 +Version: 3.1.11 +Release: 1 License: LGPL v2.1 (libhandle), GPL v2 (the rest) Group: Applications/System Source0: ftp://linux-xfs.sgi.com/projects/xfs/cmd_tars/%{name}-%{version}.tar.gz -# Source0-md5: d6159f7a664d95b4c150d580399d4400 +# Source0-md5: 35d7951922dad275b7109e81609600ba Source1: xfs_lsprojid Patch0: %{name}-miscfix-v2.patch Patch2: %{name}-sharedlibs.patch -- 2.44.0