Changeset aa9bad8 in mainline for uspace/srv/bd/hr/superblock.c
- Timestamp:
- 2025-06-27T22:21:05Z (4 weeks ago)
- Children:
- 2de7c1f
- Parents:
- 78433bb
- git-author:
- Miroslav Cimerman <mc@…> (2025-06-27 22:14:37)
- git-committer:
- Miroslav Cimerman <mc@…> (2025-06-27 22:21:05)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/srv/bd/hr/superblock.c
r78433bb raa9bad8 68 68 }; 69 69 70 hr_superblock_ops_t * get_type_ops(hr_metadata_type_t type)70 hr_superblock_ops_t *hr_get_meta_type_ops(hr_metadata_type_t type) 71 71 { 72 72 assert(type >= HR_METADATA_NATIVE && type < HR_METADATA_LAST_DUMMY); … … 75 75 } 76 76 77 errno_t find_metadata(service_id_t svc_id, void **rmetadata,77 errno_t hr_find_metadata(service_id_t svc_id, void **rmetadata, 78 78 hr_metadata_type_t *rtype) 79 79 { … … 82 82 errno_t rc; 83 83 hr_superblock_ops_t *meta_ops; 84 void *meta_block;85 84 void *metadata_struct; 86 85 … … 94 93 meta_ops = hr_superblock_ops_all[type]; 95 94 96 metadata_struct = meta_ops->alloc_struct(); 97 if (metadata_struct == NULL) 98 return ENOMEM; 99 100 rc = meta_ops->get_block(svc_id, &meta_block); 101 if (rc == ENOMEM) { 102 free(metadata_struct); 103 return ENOMEM; 104 } else if (rc != EOK) { 105 free(metadata_struct); 106 continue; 107 } 108 109 rc = meta_ops->decode(meta_block, metadata_struct); 110 111 free(meta_block); 112 95 rc = meta_ops->probe(svc_id, &metadata_struct); 113 96 if (rc != EOK) { 114 free(metadata_struct); 115 continue; 116 } 117 118 if (!meta_ops->has_valid_magic(metadata_struct)) { 119 free(metadata_struct); 97 if (rc != ENOFS) 98 return rc; 120 99 continue; 121 100 }
Note:
See TracChangeset
for help on using the changeset viewer.