R
- race
conditions, Concurrency in the Kernel, Module-Loading Races, Pitfalls in scull, Kernel Timers
- kernel timers and, Kernel Timers
- module loading, Module-Loading Races
- sequences, Pitfalls in scull
- RAM (random
access memory), I/O Registers and Conventional Memory, Remapping RAM
- remapping, Remapping RAM
- versus I/O registers, I/O Registers and Conventional Memory
- random access memory, Remapping RAM (see RAM)
- random
numbers, Installing an Interrupt Handler
- rates, limitations of, Rate Limiting
- RCU
(read-copy-update), Read-Copy-Update
- rdtscl
function, Processor-Specific Registers
- read function (tty drivers), No read Function?
- read
method, File Operations, The file Structure, read and write, The read Method, The read Method, Debugging by Watching, Oops Messages, Reading data from the device, Talking to the DMA controller
- arguments to, read and write
- code for, The read Method
- configuring DMA controllers, Talking to the DMA controller
- f_pos field (file structure)
and, The file Structure
- oops messages, Oops Messages
- poll method and, Reading data from the device
- return values, rules for
interpreting, The read Method
- strace command and, Debugging by Watching
- read-copy-update (RCU), Read-Copy-Update
- read-only /proc files,
creating, Implementing files in /proc
- read/write
instructions, reordering, I/O Registers and Conventional Memory
- read/write position, changing, File Operations
- readdir method, File Operations
- reader/writer semaphores, Reader/Writer Semaphores
- reader/writer spinlocks, Reader/Writer Spinlocks
- reading, Blocking and Nonblocking Operations
- blocking/nonblocking
operations, Blocking and Nonblocking Operations
- readv
calls, readv and writev
- readv method, File Operations
- read_proc
function, Implementing files in /proc
- rebuild_header method, The Device Methods
- reception
of packets, The Physical Transport of Packets, The Physical Transport of Packets
- recovery,
error, Error Handling During Initialization
- redirecting
console messages, Redirecting Console Messages
- reentrant, Concurrency in the Kernel, System Hangs
- calls, System Hangs
- code, Concurrency in the Kernel
- reference counters (kobjects), Reference count manipulation
- regions, Accessing the I/O and Memory Spaces, Remapping Specific I/O Regions
- generic I/O address
spaces, Accessing the I/O and Memory Spaces
- I/O memory management, Remapping Specific I/O Regions
- registers, Processor-Specific Registers, Processor-Specific Registers, I/O Registers and Conventional Memory, Configuration Registers and Initialization, Configuration Registers and Initialization, Configuration Registers and Initialization, Configuration Registers and Initialization, Configuration Registers and Initialization, Configuration Registers and Initialization, Quick Reference, DMA mappings, Scatter/gather mappings, Scatter/gather mappings, ioctls, ioctls
- counters, Processor-Specific Registers
- I/O, I/O Registers and Conventional Memory
- LSR, ioctls
- mapping, DMA mappings, Scatter/gather mappings
- MSR, ioctls
- PCI, Configuration Registers and Initialization, Configuration Registers and Initialization, Configuration Registers and Initialization, Configuration Registers and Initialization, Configuration Registers and Initialization, Configuration Registers and Initialization, Quick Reference
- class, Configuration Registers and Initialization
- deviceID, Configuration Registers and Initialization
- subsystem
deviceID, Configuration Registers and Initialization
- subsystem
vendorID, Configuration Registers and Initialization
- vendorID, Configuration Registers and Initialization
- processor-specific, Processor-Specific Registers
- scatterlists (and
mapping), Scatter/gather mappings
- register_blkdev function, Block Driver Registration
- register_chrdev
function, udev
- register_netdev
function, Initializing Each Device
- registration, The Cleanup Function, Error Handling During Initialization, Module-Loading Races, Char Device Registration–The Older Way, Quick Reference, Registering a PCI Driver, Registering a USB Driver, Registering a USB Driver, Bus registration, Device registration, Registering DMA usage, Registration–A Note on Sector Sizes, Disk Registration, Device Registration, A Small TTY Driver, struct termios
- block drivers, Registration–A Note on Sector Sizes
- buses, Bus registration
- char drivers, Char Device Registration–The Older Way
- cleanup
function, The Cleanup Function
- devices, Device registration, Device Registration
- disks, Disk Registration
- DMA usage, Registering DMA usage
- interrupt
handlers, Quick Reference
- module-loading
races, Module-Loading Races
- PCI
drivers, Registering a PCI Driver
- struct usb_driver
structure, Registering a USB Driver
- tiny_tty_driver
variable, struct termios
- tracking, Error Handling During Initialization
- tty drivers, A Small TTY Driver
- USB
drivers, Registering a USB Driver
- release
calls, Single-Open Devices
- release functions (kobjects), Release functions and kobject types
- release method, File Operations, The release Method, The release Method, The release Method, Blocking open as an Alternative to EBUSY, Cloning the Device on open, Release functions and kobject types, The open and release Methods
- block drivers, The open and release Methods
- blocking, Blocking open as an Alternative to EBUSY
- cloning devices, Cloning the Device on open
- kobjects, Release functions and kobject types
- release_dma_lock function, Talking to the DMA controller
- releasing spinlocks, The Spinlock Functions
- RELEVANT_IFLAG macro, set_termios
- remapping, Remapping RAM, Remapping RAM, Remapping Kernel Virtual Addresses
- (see also mapping)
- kernel virtual
addresses, Remapping Kernel Virtual Addresses
- RAM, Remapping RAM
- remap_pfn_range function, Using remap_pfn_range
- remote0
(IP number), Assigning IP Numbers
- removable
media (supporting), Supporting Removable Media
- remove_proc_entry function, Creating your /proc file
- reordering
read/write instructions, I/O Registers and Conventional Memory
- reports
(interrupts), Installing an Interrupt Handler
- requests, Blocking open as an Alternative to EBUSY, Request Processing–Doing without a request queue, The bio structure
- blocking, Blocking open as an Alternative to EBUSY
- processing, Request Processing–Doing without a request queue
- state of
(processing), The bio structure
- request_dma
function, Registering DMA usage
- request_firmware function, The Kernel Firmware Interface
- requeuing/rescheduling tasks, Kernel Timers
- requirements,
code, Preliminaries
- resolution
of time, Knowing the Current Time
- resolving
Ethernet addresses, MAC Address Resolution
- resource flags (PCI), Accessing the I/O and Memory Spaces
- restriction of access, Restricting Access to a Single User at a Time
- retrieval of current time, Knowing the Current Time–Knowing the Current Time
- return
values, The Return Value, Handler Arguments and Return Value
- interrupt handlers, Handler Arguments and Return Value
- switch statements, The Return Value
- revalidate
method, Supporting Removable Media
- ring buffers
(DMA), Overview of a DMA Data Transfer
- RISC processor
and inline assembly code, Processor-Specific Registers
- rmmod
program, Loadable Modules, Loadable Modules, The Hello World Module, The Hello World Module, Dynamic Allocation of Major Numbers
- dynamically allocating major
numbers, Dynamic Allocation of Major Numbers
- testing modules using, The Hello World Module
- roles, The Role of the Device Driver–The Role of the Device Driver, Splitting the Kernel–Loadable Modules
- of device drivers, The Role of the Device Driver–The Role of the Device Driver
- kernels, Splitting the Kernel–Loadable Modules
- root
hubs (USB), USB and Sysfs
- routing, network management, Splitting the Kernel
- rq_data_dir field (request structure), A Simple request Method
- rules, Ambiguous Rules, Lock Ordering Rules
- locking, Ambiguous Rules
- ordering, Lock Ordering Rules
- running, Installing a Shared Handler (see execution)
- runtime,
code, Loadable Modules
- rwsems
(reader/writer semaphores), Reader/Writer Semaphores
..................Content has been hidden....................
You can't read the all page of ebook, please click
here login for view all page.