blob: 8d85d4f7d3d4f8263f1ca4fcdc9f0ec8c7578571 [file] [log] [blame]
Theodore Ts'o4055ef72001-01-14 16:11:14 +000012001-01-14 Theodore Ts'o <tytso@valinux.com>
2
Theodore Ts'o44c09c02001-01-14 17:02:09 +00003 * mke2fs.c: Add new filesystem types, largefile and largefile4,
4 for those filesystems whose average inode size is 1MB and
5 4MB, respectively. Allow the inode ratio specified to be
6 has high as 4MB. Make the s_max_mount_count vary between
7 20 and 40, to avoid needing to check all of the
8 filesystems at the same time. Add some random jitter to
9 the s_max_mount_count value so that we avoid checking all
10 of the filesystems at the same time when we reboot.
11
Theodore Ts'o08dd8302001-01-14 16:25:58 +000012 * tune2fs.8.in: Add description of the -j option.
13
Theodore Ts'o4055ef72001-01-14 16:11:14 +000014 * tune2fs.c (add_journal): Minor fixes from Andreas Dilger. Flush
15 stdout after printing in-progress message.
16 (main): Exit with status code 1 if we failed to determine
17 the mount status of the device.
18
Theodore Ts'odfcdc322001-01-11 15:38:00 +0000192001-01-11 <tytso@snap.thunk.org>
20
Theodore Ts'oc8c071a2001-01-11 16:08:23 +000021 * e2image.c, mke2fs.c, mklost+found.c, tune2fs.c, util.c,
22 uuidgen.c: Fix gcc -Wall complaints, including one bug in
23 tune2fs caused by a block automatic shadowing version of
24 the variable we really wanted to use, which broke the
25 logic testing to see if the filesystem was mounted.
26
Theodore Ts'o4d404542001-01-11 16:04:59 +000027 * badblocks.c (flush_bufs): Use ext2fs_sync_device() to sync and
28 flush the device.
29
Theodore Ts'odfcdc322001-01-11 15:38:00 +000030 * mke2fs.c: Change ino_t to ext2_ino_t.
31
Theodore Ts'o83238152001-01-09 00:16:26 +0000322001-01-08 <tytso@snap.thunk.org>
33
34 * Makefile.in, tune2fs.c: Move e2label functionality into tune2fs,
35 using argv[0] as a dispatch. This allows e2label to be
36 (more) safely used on mounted filesystems.
37
Theodore Ts'o8820c792001-01-06 04:20:03 +0000382001-01-05 <tytso@snap.thunk.org>
39
40 * get_device_by_label.h (get_volume_label_by_spec): Add function
41 prototype.
42
43 * get_device_by_label.c: Use string_copy() instead of strdup() for
44 portability's sake. Fix a few other gcc -Wall
45 complaints.
46
47 * fsck.c (string_copy): Export string_copy() extern.
48
49 * badblocks.c: Fix various gcc -Wall complaints, including
50 an incorrect reference to sync in flush_bufs().
51
Theodore Ts'o63985322001-01-03 17:02:13 +0000522001-01-03 <tytso@snap.thunk.org>
53
54 * tune2fs.c (update_feature_set, add_journal): Moved to separate
55 functions. Added ability to add and remove the journal
56 while the filesystem is live. Added support for setting
57 a time-based UUID. Removed zero-initialized static variables.
58
59 * mke2fs.c, util.c, util.h (strcasecmp, proceed_question,
60 check_plausibility, parse_journal_opts, check_mount):
61 Moved functions to util.c so they can be used by tune2fs.
62
63 * mke2fs.c (main): Change ext2fs_add_journal_fs() to
64 ext2fs_add_journal_inode() to reflect function renaming.
65
Theodore Ts'ob21e38a2001-01-01 15:26:58 +0000662001-01-01 <tytso@snap.thunk.org>
67
Theodore Ts'oef9abe52001-01-01 15:31:53 +000068 * mke2fs.c, e2image.c: Removed references to struct ext2fs_sb to
69 struct ext2_super_block.
70
Theodore Ts'ob21e38a2001-01-01 15:26:58 +000071 * tune2fs.c (main): Add support to allow HAS_JOURNAL flag to be
72 cleared, but only if the filesystem is unmounted or
73 mounted read-only. Changed struct ext2fs_sb to struct
Theodore Ts'oef9abe52001-01-01 15:31:53 +000074 ext2_super_block, and cleaned up old code which was needed
75 for old versions of ext2_fs.h (not needed since we're
76 using our own version now).
Theodore Ts'ob21e38a2001-01-01 15:26:58 +000077
Theodore Ts'o9a718842000-12-31 13:48:12 +0000782000-12-31 <tytso@snap.thunk.org>
79
Theodore Ts'od4cf2fc2000-12-31 14:09:38 +000080 * fsck.c (check_all): Call interpet_device to resolve LABEL= and
81 UUID= right away so that the device_already_active() logic
82 can do the right thing. Also cleaned up the the root
83 filesystem logic checking code; fixed up a logic bug with
84 the parallel_root option.
85
Theodore Ts'of10748d2000-12-31 13:55:14 +000086 * lsattr.1.in: Add pointer to chattr man page for definition of
87 the file attributes.
88
89 * lsattr.c (list_attributes): Minor cleanup to smooth out logic
90 flow. Also removed static initialized variables to zero.
91
Theodore Ts'o9a718842000-12-31 13:48:12 +000092 * chattr.c (decode_arg, get_flag): Use a table-driven method for
93 decoding the ext2 file flags character options. Add
94 support for the journaled data flag.
95
96 * chattr.1.in: Document the -j/+j/=j flag.
97
Theodore Ts'o16ad3332000-12-31 03:21:56 +0000982000-12-30 <tytso@snap.thunk.org>
99
100 * mke2fs.8.in: Minor clarity edit.
101
102 * mke2fs.c (usage): Document the -j option.
103 (main): Print the number blocks used in the journal.
104
Theodore Ts'ob9fd8c12000-12-29 03:10:45 +00001052000-12-28 <tytso@snap.thunk.org>
106
107 * base_device.c (base_device): Add support for DAC960 device
108 names.
109
110 * fsck.c (device_already_active): Handle the case where
111 base_device doesn't know how to interpret the device name,
112 instead of core dumping.
113
Theodore Ts'o74a74d22000-12-09 14:33:29 +00001142000-12-09 <tytso@snap.thunk.org>
115
Theodore Ts'od48755e2000-12-09 14:36:04 +0000116 * mke2fs.c (main, parse_journal_opts): Add support for creating V1
117 superblocks. We now pass in a journal_flags field to the
118 journal creation routines for this purpose.
119
120 * mke2fs.c: Remove zero initializers to save a few bytes from the
121 executable image. (Are we excited yet?)
122
Theodore Ts'o74a74d22000-12-09 14:33:29 +0000123 * findsuper.c: And non-subtle copyright licensing restriction to
124 get Yann to remove this program from the Debian package. :-)
125
Theodore Ts'o793e27d2000-12-03 06:33:56 +00001262000-12-03 <tytso@snap.thunk.org>
127
128 * fsck.c (device_already_active): Change to use new version of
129 base_device() which now returns dynamically allocated
130 memory.
131
132 * base_device.c (base_device): New version moved from fsck.c which
133 now understands ugly devfs names. (Debian bug #65181)
134
135 * base_device.tst: Test case for base_device.c
136
Theodore Ts'oe1c6b2f2000-12-02 06:19:33 +00001372000-12-02 <tytso@snap.thunk.org>
138
Theodore Ts'o2d091792000-12-02 07:03:32 +0000139 * fsck.8.in: Add clarification that filesystems with a fs_passno
140 of 0 are skipped with the -A option. (Debian wishlist/bug
141 #63442)
142
Theodore Ts'oe9f9dd82000-12-02 06:35:07 +0000143 * fsck.c (wait_one): When we let a new fsck take control of the
144 console to display the progress bar, set FLAG_PROGRESS to
145 so that fsck knows not to start new processes during an
146 fsck pass with the progress bar. (Should fix debian bug
147 #65267)
148
Theodore Ts'oe1c6b2f2000-12-02 06:19:33 +0000149 * tune2fs.8.in: Add clarifying statement about converting user and
150 group names to uid's before storing them in the
151 superblock. (Debian bug #67446)
152
Theodore Ts'o8ddaa662000-11-17 04:55:24 +00001532000-11-16 Theodore Ts'o <tytso@valinux.com>
154
155 * mke2fs.c(main): Expand the -j option so that it parses
156 option=argument style options, and add support for
157 creating filesystems with external journals.
158
159 * mke2fs.8.in: Document new syntax for the -j option.
160
Theodore Ts'o72ed1262000-11-12 19:32:20 +00001612000-11-05 <tytso@snap.thunk.org>
162
163 * e2image.c, Makefile.in: New program which saves ext2 metadata to
164 a file for people who need a last-ditch saving throw.
165
Theodore Ts'o85ef4ae2000-10-24 19:33:45 +00001662000-10-24 <tytso@snap.thunk.org>
167
Theodore Ts'of6f65832000-10-25 03:01:37 +0000168 * mke2fs.c (PRS): Applied Andreas Dilger's patch to make the -r -s
169 handling a bit more sane. (Even though -s is deprecated
170 at this point.)
171
Theodore Ts'o0056be12000-10-25 02:24:33 +0000172 * get_device_by_label.c: Apply fix from Erik Troan to support 16
173 character labels.
174
Theodore Ts'o43819662000-10-25 02:06:09 +0000175 * fsck.c (device_already_active): Add a special case check for MD
176 devices, so we don't try to check them in parallel with
177 other devices.
178
Theodore Ts'o85ef4ae2000-10-24 19:33:45 +0000179 * mke2fs.c (PRS, main), mke2fs.8.in: Add support for the -j
180 option, which builds an ext2/3 filesystem with an ext3
181 journal.
182
Theodore Ts'oe294cf22000-10-24 18:41:44 +00001832000-10-24 <tytso@valinux.com>
184
185 * mke2fs.c (zap_sector): Fix really stupid typo which gcc 2.95
186 didn't catch.
187
Theodore Ts'o3f1e9a52000-09-12 21:21:52 +00001882000-09-12 <tytso@valinux.com>
189
190 * fsck.c: Add base device definitions for hd[e-h], for those
191 systems with four IDE interfaces.
192
Theodore Ts'od7e39b02000-09-11 17:01:35 +00001932000-09-11 <tytso@valinux.com>
194
195 * mke2fs.c (zap_sector): Fix error message printed when zap_sector
196 fails.
197
198 * dumpe2fs.c (list_desc): Fixed format string bug when printing
199 the inode table location in non-hex format.
200
Theodore Ts'o556ccbd2000-08-20 19:11:05 +00002012000-08-20 <tytso@valinux.com>
202
203 * get_device_by_label.c: Add call to ext2fs_find_block_device if
204 we can't find the device using the name given by
205 /proc/partitions. (This can happen if devfs is compiled
206 into the kernel, but not mounted.)
207
Theodore Ts'o80c22c92000-08-14 15:32:11 +00002082000-06-27 Andreas Dilger <adilger@turbolabs.com>
209
210 * dumpe2fs.c (usage): add fhx options to usage message, add -x option
211 to print out the per-group block numbers in hex, add line for
212 location of primary/backup superblock and group descriptors
213
214 * mke2fs.c: rename max to group_blk_max avoid potential macro conflict
215
Theodore Ts'oe41784e2000-08-14 14:44:15 +00002162000-08-14 <tytso@valinux.com>
217
218 * mke2fs.c (zap_sector): Change zap_bootsect to more general
219 zap_sect.
220 (main): Clear the superblock when starting mke2fs, to
221 avoid leaving the filesystem in an inconsistent state.
222
Theodore Ts'o28412de2000-07-27 02:45:55 +00002232000-07-26 <tytso@valinux.com>
224
225 * get_device_by_label.c: Improve /proc/partitions parsing in
226 fsck, and speed up fsck -a.
227
Theodore Ts'of9e67062000-07-13 23:25:54 +00002282000-07-13 <tytso@valinux.com>
229
230 * Release of E2fsprogs 1.19
231
Theodore Ts'oa551b782000-07-13 22:05:31 +00002322000-07-13 <tytso@snap.thunk.org>
233
234 * badblocks.8.in: Added text explaining that the -n and -w options
235 are mutually exclusive.
236
237 * badblocks.c (usage): Fix usage message to make it clear that the
238 block count must be specified if the starting block is to
239 be specified. (The starting block should be a option, in
240 the long run.)
241
242 * badblocks.c (test_nd): Save and restore the currently_testing
243 variable before going into the write verification loop.
244 This avoids a loop termination problem if the last block
245 on the disk is bad. Also, turn off the SIGALRM signal
246 while restoring blocks after the user types ^C. The
247 num_saved variable is now static so that it won't get
248 clobbered by a longjmp. buf_used and bb_count are no
249 longer static, since they aren't used by the cleanup
250 routines anymore.
251
252 * badblocks.c (main): Removed an unsued varaible (buf_size).
253 Fixed bad getopt argument that didn't allow the 'b' option
254 to take an argument. Added error checking when parsing
255 the starting block number. Fixed lint warning in fscanf
256 format string.
257
Theodore Ts'o35964b52000-07-06 13:19:43 +00002582000-07-06 Theodore Ts'o <tytso@valinux.com>
259
Theodore Ts'o19c68912000-07-07 03:25:13 +0000260 * fsck.c (execute, wait_one): Treat fsck.ext3 the same as
261 fsck.ext2 (because they are the same) for the purposes of
262 the progress bar display logic.
263
Theodore Ts'o45d9e2f2000-07-07 03:12:54 +0000264 * tune2fs.8.in: Update manual page to document what happens if
265 max_mount_count is negative.
266
267 * tune2fs.c (main): Allow setting the maximal count value to be
268 negative, since the kernel interprets that as forcing a
269 check.
270
Theodore Ts'o5b1519b2000-07-06 14:16:08 +0000271 * fsck.c (lookup, load_fs_info, check_all): Use lazy evaluation
272 for calling interpret_device(), since this requires root
273 privileges if the partitions need to be scanned.
274 Otherwise, it's not possible to do non-proot fsck's for
275 removeable devices such as floppies if there are any
276 LABEL= or UUID= entries in /etc/fstab.
277
Theodore Ts'o981dc562000-07-06 14:13:29 +0000278 * badblocks.c (check_mount, main): Check to see if the filesystem
279 is mounted before doing a read/write or non-destructive
280 test. This can be overriden using the new -f option.
281
Theodore Ts'o35964b52000-07-06 13:19:43 +0000282 * badblocks.8.in: Update manual page to reflect that the
283 blocks-count parameter is now optional. Also properly
Theodore Ts'o981dc562000-07-06 14:13:29 +0000284 document the start-block parameter. Added documentation
285 for the -f option.
Theodore Ts'o35964b52000-07-06 13:19:43 +0000286
287 * badblocks.c (main): Allow the blocks-count parameter to be
288 optional. If it's not specified, use the size of the
289 device as a default.
290
Theodore Ts'od49a22b2000-07-06 00:31:27 +00002912000-07-05 Theodore Ts'o <tytso@valinux.com>
292
293 * badblocks.c (test_nd): Significantly simplify the logic so that
294 it's more obviously what's going on. Fixed a few
295 potential cases which weren't handled correctly in the
296 old, overly complicated logic.
297 (flush_bufs): Now doesn't take a second argument, and
298 always forces a sync; this is required before it's really
299 safe to call BLKFLSBUF, at least for some kernels.
300
Theodore Ts'o26ab5312000-05-29 15:05:42 +00003012000-05-29 Theodore Ts'o <tytso@valinux.com>
302
303 * mke2fs.c (PRS): Add a much more specific error message if the
304 filesystem size is defaulted and get_device_size returns a
305 size of zero. Otherwise, users get a confusing "invalid
306 argument while passed to ext2 library" error message.
307
Theodore Ts'o4ea0a112000-05-08 13:33:17 +00003082000-05-08 Theodore Ts'o <tytso@valinux.com>
309
Theodore Ts'oc96e5112000-05-08 14:47:15 +0000310 * fsck.c (interpret_device): Add better error messages if a UUID=
311 or LABEL= specification is given.
312
Theodore Ts'o4ea0a112000-05-08 13:33:17 +0000313 * mke2fs.c (main): We forcibly turn off the filetype feature if
314 the OS is the hurd, since the hurd doesn't support it.
315 (And since the hurd allows the transmogrification of files
316 to special files and vice versa --- for no good reason
317 that I can understand --- it can't support the filetype
318 feature for the forseeable future, either.)
319
320 * mke2fs.c (proceed_question): Fix reversed sense of
321 proceed_question that was busted due to the
322 internationalization patch. Fixed bug where if
323 proceed_question was called twice, the input buffer wasn't
324 cleared of the previous question's newline.
325
Theodore Ts'oe2207ce2000-04-06 21:51:18 +0000326Thu Apr 6 17:50:25 2000 Theodore Y. Ts'o <tytso@signal.thunk.org>
327
328 * badblocks.c (flush_bufs): Use fsync() if the system doesn't
329 support fdatasync().
330
Theodore Ts'offe4cab2000-04-03 13:27:41 +00003312000-04-03 Theodore Ts'o <tytso@valinux.com>
332
Theodore Ts'o373b8332000-04-03 16:22:35 +0000333 * badblocks.c, dumpe2fs.c, e2label.c, mke2fs.c, tune2fs.c,
334 uuidgen.c: For platforms that don't define optarg.h,
335 manually define optarg and optind.
336
Theodore Ts'o4d003982000-04-03 16:01:11 +0000337 * badblocks.8.in: Updated manual page with suggestions from David
338 Beattie.
339
340 * badblocks.c (test_nd): Generalized cleanup and bug-fixes. We
341 now explicitly clear out the signal handlers to prevent a
342 longjmp to a deactivated stack frame.
343 (test_rw): Fixed a signed vs. unsigned comparison error.
344
Theodore Ts'offe4cab2000-04-03 13:27:41 +0000345 * badblocks.8.in, chattr.1.in, dumpe2fs.8.in, lsattr.1.in,
346 mklost+found.8.in, tune2fs.8.in: Update Remy Card's e-mail
347 address.
348 chattr.1.in: Update which attributes aren't supported.
349
Theodore Ts'oe1a0a3e2000-02-11 05:00:19 +00003502000-02-09 Theodore Ts'o <tytso@valinux.com>
351
352 * chattr.1.in:
353 * lsattr.1.in: Change "version" to "version/generation number".
354
355 * chattr.1.in: Fix stupid file vs filesystem typo.
356
357 * tune2fs.c Fix spelling error (spare vs sparse).
358
359 * mke2fs.c (PRS): Add safety check to make sure the number of
360 blocks doesn't exceed 32 bits on a 64 bit machine.
361
362 * chattr.c: Random cleanup; file-only variables are now static.
363 Options for setting/clearings flags put into order, and
364 #ifdef's removed (since we now use a built-in header
365 file). Add error message if user tries to set and reset
366 the same flag.
367
368 * lsattr.c: Random cleanup; file-only variables are now static.
369 The -l "long" listing has been changed to look nicer.
370 Options names have been renamed to be more descriptive.
371
Theodore Ts'odd018f52000-02-06 23:57:07 +00003722000-02-06 Theodore Ts'o <tytso@valinux.com>
373
Theodore Ts'od9c56d32000-02-08 00:47:55 +0000374 * badblocks.c, chattr.c, dumpe2fs.c, e2label.c, findsuper.c,
375 fsck.c, get_device_by_label.c, lsattr.c, mke2fs.c,
376 mklost+found.c, nls-enable.h, partinfo.c, tune2fs.c,
377 uuidgen.c: Add Internationalization support as
378 suggested by Marco d'Itri <md@linux.it>.
379
Theodore Ts'odd018f52000-02-06 23:57:07 +0000380 * badblocks.c: Fix non-destructive read/write patches from David
381 Beattie. Non-standard variable-length automatic arrays
382 removed. Non-destrutive write test fixed so that logic is
383 clearer and more provably correct. (I believe the old
384 code had a bug where the disk data wasn't restored if it
385 was interrupted at the wrong time.)
386
387 * badblocks.8.in: Document new options in man page.
388
Theodore Ts'ob4ee1fb2000-02-02 19:08:51 +00003892000-02-02 Theodore Ts'o <tytso@valinux.com>
390
391 * fsck.c (interpret_device): If there was an attempt to interpret
392 a device specification of the type "UUID=" or "LABEL=",
393 and it fails, check to see if /proc/partitions is
394 readable. If not, print a warning message about /proc
395 perhaps not being mounted, and exit.
396
397 * mke2fs.c (check_plausibility): Remove unneeded #include of
398 linux/fs.h. Add #define of MAJOR if necessary.
399
400 * partinfo.c: Remove unneeded #include of linux/fs.h
401
Theodore Ts'o582134c2000-01-19 13:26:23 +00004022000-01-19 Theodore Ts'o <tytso@valinux.com>
403
404 * tune2fs.c (usage): Update the usage message to correctly
405 document the -s option.
406
Theodore Ts'o879ac922000-01-18 20:59:11 +00004072000-01-18 Theodore Ts'o <tytso@valinux.com>
408
409 * badblocks.c: Folded in patches David Beattie <dbeattie@usa.net>.
410 Need to do cleanup before release: use of GCC extensions
411 (dynamic arrays); unclean coding tricks (use of || instead
412 of if statements, etc.). Comments from David Beattie:
413
414 "I added non-destructive write-testing, and quite a few
415 other features. The non-destructive write testing,
416 triggered by new "-n" command-line option, will write test
417 patterns to the disk, but only after reading data off the
418 disk into memory. Then, comparing the test patterns gives
419 a result as to whether or not those sectors are reliable.
420 Finally, the original data is written back.
421
422 To streamline this operation, I added another option, "-c
423 blocks_at_once", which will give the number of disk blocks
424 to process at one time (mnemonic--"count"). I made this
425 default to 16 (as in the read-only testing mode), and also
426 affect the read-only testing mode. Of course, read-only
427 mode needs (count * block_size) amount of memory, and
428 non-destructive read-write needs 3 times that much, so it
429 makes sense to do the calculations and not overrun
430 available RAM...I would have liked to implement and
431 auto-memory-usage heuristic, but I have no idea if it's
432 even possible to determine the amount of free memory on a
433 Unix system except by reading /proc entries, and that
434 didn't seem portable. I did NOT make this blocks_at_once
435 affect the behavior of the test_rw routine, as it is
436 processing the whole disk at once, anyway.
437
438 I *think* that I got higher detection rates on my hard
439 drive using random test data than patterned test data, so
440 my non-destructive mode initializes its test data buffer
441 randomly.
442
443 I fixed a typo in flush_bufs that caused the ioctl
444 BLKFLSBUF to never get compiled into the program.
445
446 Also, I added an "undocumented" (I didn't put it into the
447 usage message; you can if you think it's useful) "-h"
448 option to specify the host device to flush--useful if you
449 want to test out my "non-destructive" code on something
450 other than a hard drive, such as a file on a hard drive,
451 and want the host hard drive to flush.
452
453 I provided support for an "input" file (via option "-i",
454 similar to the "-o" option)...containing a list of
455 already-known bad blocks; it will skip testing those
456 blocks, thus adding speed to the bad block scan (on my
457 computer, hitting a physically bad block causes a
458 half-second-or-more freeze as the kernel waits for the
459 hard drive to give up and reset itself; pretty annoying
460 when you already know the block is bad from a previous
461 scan).
462
463 Finally, the real killer, the persistent re-scan (option:
464 "-p num_passes") that I created will, if desired,
465 persistently re-scan the drive until it has completed a
466 user-decidable number of passes in a row during which no
467 new bad blocks are found. On my drive, I would see
468 behavior that a certain percentage of bad blocks would be
469 found with each pass (it was not reliable in the defective
470 areas!), so I wanted it to check it over and over again
471 until it didn't find any more, several times. Perhaps
472 this will be useful to others. Defaults of course to
473 zero, meaning it will stop after the first pass. I used
474 "-p 2" on my drive, and it ran for 2 1/2 days...then used
475 "-p 3" a couple days later and it ran for a few more
476 hours, and since then the rest of my drive has been
477 completely reliable.
478
479 Implementation of these last two features, "-i" and "-p",
480 I did using a bb_list from libext2fs. I debated whether
481 bad blocks input through "-i" should be output into the
482 "-o" file (or stdout, of course), and decided against it,
483 but left the code to do so in place, commented out, just
484 for your information.
485
486 In order to maintain data integrity upon interruption of a
487 non-destructive-write test, I created a signal handler
488 which I install which will write back whatever original
489 disk data is in the buffers upon any of the fatal signals
490 (except SIGKILL, of course).
491
492 Of course, ideally, the new options would be reflected in
493 the badblocks manual page, but I am not experienced at
494 manual page modification; if you decide my patch to
495 badblocks should be incorporated into the distribution, I
496 could learn how to update the manpage and other
497 documentation, or you could do it for me after exercising
498 your opinions, if you have any, on exactly what the
499 command-line parameters should be called and which ones
500 should be in the distribution."
501
Theodore Ts'o3cb77842000-01-18 16:30:27 +00005022000-01-07 Theodore Ts'o <tytso@valinux.com>
503
504 * Really fix the bug where "fsck -As" will actually allow
505 interactive fsck's. (For those people who like to do
506 interactive fsck's in the /etc/rc scripts!?!)
507
Theodore Ts'obfd21931999-11-23 13:48:58 +00005081999-11-23 <tytso@valinux.com>
509
510 * tune2fs.8.in: Fix man page so that the sparse_super filesystem
511 option is properly named.
512
Theodore Ts'o6733c2f1999-11-23 02:23:30 +00005131999-11-22 <tytso@valinux.com>
514
515 * mke2fs.c: Change log2() and log10() to int_log2() and
516 int_log10() to avoid namespace collisions. Change #ifdef
517 sparc to #ifdef __sparc__.
518
Theodore Ts'o5c36a2f1999-11-19 18:42:30 +00005191999-11-19 <tytso@valinux.com>
520
521 * Makefile.in (distclean): Remove TAGS and Makefile.in.old from
522 the source directory.
523
Theodore Ts'o6fdc7a31999-11-10 13:34:40 +00005241999-11-10 <tytso@valinux.com>
525
Theodore Ts'ocd086361999-11-10 16:00:39 +0000526 * Release of E2fsprogs 1.18
527
5281999-11-10 <tytso@valinux.com>
529
Theodore Ts'o6fdc7a31999-11-10 13:34:40 +0000530 * mke2fs.8.in: Update manual page so that the sparse_option
531 filesystem option is properly named.
532
Theodore Ts'o6a35ffa1999-11-04 22:34:43 +00005331999-11-04 <tytso@valinux.com>
534
535 * fsck.c (main): Move setting of the interactive flag to before
536 the call to check_all(), so that people who try to use
537 fsck -As can do so interactively.
538
Theodore Ts'o36caf251999-10-26 14:29:22 +00005391999-10-26 <tytso@valinux.com>
540
Theodore Ts'o28e11941999-10-26 18:17:20 +0000541 * Release of E2fsprogs 1.17
542
5431999-10-26 <tytso@valinux.com>
544
Theodore Ts'o3bc03661999-10-26 17:17:00 +0000545 * fsck.c (PRS, device_already_active): Add debugging hook; if the
546 environment variable FSCK_FORCE_ALL_PARALLEL is set, then
547 force all fsck runs to happen in parallel.
548
Theodore Ts'o36b01301999-10-26 14:38:36 +0000549 * get_device_by_label.c (has_right_label): Fixed bug where code
550 used a strncmp to compare a binary UUID value which may
551 contain a NULL. Fixed GCC warnings; added const to char *
552 typed variables. Eliminated non-portable use of u_char.
553
Theodore Ts'o4a600561999-10-26 14:35:51 +0000554 * mke2fs.c (PRS): Fix gcc warnings; add const to some char *
Theodore Ts'o9094f281999-10-26 16:42:50 +0000555 variables, including in struct mke2fs_defaults.
556 (set_fs_defaults): Changed parameter name to avoid
557 gcc warnings.
Theodore Ts'o4a600561999-10-26 14:35:51 +0000558
Theodore Ts'ob5135711999-10-26 14:33:24 +0000559 * fsck.c (wait_one): Fix gcc warnings; add #include for ctype.h,
560 add const to char * variables, and use NOARGS to declare
561 functions that take no arguments. Also fix a memory leak
562 in execute() where we weren't freeing argv[] after forking
563 the child process.
564
Theodore Ts'o36caf251999-10-26 14:29:22 +0000565 * chattr.c: Add hack to compile in a definition for S_ISLNK so we
566 can successfully compile even with warnings turned on.
567
Theodore Ts'oad6783d1999-10-26 01:58:54 +00005681999-10-25 <tytso@valinux.com>
569
570 * mke2fs.c (show_stats): Capitalized Hurd to make the GNU types
571 happy.
Theodore Ts'oe6597041999-10-26 02:30:16 +0000572 (PRS): Use __u64 instead of long long for portability
573 reasons. Also moved #include of sys/stat.h inside #ifdef
574 HAVE_LINUX_MAJOR_H for portability reasons.
Theodore Ts'oad6783d1999-10-26 01:58:54 +0000575
576 * fsck.c (execute): Fix really stupid bug in the linked list
577 management which caused fsck in parallel mode to go into
578 an infinite loop.
579
Theodore Ts'o896938d1999-10-23 01:04:50 +00005801999-10-22 <tytso@valinux.com>
581
Theodore Ts'o614fdfd1999-10-23 03:19:51 +0000582 * Release of E2fsprogs 1.16
583
5841999-10-22 <tytso@valinux.com>
585
Theodore Ts'o896938d1999-10-23 01:04:50 +0000586 * tune2fs.c (main): Add a new option -O which allows the user to
587 set and clear certain "safe" filsystem feature flags.
588 Currently, the only ones which are supported for
589 modification are sparse_superblock and filetype.
590
591 * mke2fs.c (PRS): Add new option -O which allows the user to
592 request filesystems with specific filesystem options. By
593 default on 2.2 and later systems, create filesystems that
594 have both file type information and sparse superblocks.
595
Theodore Ts'ocaf8ce41999-10-21 19:56:34 +00005961999-10-21 <tytso@valinux.com>
597
598 * badblocks.8.in, chattr.1.in, dumpe2fs.8.in, e2label.8.in,
599 fsck.8.in, lsattr.1.in, mke2fs.8.in, mklost+found.8.in,
600 tune2fs.8.in, uuidgen.1.in: Update man page to use a more standard
601 format (bold option flags and italicized variables), as
602 suggested by Andreas Dilger (adilger@enel.ucalgary.ca)
603
Theodore Ts'o7f4bb6c1999-10-20 18:11:01 +00006041999-10-14 <tytso@valinux.com>
605
Theodore Ts'o671cbfa1999-10-20 18:14:23 +0000606 * tune2fs.c (main): Fix typo (double spaces) in messages regarding
607 changing the sparse superblock option
608
Theodore Ts'o7f4bb6c1999-10-20 18:11:01 +0000609 * fsck.c (wait_one): If the fsck process just started, wait a
610 second before sending a SIGUSR1, to give it a chance
611 to set the signal handler; otherwise, fsck will die on an
612 unhandled SIGUSR1.
613
6141999-09-15 <tytso@valinux.com>
Theodore Ts'o76714331999-10-20 18:06:29 +0000615
616 * mke2fs.c (show_stats): Fix display bug when printing out the
617 number of superblocks. Suggested by Yann Dirson.
618
Theodore Ts'o27401561999-09-14 20:11:19 +00006191999-09-08 <tytso@valinux.com>
620
621 * partinfo.c: Fix minor compilation bugs pointed out by Yann
622 Dirson.
623
624 * mke2fs.c: Don't turn on sparse superblocks by default on pre-2.2
625 kernels.
626
627 * mke2fs.8.in: Add the possible valid block sizes for mke2fs.
628 Document the -n flag, and the new defaults for the -s
629 flag.
630
631 * dumpe2fs.c, dumpe2fs.8.in: Add new options -f (force) and -h
632 (header-only).
633
6341999-08-13 <tytso@valinux.com>
635
636 * mke2fs.c (PRS): Fix logic for turning on/off the sparse
637 superblock option.
638
6391999-07-18 Theodore Ts'o <tytso@valinux.com>
Theodore Ts'o657cb971999-07-30 23:19:10 +0000640
641 * Release of E2fsprogs 1.15
642
Theodore Ts'o50787ea1999-07-19 15:30:21 +00006431999-07-18 <tytso@rsts-11.mit.edu>
644
645 * mke2fs.c (PRS, set_fs_defaults): Add new option -T which allows
646 the user to specify the how the filesystem is to be used.
647 Mke2fs now chooses the filesystem parameters automatically
648 based on the size of the filesystem and the intended use
649 of the filesystem. Add new option -n which simply goes
650 through the calculations to determine the parameters of
651 the filesystem the system would make.
652
6531999-07-18 <tytso@valinux.com>
654
655 * fsck.c, fsck.h: Add support for new option -C. This option will
656 automatically manage e2fsck processes so that they will
657 print completion/progress bars. If multiple filesystems
658 are being checked, arrange to make sure that only one
659 e2fsck process is displaying a progress bar at a time.
660
6611999-07-08 <tytso@valinux.com>
Theodore Ts'o9f10a7b1999-07-16 10:41:36 +0000662
663 * badblocks.c (do_test): Don't complain if the write error occurs
664 on a non-block boundary. This is perfectly common when
665 using blocksizes larger than 1k.
666
Theodore Ts'oc54b3c31999-07-03 07:20:06 +00006671999-07-03 <tytso@valinux.com>
Theodore Ts'o5dbb0721999-07-03 06:16:06 +0000668
669 * uuidgen.c: Add option parsing so that user can ask for either a
670 time-based UUID or a random-based UUID.
671
Theodore Ts'oc54b3c31999-07-03 07:20:06 +00006721999-07-02 <tytso@valinux.com>
Theodore Ts'o2d8defd1999-07-03 01:59:42 +0000673
674 * fsck.c: Added support for LABEL= and UUID= specifications for
675 the filesystem's device, to match what recent mount
676 programs can support. Also, close stdin when doing fsck
677 -A or when checking more than one filesystem at a time, so
678 that e2fsck doesn't try to ask interactive questions if
679 the filesystem appears to be mounted.
680
681 * get_device_by_label.c: New file added to support LABEL=foo and
682 UUID=bar type specifications.
683
Theodore Ts'o00eedba1999-07-03 00:45:58 +00006841999-07-01 <tytso@valinux.com>
685
686 * badblocks.c: Make the "done" string include enough spaces to
687 clear out a large block number.
688
Theodore Ts'oca3c3281999-06-29 14:37:35 +00006891999-06-29 <tytso@valinux.com>
690
691 * mke2fs.c (check_mount): Allow a filesystem to be made even if it
692 appears mounted if the force option is given.
693
Theodore Ts'oe72a9ba1999-06-25 15:40:18 +00006941999-06-24 <tytso@valinux.com>
695
696 * mke2fs.8.in: Fix typo in man page which caused the badblocks
697 command to not show up in the "SEE ALSO" section.
698
Theodore Ts'oe2423cc1999-06-18 00:51:31 +00006991999-05-02 <tytso@rsts-11.mit.edu>
700
701 * findsuper.c: Added documentation from aeb@cwi.nl; some minor
702 code cleanups.
703
Theodore Ts'o02e7dd91999-06-18 00:48:41 +00007041999-05-20 <tytso@rsts-11.mit.edu>
705
706 * dumpe2fs.c, dumpe2fs.8.in: Added new command-line options which
707 allow a filesystem expert to specify the superblock and
708 blocksize when opening a filesystem. This is mainly
709 useful when examining the remains of a toasted filesystem.
710
Theodore Ts'o5d45d801999-03-16 19:35:19 +00007111999-03-11 Andreas Dilger <adilger@enel.ucalgary.ca>
712
713 * uuidgen.c, uuidgen.1.in: Created command-line utility to
714 generate UUIDs.
715
7161999-03-14 Theodore Ts'o <tytso@rsts-11.mit.edu>
717
718 * fsck.c (fsck_device, execute): Don't dereference a null pointer
719 when checking a filesystem not in /etc/fstab.
720
Theodore Ts'o7d5633c1999-02-09 08:14:28 +00007211999-02-09 Theodore Ts'o <tytso@rsts-11.mit.edu>
722
723 * fsck.c (fsck_device): Print an error message if the user passes
724 in a device or directory name which isn't found in /etc/fstab.
725 Allow the location of /etc/fstab to be overridden by
726 the FSTAB_FILE environment variable.
727
7281999-01-30 Theodore Ts'o <tytso@rsts-11.mit.edu>
729
730 * mke2fs.c (write_inode_tables): Add kludge code so that when the
731 MKE2FS_SYNC environment variable is set, mke2fs will sync
732 every MKE2FS_SYNC block groups, while it is writing out
733 the inode tables. This is to work around a VM bug in the
734 2.0 kernel. I've heard a report that a RAID user was able
735 to trigger it even using a 2.2 kernel.
736
Theodore Ts'oee922991999-01-16 05:39:12 +00007371999-01-16 Theodore Ts'o <tytso@rsts-11.mit.edu>
738
739 * fsck.c (execute, wait_one): Modified routines so that they
740 accurately create an fsck_instance even when the noexecute
741 flag is set. This allows for accurate debugging of the
742 fsck pass structure.
743 (check_all): When the verbose flag is given twice, print
744 debugging information about when fsck is waiting for jobs
745 to finish.
746
Theodore Ts'o7953f611999-01-09 05:03:52 +00007471999-01-09 Theodore Ts'o <tytso@rsts-11.mit.edu>
748
Theodore Ts'o9e51eca1999-01-09 16:32:31 +0000749 * Release of E2fsprogs 1.14
750
7511999-01-09 Theodore Ts'o <tytso@rsts-11.mit.edu>
752
Theodore Ts'o7953f611999-01-09 05:03:52 +0000753 * fsck.8.in: Clarified and expanded the documentation for the -A
754 switch.
755
Theodore Ts'o665f7101999-01-08 13:33:39 +00007561999-01-07 Theodore Ts'o <tytso@rsts-11.mit.edu>
757
758 * fsck.c (load_fs_info): If the pass number field is missing, it
759 needs to be treated as zero.
760
Theodore Ts'oa88fa0c1999-01-05 07:02:39 +00007611999-01-05 Theodore Ts'o <tytso@rsts-11.mit.edu>
762
Theodore Ts'o5515e6b1999-01-05 07:25:06 +0000763 * mke2fs.c (PRS): Allow the user to specify exactly how many
764 inodes he/she wishes.
765
Theodore Ts'oa88fa0c1999-01-05 07:02:39 +0000766 * chattr.c, lsattr.c: Only print the version information for the
767 program if the -V option is given.
768
769 * chattr.c: Ignore symbolic links when doing a recursive descent
770 through a directory.
771
Theodore Ts'o93ab9d71999-01-02 04:04:42 +00007721999-01-01 Theodore Ts'o <tytso@rsts-11.mit.edu>
773
774 * fsck.c (load_fs_info, parse_fstab_line): Ignore fstab lines
775 are commented out. Also allow blank lines in the
776 /etc/fstab file.
777 (execute): In verbose mode, print the mountpount of the
778 filesystem which we are checking (user request).
779
7801998-12-30 Theodore Ts'o <tytso@rsts-11.mit.edu>
781
782 * mke2fs.c: Add definition of SCSI_BLK_MAJOR if not defined, for
783 compatibility with Linux 1.2.13 header files.
784
Theodore Ts'o556ad131998-12-19 08:10:58 +00007851998-12-15 Theodore Ts'o <tytso@rsts-11.mit.edu>
786
787 * Release of E2fsprogs 1.13
788
Theodore Ts'ocb620171998-12-08 02:21:29 +00007891998-12-07 Theodore Ts'o <tytso@rsts-11.mit.edu>
790
791 * mke2fs.8.in: Fixed stupid typo ("Raid options are _comma_
792 seperated", instead of common separated)
793
Theodore Ts'o5a679c81998-12-03 16:40:38 +00007941998-12-03 Theodore Ts'o <tytso@rsts-11.mit.edu>
795
796 * Makefile.in: Updated dependencies.
797
7981998-11-27 Theodore Ts'o <tytso@rsts-11.mit.edu>
799
800 * fsck.c (load_fs_info): Parse /etc/fstab ourselves, instead of
801 relying on getmntent(). This has the advantage of
802 allowing us to properly handle missing pass numbers correctly.
803
Theodore Ts'o1dde43f1998-11-14 04:18:28 +00008041998-11-13 Theodore Ts'o <tytso@rsts-11.mit.edu>
805
806 * tune2fs.8.in: Fix minor display bug in the nroff.
807
808 * mke2fs.c (show_stats, write_inode_tables): Use the log10
809 function to calculate the display of block numbers so that
810 things look nice on an 80 character display.
811
8121998-10-12 Theodore Ts'o <tytso@rsts-11.mit.edu>
813
814 * mke2fs.c (usage): Add the sparse-super-flag to the usage
815 message.
816
Theodore Ts'o4a5fa191998-07-09 05:42:45 +00008171998-07-09 Theodore Ts'o <tytso@rsts-11.mit.edu>
818
819 * Release of E2fsprogs 1.12
820
Theodore Ts'oeb5ab741998-07-04 17:47:52 +00008211998-07-04 Theodore Ts'o <tytso@rsts-11.mit.edu>
822
823 * findsuper.c (main): Print the block group number which is now
824 being written by e2fsprogs.
825
Theodore Ts'o818180c1998-06-27 05:11:14 +00008261998-06-25 Theodore Ts'o <tytso@rsts-11.mit.edu>
827
828 * fsck.c (ignore): Remove unused variable cp.
829
830 * chattr.c (fatal_error):
831 * tune2fs.c (usage):
832 * lsattr.c (usage):
833 * dumpe2fs.c (usage):
834 * badblocks.c (usage): Remove volatile from declaration.
835
836 * fsck.c: Change use of strdup to be string_copy, since we don't
837 trust what glibc is doing with strdup. (Whatever it is,
838 it isn't pretty.)
839
8401998-06-19 Theodore Ts'o <tytso@rsts-11.mit.edu>
841
842 * mke2fs.c (PRS): Add a -V option which prints the version number
843 and exit.
844
Theodore Ts'o4bf5fbf1998-05-14 22:43:10 +00008451998-05-14 Theodore Ts'o <tytso@rsts-11.mit.edu>
846
847 * fsck.c (ignore): Remove check for filesystems with the noauto
848 option.
849
Theodore Ts'o7e44f241998-04-01 03:16:29 +00008501998-03-30 Theodore Ts'o <tytso@rsts-11.mit.edu>
851
852 * Makefile.in: Change to use new installation directory variables
853 convention. Fix uninstall rules to take $(DESTDIR) into
854 account. Remove cat8dir and cat1dir from the installdirs
855 target, since modern man package don't necessarily put the
856 cat directory in /usr/man/cat?.
857
Theodore Ts'oa789d841998-03-30 01:20:55 +00008581998-03-29 Theodore Ts'o <tytso@rsts-11.mit.edu>
859
Theodore Ts'o3b27db91998-03-30 01:32:10 +0000860 * e2label.8.in: New man page to document the e2label function.
861
Theodore Ts'oa789d841998-03-30 01:20:55 +0000862 * e2label.c: Fix -Wall warning by making functions static.
863
8641998-03-28 Theodore Ts'o <tytso@rsts-11.mit.edu>
865
866 * chattr.1.in: Document that the append-only attribute may
867 only be set or cleared by the superuser.
868
869 * Update all manual pages to that the availability section is
870 up-to-date.
871
872 * e2label.8.in, tune2fs.8.in: Update manual page to state that
873 labels must be no longer than 16 characters, or they will
874 be truncated.
875
876 * e2label.c (change_label), tune2fs.c (main): If the label is
877 longer than 16 characters, print a warning message stating
878 that the label will be truncated.
879
880 * mke2fs.c (PRS): If the user specifies a filesystem size, and
881 it's larger than the apparent size of the device, print a
882 warning message and ask if the user wants to proceed.
883
Theodore Ts'obbfa3aa1998-03-21 07:12:46 +00008841998-03-21 Theodore Ts'o <tytso@rsts-11.mit.edu>
885
886 * mke2fs.c (check_plausibility): Fixed spelling typo in warning
887 message. Fixed up -Wall warnings in file.
888
Theodore Ts'oe9271681998-03-09 03:23:51 +0000889Sun Mar 8 22:21:48 1998 Theodore Ts'o <tytso@rsts-11.mit.edu>
890
891 * partinfo.c (main): The ioctl BLKGETSIZE requires a long, not an
892 int.
893
Theodore Ts'o92bcc591998-02-16 22:29:34 +0000894Sun Feb 1 16:53:36 1998 Theodore Ts'o <tytso@rsts-11.mit.edu>
895
896 * badblocks.8: Update documentation to note that output format
897 of badblocks is suitable for use with e2fsck -l or
898 mke2fs -l.
899
900 * mke2fs.c (handle_bad_blocks): Fix bug so that all groups with
901 bad superblock backup blocks are printed (not just the
902 first one).
903
Theodore Ts'oca8abba1998-01-19 14:55:24 +0000904Mon Dec 1 17:01:04 1997 Theodore Ts'o <tytso@rsts-11.mit.edu>
905
906 * badblocks.8.in: Add documentation for the -s option.
907
Theodore Ts'o519149f1997-10-25 03:49:49 +0000908Fri Oct 24 23:37:52 1997 Theodore Ts'o <tytso@rsts-11.mit.edu>
909
910 * fsck.c:
911 * chattr.c: Remove #include of getopt.h, since it's not needed.
912
913 * tune2fs.c (main):
914 * lsattr.c (main):
915 * badblocks.c (main):
916 * dumpe2fs.c (main):
917 * mke2fs.c (PRS): Make the variable which getopt returns into be
918 an int, so that it won't lose on platforms where char is
919 unsigned.
920
Theodore Ts'od163b091997-10-03 17:42:28 +0000921Fri Oct 3 13:38:45 1997 Theodore Ts'o <tytso@rsts-11.mit.edu>
922
923 * mke2fs.c (parse_raid_opts): Make parse_raid_opts return a void,
924 to fix a -Wall warning.
925
Theodore Ts'o00e54331997-09-16 02:13:52 +0000926Mon Sep 15 22:07:12 1997 Theodore Ts'o <tytso@rsts-11.mit.edu>
927
928 * tune2fs.c (main):
929 * mklost+found.c (main):
930 * lsattr.c (main):
931 * dumpe2fs.c (main):
932 * chattr.c (main):
933 * badblocks.c (main): Declare main to return an int, as required.
934 Make sure main always ends with an exit(0). (Some
935 programs weren't doing this, and thus were returning a
936 random exit value.)
937
Theodore Ts'oab6b8ab1997-07-14 19:28:55 +0000938Mon Jul 14 15:27:29 1997 Theodore Y. Ts'o <tytso@mit.edu>
939
940 * e2label.c: New file contributed by Andries Brouwer which
941 provides an easy-to-use interface to modify the filesystem
942 label.
943
944 * Makefile.in (SPROGS): Add Makefile support to build e2label
945
Theodore Ts'o024996c1997-06-17 05:38:35 +0000946Tue Jun 17 01:33:20 1997 Theodore Ts'o <tytso@rsts-11.mit.edu>
947
948 * Release of E2fsprogs 1.11
949
Theodore Ts'oe22d4611997-06-17 03:57:27 +0000950Mon Jun 16 23:37:54 1997 Theodore Ts'o <tytso@rsts-11.mit.edu>
951
952 * mke2fs.c (show_stats): Adjust the number of columns printed when
953 displaying the superblock backups to avoid running over
954 80 columns when making a really big disk.
955
Theodore Ts'of635d7f1997-05-09 02:50:16 +0000956Thu May 8 22:22:08 1997 Theodore Ts'o <tytso@rsts-11.mit.edu>
957
Theodore Ts'o583ccdc1997-05-09 03:06:31 +0000958 * badblocks.8.in, chattr.1.in, dumpe2fs.8.in, fsck.8.in,
959 mke2fs.8.in, tune2fs.8.in: Fix minor typos and grammer
960 oops found by Bill Hawes (whawes@star.net).
961
Theodore Ts'of635d7f1997-05-09 02:50:16 +0000962 * mke2fs.c (test_disk): Pass the blocksize to the bad blocks
963 command so that all of the filesystem gets tested in the
964 case where the blocksize 2048 or 4096.
965
Theodore Ts'oa29f4d31997-04-29 21:26:48 +0000966Thu Apr 24 12:16:42 1997 Theodre Ts'o <tytso@localhost.mit.edu>
967
968 * Release of E2fsprogs version 1.10
969
970Thu Apr 24 09:52:47 1997 Theodre Ts'o <tytso@localhost.mit.edu>
971
972 * mke2fs.c: Added new option -R, which specifies RAID options.
973 Currently the only supported RAID option is "stride" which
974 specifies the stripe width in RAID filesystem. This is
975 used to aid in the placement of the inode and block
976 bitmaps.
977
978 * mke2fs.8.in, tune2fs.8.in: Added warnings that the sparse
979 superblock option isn't yet supported by most kernels.
980
981Wed Apr 23 22:42:51 1997 Theodre Ts'o <tytso@localhost.mit.edu>
982
983 * mke2fs.c (PRS): Make the default filesystem revision be 0, not
984 1. (Since some people are still worried about 1.2.13
985 compatibility).
986
987Thu Apr 17 12:23:38 1997 Theodore Ts'o <tytso@rsts-11.mit.edu>
988
989 * Release of E2fsprogs version 1.09
990
Theodore Ts'o2ecc6fe1997-04-29 17:57:00 +0000991Fri Apr 11 18:57:24 1997 Theodore Ts'o <tytso@rsts-11.mit.edu>
992
993 * chattr.1.in: Updated man page so that the 'A' attribute is
994 specified everywhere.
995
996 * chattr.c (usage): Added usage message for the 'A' attribute.
997
998Fri Apr 11 18:56:26 1997 Theodore Ts'o <tytso@rsts-11.mit.edu>
999
1000 * Release of E2fsprogs version 1.08
1001
Theodore Ts'o521e3681997-04-29 17:48:10 +00001002Thu Apr 10 07:08:03 1997 Theodore Ts'o <tytso@rsts-11.mit.edu>
1003
1004 * dumpe2fs.c (list_desc): List the offsets of the inode and block
1005 bitmaps, and the inode table. List the block boundaries
1006 for the groups.
1007
1008Sat Apr 5 11:55:52 1997 Theodore Ts'o <tytso@rsts-11.mit.edu>
1009
1010 * tune2fs.c (main): Implement the -s flag allows the user to
1011 set and reset the sparse superblock flag.
1012
1013 * mke2fs.c (PRS): By default generate DYNAMIC revision
1014 filesystems. The -s flag controls whether or not the
1015 sparse superblock flag is set.
1016 (PRS): Change to allow the user to specify the true
1017 maximum number of blocks per group to reflect the
1018 blocksize.
1019
Theodore Ts'o19c78dc1997-04-29 16:17:09 +00001020Wed Mar 12 13:32:05 1997 Theodore Y. Ts'o <tytso@mit.edu>
1021
1022 * Release of E2fsprogs version 1.07
1023
1024Thu Mar 6 17:15:05 1997 Theodore Ts'o <tytso@rsts-11.mit.edu>
1025
1026 * mke2fs.c (create_root_dir): Set the root directory's i_uid and
1027 i_gid to be the real user and group id.
1028
1029Tue Mar 4 10:14:33 1997 Theodore Ts'o <tytso@rsts-11.mit.edu>
1030
1031 * mke2fs.c (check_plausibility): Add more intelligent error
1032 messages when the device doesn't exist.
1033
1034Sat Mar 1 10:43:32 1997 Theodore Ts'o <tytso@rsts-11.mit.edu>
1035
1036 * fsck.c (main): Fix bug where the PATH environment variable isn't
1037 set when it is unset.
1038
1039Tue Jan 14 12:30:45 1997 Theodore Ts'o <tytso@rsts-11.mit.edu>
1040
1041 * mke2fs.c (write_inode_tables): Fixed bug in write_inode_tables
1042 where a loop variable was getting reused in a nested loop.
1043 This caused the inode table to not be correctly
1044 initialized.
1045
1046Thu Jan 2 00:00:37 1997 Theodore Ts'o <tytso@rsts-11.mit.edu>
1047
1048 * lsattr.c, chattr.c: Include string.h, since we use memcpy().
1049
1050 * findsuper.c: Use time_t for ctime(), not __u32.
1051
1052Sat Dec 28 23:39:18 1996 Theodore Ts'o <tytso@rsts-11.mit.edu>
1053
1054 * badblocks.c: Adapted -vv modifications from Rik Faith so that
1055 they frequently update the block number field.
1056
1057 * badblocks.8.in: Document the optional start-block parameter
1058
1059Mon Oct 14 11:52:58 1996 Theodore Ts'o <tytso@rsts-11.mit.edu>
1060
1061 * mke2fs.c: Updated to use new ext2fs_allocate_tables() function.
1062
1063Tue Oct 8 02:02:03 1996 Theodore Ts'o <tytso@rsts-11.mit.edu>
1064
1065 * Release of E2fsprogs version 1.06
1066
Theodore Ts'o5c576471997-04-29 15:29:49 +00001067Mon Oct 7 00:56:24 1996 Theodore Ts'o <tytso@rsts-11.mit.edu>
1068
1069 * chattr.1.in: Documented the 'A' (noatime) attribute.
1070
1071 * dumpe2fs.c (main): Change EXT2_SWAP to EXT2_FLAG_SWAP for
1072 consistency's sake.
1073
1074Sun Sep 22 16:18:47 1996 Theodore Ts'o <tytso@rsts-11.mit.edu>
1075
1076 * chattr.c (decode_arg): Add support for the 'A' (noatime) flag.
1077
1078Thu Sep 12 15:23:07 1996 Theodore Ts'o <tytso@rsts-11.mit.edu>
1079
1080 * Release of E2fsprogs version 1.05
1081
Theodore Ts'o1e3472c1997-04-29 14:53:37 +00001082Sat Sep 7 07:34:11 1996 Theodore Ts'o <tytso@rsts-11.mit.edu>
1083
1084 * tune2fs.c (main): Add support for new option -C, which sets the
1085 current number of mounts.
1086 (main): Allow the interval to be specified in seconds,
1087 mostly for debugging.
1088
1089Tue Aug 27 17:27:43 1996 Miles Bader <miles@gnu.ai.mit.edu>
1090
1091 * Makefile.in (SMANPAGES): Use @FSCK_MAN@ instead of fsck.8.
1092 (SPROGS): Use @FSCK_PROG@ instead of fsck.
1093
1094Thu Aug 22 00:51:44 1996 Theodore Ts'o <tytso@rsts-11.mit.edu>
1095
1096 * mke2fs.c (zap_bootblock): Don't do zap_bootblock on a
1097 sparc.
1098
1099Tue Aug 20 00:15:46 1996 Theodore Ts'o <tytso@rsts-11.mit.edu>
1100
1101 * chattr.c (main): Fixed bug so that chattr -v works. (Bug report
1102 and fix sent by Charles Howes, chowes@eznet.ca)
1103
1104Fri Aug 9 11:52:42 1996 Theodore Ts'o <tytso@rsts-11.mit.edu>
1105
1106 * tune2fs.8.in:
1107 * tune2fs.c: Added support for the -L option which sets the volume
1108 label, the -M option which sets the last mounted
1109 directory, and the -U option which sets the filesystem UUID.
1110
1111 * mke2fs.8.in:
1112 * mke2fs.c: Added support for the -o option, which overrides the
1113 creator OS. Generate a UUID for the filesystem, if
1114 applicable. Added support for the -L option which sets
1115 the volume label, and the -M option which sets the last
1116 mounted directory.
1117
1118Sat Jun 22 17:43:17 1996 Remy Card <card@bbj.linux.eu.org>
1119
1120 * chattr.c (decode_arg): Integrated Michael Nonweiler's fix to
1121 avoid a segmentation fault when the "-v" option is used
1122 and no version number is specified.
1123
Theodore Ts'o62c06f71997-04-29 14:34:47 +00001124Thu May 16 11:12:30 1996 Theodore Ts'o <tytso@rsts-11.mit.edu>
1125
1126 * Release of E2fsprogs version 1.04
1127
1128Wed May 15 21:15:43 1996 Theodore Ts'o <tytso@rsts-11.mit.edu>
1129
1130 * Makefile.in (fsck): fsck doesn't need to be linked with the ext2
1131 libraries.
1132
Theodore Ts'o7f88b041997-04-26 14:48:50 +00001133Wed Mar 27 00:33:40 1996 <tytso@rsts-11.mit.edu>
1134
1135 * Release of E2fsprogs version 1.03
1136
1137Thu Mar 7 03:43:20 1996 <tytso@rsts-11.mit.edu>
1138
1139 * mke2fs.c (PRS): Add (for development only) support to
1140 specify revision and inode size of the new filesystem.
1141
1142Tue Mar 5 03:51:35 1996 <tytso@rsts-11.mit.edu>
1143
1144 * mke2fs.8.in: Fix a few minor typo's in the man page.
1145
1146 * mke2fs.c (reserve_inodes): Add support for dynamic first inode
1147 revision.
1148
1149Mon Feb 5 22:19:49 1996 <tytso@rsts-11.mit.edu>
1150
1151 * fsck.c (check_all, PRS): Added new flag -P, which turns on the
1152 parallel root option. This allows you to check the root
1153 filesystem in parallel with the other filesystems. Note
1154 that this is not the safest thing in the world to do,
1155 since if the root filesystem is in doubt things like
1156 the e2fsck executable might be corrupted! But some
1157 sysadmins, who don't want to repartition the root
1158 filesystem to be small and compact, may really want this
1159 option turned on.
1160
Theodore Ts'o74becf31997-04-26 14:37:06 +00001161Wed Jan 31 11:06:08 1996 <tytso@rsts-11.mit.edu>
1162
1163 * Release of E2fsprogs version 1.02
1164
1165Tue Oct 30 21:14:12 1995 <tytso@rsts-11.mit.edu>
1166
1167 * mke2fs.c (check_plausibility): Add check to warn user if they
1168 are trying to mke2fs the whole disk. (/dev/hda
1169 vs. /dev/hda1)
1170
1171Fri Dec 15 19:09:56 1995 <tytso@rsts-11.mit.edu>
1172
1173 * fsck.c (check_all): If we break out of the loop because we are
1174 serializing and have just started at fsck we haven't
1175 finished the pass. We need to go round again in case there
1176 are more filesystems to be done in this pass. (Patch
1177 submitted by Mike Jagdis)
1178
1179Sat Dec 9 10:07:16 1995 <tytso@rsts-11.mit.edu>
1180
1181 * dumpe2fs.c (in_use): test_bit() was renamed to
1182 ext2fs_test_bit().
1183
Theodore Ts'o297f47a1997-04-26 14:25:20 +00001184Mon Oct 30 20:21:18 1995 <tytso@rsts-11.mit.edu>
1185
1186 * fsck.c (fsck_device): Check fstype instead of type; this was a
1187 stupid typo which caused coredumps in some cases.
1188
Theodore Ts'oa418d3a1997-04-26 14:00:26 +00001189Thu Oct 26 12:05:18 1995 <tytso@rsts-11.mit.edu>
1190
1191 * Makefile.in (install): Strip programs when they are installed.
1192
1193Fri Aug 18 15:10:40 1995 Theodore Y. Ts'o <tytso@dcl>
1194
1195 * mke2fs.c (PRS): Move call of check_mount() from main() to PRS(),
1196 so we do the check to see if the filesystem is mounted
1197 *before* we try to determine the size of the device.
1198
1199Wed Sep 6 23:34:07 1995 Remy Card <card@bbj>
1200
1201 * fsck.c (load_fs_info): Load the informations from /etc/fstab in
1202 the same order.
1203
1204Thu Aug 17 22:33:09 1995 <tytso@rsts-11.mit.edu>
1205
1206 * mke2fs.c (check_mount): Use the new ext2fs_check_if_mounted()
1207 function to determine if the device is mounted.
1208
1209 * mke2fs.c (PRS): Change call to use the new
1210 ext2fs_get_device_size() function in order to determine
1211 the size of the filesystem. Remove get_size() and
1212 is_valid_offset(), which are no longer called.
1213
1214Fri Aug 11 08:26:24 1995 Theodore Y. Ts'o <tytso@lurch.mit.edu>
1215
1216 * fsck.c (fsck_device): Make sure fstype has been set by the user
1217 and that it does not begin with "no" and the user has
1218 specified exactly one type before using it as the type to
1219 check.
1220
1221Fri Aug 11 14:17:18 1995 Remy Card <card@bbj>
1222
1223 * badblocks.8:
1224 * chattr.1:
1225 * dumpe2fs.8:
1226 * fsck.8:
1227 * lsattr.1:
1228 * mke2fs.8:
1229 * mklost+found.8:
1230 * tune2fs.8: Updated date and version number.
1231
1232Thu Aug 10 14:18:36 1995 Remy Card <card@bbj>
1233
1234 * tune2fs.c: Fixed a bug which prevented the use of user and group
1235 names with the -g and -u options. Thanks to Jean Christophe
1236 ANDRE <progfou@mycrob.cafard.freenix.fr>.
1237
1238 * mke2fs.8:
1239 * tune2fs.8: Fixed a spelling error in Ted's name :-)
1240
1241Wed Aug 9 20:41:54 1995 Theodore Y. Ts'o <tytso@dcl>
1242
1243 * mke2fs.c (count_blocks): Divide the size by
1244 EXT2_BLOCK_SIZE(&param), instead of assuming that the
1245 blocksize is always 1024 bytes.
1246
1247Sat Aug 5 12:00:51 1995 Theodore Y. Ts'o <tytso@lurch.mit.edu>
1248
1249 * mke2fs.c (PRS): Use malloc() instead of alloca() --- alloca() is
1250 not portable!! In any case putenv() in some systems must
1251 take a static character array or malloc()'ed memory;
1252 passing memory allocated using alloca() to putenv() is not
1253 advisable.
1254
1255 * chattr.c (chattr_dir_proc):
1256 * lsattr.c (lsattr_dir_proc): Use malloc() instead of alloca() ---
1257 alloca is not portable!
1258
1259 * fsck.c (fsck_device): If the filesystem type is specified by the
1260 user using the -t option, let it override the type in
1261 /etc/fstab.
1262
1263 * fsck.c (strdup): Don't build strdup() if the system defines it.
1264
1265Mon Jun 12 19:15:10 1995 Theodore Y. Ts'o (tytso@dcl)
1266
1267 * chattr.c, lsattr.c: Include <sys/types.h> for <dirent.h>'s
1268 benefit.
1269
1270 * The $(UPROGS) go in bin, not sbin.
1271
1272 * badblocks.c, chattr.c, dumpe2fs.c, fsck.c, lsattr.c, mke2fs.c,
1273 tune2fs.c: Don't include <getopt.h> if it doesn't exist.
1274
1275Mon Jun 12 16:36:04 1995 Theodore Y. Ts'o <tytso@dcl>
1276
1277 * badblocks.c, chattr.c, dumpe2fs.c, fsck.c, lsattr.c, mke2fs.c,
1278 tune2fs.c: Only include getopt.h if HAVE_GETOPT_H is defined.
1279
1280Sat Jun 10 23:37:09 1995 Theodore Y. Ts'o <tytso@lurch.mit.edu>
1281
1282 * chattr.c: Include errno.h, since we use errno
1283
1284 * fsck.c (load_fs_info): If HAVE_MNTENT_H is not defined,
1285 explicitly initialize filesys_info to be NULL.
1286
1287 * mke2fs.c: Include the stdio.h and errno.h header files
1288
1289Thu Jun 8 13:25:23 1995 Miles Bader <miles@churchy.gnu.ai.mit.edu>
1290
1291 * mke2fs.c: Only include <linux/fs.h> if we can.
1292 (get_size): Don't try to use the BLKGETSIZE ioctl unless it's defined.
1293 (check_mount): Only check to see if the device is mounted if
1294 HAVE_MNTENT_H is defined (by configure).
1295
1296 * fsck.c (load_fs_info): Only try to get info about filesystems if
1297 HAVE_MNTENT_H is defined (by configure).
1298 (main): Allocate space for a new fsck_path instead of append to a
1299 statically sized buffer.
1300 (PRS): Use alloca to allocate the new path string, instead of
1301 having a fixed size buffer (which was the wrong size anyway).
1302
1303 * chattr.c (chattr_dir_proc): Use alloca to allocate space for a
1304 filename instead of using a fixed-size buffer.
1305 * lsattr.c (lsattr_dir_proc): Ditto.
1306 * mklost+fond.c (main): Calculate the actual needed size for the
1307 path buffer instead of using MAXPATHLEN (which not all systems have).
1308
1309 * badblocks.c: Only include linux include files if we have them.
1310 (flush_bufs): New function to flush a block device, optionally
1311 syncing it first. This replaces other copies of this code.
1312 (test_ro): Replace calls to ioctl with flush_bufs().
1313 (test_rw): Ditto.
1314
1315 * Makefile.in: Rewritten to conform to GNU coding standards and
1316 support separate compilation directories.
1317
Theodore Ts'of3db3561997-04-26 13:34:30 +00001318Sat Mar 11 10:59:58 1995 Theodore Y. Ts'o <tytso@localhost>
1319
1320 * mke2fs.c (main, zap_bootblock): Added new function
1321 zap_bootblock() which clears the first 512 bytes of the
1322 filesystem. This protects the filesystem from being
1323 misidentified as a MS-DOS FAT filesystem.
1324
1325 * badblocks.c (alarm_intr, test_ro, test_rw): Increase the space
1326 allocated for printing the block numbers, so that the
1327 display doesn't get corrupted when running badblocks on a
1328 very large partition.
1329
1330 * badblocks.c (do_test, test_ro, test_rw): Added missing cast to
1331 ext2_loff_t, so that when checking a large device,
1332 spurious seek errors aren't reported.
1333
1334 * mke2fs.c (count_blocks): Declare mid to be of type ext2_loff_t
1335 instead of type int, so that it works for filesystems
1336 greater than 2 GB. (Fortunately count_blocks is only
1337 called if the device does not support the BLKGETSIZE
1338 ioctl, which most do.)
1339
1340 * fsck.c (ignore): Add check to ignore filesystems with a pass
1341 number of zero. (This check was accidentally deleted at
1342 during 0.5b development.)
1343
1344Sat Dec 31 00:47:16 1994 <tytso@rsx-11.mit.edu>
1345
1346 * mke2fs.c (new_table_block, alloc_tables, PRS, main): Add a new
1347 option, -S, which only writes the superblock and group
1348 descriptors. Useful for recovering when all of the
1349 superblocks are corrupted somehow (as a last ditch
1350 measure).
1351
1352 Also, don't bother initializing the bitmap blocks in
1353 alloc_tables(), since they will be overwritten at the end
1354 anyway. (Should speed up mke2fs by a little.)
1355
1356Tue Dec 6 02:20:55 1994 <tytso@rsx-11.mit.edu>
1357
1358 * fsck.c (main): Fix stupid typo where a null inst would be freed.
1359
1360 * fsck.c (wait_one): Check WIFEXITED on status before trying to
1361 extract the exit status. In other cases, return
1362 FSCK_ERROR if the back end processor exited with a signal.
1363
1364Tue Nov 15 10:20:00 1994 Remy Card <card@bbj>
1365
1366 * tune2fs.c (main): Fixed a bug which prevented the use of the
1367 new options.
1368 Added the `w' (week) suffix recognition in the check interval.
1369
1370Sun Nov 13 15:58:48 1994 (tytso@rsx-11)
1371
1372 * fsck.c (load_fs_info): If the user has an obviously old
1373 /etc/fstab file, issue a warning message and assume that
1374 all partitions should be checked.
1375
1376Sat Nov 12 00:33:18 1994 (tytso@rsx-11)
1377
1378 * dumpe2fs.c (list_desc): Update to new inode and block bitmap
1379 structures.
1380
1381 * mke2fs.c (create_root_dir): Create the root directory owned by
1382 the effective uid.
1383
1384Mon Nov 7 22:04:37 1994 Remy Card <card@bbj>
1385
1386 * tune2fs.c (main.c): Added support for new options:
1387 -r reserved_blocks_count, -g reserved_gid, -u reserved_uid.
1388
1389Sun Aug 21 00:57:33 1994 Theodore Y. Ts'o (tytso@rt-11)
1390
1391 * fsck.c (ignore): If the pass number is 0, ignore the filesystem.
1392
1393Wed Aug 17 21:55:03 1994 Remy Card (card@bbj)
1394
1395 * badblocks.c (test_rw): Added verbose output like in the
1396 read-only test.
1397
1398 (do_test and test_rw): Use the llseek system call if available.
1399
1400 * chattr.c: Added support for new attributes.
1401
1402 * lsattr.c: Added support for long format.
1403
1404 * mke2fs.c (usage): Fixed bogus usage message.
1405
1406 (valid_offset): Use the llseek system call if available.
1407
1408Wed Aug 17 10:50:57 1994 Theodore Y. Ts'o (tytso@rt-11)
1409
1410 * mke2fs.c (handle_bad_blocks): Check to see if a bad block is
1411 where a backup superblock/group descriptor is stored. If so,
1412 print a warning message and adjust the superblock counts so that
1413 they are correct. (Otherwise, the bad block will get counted
1414 twice and the # of free blocks count will be wrong.)
1415
1416 (alloc_tables): Removed code which calcualated the free block
1417 statistics, which was moved to lib/ext2fs/initialize.c. This
1418 allows the bad block code to adjust the group descriptor
1419 statistics if necessary.