Lines Matching refs:psi
428 struct pstore_info *psi) in pstore_write_compat() argument
430 return psi->write_buf(type, reason, id, part, psinfo->buf, compressed, in pstore_write_compat()
431 size, psi); in pstore_write_compat()
441 int pstore_register(struct pstore_info *psi) in pstore_register() argument
443 struct module *owner = psi->owner; in pstore_register()
445 if (backend && strcmp(backend, psi->name)) in pstore_register()
454 if (!psi->write) in pstore_register()
455 psi->write = pstore_write_compat; in pstore_register()
456 psinfo = psi; in pstore_register()
472 if ((psi->flags & PSTORE_FLAGS_FRAGILE) == 0) { in pstore_register()
488 backend = psi->name; in pstore_register()
492 pr_info("Registered %s as persistent store backend\n", psi->name); in pstore_register()
498 void pstore_unregister(struct pstore_info *psi) in pstore_unregister() argument
520 struct pstore_info *psi = psinfo; in pstore_get_records() local
531 if (!psi) in pstore_get_records()
534 mutex_lock(&psi->read_mutex); in pstore_get_records()
535 if (psi->open && psi->open(psi)) in pstore_get_records()
538 while ((size = psi->read(&id, &type, &count, &time, &buf, &compressed, in pstore_get_records()
539 psi)) > 0) { in pstore_get_records()
557 rc = pstore_mkfile(type, psi->name, id, count, buf, in pstore_get_records()
558 compressed, (size_t)size, time, psi); in pstore_get_records()
568 if (psi->close) in pstore_get_records()
569 psi->close(psi); in pstore_get_records()
571 mutex_unlock(&psi->read_mutex); in pstore_get_records()
575 failed, psi->name); in pstore_get_records()