Lines Matching refs:pdeo
224 static void close_pdeo(struct proc_dir_entry *pde, struct pde_opener *pdeo) in close_pdeo() argument
234 if (pdeo->closing) { in close_pdeo()
237 pdeo->c = &c; in close_pdeo()
244 pdeo->closing = true; in close_pdeo()
247 file = pdeo->file; in close_pdeo()
252 list_del(&pdeo->lh); in close_pdeo()
253 c = pdeo->c; in close_pdeo()
257 kmem_cache_free(pde_opener_cache, pdeo); in close_pdeo()
273 struct pde_opener *pdeo; in proc_entry_rundown() local
274 pdeo = list_first_entry(&de->pde_openers, struct pde_opener, lh); in proc_entry_rundown()
275 close_pdeo(de, pdeo); in proc_entry_rundown()
495 struct pde_opener *pdeo; in proc_reg_open() local
523 pdeo = kmem_cache_alloc(pde_opener_cache, GFP_KERNEL); in proc_reg_open()
524 if (!pdeo) { in proc_reg_open()
537 pdeo->file = file; in proc_reg_open()
538 pdeo->closing = false; in proc_reg_open()
539 pdeo->c = NULL; in proc_reg_open()
541 list_add(&pdeo->lh, &pde->pde_openers); in proc_reg_open()
544 kmem_cache_free(pde_opener_cache, pdeo); in proc_reg_open()
555 struct pde_opener *pdeo; in proc_reg_release() local
568 list_for_each_entry(pdeo, &pde->pde_openers, lh) { in proc_reg_release()
569 if (pdeo->file == file) { in proc_reg_release()
570 close_pdeo(pde, pdeo); in proc_reg_release()