1441
Comment:
|
3023
|
Deletions are marked like this. | Additions are marked like this. |
Line 3: | Line 3: |
== How do I ...? == 1. ["/KernelCompilation"] How do I compile a kernel? 1. ["/KernelCrossCompilation"] How do I cross compile a kernel? |
|
Line 4: | Line 8: |
1. ["/KernelCompilation"] How do I compile a kernel? 1. ["/get_current"] How does `get_current()` work? 1. ["/LibraryFunctionsInKernel"] Can I use library functions in the kernel ? 1. ["/asmlinkage"] What is `asmlinkage` ? 1. ["/SyscallTrace"] How do I intercept system calls ? 1. ["/People on KernelNewBies"] Who can I find on #kernelnewbies?? 1. ["/System.map"] What is System.map file? |
1. ["KernelHackingTools"] 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 ? 1. ["/LinuxKernelDebug101"] Whats the easiest way to debug ? 1. ["CareerAdvice"] How do I get a job as kernel hacker? 1. ["UpstreamMerge"] How do I get my code into the upstream kernel? == Kernelnewbies questions == 1. ["/VariousKernelTrees"] What are the various kernel trees for ? |
Line 12: | Line 19: |
1. ["/ExternAndStaticInlineVariable"] What's the difference between extern and static inline ? | 1. ["/People on KernelNewBies"] Who can I find on #kernelnewbies? 1. ["/DoINeedToKnowAssembler"] Do I need to know assembler to hack the kernel? 1. ["DoesNotWork"] I built my own kernel, but it does not work. What's the problem? == Kernel hacking == |
Line 14: | Line 26: |
1. ["/System.map"] What is the System.map file? | |
Line 15: | Line 28: |
1. ["/IDEs"] Are there any good IDEs? How do I handle all this code? 1. ["/DoWhile0"] Why do a lot of `#defines` in the kernel use `do { ... } while (0)`? |
|
Line 20: | Line 31: |
1. ["/LinuxKernelModuleCompile"] How can I compile a Linux Kernel Module ? | 1. ["/LibraryFunctionsInKernel"] Can I use library functions in the kernel ? 1. ["/SyscallTrace"] How do I intercept system calls ? 1. ["/LinkedLists"] How does the kernel implements linked lists? 1. ["/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? 1. ["/current"] How does the `current` macro helps you access your process-related record? 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? |
Line 22: | Line 44: |
1. ["/InitExitMacros"] What are the __init and __exit macros ? | 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"] test_wp_bit magic, or how exception fixups work. 1. ["/BUG"] How does BUG() work? 1. ["/StackTrace"] i. Why is there a function on my stack trace that does not get called? i. How do I manually get a stack trace? == Hardware Questions == 1. ["/HyperthreadingDoesNotWork"] My CPU says it can do hyperthreading. Why do I only see one thread? |
If you are working on answering a frequently asked question, please add it to ["FAQsInProgress"].
How do I ...?
["/KernelCompilation"] How do I compile a kernel?
["/KernelCrossCompilation"] How do I cross compile a kernel?
- ["/HowToApplyAPatch"] How do I apply a patch?
["KernelHackingTools"] Are there any good IDEs? How do I handle all this code?
["/CompileVendorDriver"] How do I compile a 3rd party device driver ?
["/LinuxKernelModuleCompile"] How can I compile a Linux Kernel Module ?
["/LinuxKernelDebug101"] Whats the easiest way to debug ?
["CareerAdvice"] How do I get a job as kernel hacker?
["UpstreamMerge"] How do I get my code into the upstream kernel?
Kernelnewbies questions
["/VariousKernelTrees"] What are the various kernel trees for ?
- ["/WhereDoIBegin"] Where do I begin?
["/People on KernelNewBies"] Who can I find on #kernelnewbies?
- ["/DoINeedToKnowAssembler"] Do I need to know assembler to hack the kernel?
["DoesNotWork"] I built my own kernel, but it does not work. What's the problem?
Kernel hacking
["/VariousKernelTrees"] What are the various kernel trees for ?
- ["/System.map"] What is the System.map file?
["/MajorMinor"] What major/minor does XXX have ?
["/CodingStyle"] What coding style should I use?
["/LikelyUnlikely"] What means the macros likely() and unlikely() ?
- ["/Preemption"] What does preemption mean ? Is it available under Linux ?
["/LibraryFunctionsInKernel"] Can I use library functions in the kernel ?
["/SyscallTrace"] How do I intercept system calls ?
["/LinkedLists"] How does the kernel implements linked lists?
["/WhyWritingFilesFromKernelIsBad"] Why reading/writing files from the kernel is bad, and how to do otherwise ?
Linux kernel gotchas
["/get_current"] How does get_current() work?
["/current"] How does the current macro helps you access your process-related record?
["/ExternAndStaticInlineVariable"] What's the difference between extern and static inline?
["/DoWhile0"] Why do a lot of #defines in the kernel use do { ... } while (0)?
["/LikelyUnlikely"] What do the macros likely() and unlikely() mean?
["/ContainerOf"] What is container_of ? How does it work ?
["/InitExitMacros"] What are the __init and __exit macros ?
["/WhereIsbad_udelay"] Now, where is __bad_udelay defined?
["/asmlinkage"] What is asmlinkage ?
- ["/down"] What is that jmp 1b doing out there?
["/TestWpBit"] test_wp_bit magic, or how exception fixups work.
- ["/BUG"] How does BUG() work?
["/StackTrace"]
- Why is there a function on my stack trace that does not get called?
- How do I manually get a stack trace?
Hardware Questions
["/HyperthreadingDoesNotWork"] My CPU says it can do hyperthreading. Why do I only see one thread?
["CategoryFAQ"]