Lines Matching refs:cookie
14 cookie.
32 (4) Declaring a cookie to be in use
48 cookie, hereafter referred to as "volume cookies" and "cookies".
50 A network filesystem acquires a volume cookie for a volume using a volume key,
58 A filesystem would typically have a volume cookie for each superblock.
60 The filesystem then acquires a cookie for each file within that volume using an
67 A filesystem would typically have a cookie for each inode, and would acquire it
68 in iget and relinquish it when evicting the cookie.
70 Once it has a cookie, the filesystem needs to mark the cookie as being in use.
72 for the cookie in the background, to check its coherency and, if necessary, to
75 A filesystem would typically "use" the cookie in its file open routine and
76 unuse it in file release and it needs to use the cookie around calls to
77 truncate the cookie locally. It *also* needs to use the cookie when the
81 When performing a read, write or resize on a cookie, the filesystem must first
94 The first step for a network filsystem is to acquire a volume cookie for the
103 This function creates a volume cookie with the specified volume key as its name
112 fscache will look up or create a cache cookie of that name and will use a cache
116 The specified coherency data is stored in the cookie and will be matched
123 also return a NULL volume cookie if fscache is not enabled. It is safe to
124 pass a NULL cookie to any function that takes a volume cookie. This will
145 Once it has a volume cookie, a network filesystem can use it to acquire a
146 cookie for data storage::
157 This creates the cookie in the volume using the specified index key. The index
159 This is saved into the cookie. There are no restrictions on the content, but
172 This function never returns an error, though it may return a NULL cookie on
174 volume cookie and pass the NULL cookie returned to any function that takes it.
178 When the network filesystem has finished with a cookie, it should relinquish it
181 void fscache_relinquish_cookie(struct fscache_cookie *cookie,
184 This will cause fscache to either commit the storage backing the cookie or
191 Once a cookie has been acquired by a network filesystem, the filesystem should
192 tell fscache when it intends to use the cookie (typically done on file open)
195 void fscache_use_cookie(struct fscache_cookie *cookie,
197 void fscache_unuse_cookie(struct fscache_cookie *cookie,
201 The *use* function tells fscache that it will use the cookie and, additionally,
207 The *unuse* function indicates that a filesystem has finished using a cookie.
209 decreases the in-use counter. When the last user unuses the cookie, it is
213 A cookie must be marked in-use before it can be accessed for read, write or
218 Note that in-use marks are cumulative. For each time a cookie is marked
228 void fscache_resize_cookie(struct fscache_cookie *cookie,
231 The caller must have first marked the cookie in-use. The cookie and the new
239 To do data I/O operations directly through a cookie, the following functions
243 struct fscache_cookie *cookie);
257 the cache resources block from the cookie. Assuming it doesn't return an error
258 (for instance, it will return -ENOBUFS if given a NULL cookie, but otherwise do
292 To request an update of the coherency data and file size on a cookie, the
295 void fscache_update_cookie(struct fscache_cookie *cookie,
299 This will update the cookie's coherency data and/or file size.
314 void fscache_invalidate(struct fscache_cookie *cookie,
319 This increases the invalidation counter in the cookie to cause outstanding
321 information supplied, blocks new I/O on the cookie and dispatches the cache to
339 in-use is held on the cookie for this inode. It can only be changed if the
350 struct fscache_cookie *cookie);
352 struct fscache_cookie *cookie);
353 void fscache_clear_inode_writeback(struct fscache_cookie *cookie,
359 set, it sets that flag and increments the use count on the cookie (the caller
364 the cookie if unpinned_fscache_wb is set in the writeback_control struct.
385 bool caching = fscache_cookie_enabled(cookie);
397 void fscache_write_to_cache(struct fscache_cookie *cookie,
418 The write function takes some additional parameters: the cookie representing
438 void fscache_note_page_release(struct fscache_cookie *cookie);