OpenBSD CVS

CVS log for src/sbin/fsck_ffs/pass3.c


[BACK] Up to [local] / src / sbin / fsck_ffs

Request diff between arbitrary revisions


Default branch: MAIN


Revision 1.18 / (download) - annotate - [select for diffs], Tue Jan 20 18:22:21 2015 UTC (9 years, 4 months ago) by deraadt
Branch: MAIN
CVS Tags: OPENBSD_7_5_BASE, OPENBSD_7_5, OPENBSD_7_4_BASE, OPENBSD_7_4, OPENBSD_7_3_BASE, OPENBSD_7_3, OPENBSD_7_2_BASE, OPENBSD_7_2, OPENBSD_7_1_BASE, OPENBSD_7_1, OPENBSD_7_0_BASE, OPENBSD_7_0, OPENBSD_6_9_BASE, OPENBSD_6_9, OPENBSD_6_8_BASE, OPENBSD_6_8, OPENBSD_6_7_BASE, OPENBSD_6_7, OPENBSD_6_6_BASE, OPENBSD_6_6, OPENBSD_6_5_BASE, OPENBSD_6_5, OPENBSD_6_4_BASE, OPENBSD_6_4, OPENBSD_6_3_BASE, OPENBSD_6_3, OPENBSD_6_2_BASE, OPENBSD_6_2, OPENBSD_6_1_BASE, OPENBSD_6_1, OPENBSD_6_0_BASE, OPENBSD_6_0, OPENBSD_5_9_BASE, OPENBSD_5_9, OPENBSD_5_8_BASE, OPENBSD_5_8, OPENBSD_5_7_BASE, OPENBSD_5_7, HEAD
Changes since 1.17: +1 -2 lines
Diff to previous 1.17 (colored)

Adjust <sys/param.h> comments regarding use of use of MAXFRAG, or
delete <sys/param.h> if now possible
ok guenther

Revision 1.17 / (download) - annotate - [select for diffs], Fri Jan 16 06:39:57 2015 UTC (9 years, 4 months ago) by deraadt
Branch: MAIN
Changes since 1.16: +2 -2 lines
Diff to previous 1.16 (colored)

Replace <sys/param.h> with <limits.h> and other less dirty headers where
possible.  Annotate <sys/param.h> lines with their current reasons.  Switch
to PATH_MAX, NGROUPS_MAX, HOST_NAME_MAX+1, LOGIN_NAME_MAX, etc.  Change
MIN() and MAX() to local definitions of MINIMUM() and MAXIMUM() where
sensible to avoid pulling in the pollution.  These are the files confirmed
through binary verification.
ok guenther, millert, doug (helped with the verification protocol)

Revision 1.16 / (download) - annotate - [select for diffs], Sun May 8 14:38:40 2011 UTC (13 years ago) by otto
Branch: MAIN
CVS Tags: OPENBSD_5_6_BASE, OPENBSD_5_6, OPENBSD_5_5_BASE, OPENBSD_5_5, OPENBSD_5_4_BASE, OPENBSD_5_4, OPENBSD_5_3_BASE, OPENBSD_5_3, OPENBSD_5_2_BASE, OPENBSD_5_2, OPENBSD_5_1_BASE, OPENBSD_5_1, OPENBSD_5_0_BASE, OPENBSD_5_0
Changes since 1.15: +1 -2 lines
Diff to previous 1.15 (colored)

Small memory optimization from NetBSD; ok krw@ millert@

Revision 1.15 / (download) - annotate - [select for diffs], Sat Apr 16 16:37:21 2011 UTC (13 years, 1 month ago) by otto
Branch: MAIN
Changes since 1.14: +2 -2 lines
Diff to previous 1.14 (colored)

Blend in some code from netbsd and freebsd that reduces memory consumption
and speeds things up in a lot of cases.
Prompted by Amit Kulkarni; ok krw@ on a slighly diffrenent incarnation

Revision 1.14 / (download) - annotate - [select for diffs], Tue Oct 27 23:59:32 2009 UTC (14 years, 7 months ago) by deraadt
Branch: MAIN
CVS Tags: OPENBSD_4_9_BASE, OPENBSD_4_9, OPENBSD_4_8_BASE, OPENBSD_4_8, OPENBSD_4_7_BASE, OPENBSD_4_7
Changes since 1.13: +1 -9 lines
Diff to previous 1.13 (colored)

rcsid[] and sccsid[] and copyright[] are essentially unmaintained (and
unmaintainable).  these days, people use source.  these id's do not provide
any benefit, and do hurt the small install media
(the 33,000 line diff is essentially mechanical)
ok with the idea millert, ok dms

