Mathieu Desnoyers [Fri, 26 Aug 2011 10:29:48 +0000 (06:29 -0400)]
Remove makefile.am deprecated files
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Fri, 26 Aug 2011 10:29:29 +0000 (06:29 -0400)]
Remove deprecated files
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Fri, 26 Aug 2011 10:27:00 +0000 (06:27 -0400)]
Disallow local apps tracing for setuid binaries
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Fri, 26 Aug 2011 10:17:23 +0000 (06:17 -0400)]
cancel global thread at exit
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Fri, 26 Aug 2011 00:22:37 +0000 (20:22 -0400)]
libust events: lazy probe binding
Ability to cope with abritrary execution order of constructors, mainly
that libust constructor will always be called before the constructor of
the main programs (which will likely contain the probe callbacks and
descriptions from TRACEPOINT_EVENT) requires us to support lazy binding
between event and probes, "fixed" at probe registration time.
Allowing this lazy binding natively supports instrumentation of .so
(without changing the applications), and supports instrumenting shared
objects with dlopen().
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Thu, 25 Aug 2011 21:17:19 +0000 (17:17 -0400)]
Add gid to registration
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Thu, 25 Aug 2011 21:14:49 +0000 (17:14 -0400)]
Add ppid field to registration
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Thu, 25 Aug 2011 20:55:31 +0000 (16:55 -0400)]
Send comm name on register
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Thu, 25 Aug 2011 20:54:53 +0000 (16:54 -0400)]
Stress-test buffer in hello.c
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Thu, 25 Aug 2011 20:54:23 +0000 (16:54 -0400)]
Update comment
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Thu, 25 Aug 2011 17:49:01 +0000 (13:49 -0400)]
Fix reversed mask usage of subbuffer offset
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Thu, 25 Aug 2011 17:10:02 +0000 (13:10 -0400)]
Fix buffer allocation alignment error (fix overwrite mode)
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Thu, 25 Aug 2011 16:36:08 +0000 (12:36 -0400)]
metadata: fix wait handling
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Thu, 25 Aug 2011 16:16:40 +0000 (12:16 -0400)]
Fix metadata wait handling
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Thu, 25 Aug 2011 15:47:42 +0000 (11:47 -0400)]
Cleanup
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Thu, 25 Aug 2011 14:39:04 +0000 (10:39 -0400)]
Centralize control of contructors/destructors
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Wed, 24 Aug 2011 20:21:52 +0000 (16:21 -0400)]
Document prod/consumer synchro
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Wed, 24 Aug 2011 20:07:36 +0000 (16:07 -0400)]
update comment
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Wed, 24 Aug 2011 20:04:34 +0000 (16:04 -0400)]
Fix initial semaphore+timeout
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Wed, 24 Aug 2011 00:19:03 +0000 (20:19 -0400)]
UST_REGISTER_TIMEOUT 0 and 1 change (follow poll() timeout)
0 now means "don't wait" and -1 "wait forever".
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Tue, 23 Aug 2011 23:53:12 +0000 (19:53 -0400)]
Add env var UST_REGISTER_TIMEOUT
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Tue, 23 Aug 2011 23:28:39 +0000 (19:28 -0400)]
Add register done command
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Tue, 23 Aug 2011 21:15:57 +0000 (17:15 -0400)]
Add UST core probe (metadata description)
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Tue, 23 Aug 2011 21:12:44 +0000 (17:12 -0400)]
Tracepoint event: Document search paths
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Tue, 23 Aug 2011 21:00:35 +0000 (17:00 -0400)]
Remove unneeded CONFIG_* define check
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Tue, 23 Aug 2011 20:48:23 +0000 (16:48 -0400)]
Cleanup
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Tue, 23 Aug 2011 20:40:02 +0000 (16:40 -0400)]
Fix metadata channel creation
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Tue, 23 Aug 2011 20:12:06 +0000 (16:12 -0400)]
Add missing error handling
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Tue, 23 Aug 2011 19:56:57 +0000 (15:56 -0400)]
Fix channel release call order wrt free
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Tue, 23 Aug 2011 19:14:48 +0000 (15:14 -0400)]
set missing shm obj index field
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Tue, 23 Aug 2011 18:36:16 +0000 (14:36 -0400)]
fix shm objects wait fd and allocation error handling
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Tue, 23 Aug 2011 18:19:54 +0000 (14:19 -0400)]
Fix channel transport name
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Tue, 23 Aug 2011 18:00:58 +0000 (14:00 -0400)]
Implement ioctl-alike communication
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Tue, 23 Aug 2011 16:42:32 +0000 (12:42 -0400)]
ust comm: more resilient handle table, fix size of reply
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Tue, 23 Aug 2011 16:08:31 +0000 (12:08 -0400)]
Make connect error retry wait 5 seconds
Until we add the wait scheme.
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Tue, 23 Aug 2011 16:04:46 +0000 (12:04 -0400)]
Make client init quiet (except in UST_DEBUG mode)
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Tue, 23 Aug 2011 16:03:34 +0000 (12:03 -0400)]
factorize out send_reply
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Tue, 23 Aug 2011 15:57:14 +0000 (11:57 -0400)]
Error message should only appear when return value is negative
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Tue, 23 Aug 2011 15:34:14 +0000 (11:34 -0400)]
Session create/release tested.
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Mon, 22 Aug 2011 19:35:10 +0000 (15:35 -0400)]
Rename sessiond comm lib into ust comm
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Mon, 22 Aug 2011 15:14:43 +0000 (11:14 -0400)]
Set SOCK_CLOEXEC on socket connected to
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Mon, 22 Aug 2011 01:12:30 +0000 (21:12 -0400)]
Add major/minor version in libust registration
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Sun, 21 Aug 2011 22:31:42 +0000 (18:31 -0400)]
Update libust communication protocol
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Sun, 21 Aug 2011 22:02:48 +0000 (18:02 -0400)]
libust comm: use own message structures
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Sat, 20 Aug 2011 20:55:51 +0000 (16:55 -0400)]
Spawn autonomous listener threads
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Sat, 20 Aug 2011 19:57:24 +0000 (15:57 -0400)]
add parse message
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Sat, 20 Aug 2011 18:36:39 +0000 (14:36 -0400)]
Add work-in-progress lttng-ust-comm
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Sat, 20 Aug 2011 18:02:46 +0000 (14:02 -0400)]
Coding style cleanup
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Sat, 20 Aug 2011 17:34:59 +0000 (13:34 -0400)]
Comment out unimplemented vtid
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Sat, 20 Aug 2011 13:43:48 +0000 (09:43 -0400)]
comment shm
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Sat, 20 Aug 2011 13:28:32 +0000 (09:28 -0400)]
shm: Include the returned element length in the range check
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Sat, 20 Aug 2011 13:20:40 +0000 (09:20 -0400)]
shm: introduce shmp_index
Add array offsets before checking the target pointer range.
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Sat, 20 Aug 2011 12:50:43 +0000 (08:50 -0400)]
Cleanup
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Sat, 20 Aug 2011 00:44:21 +0000 (20:44 -0400)]
Add wakeup on subbuffer delivery
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Sat, 20 Aug 2011 00:03:53 +0000 (20:03 -0400)]
Implement shm object table
.. for multi-process accesses to the same maps, with safe "pointers".
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Tue, 16 Aug 2011 21:13:58 +0000 (17:13 -0400)]
Update tests/hello test-case layout (cleanup)
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Tue, 16 Aug 2011 19:57:45 +0000 (15:57 -0400)]
Clarify TRACEPOINT_EVENT comments
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Thu, 11 Aug 2011 23:51:57 +0000 (19:51 -0400)]
Fix float/double handling
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Thu, 11 Aug 2011 23:46:24 +0000 (19:46 -0400)]
test and fix array, sequence, string
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Thu, 11 Aug 2011 23:31:10 +0000 (19:31 -0400)]
test: add array test
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Thu, 11 Aug 2011 23:28:06 +0000 (19:28 -0400)]
Merge copy of lttng-sessiond-comm
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Wed, 10 Aug 2011 18:17:33 +0000 (14:17 -0400)]
Tracepoint event test update
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Wed, 10 Aug 2011 15:13:57 +0000 (11:13 -0400)]
tests: Build all integer declarations
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Wed, 10 Aug 2011 15:13:06 +0000 (11:13 -0400)]
Build TRACEPOINT_EVENT integer type
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Tue, 9 Aug 2011 13:46:51 +0000 (09:46 -0400)]
Add UST_DEBUG env. var. support
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Mon, 8 Aug 2011 23:15:46 +0000 (19:15 -0400)]
libust 2.0 + ringbuffer + TRACEPOINT_EVENT builds and runs
Missing pieces: Now libust needs to talk to the session daemon.
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Thu, 4 Aug 2011 22:36:12 +0000 (18:36 -0400)]
Add ring buffer comment about shm
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Thu, 4 Aug 2011 21:05:42 +0000 (17:05 -0400)]
Use shm handle, fix allocation space, take care of alignment
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Thu, 4 Aug 2011 14:20:00 +0000 (10:20 -0400)]
Commit changes prior to shmp read-only header
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Wed, 3 Aug 2011 01:45:27 +0000 (21:45 -0400)]
Add float descriptions (metadata)
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Wed, 3 Aug 2011 01:36:22 +0000 (21:36 -0400)]
TRACEPOINT_EVENT: add floating point support
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Thu, 28 Jul 2011 14:52:04 +0000 (10:52 -0400)]
Fix context order
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Wed, 27 Jul 2011 19:07:25 +0000 (15:07 -0400)]
Update tracepoint header comments
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Wed, 27 Jul 2011 18:49:40 +0000 (14:49 -0400)]
Change tracepoint.h header
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Wed, 27 Jul 2011 18:10:36 +0000 (14:10 -0400)]
TRACEPOINT_EVENT API
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Wed, 27 Jul 2011 14:42:06 +0000 (10:42 -0400)]
ltt-context: document that pointers may change
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Wed, 27 Jul 2011 14:40:13 +0000 (10:40 -0400)]
context: document and check that only last context is removed
Merge from lttng-modules:
commit
4cae220c1be2cc73008603a21152fce7643cfc35
Author: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Date: Sat Jul 23 12:37:54 2011 -0400
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Yannick Brosseau [Mon, 25 Jul 2011 18:56:16 +0000 (14:56 -0400)]
Fix git URL
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Sun, 17 Jul 2011 14:13:49 +0000 (10:13 -0400)]
Implement multi-session registry
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Sat, 16 Jul 2011 18:44:09 +0000 (14:44 -0400)]
implement ring buffer clients
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Sat, 16 Jul 2011 17:30:24 +0000 (13:30 -0400)]
Resync with kernel LTTng headers
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Sat, 16 Jul 2011 17:06:06 +0000 (13:06 -0400)]
Lib ring buffer: use TLS for nesting count
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Mon, 4 Jul 2011 17:03:45 +0000 (13:03 -0400)]
Ring buffer: use shmp (shared-memory pointers) for per-channel shm structures
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Mon, 27 Jun 2011 19:24:39 +0000 (15:24 -0400)]
Port ring buffer to userspace, part 1
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Mon, 27 Jun 2011 16:07:49 +0000 (12:07 -0400)]
Merge LTTng commit
360f38ea4fee91e2403c03cb43841ef6769aaac7
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Mon, 27 Jun 2011 16:06:28 +0000 (12:06 -0400)]
Merge LTTng commit
5c0552665e4d152e97edc995650711d4f6ac418d
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Mon, 27 Jun 2011 16:05:27 +0000 (12:05 -0400)]
Merge LTTng commit
c6485006a92b1b86fbb48c2b277732d3405295c9
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Mon, 27 Jun 2011 16:04:33 +0000 (12:04 -0400)]
Merge LTTng commit
e64957da15e3652322dcf6a5389beb01901de8e6
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Mon, 27 Jun 2011 16:02:21 +0000 (12:02 -0400)]
Build libringbuffer, remove kernel includes
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Thu, 16 Jun 2011 19:38:22 +0000 (15:38 -0400)]
Initial addition of lttng ring buffer clients
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Thu, 16 Jun 2011 19:37:16 +0000 (15:37 -0400)]
add ltt-probes.c
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Thu, 16 Jun 2011 19:36:27 +0000 (15:36 -0400)]
Add event and context files
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Thu, 16 Jun 2011 19:33:48 +0000 (15:33 -0400)]
Add alignment header
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Thu, 16 Jun 2011 19:33:33 +0000 (15:33 -0400)]
Add bug management header
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Thu, 16 Jun 2011 19:33:23 +0000 (15:33 -0400)]
Add bitfield header
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Thu, 16 Jun 2011 19:29:38 +0000 (15:29 -0400)]
lttng priority heap initial import
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Thu, 16 Jun 2011 19:29:28 +0000 (15:29 -0400)]
lib ring buffer initial import
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Thu, 16 Jun 2011 19:24:23 +0000 (15:24 -0400)]
More removal
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Thu, 16 Jun 2011 19:09:17 +0000 (15:09 -0400)]
Move away headers that will be deprecated
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mathieu Desnoyers [Thu, 16 Jun 2011 18:59:54 +0000 (14:59 -0400)]
Move away files that will be deprecated
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
This page took 0.040761 seconds and 5 git commands to generate.