]>
Commit | Line | Data |
---|---|---|
ff9c0a4e JB |
1 | --- xfsprogs-2.5.4/m4/manual_format.m4.orig 2003-07-25 19:42:03.000000000 +0200 |
2 | +++ xfsprogs-2.5.4/m4/manual_format.m4 2003-08-08 08:22:59.000000000 +0200 | |
3 | @@ -6,12 +6,5 @@ | |
4 | # | |
5 | AC_DEFUN([AC_MANUAL_FORMAT], | |
6 | [ have_zipped_manpages=false | |
7 | - for d in ${prefix}/share/man ${prefix}/man ; do | |
8 | - if test -f $d/man1/man.1.gz | |
9 | - then | |
10 | - have_zipped_manpages=true | |
11 | - break | |
12 | - fi | |
13 | - done | |
14 | AC_SUBST(have_zipped_manpages) | |
15 | ]) | |
51a52578 | 16 | |
528ce8b7 AM |
17 | --- xfsprogs-3.1.3/Makefile~ 2010-08-18 06:54:06.000000000 +0200 |
18 | +++ xfsprogs-3.1.3/Makefile 2010-08-28 16:35:25.820731669 +0200 | |
19 | @@ -39,7 +39,11 @@ | |
20 | LDIRT += $(SRCTAR) | |
21 | endif | |
22 | ||
23 | -LIB_SUBDIRS = libxfs libxlog libxcmd libhandle libdisk | |
24 | +LIB_SUBDIRS = libxfs libxlog libxcmd libhandle | |
25 | +ifneq ($(ENABLE_BLKID), yes) | |
26 | +LIB_SUBDIRS += libdisk | |
27 | +endif | |
28 | + | |
29 | TOOL_SUBDIRS = copy db estimate fsck fsr growfs io logprint mkfs quota \ | |
30 | mdrestore repair rtcp m4 man doc po debian | |
31 | ||
e1a86c11 AM |
32 | --- xfsprogs-3.1.10/libxcmd/input.c~ 2012-12-13 22:29:24.000000000 +0100 |
33 | +++ xfsprogs-3.1.10/libxcmd/input.c 2012-12-14 07:01:24.852839169 +0100 | |
34 | @@ -88,7 +88,7 @@ | |
35 | ||
36 | if (!line) | |
37 | return NULL; | |
38 | - printf(get_prompt()); | |
39 | + printf("%s", get_prompt()); | |
40 | fflush(stdout); | |
41 | if (!fgets(line, MAXREADLINESZ, stdin)) { | |
42 | free(line); | |
43 | --- /dev/null 2011-06-01 08:46:43.490033582 +0200 | |
44 | +++ xfsprogs/io/sync_file_range.c 2012-11-12 18:54:28.047526230 +0100 | |
45 | @@ -0,0 +1,107 @@ | |
46 | +/* | |
47 | + * Copyright (c) 2012 Red Hat, Inc. | |
48 | + * All Rights Reserved. | |
49 | + * | |
50 | + * This program is free software; you can redistribute it and/or | |
51 | + * modify it under the terms of the GNU General Public License as | |
52 | + * published by the Free Software Foundation. | |
53 | + * | |
54 | + * This program is distributed in the hope that it would be useful, | |
55 | + * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
56 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
57 | + * GNU General Public License for more details. | |
58 | + * | |
59 | + * You should have received a copy of the GNU General Public License | |
60 | + * along with this program; if not, write the Free Software Foundation, | |
61 | + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | |
62 | + */ | |
63 | + | |
64 | +#include <xfs/xfs.h> | |
65 | +#include <xfs/command.h> | |
66 | +#include <xfs/input.h> | |
67 | +#include "init.h" | |
68 | +#include "io.h" | |
69 | + | |
70 | +static cmdinfo_t sync_range_cmd; | |
71 | + | |
72 | +static void | |
73 | +sync_range_help(void) | |
74 | +{ | |
75 | + printf(_( | |
76 | +"\n" | |
77 | +" Trigger specific writeback commands on a range of the current file\n" | |
78 | +"\n" | |
79 | +" With no options, the SYNC_FILE_RANGE_WRITE is implied.\n" | |
80 | +" -a -- wait for IO to finish after writing (SYNC_FILE_RANGE_WAIT_AFTER).\n" | |
81 | +" -b -- wait for IO to finish before writing (SYNC_FILE_RANGE_WAIT_BEFORE).\n" | |
82 | +" -w -- write dirty data in range (SYNC_FILE_RANGE_WRITE).\n" | |
83 | +"\n")); | |
84 | +} | |
85 | + | |
86 | +static int | |
87 | +sync_range_f( | |
88 | + int argc, | |
89 | + char **argv) | |
90 | +{ | |
91 | + off64_t offset = 0, length = 0; | |
92 | + int c, sync_mode = 0; | |
93 | + size_t blocksize, sectsize; | |
94 | + | |
95 | + while ((c = getopt(argc, argv, "abw")) != EOF) { | |
96 | + switch (c) { | |
97 | + case 'a': | |
98 | + sync_mode = SYNC_FILE_RANGE_WAIT_AFTER; | |
99 | + break; | |
100 | + case 'b': | |
101 | + sync_mode = SYNC_FILE_RANGE_WAIT_BEFORE; | |
102 | + break; | |
103 | + case 'w': | |
104 | + sync_mode = SYNC_FILE_RANGE_WRITE; | |
105 | + break; | |
106 | + default: | |
107 | + return command_usage(&sync_range_cmd); | |
108 | + } | |
109 | + } | |
110 | + | |
111 | + /* default to just starting writeback on the range */ | |
112 | + if (!sync_mode) | |
113 | + sync_mode = SYNC_FILE_RANGE_WRITE; | |
114 | + | |
115 | + if (optind != argc - 2) | |
116 | + return command_usage(&sync_range_cmd); | |
117 | + init_cvtnum(&blocksize, §size); | |
118 | + offset = cvtnum(blocksize, sectsize, argv[optind]); | |
119 | + if (offset < 0) { | |
120 | + printf(_("non-numeric offset argument -- %s\n"), | |
121 | + argv[optind]); | |
122 | + return 0; | |
123 | + } | |
124 | + optind++; | |
125 | + length = cvtnum(blocksize, sectsize, argv[optind]); | |
126 | + if (length < 0) { | |
127 | + printf(_("non-numeric length argument -- %s\n"), | |
128 | + argv[optind]); | |
129 | + return 0; | |
130 | + } | |
131 | + | |
132 | + if (sync_file_range(file->fd, offset, length, sync_mode) < 0) { | |
133 | + perror("sync_file_range"); | |
134 | + return 0; | |
135 | + } | |
136 | + return 0; | |
137 | +} | |
138 | + | |
139 | +void | |
140 | +sync_range_init(void) | |
141 | +{ | |
142 | + sync_range_cmd.name = "sync_range"; | |
143 | + sync_range_cmd.cfunc = sync_range_f; | |
144 | + sync_range_cmd.argmin = 2; | |
145 | + sync_range_cmd.argmax = -1; | |
146 | + sync_range_cmd.flags = CMD_NOMAP_OK | CMD_FOREIGN_OK; | |
147 | + sync_range_cmd.args = _("[-abw] off len"); | |
148 | + sync_range_cmd.oneline = _("Control writeback on a range of a file"); | |
149 | + sync_range_cmd.help = sync_range_help; | |
150 | + | |
151 | + add_command(&sync_range_cmd); | |
152 | +} |