• Home
  • Raw
  • Download

Lines Matching full:monitor

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