Re: vinum fsck wrappers strangeness

2000-11-02 Thread Adrian Chadd

On Sun, Oct 29, 2000, John W. De Boskey wrote:
 Hi,
 
I ran into an interesting gotcha with fsck and vinum...
 
I have the following line in /etc/fstab:
 
 /dev/vinum/raid5/pubufs rw  2   2
 
and during an upgrade (old current to current), I commented the
 line out during the reboot process. After bringing the new system
 online, I executed:
 
 /sbin/fsck -y /dev/vinum/raid5
 
 and received the following error:
 
 fsck: exec /usr/sbin/fsck_unused for /dev/vinum/raid5: No such file or directory

OK. That means that the disklabel checks are failing for type 'vinum'. I'll
take a look at this.

What you should be doing is running fsck with a type, ie

fsck -t ufs /dev/vinum/raid5

So, it appears that fsck is attempting to determine a file
 system type, tries to use /etc/fstab, and then falls back to
 a secondary scheme. In the secondary scheme, ufs is what we want,
 but vinum is what we're getting.
 
If anyone has any information about this please let me know. I'll
 try to look into it tomorrow.

I'll try fix the autodetect for vinum partition types (if its possible,
I seem to remember there being a vinum type in the header files).
Its weird though, I would have thought a vinum device would be type
FSTYPE (eg BSD4.3) rather than VINUM, which I'd associate with
the underlying devices ..



Adrian

-- 
Adrian Chadd"Programming is like sex:
[EMAIL PROTECTED]   One mistake and you have to support for
a lifetime." -- rec.humor.funny



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



vinum fsck wrappers strangeness

2000-10-29 Thread John W. De Boskey

Hi,

   I ran into an interesting gotcha with fsck and vinum...

   I have the following line in /etc/fstab:

/dev/vinum/raid5/pubufs rw  2   2

   and during an upgrade (old current to current), I commented the
line out during the reboot process. After bringing the new system
online, I executed:

/sbin/fsck -y /dev/vinum/raid5

and received the following error:

fsck: exec /usr/sbin/fsck_unused for /dev/vinum/raid5: No such file or directory

   Knowing that I've been able to fsck this volume in the
past I checked for a vinum specific fsck binary. Nothing
there. It then occurred to me it's a ufs volume, and I've
always fsck'd it by mount point. I then uncommented the
line in /etc/fstab and executed: 

/sbin/fsck -y /pub

and it worked correctly.

   After the above (with the /etc/fstab line uncommented), I
re-executed:o

/sbin/fsck -y /dev/vinum/raid5

   and it worked correctly.

   So, it appears that fsck is attempting to determine a file
system type, tries to use /etc/fstab, and then falls back to
a secondary scheme. In the secondary scheme, ufs is what we want,
but vinum is what we're getting.

   If anyone has any information about this please let me know. I'll
try to look into it tomorrow.

Thanks,
John






To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: vinum fsck wrappers strangeness

2000-10-29 Thread Bruce Evans

On Sun, 29 Oct 2000, John W. De Boskey wrote:

I ran into an interesting gotcha with fsck and vinum...
 
I have the following line in /etc/fstab:
 
 /dev/vinum/raid5/pubufs rw  2   2
 
and during an upgrade (old current to current), I commented the
 line out during the reboot process. After bringing the new system
 online, I executed:
 
 /sbin/fsck -y /dev/vinum/raid5
 
 and received the following error:
 
 fsck: exec /usr/sbin/fsck_unused for /dev/vinum/raid5: No such file or directory

I saw a related problem with mfs.  I had the following lines in /etc/fstab:

---
#/dev/ad0s4 noneswapsw

/dev/ad0s4  /tmpmfs rw,-s65536,-i8192,noatime,noauto
---

The mfs line has very little to do with /dev/ad0s4 or swap.  The label
for /dev/ad0s4 just provides a (bogus) geometry for mfs.  I wasn't
using /dev/ad0s4 for either swap or mfs, but it happened to have a
filesystem on it, and when I tried to fsck this, fsck attempted to
exec the nonexistent file fsck_mfs.

Bruce



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



HEADS UP: fsck wrappers gotcha

2000-10-13 Thread Adrian Chadd


