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? 2. /KernelCrossCompilation How do I cross compile a kernel? 3. /DisklessImages An Introduction to Diskless Booting. 4. /HowToApplyAPatch How do I apply a patch? 5. KernelHackingTools Are there any good IDEs? How do I handle all this code? 6. /CompileVendorDriver How do I compile a 3rd party device driver ? 7. /LinuxKernelModuleCompile How can I compile a Linux Kernel Module ? 8. /LinuxKernelDebug101 Whats the easiest way to debug ? 9. CareerAdvice How do I get a job as kernel hacker? 10. UpstreamMerge How do I get my code into the upstream kernel? Kernelnewbies questions 1. /VariousKernelTrees What are the various kernel trees for ? 2. /WhereDoIBegin Where do I begin? 3. /People on KernelNewBies Who can I find on #kernelnewbies? 4. /DoINeedToKnowAssembler Do I need to know assembler to hack the kernel? 5. /DoINeedToKnowHardware Do I need to know a lot about hardware to hack the kernel? 6. DoesNotWork I built my own kernel, but it does not work. What's the problem? Kernel hacking 1. /VariousKernelTrees What are the various kernel trees for ? 2. /System.map What is the System.map file? 3. /MajorMinor What major/minor does XXX have ? 4. /CodingStyle What coding style should I use? 5. /LikelyUnlikely What means the macros likely() and unlikely() ? 6. /Preemption What does preemption mean ? Is it available under Linux ? 7. /LibraryFunctionsInKernel Can I use library functions in the kernel ? 8. /SyscallTrace How do I intercept system calls ? 9. /LinkedLists How does the kernel implements linked lists? 10. /WhyWritingFilesFromKernelIsBad Why reading/writing files from the kernel is bad, and how to do otherwise ? Linux kernel gotchas 1. /get current How does get_current() work? 2. /current How does the current macro helps you access your process-related record? 3. /ExternAndStaticInlineVariable What's the difference between extern and static inline? 4. /DoWhile0 Why do a lot of #defines in the kernel use do { ... } while (0)? 5. /LikelyUnlikely What do the macros likely() and unlikely() mean? 6. /ContainerOf What is container_of ? How does it work ? 7. /InitExitMacros What are the __init and __exit macros ? 8. /WhereIs bad udelay Now, where is __bad_udelay defined? 9. /asmlinkage What is asmlinkage ? 10. /down What is that jmp 1b doing out there? 11. /TestWpBit test_wp_bit magic, or how exception fixups work. 12. /BUG How does BUG() work? 13. /StackTrace 1. Why is there a function on my stack trace that does not get called? 2. How do I manually get a stack trace? 14. BootSectorAndKernelImage Why does the kernel no longer directly boot from floppy? 15. /FastpathAndSlowpath What is the difference between terms: "Fast path" and "Slow path" ? Hardware Questions 1. /HyperthreadingDoesNotWork My CPU says it can do hyperthreading. Why do I only see one thread? * CategoryFAQ