aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation/filesystems/xip.txt
diff options
context:
space:
mode:
Diffstat (limited to 'Documentation/filesystems/xip.txt')
-rw-r--r--Documentation/filesystems/xip.txt15
1 files changed, 9 insertions, 6 deletions
diff --git a/Documentation/filesystems/xip.txt b/Documentation/filesystems/xip.txt
index 0466ee569278..b77472949ede 100644
--- a/Documentation/filesystems/xip.txt
+++ b/Documentation/filesystems/xip.txt
@@ -28,12 +28,15 @@ Implementation
28Execute-in-place is implemented in three steps: block device operation, 28Execute-in-place is implemented in three steps: block device operation,
29address space operation, and file operations. 29address space operation, and file operations.
30 30
31A block device operation named direct_access is used to retrieve a 31A block device operation named direct_access is used to translate the
32reference (pointer) to a block on-disk. The reference is supposed to be 32block device sector number to a page frame number (pfn) that identifies
33cpu-addressable, physical address and remain valid until the release operation 33the physical page for the memory. It also returns a kernel virtual
34is performed. A struct block_device reference is used to address the device, 34address that can be used to access the memory.
35and a sector_t argument is used to identify the individual block. As an 35
36alternative, memory technology devices can be used for this. 36The direct_access method takes a 'size' parameter that indicates the
37number of bytes being requested. The function should return the number
38of bytes that can be contiguously accessed at that offset. It may also
39return a negative errno if an error occurs.
37 40
38The block device operation is optional, these block devices support it as of 41The block device operation is optional, these block devices support it as of
39today: 42today: