Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 17 Feb 2008 12:44:31 +0200
From:      Kostik Belousov <kostikbel@gmail.com>
To:        David Naylor <blackdragon@highveldmail.co.za>
Cc:        freebsd-stable@freebsd.org
Subject:   Re: tmpfs: strange behaviour (was: broken buildkernel (scsi_low and -Os) and duplicate manpages)
Message-ID:  <20080217104431.GN57756@deviant.kiev.zoral.com.ua>
In-Reply-To: <b53f6f940802162335t70e5ab8eqc5bd49e2453733d4@mail.gmail.com>
References:  <b53f6f940802162335t70e5ab8eqc5bd49e2453733d4@mail.gmail.com>

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

--b5bTySBq8oFySjZL
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Sun, Feb 17, 2008 at 09:35:28AM +0200, David Naylor wrote:
> On 14/02/2008, Oliver Fromme <olli@lurza.secnetix.de> wrote:
> > David Naylor wrote:
> >  > It is a strange problem, normal installworld works fine, but somehow
> >  > the duplicate manpages result in a failure when installing with
> >  > DESTDIR=3D, here are some possible reasons:
> >  >
> >  > 1) I use tmpfs when using DESTDIR (could be tmpfs does something str=
ange)
> >  > 2) Base system (compiled and installed) is compiled using -O2???
> >
> > What is the exact CFLAGS setting that you use?
> > Do you use -O2 (or -Os) without -fno-strict-aliasing?
> I have managed to isolate the problem and it is definitely tmpfs
> related.  If the directory that I'm installing into is tmpfs then it
> will fail, if it is ufs then it works.
>=20
> I recompiled tmpfs module (and reloaded) with CFLAGS=3D'' with the same r=
esult.
>=20
> As an aside I have found that the default CFLAGS for src are: -O2
> -fno-strict-aliasing -pipe.  Would -fstrict-aliasing break anything in
> base/sys?

I suspect this is a known issue. See the following commit:

delphij     2007-11-18 04:52:41 UTC

  FreeBSD src repository

  Modified files:
    sys/fs/tmpfs         tmpfs.h tmpfs_subr.c tmpfs_vfsops.c=20
                         tmpfs_vnops.c=20
  Log:
  MFp4: Several fixes to tmpfs which makes it to survive from pho@'s
  strees2 suite, to quote his letter, this change:
 =20
  1. It removes the tn_lookup_dirent stuff. I think this cannot be fixed,
     because nothing protects vnode/tmpfs node between lookup is done, and
     actual operation is performed, in the case the vnode lock is dropped.
     At least, this is the case with the from vnode for rename.
 =20
     For now, we do the linear lookup in the parent node. This has its own
     drawbacks. Not mentioning speed (that could be fixed by using hash), t=
he
     real problem is the situation where several hardlinks exist in the dvp.
     But, I think this is fixable.
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Esp. this part.
 =20
  2. The patch restores the VV_ROOT flag on the root vnode after it became
     reclaimed and allocated again. This fixes MPASS assertion at the start
     of the tmpfs_lookup() reported by many.
 =20
  Submitted by:   kib
 =20
  Revision  Changes    Path
  1.12      +2 -6      src/sys/fs/tmpfs/tmpfs.h
  1.13      +25 -3     src/sys/fs/tmpfs/tmpfs_subr.c
  1.14      +0 -1      src/sys/fs/tmpfs/tmpfs_vfsops.c
  1.12      +19 -23    src/sys/fs/tmpfs/tmpfs_vnops.c



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

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

iEYEARECAAYFAke4EA4ACgkQC3+MBN1Mb4jgcgCgs7/8yHTjrp+lDcSdqwm1thtY
lDoAmwSSHYltWWHvdWQRauYbjvdsYo3d
=veEp
-----END PGP SIGNATURE-----

--b5bTySBq8oFySjZL--



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