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