As pointed out by mr Sobolev, the fsck wrappers will blindly try to execute
fsck_$FS regardless of whether its there or not, and fail if it isn't.
This is a gotcha for non-fsck'able fses right now, such as nfs and ntfs.

The solution, which I forgot to add in my email, is to set pass to 0. This
forces fsck to NOT consider the FS for fsck-on-boot, and should make things
quieter.

Note that swap / procfs in /etc/fstab already use dump/pass = 0, but this is
just to make sure.

Just FYI,


Adrian

-- 
Adrian Chadd"The main reason Santa is so jolly is
[EMAIL PROTECTED]   because he knows where all the bad girls
live." -- Random IRC quote



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



fsck wrappers, commit candidate

2000-10-02 Thread Adrian Chadd

 
 On Sun, Sep 24, 2000, Adrian Chadd wrote:
  On Sun, Sep 24, 2000, Kris Kennaway wrote:
  
The trouble is that some of the FS strings have spaces in their filenames.
This might confuse a few people.
   
   How about mapping spaces to '_' characters - I doubt it would cause any
   namespace collisions.
  
  Yes, as bp mentioned to me before, so I'm thinking about passing the fsname
  through a tolower() and a s/ /_/g before using it as a filename.
  
  Any problems with this?
 
 Ok, I've since done this and I've updated the tarball again at
 http://people.freebsd.org/~adrian/fsck/ . This is the version which I would
 like to commit, so I'd like some feedback beforehand.
 
 
 Thanks!
 
 
 
 Adrian
 
 -- 
 Adrian Chadd   "The main reason Santa is so jolly is
 [EMAIL PROTECTED]  because he knows where all the bad girls
live." -- Random IRC quote



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: Fsck wrappers, revisited

2000-09-28 Thread Adrian Chadd

On Tue, Sep 26, 2000, Bruce Evans wrote:

  Well, if you have any suggestions, I'm all for it. :-)
 
 I don't understand the problem.  You get the filesystem type name
 (fstypename) from fs_vfstype in struct fstab or from f_fstypename in
 struct statfs.  You attempt to execute strcat("/sbin/fsck_", fstypename)
 to see if fsck is supported on filesystems of type fstypename.

You don't try to auto-detect and fsck a mounted FS. If its mounted and you
are doing it during bootup, it'll generally be in fstab which the current
wrapper code looks in.

So, the question is: how do you take the raw disk device and figure out which
FS type it is, and then which fsck program to run?



Adrian

-- 
Adrian Chadd"The main reason Santa is so jolly is
[EMAIL PROTECTED]   because he knows where all the bad girls
live." -- Random IRC quote



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: Fsck wrappers, revisited

2000-09-25 Thread Bruce Evans

On Sat, 23 Sep 2000, Adrian Chadd wrote:

 On Sat, Sep 23, 2000, Bruce Evans wrote:
  On Sat, 23 Dec 2000, Adrian Chadd wrote:
  
   Here's the patch:
   
   --- fsck.c.orig Sat Dec 23 11:13:30 2000
   +++ fsck.c  Sat Dec 23 11:13:34 2000
   @@ -501,7 +501,7 @@
   errx(1, "partition `%s' is not of a legal vfstype",
   str);
   -   if ((vfstype = dktypenames[t]) == NULL)
   +   if ((vfstype = fstypenames[t]) == NULL)
   errx(1, "vfstype `%s' on partition `%s' is not supported",
   fstypenames[t], str);
   
   
   So now is a problem which I'm sure the NetBSD people came up against.
   The fstypenames are names like 4.2BSD, vinum, ISO9660, etc. NetBSD fixed
   this by creating a new list 'mountnames[]', which maps the fs type to
   a string.
  
  fs typenames are already strings in FreeBSD (the kernel's vfc_index is an
  implementation detail which should not be visible in applications).
 
 Oh, wait. I understand what you're talking about now. There isn't any mapping
 to partition type (p_fstype) to fs typename string.
 
   
