Lines Matching defs:monitor
23 struct cachefiles_one_read *monitor =
24 container_of(wait, struct cachefiles_one_read, monitor);
26 struct fscache_retrieval *op = monitor->op;
33 monitor->netfs_page->index, mode, sync,
39 _debug("--- monitor %p %lx ---", page, page->flags);
54 * monitor being enqueued on the op->to_do list and the op getting
61 list_add_tail(&monitor->op_link, &op->to_do);
77 struct cachefiles_one_read *monitor)
80 struct page *backpage = monitor->back_page, *backpage2;
109 INIT_LIST_HEAD(&monitor->op_link);
110 add_page_wait_queue(backpage, &monitor->monitor);
126 /* but the page may have been read before the monitor was installed, so
127 * the monitor may miss the event - so we have to ensure that we do get
142 list_del(&monitor->op_link);
154 struct cachefiles_one_read *monitor;
169 monitor = list_entry(op->to_do.next,
171 list_del(&monitor->op_link);
175 _debug("- copy {%lu}", monitor->back_page->index);
181 } else if (PageUptodate(monitor->back_page)) {
182 copy_highpage(monitor->netfs_page, monitor->back_page);
183 fscache_mark_page_cached(monitor->op,
184 monitor->netfs_page);
186 } else if (!PageError(monitor->back_page)) {
188 error = cachefiles_read_reissue(object, monitor);
196 (unsigned long) monitor->back_page->flags);
200 put_page(monitor->back_page);
202 fscache_end_io(op, monitor->netfs_page, error);
203 put_page(monitor->netfs_page);
206 kfree(monitor);
233 struct cachefiles_one_read *monitor;
243 monitor = kzalloc(sizeof(*monitor), cachefiles_gfp);
244 if (!monitor)
247 monitor->netfs_page = netpage;
248 monitor->op = fscache_get_retrieval(op);
250 init_waitqueue_func_entry(&monitor->monitor, cachefiles_read_waiter);
288 /* set the monitor to transfer the data across */
290 _debug("- monitor add");
292 /* install the monitor */
293 get_page(monitor->netfs_page);
295 monitor->back_page = backpage;
296 monitor->monitor.private = backpage;
297 add_page_wait_queue(backpage, &monitor->monitor);
298 monitor = NULL;
300 /* but the page may have been read before the monitor was installed, so
301 * the monitor may miss the event - so we have to ensure that we do get
348 if (monitor) {
349 fscache_put_retrieval(monitor->op);
350 kfree(monitor);
370 fscache_put_retrieval(monitor->op);
371 kfree(monitor);
469 struct cachefiles_one_read *monitor = NULL;
482 if (!monitor) {
483 monitor = kzalloc(sizeof(*monitor), cachefiles_gfp);
484 if (!monitor)
487 monitor->op = fscache_get_retrieval(op);
488 init_waitqueue_func_entry(&monitor->monitor,
526 * monitor to transfer the data across */
528 _debug("- monitor add");
544 /* install a monitor */
546 monitor->netfs_page = netpage;
549 monitor->back_page = backpage;
550 monitor->monitor.private = backpage;
551 add_page_wait_queue(backpage, &monitor->monitor);
552 monitor = NULL;
554 /* but the page may have been read before the monitor was
555 * installed, so the monitor may miss the event - so we have to
647 if (monitor) {
649 kfree(monitor);