counters.h revision eb6509c759a277527b791759757d9d9a5b1c5e32
d981a844e64c196b4c96be1a52ddc42e23337138vboxsync/** $Id$ */
d981a844e64c196b4c96be1a52ddc42e23337138vboxsync/** @file
eb6509c759a277527b791759757d9d9a5b1c5e32vboxsync * Counters macro invocation template.
eb6509c759a277527b791759757d9d9a5b1c5e32vboxsync *
eb6509c759a277527b791759757d9d9a5b1c5e32vboxsync * This is included with different PROFILE_COUNTER and COUNTING_COUNTER
eb6509c759a277527b791759757d9d9a5b1c5e32vboxsync * implementations to instantiate data members, create function prototypes and
eb6509c759a277527b791759757d9d9a5b1c5e32vboxsync * implement these prototypes.
d981a844e64c196b4c96be1a52ddc42e23337138vboxsync */
d981a844e64c196b4c96be1a52ddc42e23337138vboxsync
d981a844e64c196b4c96be1a52ddc42e23337138vboxsync/*
eb6509c759a277527b791759757d9d9a5b1c5e32vboxsync * Copyright (C) 2007-2009 Sun Microsystems, Inc.
d981a844e64c196b4c96be1a52ddc42e23337138vboxsync *
d981a844e64c196b4c96be1a52ddc42e23337138vboxsync * This file is part of VirtualBox Open Source Edition (OSE), as
d981a844e64c196b4c96be1a52ddc42e23337138vboxsync * available from http://www.virtualbox.org. This file is free software;
d981a844e64c196b4c96be1a52ddc42e23337138vboxsync * you can redistribute it and/or modify it under the terms of the GNU
d981a844e64c196b4c96be1a52ddc42e23337138vboxsync * General Public License (GPL) as published by the Free Software
d981a844e64c196b4c96be1a52ddc42e23337138vboxsync * Foundation, in version 2 as it comes in the "COPYING" file of the
d981a844e64c196b4c96be1a52ddc42e23337138vboxsync * VirtualBox OSE distribution. VirtualBox OSE is distributed in the
d981a844e64c196b4c96be1a52ddc42e23337138vboxsync * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
d981a844e64c196b4c96be1a52ddc42e23337138vboxsync *
d981a844e64c196b4c96be1a52ddc42e23337138vboxsync * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa
d981a844e64c196b4c96be1a52ddc42e23337138vboxsync * Clara, CA 95054 USA or visit http://www.sun.com if you need
d981a844e64c196b4c96be1a52ddc42e23337138vboxsync * additional information or have any questions.
d981a844e64c196b4c96be1a52ddc42e23337138vboxsync */
eb6509c759a277527b791759757d9d9a5b1c5e32vboxsync
d981a844e64c196b4c96be1a52ddc42e23337138vboxsync#ifndef PROFILE_COUNTER
640c5443600563afd4f0759c0f0ad4249f065577vboxsync# error PROFILE_COUNTER is not defied
d981a844e64c196b4c96be1a52ddc42e23337138vboxsync#endif
640c5443600563afd4f0759c0f0ad4249f065577vboxsync#ifndef COUNTING_COUNTER
eb6509c759a277527b791759757d9d9a5b1c5e32vboxsync# error COUNTING_COUNTER is not defined
d981a844e64c196b4c96be1a52ddc42e23337138vboxsync#endif
d981a844e64c196b4c96be1a52ddc42e23337138vboxsync
eb6509c759a277527b791759757d9d9a5b1c5e32vboxsyncPROFILE_COUNTER(Fill, "Profiling slirp fills");
eb6509c759a277527b791759757d9d9a5b1c5e32vboxsyncPROFILE_COUNTER(Poll, "Profiling slirp polls");
eb6509c759a277527b791759757d9d9a5b1c5e32vboxsyncPROFILE_COUNTER(FastTimer, "Profiling slirp fast timer");
eb6509c759a277527b791759757d9d9a5b1c5e32vboxsyncPROFILE_COUNTER(SlowTimer, "Profiling slirp slow timer");
eb6509c759a277527b791759757d9d9a5b1c5e32vboxsyncPROFILE_COUNTER(IOwrite, "Profiling IO sowrite");
eb6509c759a277527b791759757d9d9a5b1c5e32vboxsyncPROFILE_COUNTER(IOread, "Profiling IO soread");
d981a844e64c196b4c96be1a52ddc42e23337138vboxsync
eb6509c759a277527b791759757d9d9a5b1c5e32vboxsyncCOUNTING_COUNTER(TCP, "TCP sockets");
eb6509c759a277527b791759757d9d9a5b1c5e32vboxsyncCOUNTING_COUNTER(TCPHot, "TCP sockets active");
eb6509c759a277527b791759757d9d9a5b1c5e32vboxsyncCOUNTING_COUNTER(UDP, "UDP sockets");
eb6509c759a277527b791759757d9d9a5b1c5e32vboxsyncCOUNTING_COUNTER(UDPHot, "UDP sockets active");
169154fcc4bae3ca771f32a6c11cc0a06f04d505vboxsync
eb6509c759a277527b791759757d9d9a5b1c5e32vboxsyncCOUNTING_COUNTER(IORead_in_1, "SB IORead_in_1");
eb6509c759a277527b791759757d9d9a5b1c5e32vboxsyncCOUNTING_COUNTER(IORead_in_1_bytes, "SB IORead_in_1_bytes");
eb6509c759a277527b791759757d9d9a5b1c5e32vboxsyncCOUNTING_COUNTER(IORead_in_2, "SB IORead_in_2");
eb6509c759a277527b791759757d9d9a5b1c5e32vboxsyncCOUNTING_COUNTER(IORead_in_2_1st_bytes, "SB IORead_in_2_1st_bytes");
eb6509c759a277527b791759757d9d9a5b1c5e32vboxsyncCOUNTING_COUNTER(IORead_in_2_2nd_bytes, "SB IORead_in_2_2nd_bytes");
eb6509c759a277527b791759757d9d9a5b1c5e32vboxsyncCOUNTING_COUNTER(IOWrite_in_1, "SB IOWrite_in_1");
eb6509c759a277527b791759757d9d9a5b1c5e32vboxsyncCOUNTING_COUNTER(IOWrite_in_1_bytes, "SB IOWrite_in_1_bytes");
eb6509c759a277527b791759757d9d9a5b1c5e32vboxsyncCOUNTING_COUNTER(IOWrite_in_2, "SB IOWrite_in_2");
eb6509c759a277527b791759757d9d9a5b1c5e32vboxsyncCOUNTING_COUNTER(IOWrite_in_2_1st_bytes, "SB IOWrite_in_2_1st_bytes");
eb6509c759a277527b791759757d9d9a5b1c5e32vboxsyncCOUNTING_COUNTER(IOWrite_in_2_2nd_bytes, "SB IOWrite_in_2_2nd_bytes");
eb6509c759a277527b791759757d9d9a5b1c5e32vboxsyncCOUNTING_COUNTER(IOWrite_no_w, "SB IOWrite_no_w");
eb6509c759a277527b791759757d9d9a5b1c5e32vboxsyncCOUNTING_COUNTER(IOWrite_rest, "SB IOWrite_rest");
eb6509c759a277527b791759757d9d9a5b1c5e32vboxsyncCOUNTING_COUNTER(IOWrite_rest_bytes, "SB IOWrite_rest_bytes");
169154fcc4bae3ca771f32a6c11cc0a06f04d505vboxsync
eb6509c759a277527b791759757d9d9a5b1c5e32vboxsyncPROFILE_COUNTER(IOSBAppend_pf, "Profiling sbuf::append common");
eb6509c759a277527b791759757d9d9a5b1c5e32vboxsyncPROFILE_COUNTER(IOSBAppend_pf_wa, "Profiling sbuf::append all writen in network");
eb6509c759a277527b791759757d9d9a5b1c5e32vboxsyncPROFILE_COUNTER(IOSBAppend_pf_wf, "Profiling sbuf::append writen fault");
eb6509c759a277527b791759757d9d9a5b1c5e32vboxsyncPROFILE_COUNTER(IOSBAppend_pf_wp, "Profiling sbuf::append writen partly");
eb6509c759a277527b791759757d9d9a5b1c5e32vboxsyncCOUNTING_COUNTER(IOSBAppend, "SB: Append total");
eb6509c759a277527b791759757d9d9a5b1c5e32vboxsyncCOUNTING_COUNTER(IOSBAppend_wa, "SB: Append all is written to network ");
eb6509c759a277527b791759757d9d9a5b1c5e32vboxsyncCOUNTING_COUNTER(IOSBAppend_wf, "SB: Append nothing is written");
eb6509c759a277527b791759757d9d9a5b1c5e32vboxsyncCOUNTING_COUNTER(IOSBAppend_wp, "SB: Append is written partly");
eb6509c759a277527b791759757d9d9a5b1c5e32vboxsyncCOUNTING_COUNTER(IOSBAppend_zm, "SB: Append mbuf is zerro or less");
e94d561018bd5f9e7a92dea86468500774b2d8ffvboxsync
eb6509c759a277527b791759757d9d9a5b1c5e32vboxsyncCOUNTING_COUNTER(IOSBAppendSB, "SB: AppendSB total");
eb6509c759a277527b791759757d9d9a5b1c5e32vboxsyncCOUNTING_COUNTER(IOSBAppendSB_w_l_r, "SB: AppendSB (sb_wptr < sb_rptr)");
eb6509c759a277527b791759757d9d9a5b1c5e32vboxsyncCOUNTING_COUNTER(IOSBAppendSB_w_ge_r, "SB: AppendSB (sb_wptr >= sb_rptr)");
eb6509c759a277527b791759757d9d9a5b1c5e32vboxsyncCOUNTING_COUNTER(IOSBAppendSB_w_alter, "SB: AppendSB (altering of sb_wptr)");
e94d561018bd5f9e7a92dea86468500774b2d8ffvboxsync
eb6509c759a277527b791759757d9d9a5b1c5e32vboxsyncPROFILE_COUNTER(TCP_reassamble, "TCP::reasamble");
eb6509c759a277527b791759757d9d9a5b1c5e32vboxsyncPROFILE_COUNTER(TCP_input, "TCP::input");
4003a16c61cdf61979273c73fc02805967e57683vboxsync
eb6509c759a277527b791759757d9d9a5b1c5e32vboxsyncCOUNTING_COUNTER(DrvNAT_package_sent, "counting package sent via PDM queue");
eb6509c759a277527b791759757d9d9a5b1c5e32vboxsyncCOUNTING_COUNTER(DrvNAT_package_drop, "counting package drops by PDM queue");
76260dafb2f0cf222fdc3f856c28c0f9a7aa05edvboxsync