http://cvsweb.netbsd.org/bsdweb.cgi/syssrc/sys/sys/disklabel.h.diff?r1=1.60r2=1.61
   
   What do people think about doing this as well? It would certainly make things
   a little tidier, but every time a new fs comes in the magic autodetection code
   will need to be updated (if appropriate, of course.)
  
  This would be a bug.
 
 Well, if you have any suggestions, I'm all for it. :-)

I don't understand the problem.  You get the filesystem type name
(fstypename) from fs_vfstype in struct fstab or from f_fstypename in
struct statfs.  You attempt to execute strcat("/sbin/fsck_", fstypename)
to see if fsck is supported on filesystems of type fstypename.

Bruce



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: Fsck wrappers, revisited

2000-09-25 Thread Bruce Evans

On Sun, 24 Sep 2000, Adrian Chadd wrote:

 On Sun, Sep 24, 2000, Kris Kennaway wrote:
 
   The trouble is that some of the FS strings have spaces in their filenames.
   This might confuse a few people.
  
  How about mapping spaces to '_' characters - I doubt it would cause any
  namespace collisions.
 
 Yes, as bp mentioned to me before, so I'm thinking about passing the fsname
 through a tolower() and a s/ /_/g before using it as a filename.
 
 Any problems with this?

This shouldn't be necessary.  All fstypenames for currently supported
filesystems are in lower case with no underscores, and new ones should
follow this convention.  Spaces in the names would probably break
/etc/fstab.

Fstypenames for currently supported filesystems as found by grepping for
VFS_SET in /sys:
cd9660 coda devfs ext2fs fdesc hpfs kernfs linprocfs mfs msdos nfs ntfs
ntfs nullfs nwfs portal procfs ufs umap union

Bruce



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: Fsck wrappers, revisited

2000-09-24 Thread Kris Kennaway

On Sat, 23 Dec 2000, Adrian Chadd wrote:

 On Fri, Sep 22, 2000, Boris Popov wrote:
  On Sat, 23 Dec 2000, Adrian Chadd wrote:
  
   So now is a problem which I'm sure the NetBSD people came up against.
   The fstypenames are names like 4.2BSD, vinum, ISO9660, etc. NetBSD fixed
   this by creating a new list 'mountnames[]', which maps the fs type to
   a string.
  
  Probably a hard link to fsck_ffs will do the job fine and makes it
  clear to see which fs'es are supported:
  
  # ls -ail fsck*
  6338 -r-xr-xr-x  1 root  wheel   66032 22 sen 16:24 fsck
  6334 -r-xr-xr-x  3 root  wheel  290896 22 sen 15:41 fsck_4.2BSD
  6334 -r-xr-xr-x  3 root  wheel  290896 22 sen 15:41 fsck_ffs
  6334 -r-xr-xr-x  3 root  wheel  290896 22 sen 15:41 fsck_ufs
 
 The trouble is that some of the FS strings have spaces in their filenames.
 This might confuse a few people.

How about mapping spaces to '_' characters - I doubt it would cause any
namespace collisions.

Kris

--
In God we Trust -- all others must submit an X.509 certificate.
-- Charles Forsythe [EMAIL PROTECTED]



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: Fsck wrappers, revisited

2000-09-23 Thread Adrian Chadd

On Sat, Sep 23, 2000, Bruce Evans wrote:
 On Sat, 23 Dec 2000, Adrian Chadd wrote:
 
  Here's the patch:
  
  --- fsck.c.orig Sat Dec 23 11:13:30 2000
  +++ fsck.c  Sat Dec 23 11:13:34 2000
  @@ -501,7 +501,7 @@
  errx(1, "partition `%s' is not of a legal vfstype",
  str);
  -   if ((vfstype = dktypenames[t]) == NULL)
  +   if ((vfstype = fstypenames[t]) == NULL)
  errx(1, "vfstype `%s' on partition `%s' is not supported",
  fstypenames[t], str);
  
  
  So now is a problem which I'm sure the NetBSD people came up against.
  The fstypenames are names like 4.2BSD, vinum, ISO9660, etc. NetBSD fixed
  this by creating a new list 'mountnames[]', which maps the fs type to
  a string.
 
 fs typenames are already strings in FreeBSD (the kernel's vfc_index is an
 implementation detail which should not be visible in applications).

