Lines Matching refs:psi

375 	record->psi = psinfo;  in pstore_record_init()
545 ret = record->psi->write(record); in pstore_write_user_compat()
561 int pstore_register(struct pstore_info *psi) in pstore_register() argument
563 if (backend && strcmp(backend, psi->name)) { in pstore_register()
564 pr_warn("ignoring unexpected backend '%s'\n", psi->name); in pstore_register()
569 if (!psi->flags) { in pstore_register()
571 psi->name); in pstore_register()
576 if (!psi->read || !psi->write) { in pstore_register()
578 psi->name); in pstore_register()
585 psinfo->name, psi->name); in pstore_register()
590 if (!psi->write_user) in pstore_register()
591 psi->write_user = pstore_write_user_compat; in pstore_register()
592 psinfo = psi; in pstore_register()
596 if (psi->flags & PSTORE_FLAGS_DMESG) in pstore_register()
601 if (psi->flags & PSTORE_FLAGS_DMESG) { in pstore_register()
605 if (psi->flags & PSTORE_FLAGS_CONSOLE) in pstore_register()
607 if (psi->flags & PSTORE_FLAGS_FTRACE) in pstore_register()
609 if (psi->flags & PSTORE_FLAGS_PMSG) in pstore_register()
619 backend = kstrdup(psi->name, GFP_KERNEL); in pstore_register()
621 pr_info("Registered %s as persistent store backend\n", psi->name); in pstore_register()
628 void pstore_unregister(struct pstore_info *psi) in pstore_unregister() argument
631 if (!psi) in pstore_unregister()
637 if (WARN_ON(psi != psinfo)) { in pstore_unregister()
643 if (psi->flags & PSTORE_FLAGS_PMSG) in pstore_unregister()
645 if (psi->flags & PSTORE_FLAGS_FTRACE) in pstore_unregister()
647 if (psi->flags & PSTORE_FLAGS_CONSOLE) in pstore_unregister()
649 if (psi->flags & PSTORE_FLAGS_DMESG) in pstore_unregister()
657 pstore_put_backend_records(psi); in pstore_unregister()
729 void pstore_get_backend_records(struct pstore_info *psi, in pstore_get_backend_records() argument
735 if (!psi || !root) in pstore_get_backend_records()
738 mutex_lock(&psi->read_mutex); in pstore_get_backend_records()
739 if (psi->open && psi->open(psi)) in pstore_get_backend_records()
756 pstore_record_init(record, psi); in pstore_get_backend_records()
758 record->size = psi->read(record); in pstore_get_backend_records()
776 if (psi->close) in pstore_get_backend_records()
777 psi->close(psi); in pstore_get_backend_records()
779 mutex_unlock(&psi->read_mutex); in pstore_get_backend_records()
783 failed, psi->name); in pstore_get_backend_records()
786 psi->name); in pstore_get_backend_records()