An axiomatic, step-by-step deconstruction of the Linux open() system call.
From open("file") in C to the syscall assembly instruction.
Topics: Headers, Preprocessor, Compilation, Linking, PLT/GOT, Assembly.
Tracing the first kernel function: getname().
Topics: struct filename, Slab Allocator, kprobes, User-to-Kernel Copy.
Tracing the return of do_filp_open().
Topics: struct file, Atomics, Error Pointers, Dentry Name Verification.
Coming soon: build_open_flags() and get_unused_fd_flags().