Oh, wait. I understand what you're talking about now. There isn't any mapping
to partition type (p_fstype) to fs typename string.

  http://cvsweb.netbsd.org/bsdweb.cgi/syssrc/sys/sys/disklabel.h.diff?r1=1.60r2=1.61
  
  What do people think about doing this as well? It would certainly make things
  a little tidier, but every time a new fs comes in the magic autodetection code
  will need to be updated (if appropriate, of course.)
 
 This would be a bug.

Well, if you have any suggestions, I'm all for it. :-)





Adrian


-- 
Adrian Chadd"The main reason Santa is so jolly is
[EMAIL PROTECTED]   because he knows where all the bad girls
live." -- Random IRC quote



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: Fsck wrappers, revisited

2000-09-22 Thread Adrian Chadd

On Fri, Dec 22, 2000, Adrian Chadd wrote:
 
 
 I've updated my fsck wrappers patchset to the latest netbsd and freebsd
 fsck patches. I'd appreciate some feedback on them before I run off
 and commit them (with my mentor, of course.)
 
 For those who aren't in the know, the general idea is that a single wrapper
 program spawns a FS-specific fsck process a la mount and mount_*, making
 multiple-FS support a lot easier. (Think about having fsck_ext2fs, fsck_msdos
 and fsck_ffs doing your FSes on bootup..)
 
 They can be found at http://www.freebsd.org/~adrian/fsck/ . PLEASE read the
 README before you use them, as there are a few gotchas.

Thanks to some feedback from bp, I found a stupid mistake in my porting.

Here's the patch:

--- fsck.c.orig Sat Dec 23 11:13:30 2000
+++ fsck.c  Sat Dec 23 11:13:34 2000
@@ -501,7 +501,7 @@
errx(1, "partition `%s' is not of a legal vfstype",
str);
-   if ((vfstype = dktypenames[t]) == NULL)
+   if ((vfstype = fstypenames[t]) == NULL)
errx(1, "vfstype `%s' on partition `%s' is not supported",
fstypenames[t], str);


So now is a problem which I'm sure the NetBSD people came up against.
The fstypenames are names like 4.2BSD, vinum, ISO9660, etc. NetBSD fixed
this by creating a new list 'mountnames[]', which maps the fs type to
a string.

http://cvsweb.netbsd.org/bsdweb.cgi/syssrc/sys/sys/disklabel.h.diff?r1=1.60r2=1.61

What do people think about doing this as well? It would certainly make things
a little tidier, but every time a new fs comes in the magic autodetection code
will need to be updated (if appropriate, of course.)





Adrian


-- 
Adrian Chadd"The main reason Santa is so jolly is
[EMAIL PROTECTED]   because he knows where all the bad girls
live." -- Random IRC quote



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: Fsck wrappers, revisited

2000-09-22 Thread Boris Popov

On Sat, 23 Dec 2000, Adrian Chadd wrote:

 So now is a problem which I'm sure the NetBSD people came up against.
 The fstypenames are names like 4.2BSD, vinum, ISO9660, etc. NetBSD fixed
 this by creating a new list 'mountnames[]', which maps the fs type to
 a string.

Probably a hard link to fsck_ffs will do the job fine and makes it
clear to see which fs'es are supported:

# ls -ail fsck*
6338 -r-xr-xr-x  1 root  wheel   66032 22 ÓÅÎ 16:24 fsck
6334 -r-xr-xr-x  3 root  wheel  290896 22 ÓÅÎ 15:41 fsck_4.2BSD
6334 -r-xr-xr-x  3 root  wheel  290896 22 ÓÅÎ 15:41 fsck_ffs
6334 -r-xr-xr-x  3 root  wheel  290896 22 ÓÅÎ 15:41 fsck_ufs

--
Boris Popov
http://www.butya.kz/~bp/



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: Fsck wrappers, revisited

2000-09-22 Thread Adrian Chadd

