Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 25 May 2007 02:04:18 -0500
From:      Alan Cox <alc@cs.rice.edu>
To:        attilio@FreeBSD.org
Cc:        alc@freebsd.org, arch@freebsd.org, Jeff Roberson <jeff@freebsd.org>, Bruce Evans <bde@optusnet.com.au>
Subject:   Re: sched_lock && thread_lock()
Message-ID:  <46568A72.3020406@cs.rice.edu>
In-Reply-To: <4655C67A.9060000@FreeBSD.org>
References:  <20070520155103.K632@10.0.0.1> <20070521113648.F86217@besplex.bde.org> <20070520213132.K632@10.0.0.1> <4651CAB8.8070007@FreeBSD.org> <4651CE2F.8080908@FreeBSD.org> <20070521022847.D679@10.0.0.1> <20070521195811.G56785@delplex.bde.org> <4651FCB5.7070604@FreeBSD.org> <20070521225032.C57233@delplex.bde.org> <20070522162819.N5249@besplex.bde.org> <20070522201336.C87981@besplex.bde.org> <46533CAD.8030104@FreeBSD.org> <4655C67A.9060000@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Attilio Rao wrote:

> Attilio Rao wrote:
>
>> Bruce Evans wrote:
>>
>>> 4 more translation errors breaking 8 counters altogether (v_vnodepgsin
>>> is broken twice):
>>
>>
>> Thanks a lot for the revision, there will be a pending patch in the 
>> next hour.
>
>
> Hello,
> Let me know if this patch is right for you and if you have feedbacks, 
> comments, etc:
> http://users.gufi.org/~rookie/works/patches/schedlock/vmmeter3.diff
>
> This should fix translation errors Bruce has found and switching the 
> _SET() method in order to being a simple assignment (as Bruce has 
> suggested).


I think there are still translation errors in vnode_pager.c:

This increment by 1 of cnt.v_vnodepgsin is incorrect:

@@ -909,8 +909,8 @@
        bp->b_runningbufspace = bp->b_bufsize;
        atomic_add_int(&runningbufspace, bp->b_runningbufspace);

-       VMCNT_ADD(vnodein, 1);
-       VMCNT_ADD(vnodepgsin, 1);
+       PCPU_LAZY_INC(cnt.v_vnodein);
+       PCPU_LAZY_INC(cnt.v_vnodepgsin);

        /* do the input */
        bp->b_iooffset = dbtob(bp->b_blkno);

Please double-check the others.

Alan




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