Let's look at the implementation of this system call directly in the source code of the Linux kernel. In particular, this is needed whenever a system call argument is: a pointer to a pointer a pointer to a struct containing a pointer e. Now, move back to the terminal where you left the cat command running and enter some text. You can check your version with uname -r , and then pick a download at kernel. Now, grep getdents from the trace.
nest...