On Fri, Sep 22, 2000, Boris Popov wrote:
 On Sat, 23 Dec 2000, Adrian Chadd wrote:
 
  So now is a problem which I'm sure the NetBSD people came up against.
  The fstypenames are names like 4.2BSD, vinum, ISO9660, etc. NetBSD fixed
  this by creating a new list 'mountnames[]', which maps the fs type to
  a string.
 
   Probably a hard link to fsck_ffs will do the job fine and makes it
 clear to see which fs'es are supported:
 
 # ls -ail fsck*
 6338 -r-xr-xr-x  1 root  wheel   66032 22 sen 16:24 fsck
 6334 -r-xr-xr-x  3 root  wheel  290896 22 sen 15:41 fsck_4.2BSD
 6334 -r-xr-xr-x  3 root  wheel  290896 22 sen 15:41 fsck_ffs
 6334 -r-xr-xr-x  3 root  wheel  290896 22 sen 15:41 fsck_ufs

The trouble is that some of the FS strings have spaces in their filenames.
This might confuse a few people.




Adrian

-- 
Adrian Chadd"The main reason Santa is so jolly is
[EMAIL PROTECTED]   because he knows where all the bad girls
live." -- Random IRC quote



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: Fsck wrappers, revisited

2000-09-22 Thread Adrian Chadd

On Fri, Dec 22, 2000, Adrian Chadd wrote:
 
 
 I've updated my fsck wrappers patchset to the latest netbsd and freebsd
 fsck patches. I'd appreciate some feedback on them before I run off
 and commit them (with my mentor, of course.)
 
 For those who aren't in the know, the general idea is that a single wrapper
 program spawns a FS-specific fsck process a la mount and mount_*, making
 multiple-FS support a lot easier. (Think about having fsck_ext2fs, fsck_msdos
 and fsck_ffs doing your FSes on bootup..)
 
 They can be found at http://www.freebsd.org/~adrian/fsck/ . PLEASE read the
 README before you use them, as there are a few gotchas.

.. and I've just redone them again, with more bp comments. I've killed
fsck_ffs/preen.c and moved the only function the fsck_ffs code now uses
to a new util.c . This makes fsck_ffs a tiny bit smaller, and pretty much
stomps on the shared code problem.

Anyone else up for testing ?




Adrian


-- 
Adrian Chadd"The main reason Santa is so jolly is
[EMAIL PROTECTED]   because he knows where all the bad girls
live." -- Random IRC quote



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: Fsck wrappers, revisited

2000-09-22 Thread Boris Popov

On Sat, 23 Dec 2000, Adrian Chadd wrote:

 On Fri, Sep 22, 2000, Boris Popov wrote:
  On Sat, 23 Dec 2000, Adrian Chadd wrote:
  
   So now is a problem which I'm sure the NetBSD people came up against.
   The fstypenames are names like 4.2BSD, vinum, ISO9660, etc. NetBSD fixed
   this by creating a new list 'mountnames[]', which maps the fs type to
   a string.
  
  Probably a hard link to fsck_ffs will do the job fine and makes it
  clear to see which fs'es are supported:
  
  # ls -ail fsck*
  6338 -r-xr-xr-x  1 root  wheel   66032 22 sen 16:24 fsck
  6334 -r-xr-xr-x  3 root  wheel  290896 22 sen 15:41 fsck_4.2BSD
  6334 -r-xr-xr-x  3 root  wheel  290896 22 sen 15:41 fsck_ffs
  6334 -r-xr-xr-x  3 root  wheel  290896 22 sen 15:41 fsck_ufs
 
 The trouble is that some of the FS strings have spaces in their filenames.
 This might confuse a few people.

These (and probably other confusing) characters can be replaced
with underscores without much harm.

--
Boris Popov
http://www.butya.kz/~bp/



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: Fsck wrappers, revisited

2000-09-22 Thread Adrian Chadd

On Fri, Sep 22, 2000, Boris Popov wrote:
 On Sat, 23 Dec 2000, Adrian Chadd wrote:
 
  On Fri, Sep 22, 2000, Boris Popov wrote:
   On Sat, 23 Dec 2000, Adrian Chadd wrote:
   
