You can subscribe to this list here.
2003 |
Jan
|
Feb
(27) |
Mar
(132) |
Apr
(63) |
May
(100) |
Jun
(22) |
Jul
(7) |
Aug
(3) |
Sep
(14) |
Oct
(24) |
Nov
(49) |
Dec
(17) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2004 |
Jan
(13) |
Feb
(43) |
Mar
(67) |
Apr
(21) |
May
(24) |
Jun
(3) |
Jul
(15) |
Aug
|
Sep
(1) |
Oct
(40) |
Nov
(2) |
Dec
(94) |
2005 |
Jan
(5) |
Feb
(36) |
Mar
(10) |
Apr
(8) |
May
(35) |
Jun
(13) |
Jul
(55) |
Aug
(82) |
Sep
(59) |
Oct
(20) |
Nov
(55) |
Dec
(15) |
2006 |
Jan
(40) |
Feb
(25) |
Mar
(42) |
Apr
(1) |
May
(12) |
Jun
(3) |
Jul
(2) |
Aug
(23) |
Sep
(33) |
Oct
(4) |
Nov
(5) |
Dec
(22) |
2007 |
Jan
(10) |
Feb
|
Mar
(4) |
Apr
(3) |
May
(8) |
Jun
(4) |
Jul
|
Aug
(3) |
Sep
(12) |
Oct
(9) |
Nov
(1) |
Dec
|
2008 |
Jan
|
Feb
(5) |
Mar
(4) |
Apr
|
May
(4) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(7) |
Nov
|
Dec
|
2009 |
Jan
(8) |
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
|
Jul
(11) |
Aug
|
Sep
(3) |
Oct
|
Nov
|
Dec
|
2011 |
Jan
(7) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: <cpr...@us...> - 2003-03-11 15:38:47
|
Update of /cvsroot/jungerl/jungerl/lib/ce/src In directory sc8-pr-cvs1:/tmp/cvs-serv4215 Added Files: ce_locker.erl Log Message: Added ce_locker --- NEW FILE: ce_locker.erl --- %%% BEGIN ce_locker.erl %%% %%% %%% ce - Miscellaneous Programming Support Libraries for Erlang/OTP %%% Copyright (c)2003 Cat's Eye Technologies. All rights reserved. %%% %%% Redistribution and use in source and binary forms, with or without %%% modification, are permitted provided that the following conditions %%% are met: %%% %%% Redistributions of source code must retain the above copyright %%% notice, this list of conditions and the following disclaimer. %%% %%% Redistributions in binary form must reproduce the above copyright %%% notice, this list of conditions and the following disclaimer in %%% the documentation and/or other materials provided with the %%% distribution. %%% %%% Neither the name of Cat's Eye Technologies nor the names of its %%% contributors may be used to endorse or promote products derived %%% from this software without specific prior written permission. %%% %%% THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND %%% CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, %%% INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF %%% MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE %%% DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE %%% LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, %%% OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, %%% PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, %%% OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON %%% ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, %%% OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY %%% OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE %%% POSSIBILITY OF SUCH DAMAGE. %% @doc Generic resource locker design pattern. %% %% <p>One locker is created per resource you wish to lock. These lockers %% are named and their names are stored in a public ETS table. Locker names %% can be arbitary terms. This allows non-re-entrant functions to be called %% exclusively with <code>call/3</code>.</p> %% %% <p>This is of course voluntary locking (unless you somehow arrange for %% the locker to be used on otherwise normal calls, e.g. with a parse %% transform.)</p> %% %% @end -module(ce_locker). -vsn('JUNGERL'). -author('ca...@ca...'). -copyright('Copyright (c)2003 Cat`s Eye Technologies. All rights reserved.'). -export([start/0, create_locker_table/1]). -export([new/1, server/0]). -export([lock/1, lock/2, unlock/1]). -export([call/3]). -export([test/0, test2/0]). %% @spec start() -> pid() %% @doc Starts the resource locking subsystem. Creates an ETS table to map %% resource names to lockers. start() -> Lockers = spawn_link(?MODULE, create_locker_table, [self()]), receive {Lockers, go_ahead} -> Lockers end. %% @spec create_locker_table(Parent::pid()) -> never_returns %% @doc Called by <code>start/0</code>. Should not be called by user code. create_locker_table(Parent) -> ets:new(?MODULE, [public, named_table]), Parent ! {self(), go_ahead}, ce_timer:sleep_forever(). %% @spec new(Name::term()) -> pid() %% @doc Creates a new locker for a named resource. new(Name) -> Locker = spawn_link(?MODULE, server, []), ets:insert(?MODULE, {Name, Locker}), Locker. %% @spec server() -> never_returns %% @doc Called by <code>new/1</code>. Should not be called by user code. server() -> server([]). %% @spec server(Queue::[pid()]) -> never_returns %% @doc Main locker server loop. <code>Queue</code> is the list of pids that are %% waiting for this resource; the head of this list is the pid which currently owns %% the lock. server(Queue) -> % io:fwrite("queue: ~p~n", [Queue]), receive {Client, lock} -> % io:fwrite("server got lock request from ~p~n", [Client]), case Queue of [] -> % not locked, and no one is waiting, so accept Client ! {self(), locked}, server([Client]); _ -> % a client is waiting for a lock, so server(Queue ++ [Client]) end; {Client, unlock} -> % io:fwrite("server got unlock request from ~p~n", [Client]), Client ! {self(), unlocked}, Queue0 = Queue -- [Client], case Queue0 of [] -> % no one is waiting, so just continue server([]); [NewOwner | Rest] -> % give the next on the list, the lock NewOwner ! {self(), locked}, server(Rest) end end. %% @spec lock(locker()) -> {ok, Result} | {error, Reason} %% @equiv lock(locker(), infinity) lock(Locker) -> lock(Locker, infinity). %% @spec lock(locker(), Timeout::integer()) -> {ok, Result} | {error, Reason} %% locker() = atom() | pid() %% @doc Locks a resource, preventing other processes from accessing it. %% The resource may specified by name, or by locker pid. If a locker for %% the named resource does not exist, one is created. lock(Name, Timeout) when is_atom(Name) -> case ets:lookup(?MODULE, Name) of [{Name, Locker}] -> lock(Locker, Timeout); [] -> Locker = new(Name), lock(Locker, Timeout); Else -> Else end; lock(Locker, Timeout) -> Locker ! {self(), lock}, receive {Locker, Result=locked} -> {ok, Result} after Timeout -> {error, timeout} end. %% @spec unlock(locker()) -> {ok, Result} | {error, Reason} %% @doc Unlocks a resource, allowing other processes to access it. %% The resource may specified by name, or by locker pid. unlock(Name) when is_atom(Name) -> case ets:lookup(?MODULE, Name) of [{Name, Locker}] -> unlock(Locker); _ -> {error, no_such_locker} end; unlock(Locker) -> Locker ! {self(), unlock}, receive {Locker, Result=unlocked} -> {ok, Result} end. %% @spec call(Module::atom(), Function::atom(), Args::[term()]) -> term() %% @doc Calls a non-re-entrant function. Does this by first locking %% the function by it's name, then calling the function, then unlocking it. %% The name of the function in this case is <code>{Module, Function, Arity}</code> where %% <code>Arity</code> is determined by the length of <code>Args</code>. call(Module, Function, Args) -> Arity = length(Args), Name = {Module, Function, Arity}, lock(Name), Result = apply(Module, Function, Args), unlock(Name), Result. test() -> start(), Locker = new(bean), spawn_link(?MODULE, test2, []), lock(bean), io:fwrite("TEST lock~n"), timer:sleep(5000), io:fwrite("TEST unlock~n"), unlock(bean). test2() -> timer:sleep(2000), lock(bean), io:fwrite("TEST2 lock~n"), timer:sleep(5000), io:fwrite("TEST2 unlock~n"), unlock(bean). %%% END of ce_locker.erl %%% |
From: <ma...@us...> - 2003-03-07 16:00:56
|
Update of /cvsroot/jungerl/jungerl/lib/pan/bin In directory sc8-pr-cvs1:/tmp/cvs-serv26282/bin Modified Files: pan Log Message: bad SELF_PATH fixed Index: pan =================================================================== RCS file: /cvsroot/jungerl/jungerl/lib/pan/bin/pan,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- pan 28 Feb 2003 16:00:24 -0000 1.2 +++ pan 7 Mar 2003 16:00:51 -0000 1.3 @@ -12,6 +12,7 @@ set SELF_PATH = $SELF_PATH:h endif +set PAN_TOP = `dirname $SELF_PATH` set SNAME = pan set U1 = "usage: $0 [-setcookie <cookie>] [-nocookie]" set U2 = "[-pa <path>] [-tick <netticktime>] [-name <node name>] [-spawn]" @@ -64,7 +65,7 @@ echo cookie $cookie set CMD1 = "$OTP_ROOT/bin/erl -hidden -boot start_sasl -sasl errlog_type error" -set CMD2 = "-pa $SELF_PATH $xpat -sname $SNAME $cookie $tick" +set CMD2 = "-pa $PAN_TOP/ebin $xpat -sname $SNAME $cookie $tick" set CMD = "$CMD1 $CMD2" if ( $?spawn ) then xterm -sb -sl 9999 -geometry 80x24 -bg lightcyan -T $SNAME -e $CMD & |
From: <ma...@us...> - 2003-03-07 15:40:35
|
Update of /cvsroot/jungerl/jungerl/lib/pan/src In directory sc8-pr-cvs1:/tmp/cvs-serv15605/src Modified Files: panTarg.erl Log Message: moved defines here Index: panTarg.erl =================================================================== RCS file: /cvsroot/jungerl/jungerl/lib/pan/src/panTarg.erl,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- panTarg.erl 7 Mar 2003 13:35:21 -0000 1.2 +++ panTarg.erl 7 Mar 2003 15:40:31 -0000 1.3 @@ -18,6 +18,16 @@ -define(DEFFLAGS, [running,timestamp]). -define(DEFPROCS, all). -define(DEFTPS, []). +%%% mandatory args (added automagically) +-define(MANDFLAGS, [set_on_spawn,timestamp,call]). +-define(MANDTPS, []). +%%% flag aliases +-define(DBGFLAGS, []). +-define(GCFLAGS, [garbage_collection]). +-define(PROCFLAGS, ?GCFLAGS++[running,send,'receive']). +-define(PERFFLAGS, ?GCFLAGS++[running,procs]). +-define(PROFFLAGS, ?PERFFLAGS++[return_to,arity]). +-define(ALLFLAGS, ?PROFFLAGS++[send,'receive']). -define(CHUNKSIZE, 8192). -define(EXT, ".trc"). @@ -198,6 +208,7 @@ end. stop_trc([{tracer, Port}|Flags] = OFlags) -> + ?LOG(info, {flags, OFlags}), clear_trace_patterns(), erlang:trace(all, false, OFlags), tabi(Port), |
From: <ma...@us...> - 2003-03-07 15:39:53
|
Update of /cvsroot/jungerl/jungerl/lib/pan/src In directory sc8-pr-cvs1:/tmp/cvs-serv15172a/src Modified Files: panOpt.erl Log Message: added tmp_dir/0 Index: panOpt.erl =================================================================== RCS file: /cvsroot/jungerl/jungerl/lib/pan/src/panOpt.erl,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -d -r1.1.1.1 -r1.2 --- panOpt.erl 28 Feb 2003 14:57:45 -0000 1.1.1.1 +++ panOpt.erl 7 Mar 2003 15:39:46 -0000 1.2 @@ -7,8 +7,10 @@ %%%------------------------------------------------------------------- -module(panOpt). +-export([tmp_dir/0]). -export([mangle_ic/1]). -export([defnodes/0]). +tmp_dir() -> "/tmp". mangle_ic(MFA) -> ok. defnodes() -> nodes(). |
From: <ma...@us...> - 2003-03-07 15:39:30
|
Update of /cvsroot/jungerl/jungerl/lib/pan/src In directory sc8-pr-cvs1:/tmp/cvs-serv14918/src Modified Files: panHost.erl Log Message: moved defines here TMPDIR is retrieved from panOpt:tmp_dir/0 Index: panHost.erl =================================================================== RCS file: /cvsroot/jungerl/jungerl/lib/pan/src/panHost.erl,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -d -r1.1.1.1 -r1.2 --- panHost.erl 28 Feb 2003 14:57:45 -0000 1.1.1.1 +++ panHost.erl 7 Mar 2003 15:39:23 -0000 1.2 @@ -14,6 +14,17 @@ -define(FORM, "~s~n~s - ~p - ~p~n~p~n"). -define(DEL, lists:duplicate(77, $=)). +%%% default arguments +-define(DEFTC, []). +-define(DEFIPPORT, 9666). +-define(DEFIPQUE, 4096). +-define(DEFWRAPSIZE, 128*1024). +-define(DEFWRAPCNT, 8). + +-define(MODULES, [panTarg, panLib]). +-define(WAIT(N), receive after N*1000 -> ok end). + +-record(timer, {state, start, stop, timeout}). -export([start/0,start/1,start/2,start/3,start/4,start/5]). -export([mark/0]). @@ -132,7 +143,7 @@ ?DEFTC -> "pan-"++panLib:timestamp(); _ -> atom_to_list(TestCaseName) end, - OutDir = filename:join([?TMPDIR, "pan", FileName]), + OutDir = filename:join([panOpt:tmp_dir(), "pan", FileName]), panLib:delete_dir(OutDir), panLib:verify_dir(OutDir), OutDir. |
From: <ma...@us...> - 2003-03-07 15:38:15
|
Update of /cvsroot/jungerl/jungerl/lib/pan In directory sc8-pr-cvs1:/tmp/cvs-serv14192 Modified Files: Makefile Log Message: calls src/Makefile Index: Makefile =================================================================== RCS file: /cvsroot/jungerl/jungerl/lib/pan/Makefile,v retrieving revision 1.5 retrieving revision 1.6 diff -u -d -r1.5 -r1.6 --- Makefile 5 Mar 2003 11:53:56 -0000 1.5 +++ Makefile 7 Mar 2003 15:38:09 -0000 1.6 @@ -1,13 +1,8 @@ include ../../support/include.mk -ERLS = $(shell echo src/*.erl) -BEAMS = $(patsubst src/%.erl, ebin/%.beam, $(ERLS)) - default: all -all: $(BEAMS) - -ebin/%.beam: src/%.erl - $(ERLC) -o ebin -I inc $(ERLC_FLAGS) $< +all: + $(MAKE) -k -C src clean: - rm $(BEAMS) + rm ebin/*.beam |
From: <ma...@us...> - 2003-03-07 15:30:16
|
Update of /cvsroot/jungerl/jungerl/lib/pan/inc In directory sc8-pr-cvs1:/tmp/cvs-serv10574/inc Modified Files: pan.hrl Log Message: removed everything that was only used in one .erl (?LOG) Index: pan.hrl =================================================================== RCS file: /cvsroot/jungerl/jungerl/lib/pan/inc/pan.hrl,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- pan.hrl 7 Mar 2003 13:19:09 -0000 1.2 +++ pan.hrl 7 Mar 2003 15:30:12 -0000 1.3 @@ -5,32 +5,5 @@ %%% Created : 8 Mar 2001 by Mats Cronqvist <etxmacr@avc386> %%%---------------------------------------------------------------------- --define(WAIT(N), receive after N*1000 -> ok end). --define(MODULES, [panTarg, panLib]). --define(TMPDIR, "/tmp"). -define(LOG(Tag, Info), panLib:log(Tag, ?MODULE, ?LINE, ?FUNCTION, Info)). -define(FUNCTION, process_info(self(),current_function)). - -%%% default arguments --define(DEFTC, []). - --define(DEFIPPORT, 9666). --define(DEFIPQUE, 4096). - --define(DEFWRAPSIZE, 128*1024). --define(DEFWRAPCNT, 8). - - -%%% mandatory args (added automagically) --define(MANDFLAGS, [set_on_spawn,timestamp,call]). --define(MANDTPS, []). - -%%% flag aliases --define(DBGFLAGS, []). --define(GCFLAGS, [garbage_collection]). --define(PROCFLAGS, ?GCFLAGS++[running,send,'receive']). --define(PERFFLAGS, ?GCFLAGS++[running,procs]). --define(PROFFLAGS, ?PERFFLAGS++[return_to,arity]). --define(ALLFLAGS, ?PROFFLAGS++[send,'receive']). - --record(timer, {state, start, stop, timeout}). |
From: <ma...@us...> - 2003-03-07 15:29:21
|
Update of /cvsroot/jungerl/jungerl/lib/pan/src In directory sc8-pr-cvs1:/tmp/cvs-serv10132/src Added Files: Makefile Log Message: possible to run make in src --- NEW FILE: Makefile --- include ../../../support/include.mk ERLS = $(shell echo *.erl) FILES = $(patsubst %.erl, %, $(ERLS)) DEPS = $(patsubst %, ../ebin/%.beam, panHost panTarg panScan panLib) default: all all: $(FILES) $(FILES): % : ../ebin/%.beam $(DEPS): ../ebin/%.beam : %.erl ../inc/pan.hrl $(ERLC) -o ../ebin -I ../inc $(ERLC_FLAGS) $< ../ebin/%.beam: %.erl $(ERLC) -o ../ebin $(ERLC_FLAGS) $< |
From: <ma...@us...> - 2003-03-07 14:03:01
|
Update of /cvsroot/jungerl/jungerl/lib/pan/doc In directory sc8-pr-cvs1:/tmp/cvs-serv7967/doc Modified Files: HOWTO.html Log Message: removed some axd stuff Index: HOWTO.html =================================================================== RCS file: /cvsroot/jungerl/jungerl/lib/pan/doc/HOWTO.html,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -d -r1.1.1.1 -r1.2 --- HOWTO.html 28 Feb 2003 14:57:45 -0000 1.1.1.1 +++ HOWTO.html 7 Mar 2003 14:02:56 -0000 1.2 @@ -27,13 +27,13 @@ <hr> <h2>basic</h2> -pan should be run from an erlang node (the host). the host must be able to -attach itself to the distributed erlang network that is the -AXD301. when started, it will load itself on a number of the AXD301 -nodes (the target(s)), and start a tracing process. the target process -will generate a number of data files containing information about the +pan should be run from an erlang node (the host). the host must be +able to attach itself to the target, but should be hidden (<code>erl +-hidden</code>). when pan is started, it will load itself on the +target(s), and start a tracing process. the target process will +generate a data file containing information about the operating system and the erlang emulator, as well as about the erlang -processes and the erlang data tables. when the target process(es) are +processes and the erlang tables. when the target process(es) are terminated the data files will be moved to the host. <p> the data files are stored in a file tree that uses the name of the @@ -43,17 +43,18 @@ <hr> <h2>data taking</h2> <h3>pan:start/stop</h3> -<code>pan:start(Tc,CPs,Procs,Flags,Matches).</code> +<code>pan:start(Tc,Nodes,Procs,Flags,MatchSpecs).</code> <p> <code>pan:stop()</code> <p> - see the <a href="pan.html">reference</a> for a detailed description of the -parameters. briefly; <code>Tc</code> (test case) is a tag used to label the -data files, <code>CPs</code> is a list of CPs to run on, <code>Procs</code> is -a list of processes to trace on, <code>Flags</code> is a list of tracing flags -and Matches is a list of match specifications (see erlang tracing -<a href="erlang_trace.html">doc</a>). (if the parameters are not given as lists -they will be treated as lists of length 1). + see the <a href="pan.html">reference</a> for a detailed description +of the parameters. briefly; <code>Tc</code> (test case) is a tag used +to label the data files, <code>Nodes</code> is a list of target nodes +to run on, <code>Procs</code> is a list of processes to trace on, +<code>Flags</code> is a list of tracing flags and Matches is a list of +match specifications (see erlang tracing <a href="erlang_trace.html">doc</a>). +(if the parameters are not given as lists they will be treated as +lists of length 1). <p> <code>Tc</code> can be the special atom <code>ip</code>, which means that the tracing info will display on the host terminal instead of being sent to file. @@ -144,7 +145,8 @@ sbm......................................................... 1.0 6.1 </pre> -<code>pan:prof/2</code> shows the cpu usage per function for a process (in this case plcMemory). +<code>pan:prof/2</code> shows the cpu usage per function for a process +(in this case plcMemory). <pre> > pan:prof("/tmp/pan/tst",plcMemory). plcMemory; N = 1, 192779 us 192779 us/proc (100.000) @@ -216,17 +218,13 @@ the <a href="pan.html">reference</a> <hr> <h3>installation</h3> -a recent version of the tool should be here;<br> -<code>http://avweb.etxb.ericsson.se/~etxmacr/export/pan/pan-*.tgz</code><br> -unpack like this (gtar is the GNU tar):<br> -<code>cd <some-dir> ; gtar -xzvf <tgz-file></code><br> -this will create the dir <code><some-dir>/<version></code><br> -run this;<br> -<code><some-dir>/<version>/pan</code><br> -this will start up a correctly configured erlang shell +available via anonymous cvs from www.sourceforge.net/projects/jungerl +(cvsroot pserver:ano...@cv...:/cvsroot/jungerl) +or the sourceforge tarballs +http://cvs.sourceforge.net/cvstarballs/jungerl-cvsroot.tar.gz <hr> <address>mat...@er...</address> <!-- hhmts start --> -Last modified: Wed Aug 14 11:31:20 MET DST 2002 +Last modified: Fri Mar 7 15:02:15 MET 2003 <!-- hhmts end --> </body> </html> |
From: <ma...@us...> - 2003-03-07 13:36:03
|
Update of /cvsroot/jungerl/jungerl/lib/pan/src In directory sc8-pr-cvs1:/tmp/cvs-serv28217/src Modified Files: perf_ts.erl Log Message: updated to work with cb_perf added tc(15) Index: perf_ts.erl =================================================================== RCS file: /cvsroot/jungerl/jungerl/lib/pan/src/perf_ts.erl,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -d -r1.1.1.1 -r1.2 --- perf_ts.erl 28 Feb 2003 14:57:45 -0000 1.1.1.1 +++ perf_ts.erl 7 Mar 2003 13:36:00 -0000 1.2 @@ -9,7 +9,7 @@ -export([go/0, go/1]). --define(CB, cb_cpu). +-define(CB, cb_perf). -define(PID(I), c:pid(0,127,I)). -define(FDMSG(Tag, US), [{Tag,{pid,foo},0,{0,0,US}},1,standard_io]++stat()). @@ -42,13 +42,12 @@ S -> [S] end. -post(Conds) -> - post(Conds, {ets:tab2list(?MODULE), 0}). +post(Conds) -> post(Conds, {ets:tab2list(?MODULE), 0}). post([], {[], 0}) -> io:fwrite("ok~n"); post([], {[{total, T}], T}) -> io:fwrite("ok~n"); post([], X) -> io:fwrite("failed~n~p~n", [X]); -post([{P, Con}|Conds], {D, T}) -> - post(Conds, do_post(P, Con, D, T)). +post([{P, Con}|Conds], {D, T}) -> post(Conds, do_post(P, Con, D, T)). + do_post(P, [], D, T) -> {D, T}; do_post(P = file_driver, [{Tag, V}|Cons], D, T) -> do_post(P, Cons, D--[{{P,Tag},V}], T); @@ -169,4 +168,11 @@ ?EVENT(exit, 1, 6), ?END, post([{1, [{cpu,6},{in,1}]}]); +tc(15) -> + ?EVENT(in, 1, 0), + ?EVENT(out, 1, 2), + ?EVENT(in, 2, 4), + ?EVENT(exit, 1, 6), + ?END, + post([{1, [{cpu,2},{in,1}]},{2,[{in,1}]}]); tc(_) -> not_yet_implemented. |
From: <ma...@us...> - 2003-03-07 13:35:25
|
Update of /cvsroot/jungerl/jungerl/lib/pan/src In directory sc8-pr-cvs1:/tmp/cvs-serv28030/src Modified Files: panTarg.erl Log Message: use cpu_timestamp flag when doing perf on an R9 emu Index: panTarg.erl =================================================================== RCS file: /cvsroot/jungerl/jungerl/lib/pan/src/panTarg.erl,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -d -r1.1.1.1 -r1.2 --- panTarg.erl 28 Feb 2003 14:57:45 -0000 1.1.1.1 +++ panTarg.erl 7 Mar 2003 13:35:21 -0000 1.2 @@ -15,6 +15,9 @@ -include("pan.hrl"). -define(DEFPID, no_pid). +-define(DEFFLAGS, [running,timestamp]). +-define(DEFPROCS, all). +-define(DEFTPS, []). -define(CHUNKSIZE, 8192). -define(EXT, ".trc"). @@ -37,8 +40,9 @@ end. sanity(FileName) -> - case panLib:is_r7() of - yes -> + case panLib:emu_vers() of + {ok, 0} -> {error, old_emulator}; + _ -> dbg:stop(), case whereis(?MODULE) of P when pid(P) -> {error, {?MODULE, already_started}}; @@ -47,8 +51,7 @@ {ip, _, _} -> {ok, ip}; _ -> {ok, panLib:get_dir(now())} end - end; - no -> {error, beam_not_r7} + end end. args(OProcs, OFlags, OTPs) -> @@ -61,7 +64,11 @@ flags(gc) -> ?GCFLAGS; flags(dbg) -> ?DBGFLAGS; flags(proc) -> ?PROCFLAGS; -flags(perf) -> ?PERFFLAGS; +flags(perf) -> + case panLib:emu_vers() of + {ok,9} -> [cpu_timestamp|?PERFFLAGS]; + _ -> ?PERFFLAGS + end; flags(prof) -> ?PROFFLAGS; flags(all) -> ?ALLFLAGS; flags(Flag) when atom(Flag) -> [Flag]; @@ -163,8 +170,12 @@ start_tracing(Procs, Flags) -> Ps = [{reg(P), catch erlang:trace(P, true, Flags)} || P <- Procs], - erlang:trace(self(), false, Flags), - [erlang:trace(P, false, Flags) || P <- processes(), filt(P)], + case lists:member(cpu_timestamp, Flags) of + true -> ok; + false -> + erlang:trace(self(), false, Flags), + [erlang:trace(P, false, Flags) || P <- processes(), filt(P)] + end, Ps. filt(P) -> filt(reg(P), proc_info(P, initial_call)). |
From: <ma...@us...> - 2003-03-07 13:32:40
|
Update of /cvsroot/jungerl/jungerl/lib/pan/src In directory sc8-pr-cvs1:/tmp/cvs-serv27080/src Modified Files: panScan.erl Log Message: cosmetic Index: panScan.erl =================================================================== RCS file: /cvsroot/jungerl/jungerl/lib/pan/src/panScan.erl,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -d -r1.1.1.1 -r1.2 --- panScan.erl 28 Feb 2003 14:57:45 -0000 1.1.1.1 +++ panScan.erl 7 Mar 2003 13:32:37 -0000 1.2 @@ -16,10 +16,7 @@ -export([proc_tag/1]). -export([mass/1]). --record(state, {line = 0, - hits = 0, - send = [], - filter = []}). +-record(state, {line = 0, hits = 0, send = [], filter = []}). %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% file(FileName) -> file(FileName, ''). |
From: <ma...@us...> - 2003-03-07 13:23:02
|
Update of /cvsroot/jungerl/jungerl/lib/pan/src In directory sc8-pr-cvs1:/tmp/cvs-serv23403/src Modified Files: panLib.erl Log Message: cosmetic Index: panLib.erl =================================================================== RCS file: /cvsroot/jungerl/jungerl/lib/pan/src/panLib.erl,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -d -r1.1.1.1 -r1.2 --- panLib.erl 28 Feb 2003 14:57:45 -0000 1.1.1.1 +++ panLib.erl 7 Mar 2003 13:22:59 -0000 1.2 @@ -19,7 +19,7 @@ -export([verify_dir/1]). -export([get_dir/1]). -export([delete_dir/1]). --export([is_r7/0]). +-export([emu_vers/0]). -export([timestamp/0,timestamp/1]). -export([host/0]). -export([get_ip/0]). @@ -121,10 +121,20 @@ {error, R} -> ?LOG(error, {R}), [] end. -is_r7() -> - case catch erlang:system_info(thread_pool_size) of - {'EXIT', _} -> no; - _ -> yes +emu_vers() -> + case catch erlang:system_info(system_version) of + {'EXIT',R} -> {ok, 0}; + VersStr -> + case regexp:first_match(VersStr,"[0-9]\.[0-9]") of + nomatch -> {unknown, post_nine}; + {match,F,L} -> + case string:substr(VersStr,F, L) of + "5.0" -> {ok, 7}; + "5.1" -> {ok, 8}; + "5.2" -> {ok, 9}; + _ -> {unknown, post_nine} + end + end end. timestamp() -> timestamp(now()). |
From: <ma...@us...> - 2003-03-07 13:21:20
|
Update of /cvsroot/jungerl/jungerl/lib/pan/src In directory sc8-pr-cvs1:/tmp/cvs-serv22844/src Modified Files: panCpu1.erl Log Message: fixed sorting-by-cpu bug Index: panCpu1.erl =================================================================== RCS file: /cvsroot/jungerl/jungerl/lib/pan/src/panCpu1.erl,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -d -r1.1.1.1 -r1.2 --- panCpu1.erl 28 Feb 2003 14:57:45 -0000 1.1.1.1 +++ panCpu1.erl 7 Mar 2003 13:21:15 -0000 1.2 @@ -36,11 +36,11 @@ sum(FD_O, R, add(P, Pid), add(C, C0), add(G, G0)). out(FD_O, []) -> ok; -out({FD, O} = FD_O, [{P, I, Tin, In, Tgc, Gc}|R]) when O == excel-> - io:fwrite(FD, format(O), [to_str(P), to_str(I), Gc, Tgc, In, Tin+Tgc]), +out({FD, O} = FD_O, [{P, I, Ttot, In, Tgc, Gc}|R]) when O == excel-> + io:fwrite(FD, format(O), [to_str(P), to_str(I), Gc, Tgc, In, Ttot]), out(FD_O, R); -out({FD, O} = FD_O, [{P, I, Tin, In, Tgc, Gc}|R]) -> - io:fwrite(FD, format(O), [to_str(P), to_str(I), Gc, In, Tin+Tgc]), +out({FD, O} = FD_O, [{P, I, Ttot, In, Tgc, Gc}|R]) -> + io:fwrite(FD, format(O), [to_str(P), to_str(I), Gc, In, Ttot]), out(FD_O, R). makem(no_file) -> []; @@ -79,30 +79,32 @@ ets_new(panCpu1, [{keypos, 2}]), keysortr(3, collapse(L)). collapse([]) -> ets_t2l(panCpu1); -collapse([{P, I, Tin, In, Tgc, Gc} = Obj|R]) -> - case filt(I) of - true -> collapse(Obj); +collapse([Obj|R]) -> + case filt(Obj) of + true -> ets_ins(panCpu1, obj(Obj)); _ -> ok end, - collapse(R); -collapse(Obj) -> ets_ins(panCpu1, obj(Obj)). + collapse(R). obj({P, I, Tin, In, Tgc, Gc} = Obj) -> case ets_lup(panCpu1, I) of [] -> - Obj; - {N, I, Tin0, In0, Tgc0, Gc0} when integer(N) -> - {N+1, I, add(Tin, Tin0), add(In, In0), add(Tgc, Tgc0), add(Gc, Gc0)}; - {Pid, I, Tin0, In0, Tgc0, Gc0} -> - {2, I, add(Tin, Tin0), add(In, In0), add(Tgc, Tgc0), add(Gc, Gc0)} + {P, I, add(Tin,Tgc), In, Tgc, Gc}; + {N, I, Tin0, In0, Tgc0, Gc0}-> + upd_obj(N, P, I, Tin, Tin0, Tgc, Tgc0, In, In0, Gc, Gc0) end. +upd_obj(N, P, I, Tin, Tin0, Tgc, Tgc0, In, In0, Gc, Gc0) -> + Ttot = add(Tgc, add(Tin, Tin0)), + {add(N, P), I, Ttot, add(In, In0), add(Tgc, Tgc0), add(Gc, Gc0)}. add(Y, X) when integer(X), integer(Y) -> X+Y; +add(Pi, Pid) when pid(Pi), pid(Pid) -> 2; add(P, Pid) when pid(Pid) -> add(P, 1); add(A, _) -> A. keysortr(N, L) -> lists:reverse(lists:keysort(N, L)). +filt({P, I, Tin, In, Tgc, Gc}) -> filt(I); %%%filt({erlang,apply,2}) -> false; filt(file_server) -> false; %%%filt({sysTimer,_,_}) -> false; |
From: <ma...@us...> - 2003-03-07 13:20:28
|
Update of /cvsroot/jungerl/jungerl/lib/pan/src In directory sc8-pr-cvs1:/tmp/cvs-serv22574/src Modified Files: cb_perf.erl Log Message: fixed out-exit bug fixed init bug Index: cb_perf.erl =================================================================== RCS file: /cvsroot/jungerl/jungerl/lib/pan/src/cb_perf.erl,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -d -r1.1.1.1 -r1.2 --- cb_perf.erl 28 Feb 2003 14:57:45 -0000 1.1.1.1 +++ cb_perf.erl 7 Mar 2003 13:20:22 -0000 1.2 @@ -29,11 +29,11 @@ {out, _, 0, Now} -> ets_upd(Tab, {file_driver, in}, 1), State#state{fd = {Now}}; - {out, P, _, Prev} -> %early r7b emu behaviour + {out, P, _, Prev} -> %early r7b emu behaviour handle({out, P, 0, Prev}, State); {in, _, 0, Now} -> do_fd_out(Tab, Now, State); - {in, P, _, Now} when State#state.fd /= no -> %early r7b emu behaviour + {in, P, _, Now} when tuple(State#state.fd) -> %early r7b emu behaviour handle({in, P, 0, Now}, State); {gc_start, {Pid, ID}, Info, Now} -> ets_upd(Tab, {Pid, gc}, 1), @@ -47,8 +47,8 @@ do_out(Tab, Pid, Now, State); {exit, {Pid, ID}, Reason, Now} -> case In of - no -> State; - _ -> do_out(Tab, Pid, Now, State) + {Pid,_} -> do_out(Tab, Pid, Now, State); + _ -> State end; _ -> State |
From: <ma...@us...> - 2003-03-07 13:19:13
|
Update of /cvsroot/jungerl/jungerl/lib/pan/inc In directory sc8-pr-cvs1:/tmp/cvs-serv22194/inc Modified Files: pan.hrl Log Message: moved some stuff to erl files Index: pan.hrl =================================================================== RCS file: /cvsroot/jungerl/jungerl/lib/pan/inc/pan.hrl,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -d -r1.1.1.1 -r1.2 --- pan.hrl 28 Feb 2003 14:57:45 -0000 1.1.1.1 +++ pan.hrl 7 Mar 2003 13:19:09 -0000 1.2 @@ -13,9 +13,6 @@ %%% default arguments -define(DEFTC, []). --define(DEFFLAGS, [running,timestamp]). --define(DEFPROCS, all). --define(DEFTPS, []). -define(DEFIPPORT, 9666). -define(DEFIPQUE, 4096). |
From: <lu...@us...> - 2003-03-07 10:42:48
|
Update of /cvsroot/jungerl/jungerl/lib/tuntap/src In directory sc8-pr-cvs1:/tmp/cvs-serv32188 Modified Files: eth2udp.erl Log Message: Removed unnecessary registered name. Index: eth2udp.erl =================================================================== RCS file: /cvsroot/jungerl/jungerl/lib/tuntap/src/eth2udp.erl,v retrieving revision 1.4 retrieving revision 1.5 diff -u -d -r1.4 -r1.5 --- eth2udp.erl 7 Mar 2003 10:24:55 -0000 1.4 +++ eth2udp.erl 7 Mar 2003 10:42:35 -0000 1.5 @@ -23,7 +23,6 @@ spawn_link(?MODULE, init, [Port, EPs, Dev]). init(Port, EPs, Dev) -> - register(eth2udp, self()), {ok, Socket} = gen_udp:open(Port, [binary]), {ok, Tunnel} = init_tunnel(Dev), loop(Tunnel, Socket, EPs). |
From: <lu...@us...> - 2003-03-07 10:24:59
|
Update of /cvsroot/jungerl/jungerl/lib/tuntap/src In directory sc8-pr-cvs1:/tmp/cvs-serv25852/src Modified Files: eth2udp.erl Log Message: Tidyup. Index: eth2udp.erl =================================================================== RCS file: /cvsroot/jungerl/jungerl/lib/tuntap/src/eth2udp.erl,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- eth2udp.erl 24 Feb 2003 10:49:04 -0000 1.3 +++ eth2udp.erl 7 Mar 2003 10:24:55 -0000 1.4 @@ -10,8 +10,8 @@ -import(lists, [foreach/2]). --compile(export_all). -%%-export([Function/Arity, ...]). +-export([start_link/2, start_link/3]). +-export([init/3]). %% start_link(Port, [EndPoint]) -> pid() %% @@ -43,7 +43,6 @@ ?MODULE:loop(Tunnel, Socket, EPs). init_tunnel(Dev) -> - tuntap:init(), Tun = tuntap:open_tuntap(tap, Dev), Dev = tuntap:device_name(Tun), io:format("Alive and kicking on ~p~n", [Dev]), |
From: <to...@us...> - 2003-03-06 23:00:04
|
Update of /cvsroot/jungerl/jungerl/lib/x11/include In directory sc8-pr-cvs1:/tmp/cvs-serv23048/include Added Files: stdbits.hrl x.hrl xkeysym.hrl Log Message: New flavour of the ex11. --- NEW FILE: stdbits.hrl --- -ifndef(SYSBITS_HRL). -define(SYSBITS_HRL, true). -define(uint8(X,E), X:8/E-unsigned-integer). -define(uint16(X,E), X:16/E-unsigned-integer). -define(uint32(X,E), X:32/E-unsigned-integer). -define(uint64(X,E), X:64/E-unsigned-integer). -define(int8(X,E), X:8/E-integer). -define(int16(X,E), X:16/E-integer). -define(int32(X,E), X:32/E-integer). -define(int64(X,E), X:64/E-integer). %% "standard" 32 bit machine defs -define(char(X,S,E), X:8/E-S-integer). -define(short(X,S,E), X:16/E-S-integer). -define(long(X,S,E), X:32/E-S-integer). -define(long_long(X,S,E), X:64/E-S-integer). -define(int(X,S,E), X:32/E-S-integer). -define(float(X,E), X:32/E-float). -define(double(X,E), X:64/E-float). -endif. --- NEW FILE: x.hrl --- -ifndef(__X_HRL__). -define(__X_HRL__, true). -define(X_PROTOCOL, 11). %% current protocol version -define(X_PROTOCOL_REVISION, 0). %% current minor version -define(PAD4_Len(Len), ((4-((Len) band 3)) band 3)). -define(PAD4(Len), case ?PAD4_Len(Len) of 0 -> <<>>; 1 -> <<0>>; 2 -> <<0,0>>; 3 -> <<0,0,0>> end). -define(MSB_BYTEORDER, $B). [...971 lines suppressed...] { width, %% Image width height, %% Image height xoffset, %% Number of pixels offset in X direction format, %% XYBitmap, XYPixmap, ZPixmap data, %% Image data byte_order, %% LSBFirst, MSBFirst bitmap_unit, %% quant of scanline 8,16,32 bitmap_bit_order, %% LSBFirst, MSBFirst bitmap_pad, %% 8, 16, 32 either XY or ZPixmap depth, %% depth of Image bytes_per_line, %% Number of bytes per line bits_per_pixel, %% bits per pixel (ZPixmap) red_mask, green_mask, blue_mask }). -endif. --- NEW FILE: xkeysym.hrl --- -ifndef(__XKEYSYM_HRL__). -define(__XKEYSYM_HRL__, true). -define(XK_VoidSymbol, 16#FFFFFF). %% void symbol -define(XK_BackSpace, 16#FF08). %% back space, back char -define(XK_Tab, 16#FF09). -define(XK_Linefeed, 16#FF0A). %% Linefeed, LF -define(XK_Clear, 16#FF0B). -define(XK_Return, 16#FF0D). %% Return, enter -define(XK_Pause, 16#FF13). %% Pause, hold -define(XK_Scroll_Lock, 16#FF14). -define(XK_Sys_Req, 16#FF15). -define(XK_Escape, 16#FF1B). -define(XK_Delete, 16#FFFF). %% Delete, rubout %% International & multi-key character composition -define(XK_Multi_key, 16#FF20). %% Multi-key character compose [...1865 lines suppressed...] -define(XK_combining_grave, 16#1ef2). %% U+0300 -define(XK_combining_acute, 16#1ef3). %% U+0301 -define(XK_combining_hook, 16#1efe). %% U+0309 -define(XK_combining_belowdot, 16#1eff). %% U+0323 -define(XK_EcuSign, 16#20a0). -define(XK_ColonSign, 16#20a1). -define(XK_CruzeiroSign, 16#20a2). -define(XK_FFrancSign, 16#20a3). -define(XK_LiraSign, 16#20a4). -define(XK_MillSign, 16#20a5). -define(XK_NairaSign, 16#20a6). -define(XK_PesetaSign, 16#20a7). -define(XK_RupeeSign, 16#20a8). -define(XK_WonSign, 16#20a9). -define(XK_NewSheqelSign, 16#20aa). -define(XK_DongSign, 16#20ab). -define(XK_EuroSign, 16#20ac). -endif. |
From: <to...@us...> - 2003-03-06 23:00:03
|
Update of /cvsroot/jungerl/jungerl/lib/x11 In directory sc8-pr-cvs1:/tmp/cvs-serv23048 Added Files: vsn.mk Log Message: New flavour of the ex11. --- NEW FILE: vsn.mk --- X11_VSN = 0.2 |
From: <to...@us...> - 2003-03-06 23:00:03
|
Update of /cvsroot/jungerl/jungerl/lib/x11/ebin In directory sc8-pr-cvs1:/tmp/cvs-serv23048/ebin Added Files: .empty Log Message: New flavour of the ex11. --- NEW FILE: .empty --- |
From: <to...@us...> - 2003-03-06 22:56:42
|
Update of /cvsroot/jungerl/jungerl/lib/x11/src In directory sc8-pr-cvs1:/tmp/cvs-serv22279/src Log Message: Directory /cvsroot/jungerl/jungerl/lib/x11/src added to the repository |
From: <to...@us...> - 2003-03-06 22:56:39
|
Update of /cvsroot/jungerl/jungerl/lib/x11/ebin In directory sc8-pr-cvs1:/tmp/cvs-serv22279/ebin Log Message: Directory /cvsroot/jungerl/jungerl/lib/x11/ebin added to the repository |
From: <to...@us...> - 2003-03-06 22:56:39
|
Update of /cvsroot/jungerl/jungerl/lib/x11/include In directory sc8-pr-cvs1:/tmp/cvs-serv22279/include Log Message: Directory /cvsroot/jungerl/jungerl/lib/x11/include added to the repository |
From: <to...@us...> - 2003-03-06 22:56:16
|
Update of /cvsroot/jungerl/jungerl/lib/x11 In directory sc8-pr-cvs1:/tmp/cvs-serv22143/x11 Log Message: Directory /cvsroot/jungerl/jungerl/lib/x11 added to the repository |