If you are working on answering a frequently asked question, please add it to ["FAQsInProgress"]. == How do I ...? == 1. ["/KernelCompilation"] How do I compile a kernel? 1. ["/HowToApplyAPatch"] How do I apply a patch? 1. ["/IDEs"] Are there any good IDEs? How do I handle all this code? 1. ["/CompileVendorDriver"] How do I compile a 3rd party device driver ? 1. ["/LinuxKernelModuleCompile"] How can I compile a Linux Kernel Module ? == Kernelnewbies questions == 1. ["/VariousKernelTrees"] What are the various kernel trees for ? 1. ["/WhereDoIBegin"] Where do I begin? 1. ["/People on KernelNewBies"] Who can I find on #kernelnewbies? == Kernel hacking == 1. ["/VariousKernelTrees"] What are the various kernel trees for ? 1. ["/System.map"] What is the System.map file? 1. ["/MajorMinor"] What major/minor does XXX have ? 1. ["/CodingStyle"] What coding style should I use? 1. ["/LikelyUnlikely"] What means the macros `likely()` and `unlikely()` ? 1. ["/Preemption"] What does preemption mean ? Is it available under Linux ? 1. ["/LibraryFunctionsInKernel"] Can I use library functions in the kernel ? 1. ["/SyscallTrace"] How do I intercept system calls ? == Linux kernel gotchas == 1. ["/get_current"] How does `get_current()` work? 1. ["/ExternAndStaticInlineVariable"] What's the difference between extern and static inline? 1. ["/DoWhile0"] Why do a lot of `#defines` in the kernel use `do { ... } while (0)`? 1. ["/LikelyUnlikely"] What do the macros `likely()` and `unlikely()` mean? 1. ["/ContainerOf"] What is ''container_of'' ? How does it work ? 1. ["/InitExitMacros"] What are the __init and __exit macros ? 1. ["/WhereIs__bad_udelay"] Now, where is __bad_udelay defined? 1. ["/asmlinkage"] What is `asmlinkage` ? 1. ["/down"] What is that jmp 1b doing out there? 1. {"/TestWpBit"] How test_wp_bit works, or "how do I use exceptions?" ---- ["CategoryFAQ"]