So now is a problem which I'm sure the NetBSD people came up against.
The fstypenames are names like 4.2BSD, vinum, ISO9660, etc. NetBSD fixed
this by creating a new list 'mountnames[]', which maps the fs type to
a string.
   
 Probably a hard link to fsck_ffs will do the job fine and makes it
   clear to see which fs'es are supported:
   
   # ls -ail fsck*
   6338 -r-xr-xr-x  1 root  wheel   66032 22 sen 16:24 fsck
   6334 -r-xr-xr-x  3 root  wheel  290896 22 sen 15:41 fsck_4.2BSD
   6334 -r-xr-xr-x  3 root  wheel  290896 22 sen 15:41 fsck_ffs
   6334 -r-xr-xr-x  3 root  wheel  290896 22 sen 15:41 fsck_ufs
  
  The trouble is that some of the FS strings have spaces in their filenames.
  This might confuse a few people.
 
   These (and probably other confusing) characters can be replaced
 with underscores without much harm.

That shouldn't be that hard to do. What do others think?




Adrian

-- 
Adrian Chadd"The main reason Santa is so jolly is
[EMAIL PROTECTED]   because he knows where all the bad girls
live." -- Random IRC quote



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: Fsck wrappers, revisited

2000-09-22 Thread Bruce Evans

On Sat, 23 Dec 2000, Adrian Chadd wrote:

 Here's the patch:
 
 --- fsck.c.orig Sat Dec 23 11:13:30 2000
 +++ fsck.c  Sat Dec 23 11:13:34 2000
 @@ -501,7 +501,7 @@
 errx(1, "partition `%s' is not of a legal vfstype",
 str);
 -   if ((vfstype = dktypenames[t]) == NULL)
 +   if ((vfstype = fstypenames[t]) == NULL)
 errx(1, "vfstype `%s' on partition `%s' is not supported",
 fstypenames[t], str);
 
 
 So now is a problem which I'm sure the NetBSD people came up against.
 The fstypenames are names like 4.2BSD, vinum, ISO9660, etc. NetBSD fixed
 this by creating a new list 'mountnames[]', which maps the fs type to
 a string.

fs typenames are already strings in FreeBSD (the kernel's vfc_index is an
implementation detail which should not be visible in applications).

 http://cvsweb.netbsd.org/bsdweb.cgi/syssrc/sys/sys/disklabel.h.diff?r1=1.60r2=1.61
 
 What do people think about doing this as well? It would certainly make things
 a little tidier, but every time a new fs comes in the magic autodetection code
 will need to be updated (if appropriate, of course.)

This would be a bug.

Bruce



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Fsck wrappers, revisited

2000-09-21 Thread Adrian Chadd



I've updated my fsck wrappers patchset to the latest netbsd and freebsd
fsck patches. I'd appreciate some feedback on them before I run off
and commit them (with my mentor, of course.)

For those who aren't in the know, the general idea is that a single wrapper
program spawns a FS-specific fsck process a la mount and mount_*, making
multiple-FS support a lot easier. (Think about having fsck_ext2fs, fsck_msdos
and fsck_ffs doing your FSes on bootup..)

They can be found at http://www.freebsd.org/~adrian/fsck/ . PLEASE read the
README before you use them, as there are a few gotchas.

Thanks!



Adrian

-- 
Adrian Chadd"The main reason Santa is so jolly is
[EMAIL PROTECTED]   because he knows where all the bad girls
live." -- Random IRC quote



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: fsck wrappers

2000-06-22 Thread Adrian Chadd



I've integrated fsck and fsck_ffs into my local world tree, and
make buildworld/installworld seems to work ok. I've shifted the
tarball and diff to http://www.freebsd.org/~adrian/fsck/ . Can
people please prod it and see what I've missed ?



Thanks,

Adrian

-- 
Adrian ChaddBuild a man a fire, and he's warm for the
[EMAIL PROTECTED]rest of the evening. Set a man on fire and
he's warm for the rest of his life.



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: fsck wrappers

2000-06-20 Thread Poul-Henning Kamp

In message [EMAIL PROTECTED], Anatoly Vorobey writes:
On Mon, Jun 19, 2000 at 01:42:33PM +0200, Adrian Chadd wrote:
 
 * the rest of the system treats ffs filesystems as "ufs". Besides the
   fact that I dislike this, I decided against the NetBSD way of

Isn't it time, anyway, to fix this? This legacy dates from long
time ago; e.g. the log message in the kernel code which declares
the ffs module (it reads: `` Call ffs ``ufs'' for the benefit of poor, 
confused user-land programs. '') dates to September '94.

