Lines Matching refs:pdeo
218 static void close_pdeo(struct proc_dir_entry *pde, struct pde_opener *pdeo) in close_pdeo() argument
231 if (pdeo->closing) { in close_pdeo()
234 pdeo->c = &c; in close_pdeo()
241 pdeo->closing = true; in close_pdeo()
243 file = pdeo->file; in close_pdeo()
247 list_del(&pdeo->lh); in close_pdeo()
248 c = pdeo->c; in close_pdeo()
252 kmem_cache_free(pde_opener_cache, pdeo); in close_pdeo()
268 struct pde_opener *pdeo; in proc_entry_rundown() local
269 pdeo = list_first_entry(&de->pde_openers, struct pde_opener, lh); in proc_entry_rundown()
270 close_pdeo(de, pdeo); in proc_entry_rundown()
501 struct pde_opener *pdeo; in proc_reg_open() local
529 pdeo = kmem_cache_alloc(pde_opener_cache, GFP_KERNEL); in proc_reg_open()
530 if (!pdeo) { in proc_reg_open()
543 pdeo->file = file; in proc_reg_open()
544 pdeo->closing = false; in proc_reg_open()
545 pdeo->c = NULL; in proc_reg_open()
547 list_add(&pdeo->lh, &pde->pde_openers); in proc_reg_open()
550 kmem_cache_free(pde_opener_cache, pdeo); in proc_reg_open()
561 struct pde_opener *pdeo; in proc_reg_release() local
574 list_for_each_entry(pdeo, &pde->pde_openers, lh) { in proc_reg_release()
575 if (pdeo->file == file) { in proc_reg_release()
576 close_pdeo(pde, pdeo); in proc_reg_release()