| History log of /src/sbin/dump_lfs |
| Revision | Date | Author | Comments |
| 1.21 | 03-Jun-2023 |
lukem | bsd.own.mk: rename GCC_NO_* to CC_WNO_*
Rename compiler-warning-disable variables from GCC_NO_warning to CC_WNO_warning where warning is the full warning name as used by the compiler.
GCC_NO_IMPLICIT_FALLTHRU is CC_WNO_IMPLICIT_FALLTHROUGH
Using the convention CC_compilerflag, where compilerflag is based on the full compiler flag name.
|
| 1.20 | 14-Apr-2021 |
mrg | build lfs_node.c with -O3 on ia64 to avoid assembler overflow issues.
|
| 1.19 | 07-Sep-2020 |
mrg | remove GCC_NO_ADDR_OF_PACKED_MEMBER for several subdir builds that are now handled by lfs_accessors.h internally.
|
| 1.18 | 06-Sep-2020 |
mrg | add support for new GCC 9 warnings that may be too much to fix right now. new address-of-packed-member and format-overflow warnings have new GCC_NO_ADDR_OF_PACKED_MEMBER amd GCC_NO_FORMAT_OVERFLOW variables to remove these warnings.
apply to a bunch of the tree. mostly, these are real bugs that should be fixed, but in many cases, only by removing the 'packed' attribute from some structure that doesn't really need it. (i looked at many different ones, and while perhaps 60-80% were already properly aligned, it wasn't clear to me that the uses were always coming from sane data vs network alignment, so it doesn't seem safe to remove packed without careful research for each affect struct.) clang already warned (and was not erroring) for many of these cases, but gcc picked up dozens more.
|
| 1.17 | 13-Oct-2019 |
mrg | introduce some common variables for use in GCC warning disables:
GCC_NO_FORMAT_TRUNCATION -Wno-format-truncation (GCC 7/8) GCC_NO_STRINGOP_TRUNCATION -Wno-stringop-truncation (GCC 8) GCC_NO_STRINGOP_OVERFLOW -Wno-stringop-overflow (GCC 8) GCC_NO_CAST_FUNCTION_TYPE -Wno-cast-function-type (GCC 8)
use these to turn off warnings for most GCC-8 complaints. many of these are false positives, most of the real bugs are already commited, or are yet to come.
we plan to introduce versions of (some?) of these that use the "-Wno-error=" form, which still displays the warnings but does not make it an error, and all of the above will be re-considered as either being "fix me" (warning still displayed) or "warning is wrong."
|
| 1.16 | 15-Jun-2013 |
christos | branches: 1.16.28; revert part of previous commit
|
| 1.15 | 15-Jun-2013 |
christos | fix compilation
|
| 1.14 | 07-Apr-2012 |
christos | branches: 1.14.2; use getfsspecname()
|
| 1.13 | 14-Aug-2011 |
christos | branches: 1.13.2; use a union to eliminate strict alias warnings.
|
| 1.12 | 22-Jun-2011 |
mrg | apply some -Wno-error and/or -fno-strict-aliasing.
all of this should be looked at closer, but some of them are not very trivial.
|
| 1.11 | 11-Apr-2009 |
lukem | Enable WARNS=4 by default except for: dump dump_lfs fsck_ffs fsck_lfs fsdb mount_smbfs newfs_ext2fs newfs_lfs resize_lfs setkey
|
| 1.10 | 13-Feb-2009 |
uebayasi | Comment out CFLAGS+=-g.
|
| 1.9 | 27-Apr-2008 |
tsutsui | branches: 1.9.4; 1.9.6; Enable gcc optimization on m68000 (sun2) again with minimum hacks. gcc -O0 generates a bit fat binaries.
|
| 1.8 | 09-Feb-2008 |
mrg | branches: 1.8.4; 1.8.6; make all sun2 use -O0 and move most of the hacks out into just 3 files.
|
| 1.7 | 24-Jun-2006 |
mrg | branches: 1.7.10; 1.7.12; work around some GCC4 internal problems on m68000 platform. document the hack, and update another GCC4 list.
|
| 1.6 | 19-Apr-2005 |
hannken | Snapshot support for dump(8):
- New option `-x backup' takes the dump from a snapshot backed up by `backup'. The snapshot will be deleted on exit.
- New option `-X' as a synonym for `-x mountpoint' where `mountpoint' is the file system to be dumped.
Reviewed and Approved by: Manuel Bouyer <bouyer@netbsd.org>
|
| 1.5 | 27-Mar-2003 |
lukem | branches: 1.5.6; Remove "setgid tty" and references to utmp code from usr.bin/who.
|
| 1.4 | 19-Aug-2002 |
lukem | Use ${NETBSDSRCDIR}/some/path instead of ${.CURDIR}/../../some/path
|
| 1.3 | 02-Aug-2002 |
scw | Fix dump_lfs build following recent utmp changes.
|
| 1.2 | 13-Jul-2001 |
perseant | Merge the short-lived perseant-lfsv2 branch into the trunk.
Kernels and tools understand both v1 and v2 filesystems; newfs_lfs generates v2 by default. Changes for the v2 layout include:
- Segments of non-PO2 size and arbitrary block offset, so these can be matched to convenient physical characteristics of the partition (e.g., stripe or track size and offset).
- Address by fragment instead of by disk sector, paving the way for non-512-byte-sector devices. In theory fragments can be as large as you like, though in reality they must be smaller than MAXBSIZE in size.
- Use serial number and filesystem identifier to ensure that roll-forward doesn't get old data and think it's new. Roll-forward is enabled for v2 filesystems, though not for v1 filesystems by default.
- The inode free list is now a tailq, paving the way for undelete (undelete is not yet implemented, but can be without further non-backwards-compatible changes to disk structures).
- Inode atime information is kept in the Ifile, instead of on the inode; that is, the inode is never written *just* because atime was changed. Because of this the inodes remain near the file data on the disk, rather than wandering all over as the disk is read repeatedly. This speeds up repeated reads by a small but noticeable amount.
Other changes of note include:
- The ifile written by newfs_lfs can now be of arbitrary length, it is no longer restricted to a single indirect block.
- Fixed an old bug where ctime was changed every time a vnode was created. I need to look more closely to make sure that the times are only updated during write(2) and friends, not after-the-fact during a segment write, and certainly not by the cleaner.
|
| 1.1 | 29-Sep-1999 |
perseant | branches: 1.1.4; 1.1.10; Adapt dump(8) to use filestore-independent (but still ufs-specific) replacements for NINDIR, fsbtodb, etc. Create dump_lfs by adding a few LFS-filestore-specific routines. As described in PR#8317.
|
| 1.1.10.1 | 27-Jun-2001 |
perseant | Import of what I've been calling "LFSv2", that is, LFS with some features added that require changes to the on-disk data structures. These include:
- 64-bit time in everything but inodes - User-specified segment offset, and segment size no longer restricted to PO2. - Serial number on segment summaries in addition to timestamp, and a new volume identifier, to make roll-forward feasible without fear of finding old data and thinking it was new.
Although I think this version works at least as well as what's on the trunk, we're not done yet; hence this commit is going in on a branch and not on the trunk. Enhancements that are not here yet include fragment addressing, like FFS does, instead of block addressing.
|
| 1.1.4.1 | 27-Dec-1999 |
wrstuden | Pull up to last week's -current.
|
| 1.5.6.1 | 21-Apr-2005 |
tron | Pull up revision 1.6 (requested by hannken in ticket #184): Snapshot support for dump(8): - New option `-x backup' takes the dump from a snapshot backed up by `backup'. The snapshot will be deleted on exit. - New option `-X' as a synonym for `-x mountpoint' where `mountpoint' is the file system to be dumped. Reviewed and Approved by: Manuel Bouyer <bouyer@netbsd.org>
|
| 1.7.12.1 | 18-Feb-2008 |
mjf | Sync with HEAD.
|
| 1.7.10.1 | 23-Mar-2008 |
matt | sync with HEAD
|
| 1.8.6.1 | 18-May-2008 |
yamt | sync with head.
|
| 1.8.4.1 | 02-Jun-2008 |
mjf | Sync with HEAD.
|
| 1.9.6.1 | 13-May-2009 |
jym | Sync with HEAD.
Third (and last) commit. See http://mail-index.netbsd.org/source-changes/2009/05/13/msg221222.html
|
| 1.9.4.1 | 08-Dec-2010 |
riz | Pull up following revision(s) (requested by uwe in ticket #1490): usr.bin/mkdep/Makefile: revision 1.16 sbin/dump_lfs/Makefile: revision 1.10 usr.sbin/services_mkdb/Makefile: revision 1.5 sbin/ifconfig/Makefile: revision 1.40 usr.sbin/racoonctl/Makefile: revision 1.3 sbin/sysctl/Makefile: revision 1.18 Comment out CFLAGS+=-g. Disable debug.
|
| 1.13.2.2 | 22-May-2014 |
yamt | sync with head.
for a reference, the tree before this commit was tagged as yamt-pagecache-tag8.
this commit was splitted into small chunks to avoid a limitation of cvs. ("Protocol error: too many arguments")
|
| 1.13.2.1 | 17-Apr-2012 |
yamt | sync with head
|
| 1.14.2.1 | 23-Jun-2013 |
tls | resync from head
|
| 1.16.28.1 | 13-Apr-2020 |
martin | Mostly merge changes from HEAD upto 20200411
|
| 1.19 | 25-Mar-2019 |
wiz | Bump date for previous.
|
| 1.18 | 25-Mar-2019 |
manu | Add -U flag to dump(8) and dump_lfs(8) to specify dumpdates entry
This address situations where dump(8) cannot figure out the device being dumped. It also allows tracking of subvolume dumps by using virtual device as dumpdates entry.
|
| 1.17 | 07-Jun-2017 |
abhinav | branches: 1.17.6; s/filesystem/file system/
|
| 1.16 | 08-Apr-2012 |
wiz | branches: 1.16.24; Remove unnecessary Bk/Ek pairs from SYNOPSIS. No effective change except where I used the opportunity to sort options and/or option descriptions.
|
| 1.15 | 30-Jan-2009 |
enami | branches: 1.15.8; Use indent-synopsis instead of iS register. The latter is a register used in BSD derived .Nm implementation.
|
| 1.14 | 24-Jun-2006 |
wiz | Use Dv for a macro; new sentence, new line.
|
| 1.13 | 24-Jun-2006 |
perseant | Change LFCNWRAP{STOP,GO} to make them more suitable for snapshotting; in particular, the caller can now choose whether to wait for the condition to be met, and if the caller of LFCNWRAPSTOP dies or otherwise closes the descriptor, the filesystem is started again. Updated the ckckp regression test to use the new semantics.
dump_lfs(8) now uses the fcntls to implement LFS-style snapshotting through the -X flag, addressing PR#33457 albeit not using fss(4). Fixed a couple other problems with dump_lfs that manifested themselves during testing.
|
| 1.12 | 13-Jul-2004 |
wiz | Add description for -l, from dump(8). Addresses PR 26066 by Kouichirou Hiratsuka.
|
| 1.11 | 07-Aug-2003 |
agc | Move UCB-licensed code from 4-clause to 3-clause licence.
Patches provided by Joel Baker in PR 22308, verified by myself.
|
| 1.10 | 26-May-2003 |
lukem | * Document $RCMD_CMD in environ(7). * Cross-reference rcmd(1), rcmd(3), and environ(7) as appropriate.
Should fix [bin/21670] from Geoff Wing.
|
| 1.9 | 25-Feb-2003 |
wiz | .Nm does not need a dummy argument ("") before punctuation or for correct formatting of the SYNOPSIS any longer.
|
| 1.8 | 04-Feb-2003 |
perry | "Utilize" has exactly the same meaning as "use," but it is more difficult to read and understand. Most manuals of English style therefore say that you should use "use".
|
| 1.7 | 01-Oct-2002 |
wiz | New sentence, new line. By Robert Elz with minimal fixes.
|
| 1.6 | 21-Jan-2002 |
wiz | Fix typo in macro.
|
| 1.5 | 07-Dec-2001 |
wiz | One '\' too many.
|
| 1.4 | 16-Nov-2001 |
wiz | Sort sections, use standard section headers.
|
| 1.3 | 16-Nov-2001 |
wiz | Whitespace nits
|
| 1.2 | 05-Jun-2001 |
wiz | Drop arguments of .Os.
|
| 1.1 | 29-Sep-1999 |
perseant | branches: 1.1.4; Adapt dump(8) to use filestore-independent (but still ufs-specific) replacements for NINDIR, fsbtodb, etc. Create dump_lfs by adding a few LFS-filestore-specific routines. As described in PR#8317.
|
| 1.1.4.1 | 27-Dec-1999 |
wrstuden | Pull up to last week's -current.
|
| 1.15.8.1 | 17-Apr-2012 |
yamt | sync with head
|
| 1.16.24.1 | 29-Mar-2019 |
martin | Pull up following revision(s) (requested by manu in ticket #1221):
sbin/dump/tape.c: revision 1.55 sbin/dump_lfs/dump_lfs.8: revision 1.18 sbin/dump/dump.h: revision 1.56 sbin/dump/dump.8: revision 1.69 sbin/dump/dump.h: revision 1.57 sbin/dump/ffs_inode.c: revision 1.23 sbin/dump/optr.c: revision 1.43 sbin/dump/itime.c: revision 1.21 sbin/dump/main.c: revision 1.74 sbin/dump/itime.c: revision 1.22 sbin/dump/main.c: revision 1.75 sbin/dump/dump.8: revision 1.70 sbin/dump/traverse.c: revision 1.52 sbin/dump/dump.8: revision 1.71
Document what rdump is (was once) for. PR 53442.
Use getfsspecname() to fill the filesystem argument in dumpdates. While here, make sure that the error strings terminate with newline consistently, and add a function that adds the system error string.
Add -U flag to dump(8) and dump_lfs(8) to specify dumpdates entry This address situations where dump(8) cannot figure out the device being dumped. It also allows tracking of subvolume dumps by using virtual device as dumpdates entry.
Bump date for previous.
|
| 1.17.6.1 | 10-Jun-2019 |
christos | Sync with HEAD
|
| 1.29 | 12-May-2024 |
msaitoh | s/unitialized/uninitialized/
|
| 1.28 | 15-Oct-2015 |
dholland | Make dump recognize lfs64.
For now at least it will refuse to touch it though as it needs to be taught more abstraction about directory entries; currently it blindly uses struct direct from ffs and will croak on the lfs64 64-bit inode numbers.
|
| 1.27 | 21-Sep-2015 |
dholland | Fix some assorted 32-bit assumptions not yet otherwise handled.
Also apply patch to fix the overt problem in PR 50246: newfs was calculating ifpb wrong for volumes with non-default block sizes.
|
| 1.26 | 01-Sep-2015 |
dholland | The ifile's inode number is constant. (it is always 1)
Therefore, storing the value in the superblock and reading it out again is silly and offers the opportunity for it to become corrupted. So, don't do that (most of the code already didn't) and use the existing constant instead. Initialize new 32-bit superblocks with the value for the sake of old userland programs, but don't keep the value in the 64-bit superblock at all.
(approved by Margo Seltzer)
|
| 1.25 | 12-Aug-2015 |
dholland | Hack up dinode usage to be 64 vs. 32 as needed. Part 1.
(This part changes the native lfs code; the ufs-derived code already has 64 vs. 32 logic, but as aspects of it are unsafe, and don't entirely interoperate cleanly with the lfs 64/32 stuff, pass 2 will be rehashing that.)
|
| 1.24 | 12-Aug-2015 |
dholland | Add IFILE32 and IFILE64 structures for the on-disk ifile entries. Add and use accessors. There are also a bunch of places that cast and I hope I've found them all...
|
| 1.23 | 02-Aug-2015 |
dholland | Add a (draft) 64-bit superblock. Make things build again.
Add pieces of support for using both superblock types where convenient, and specifically to the superblock accessors, but don't actually enable it anywhere.
First substantive step on PR 50000.
|
| 1.22 | 02-Aug-2015 |
dholland | Use accessor functions for the version field of the lfs superblock. I thought at first maybe the cases that test the version should be rolled into the accessors, but on the whole I think the conclusion on that is no.
|
| 1.21 | 24-Jul-2015 |
dholland | More lfs superblock accessors. (This changes the rest of the code over; all the accessors were already added.)
The difference between this commit and the previous one is arbitrary, but the previous one passed the regression tests on its own so I'm keeping it separate to help with any bisections that might be needed in the future.
|
| 1.20 | 24-Jul-2015 |
dholland | Switch to accessor functions for elements of the LFS on-disk superblock. This will allow switching between 32/64 bit forms on the fly; it will also allow handling LFS_EI reasonably tidily. (That currently doesn't work on the superblock.)
It also gets rid of cpp abuse in the form of fake structure member macros.
Also, instead of doing sleep/wakeup on &lfs_avail and &lfs_nextseg inside the on-disk superblock, add extra elements to the in-memory struct lfs for this. (XXX: these should be changed to condvars, but not right now)
XXX: this migrates a structure needed by the lfs code in libsa (struct salfs) into lfs.h, where it doesn't belong, but for the time being this is necessary in order to allow the accessors (and the various lfs macros and other goop that relies on them) to compile.
|
| 1.19 | 19-Jun-2013 |
dholland | Make this build again. hi christos
|
| 1.18 | 15-Jun-2013 |
christos | fix compilation
|
| 1.17 | 08-Jun-2013 |
dholland | Add unsafe hacks to make this build going forward.
XXX: unsafe hacks are unsafe -- dump needs to be cleaned up to make XXX: it more fs-independent.
|
| 1.16 | 22-Jan-2013 |
dholland | Stuff UFS_ in front of a few of ufs's symbols to reduce namespace pollution. Specifically: ROOTINO -> UFS_ROOTINO WINO -> UFS_WINO NXADDR -> UFS_NXADDR NDADDR -> UFS_NDADDR NIADDR -> UFS_NIADDR MAXSYMLINKLEN -> UFS_MAXSYMLINKLEN MAXSYMLINKLEN_UFS[12] -> UFS[12]_MAXSYMLINKLEN (for consistency)
Sort out ext2fs's misuse of NDADDR and NIADDR; fortunately, these have the same values in ext2fs and ffs.
No functional change intended.
|
| 1.15 | 14-Aug-2011 |
christos | branches: 1.15.2; 1.15.8; use a union to eliminate strict alias warnings.
|
| 1.14 | 20-Jul-2008 |
lukem | Remove the \n and tabs from the __COPYRIGHT() strings. (Tweak some to use a consistent format.)
|
| 1.13 | 28-Sep-2006 |
perseant | branches: 1.13.18; 1.13.22; Call fcntl on the file descriptor *before* closing it.
|
| 1.12 | 24-Jun-2006 |
perseant | Change LFCNWRAP{STOP,GO} to make them more suitable for snapshotting; in particular, the caller can now choose whether to wait for the condition to be met, and if the caller of LFCNWRAPSTOP dies or otherwise closes the descriptor, the filesystem is started again. Updated the ckckp regression test to use the new semantics.
dump_lfs(8) now uses the fcntls to implement LFS-style snapshotting through the -X flag, addressing PR#33457 albeit not using fss(4). Fixed a couple other problems with dump_lfs that manifested themselves during testing.
|
| 1.11 | 18-Jun-2005 |
lukem | be consistent in XXXGCC -Wuninitialized fixes ...
|
| 1.10 | 16-Jun-2005 |
jmc | Mark an sh3 gcc unitialized variable w. XXGCC
|
| 1.9 | 06-Feb-2005 |
perry | ANSIfy a function declaration, remove obsolete "register" declaration.
|
| 1.8 | 07-Aug-2003 |
agc | Move UCB-licensed code from 4-clause to 3-clause licence.
Patches provided by Joel Baker in PR 22308, verified by myself.
|
| 1.7 | 02-Apr-2003 |
fvdl | Add support for UFS2. UFS2 is an enhanced FFS, adding support for 64 bit block pointers, extended attribute storage, and a few other things.
This commit does not yet include the code to manipulate the extended storage (for e.g. ACLs), this will be done later.
Originally written by Kirk McKusick and Network Associates Laboratories for FreeBSD.
|
| 1.6 | 24-Jan-2003 |
fvdl | Bump daddr_t to 64 bits. Replace it with int32_t in all places where it was used on-disk, so that on-disk formats remain the same. Remove ufs_daddr_t and ufs_lbn_t for the time being.
|
| 1.5 | 25-May-2002 |
wiz | __STDC__ is always defined on NetBSD.
|
| 1.4 | 02-Nov-2001 |
lukem | fix -Wshadow warnings
|
| 1.3 | 13-Jul-2001 |
perseant | Merge the short-lived perseant-lfsv2 branch into the trunk.
Kernels and tools understand both v1 and v2 filesystems; newfs_lfs generates v2 by default. Changes for the v2 layout include:
- Segments of non-PO2 size and arbitrary block offset, so these can be matched to convenient physical characteristics of the partition (e.g., stripe or track size and offset).
- Address by fragment instead of by disk sector, paving the way for non-512-byte-sector devices. In theory fragments can be as large as you like, though in reality they must be smaller than MAXBSIZE in size.
- Use serial number and filesystem identifier to ensure that roll-forward doesn't get old data and think it's new. Roll-forward is enabled for v2 filesystems, though not for v1 filesystems by default.
- The inode free list is now a tailq, paving the way for undelete (undelete is not yet implemented, but can be without further non-backwards-compatible changes to disk structures).
- Inode atime information is kept in the Ifile, instead of on the inode; that is, the inode is never written *just* because atime was changed. Because of this the inodes remain near the file data on the disk, rather than wandering all over as the disk is read repeatedly. This speeds up repeated reads by a small but noticeable amount.
Other changes of note include:
- The ifile written by newfs_lfs can now be of arbitrary length, it is no longer restricted to a single indirect block.
- Fixed an old bug where ctime was changed every time a vnode was created. I need to look more closely to make sure that the times are only updated during write(2) and friends, not after-the-fact during a segment write, and certainly not by the cleaner.
|
| 1.2 | 01-Oct-1999 |
perseant | branches: 1.2.4; 1.2.10; Working version of aborted dump{,_lfs} join.
|
| 1.1 | 29-Sep-1999 |
perseant | Adapt dump(8) to use filestore-independent (but still ufs-specific) replacements for NINDIR, fsbtodb, etc. Create dump_lfs by adding a few LFS-filestore-specific routines. As described in PR#8317.
|
| 1.2.10.2 | 10-Jul-2001 |
perseant | Check both superblocks. If the fsb unit in the proto-superblock is > 8k, look first for the true primary superblock at fs->lfs_sboffs[0].
|
| 1.2.10.1 | 02-Jul-2001 |
perseant | Change disk addressing unit to be the fragment, instead of the disk sector. All quantities in the superblock, inodes, indirect blocks, etc. refer now to this abstract unit (called "fsb" as it is in FFS) instead of disk sectors; as a consequence segment summary blocks have to be multiples of a fragment in size. In v1 filesystems, compatibility code ensures that 1 fsb == 1 sector, regardless of fragment size.
Fragments can now range in size between 512 and 32k; in the event that LFS_LABELPAD (8k) is smaller than the disk address unit size, an extra proto-superblock is kept at 8k from the beginning of the disk, to be used *only* to locate the real superblocks. (Not all of the userland knows about this yet.)
Almost all of this was done not by me, but by joff.
|
| 1.2.4.1 | 27-Dec-1999 |
wrstuden | Pull up to last week's -current.
|
| 1.13.22.1 | 18-Sep-2008 |
wrstuden | Sync with wrstuden-revivesa-base-2.
|
| 1.13.18.1 | 28-Sep-2008 |
mjf | Sync with HEAD.
|
| 1.15.8.2 | 23-Jun-2013 |
tls | resync from head
|
| 1.15.8.1 | 25-Feb-2013 |
tls | resync with head
|
| 1.15.2.2 | 22-May-2014 |
yamt | sync with head.
for a reference, the tree before this commit was tagged as yamt-pagecache-tag8.
this commit was splitted into small chunks to avoid a limitation of cvs. ("Protocol error: too many arguments")
|
| 1.15.2.1 | 23-Jan-2013 |
yamt | sync with head
|