diff options
Diffstat (limited to 'Documentation/nommu-mmap.txt')
-rw-r--r-- | Documentation/nommu-mmap.txt | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/Documentation/nommu-mmap.txt b/Documentation/nommu-mmap.txt index b88ebe4d808c..7714f57caad5 100644 --- a/Documentation/nommu-mmap.txt +++ b/Documentation/nommu-mmap.txt | |||
@@ -116,6 +116,9 @@ FURTHER NOTES ON NO-MMU MMAP | |||
116 | (*) A list of all the mappings on the system is visible through /proc/maps in | 116 | (*) A list of all the mappings on the system is visible through /proc/maps in |
117 | no-MMU mode. | 117 | no-MMU mode. |
118 | 118 | ||
119 | (*) A list of all the mappings in use by a process is visible through | ||
120 | /proc/<pid>/maps in no-MMU mode. | ||
121 | |||
119 | (*) Supplying MAP_FIXED or a requesting a particular mapping address will | 122 | (*) Supplying MAP_FIXED or a requesting a particular mapping address will |
120 | result in an error. | 123 | result in an error. |
121 | 124 | ||
@@ -125,6 +128,49 @@ FURTHER NOTES ON NO-MMU MMAP | |||
125 | error will result if they don't. This is most likely to be encountered | 128 | error will result if they don't. This is most likely to be encountered |
126 | with character device files, pipes, fifos and sockets. | 129 | with character device files, pipes, fifos and sockets. |
127 | 130 | ||
131 | |||
132 | ========================== | ||
133 | INTERPROCESS SHARED MEMORY | ||
134 | ========================== | ||
135 | |||
136 | Both SYSV IPC SHM shared memory and POSIX shared memory is supported in NOMMU | ||
137 | mode. The former through the usual mechanism, the latter through files created | ||
138 | on ramfs or tmpfs mounts. | ||
139 | |||
140 | |||
141 | ======= | ||
142 | FUTEXES | ||
143 | ======= | ||
144 | |||
145 | Futexes are supported in NOMMU mode if the arch supports them. An error will | ||
146 | be given if an address passed to the futex system call lies outside the | ||
147 | mappings made by a process or if the mapping in which the address lies does not | ||
148 | support futexes (such as an I/O chardev mapping). | ||
149 | |||
150 | |||
151 | ============= | ||
152 | NO-MMU MREMAP | ||
153 | ============= | ||
154 | |||
155 | The mremap() function is partially supported. It may change the size of a | ||
156 | mapping, and may move it[*] if MREMAP_MAYMOVE is specified and if the new size | ||
157 | of the mapping exceeds the size of the slab object currently occupied by the | ||
158 | memory to which the mapping refers, or if a smaller slab object could be used. | ||
159 | |||
160 | MREMAP_FIXED is not supported, though it is ignored if there's no change of | ||
161 | address and the object does not need to be moved. | ||
162 | |||
163 | Shared mappings may not be moved. Shareable mappings may not be moved either, | ||
164 | even if they are not currently shared. | ||
165 | |||
166 | The mremap() function must be given an exact match for base address and size of | ||
167 | a previously mapped object. It may not be used to create holes in existing | ||
168 | mappings, move parts of existing mappings or resize parts of mappings. It must | ||
169 | act on a complete mapping. | ||
170 | |||
171 | [*] Not currently supported. | ||
172 | |||
173 | |||
128 | ============================================ | 174 | ============================================ |
129 | PROVIDING SHAREABLE CHARACTER DEVICE SUPPORT | 175 | PROVIDING SHAREABLE CHARACTER DEVICE SUPPORT |
130 | ============================================ | 176 | ============================================ |