blob: b82a7070b9d86dc866f04ce16f0e2c13d9c92284 [file] [log] [blame]
Andreas Dilger568101f2001-10-13 01:22:25 -060012001-10-07 Andreas Dilger <adilger@turbolinux.com>
2
3 * mke2fs.c (main): Always exit with non-zero code in case of error.
4
5 * mke2fs.c (zap_sector): Check that buffer allocation succeeded.
6
Theodore Ts'ofbf91112001-09-20 10:47:47 -040072001-09-20 Theodore Tso <tytso@thunk.org>
8
9 * Release of E2fsprogs 1.25
10
Theodore Ts'o39567c42001-09-19 15:28:21 -0400112001-09-19 Theodore Tso <tytso@valinux.com>
12
Theodore Ts'of6a6afc2001-09-19 18:27:39 -040013 * tune2fs.c (remove_journal_inode): Remove dead code that wasn't
14 in use.
15
Theodore Ts'o39567c42001-09-19 15:28:21 -040016 * tune2fs.8.in: Update man page to reflect the fact that adding or
17 removing a journal doesn't require running e2fsck.
18
Theodore Ts'o3f85f652001-09-17 10:38:06 -0400192001-09-13 Theodore Tso <tytso@valinux.com>
20
21 * mke2fs.c (zap_sector): Allocate sufficient space for
22 zero-filled buffer.
23
Theodore Ts'ofb707752001-09-04 15:00:37 -0400242001-09-02 Theodore Tso <tytso@thunk.org>
25
26 * Release of E2fsprogs 1.24a
27
Andreas Dilger9d8e6342001-08-31 10:24:46 -0600282001-08-31 Andreas Dilger <adilger@turbolinux.com>
29
30 * mke2fs.c (main): Fix version format string.
31
Theodore Ts'o109624a2001-08-31 00:59:55 -0400322001-08-30 Theodore Tso <tytso@thunk.org>
33
34 * Release of E2fsprogs 1.24
35
Theodore Ts'o177a9ac2001-08-30 18:07:40 -0400362001-08-30 Theodore Tso <tytso@valinux.com>
37
38 * badblocks.8.in: Fix spelling typo. (Addresses Debian bug #110621)
39
Theodore Ts'o04a96852001-08-30 21:55:26 -040040 * mke2fs.c (zap_sector): Now takes a third argument, which is how
41 many sectors to clear out. Fixed up Andreas's patch to
42 make it a bit more efficient/compact.
43
Andreas Dilger59f27242001-08-30 15:39:04 -0600442001-08-30 Andreas Dilger <adilger@turbolinux.com>
45
46 * mke2fs.c (main): Zap the second sector of the disk, along with
47 any sectors in the same filesystem block after the superblock.
48 The latter will remove (for example) swapspace signatures
49 on 4kB+ blocksize filesystems. Also when zeroing the "end"
50 of the filesystem don't actually zero the start of a very
51 small device (less than 64 blocks).
52
Theodore Ts'o0f8973f2001-08-27 12:44:23 -0400532001-08-27 Theodore Tso <tytso@valinux.com>
54
Andreas Dilger59f27242001-08-30 15:39:04 -060055 * fsck.c (main): Make version display consistent with the other
Theodore Ts'o0f8973f2001-08-27 12:44:23 -040056 e2fsprogs programs.
57
58 * lsattr.c, chattr.c, mke2fs.c, tune2fs.c, dumpe2fs.c, e2image.c,
59 mklost+found.c: Remove EXT2FS_VERSION from the version
60 display, since it only confuses people.
61
Theodore Ts'oe843c762001-08-18 14:22:25 -0400622001-08-18 Theodore Tso <tytso@valinux.com>
63
64 * tune2fs.c (remove_journal_device): Remove unused variable
65 check_uuid.
66
67 * get_device_by_label.h: Define function prototype for
68 copy_string(), since this was moved from fsck.c to
69 get_device_by_label.c by Andreas's BK changeset.
70
Andreas Dilger2d155762001-08-17 03:48:11 -0600712001-08-17 Andreas Dilger <adilger@turbolinux.com>
72
73 * get_device_by_label.[ch], fsck.c, util.c: New interpret_spec()
74 function in get_device_by_label.c to allow the use of
75 UUID= or LABEL= when creating filesystems which use external
76 journal dev (e.g. mke2fs -J device=LABEL=<journal_label>).
77
78 * tune2fs.c: Use superblock s_journal_uuid to locate an external
79 journal device instead of s_journal_dev when removing it.
80 Allow opening journal devices to set the label and UUID
81 in the ext2 superblock.
82
83 * mke2fs.c, tune2fs.c: Free journal_device after use, as it is
84 malloc'd in interpret spec.
85
Theodore Ts'od2586682001-08-15 11:03:58 -0400862001-08-15 Theodore Tso <tytso@valinux.com>
87
Theodore Ts'o943ed872001-08-27 12:29:22 -040088 * Release of E2fsprogs 1.23
89
902001-08-15 Theodore Tso <tytso@valinux.com>
91
Theodore Ts'o7141b542001-08-15 19:17:37 -040092 * tune2fs.c: Make sure that error messages are sent to stderr, and
93 normal messages are sent to stdout. (Addresses Debian bug
94 #108555.)
95
Theodore Ts'o1d349cc2001-08-15 19:06:55 -040096 * fsck.8.in: Fixed error in synopsis of the man page.
97
Theodore Ts'o88f8af62001-08-15 18:39:51 -040098 * fsck.c (check_all): Don't bother to interpret a device where the
Theodore Ts'o685c13f2001-08-15 19:04:59 -040099 pass number is zero. (Addresses Debian bug #106696.)
100 (main): Print a warning message if there are no devices to
101 be checked. (Addresses Debian bug #107458.)
Theodore Ts'o88f8af62001-08-15 18:39:51 -0400102
Theodore Ts'of3561ed2001-08-15 11:58:16 -0400103 * mke2fs.c (PRS): Handle -O and -s options in line in the getopt
104 loop, so that -s and -O handling are a bit more intuitive.
105 (Not that they should be mixed anyway; -s is deprecated.)
106
Theodore Ts'od2586682001-08-15 11:03:58 -0400107 * tune2fs.c (parse_tune2fs_options): Give an error if -O is
108 specified more than once.
109
Theodore Ts'o085b02c2001-08-10 19:13:11 -04001102001-08-10 Theodore Tso <tytso@valinux.com>
111
112 * mke2fs.8.in: Slim down text describing the -O flag to remove
113 text that erroneously implied that all features
114 (including compatible flags) aren't compatible with older
115 kernels.
116
Theodore Ts'o6304baf2001-08-09 05:41:29 -04001172001-08-09 Theodore Tso <tytso@valinux.com>
118
Theodore Ts'oe8a447d2001-08-09 06:13:18 -0400119 * mke2fs.c (PRS): Fix bug pointed out by Christopher Niessen; if
120 mke2fs -O none is specified, the sparse_super feature
121 should not be present.
122
Theodore Ts'o6304baf2001-08-09 05:41:29 -0400123 * e2image.c, e2image.8.in: Add support for raw image files.
124
Theodore Ts'o8c97b0b2001-08-04 21:14:45 -04001252001-08-04 Andreas Dilger <root@lynx.adilger.int>
126
127 * mke2fs.c (PRS): Put check for JOURNAL_DEV before sparse_option,
128 so we don't set the sparse superblock flag on journal devices.
129
Theodore Ts'o194686b2001-07-31 12:03:23 -04001302001-07-31 Theodore Tso <tytso@valinux.com>
131
132 * tune2fs.c (update_feature_set, remove_journal_inode): If
133 removing an in-filesystem journal, clear out the journal
134 inode and update the filesystem accounting structures so
135 we don't have to run e2fsck to clean up after ourselves
136
Theodore Ts'ode49f012001-07-30 16:31:30 -04001372001-07-30 Theodore Tso <tytso@valinux.com>
138
139 * tune2fs.c (update_feature_set): Don't require a forced fsck if
140 we're removing an external journal from a filesystem.
141
Theodore Ts'o77dc4eb2001-07-27 22:00:18 -04001422001-07-27 Theodore Tso <tytso@valinux.com>
143
144 * mke2fs.c (PRS): If the blocksize is not specified and the
145 journal device is specified, use it to determine the
146 blocksize of the new filesystem.
147
Theodore Ts'o9b61b8c2001-07-20 14:25:23 -04001482001-07-20 Theodore Tso <tytso@valinux.com>
149
150 * fsck.8.in: Add much more explicit language documenting how the
151 fs_passno field in /etc/fstab is handled. (Addresses
152 Debian bug #30833).
153
Theodore Ts'oda376f52001-07-19 20:38:53 -04001542001-07-19 Theodore Tso <tytso@valinux.com>
155
156 * fstype.c (identify_fs): New file which looks at the superblock
157 of the filesystem to determines its type.
158
159 * fsck.c (fsck_device, ignore, interpret_type): Call identify_fs
160 if the type specified in /etc/fstab is "auto".
161
Theodore Ts'o67960132001-06-23 00:16:37 -04001622001-06-23 Theodore Tso <tytso@valinux.com>
163
164 * Release of E2fsprogs 1.22
165
Theodore Ts'of4f75ba2001-06-16 01:14:28 +00001662001-06-15 Theodore Tso <tytso@valinux.com>
167
168 * Release of E2fsprogs 1.21
169
Theodore Ts'o562ba5e2001-06-14 07:05:44 +00001702001-06-14 Theodore Tso <tytso@valinux.com>
171
172 * mke2fs.c (PRS): Remove unneeded test in when creating a external
173 filesystem journal.
174
Theodore Ts'ocdf186e2001-06-13 22:16:47 +00001752001-06-13 Theodore Tso <tytso@valinux.com>
176
Theodore Ts'o66cf2f62001-06-14 06:42:44 +0000177 * tune2fs.c, mke2fs.c, util.c, util.h (print_check_message): Move
178 the message which displays how often the filesystem will
179 be checked from mke2fs into a utility subroutine. Then
180 cause tune2fs to call that function to display the message
181 after adding a journal to a filesystem.
182
183 * mke2fs.8.in: Add manual page fixups and explanation for why it's
184 good to check filesystems periodically from Andreas
185 Dilger.
186
Theodore Ts'ocdf186e2001-06-13 22:16:47 +0000187 * Makefile.in: Don't build e2image if --disable-imager is
188 specified to configure.
189
Theodore Ts'o28cf9042001-06-12 22:35:00 +00001902001-06-12 Theodore Tso <tytso@valinux.com>
191
Theodore Ts'ocbbf0312001-06-13 00:12:04 +0000192 * dumpe2fs.c: Use WORDS_BIGENDIAN to determine whether or not
193 we're (not) using i386 byte order.
194
195 * dumpe2fs.c, mke2fs.c: Stop using the compatibility badblocks
196 function, and use the ext2fs_badblocks_* functions
197 instead.
198
Theodore Ts'o28cf9042001-06-12 22:35:00 +0000199 * fsck.c (device_already_active): Fixed bug which can cause fsck
200 to core dump if there are a mix of devices with standard
Theodore Ts'o83d5abf2001-06-13 23:31:27 +0000201 and non-standard names. (Addresses Debian bug #100559)
Theodore Ts'o28cf9042001-06-12 22:35:00 +0000202
Theodore Ts'ob7056402001-06-08 02:53:20 +00002032001-06-07 Theodore Tso <tytso@valinux.com>
204
205 * chattr.c, lsattr.c: Don't use _FILE_BITS_OFFSET method of using
206 the 64-bit function, since this changes the expected size
207 of struct dirent. Instead use lseek64 explicitly.
208
Theodore Ts'o797f5ef2001-06-01 23:49:46 +00002092001-06-01 Theodore Tso <tytso@valinux.com>
210
211 * Makefile.in: Move include/asm/types.h.in to
Theodore Ts'o36a23e12001-06-02 00:54:10 +0000212 lib/ext2fs/ext2_types.h.in.
Theodore Ts'o797f5ef2001-06-01 23:49:46 +0000213
Theodore Ts'oe549d0a2001-05-25 16:38:48 +00002142001-05-25 Theodore Tso <tytso@valinux.com>
215
Theodore Ts'obb185862001-05-25 17:35:00 +0000216 * Release of E2fsprogs 1.20
217
2182001-05-25 Theodore Tso <tytso@valinux.com>
219
Theodore Ts'oe549d0a2001-05-25 16:38:48 +0000220 * tune2fs.c (update_feature_set): Fix capitalization typo.
221
Theodore Ts'oc7a24e42001-05-23 22:26:39 +00002222001-05-23 Theodore Tso <tytso@valinux.com>
223
Theodore Ts'oa9bc79a2001-05-23 22:29:22 +0000224 * partinfo.c (main): Use unsigned long instead of long when
225 querying the size of a device using the BLKGETSIZE ioctl,
226 to remove the 1TB limit (and turn it into a 2TB limit :-)
227
Theodore Ts'oc7a24e42001-05-23 22:26:39 +0000228 * fsck.c (compile_fs_type): Fix I18N compilation bug: use N_()
229 instead of _() to initialize static variables.
230
Theodore Ts'o07025ae2001-05-21 01:39:02 +00002312001-05-20 Theodore Tso <tytso@valinux.com>
232
Theodore Ts'o10a32f12001-05-21 02:15:15 +0000233 * fsck.8.in, fsck.c (compile_fs_type, fs_type, ignore): Fix
234 handling of -t option to be more intuitive. Also add
235 support for the Mandrake -t loop hack. See man page
236 for description of new -t semantics.
237
Theodore Ts'o9164b862001-05-21 01:41:37 +0000238 * fsck.c (device_already_active): Fix bug in
239 device_already_active which could cause infinite loops if
240 we don't know the base_device of the filesystem.
241
Theodore Ts'o07025ae2001-05-21 01:39:02 +0000242 * fsck.c: Make sure all exit status codes returned by fsck are
243 consistent with the error codes documented in the fsck man
244 page.
245
Theodore Ts'o251395d2001-05-14 04:43:05 +00002462001-05-14 Theodore Tso <tytso@valinux.com>
247
Theodore Ts'o54c637d2001-05-14 11:45:38 +0000248 * badblocks.c, chattr.c, dumpe2fs.c, e2image.c, findsuper.c,
249 lsattr.c, mke2fs.c, mklost+found.c, tune2fs.c, util.c:
250 Change location of ext2_fs.h to be ext2fs/ext2_fs.h
251
Theodore Ts'o251395d2001-05-14 04:43:05 +0000252 * tune2fs.8.in: Fix typo's and make other clarifications suggested
253 by Andreas Dilger.
254
Theodore Ts'o1400bbb2001-05-14 04:19:25 +00002552001-05-11 Andreas Dilger <adilger@turbolinux.com>
256
257 * mke2fs.c: don't zap the superblock if we are running with noaction!
258 Zap the end of the device to remove stale RAID superblocks.
259
Theodore Ts'o8d641742001-05-14 04:12:27 +00002602001-05-14 Theodore Tso <tytso@valinux.com>
261
262 * tune2fs.c (update_feature_set): Clean up some printf messages.
263
264 * fsck.8.in, mke2fs.8.in, tune2fs.8.in: Fix typo's and make other
265 clarifications suggested by Andreas Dilger.
266
Theodore Ts'o14bbcbc2001-05-13 22:58:27 +00002672001-05-13 Theodore Tso <tytso@valinux.com>
268
269 * mke2fs.c (PRS): Integrated changes from Andreas Dilger which
270 make the revision superblock field be set to the correct
271 value depending on if superblock features are set.
272
Theodore Ts'o6d56d512001-05-12 15:46:21 +00002732001-05-12 Theodore Tso <tytso@valinux.com>
274
Theodore Ts'o69303722001-05-12 16:12:12 +0000275 * fsck.c (PRS): fsck -? now prints the usage message.
276
Theodore Ts'o12da49c2001-05-12 15:49:17 +0000277 * badblocks.8.in, dumpe2fs.8.in, e2label.8.in, mke2fs.8.in,
278 mklost+found.8.in, tune2fs.8.in: Fix typo; removed
279 excess "anonymous" in the AVAILABILITY section.
280
Theodore Ts'o6d56d512001-05-12 15:46:21 +0000281 * chattr.1.in, lsattr.1.in, uuidgen.1.in: Update URL location of
282 e2fsprogs package.
283
Theodore Ts'od71a4952001-05-07 16:53:26 +00002842001-05-07 Theodore Tso <tytso@valinux.com>
285
286 * util.c: Use specific check for HAVE_SYS_STAT_H.
287
Theodore Ts'ocd130a02001-05-05 05:43:23 +00002882001-05-05 Theodore Tso <tytso@valinux.com>
289
Theodore Ts'o609c9d02001-05-05 06:45:05 +0000290 * fsck.8.in: Add explicit language to describe how options get
291 passed to filesystem-specific checkers.
292
Theodore Ts'ocd130a02001-05-05 05:43:23 +0000293 * badblocks.8.in: Fixed man page to describe the first optional
294 parameter to badblocks as last_block, instead of
295 num_blocks. (Debian bug #87216)
296
297 * badblocks.c: Change the blocks_count variable to be last_count,
298 which is a more accurate description of the variable.
299
Theodore Ts'o095b4592001-05-03 13:33:11 +00003002001-05-03 Theodore Tso <tytso@valinux.com>
301
Theodore Ts'o348e43d2001-05-03 14:43:43 +0000302 * e2image.8.in: New manual page
303
304 * badblocks.8.in, e2label.8.in, mke2fs.8.in mklost+found.8.in,
305 tune2fs.8.in: Update location of e2fsprogs to be
306 http://e2fsprogs.sourceforge.net.
307
308 * dumpe2fs.c (main): Add new flag, -i, which will allow dumpe2fs
309 to dump out the filesystem statistics from an ext2 image
310 file.
311
Theodore Ts'o095b4592001-05-03 13:33:11 +0000312 * e2image.c (main): Fix format of e2image to be easier to be parse
313 by ext2fs_open().
314
Theodore Ts'o45d70862001-05-01 15:44:37 +00003152001-05-01 Theodore Tso <tytso@valinux.com>
316
317 * fsck.c (device_already_active): If we're not able to determine
318 the base device, we should assume that the device is
319 already active in order to force serialization.
320
Theodore Ts'oce57f142001-04-26 04:25:39 +00003212001-04-26 Theodore Tso <tytso@valinux.com>
322
323 * tune2fs.c (parse_tune2fs_options): Interpret -c 0 as -c -1 (for
324 backwards compatibility with older kernels). -c 0 makes
325 more sense to users.
326
Theodore Ts'o4d0f2282001-04-23 20:58:03 +00003272001-04-22 Theodore Tso <tytso@valinux.com>
328
329 * tune2fs.c (remove_journal_device): If the force flag is given,
330 tune2fs will remove the journal device information from
331 the superblock even if tune2fs failed to open the journal
332 device or otherwise other failed to remove the filesystem
333 from journal device.
334 (parse_tune2fs_options): Fix -j option so that it works
335 (it was missing the open_flag being set to EXT2_FLAG_RW).
336 (main): Accept "-U clear" to set a null UID.
337
Theodore Ts'ob10fd5e2001-04-22 03:47:23 +00003382001-04-21 Theodore Tso <tytso@valinux.com>
339
Theodore Ts'o48015ce2001-04-22 03:58:32 +0000340 * mke2fs.8.in: Manual page cleanups. Temporarily comment out the
341 documentation for the extern journal device support.
342
Theodore Ts'ob10fd5e2001-04-22 03:47:23 +0000343 * mke2fs.c (usage): Remove the deprecated -s option from the usage
344 message.
345
Theodore Ts'o1d08d9b2001-04-17 01:01:49 +00003462001-04-16 Theodore Tso <tytso@valinux.com>
347
Theodore Ts'o2103ea72001-04-21 20:53:43 +0000348 * mke2fs.c (main): Add better explanation about when the
349 filesystem will be checked after it is created.
350
Theodore Ts'od6a27e02001-04-17 02:34:41 +0000351 * util.c (parse_journal_opts): Remove code which allowed a bare
352 number to be treated as a journal size.
353
Theodore Ts'o1d08d9b2001-04-17 01:01:49 +0000354 * mke2fs.c, tune2fs.c: Add newlines to error messages so that they
355 look nicer.
356
Theodore Ts'od6a27e02001-04-17 02:34:41 +0000357 * mke2fs.c (create_journal_dev): Call
358 ext2fs_create_journal_superblock() first, so if it's going
359 to error out, the user finds out before waiting for the
360 entire device to get zero'ed.
361
Theodore Ts'o2537b6d2001-03-26 20:07:13 +00003622001-03-26 Theodore Tso <tytso@valinux.com>
363
364 * mke2fs.8.in, tune2fs.8.in: Change man paegs to document that the
Theodore Ts'o8d641742001-05-14 04:12:27 +0000365 journal must be bewteen 1024 and 102,400 file system
Theodore Ts'o2537b6d2001-03-26 20:07:13 +0000366 blocks.
367
368 * mke2fs.c, tune2fs.c: Change to use figure_journal_size()
369
370 * util.c, util.h (figure_journal_size): Change
371 journal_default_size into routine which also converts the
372 requested journal size into filesystem blocks and does
373 bounds checking to make sure the journal is sized
374 reasonably. Renamed function to journal_default_size.
375 (parse_journal_opts): Remove bounds check for the journal
376 size, since this is now done in figure_journal_size, and
377 based on the number of filesystem blocks, as opposed to
378 using the absolute size of the journal.
379
Theodore Ts'o93345d12001-02-17 06:09:50 +00003802001-02-17 Theodore Tso <tytso@valinux.com>
381
382 * mke2fs.c (main): Flush out the "creating journal" message.
383 Also handle the case where the default journal size
384 returns zero blocks == no journal. Print out how often
385 the filesystem will be checked.
386
Theodore Ts'oc5423c52001-02-08 05:45:17 +00003872001-02-08 Theodore Tso <tytso@valinux.com>
388
389 * e2image.c (main): Add code to write the e2image header.
390
Theodore Ts'offf18b42001-02-08 03:06:43 +00003912001-02-07 Theodore Tso <tytso@valinux.com>
392
Theodore Ts'obe4244b2001-02-08 03:28:18 +0000393 * tune2fs.8.in: Update man page to reflect that 2.0.39 supports
394 sparse_super.
395
Theodore Ts'o8b164f92001-02-08 03:24:18 +0000396 * dumpe2fs.c (list_desc): Fix fencepost error when calculating the
397 range of inode table blocks. Add '0x' to values printed
398 in hex.
399
Theodore Ts'offf18b42001-02-08 03:06:43 +0000400 * chattr.c, lsattr.c: Define the _LARGEFILE64_SOURCE to force the
401 use of the LFS so that lstat will work on large files.
402
Theodore Ts'o02088862001-01-18 01:44:19 +00004032001-01-17 Theodore Ts'o <tytso@valinux.com>
404
Theodore Ts'odc2ec522001-01-18 01:51:15 +0000405 * tune2fs.c, mke2fs.c, tune2fs.8.in, mke2fs.8.in: Change user
406 interface so that -J is used to specify journal options,
407 and -j is used to request creation of a journal using
408 default values. (This is a UI change, but we haven't done
409 a formal release, and it makes things much more consistent
410 with the rest of the options out there.)
411
412 * tune2fs.c: Add support for removing a filesystem from an
413 external journal; we correctly remove the filesystem UUID
414 from the external journal's filesystem list.
415
Theodore Ts'o5683e6e2001-01-18 01:47:48 +0000416 * util.h, util.c (journal_default_size): New function from Andreas
417 Dilger to calculate an appropriate default journal size
418 given a filesystem size.
419
420 * util.c (parse_journal_opts): Allow the creation of a journal as
421 small as 1MB.
422
Theodore Ts'o02088862001-01-18 01:44:19 +0000423 * dumpe2fs.c (print_journal_information): Use s_first_data_block
424 to find the correct block to read the journal superblock.
425
Theodore Ts'o16ed5b32001-01-16 07:47:31 +00004262001-01-15 Theodore Ts'o <tytso@valinux.com>
427
428 * tune2fs.c: Changed the external journal code so that it simply
429 adds a filesystem to a journal; the journal must have bene
430 created via "mke2fs -O journal_dev /dev/XXX".
431
432 * mke2fs.c: Add support for creating an external journal device by
433 using the command "mke2fs -O journal_dev /dev/XXX". Also
434 changed the external journal code so -j device=/dev/XXX it
435 simply adds a filesystem to that journal; the journal must
436 have been created via separate step.
437
438 * dumpe2fs.c (print_journal_information): Add support for dumping
439 information about an external journal device.
440
Theodore Ts'o4055ef72001-01-14 16:11:14 +00004412001-01-14 Theodore Ts'o <tytso@valinux.com>
442
Theodore Ts'o44c09c02001-01-14 17:02:09 +0000443 * mke2fs.c: Add new filesystem types, largefile and largefile4,
444 for those filesystems whose average inode size is 1MB and
445 4MB, respectively. Allow the inode ratio specified to be
446 has high as 4MB. Make the s_max_mount_count vary between
447 20 and 40, to avoid needing to check all of the
448 filesystems at the same time. Add some random jitter to
449 the s_max_mount_count value so that we avoid checking all
450 of the filesystems at the same time when we reboot.
451
Theodore Ts'o08dd8302001-01-14 16:25:58 +0000452 * tune2fs.8.in: Add description of the -j option.
453
Theodore Ts'o4055ef72001-01-14 16:11:14 +0000454 * tune2fs.c (add_journal): Minor fixes from Andreas Dilger. Flush
455 stdout after printing in-progress message.
456 (main): Exit with status code 1 if we failed to determine
457 the mount status of the device.
458
Theodore Ts'odfcdc322001-01-11 15:38:00 +00004592001-01-11 <tytso@snap.thunk.org>
460
Theodore Ts'oc8c071a2001-01-11 16:08:23 +0000461 * e2image.c, mke2fs.c, mklost+found.c, tune2fs.c, util.c,
462 uuidgen.c: Fix gcc -Wall complaints, including one bug in
463 tune2fs caused by a block automatic shadowing version of
464 the variable we really wanted to use, which broke the
465 logic testing to see if the filesystem was mounted.
466
Theodore Ts'o4d404542001-01-11 16:04:59 +0000467 * badblocks.c (flush_bufs): Use ext2fs_sync_device() to sync and
468 flush the device.
469
Theodore Ts'odfcdc322001-01-11 15:38:00 +0000470 * mke2fs.c: Change ino_t to ext2_ino_t.
471
Theodore Ts'o83238152001-01-09 00:16:26 +00004722001-01-08 <tytso@snap.thunk.org>
473
474 * Makefile.in, tune2fs.c: Move e2label functionality into tune2fs,
475 using argv[0] as a dispatch. This allows e2label to be
476 (more) safely used on mounted filesystems.
477
Theodore Ts'o8820c792001-01-06 04:20:03 +00004782001-01-05 <tytso@snap.thunk.org>
479
480 * get_device_by_label.h (get_volume_label_by_spec): Add function
481 prototype.
482
483 * get_device_by_label.c: Use string_copy() instead of strdup() for
484 portability's sake. Fix a few other gcc -Wall
485 complaints.
486
487 * fsck.c (string_copy): Export string_copy() extern.
488
489 * badblocks.c: Fix various gcc -Wall complaints, including
490 an incorrect reference to sync in flush_bufs().
491
Theodore Ts'o63985322001-01-03 17:02:13 +00004922001-01-03 <tytso@snap.thunk.org>
493
494 * tune2fs.c (update_feature_set, add_journal): Moved to separate
495 functions. Added ability to add and remove the journal
496 while the filesystem is live. Added support for setting
497 a time-based UUID. Removed zero-initialized static variables.
498
499 * mke2fs.c, util.c, util.h (strcasecmp, proceed_question,
500 check_plausibility, parse_journal_opts, check_mount):
501 Moved functions to util.c so they can be used by tune2fs.
502
503 * mke2fs.c (main): Change ext2fs_add_journal_fs() to
504 ext2fs_add_journal_inode() to reflect function renaming.
505
Theodore Ts'ob21e38a2001-01-01 15:26:58 +00005062001-01-01 <tytso@snap.thunk.org>
507
Theodore Ts'oef9abe52001-01-01 15:31:53 +0000508 * mke2fs.c, e2image.c: Removed references to struct ext2fs_sb to
509 struct ext2_super_block.
510
Theodore Ts'ob21e38a2001-01-01 15:26:58 +0000511 * tune2fs.c (main): Add support to allow HAS_JOURNAL flag to be
512 cleared, but only if the filesystem is unmounted or
513 mounted read-only. Changed struct ext2fs_sb to struct
Theodore Ts'oef9abe52001-01-01 15:31:53 +0000514 ext2_super_block, and cleaned up old code which was needed
515 for old versions of ext2_fs.h (not needed since we're
516 using our own version now).
Theodore Ts'ob21e38a2001-01-01 15:26:58 +0000517
Theodore Ts'o9a718842000-12-31 13:48:12 +00005182000-12-31 <tytso@snap.thunk.org>
519
Theodore Ts'od4cf2fc2000-12-31 14:09:38 +0000520 * fsck.c (check_all): Call interpet_device to resolve LABEL= and
521 UUID= right away so that the device_already_active() logic
522 can do the right thing. Also cleaned up the the root
523 filesystem logic checking code; fixed up a logic bug with
524 the parallel_root option.
525
Theodore Ts'of10748d2000-12-31 13:55:14 +0000526 * lsattr.1.in: Add pointer to chattr man page for definition of
527 the file attributes.
528
529 * lsattr.c (list_attributes): Minor cleanup to smooth out logic
530 flow. Also removed static initialized variables to zero.
531
Theodore Ts'o9a718842000-12-31 13:48:12 +0000532 * chattr.c (decode_arg, get_flag): Use a table-driven method for
533 decoding the ext2 file flags character options. Add
534 support for the journaled data flag.
535
536 * chattr.1.in: Document the -j/+j/=j flag.
537
Theodore Ts'o16ad3332000-12-31 03:21:56 +00005382000-12-30 <tytso@snap.thunk.org>
539
540 * mke2fs.8.in: Minor clarity edit.
541
542 * mke2fs.c (usage): Document the -j option.
543 (main): Print the number blocks used in the journal.
544
Theodore Ts'ob9fd8c12000-12-29 03:10:45 +00005452000-12-28 <tytso@snap.thunk.org>
546
547 * base_device.c (base_device): Add support for DAC960 device
548 names.
549
550 * fsck.c (device_already_active): Handle the case where
551 base_device doesn't know how to interpret the device name,
552 instead of core dumping.
553
Theodore Ts'o74a74d22000-12-09 14:33:29 +00005542000-12-09 <tytso@snap.thunk.org>
555
Theodore Ts'od48755e2000-12-09 14:36:04 +0000556 * mke2fs.c (main, parse_journal_opts): Add support for creating V1
557 superblocks. We now pass in a journal_flags field to the
558 journal creation routines for this purpose.
559
560 * mke2fs.c: Remove zero initializers to save a few bytes from the
561 executable image. (Are we excited yet?)
562
Theodore Ts'o74a74d22000-12-09 14:33:29 +0000563 * findsuper.c: And non-subtle copyright licensing restriction to
564 get Yann to remove this program from the Debian package. :-)
565
Theodore Ts'o793e27d2000-12-03 06:33:56 +00005662000-12-03 <tytso@snap.thunk.org>
567
568 * fsck.c (device_already_active): Change to use new version of
569 base_device() which now returns dynamically allocated
570 memory.
571
572 * base_device.c (base_device): New version moved from fsck.c which
573 now understands ugly devfs names. (Debian bug #65181)
574
575 * base_device.tst: Test case for base_device.c
576
Theodore Ts'oe1c6b2f2000-12-02 06:19:33 +00005772000-12-02 <tytso@snap.thunk.org>
578
Theodore Ts'o2d091792000-12-02 07:03:32 +0000579 * fsck.8.in: Add clarification that filesystems with a fs_passno
580 of 0 are skipped with the -A option. (Debian wishlist/bug
581 #63442)
582
Theodore Ts'oe9f9dd82000-12-02 06:35:07 +0000583 * fsck.c (wait_one): When we let a new fsck take control of the
584 console to display the progress bar, set FLAG_PROGRESS to
585 so that fsck knows not to start new processes during an
586 fsck pass with the progress bar. (Should fix debian bug
587 #65267)
588
Theodore Ts'oe1c6b2f2000-12-02 06:19:33 +0000589 * tune2fs.8.in: Add clarifying statement about converting user and
590 group names to uid's before storing them in the
591 superblock. (Debian bug #67446)
592
Theodore Ts'o8ddaa662000-11-17 04:55:24 +00005932000-11-16 Theodore Ts'o <tytso@valinux.com>
594
595 * mke2fs.c(main): Expand the -j option so that it parses
596 option=argument style options, and add support for
597 creating filesystems with external journals.
598
599 * mke2fs.8.in: Document new syntax for the -j option.
600
Theodore Ts'o72ed1262000-11-12 19:32:20 +00006012000-11-05 <tytso@snap.thunk.org>
602
603 * e2image.c, Makefile.in: New program which saves ext2 metadata to
604 a file for people who need a last-ditch saving throw.
605
Theodore Ts'o85ef4ae2000-10-24 19:33:45 +00006062000-10-24 <tytso@snap.thunk.org>
607
Theodore Ts'of6f65832000-10-25 03:01:37 +0000608 * mke2fs.c (PRS): Applied Andreas Dilger's patch to make the -r -s
609 handling a bit more sane. (Even though -s is deprecated
610 at this point.)
611
Theodore Ts'o0056be12000-10-25 02:24:33 +0000612 * get_device_by_label.c: Apply fix from Erik Troan to support 16
613 character labels.
614
Theodore Ts'o43819662000-10-25 02:06:09 +0000615 * fsck.c (device_already_active): Add a special case check for MD
616 devices, so we don't try to check them in parallel with
617 other devices.
618
Theodore Ts'o85ef4ae2000-10-24 19:33:45 +0000619 * mke2fs.c (PRS, main), mke2fs.8.in: Add support for the -j
620 option, which builds an ext2/3 filesystem with an ext3
621 journal.
622
Theodore Ts'oe294cf22000-10-24 18:41:44 +00006232000-10-24 <tytso@valinux.com>
624
625 * mke2fs.c (zap_sector): Fix really stupid typo which gcc 2.95
626 didn't catch.
627
Theodore Ts'o3f1e9a52000-09-12 21:21:52 +00006282000-09-12 <tytso@valinux.com>
629
630 * fsck.c: Add base device definitions for hd[e-h], for those
631 systems with four IDE interfaces.
632
Theodore Ts'od7e39b02000-09-11 17:01:35 +00006332000-09-11 <tytso@valinux.com>
634
635 * mke2fs.c (zap_sector): Fix error message printed when zap_sector
636 fails.
637
638 * dumpe2fs.c (list_desc): Fixed format string bug when printing
639 the inode table location in non-hex format.
640
Theodore Ts'o556ccbd2000-08-20 19:11:05 +00006412000-08-20 <tytso@valinux.com>
642
643 * get_device_by_label.c: Add call to ext2fs_find_block_device if
644 we can't find the device using the name given by
645 /proc/partitions. (This can happen if devfs is compiled
646 into the kernel, but not mounted.)
647
Theodore Ts'o80c22c92000-08-14 15:32:11 +00006482000-06-27 Andreas Dilger <adilger@turbolabs.com>
649
650 * dumpe2fs.c (usage): add fhx options to usage message, add -x option
651 to print out the per-group block numbers in hex, add line for
652 location of primary/backup superblock and group descriptors
653
654 * mke2fs.c: rename max to group_blk_max avoid potential macro conflict
655
Theodore Ts'oe41784e2000-08-14 14:44:15 +00006562000-08-14 <tytso@valinux.com>
657
658 * mke2fs.c (zap_sector): Change zap_bootsect to more general
659 zap_sect.
660 (main): Clear the superblock when starting mke2fs, to
661 avoid leaving the filesystem in an inconsistent state.
662
Theodore Ts'o28412de2000-07-27 02:45:55 +00006632000-07-26 <tytso@valinux.com>
664
665 * get_device_by_label.c: Improve /proc/partitions parsing in
666 fsck, and speed up fsck -a.
667
Theodore Ts'of9e67062000-07-13 23:25:54 +00006682000-07-13 <tytso@valinux.com>
669
670 * Release of E2fsprogs 1.19
671
Theodore Ts'oa551b782000-07-13 22:05:31 +00006722000-07-13 <tytso@snap.thunk.org>
673
674 * badblocks.8.in: Added text explaining that the -n and -w options
675 are mutually exclusive.
676
677 * badblocks.c (usage): Fix usage message to make it clear that the
678 block count must be specified if the starting block is to
679 be specified. (The starting block should be a option, in
680 the long run.)
681
682 * badblocks.c (test_nd): Save and restore the currently_testing
683 variable before going into the write verification loop.
684 This avoids a loop termination problem if the last block
685 on the disk is bad. Also, turn off the SIGALRM signal
686 while restoring blocks after the user types ^C. The
687 num_saved variable is now static so that it won't get
688 clobbered by a longjmp. buf_used and bb_count are no
689 longer static, since they aren't used by the cleanup
690 routines anymore.
691
692 * badblocks.c (main): Removed an unsued varaible (buf_size).
693 Fixed bad getopt argument that didn't allow the 'b' option
694 to take an argument. Added error checking when parsing
695 the starting block number. Fixed lint warning in fscanf
696 format string.
697
Theodore Ts'o35964b52000-07-06 13:19:43 +00006982000-07-06 Theodore Ts'o <tytso@valinux.com>
699
Theodore Ts'o19c68912000-07-07 03:25:13 +0000700 * fsck.c (execute, wait_one): Treat fsck.ext3 the same as
701 fsck.ext2 (because they are the same) for the purposes of
702 the progress bar display logic.
703
Theodore Ts'o45d9e2f2000-07-07 03:12:54 +0000704 * tune2fs.8.in: Update manual page to document what happens if
705 max_mount_count is negative.
706
707 * tune2fs.c (main): Allow setting the maximal count value to be
708 negative, since the kernel interprets that as forcing a
709 check.
710
Theodore Ts'o5b1519b2000-07-06 14:16:08 +0000711 * fsck.c (lookup, load_fs_info, check_all): Use lazy evaluation
712 for calling interpret_device(), since this requires root
713 privileges if the partitions need to be scanned.
714 Otherwise, it's not possible to do non-proot fsck's for
715 removeable devices such as floppies if there are any
716 LABEL= or UUID= entries in /etc/fstab.
717
Theodore Ts'o981dc562000-07-06 14:13:29 +0000718 * badblocks.c (check_mount, main): Check to see if the filesystem
719 is mounted before doing a read/write or non-destructive
720 test. This can be overriden using the new -f option.
721
Theodore Ts'o35964b52000-07-06 13:19:43 +0000722 * badblocks.8.in: Update manual page to reflect that the
723 blocks-count parameter is now optional. Also properly
Theodore Ts'o981dc562000-07-06 14:13:29 +0000724 document the start-block parameter. Added documentation
725 for the -f option.
Theodore Ts'o35964b52000-07-06 13:19:43 +0000726
727 * badblocks.c (main): Allow the blocks-count parameter to be
728 optional. If it's not specified, use the size of the
729 device as a default.
730
Theodore Ts'od49a22b2000-07-06 00:31:27 +00007312000-07-05 Theodore Ts'o <tytso@valinux.com>
732
733 * badblocks.c (test_nd): Significantly simplify the logic so that
734 it's more obviously what's going on. Fixed a few
735 potential cases which weren't handled correctly in the
736 old, overly complicated logic.
737 (flush_bufs): Now doesn't take a second argument, and
738 always forces a sync; this is required before it's really
739 safe to call BLKFLSBUF, at least for some kernels.
740
Theodore Ts'o26ab5312000-05-29 15:05:42 +00007412000-05-29 Theodore Ts'o <tytso@valinux.com>
742
743 * mke2fs.c (PRS): Add a much more specific error message if the
744 filesystem size is defaulted and get_device_size returns a
745 size of zero. Otherwise, users get a confusing "invalid
746 argument while passed to ext2 library" error message.
747
Theodore Ts'o4ea0a112000-05-08 13:33:17 +00007482000-05-08 Theodore Ts'o <tytso@valinux.com>
749
Theodore Ts'oc96e5112000-05-08 14:47:15 +0000750 * fsck.c (interpret_device): Add better error messages if a UUID=
751 or LABEL= specification is given.
752
Theodore Ts'o4ea0a112000-05-08 13:33:17 +0000753 * mke2fs.c (main): We forcibly turn off the filetype feature if
754 the OS is the hurd, since the hurd doesn't support it.
755 (And since the hurd allows the transmogrification of files
756 to special files and vice versa --- for no good reason
757 that I can understand --- it can't support the filetype
758 feature for the forseeable future, either.)
759
760 * mke2fs.c (proceed_question): Fix reversed sense of
761 proceed_question that was busted due to the
762 internationalization patch. Fixed bug where if
763 proceed_question was called twice, the input buffer wasn't
764 cleared of the previous question's newline.
765
Theodore Ts'oe2207ce2000-04-06 21:51:18 +0000766Thu Apr 6 17:50:25 2000 Theodore Y. Ts'o <tytso@signal.thunk.org>
767
768 * badblocks.c (flush_bufs): Use fsync() if the system doesn't
769 support fdatasync().
770
Theodore Ts'offe4cab2000-04-03 13:27:41 +00007712000-04-03 Theodore Ts'o <tytso@valinux.com>
772
Theodore Ts'o373b8332000-04-03 16:22:35 +0000773 * badblocks.c, dumpe2fs.c, e2label.c, mke2fs.c, tune2fs.c,
774 uuidgen.c: For platforms that don't define optarg.h,
775 manually define optarg and optind.
776
Theodore Ts'o4d003982000-04-03 16:01:11 +0000777 * badblocks.8.in: Updated manual page with suggestions from David
778 Beattie.
779
780 * badblocks.c (test_nd): Generalized cleanup and bug-fixes. We
781 now explicitly clear out the signal handlers to prevent a
782 longjmp to a deactivated stack frame.
783 (test_rw): Fixed a signed vs. unsigned comparison error.
784
Theodore Ts'offe4cab2000-04-03 13:27:41 +0000785 * badblocks.8.in, chattr.1.in, dumpe2fs.8.in, lsattr.1.in,
786 mklost+found.8.in, tune2fs.8.in: Update Remy Card's e-mail
787 address.
788 chattr.1.in: Update which attributes aren't supported.
789
Theodore Ts'oe1a0a3e2000-02-11 05:00:19 +00007902000-02-09 Theodore Ts'o <tytso@valinux.com>
791
792 * chattr.1.in:
793 * lsattr.1.in: Change "version" to "version/generation number".
794
795 * chattr.1.in: Fix stupid file vs filesystem typo.
796
797 * tune2fs.c Fix spelling error (spare vs sparse).
798
799 * mke2fs.c (PRS): Add safety check to make sure the number of
800 blocks doesn't exceed 32 bits on a 64 bit machine.
801
802 * chattr.c: Random cleanup; file-only variables are now static.
803 Options for setting/clearings flags put into order, and
804 #ifdef's removed (since we now use a built-in header
805 file). Add error message if user tries to set and reset
806 the same flag.
807
808 * lsattr.c: Random cleanup; file-only variables are now static.
809 The -l "long" listing has been changed to look nicer.
810 Options names have been renamed to be more descriptive.
811
Theodore Ts'odd018f52000-02-06 23:57:07 +00008122000-02-06 Theodore Ts'o <tytso@valinux.com>
813
Theodore Ts'od9c56d32000-02-08 00:47:55 +0000814 * badblocks.c, chattr.c, dumpe2fs.c, e2label.c, findsuper.c,
815 fsck.c, get_device_by_label.c, lsattr.c, mke2fs.c,
816 mklost+found.c, nls-enable.h, partinfo.c, tune2fs.c,
817 uuidgen.c: Add Internationalization support as
818 suggested by Marco d'Itri <md@linux.it>.
819
Theodore Ts'odd018f52000-02-06 23:57:07 +0000820 * badblocks.c: Fix non-destructive read/write patches from David
821 Beattie. Non-standard variable-length automatic arrays
822 removed. Non-destrutive write test fixed so that logic is
823 clearer and more provably correct. (I believe the old
824 code had a bug where the disk data wasn't restored if it
825 was interrupted at the wrong time.)
826
827 * badblocks.8.in: Document new options in man page.
828
Theodore Ts'ob4ee1fb2000-02-02 19:08:51 +00008292000-02-02 Theodore Ts'o <tytso@valinux.com>
830
831 * fsck.c (interpret_device): If there was an attempt to interpret
832 a device specification of the type "UUID=" or "LABEL=",
833 and it fails, check to see if /proc/partitions is
834 readable. If not, print a warning message about /proc
835 perhaps not being mounted, and exit.
836
837 * mke2fs.c (check_plausibility): Remove unneeded #include of
838 linux/fs.h. Add #define of MAJOR if necessary.
839
840 * partinfo.c: Remove unneeded #include of linux/fs.h
841
Theodore Ts'o582134c2000-01-19 13:26:23 +00008422000-01-19 Theodore Ts'o <tytso@valinux.com>
843
844 * tune2fs.c (usage): Update the usage message to correctly
845 document the -s option.
846
Theodore Ts'o879ac922000-01-18 20:59:11 +00008472000-01-18 Theodore Ts'o <tytso@valinux.com>
848
849 * badblocks.c: Folded in patches David Beattie <dbeattie@usa.net>.
850 Need to do cleanup before release: use of GCC extensions
851 (dynamic arrays); unclean coding tricks (use of || instead
852 of if statements, etc.). Comments from David Beattie:
853
854 "I added non-destructive write-testing, and quite a few
855 other features. The non-destructive write testing,
856 triggered by new "-n" command-line option, will write test
857 patterns to the disk, but only after reading data off the
858 disk into memory. Then, comparing the test patterns gives
859 a result as to whether or not those sectors are reliable.
860 Finally, the original data is written back.
861
862 To streamline this operation, I added another option, "-c
863 blocks_at_once", which will give the number of disk blocks
864 to process at one time (mnemonic--"count"). I made this
865 default to 16 (as in the read-only testing mode), and also
866 affect the read-only testing mode. Of course, read-only
867 mode needs (count * block_size) amount of memory, and
868 non-destructive read-write needs 3 times that much, so it
869 makes sense to do the calculations and not overrun
870 available RAM...I would have liked to implement and
871 auto-memory-usage heuristic, but I have no idea if it's
872 even possible to determine the amount of free memory on a
873 Unix system except by reading /proc entries, and that
874 didn't seem portable. I did NOT make this blocks_at_once
875 affect the behavior of the test_rw routine, as it is
876 processing the whole disk at once, anyway.
877
878 I *think* that I got higher detection rates on my hard
879 drive using random test data than patterned test data, so
880 my non-destructive mode initializes its test data buffer
881 randomly.
882
883 I fixed a typo in flush_bufs that caused the ioctl
884 BLKFLSBUF to never get compiled into the program.
885
886 Also, I added an "undocumented" (I didn't put it into the
887 usage message; you can if you think it's useful) "-h"
888 option to specify the host device to flush--useful if you
889 want to test out my "non-destructive" code on something
890 other than a hard drive, such as a file on a hard drive,
891 and want the host hard drive to flush.
892
893 I provided support for an "input" file (via option "-i",
894 similar to the "-o" option)...containing a list of
895 already-known bad blocks; it will skip testing those
896 blocks, thus adding speed to the bad block scan (on my
897 computer, hitting a physically bad block causes a
898 half-second-or-more freeze as the kernel waits for the
899 hard drive to give up and reset itself; pretty annoying
900 when you already know the block is bad from a previous
901 scan).
902
903 Finally, the real killer, the persistent re-scan (option:
904 "-p num_passes") that I created will, if desired,
905 persistently re-scan the drive until it has completed a
906 user-decidable number of passes in a row during which no
907 new bad blocks are found. On my drive, I would see
908 behavior that a certain percentage of bad blocks would be
909 found with each pass (it was not reliable in the defective
910 areas!), so I wanted it to check it over and over again
911 until it didn't find any more, several times. Perhaps
912 this will be useful to others. Defaults of course to
913 zero, meaning it will stop after the first pass. I used
914 "-p 2" on my drive, and it ran for 2 1/2 days...then used
915 "-p 3" a couple days later and it ran for a few more
916 hours, and since then the rest of my drive has been
917 completely reliable.
918
919 Implementation of these last two features, "-i" and "-p",
920 I did using a bb_list from libext2fs. I debated whether
921 bad blocks input through "-i" should be output into the
922 "-o" file (or stdout, of course), and decided against it,
923 but left the code to do so in place, commented out, just
924 for your information.
925
926 In order to maintain data integrity upon interruption of a
927 non-destructive-write test, I created a signal handler
928 which I install which will write back whatever original
929 disk data is in the buffers upon any of the fatal signals
930 (except SIGKILL, of course).
931
932 Of course, ideally, the new options would be reflected in
933 the badblocks manual page, but I am not experienced at
934 manual page modification; if you decide my patch to
935 badblocks should be incorporated into the distribution, I
936 could learn how to update the manpage and other
937 documentation, or you could do it for me after exercising
938 your opinions, if you have any, on exactly what the
939 command-line parameters should be called and which ones
940 should be in the distribution."
941
Theodore Ts'o3cb77842000-01-18 16:30:27 +00009422000-01-07 Theodore Ts'o <tytso@valinux.com>
943
944 * Really fix the bug where "fsck -As" will actually allow
945 interactive fsck's. (For those people who like to do
946 interactive fsck's in the /etc/rc scripts!?!)
947
Theodore Ts'obfd21931999-11-23 13:48:58 +00009481999-11-23 <tytso@valinux.com>
949
950 * tune2fs.8.in: Fix man page so that the sparse_super filesystem
951 option is properly named.
952
Theodore Ts'o6733c2f1999-11-23 02:23:30 +00009531999-11-22 <tytso@valinux.com>
954
955 * mke2fs.c: Change log2() and log10() to int_log2() and
956 int_log10() to avoid namespace collisions. Change #ifdef
957 sparc to #ifdef __sparc__.
958
Theodore Ts'o5c36a2f1999-11-19 18:42:30 +00009591999-11-19 <tytso@valinux.com>
960
961 * Makefile.in (distclean): Remove TAGS and Makefile.in.old from
962 the source directory.
963
Theodore Ts'o6fdc7a31999-11-10 13:34:40 +00009641999-11-10 <tytso@valinux.com>
965
Theodore Ts'ocd086361999-11-10 16:00:39 +0000966 * Release of E2fsprogs 1.18
967
9681999-11-10 <tytso@valinux.com>
969
Theodore Ts'o6fdc7a31999-11-10 13:34:40 +0000970 * mke2fs.8.in: Update manual page so that the sparse_option
971 filesystem option is properly named.
972
Theodore Ts'o6a35ffa1999-11-04 22:34:43 +00009731999-11-04 <tytso@valinux.com>
974
975 * fsck.c (main): Move setting of the interactive flag to before
976 the call to check_all(), so that people who try to use
977 fsck -As can do so interactively.
978
Theodore Ts'o36caf251999-10-26 14:29:22 +00009791999-10-26 <tytso@valinux.com>
980
Theodore Ts'o28e11941999-10-26 18:17:20 +0000981 * Release of E2fsprogs 1.17
982
9831999-10-26 <tytso@valinux.com>
984
Theodore Ts'o3bc03661999-10-26 17:17:00 +0000985 * fsck.c (PRS, device_already_active): Add debugging hook; if the
986 environment variable FSCK_FORCE_ALL_PARALLEL is set, then
987 force all fsck runs to happen in parallel.
988
Theodore Ts'o36b01301999-10-26 14:38:36 +0000989 * get_device_by_label.c (has_right_label): Fixed bug where code
990 used a strncmp to compare a binary UUID value which may
991 contain a NULL. Fixed GCC warnings; added const to char *
992 typed variables. Eliminated non-portable use of u_char.
993
Theodore Ts'o4a600561999-10-26 14:35:51 +0000994 * mke2fs.c (PRS): Fix gcc warnings; add const to some char *
Theodore Ts'o9094f281999-10-26 16:42:50 +0000995 variables, including in struct mke2fs_defaults.
996 (set_fs_defaults): Changed parameter name to avoid
997 gcc warnings.
Theodore Ts'o4a600561999-10-26 14:35:51 +0000998
Theodore Ts'ob5135711999-10-26 14:33:24 +0000999 * fsck.c (wait_one): Fix gcc warnings; add #include for ctype.h,
1000 add const to char * variables, and use NOARGS to declare
1001 functions that take no arguments. Also fix a memory leak
1002 in execute() where we weren't freeing argv[] after forking
1003 the child process.
1004
Theodore Ts'o36caf251999-10-26 14:29:22 +00001005 * chattr.c: Add hack to compile in a definition for S_ISLNK so we
1006 can successfully compile even with warnings turned on.
1007
Theodore Ts'oad6783d1999-10-26 01:58:54 +000010081999-10-25 <tytso@valinux.com>
1009
1010 * mke2fs.c (show_stats): Capitalized Hurd to make the GNU types
1011 happy.
Theodore Ts'oe6597041999-10-26 02:30:16 +00001012 (PRS): Use __u64 instead of long long for portability
1013 reasons. Also moved #include of sys/stat.h inside #ifdef
1014 HAVE_LINUX_MAJOR_H for portability reasons.
Theodore Ts'oad6783d1999-10-26 01:58:54 +00001015
1016 * fsck.c (execute): Fix really stupid bug in the linked list
1017 management which caused fsck in parallel mode to go into
1018 an infinite loop.
1019
Theodore Ts'o896938d1999-10-23 01:04:50 +000010201999-10-22 <tytso@valinux.com>
1021
Theodore Ts'o614fdfd1999-10-23 03:19:51 +00001022 * Release of E2fsprogs 1.16
1023
10241999-10-22 <tytso@valinux.com>
1025
Theodore Ts'o896938d1999-10-23 01:04:50 +00001026 * tune2fs.c (main): Add a new option -O which allows the user to
1027 set and clear certain "safe" filsystem feature flags.
1028 Currently, the only ones which are supported for
1029 modification are sparse_superblock and filetype.
1030
1031 * mke2fs.c (PRS): Add new option -O which allows the user to
1032 request filesystems with specific filesystem options. By
1033 default on 2.2 and later systems, create filesystems that
1034 have both file type information and sparse superblocks.
1035
Theodore Ts'ocaf8ce41999-10-21 19:56:34 +000010361999-10-21 <tytso@valinux.com>
1037
1038 * badblocks.8.in, chattr.1.in, dumpe2fs.8.in, e2label.8.in,
1039 fsck.8.in, lsattr.1.in, mke2fs.8.in, mklost+found.8.in,
1040 tune2fs.8.in, uuidgen.1.in: Update man page to use a more standard
1041 format (bold option flags and italicized variables), as
1042 suggested by Andreas Dilger (adilger@enel.ucalgary.ca)
1043
Theodore Ts'o7f4bb6c1999-10-20 18:11:01 +000010441999-10-14 <tytso@valinux.com>
1045
Theodore Ts'o671cbfa1999-10-20 18:14:23 +00001046 * tune2fs.c (main): Fix typo (double spaces) in messages regarding
1047 changing the sparse superblock option
1048
Theodore Ts'o7f4bb6c1999-10-20 18:11:01 +00001049 * fsck.c (wait_one): If the fsck process just started, wait a
1050 second before sending a SIGUSR1, to give it a chance
1051 to set the signal handler; otherwise, fsck will die on an
1052 unhandled SIGUSR1.
1053
10541999-09-15 <tytso@valinux.com>
Theodore Ts'o76714331999-10-20 18:06:29 +00001055
1056 * mke2fs.c (show_stats): Fix display bug when printing out the
1057 number of superblocks. Suggested by Yann Dirson.
1058
Theodore Ts'o27401561999-09-14 20:11:19 +000010591999-09-08 <tytso@valinux.com>
1060
1061 * partinfo.c: Fix minor compilation bugs pointed out by Yann
1062 Dirson.
1063
1064 * mke2fs.c: Don't turn on sparse superblocks by default on pre-2.2
1065 kernels.
1066
1067 * mke2fs.8.in: Add the possible valid block sizes for mke2fs.
1068 Document the -n flag, and the new defaults for the -s
1069 flag.
1070
1071 * dumpe2fs.c, dumpe2fs.8.in: Add new options -f (force) and -h
1072 (header-only).
1073
10741999-08-13 <tytso@valinux.com>
1075
1076 * mke2fs.c (PRS): Fix logic for turning on/off the sparse
1077 superblock option.
1078
10791999-07-18 Theodore Ts'o <tytso@valinux.com>
Theodore Ts'o657cb971999-07-30 23:19:10 +00001080
1081 * Release of E2fsprogs 1.15
1082
Theodore Ts'o50787ea1999-07-19 15:30:21 +000010831999-07-18 <tytso@rsts-11.mit.edu>
1084
1085 * mke2fs.c (PRS, set_fs_defaults): Add new option -T which allows
1086 the user to specify the how the filesystem is to be used.
1087 Mke2fs now chooses the filesystem parameters automatically
1088 based on the size of the filesystem and the intended use
1089 of the filesystem. Add new option -n which simply goes
1090 through the calculations to determine the parameters of
1091 the filesystem the system would make.
1092
10931999-07-18 <tytso@valinux.com>
1094
1095 * fsck.c, fsck.h: Add support for new option -C. This option will
1096 automatically manage e2fsck processes so that they will
1097 print completion/progress bars. If multiple filesystems
1098 are being checked, arrange to make sure that only one
1099 e2fsck process is displaying a progress bar at a time.
1100
11011999-07-08 <tytso@valinux.com>
Theodore Ts'o9f10a7b1999-07-16 10:41:36 +00001102
1103 * badblocks.c (do_test): Don't complain if the write error occurs
1104 on a non-block boundary. This is perfectly common when
1105 using blocksizes larger than 1k.
1106
Theodore Ts'oc54b3c31999-07-03 07:20:06 +000011071999-07-03 <tytso@valinux.com>
Theodore Ts'o5dbb0721999-07-03 06:16:06 +00001108
1109 * uuidgen.c: Add option parsing so that user can ask for either a
1110 time-based UUID or a random-based UUID.
1111
Theodore Ts'oc54b3c31999-07-03 07:20:06 +000011121999-07-02 <tytso@valinux.com>
Theodore Ts'o2d8defd1999-07-03 01:59:42 +00001113
1114 * fsck.c: Added support for LABEL= and UUID= specifications for
1115 the filesystem's device, to match what recent mount
1116 programs can support. Also, close stdin when doing fsck
1117 -A or when checking more than one filesystem at a time, so
1118 that e2fsck doesn't try to ask interactive questions if
1119 the filesystem appears to be mounted.
1120
1121 * get_device_by_label.c: New file added to support LABEL=foo and
1122 UUID=bar type specifications.
1123
Theodore Ts'o00eedba1999-07-03 00:45:58 +000011241999-07-01 <tytso@valinux.com>
1125
1126 * badblocks.c: Make the "done" string include enough spaces to
1127 clear out a large block number.
1128
Theodore Ts'oca3c3281999-06-29 14:37:35 +000011291999-06-29 <tytso@valinux.com>
1130
1131 * mke2fs.c (check_mount): Allow a filesystem to be made even if it
1132 appears mounted if the force option is given.
1133
Theodore Ts'oe72a9ba1999-06-25 15:40:18 +000011341999-06-24 <tytso@valinux.com>
1135
1136 * mke2fs.8.in: Fix typo in man page which caused the badblocks
1137 command to not show up in the "SEE ALSO" section.
1138
Theodore Ts'oe2423cc1999-06-18 00:51:31 +000011391999-05-02 <tytso@rsts-11.mit.edu>
1140
1141 * findsuper.c: Added documentation from aeb@cwi.nl; some minor
1142 code cleanups.
1143
Theodore Ts'o02e7dd91999-06-18 00:48:41 +000011441999-05-20 <tytso@rsts-11.mit.edu>
1145
1146 * dumpe2fs.c, dumpe2fs.8.in: Added new command-line options which
1147 allow a filesystem expert to specify the superblock and
1148 blocksize when opening a filesystem. This is mainly
1149 useful when examining the remains of a toasted filesystem.
1150
Theodore Ts'o5d45d801999-03-16 19:35:19 +000011511999-03-11 Andreas Dilger <adilger@enel.ucalgary.ca>
1152
1153 * uuidgen.c, uuidgen.1.in: Created command-line utility to
1154 generate UUIDs.
1155
11561999-03-14 Theodore Ts'o <tytso@rsts-11.mit.edu>
1157
1158 * fsck.c (fsck_device, execute): Don't dereference a null pointer
1159 when checking a filesystem not in /etc/fstab.
1160
Theodore Ts'o7d5633c1999-02-09 08:14:28 +000011611999-02-09 Theodore Ts'o <tytso@rsts-11.mit.edu>
1162
1163 * fsck.c (fsck_device): Print an error message if the user passes
1164 in a device or directory name which isn't found in /etc/fstab.
1165 Allow the location of /etc/fstab to be overridden by
1166 the FSTAB_FILE environment variable.
1167
11681999-01-30 Theodore Ts'o <tytso@rsts-11.mit.edu>
1169
1170 * mke2fs.c (write_inode_tables): Add kludge code so that when the
1171 MKE2FS_SYNC environment variable is set, mke2fs will sync
1172 every MKE2FS_SYNC block groups, while it is writing out
1173 the inode tables. This is to work around a VM bug in the
1174 2.0 kernel. I've heard a report that a RAID user was able
1175 to trigger it even using a 2.2 kernel.
1176
Theodore Ts'oee922991999-01-16 05:39:12 +000011771999-01-16 Theodore Ts'o <tytso@rsts-11.mit.edu>
1178
1179 * fsck.c (execute, wait_one): Modified routines so that they
1180 accurately create an fsck_instance even when the noexecute
1181 flag is set. This allows for accurate debugging of the
1182 fsck pass structure.
1183 (check_all): When the verbose flag is given twice, print
1184 debugging information about when fsck is waiting for jobs
1185 to finish.
1186
Theodore Ts'o7953f611999-01-09 05:03:52 +000011871999-01-09 Theodore Ts'o <tytso@rsts-11.mit.edu>
1188
Theodore Ts'o9e51eca1999-01-09 16:32:31 +00001189 * Release of E2fsprogs 1.14
1190
11911999-01-09 Theodore Ts'o <tytso@rsts-11.mit.edu>
1192
Theodore Ts'o7953f611999-01-09 05:03:52 +00001193 * fsck.8.in: Clarified and expanded the documentation for the -A
1194 switch.
1195
Theodore Ts'o665f7101999-01-08 13:33:39 +000011961999-01-07 Theodore Ts'o <tytso@rsts-11.mit.edu>
1197
1198 * fsck.c (load_fs_info): If the pass number field is missing, it
1199 needs to be treated as zero.
1200
Theodore Ts'oa88fa0c1999-01-05 07:02:39 +000012011999-01-05 Theodore Ts'o <tytso@rsts-11.mit.edu>
1202
Theodore Ts'o8d641742001-05-14 04:12:27 +00001203 * mke2fs.c (PRS): Add -N option to allow the user to specify
1204 exactly how many inodes he/she wishes.
Theodore Ts'o5515e6b1999-01-05 07:25:06 +00001205
Theodore Ts'oa88fa0c1999-01-05 07:02:39 +00001206 * chattr.c, lsattr.c: Only print the version information for the
1207 program if the -V option is given.
1208
1209 * chattr.c: Ignore symbolic links when doing a recursive descent
1210 through a directory.
1211
Theodore Ts'o93ab9d71999-01-02 04:04:42 +000012121999-01-01 Theodore Ts'o <tytso@rsts-11.mit.edu>
1213
1214 * fsck.c (load_fs_info, parse_fstab_line): Ignore fstab lines
1215 are commented out. Also allow blank lines in the
1216 /etc/fstab file.
1217 (execute): In verbose mode, print the mountpount of the
1218 filesystem which we are checking (user request).
1219
12201998-12-30 Theodore Ts'o <tytso@rsts-11.mit.edu>
1221
1222 * mke2fs.c: Add definition of SCSI_BLK_MAJOR if not defined, for
1223 compatibility with Linux 1.2.13 header files.
1224
Theodore Ts'o556ad131998-12-19 08:10:58 +000012251998-12-15 Theodore Ts'o <tytso@rsts-11.mit.edu>
1226
1227 * Release of E2fsprogs 1.13
1228
Theodore Ts'ocb620171998-12-08 02:21:29 +000012291998-12-07 Theodore Ts'o <tytso@rsts-11.mit.edu>
1230
1231 * mke2fs.8.in: Fixed stupid typo ("Raid options are _comma_
1232 seperated", instead of common separated)
1233
Theodore Ts'o5a679c81998-12-03 16:40:38 +000012341998-12-03 Theodore Ts'o <tytso@rsts-11.mit.edu>
1235
1236 * Makefile.in: Updated dependencies.
1237
12381998-11-27 Theodore Ts'o <tytso@rsts-11.mit.edu>
1239
1240 * fsck.c (load_fs_info): Parse /etc/fstab ourselves, instead of
1241 relying on getmntent(). This has the advantage of
1242 allowing us to properly handle missing pass numbers correctly.
1243
Theodore Ts'o1dde43f1998-11-14 04:18:28 +000012441998-11-13 Theodore Ts'o <tytso@rsts-11.mit.edu>
1245
1246 * tune2fs.8.in: Fix minor display bug in the nroff.
1247
1248 * mke2fs.c (show_stats, write_inode_tables): Use the log10
1249 function to calculate the display of block numbers so that
1250 things look nice on an 80 character display.
1251
12521998-10-12 Theodore Ts'o <tytso@rsts-11.mit.edu>
1253
1254 * mke2fs.c (usage): Add the sparse-super-flag to the usage
1255 message.
1256
Theodore Ts'o4a5fa191998-07-09 05:42:45 +000012571998-07-09 Theodore Ts'o <tytso@rsts-11.mit.edu>
1258
1259 * Release of E2fsprogs 1.12
1260
Theodore Ts'oeb5ab741998-07-04 17:47:52 +000012611998-07-04 Theodore Ts'o <tytso@rsts-11.mit.edu>
1262
1263 * findsuper.c (main): Print the block group number which is now
1264 being written by e2fsprogs.
1265
Theodore Ts'o818180c1998-06-27 05:11:14 +000012661998-06-25 Theodore Ts'o <tytso@rsts-11.mit.edu>
1267
1268 * fsck.c (ignore): Remove unused variable cp.
1269
1270 * chattr.c (fatal_error):
1271 * tune2fs.c (usage):
1272 * lsattr.c (usage):
1273 * dumpe2fs.c (usage):
1274 * badblocks.c (usage): Remove volatile from declaration.
1275
1276 * fsck.c: Change use of strdup to be string_copy, since we don't
1277 trust what glibc is doing with strdup. (Whatever it is,
1278 it isn't pretty.)
1279
12801998-06-19 Theodore Ts'o <tytso@rsts-11.mit.edu>
1281
1282 * mke2fs.c (PRS): Add a -V option which prints the version number
1283 and exit.
1284
Theodore Ts'o4bf5fbf1998-05-14 22:43:10 +000012851998-05-14 Theodore Ts'o <tytso@rsts-11.mit.edu>
1286
1287 * fsck.c (ignore): Remove check for filesystems with the noauto
1288 option.
1289
Theodore Ts'o7e44f241998-04-01 03:16:29 +000012901998-03-30 Theodore Ts'o <tytso@rsts-11.mit.edu>
1291
1292 * Makefile.in: Change to use new installation directory variables
1293 convention. Fix uninstall rules to take $(DESTDIR) into
1294 account. Remove cat8dir and cat1dir from the installdirs
1295 target, since modern man package don't necessarily put the
1296 cat directory in /usr/man/cat?.
1297
Theodore Ts'oa789d841998-03-30 01:20:55 +000012981998-03-29 Theodore Ts'o <tytso@rsts-11.mit.edu>
1299
Theodore Ts'o3b27db91998-03-30 01:32:10 +00001300 * e2label.8.in: New man page to document the e2label function.
1301
Theodore Ts'oa789d841998-03-30 01:20:55 +00001302 * e2label.c: Fix -Wall warning by making functions static.
1303
13041998-03-28 Theodore Ts'o <tytso@rsts-11.mit.edu>
1305
1306 * chattr.1.in: Document that the append-only attribute may
1307 only be set or cleared by the superuser.
1308
1309 * Update all manual pages to that the availability section is
1310 up-to-date.
1311
1312 * e2label.8.in, tune2fs.8.in: Update manual page to state that
1313 labels must be no longer than 16 characters, or they will
1314 be truncated.
1315
1316 * e2label.c (change_label), tune2fs.c (main): If the label is
1317 longer than 16 characters, print a warning message stating
1318 that the label will be truncated.
1319
1320 * mke2fs.c (PRS): If the user specifies a filesystem size, and
1321 it's larger than the apparent size of the device, print a
1322 warning message and ask if the user wants to proceed.
1323
Theodore Ts'obbfa3aa1998-03-21 07:12:46 +000013241998-03-21 Theodore Ts'o <tytso@rsts-11.mit.edu>
1325
1326 * mke2fs.c (check_plausibility): Fixed spelling typo in warning
1327 message. Fixed up -Wall warnings in file.
1328
Theodore Ts'oe9271681998-03-09 03:23:51 +00001329Sun Mar 8 22:21:48 1998 Theodore Ts'o <tytso@rsts-11.mit.edu>
1330
1331 * partinfo.c (main): The ioctl BLKGETSIZE requires a long, not an
1332 int.
1333
Theodore Ts'o92bcc591998-02-16 22:29:34 +00001334Sun Feb 1 16:53:36 1998 Theodore Ts'o <tytso@rsts-11.mit.edu>
1335
1336 * badblocks.8: Update documentation to note that output format
1337 of badblocks is suitable for use with e2fsck -l or
1338 mke2fs -l.
1339
1340 * mke2fs.c (handle_bad_blocks): Fix bug so that all groups with
1341 bad superblock backup blocks are printed (not just the
1342 first one).
1343
Theodore Ts'oca8abba1998-01-19 14:55:24 +00001344Mon Dec 1 17:01:04 1997 Theodore Ts'o <tytso@rsts-11.mit.edu>
1345
1346 * badblocks.8.in: Add documentation for the -s option.
1347
Theodore Ts'o519149f1997-10-25 03:49:49 +00001348Fri Oct 24 23:37:52 1997 Theodore Ts'o <tytso@rsts-11.mit.edu>
1349
1350 * fsck.c:
1351 * chattr.c: Remove #include of getopt.h, since it's not needed.
1352
1353 * tune2fs.c (main):
1354 * lsattr.c (main):
1355 * badblocks.c (main):
1356 * dumpe2fs.c (main):
1357 * mke2fs.c (PRS): Make the variable which getopt returns into be
1358 an int, so that it won't lose on platforms where char is
1359 unsigned.
1360
Theodore Ts'od163b091997-10-03 17:42:28 +00001361Fri Oct 3 13:38:45 1997 Theodore Ts'o <tytso@rsts-11.mit.edu>
1362
1363 * mke2fs.c (parse_raid_opts): Make parse_raid_opts return a void,
1364 to fix a -Wall warning.
1365
Theodore Ts'o00e54331997-09-16 02:13:52 +00001366Mon Sep 15 22:07:12 1997 Theodore Ts'o <tytso@rsts-11.mit.edu>
1367
1368 * tune2fs.c (main):
1369 * mklost+found.c (main):
1370 * lsattr.c (main):
1371 * dumpe2fs.c (main):
1372 * chattr.c (main):
1373 * badblocks.c (main): Declare main to return an int, as required.
1374 Make sure main always ends with an exit(0). (Some
1375 programs weren't doing this, and thus were returning a
1376 random exit value.)
1377
Theodore Ts'oab6b8ab1997-07-14 19:28:55 +00001378Mon Jul 14 15:27:29 1997 Theodore Y. Ts'o <tytso@mit.edu>
1379
1380 * e2label.c: New file contributed by Andries Brouwer which
1381 provides an easy-to-use interface to modify the filesystem
1382 label.
1383
1384 * Makefile.in (SPROGS): Add Makefile support to build e2label
1385
Theodore Ts'o024996c1997-06-17 05:38:35 +00001386Tue Jun 17 01:33:20 1997 Theodore Ts'o <tytso@rsts-11.mit.edu>
1387
1388 * Release of E2fsprogs 1.11
1389
Theodore Ts'oe22d4611997-06-17 03:57:27 +00001390Mon Jun 16 23:37:54 1997 Theodore Ts'o <tytso@rsts-11.mit.edu>
1391
1392 * mke2fs.c (show_stats): Adjust the number of columns printed when
1393 displaying the superblock backups to avoid running over
1394 80 columns when making a really big disk.
1395
Theodore Ts'of635d7f1997-05-09 02:50:16 +00001396Thu May 8 22:22:08 1997 Theodore Ts'o <tytso@rsts-11.mit.edu>
1397
Theodore Ts'o583ccdc1997-05-09 03:06:31 +00001398 * badblocks.8.in, chattr.1.in, dumpe2fs.8.in, fsck.8.in,
1399 mke2fs.8.in, tune2fs.8.in: Fix minor typos and grammer
1400 oops found by Bill Hawes (whawes@star.net).
1401
Theodore Ts'of635d7f1997-05-09 02:50:16 +00001402 * mke2fs.c (test_disk): Pass the blocksize to the bad blocks
1403 command so that all of the filesystem gets tested in the
1404 case where the blocksize 2048 or 4096.
1405
Theodore Ts'oa29f4d31997-04-29 21:26:48 +00001406Thu Apr 24 12:16:42 1997 Theodre Ts'o <tytso@localhost.mit.edu>
1407
1408 * Release of E2fsprogs version 1.10
1409
1410Thu Apr 24 09:52:47 1997 Theodre Ts'o <tytso@localhost.mit.edu>
1411
1412 * mke2fs.c: Added new option -R, which specifies RAID options.
1413 Currently the only supported RAID option is "stride" which
1414 specifies the stripe width in RAID filesystem. This is
1415 used to aid in the placement of the inode and block
1416 bitmaps.
1417
1418 * mke2fs.8.in, tune2fs.8.in: Added warnings that the sparse
1419 superblock option isn't yet supported by most kernels.
1420
1421Wed Apr 23 22:42:51 1997 Theodre Ts'o <tytso@localhost.mit.edu>
1422
1423 * mke2fs.c (PRS): Make the default filesystem revision be 0, not
1424 1. (Since some people are still worried about 1.2.13
1425 compatibility).
1426
1427Thu Apr 17 12:23:38 1997 Theodore Ts'o <tytso@rsts-11.mit.edu>
1428
1429 * Release of E2fsprogs version 1.09
1430
Theodore Ts'o2ecc6fe1997-04-29 17:57:00 +00001431Fri Apr 11 18:57:24 1997 Theodore Ts'o <tytso@rsts-11.mit.edu>
1432
1433 * chattr.1.in: Updated man page so that the 'A' attribute is
1434 specified everywhere.
1435
1436 * chattr.c (usage): Added usage message for the 'A' attribute.
1437
1438Fri Apr 11 18:56:26 1997 Theodore Ts'o <tytso@rsts-11.mit.edu>
1439
1440 * Release of E2fsprogs version 1.08
1441
Theodore Ts'o521e3681997-04-29 17:48:10 +00001442Thu Apr 10 07:08:03 1997 Theodore Ts'o <tytso@rsts-11.mit.edu>
1443
1444 * dumpe2fs.c (list_desc): List the offsets of the inode and block
1445 bitmaps, and the inode table. List the block boundaries
1446 for the groups.
1447
1448Sat Apr 5 11:55:52 1997 Theodore Ts'o <tytso@rsts-11.mit.edu>
1449
1450 * tune2fs.c (main): Implement the -s flag allows the user to
1451 set and reset the sparse superblock flag.
1452
1453 * mke2fs.c (PRS): By default generate DYNAMIC revision
1454 filesystems. The -s flag controls whether or not the
1455 sparse superblock flag is set.
1456 (PRS): Change to allow the user to specify the true
1457 maximum number of blocks per group to reflect the
1458 blocksize.
1459
Theodore Ts'o19c78dc1997-04-29 16:17:09 +00001460Wed Mar 12 13:32:05 1997 Theodore Y. Ts'o <tytso@mit.edu>
1461
1462 * Release of E2fsprogs version 1.07
1463
1464Thu Mar 6 17:15:05 1997 Theodore Ts'o <tytso@rsts-11.mit.edu>
1465
1466 * mke2fs.c (create_root_dir): Set the root directory's i_uid and
1467 i_gid to be the real user and group id.
1468
1469Tue Mar 4 10:14:33 1997 Theodore Ts'o <tytso@rsts-11.mit.edu>
1470
1471 * mke2fs.c (check_plausibility): Add more intelligent error
1472 messages when the device doesn't exist.
1473
1474Sat Mar 1 10:43:32 1997 Theodore Ts'o <tytso@rsts-11.mit.edu>
1475
1476 * fsck.c (main): Fix bug where the PATH environment variable isn't
1477 set when it is unset.
1478
1479Tue Jan 14 12:30:45 1997 Theodore Ts'o <tytso@rsts-11.mit.edu>
1480
1481 * mke2fs.c (write_inode_tables): Fixed bug in write_inode_tables
1482 where a loop variable was getting reused in a nested loop.
1483 This caused the inode table to not be correctly
1484 initialized.
1485
1486Thu Jan 2 00:00:37 1997 Theodore Ts'o <tytso@rsts-11.mit.edu>
1487
1488 * lsattr.c, chattr.c: Include string.h, since we use memcpy().
1489
1490 * findsuper.c: Use time_t for ctime(), not __u32.
1491
1492Sat Dec 28 23:39:18 1996 Theodore Ts'o <tytso@rsts-11.mit.edu>
1493
1494 * badblocks.c: Adapted -vv modifications from Rik Faith so that
1495 they frequently update the block number field.
1496
1497 * badblocks.8.in: Document the optional start-block parameter
1498
1499Mon Oct 14 11:52:58 1996 Theodore Ts'o <tytso@rsts-11.mit.edu>
1500
1501 * mke2fs.c: Updated to use new ext2fs_allocate_tables() function.
1502
1503Tue Oct 8 02:02:03 1996 Theodore Ts'o <tytso@rsts-11.mit.edu>
1504
1505 * Release of E2fsprogs version 1.06
1506
Theodore Ts'o5c576471997-04-29 15:29:49 +00001507Mon Oct 7 00:56:24 1996 Theodore Ts'o <tytso@rsts-11.mit.edu>
1508
1509 * chattr.1.in: Documented the 'A' (noatime) attribute.
1510
1511 * dumpe2fs.c (main): Change EXT2_SWAP to EXT2_FLAG_SWAP for
1512 consistency's sake.
1513
1514Sun Sep 22 16:18:47 1996 Theodore Ts'o <tytso@rsts-11.mit.edu>
1515
1516 * chattr.c (decode_arg): Add support for the 'A' (noatime) flag.
1517
1518Thu Sep 12 15:23:07 1996 Theodore Ts'o <tytso@rsts-11.mit.edu>
1519
1520 * Release of E2fsprogs version 1.05
1521
Theodore Ts'o1e3472c1997-04-29 14:53:37 +00001522Sat Sep 7 07:34:11 1996 Theodore Ts'o <tytso@rsts-11.mit.edu>
1523
1524 * tune2fs.c (main): Add support for new option -C, which sets the
1525 current number of mounts.
1526 (main): Allow the interval to be specified in seconds,
1527 mostly for debugging.
1528
1529Tue Aug 27 17:27:43 1996 Miles Bader <miles@gnu.ai.mit.edu>
1530
1531 * Makefile.in (SMANPAGES): Use @FSCK_MAN@ instead of fsck.8.
1532 (SPROGS): Use @FSCK_PROG@ instead of fsck.
1533
1534Thu Aug 22 00:51:44 1996 Theodore Ts'o <tytso@rsts-11.mit.edu>
1535
1536 * mke2fs.c (zap_bootblock): Don't do zap_bootblock on a
1537 sparc.
1538
1539Tue Aug 20 00:15:46 1996 Theodore Ts'o <tytso@rsts-11.mit.edu>
1540
1541 * chattr.c (main): Fixed bug so that chattr -v works. (Bug report
1542 and fix sent by Charles Howes, chowes@eznet.ca)
1543
1544Fri Aug 9 11:52:42 1996 Theodore Ts'o <tytso@rsts-11.mit.edu>
1545
1546 * tune2fs.8.in:
1547 * tune2fs.c: Added support for the -L option which sets the volume
1548 label, the -M option which sets the last mounted
1549 directory, and the -U option which sets the filesystem UUID.
1550
1551 * mke2fs.8.in:
1552 * mke2fs.c: Added support for the -o option, which overrides the
1553 creator OS. Generate a UUID for the filesystem, if
1554 applicable. Added support for the -L option which sets
1555 the volume label, and the -M option which sets the last
1556 mounted directory.
1557
1558Sat Jun 22 17:43:17 1996 Remy Card <card@bbj.linux.eu.org>
1559
1560 * chattr.c (decode_arg): Integrated Michael Nonweiler's fix to
1561 avoid a segmentation fault when the "-v" option is used
1562 and no version number is specified.
1563
Theodore Ts'o62c06f71997-04-29 14:34:47 +00001564Thu May 16 11:12:30 1996 Theodore Ts'o <tytso@rsts-11.mit.edu>
1565
1566 * Release of E2fsprogs version 1.04
1567
1568Wed May 15 21:15:43 1996 Theodore Ts'o <tytso@rsts-11.mit.edu>
1569
1570 * Makefile.in (fsck): fsck doesn't need to be linked with the ext2
1571 libraries.
1572
Theodore Ts'o7f88b041997-04-26 14:48:50 +00001573Wed Mar 27 00:33:40 1996 <tytso@rsts-11.mit.edu>
1574
1575 * Release of E2fsprogs version 1.03
1576
1577Thu Mar 7 03:43:20 1996 <tytso@rsts-11.mit.edu>
1578
1579 * mke2fs.c (PRS): Add (for development only) support to
1580 specify revision and inode size of the new filesystem.
1581
1582Tue Mar 5 03:51:35 1996 <tytso@rsts-11.mit.edu>
1583
1584 * mke2fs.8.in: Fix a few minor typo's in the man page.
1585
1586 * mke2fs.c (reserve_inodes): Add support for dynamic first inode
1587 revision.
1588
1589Mon Feb 5 22:19:49 1996 <tytso@rsts-11.mit.edu>
1590
1591 * fsck.c (check_all, PRS): Added new flag -P, which turns on the
1592 parallel root option. This allows you to check the root
1593 filesystem in parallel with the other filesystems. Note
1594 that this is not the safest thing in the world to do,
1595 since if the root filesystem is in doubt things like
1596 the e2fsck executable might be corrupted! But some
1597 sysadmins, who don't want to repartition the root
1598 filesystem to be small and compact, may really want this
1599 option turned on.
1600
Theodore Ts'o74becf31997-04-26 14:37:06 +00001601Wed Jan 31 11:06:08 1996 <tytso@rsts-11.mit.edu>
1602
1603 * Release of E2fsprogs version 1.02
1604
1605Tue Oct 30 21:14:12 1995 <tytso@rsts-11.mit.edu>
1606
1607 * mke2fs.c (check_plausibility): Add check to warn user if they
1608 are trying to mke2fs the whole disk. (/dev/hda
1609 vs. /dev/hda1)
1610
1611Fri Dec 15 19:09:56 1995 <tytso@rsts-11.mit.edu>
1612
1613 * fsck.c (check_all): If we break out of the loop because we are
1614 serializing and have just started at fsck we haven't
1615 finished the pass. We need to go round again in case there
1616 are more filesystems to be done in this pass. (Patch
1617 submitted by Mike Jagdis)
1618
1619Sat Dec 9 10:07:16 1995 <tytso@rsts-11.mit.edu>
1620
1621 * dumpe2fs.c (in_use): test_bit() was renamed to
1622 ext2fs_test_bit().
1623
Theodore Ts'o297f47a1997-04-26 14:25:20 +00001624Mon Oct 30 20:21:18 1995 <tytso@rsts-11.mit.edu>
1625
1626 * fsck.c (fsck_device): Check fstype instead of type; this was a
1627 stupid typo which caused coredumps in some cases.
1628
Theodore Ts'oa418d3a1997-04-26 14:00:26 +00001629Thu Oct 26 12:05:18 1995 <tytso@rsts-11.mit.edu>
1630
1631 * Makefile.in (install): Strip programs when they are installed.
1632
1633Fri Aug 18 15:10:40 1995 Theodore Y. Ts'o <tytso@dcl>
1634
1635 * mke2fs.c (PRS): Move call of check_mount() from main() to PRS(),
1636 so we do the check to see if the filesystem is mounted
1637 *before* we try to determine the size of the device.
1638
1639Wed Sep 6 23:34:07 1995 Remy Card <card@bbj>
1640
1641 * fsck.c (load_fs_info): Load the informations from /etc/fstab in
1642 the same order.
1643
1644Thu Aug 17 22:33:09 1995 <tytso@rsts-11.mit.edu>
1645
1646 * mke2fs.c (check_mount): Use the new ext2fs_check_if_mounted()
1647 function to determine if the device is mounted.
1648
1649 * mke2fs.c (PRS): Change call to use the new
1650 ext2fs_get_device_size() function in order to determine
1651 the size of the filesystem. Remove get_size() and
1652 is_valid_offset(), which are no longer called.
1653
1654Fri Aug 11 08:26:24 1995 Theodore Y. Ts'o <tytso@lurch.mit.edu>
1655
1656 * fsck.c (fsck_device): Make sure fstype has been set by the user
1657 and that it does not begin with "no" and the user has
1658 specified exactly one type before using it as the type to
1659 check.
1660
1661Fri Aug 11 14:17:18 1995 Remy Card <card@bbj>
1662
1663 * badblocks.8:
1664 * chattr.1:
1665 * dumpe2fs.8:
1666 * fsck.8:
1667 * lsattr.1:
1668 * mke2fs.8:
1669 * mklost+found.8:
1670 * tune2fs.8: Updated date and version number.
1671
1672Thu Aug 10 14:18:36 1995 Remy Card <card@bbj>
1673
1674 * tune2fs.c: Fixed a bug which prevented the use of user and group
1675 names with the -g and -u options. Thanks to Jean Christophe
1676 ANDRE <progfou@mycrob.cafard.freenix.fr>.
1677
1678 * mke2fs.8:
1679 * tune2fs.8: Fixed a spelling error in Ted's name :-)
1680
1681Wed Aug 9 20:41:54 1995 Theodore Y. Ts'o <tytso@dcl>
1682
1683 * mke2fs.c (count_blocks): Divide the size by
1684 EXT2_BLOCK_SIZE(&param), instead of assuming that the
1685 blocksize is always 1024 bytes.
1686
1687Sat Aug 5 12:00:51 1995 Theodore Y. Ts'o <tytso@lurch.mit.edu>
1688
1689 * mke2fs.c (PRS): Use malloc() instead of alloca() --- alloca() is
1690 not portable!! In any case putenv() in some systems must
1691 take a static character array or malloc()'ed memory;
1692 passing memory allocated using alloca() to putenv() is not
1693 advisable.
1694
1695 * chattr.c (chattr_dir_proc):
1696 * lsattr.c (lsattr_dir_proc): Use malloc() instead of alloca() ---
1697 alloca is not portable!
1698
1699 * fsck.c (fsck_device): If the filesystem type is specified by the
1700 user using the -t option, let it override the type in
1701 /etc/fstab.
1702
1703 * fsck.c (strdup): Don't build strdup() if the system defines it.
1704
1705Mon Jun 12 19:15:10 1995 Theodore Y. Ts'o (tytso@dcl)
1706
1707 * chattr.c, lsattr.c: Include <sys/types.h> for <dirent.h>'s
1708 benefit.
1709
1710 * The $(UPROGS) go in bin, not sbin.
1711
1712 * badblocks.c, chattr.c, dumpe2fs.c, fsck.c, lsattr.c, mke2fs.c,
1713 tune2fs.c: Don't include <getopt.h> if it doesn't exist.
1714
1715Mon Jun 12 16:36:04 1995 Theodore Y. Ts'o <tytso@dcl>
1716
1717 * badblocks.c, chattr.c, dumpe2fs.c, fsck.c, lsattr.c, mke2fs.c,
1718 tune2fs.c: Only include getopt.h if HAVE_GETOPT_H is defined.
1719
1720Sat Jun 10 23:37:09 1995 Theodore Y. Ts'o <tytso@lurch.mit.edu>
1721
1722 * chattr.c: Include errno.h, since we use errno
1723
1724 * fsck.c (load_fs_info): If HAVE_MNTENT_H is not defined,
1725 explicitly initialize filesys_info to be NULL.
1726
1727 * mke2fs.c: Include the stdio.h and errno.h header files
1728
1729Thu Jun 8 13:25:23 1995 Miles Bader <miles@churchy.gnu.ai.mit.edu>
1730
1731 * mke2fs.c: Only include <linux/fs.h> if we can.
1732 (get_size): Don't try to use the BLKGETSIZE ioctl unless it's defined.
1733 (check_mount): Only check to see if the device is mounted if
1734 HAVE_MNTENT_H is defined (by configure).
1735
1736 * fsck.c (load_fs_info): Only try to get info about filesystems if
1737 HAVE_MNTENT_H is defined (by configure).
1738 (main): Allocate space for a new fsck_path instead of append to a
1739 statically sized buffer.
1740 (PRS): Use alloca to allocate the new path string, instead of
1741 having a fixed size buffer (which was the wrong size anyway).
1742
1743 * chattr.c (chattr_dir_proc): Use alloca to allocate space for a
1744 filename instead of using a fixed-size buffer.
1745 * lsattr.c (lsattr_dir_proc): Ditto.
1746 * mklost+fond.c (main): Calculate the actual needed size for the
1747 path buffer instead of using MAXPATHLEN (which not all systems have).
1748
1749 * badblocks.c: Only include linux include files if we have them.
1750 (flush_bufs): New function to flush a block device, optionally
1751 syncing it first. This replaces other copies of this code.
1752 (test_ro): Replace calls to ioctl with flush_bufs().
1753 (test_rw): Ditto.
1754
1755 * Makefile.in: Rewritten to conform to GNU coding standards and
1756 support separate compilation directories.
1757
Theodore Ts'of3db3561997-04-26 13:34:30 +00001758Sat Mar 11 10:59:58 1995 Theodore Y. Ts'o <tytso@localhost>
1759
1760 * mke2fs.c (main, zap_bootblock): Added new function
1761 zap_bootblock() which clears the first 512 bytes of the
1762 filesystem. This protects the filesystem from being
1763 misidentified as a MS-DOS FAT filesystem.
1764
1765 * badblocks.c (alarm_intr, test_ro, test_rw): Increase the space
1766 allocated for printing the block numbers, so that the
1767 display doesn't get corrupted when running badblocks on a
1768 very large partition.
1769
1770 * badblocks.c (do_test, test_ro, test_rw): Added missing cast to
1771 ext2_loff_t, so that when checking a large device,
1772 spurious seek errors aren't reported.
1773
1774 * mke2fs.c (count_blocks): Declare mid to be of type ext2_loff_t
1775 instead of type int, so that it works for filesystems
1776 greater than 2 GB. (Fortunately count_blocks is only
1777 called if the device does not support the BLKGETSIZE
1778 ioctl, which most do.)
1779
1780 * fsck.c (ignore): Add check to ignore filesystems with a pass
1781 number of zero. (This check was accidentally deleted at
1782 during 0.5b development.)
1783
1784Sat Dec 31 00:47:16 1994 <tytso@rsx-11.mit.edu>
1785
1786 * mke2fs.c (new_table_block, alloc_tables, PRS, main): Add a new
1787 option, -S, which only writes the superblock and group
1788 descriptors. Useful for recovering when all of the
1789 superblocks are corrupted somehow (as a last ditch
1790 measure).
1791
1792 Also, don't bother initializing the bitmap blocks in
1793 alloc_tables(), since they will be overwritten at the end
1794 anyway. (Should speed up mke2fs by a little.)
1795
1796Tue Dec 6 02:20:55 1994 <tytso@rsx-11.mit.edu>
1797
1798 * fsck.c (main): Fix stupid typo where a null inst would be freed.
1799
1800 * fsck.c (wait_one): Check WIFEXITED on status before trying to
1801 extract the exit status. In other cases, return
1802 FSCK_ERROR if the back end processor exited with a signal.
1803
1804Tue Nov 15 10:20:00 1994 Remy Card <card@bbj>
1805
1806 * tune2fs.c (main): Fixed a bug which prevented the use of the
1807 new options.
1808 Added the `w' (week) suffix recognition in the check interval.
1809
1810Sun Nov 13 15:58:48 1994 (tytso@rsx-11)
1811
1812 * fsck.c (load_fs_info): If the user has an obviously old
1813 /etc/fstab file, issue a warning message and assume that
1814 all partitions should be checked.
1815
1816Sat Nov 12 00:33:18 1994 (tytso@rsx-11)
1817
1818 * dumpe2fs.c (list_desc): Update to new inode and block bitmap
1819 structures.
1820
1821 * mke2fs.c (create_root_dir): Create the root directory owned by
1822 the effective uid.
1823
1824Mon Nov 7 22:04:37 1994 Remy Card <card@bbj>
1825
1826 * tune2fs.c (main.c): Added support for new options:
1827 -r reserved_blocks_count, -g reserved_gid, -u reserved_uid.
1828
1829Sun Aug 21 00:57:33 1994 Theodore Y. Ts'o (tytso@rt-11)
1830
1831 * fsck.c (ignore): If the pass number is 0, ignore the filesystem.
1832
1833Wed Aug 17 21:55:03 1994 Remy Card (card@bbj)
1834
1835 * badblocks.c (test_rw): Added verbose output like in the
1836 read-only test.
1837
1838 (do_test and test_rw): Use the llseek system call if available.
1839
1840 * chattr.c: Added support for new attributes.
1841
1842 * lsattr.c: Added support for long format.
1843
1844 * mke2fs.c (usage): Fixed bogus usage message.
1845
1846 (valid_offset): Use the llseek system call if available.
1847
1848Wed Aug 17 10:50:57 1994 Theodore Y. Ts'o (tytso@rt-11)
1849
1850 * mke2fs.c (handle_bad_blocks): Check to see if a bad block is
1851 where a backup superblock/group descriptor is stored. If so,
1852 print a warning message and adjust the superblock counts so that
1853 they are correct. (Otherwise, the bad block will get counted
1854 twice and the # of free blocks count will be wrong.)
1855
1856 (alloc_tables): Removed code which calcualated the free block
1857 statistics, which was moved to lib/ext2fs/initialize.c. This
1858 allows the bad block code to adjust the group descriptor
1859 statistics if necessary.