Home
last modified time | relevance | path

Searched refs:hpio (Results 1 - 10 of 10) sorted by relevance

/kernel/linux/linux-5.10/drivers/hyperhold/
H A Dhp_iotab.c28 /* store all inflight hpio in iotab */
36 static struct hpio *__iotab_search_get(struct hp_iotab *iotab, u32 eid) in __iotab_search_get()
38 struct hpio *hpio = NULL; in __iotab_search_get() local
40 list_for_each_entry(hpio, &iotab->io_list, list) in __iotab_search_get()
41 if (hpio->eid == eid && kref_get_unless_zero(&hpio->refcnt)) in __iotab_search_get()
42 return hpio; in __iotab_search_get()
47 static struct hpio *iotab_search_get(struct hp_iotab *iotab, u32 eid) in iotab_search_get()
49 struct hpio *hpi in iotab_search_get() local
65 iotab_insert(struct hp_iotab *iotab, struct hpio *hpio) iotab_insert() argument
86 iotab_delete(struct hp_iotab *iotab, struct hpio *hpio) iotab_delete() argument
100 hpio_clear_pages(struct hpio *hpio) hpio_clear_pages() argument
121 hpio_fill_pages(struct hpio *hpio, u32 nr_page, gfp_t gfp, bool new_page) hpio_fill_pages() argument
148 hpio_free(struct hpio *hpio) hpio_free() argument
162 struct hpio *hpio = NULL; hpio_alloc() local
189 struct hpio *hpio = NULL; hpio_get_alloc() local
215 struct hpio *hpio = container_of(kref, struct hpio, refcnt); hpio_release() local
223 hpio_put(struct hpio *hpio) hpio_put() argument
229 hpio_complete(struct hpio *hpio) hpio_complete() argument
235 hpio_wait(struct hpio *hpio) hpio_wait() argument
240 hpio_get_state(struct hpio *hpio) hpio_get_state() argument
245 hpio_set_state(struct hpio *hpio, enum hpio_state state) hpio_set_state() argument
250 hpio_change_state(struct hpio *hpio, enum hpio_state from, enum hpio_state to) hpio_change_state() argument
257 struct hpio *hpio = NULL; dump_iotab() local
[all...]
H A Dhyperhold.h13 struct hpio;
15 typedef void (*hp_endio)(struct hpio *);
31 struct hpio *hyperhold_io_alloc(u32 eid, gfp_t gfp, unsigned int op, bool new_page);
32 void hyperhold_io_free(struct hpio *hpio);
34 struct hpio *hyperhold_io_get(u32 eid, gfp_t gfp, unsigned int op);
35 bool hyperhold_io_put(struct hpio *hpio);
37 void hyperhold_io_complete(struct hpio *hpio);
[all...]
H A Dhp_core.c412 struct hpio *hpio = NULL; in hyperhold_should_free_extent() local
421 hpio = hpio_get(eid); in hyperhold_should_free_extent()
422 if (!hpio) { in hyperhold_should_free_extent()
426 hpio->free_extent = hyperhold_free_extent; in hyperhold_should_free_extent()
427 hpio_put(hpio); in hyperhold_should_free_extent()
432 * alloc hpio struct for r/w extent at @eid, will fill hpio with new alloced
435 struct hpio *hyperhold_io_alloc(u32 eid, gfp_t gfp, unsigned int op, bool new_page) in hyperhold_io_alloc()
437 struct hpio *hpi in hyperhold_io_alloc() local
461 hyperhold_io_free(struct hpio *hpio) hyperhold_io_free() argument
492 hyperhold_io_put(struct hpio *hpio) hyperhold_io_put() argument
506 hyperhold_io_complete(struct hpio *hpio) hyperhold_io_complete() argument
517 hyperhold_io_wait(struct hpio *hpio) hyperhold_io_wait() argument
528 hyperhold_io_success(struct hpio *hpio) hyperhold_io_success() argument
539 hyperhold_io_extent(struct hpio *hpio) hyperhold_io_extent() argument
550 hyperhold_io_operate(struct hpio *hpio) hyperhold_io_operate() argument
561 hyperhold_io_page(struct hpio *hpio, u32 index) hyperhold_io_page() argument
574 hyperhold_io_add_page(struct hpio *hpio, u32 index, struct page *page) hyperhold_io_add_page() argument
594 hyperhold_io_nr_page(struct hpio *hpio) hyperhold_io_nr_page() argument
605 hyperhold_io_private(struct hpio *hpio) hyperhold_io_private() argument
657 struct hpio *hpio = container_of(work, struct hpio, endio_work); hp_endio_work() local
690 struct hpio *hpio = bio->bi_private; hpio_endio() local
701 hpio_submit(struct hpio *hpio) hpio_submit() argument
754 rw_extent_async(struct hpio *hpio, hp_endio endio, void *priv, unsigned int op) rw_extent_async() argument
774 hyperhold_write_async(struct hpio *hpio, hp_endio endio, void *priv) hyperhold_write_async() argument
788 hyperhold_read_async(struct hpio *hpio, hp_endio endio, void *priv) hyperhold_read_async() argument
[all...]
H A Dhp_iotab.h23 struct hpio;
25 typedef void (*hp_endio)(struct hpio *);
27 struct hpio { struct
46 struct hpio *hpio_alloc(u32 nr_page, gfp_t gfp, unsigned int op, bool new_page);
47 void hpio_free(struct hpio *hpio);
49 struct hpio *hpio_get(u32 eid);
50 bool hpio_put(struct hpio *hpio);
51 struct hpio *hpio_get_allo
[all...]
/kernel/linux/linux-6.6/drivers/hyperhold/
H A Dhp_iotab.c28 /* store all inflight hpio in iotab */
36 static struct hpio *__iotab_search_get(struct hp_iotab *iotab, u32 eid) in __iotab_search_get()
38 struct hpio *hpio = NULL; in __iotab_search_get() local
40 list_for_each_entry(hpio, &iotab->io_list, list) in __iotab_search_get()
41 if (hpio->eid == eid && kref_get_unless_zero(&hpio->refcnt)) in __iotab_search_get()
42 return hpio; in __iotab_search_get()
47 static struct hpio *iotab_search_get(struct hp_iotab *iotab, u32 eid) in iotab_search_get()
49 struct hpio *hpi in iotab_search_get() local
65 iotab_insert(struct hp_iotab *iotab, struct hpio *hpio) iotab_insert() argument
86 iotab_delete(struct hp_iotab *iotab, struct hpio *hpio) iotab_delete() argument
100 hpio_clear_pages(struct hpio *hpio) hpio_clear_pages() argument
121 hpio_fill_pages(struct hpio *hpio, u32 nr_page, gfp_t gfp, bool new_page) hpio_fill_pages() argument
148 hpio_free(struct hpio *hpio) hpio_free() argument
162 struct hpio *hpio = NULL; hpio_alloc() local
189 struct hpio *hpio = NULL; hpio_get_alloc() local
215 struct hpio *hpio = container_of(kref, struct hpio, refcnt); hpio_release() local
223 hpio_put(struct hpio *hpio) hpio_put() argument
229 hpio_complete(struct hpio *hpio) hpio_complete() argument
235 hpio_wait(struct hpio *hpio) hpio_wait() argument
240 hpio_get_state(struct hpio *hpio) hpio_get_state() argument
245 hpio_set_state(struct hpio *hpio, enum hpio_state state) hpio_set_state() argument
250 hpio_change_state(struct hpio *hpio, enum hpio_state from, enum hpio_state to) hpio_change_state() argument
257 struct hpio *hpio = NULL; dump_iotab() local
[all...]
H A Dhyperhold.h13 struct hpio;
15 typedef void (*hp_endio)(struct hpio *);
31 struct hpio *hyperhold_io_alloc(u32 eid, gfp_t gfp, unsigned int op, bool new_page);
32 void hyperhold_io_free(struct hpio *hpio);
34 struct hpio *hyperhold_io_get(u32 eid, gfp_t gfp, unsigned int op);
35 bool hyperhold_io_put(struct hpio *hpio);
37 void hyperhold_io_complete(struct hpio *hpio);
[all...]
H A Dhp_core.c452 struct hpio *hpio = NULL; in hyperhold_should_free_extent() local
461 hpio = hpio_get(eid); in hyperhold_should_free_extent()
462 if (!hpio) { in hyperhold_should_free_extent()
466 hpio->free_extent = hyperhold_free_extent; in hyperhold_should_free_extent()
467 hpio_put(hpio); in hyperhold_should_free_extent()
472 * alloc hpio struct for r/w extent at @eid, will fill hpio with new alloced
475 struct hpio *hyperhold_io_alloc(u32 eid, gfp_t gfp, unsigned int op, bool new_page) in hyperhold_io_alloc()
477 struct hpio *hpi in hyperhold_io_alloc() local
501 hyperhold_io_free(struct hpio *hpio) hyperhold_io_free() argument
532 hyperhold_io_put(struct hpio *hpio) hyperhold_io_put() argument
546 hyperhold_io_complete(struct hpio *hpio) hyperhold_io_complete() argument
557 hyperhold_io_wait(struct hpio *hpio) hyperhold_io_wait() argument
568 hyperhold_io_success(struct hpio *hpio) hyperhold_io_success() argument
579 hyperhold_io_extent(struct hpio *hpio) hyperhold_io_extent() argument
590 hyperhold_io_operate(struct hpio *hpio) hyperhold_io_operate() argument
601 hyperhold_io_page(struct hpio *hpio, u32 index) hyperhold_io_page() argument
614 hyperhold_io_add_page(struct hpio *hpio, u32 index, struct page *page) hyperhold_io_add_page() argument
634 hyperhold_io_nr_page(struct hpio *hpio) hyperhold_io_nr_page() argument
645 hyperhold_io_private(struct hpio *hpio) hyperhold_io_private() argument
697 struct hpio *hpio = container_of(work, struct hpio, endio_work); hp_endio_work() local
730 struct hpio *hpio = bio->bi_private; hpio_endio() local
741 hpio_submit(struct hpio *hpio) hpio_submit() argument
804 rw_extent_async(struct hpio *hpio, hp_endio endio, void *priv, unsigned int op) rw_extent_async() argument
824 hyperhold_write_async(struct hpio *hpio, hp_endio endio, void *priv) hyperhold_write_async() argument
838 hyperhold_read_async(struct hpio *hpio, hp_endio endio, void *priv) hyperhold_read_async() argument
[all...]
H A Dhp_iotab.h23 struct hpio;
25 typedef void (*hp_endio)(struct hpio *);
27 struct hpio { struct
46 struct hpio *hpio_alloc(u32 nr_page, gfp_t gfp, unsigned int op, bool new_page);
47 void hpio_free(struct hpio *hpio);
49 struct hpio *hpio_get(u32 eid);
50 bool hpio_put(struct hpio *hpio);
51 struct hpio *hpio_get_allo
[all...]
/kernel/linux/linux-5.10/drivers/block/zram/zram_group/
H A Dgroup_writeback.c79 static void copy_obj(struct hpio *hpio, u32 offset, char *obj, u32 size, bool to) in copy_obj() argument
87 buf = page_to_virt(hyperhold_io_page(hpio, page_id)); in copy_obj()
95 buf = page_to_virt(hyperhold_io_page(hpio, page_id)); in copy_obj()
100 buf = page_to_virt(hyperhold_io_page(hpio, page_id + 1)); in copy_obj()
108 struct hpio *hpio, u32 offset) in move_obj_to_hpio()
116 eid = hyperhold_io_extent(hpio); in move_obj_to_hpio()
133 copy_obj(hpio, offset, src, size, true); in move_obj_to_hpio()
141 pr_debug("move obj %u of group %u to hpio in move_obj_to_hpio()
107 move_obj_to_hpio(struct zram *zram, u32 index, u16 gid, struct hpio *hpio, u32 offset) move_obj_to_hpio() argument
149 move_obj_from_hpio(struct zram *zram, int index, struct hpio *hpio) move_obj_from_hpio() argument
198 move_extent_from_hpio(struct zram *zram, struct hpio *hpio) move_extent_from_hpio() argument
224 write_endio(struct hpio *hpio) write_endio() argument
243 collect_objs(struct zram *zram, u16 gid, struct hpio *hpio, u32 ext_size) collect_objs() argument
266 struct hpio *hpio = NULL; write_one_extent() local
318 read_endio(struct hpio *hpio) read_endio() argument
341 struct hpio *hpio = NULL; read_one_extent() local
367 sync_read_endio(struct hpio *hpio) sync_read_endio() argument
374 struct hpio *hpio = NULL; read_one_obj_sync() local
[all...]
/kernel/linux/linux-6.6/drivers/block/zram/zram_group/
H A Dgroup_writeback.c79 static void copy_obj(struct hpio *hpio, u32 offset, char *obj, u32 size, bool to) in copy_obj() argument
87 buf = page_to_virt(hyperhold_io_page(hpio, page_id)); in copy_obj()
95 buf = page_to_virt(hyperhold_io_page(hpio, page_id)); in copy_obj()
100 buf = page_to_virt(hyperhold_io_page(hpio, page_id + 1)); in copy_obj()
108 struct hpio *hpio, u32 offset) in move_obj_to_hpio()
116 eid = hyperhold_io_extent(hpio); in move_obj_to_hpio()
133 copy_obj(hpio, offset, src, size, true); in move_obj_to_hpio()
141 pr_debug("move obj %u of group %u to hpio in move_obj_to_hpio()
107 move_obj_to_hpio(struct zram *zram, u32 index, u16 gid, struct hpio *hpio, u32 offset) move_obj_to_hpio() argument
149 move_obj_from_hpio(struct zram *zram, int index, struct hpio *hpio) move_obj_from_hpio() argument
198 move_extent_from_hpio(struct zram *zram, struct hpio *hpio) move_extent_from_hpio() argument
224 write_endio(struct hpio *hpio) write_endio() argument
243 collect_objs(struct zram *zram, u16 gid, struct hpio *hpio, u32 ext_size) collect_objs() argument
266 struct hpio *hpio = NULL; write_one_extent() local
318 read_endio(struct hpio *hpio) read_endio() argument
341 struct hpio *hpio = NULL; read_one_extent() local
367 sync_read_endio(struct hpio *hpio) sync_read_endio() argument
374 struct hpio *hpio = NULL; read_one_obj_sync() local
[all...]

Completed in 5 milliseconds