The output we see when we run lets say strace -e trace=open <program> which
will list all the open syscalls performed in the program. Now as per
README-linux-ptrace (if i interpreted it correctly) when tracee is
ptrace-stop the necessary information which we are getting as output is
extracted by ptrace(PTRACE_*,pid,...,...)  and this extracted information
is somehow directed towards its specific decoder in this example open.c and
then the decoders in the open.c are responsible for printing out the
information.Am i correct with the flow?

On Mon, Mar 6, 2017 at 8:32 PM, Rishi Bhatt <bhatt.rishi...@gmail.com>
wrote:

> Thanks,
> It helped me to where to look for answers i got a better idea now how a -e
> trace=option works,And i see many *.c files which have these SYS_FUNC() in
> them what are these files for?
>
> Thanks,
> Rishi
>
> On Sat, Mar 4, 2017 at 10:58 PM, Eugene Syromyatnikov <evg...@gmail.com>
> wrote:
>
>> On Sat, Mar 4, 2017 at 5:15 PM, Rishi Bhatt <bhatt.rishi...@gmail.com>
>> wrote:
>> > Thanks ldv,
>> > I have read the man pages and got basic idea about strace.Now where
>> should i
>> > start understanding the code?The codebase is so big i dont know where to
>> > start.
>> The core is strace.c and syscall.c (mostly). Take a look at some
>> simple (umask.c, readahead.c, mount.c) and not so simple (time.c,
>> ioctl.c, net.c, signal.c, ipc.c) decoders. You can look at some tests
>> then, like umask, or aio, or sendmmsg, or btrfs. util.c contains
>> various utility functions, defs.h contains various utility macros and
>> inlines. linux directory contains various (mostly
>> architecture-specific) system definitions which are preferred to be
>> part of strace codebase. linux/*/syscallent.h contains wirings for
>> syscalls. xlat directory contains sources for generation of symbolic
>> constant headers.
>>
>> > On Sat, Mar 4, 2017 at 4:25 AM, Dmitry V. Levin <l...@altlinux.org>
>> wrote:
>> >>
>> >> Hi,
>> >>
>> >> On Fri, Mar 03, 2017 at 11:55:33PM +0530, Rishi Bhatt wrote:
>> >> > Hi ldv,
>> >> > thanks for the reply i have build the strace  source-code and when i
>> >> > was building it it skipped 50 test cases. So do you know why that
>> >> > happened? or is it the  matter that i should look into?
>> >>
>> >> Why skipped or why 50?
>> >>
>> >> A test can be skipped if
>> >> - it is not applicable for the architecture being tested, for example,
>> >>   the test is for a syscall that is not inplemented for this
>> architecture;
>> >> - the test framework doesn't support the test, for example, a kernel
>> >>   module is not loaded, or the filesystem is not capable, etc.
>> >>
>> >> Currently there are two architectures where exactly 50 tests are
>> skipped:
>> >> - native x86_64;
>> >> - native sparc64.
>> >>
>> >> I bet sparc64 is not your case, so you must be running the test suite
>> >> natively on x86_64.
>> >>
>> >> > And can you guide me where should i start to know about -e
>> trace=class?
>> >>
>> >> I think the best is to start with reading the manual page, then look
>> >> at the code to understand how it's implemented.  As soon as you've
>> >> understood the implementation, it's easy to extend.
>> >>
>> >
>> >>
>> >> --
>> >> ldv
>> >>
>> >>
>> >> ------------------------------------------------------------
>> ------------------
>> >> Check out the vibrant tech community on one of the world's most
>> >> engaging tech sites, SlashDot.org! http://sdm.link/slashdot
>> >> _______________________________________________
>> >> Strace-devel mailing list
>> >> Strace-devel@lists.sourceforge.net
>> >> https://lists.sourceforge.net/lists/listinfo/strace-devel
>> >>
>> >
>> >
>> > ------------------------------------------------------------
>> ------------------
>> > Check out the vibrant tech community on one of the world's most
>> > engaging tech sites, SlashDot.org! http://sdm.link/slashdot
>> > _______________________________________________
>> > Strace-devel mailing list
>> > Strace-devel@lists.sourceforge.net
>> > https://lists.sourceforge.net/lists/listinfo/strace-devel
>> >
>>
>>
>>
>> --
>> Eugene Syromyatnikov
>> mailto:evg...@gmail.com
>> xmpp:esyr@jabber.{ru|org}
>>
>> ------------------------------------------------------------
>> ------------------
>> Check out the vibrant tech community on one of the world's most
>> engaging tech sites, SlashDot.org! http://sdm.link/slashdot
>> _______________________________________________
>> Strace-devel mailing list
>> Strace-devel@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/strace-devel
>>
>
>
------------------------------------------------------------------------------
Announcing the Oxford Dictionaries API! The API offers world-renowned
dictionary content that is easy and intuitive to access. Sign up for an
account today to start using our lexical data to power your apps and
projects. Get started today and enter our developer competition.
http://sdm.link/oxford
_______________________________________________
Strace-devel mailing list
Strace-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/strace-devel

Reply via email to