• Home
  • Raw
  • Download

Lines Matching full:monitor

27 	struct cachefiles_one_read *monitor =  in cachefiles_read_waiter()  local
28 container_of(wait, struct cachefiles_one_read, monitor); in cachefiles_read_waiter()
30 struct fscache_retrieval *op = monitor->op; in cachefiles_read_waiter()
37 monitor->netfs_page->index, mode, sync, in cachefiles_read_waiter()
44 _debug("--- monitor %p %lx ---", page, page->flags); in cachefiles_read_waiter()
59 * monitor being enqueued on the op->to_do list and the op getting in cachefiles_read_waiter()
66 list_add_tail(&monitor->op_link, &op->to_do); in cachefiles_read_waiter()
82 struct cachefiles_one_read *monitor) in cachefiles_read_reissue() argument
85 struct page *backpage = monitor->back_page, *backpage2; in cachefiles_read_reissue()
114 INIT_LIST_HEAD(&monitor->op_link); in cachefiles_read_reissue()
115 add_page_wait_queue(backpage, &monitor->monitor); in cachefiles_read_reissue()
131 /* but the page may have been read before the monitor was installed, so in cachefiles_read_reissue()
132 * the monitor may miss the event - so we have to ensure that we do get in cachefiles_read_reissue()
147 list_del(&monitor->op_link); in cachefiles_read_reissue()
159 struct cachefiles_one_read *monitor; in cachefiles_read_copier() local
174 monitor = list_entry(op->to_do.next, in cachefiles_read_copier()
176 list_del(&monitor->op_link); in cachefiles_read_copier()
180 _debug("- copy {%lu}", monitor->back_page->index); in cachefiles_read_copier()
186 } else if (PageUptodate(monitor->back_page)) { in cachefiles_read_copier()
187 copy_highpage(monitor->netfs_page, monitor->back_page); in cachefiles_read_copier()
188 fscache_mark_page_cached(monitor->op, in cachefiles_read_copier()
189 monitor->netfs_page); in cachefiles_read_copier()
191 } else if (!PageError(monitor->back_page)) { in cachefiles_read_copier()
193 error = cachefiles_read_reissue(object, monitor); in cachefiles_read_copier()
201 (unsigned long) monitor->back_page->flags); in cachefiles_read_copier()
205 put_page(monitor->back_page); in cachefiles_read_copier()
207 fscache_end_io(op, monitor->netfs_page, error); in cachefiles_read_copier()
208 put_page(monitor->netfs_page); in cachefiles_read_copier()
211 kfree(monitor); in cachefiles_read_copier()
238 struct cachefiles_one_read *monitor; in cachefiles_read_backing_file_one() local
248 monitor = kzalloc(sizeof(*monitor), cachefiles_gfp); in cachefiles_read_backing_file_one()
249 if (!monitor) in cachefiles_read_backing_file_one()
252 monitor->netfs_page = netpage; in cachefiles_read_backing_file_one()
253 monitor->op = fscache_get_retrieval(op); in cachefiles_read_backing_file_one()
255 init_waitqueue_func_entry(&monitor->monitor, cachefiles_read_waiter); in cachefiles_read_backing_file_one()
293 /* set the monitor to transfer the data across */ in cachefiles_read_backing_file_one()
295 _debug("- monitor add"); in cachefiles_read_backing_file_one()
297 /* install the monitor */ in cachefiles_read_backing_file_one()
298 get_page(monitor->netfs_page); in cachefiles_read_backing_file_one()
300 monitor->back_page = backpage; in cachefiles_read_backing_file_one()
301 monitor->monitor.private = backpage; in cachefiles_read_backing_file_one()
302 add_page_wait_queue(backpage, &monitor->monitor); in cachefiles_read_backing_file_one()
303 monitor = NULL; in cachefiles_read_backing_file_one()
305 /* but the page may have been read before the monitor was installed, so in cachefiles_read_backing_file_one()
306 * the monitor may miss the event - so we have to ensure that we do get in cachefiles_read_backing_file_one()
353 if (monitor) { in cachefiles_read_backing_file_one()
354 fscache_put_retrieval(monitor->op); in cachefiles_read_backing_file_one()
355 kfree(monitor); in cachefiles_read_backing_file_one()
375 fscache_put_retrieval(monitor->op); in cachefiles_read_backing_file_one()
376 kfree(monitor); in cachefiles_read_backing_file_one()
474 struct cachefiles_one_read *monitor = NULL; in cachefiles_read_backing_file() local
487 if (!monitor) { in cachefiles_read_backing_file()
488 monitor = kzalloc(sizeof(*monitor), cachefiles_gfp); in cachefiles_read_backing_file()
489 if (!monitor) in cachefiles_read_backing_file()
492 monitor->op = fscache_get_retrieval(op); in cachefiles_read_backing_file()
493 init_waitqueue_func_entry(&monitor->monitor, in cachefiles_read_backing_file()
531 * monitor to transfer the data across */ in cachefiles_read_backing_file()
533 _debug("- monitor add"); in cachefiles_read_backing_file()
549 /* install a monitor */ in cachefiles_read_backing_file()
551 monitor->netfs_page = netpage; in cachefiles_read_backing_file()
554 monitor->back_page = backpage; in cachefiles_read_backing_file()
555 monitor->monitor.private = backpage; in cachefiles_read_backing_file()
556 add_page_wait_queue(backpage, &monitor->monitor); in cachefiles_read_backing_file()
557 monitor = NULL; in cachefiles_read_backing_file()
559 /* but the page may have been read before the monitor was in cachefiles_read_backing_file()
560 * installed, so the monitor may miss the event - so we have to in cachefiles_read_backing_file()
652 if (monitor) { in cachefiles_read_backing_file()
654 kfree(monitor); in cachefiles_read_backing_file()