Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 27 May 2007 10:36:05 +0800
From:      "Howard Su" <howard0su@gmail.com>
To:        "Pawel Jakub Dawidek" <pjd@freebsd.org>
Cc:        fs@freebsd.org
Subject:   Re: call for help on TMPFS
Message-ID:  <f126fae00705261936o551eadf2i7a814b5dc2e16c58@mail.gmail.com>
In-Reply-To: <20070526194000.GC27289@garage.freebsd.pl>
References:  <f126fae00705250906n42f593e5i6992c3e49d38f045@mail.gmail.com> <20070526194000.GC27289@garage.freebsd.pl>

next in thread | previous in thread | raw e-mail | index | archive | help
On 5/27/07, Pawel Jakub Dawidek <pjd@freebsd.org> wrote:
> On Sat, May 26, 2007 at 12:06:14AM +0800, Howard Su wrote:
> I think you are missing some cases in lookup where you should add
> SAVENAME flag. I'd start from adding this (or similar) assertions:
>
>         KASSERT((ap->a_cnp->cn_flags & SAVENAME), ("No SAVENAME"));
>
> to the following functions:
>
>         tmpfs_create()
>         tmpfs_remove()
>         tmpfs_mkdir()
>         tmpfs_rmdir()
>         tmpfs_rename() (assert both: fcnp and tcnp)
>         tmpfs_symlink()
>         tmpfs_link()
Thank you very much. You are right. I just fixed this long standing panic.

PS: I noticed that kernel option DIAGNOSTIC will clean ap->a_cnp with
NULL if you don't give SAVENAME. So I enable DIAGNOSTIC instead of
adding asserts.

-- 
-Howard



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