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>
index | next in thread | previous in thread | raw e-mail
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
home |
help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?f126fae00705261936o551eadf2i7a814b5dc2e16c58>
