Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 8 Jul 2006 23:53:21 +0200
From:      Pawel Jakub Dawidek <pjd@FreeBSD.org>
To:        Scott Long <scottl@samsco.org>
Cc:        Craig Rodrigues <rodrigc@crodrigues.org>, freebsd-current@freebsd.org, freebsd-arch@freebsd.org
Subject:   Re: [RFC] mount can figure out fstype automatically
Message-ID:  <20060708215321.GJ16201@garage.freebsd.pl>
In-Reply-To: <44B00011.9050902@samsco.org>
References:  <20060708152801.GA3671@crodrigues.org> <44AFD7DF.8090002@errno.com> <20060708161719.GB3871@crodrigues.org> <44B00011.9050902@samsco.org>

next in thread | previous in thread | raw e-mail | index | archive | help

--Swj79WlilW4BQYVz
Content-Type: text/plain; charset=iso-8859-2
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Sat, Jul 08, 2006 at 12:57:21PM -0600, Scott Long wrote:
> Craig Rodrigues wrote:
>=20
> >On Sat, Jul 08, 2006 at 09:05:51AM -0700, Sam Leffler wrote:
> >>Linux has -t auto; haven't looked at how it works.
> >I didn't want to implement -t auto, in
> >case that would confuse things in case someone gets around
> >to implementing autofs for FreeBSD, so I just used -t "".
> >>It appears you just try a series of fs types; can't you read the device
> >>to infer the filesystem?
> >I was thinking of doing something like that.  You can basically
> >get the same info by doing something like:
> >file - < /dev/ad0s1e
> >/dev/stdin: Unix Fast File system (little-endian)
> >file - < /dev/ad0s4
> >/dev/stdin: SGI XFS filesystem
> >I leaned away from this approach in mount(8) because:
> >- I didn't want to tie mount(8) to file(1)
> >- I didn't want to build up a table of known superblocks
> >  inside mount(8) because every time a new filesystem is
> >  added to FreeBSD, mount(8) would need to be updated
> >If there was a way, maybe at the GEOM or filesystem level to
> >"taste" what type of filesystem existed on a device, and/or
> >have a filesystem advertise what type of superblock it has,
> >then that would be a nice way to do it, but I couldn't figure
> >out a way to easily do it.
>=20
> Well, by running through a list of possible filesystems and trying
> each one, you are effectively 'tasting' them.  In a brute force way,
> but still the exact same idea. [...]

One thing I don't like about this idea, is that simple mount(8) command
will load all file system kernel modules if we give for example device
with no file system on it.
Currently I think there is no way to tell from userland mount(8) that
because of our call, the kernel has loaded file system module.
We could load it from mount(8) instead of waiting for the kernel to do
it and then unload if we don't such such file system on the given
device...

> [...] But really, it's not like filesystems
> are sprouting up every day, so I don't see the need to spend a lot of
> time making this elegant and highly extensible.

What Craig was trying to do over the last few weeks/months was to remove
file systems specific code out of mount(8), so this will be a step
backwards, I think...

--=20
Pawel Jakub Dawidek                       http://www.wheel.pl
pjd@FreeBSD.org                           http://www.FreeBSD.org
FreeBSD committer                         Am I Evil? Yes, I Am!

--Swj79WlilW4BQYVz
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.2 (FreeBSD)

iD8DBQFEsClRForvXbEpPzQRAoV3AKDmDsSBmqUrx3XTAaQVPvQFdmlcNACfXCbJ
smXjBDifzfy6uvxbTc+12+E=
=K68X
-----END PGP SIGNATURE-----

--Swj79WlilW4BQYVz--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20060708215321.GJ16201>