• Home
  • Raw
  • Download

Lines Matching +full:layer +full:- +full:buffer +full:- +full:offset

1 .. SPDX-License-Identifier: GPL-2.0
4 Coda Kernel-Venus Interface
10 Coda -- this document describes the client kernel-Venus interface.
35 level filesystem code needed for the operation of the Coda file sys-
45 3. The message layer
102 filesystem, requests are directed at the filesystem layer in the
124 leads to an almost natural environment for implementing a kernel-level
148 filesystem (VFS) layer, which is named I/O Manager in NT and IFS
153 pre-processing, the VFS starts invoking exported routines in the FS
158 The FS layer for Coda must expose and implement several interfaces.
160 the Coda FS layer, so the Coda FS driver must expose the VFS interface
163 read/write and create and remove objects. The Coda FS layer services
167 finishes with a reply to the kernel's VFS. Finally the VFS layer
179 Furthermore the FS layer provides for a special path of communication
193 to the Coda FS layer to request flushes or updates in the cache. The
198 not go into the calls exported to the VFS layer but we will state the
202 3. The message layer
208 up processes. The Coda FS driver processes VFS- and pioctl-requests
220 memory for the request. Since the data buffer is re-used to hold the
228 data buffer; its structure will be described in the next section.
244 passed the contents of the data buffer. The getmsg_from_kernel call
257 processing its upcall with the data buffer replaced with the reply
283 processing. The VFS routine will now continue. (-- If a VFS request
286 to indicate points of no return have been passed.--)
291 ----------------------------
354 ----------------------------------------------------
432 --------------------------
459 short in_size; /* Size of input buffer <= 2K */
460 short out_size; /* Maximum size of output buffer, <= 2K */
475 ----------
494 contains the ViceFid of the root of the Coda filesystem. If a non-zero
500 ------------
549 -------------
593 -------------
616 in BSD style. Attributes not to be changed are set to -1, apart from
628 ------------
659 ------------
722 -----------
768 -----------
801 --------------
836 -------------
868 ------------
897 ---------------
923 identified by VFid into the buffer data. The buffer data must be able
931 -----------
975 ------------
1012 ------------
1053 -------------
1083 --------------
1095 int offset;
1111 Read directory entries from VFid starting at offset and
1119 files. We will re-evaluate this during the directory revamp which is
1124 -----------
1128 instructs Venus to do an FSDB->Get.
1161 ------------
1189 ---------------
1215 -----------
1228 int offset;
1259 ---------------
1294 -----------------
1315 -----------------
1334 ---------------
1361 -------------
1377 This is an out-of-band upcall to Venus to inform Venus
1437 ----------------
1444 -----------
1462 ---------------
1468 struct cfs_purgeuser_out {/* CFS_PURGEUSER is a venus->kernel call */
1480 -------------
1486 struct cfs_zapfile_out { /* CFS_ZAPFILE is a venus->kernel call */
1506 ------------
1512 struct cfs_zapdir_out { /* CFS_ZAPDIR is a venus->kernel call */
1525 --------------
1532 struct cfs_zapvnode_out { /* CFS_ZAPVNODE is a venus->kernel call */
1545 --------------
1551 struct cfs_purgefid_out { /* CFS_PURGEFID is a venus->kernel call */
1565 -------------
1574 struct cfs_replace_out { /* cfs_replace is a venus->kernel call */
1614 2. the VFS layer
1623 ------------------
1631 - Before opening, no messages can be placed.
1633 - Opening will remove any old messages still pending.
1635 - Close will notify any sleeping processes that their upcall cannot
1638 - Close will free all memory allocated by the message queues.