Revision 1.13 / (download) - annotate - [select for diffs], Tue Jun 10 23:10:29 2008 UTC (15 years, 11 months ago) by otto
Branch: MAIN
CVS Tags: OPENBSD_4_6_BASE, OPENBSD_4_6, OPENBSD_4_5_BASE, OPENBSD_4_5, OPENBSD_4_4_BASE, OPENBSD_4_4
Changes since 1.12: +6 -6 lines
Diff to previous 1.12 (colored)

reduce mem usage by about 20% by packing state and type of an inode in a single
byte. Original diff by drahn@; twists by me; ok millert@ thib@

Revision 1.12 / (download) - annotate - [select for diffs], Wed Mar 22 20:24:32 2006 UTC (18 years, 2 months ago) by deraadt
Branch: MAIN
CVS Tags: OPENBSD_4_3_BASE, OPENBSD_4_3, OPENBSD_4_2_BASE, OPENBSD_4_2, OPENBSD_4_1_BASE, OPENBSD_4_1, OPENBSD_4_0_BASE, OPENBSD_4_0
Changes since 1.11: +2 -2 lines
Diff to previous 1.11 (colored)

earlier asprintf diff caused malloc in signal handler.  clarify the
code a bit more so that this mistake will not be done again

Revision 1.11 / (download) - annotate - [select for diffs], Sun Mar 12 02:28:28 2006 UTC (18 years, 2 months ago) by deraadt
Branch: MAIN
Changes since 1.10: +4 -4 lines
Diff to previous 1.10 (colored)

use asprintf instead of a static buffer; dhill, tested by pedro

Revision 1.10 / (download) - annotate - [select for diffs], Sat Apr 16 18:15:41 2005 UTC (19 years, 1 month ago) by millert
Branch: MAIN
CVS Tags: OPENBSD_3_9_BASE, OPENBSD_3_9, OPENBSD_3_8_BASE, OPENBSD_3_8
Changes since 1.9: +4 -6 lines
Diff to previous 1.9 (colored)

Since the return value from the *_info functions is only actually used as a
boolean, make it so.  OK deraadt@

Revision 1.9 / (download) - annotate - [select for diffs], Sat Apr 16 17:37:25 2005 UTC (19 years, 1 month ago) by deraadt
Branch: MAIN
Changes since 1.8: +6 -4 lines
Diff to previous 1.8 (colored)

while snprintf and strlcpy and strlcat have this nice >buflen API (and the
-1 mess as well), it is probably not wise to make other functions do the same
thing.  make them return strlen().  ok uwe marco

Revision 1.8 / (download) - annotate - [select for diffs], Mon Jun 2 20:06:15 2003 UTC (21 years ago) by millert
Branch: MAIN
CVS Tags: OPENBSD_3_7_BASE, OPENBSD_3_7, OPENBSD_3_6_BASE, OPENBSD_3_6, OPENBSD_3_5_BASE, OPENBSD_3_5, OPENBSD_3_4_BASE, OPENBSD_3_4
Changes since 1.7: +3 -7 lines
Diff to previous 1.7 (colored)

Remove the advertising clause in the UCB license which Berkeley
rescinded 22 July 1999.  Proofed by myself and Theo.

Revision 1.7 / (download) - annotate - [select for diffs], Fri Aug 23 09:09:04 2002 UTC (21 years, 9 months ago) by gluk
Branch: MAIN
CVS Tags: OPENBSD_3_3_BASE, OPENBSD_3_3, OPENBSD_3_2_BASE, OPENBSD_3_2
Changes since 1.6: +4 -6 lines
Diff to previous 1.6 (colored)

- Convert function definitions to new style
- eliminate trailing whitespace
- remove casts that aren't needed.
- make rcsid strings const, for -Wall compilation.

 from tedu <grendel@zeitbombe.org>

Revision 1.6 / (download) - annotate - [select for diffs], Mon Nov 5 07:39:16 2001 UTC (22 years, 7 months ago) by mpech
Branch: MAIN
CVS Tags: OPENBSD_3_1_BASE, OPENBSD_3_1
Changes since 1.5: +3 -3 lines
Diff to previous 1.5 (colored)

kill more registers;

millert@ ok

Revision 1.5 / (download) - annotate - [select for diffs], Sat Jul 7 18:26:12 2001 UTC (22 years, 11 months ago) by deraadt
Branch: MAIN
CVS Tags: OPENBSD_3_0_BASE, OPENBSD_3_0
Changes since 1.4: +3 -3 lines
Diff to previous 1.4 (colored)