Are there any arguments against changing the filesystem type name to
'ffs' in the kernel and in the userland? If not, I'll volunteer to
find all kernel/userland uses I can and provide a diff.

The correct way to do this is to make it accept both for some
limited time, and then warn about the obsolete for a few months,
then discontinue it.


--
Poul-Henning Kamp   | UNIX since Zilog Zeus 3.20
[EMAIL PROTECTED] | TCP/IP since RFC 956
FreeBSD coreteam member | BSD since 4.3-tahoe
Never attribute to malice what can adequately be explained by incompetence.


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: fsck wrappers

2000-06-20 Thread Adrian Chadd

On Tue, Jun 20, 2000, Poul-Henning Kamp wrote:
 In message [EMAIL PROTECTED], Anatoly Vorobey writes:
 On Mon, Jun 19, 2000 at 01:42:33PM +0200, Adrian Chadd wrote:
  
  * the rest of the system treats ffs filesystems as "ufs". Besides the
fact that I dislike this, I decided against the NetBSD way of
 
 Isn't it time, anyway, to fix this? This legacy dates from long
 time ago; e.g. the log message in the kernel code which declares
 the ffs module (it reads: `` Call ffs ``ufs'' for the benefit of poor, 
 confused user-land programs. '') dates to September '94.
 
 Are there any arguments against changing the filesystem type name to
 'ffs' in the kernel and in the userland? If not, I'll volunteer to
 find all kernel/userland uses I can and provide a diff.
 
 The correct way to do this is to make it accept both for some
 limited time, and then warn about the obsolete for a few months,
 then discontinue it.

Thats one thing that has always bugged me too, but I was thinking about
fixing that after the fsck wrappers. Thinking in hindsight, it might be
easier to change ufs to ffs in the fsck wrapper right now, and then
once the wrapper is stable worry about moving ufs to ffs. I would rather
not have both happen right now, as doing ufs-ffs requires kernel
changes and userland (mount) changes.



Adrian

-- 
Adrian ChaddBuild a man a fire, and he's warm for the
[EMAIL PROTECTED]rest of the evening. Set a man on fire and
he's warm for the rest of his life.



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: fsck wrappers

2000-06-20 Thread Bruce Evans

On Mon, 19 Jun 2000, Adrian Chadd wrote:

 Watching my machine boot, the parallel nature of this fsck is now
 confusing the output, eg:
 
 Automatic reboot in progress...
 ** /dev/ad0s1a
 ** Last Mounted on /
 ** Root file system
 ** Phase 1 - Check Blocks and Sizes
 de0: enabling 10baseT port
 ** Phase 2 - Check Pathnames
 ** Phase 3 - Check Connectivity
 ** Phase 4 - Check Reference Counts
 ** Phase 5 - Check Cyl groups
 1506 files, 57594 used, 10837 free (285 frags, 1319 blocks, 0.4% fragmentation)
 ** /dev/amrd0a
 ** /dev/ad0s1f
 ** Last Mounted on /cache
 ** Phase 1 - Check Blocks and Sizes
 ** Last Mounted on /usr
 ** Phase 1 - Check Blocks and Sizes
 ...

 Would people object to fsck printing out either the mountpoint or the
 devname (where appropriate) prepending each line of fsck_ffs ?

Yes, if it is down for anything except the parallel (preen) case.

How did you get all the above output?  The current fsck doesn't print
any "Phase" messages for the preen case.  When these messages are
printed, interactive input is required except in the -y case, so the
processes can't be run in parallel.

Bruce



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: fsck wrappers

2000-06-20 Thread Adrian Chadd

