Lines Matching refs:pdeo
218 static void close_pdeo(struct proc_dir_entry *pde, struct pde_opener *pdeo) in close_pdeo() argument
228 if (pdeo->closing) { in close_pdeo()
231 pdeo->c = &c; in close_pdeo()
238 pdeo->closing = true; in close_pdeo()
241 file = pdeo->file; in close_pdeo()
246 list_del(&pdeo->lh); in close_pdeo()
247 c = pdeo->c; in close_pdeo()
251 kmem_cache_free(pde_opener_cache, pdeo); in close_pdeo()
267 struct pde_opener *pdeo; in proc_entry_rundown() local
268 pdeo = list_first_entry(&de->pde_openers, struct pde_opener, lh); in proc_entry_rundown()
269 close_pdeo(de, pdeo); in proc_entry_rundown()
474 struct pde_opener *pdeo; in proc_reg_open() local
502 pdeo = kmem_cache_alloc(pde_opener_cache, GFP_KERNEL); in proc_reg_open()
503 if (!pdeo) { in proc_reg_open()
516 pdeo->file = file; in proc_reg_open()
517 pdeo->closing = false; in proc_reg_open()
518 pdeo->c = NULL; in proc_reg_open()
520 list_add(&pdeo->lh, &pde->pde_openers); in proc_reg_open()
523 kmem_cache_free(pde_opener_cache, pdeo); in proc_reg_open()
534 struct pde_opener *pdeo; in proc_reg_release() local
545 list_for_each_entry(pdeo, &pde->pde_openers, lh) { in proc_reg_release()
546 if (pdeo->file == file) { in proc_reg_release()
547 close_pdeo(pde, pdeo); in proc_reg_release()