major -Wall cleanup, almost complete

Revision 1.3.10.1 / (download) - annotate - [select for diffs], Wed Jun 6 04:06:55 2001 UTC (23 years ago) by jason
Branch: OPENBSD_2_9
Changes since 1.3: +14 -9 lines
Diff to previous 1.3 (colored) next main 1.4 (colored)

Pull in patch from current:
Fix (gluk):
Fix directory state tracking.

- If the lost+found directory is created by fsck, it will do a cacheino()
  which sets the inoinfo's i_parent and i_dotdot to 0, but they never get
  set to ROOTINO. This means that propagate will never find lost+found and
  its descendents, subdirectories will remain DSTATE (instead of DFOUND)
  even though they are correctly linked in, and pass4.c will try to
  clear them unsuccessfully, thinking that there is no link count from the
  DSTATE directory's parent. The result is that you need to run fsck twice
  and get "EXTRANEOUS HARD LINK TO DIRECTORY" error (which are unexpected
  and fatal when running in preen mode). The fix is to set i_parent and
  i_dotdot to "parent" after the second cacheino() call in dir.c:allocdir().
  From NetBSD via FreeBSD.
- modify propagate() so it be able to start from any point in the tree.
- minor tweaks to get more generality in state propagation.

In other words fsck doesn't leave unremovable directories anymore.

costa@ ok.

Revision 1.4 / (download) - annotate - [select for diffs], Mon May 28 21:22:47 2001 UTC (23 years ago) by gluk
Branch: MAIN
Changes since 1.3: +14 -9 lines
Diff to previous 1.3 (colored)

Fix directory state tracking.

- If the lost+found directory is created by fsck, it will do a cacheino()
  which sets the inoinfo's i_parent and i_dotdot to 0, but they never get
  set to ROOTINO. This means that propagate will never find lost+found and
  its descendents, subdirectories will remain DSTATE (instead of DFOUND)
  even though they are correctly linked in, and pass4.c will try to
  clear them unsuccessfully, thinking that there is no link count from the
  DSTATE directory's parent. The result is that you need to run fsck twice
  and get "EXTRANEOUS HARD LINK TO DIRECTORY" error (which are unexpected
  and fatal when running in preen mode). The fix is to set i_parent and
  i_dotdot to "parent" after the second cacheino() call in dir.c:allocdir().
  From NetBSD via FreeBSD.
- modify propagate() so it be able to start from any point in the tree.
- minor tweaks to get more generality in state propagation.

In other words fsck doesn't leave unremovable directories anymore.

costa@ ok.

Revision 1.3 / (download) - annotate - [select for diffs], Mon Mar 1 07:45:18 1999 UTC (25 years, 3 months ago) by d
Branch: MAIN
CVS Tags: OPENBSD_2_9_BASE, OPENBSD_2_8_BASE, OPENBSD_2_8, OPENBSD_2_7_BASE, OPENBSD_2_7, OPENBSD_2_6_BASE, OPENBSD_2_6, OPENBSD_2_5_BASE, OPENBSD_2_5
Branch point for: OPENBSD_2_9
Changes since 1.2: +17 -2 lines
Diff to previous 1.2 (colored)

SIGINFO support

Revision 1.2 / (download) - annotate - [select for diffs], Sun Jun 23 14:30:32 1996 UTC (27 years, 11 months ago) by deraadt
Branch: MAIN
CVS Tags: OPENBSD_2_4_BASE, OPENBSD_2_4, OPENBSD_2_3_BASE, OPENBSD_2_3, OPENBSD_2_2_BASE, OPENBSD_2_2, OPENBSD_2_1_BASE, OPENBSD_2_1, OPENBSD_2_0_BASE, OPENBSD_2_0
Changes since 1.1: +2 -1 lines
Diff to previous 1.1 (colored)

update rcsid

Revision 1.1.1.1 / (download) - annotate - [select for diffs] (vendor branch), Wed Oct 18 08:43:32 1995 UTC (28 years, 7 months ago) by deraadt
CVS Tags: netbsd_1_1
Changes since 1.1: +0 -0 lines
Diff to previous 1.1 (colored)

initial import of NetBSD tree

Revision 1.1 / (download) - annotate - [select for diffs], Wed Oct 18 08:43:32 1995 UTC (28 years, 7 months ago) by deraadt
Branch: MAIN

Initial revision

This form allows you to request diff's between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.