diff --git a/criu/include/page-pipe.h b/criu/include/page-pipe.h index 5fd888283f..e1b08652b9 100644 --- a/criu/include/page-pipe.h +++ b/criu/include/page-pipe.h @@ -112,4 +112,6 @@ void page_pipe_reinit(struct page_pipe *pp); extern int page_pipe_split(struct page_pipe *pp, unsigned long addr, unsigned int *nr_pages); +extern void page_pipe_destroy_ppb(struct page_pipe_buf *ppb); + #endif /* __CR_PAGE_PIPE_H__ */ diff --git a/criu/page-pipe.c b/criu/page-pipe.c index 45644b4a5f..6ae8ab52ba 100644 --- a/criu/page-pipe.c +++ b/criu/page-pipe.c @@ -440,6 +440,12 @@ int page_pipe_split(struct page_pipe *pp, unsigned long addr, return 0; } +void page_pipe_destroy_ppb(struct page_pipe_buf *ppb) +{ + list_del(&ppb->l); + ppb_destroy(ppb); +} + void debug_show_page_pipe(struct page_pipe *pp) { struct page_pipe_buf *ppb;