Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 04 Sep 2001 14:27:00 +0200
From:      Poul-Henning Kamp <phk@critter.freebsd.dk>
To:        Brent Verner <brent@rcfile.org>
Cc:        current@FreeBSD.ORG, hackers@FreeBSD.ORG
Subject:   Re: Junior Kernel Hacker task: improve vnode->v_tag 
Message-ID:  <12839.999606420@critter>
In-Reply-To: Your message of "Tue, 04 Sep 2001 08:13:37 EDT." <20010904081337.A8968@rcfile.org> 

next in thread | previous in thread | raw e-mail | index | archive | help
In message <20010904081337.A8968@rcfile.org>, Brent Verner writes:
>On 04 Sep 2001 at 10:36 (+0200), Poul-Henning Kamp wrote:
>| 
>| Assignment:
>| 
>| The v_tag element in struct vnode is a debugging aid, but unfortunately
>| it is implemented in a way which means that adding a filesystem means
>| modifying the definition in <sys/vnode.h>.
>| 
>| Convert the v_tag to an "const char *" and have the filesystems put
>| their name in there instead.
>| 
>| The v_tag has been abused a few places, easily recognizable by the fact
>| that the kernel should never inspect the value of v_tag.
>| These places should be easily changeable to use the new representation.
>| Please mark them with a big fat "/*XXX: ABUSE OF v_tag */" comment.
>
>#include <newbie_kernel_hacker_warning.h>
>
>I've done a /cursory/ look over how this v_tag is used.  I'm not sure
>this is a simple/clean as you propose, since this is used in the 
>IS_LOCKING_VFS macro, as well as in union_subr.c...

Well, that is just too bad, because IS_LOCKING_VFS is wrong then.

The places which inspect v_tag will have to be changed to use
strcmp() then...

-- 
Poul-Henning Kamp       | UNIX since Zilog Zeus 3.20
phk@FreeBSD.ORG         | TCP/IP since RFC 956
FreeBSD committer       | BSD since 4.3-tahoe    
Never attribute to malice what can adequately be explained by incompetence.

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message




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