On Tue, Jun 20, 2000, Bruce Evans wrote:
 On Mon, 19 Jun 2000, Adrian Chadd wrote:
 
  Watching my machine boot, the parallel nature of this fsck is now
  confusing the output, eg:
  
  Automatic reboot in progress...
  ** /dev/ad0s1a
  ** Last Mounted on /
  ** Root file system
  ** Phase 1 - Check Blocks and Sizes
  de0: enabling 10baseT port
  ** Phase 2 - Check Pathnames
  ** Phase 3 - Check Connectivity
  ** Phase 4 - Check Reference Counts
  ** Phase 5 - Check Cyl groups
  1506 files, 57594 used, 10837 free (285 frags, 1319 blocks, 0.4% fragmentation)
  ** /dev/amrd0a
  ** /dev/ad0s1f
  ** Last Mounted on /cache
  ** Phase 1 - Check Blocks and Sizes
  ** Last Mounted on /usr
  ** Phase 1 - Check Blocks and Sizes
  ...
 
  Would people object to fsck printing out either the mountpoint or the
  devname (where appropriate) prepending each line of fsck_ffs ?
 
 Yes, if it is down for anything except the parallel (preen) case.
 
 How did you get all the above output?  The current fsck doesn't print
 any "Phase" messages for the preen case.  When these messages are
 printed, interactive input is required except in the -y case, so the
 processes can't be run in parallel.

A couple of oversights when I did the code merging. They've been fixed,
and I'll throw up a new copy of the source code at the same URL in about
an hour.



Adrian

-- 
Adrian ChaddBuild a man a fire, and he's warm for the
[EMAIL PROTECTED]rest of the evening. Set a man on fire and
he's warm for the rest of his life.



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



fsck wrappers

2000-06-19 Thread Adrian Chadd


I've ported the NetBSD fsck wrapper to compile and run under FreeBSD.
Its probably still very rough, but I'm going to spend the next few
days tidying it up. I have also modified our fsck (and renamed it
fsck_ffs) to fit this new framework.

The source tarball can be found at:

http://www.freebsd.org/~adrian/fsck.tar.gz

A couple of notes:

* the rest of the system treats ffs filesystems as "ufs". Besides the
  fact that I dislike this, I decided against the NetBSD way of

  if (strcmp(vfstype, "ufs")) fstype = "ffs";

  and have left people to symlink or hardlink fsck_ufs to fsck_ffs.

* I've left the CVS directories intact so people can generate their
  own cvs diff's against the original sources. Appropriate CVSROOT
  frobbing will be needed.

Constructive comments are welcome.



Adrian



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: fsck wrappers

2000-06-19 Thread David O'Brien

On Mon, Jun 19, 2000 at 01:42:33PM +0200, Adrian Chadd wrote:
 I've ported the NetBSD fsck wrapper to compile and run under FreeBSD.

Can you summerize what this does, or does better than what we do today?

-- 
-- David  ([EMAIL PROTECTED])


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: fsck wrappers

2000-06-19 Thread Adrian Chadd

On Mon, Jun 19, 2000, David O'Brien wrote:
 On Mon, Jun 19, 2000 at 01:42:33PM +0200, Adrian Chadd wrote:
  I've ported the NetBSD fsck wrapper to compile and run under FreeBSD.
 
 Can you summerize what this does, or does better than what we do today?

The idea is the same as mount and its helpers - adding new fsck types
doesn't require modifying the startup scripts or fsck. Think of a system
where you have an FFS fs, an LFS fs, and perhaps an IFS fs. Each one
requires a seperate fsck, but it would be stupid to have fsck_* -p in
the rc scripts.

Eventually FreeBSD systems will have more than just FFS based filesystems
running the system, and users will want to fsck them just like a FFS
filesystem.



adrian

-- 
Adrian ChaddBuild a man a fire, and he's warm for the
[EMAIL PROTECTED]rest of the evening. Set a man on fire and
he's warm for the rest of his life.



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: fsck wrappers

2000-06-19 Thread Anatoly Vorobey

On Mon, Jun 19, 2000 at 09:59:15PM -0400, Brian Hechinger wrote:
 but isn't there wisdom in implementing the wrapper as well?  we won't be
 using ffs forever (log based file system please!! *G*)

Sure there is, I'm all for the wrapper. I just want "ufs is really ffs"
to go away as well, and am using the opportunity that the issue surfaced
up.

I think the wrapper is a great idea, and reporting the mountpoint etc.,
asked about in a separate message, is great as well.

-- 
Anatoly Vorobey,
[EMAIL PROTECTED] http://pobox.com/~mellon/
"Angels can fly because they take themselves lightly" - G.K.Chesterton


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message