| 
     
      
      
      From: Rishi B. <bha...@gm...> - 2017-03-07 16:32:03
      
     
   | 
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 <bha...@gm...> 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 <ev...@gm...> > wrote: > >> On Sat, Mar 4, 2017 at 5:15 PM, Rishi Bhatt <bha...@gm...> >> 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 <ld...@al...> >> 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 >> >> Str...@li... >> >> 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 >> > Str...@li... >> > https://lists.sourceforge.net/lists/listinfo/strace-devel >> > >> >> >> >> -- >> Eugene Syromyatnikov >> mailto:ev...@gm... >> 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 >> Str...@li... >> https://lists.sourceforge.net/lists/listinfo/strace-devel >> > >  |