Lines Matching +full:per +full:- +full:context
12 purpose co-processors which can read or write an application's
40 - Any flash device (LUN) can be configured to be accessed as a
43 - Any flash device (LUN) can be configured to be accessed from
47 or physical LUN access) or access to a kernel/AFU-mediated
56 concept of a master context. A master typically has special privileges
63 The CXL Flash Adapter Driver establishes a master context with the
67 +-------------------------------+
69 | (per context) |
71 +-------------------------------+
72 | 512 * 128 B per context |
75 +-------------------------------+
78 +-------------------------------+
83 areas in the MMIO Space shown above. The master context driver
92 This master context driver also provides a series of ioctls for this
99 the sizes of all the virtual LUNs, along with the meta-data associated
124 a high-level overview of each supported service (IOCTL) is provided
128 http://github.com/open-power/capiflash
141 discovery. As per the location of the cxlflash driver within the
151 ------------------
153 This ioctl obtains, initializes, and starts a context using the CXL
154 kernel services. These services specify a context id (u16) by which
155 to uniquely identify the context and its allocated resources. The
161 notification and access in the event of a non-user-initiated close(),
165 There are a few important aspects regarding the "tokens" (context id
168 - These tokens are only valid for the process under which they
170 to use the context id or file descriptor created by its parent
173 - These tokens are only valid for the lifetime of the context and
178 - A valid adapter file descriptor (fd2 >= 0) is only returned on
179 the initial attach for a context. Subsequent attaches to an
180 existing context (DK_CXLFLASH_ATTACH_REUSE_CONTEXT flag present)
184 - When a context is no longer needed, the user shall detach from
185 the context via the DK_CXLFLASH_DETACH ioctl. When this ioctl
190 - When this ioctl returns with a valid fd2 and the return flag
194 + Following a successful detach of the last user of the context
195 + Following a successful recovery on the context's original fd2
197 on the fd2 associated with the source context
199 - At any time, a close on fd2 will invalidate the tokens. Applications
204 -----------------------
207 user space on a per-context basis. Additionally, the block size and
221 ------------------------
224 on a per-context basis. Additionally, the block size and last logical
244 storage. This is reflected by the last LBA being a non-zero value.
252 -----------------------
264 This ioctl can return -EAGAIN if an AFU sync operation takes too long.
267 it is expected to succeed. If this ioctl fails with -EAGAIN, the user
271 -------------------
284 ------------------
285 This ioctl is responsible for unregistering a context with the
292 attach, the application _must_ close the fd2 associated with the context
293 following the detach of the final user of the context.
296 ----------------------
298 context to a more recently created context. It exists solely to
302 as the parent, but under a different context.
304 Context sharing across processes is not supported with CXL and
305 therefore each fork must be met with establishing a new context
308 forks, child process can clone the parents context by first creating
309 a context (via DK_CXLFLASH_ATTACH) and then using this ioctl to
313 translation tables are copied from the parent context to the child's
318 context (still resident/accessible in the parent process) following the
322 This ioctl can return -EAGAIN if an AFU sync operation takes too long.
325 it is expected to succeed. If this ioctl fails with -EAGAIN, the user
329 ------------------
345 -----------------------
347 of a specified user context. Any state associated with the user context
348 is re-established upon successful recovery.
354 their context. A user may also call into this ioctl at any time to
357 context via release/detach ioctls. Until they do, the context they
359 at which time the context/resources they held will be freed as part of
364 original context following this ioctl returning success and indicating that
365 the context was recovered (DK_CXLFLASH_RECOVER_AFU_CONTEXT_RESET).
368 ----------------------
370 for file-system access (legacy), to a mode where it is set aside for
391 -------------------------
413 - Maximum number of provisioned LUNs allowed for the port
414 - Current number of provisioned LUNs for the port
415 - Maximum total capacity of provisioned LUNs for the port (4K blocks)
416 - Current total capacity of provisioned LUNs for the port (4K blocks)
422 ---------------------
423 This ioctl is used to debug AFUs by supporting a command pass-through
428 cxlflash and treated as pass-through. For debug commands that do require
432 are not supported - when errors are experienced with a host read data