Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 28 Oct 2002 11:56:19 -0500 (EST)
From:      John Baldwin <jhb@FreeBSD.org>
To:        Joe Marcus Clarke <marcus@marcuscom.com>
Cc:        current@FreeBSD.org, Nate Lawson <nate@root.org>
Subject:   Re: libgtop port and v_tag changes
Message-ID:  <XFMail.20021028115619.jhb@FreeBSD.org>
In-Reply-To: <1035610607.1601.25.camel@shumai.marcuscom.com>

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

On 26-Oct-2002 Joe Marcus Clarke wrote:
> On Fri, 2002-10-25 at 14:15, John Baldwin wrote:
>> Well, here's the thing.  If libgtop is intended to be used only with live
>> kernels then it might be a better idea to use xvnode's that you get with
>> from the kernel.  Alternatively, you could grab the inode and dev number
>> the same way the sysctl handler does:
>> 
>>                         switch (vp->v_type) {
>>                         case VREG:
>>                         case VDIR:
>>                         case VLNK:
>>                                 xvn[n].xv_dev = vp->v_cachedfs;
>>                                 xvn[n].xv_ino = vp->v_cachedid;
>> 
>> i.e., you could look at those members of struct vnode instead of trying
>> to dig into the details of a UFS inode structure in v_data.  This
>> would remove the need to look at v_tag at all.
> 
> I can certainly do it this way, but would it be equivalent to the
> existing code?  It doesn't seem like it would be.  At least using the
> kvm_read method, we get similar behavior for both -stable and -CURRENT. 
> Correct me if I'm wrong, but the current code is looking at UFS inodes,
> where as you're suggesting to look at generic vnodes.

Yes.  This means that you don't need to even look at v_tag to see
if it is a UFS vnode or not.  What does libgtop want with
device and inode numbers anways?  Does it actually do anything
useful with them or does it just print them somewhere?  Is a user
going to care if the inode number was obtained from the vnode
or if we groveled in the internals of UFS to find it?

-- 

John Baldwin <jhb@FreeBSD.org>  <><  http://www.FreeBSD.org/~jhb/
"Power Users Use the Power to Serve!"  -  http://www.FreeBSD.org/

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




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