Changeset 46577995 in mainline for uspace/srv/fs/fat
- Timestamp:
- 2018-01-04T20:50:52Z (8 years ago)
- Children:
- e211ea04
- Parents:
- facacc71
- git-author:
- Jiří Zárevúcky <zarevucky.jiri@…> (2018-01-04 20:47:53)
- git-committer:
- Jiří Zárevúcky <zarevucky.jiri@…> (2018-01-04 20:50:52)
- Location:
- uspace/srv/fs/fat
- Files:
-
- 8 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/srv/fs/fat/fat.c
rfacacc71 r46577995 72 72 } 73 73 74 int rc = fat_idx_init();74 errno_t rc = fat_idx_init(); 75 75 if (rc != EOK) 76 76 goto err; -
uspace/srv/fs/fat/fat.h
rfacacc71 r46577995 250 250 extern libfs_ops_t fat_libfs_ops; 251 251 252 extern int fat_idx_get_new(fat_idx_t **, service_id_t);252 extern errno_t fat_idx_get_new(fat_idx_t **, service_id_t); 253 253 extern fat_idx_t *fat_idx_get_by_pos(service_id_t, fat_cluster_t, unsigned); 254 254 extern fat_idx_t *fat_idx_get_by_index(service_id_t, fs_index_t); … … 257 257 extern void fat_idx_hashout(fat_idx_t *); 258 258 259 extern int fat_idx_init(void);259 extern errno_t fat_idx_init(void); 260 260 extern void fat_idx_fini(void); 261 extern int fat_idx_init_by_service_id(service_id_t);261 extern errno_t fat_idx_init_by_service_id(service_id_t); 262 262 extern void fat_idx_fini_by_service_id(service_id_t); 263 263 -
uspace/srv/fs/fat/fat_directory.c
rfacacc71 r46577995 46 46 #include <stdio.h> 47 47 48 int fat_directory_open(fat_node_t *nodep, fat_directory_t *di)48 errno_t fat_directory_open(fat_node_t *nodep, fat_directory_t *di) 49 49 { 50 50 di->b = NULL; … … 62 62 } 63 63 64 int fat_directory_close(fat_directory_t *di)65 { 66 int rc = EOK;64 errno_t fat_directory_close(fat_directory_t *di) 65 { 66 errno_t rc = EOK; 67 67 68 68 if (di->b) … … 72 72 } 73 73 74 static int fat_directory_block_load(fat_directory_t *di)74 static errno_t fat_directory_block_load(fat_directory_t *di) 75 75 { 76 76 uint32_t i; 77 int rc;77 errno_t rc; 78 78 79 79 i = (di->pos * sizeof(fat_dentry_t)) / BPS(di->bs); … … 98 98 } 99 99 100 int fat_directory_next(fat_directory_t *di)101 { 102 int rc;100 errno_t fat_directory_next(fat_directory_t *di) 101 { 102 errno_t rc; 103 103 104 104 di->pos += 1; … … 110 110 } 111 111 112 int fat_directory_prev(fat_directory_t *di)113 { 114 int rc = EOK;112 errno_t fat_directory_prev(fat_directory_t *di) 113 { 114 errno_t rc = EOK; 115 115 116 116 if (di->pos > 0) { … … 126 126 } 127 127 128 int fat_directory_seek(fat_directory_t *di, aoff64_t pos)128 errno_t fat_directory_seek(fat_directory_t *di, aoff64_t pos) 129 129 { 130 130 aoff64_t _pos = di->pos; 131 int rc;131 errno_t rc; 132 132 133 133 di->pos = pos; … … 139 139 } 140 140 141 int fat_directory_get(fat_directory_t *di, fat_dentry_t **d)142 { 143 int rc;141 errno_t fat_directory_get(fat_directory_t *di, fat_dentry_t **d) 142 { 143 errno_t rc; 144 144 145 145 rc = fat_directory_block_load(di); … … 152 152 } 153 153 154 int fat_directory_read(fat_directory_t *di, char *name, fat_dentry_t **de)154 errno_t fat_directory_read(fat_directory_t *di, char *name, fat_dentry_t **de) 155 155 { 156 156 fat_dentry_t *d = NULL; … … 160 160 int long_entry_count = 0; 161 161 uint8_t checksum = 0; 162 int rc;162 errno_t rc; 163 163 164 164 void *data; … … 236 236 } 237 237 238 int fat_directory_erase(fat_directory_t *di)239 { 240 int rc;238 errno_t fat_directory_erase(fat_directory_t *di) 239 { 240 errno_t rc; 241 241 fat_dentry_t *d; 242 242 bool flag = false; … … 267 267 } 268 268 269 int fat_directory_write(fat_directory_t *di, const char *name, fat_dentry_t *de)270 { 271 int rc;269 errno_t fat_directory_write(fat_directory_t *di, const char *name, fat_dentry_t *de) 270 { 271 errno_t rc; 272 272 void *data; 273 273 fat_instance_t *instance; … … 348 348 } 349 349 350 int fat_directory_create_sfn(fat_directory_t *di, fat_dentry_t *de,350 errno_t fat_directory_create_sfn(fat_directory_t *di, fat_dentry_t *de, 351 351 const char *lname) 352 352 { … … 398 398 } 399 399 400 int fat_directory_write_dentry(fat_directory_t *di, fat_dentry_t *de)400 errno_t fat_directory_write_dentry(fat_directory_t *di, fat_dentry_t *de) 401 401 { 402 402 fat_dentry_t *d; 403 int rc;403 errno_t rc; 404 404 405 405 rc = fat_directory_get(di, &d); … … 412 412 } 413 413 414 int fat_directory_expand(fat_directory_t *di)415 { 416 int rc;414 errno_t fat_directory_expand(fat_directory_t *di) 415 { 416 errno_t rc; 417 417 fat_cluster_t mcl, lcl; 418 418 … … 444 444 } 445 445 446 int fat_directory_lookup_free(fat_directory_t *di, size_t count)446 errno_t fat_directory_lookup_free(fat_directory_t *di, size_t count) 447 447 { 448 448 fat_dentry_t *d; 449 449 size_t found; 450 450 aoff64_t pos; 451 int rc;451 errno_t rc; 452 452 453 453 do { … … 485 485 } 486 486 487 int fat_directory_lookup_name(fat_directory_t *di, const char *name,487 errno_t fat_directory_lookup_name(fat_directory_t *di, const char *name, 488 488 fat_dentry_t **de) 489 489 { … … 506 506 { 507 507 fat_dentry_t *d; 508 int rc;508 errno_t rc; 509 509 510 510 fat_directory_seek(di, 0); … … 538 538 * @return EOK on success, ENOENT if not found, EIO on I/O error 539 539 */ 540 int fat_directory_vollabel_get(fat_directory_t *di, char *label)540 errno_t fat_directory_vollabel_get(fat_directory_t *di, char *label) 541 541 { 542 542 fat_dentry_t *d; 543 int rc;543 errno_t rc; 544 544 545 545 fat_directory_seek(di, 0); -
uspace/srv/fs/fat/fat_directory.h
rfacacc71 r46577995 52 52 53 53 54 extern int fat_directory_open(fat_node_t *, fat_directory_t *);55 extern int fat_directory_close(fat_directory_t *);54 extern errno_t fat_directory_open(fat_node_t *, fat_directory_t *); 55 extern errno_t fat_directory_close(fat_directory_t *); 56 56 57 extern int fat_directory_next(fat_directory_t *);58 extern int fat_directory_prev(fat_directory_t *);59 extern int fat_directory_seek(fat_directory_t *, aoff64_t);60 extern int fat_directory_get(fat_directory_t *, fat_dentry_t **);57 extern errno_t fat_directory_next(fat_directory_t *); 58 extern errno_t fat_directory_prev(fat_directory_t *); 59 extern errno_t fat_directory_seek(fat_directory_t *, aoff64_t); 60 extern errno_t fat_directory_get(fat_directory_t *, fat_dentry_t **); 61 61 62 extern int fat_directory_read(fat_directory_t *, char *, fat_dentry_t **);63 extern int fat_directory_write(fat_directory_t *, const char *, fat_dentry_t *);64 extern int fat_directory_erase(fat_directory_t *);65 extern int fat_directory_lookup_name(fat_directory_t *, const char *,62 extern errno_t fat_directory_read(fat_directory_t *, char *, fat_dentry_t **); 63 extern errno_t fat_directory_write(fat_directory_t *, const char *, fat_dentry_t *); 64 extern errno_t fat_directory_erase(fat_directory_t *); 65 extern errno_t fat_directory_lookup_name(fat_directory_t *, const char *, 66 66 fat_dentry_t **); 67 67 extern bool fat_directory_is_sfn_exist(fat_directory_t *, fat_dentry_t *); 68 68 69 extern int fat_directory_lookup_free(fat_directory_t *, size_t);70 extern int fat_directory_write_dentry(fat_directory_t *, fat_dentry_t *);71 extern int fat_directory_create_sfn(fat_directory_t *, fat_dentry_t *,69 extern errno_t fat_directory_lookup_free(fat_directory_t *, size_t); 70 extern errno_t fat_directory_write_dentry(fat_directory_t *, fat_dentry_t *); 71 extern errno_t fat_directory_create_sfn(fat_directory_t *, fat_dentry_t *, 72 72 const char *); 73 extern int fat_directory_expand(fat_directory_t *);74 extern int fat_directory_vollabel_get(fat_directory_t *, char *);73 extern errno_t fat_directory_expand(fat_directory_t *); 74 extern errno_t fat_directory_vollabel_get(fat_directory_t *, char *); 75 75 76 76 #endif -
uspace/srv/fs/fat/fat_fat.c
rfacacc71 r46577995 73 73 * @return EOK on success or an error code. 74 74 */ 75 int75 errno_t 76 76 fat_cluster_walk(fat_bs_t *bs, service_id_t service_id, fat_cluster_t firstc, 77 77 fat_cluster_t *lastc, uint32_t *numc, uint32_t max_clusters) … … 80 80 fat_cluster_t clst = firstc, clst_last1 = FAT_CLST_LAST1(bs); 81 81 fat_cluster_t clst_bad = FAT_CLST_BAD(bs); 82 int rc;82 errno_t rc; 83 83 84 84 if (firstc == FAT_CLST_RES0) { … … 123 123 * @return EOK on success or an error code. 124 124 */ 125 int125 errno_t 126 126 fat_block_get(block_t **block, struct fat_bs *bs, fat_node_t *nodep, 127 127 aoff64_t bn, int flags) … … 130 130 fat_cluster_t currc = 0; 131 131 aoff64_t relbn = bn; 132 int rc;132 errno_t rc; 133 133 134 134 if (!nodep->size) … … 188 188 * @return EOK on success or an error code. 189 189 */ 190 int190 errno_t 191 191 _fat_block_get(block_t **block, fat_bs_t *bs, service_id_t service_id, 192 192 fat_cluster_t fcl, fat_cluster_t *clp, aoff64_t bn, int flags) … … 195 195 uint32_t max_clusters; 196 196 fat_cluster_t c = 0; 197 int rc;197 errno_t rc; 198 198 199 199 /* … … 237 237 * @return EOK on success or an error code. 238 238 */ 239 int239 errno_t 240 240 fat_fill_gap(fat_bs_t *bs, fat_node_t *nodep, fat_cluster_t mcl, aoff64_t pos) 241 241 { 242 242 block_t *b; 243 243 aoff64_t o, boundary; 244 int rc;244 errno_t rc; 245 245 246 246 boundary = ROUND_UP(nodep->size, BPS(bs) * SPC(bs)); … … 289 289 * @return EOK or an error code. 290 290 */ 291 static int291 static errno_t 292 292 fat_get_cluster_fat12(fat_bs_t *bs, service_id_t service_id, unsigned fatno, 293 293 fat_cluster_t clst, fat_cluster_t *value) … … 296 296 uint16_t byte1, byte2; 297 297 aoff64_t offset; 298 int rc;298 errno_t rc; 299 299 300 300 offset = (clst + clst / 2); … … 359 359 * @return EOK or an error code. 360 360 */ 361 static int361 static errno_t 362 362 fat_get_cluster_fat16(fat_bs_t *bs, service_id_t service_id, unsigned fatno, 363 363 fat_cluster_t clst, fat_cluster_t *value) … … 365 365 block_t *b; 366 366 aoff64_t offset; 367 int rc;367 errno_t rc; 368 368 369 369 offset = (clst * FAT16_CLST_SIZE); … … 390 390 * @return EOK or an error code. 391 391 */ 392 static int392 static errno_t 393 393 fat_get_cluster_fat32(fat_bs_t *bs, service_id_t service_id, unsigned fatno, 394 394 fat_cluster_t clst, fat_cluster_t *value) … … 396 396 block_t *b; 397 397 aoff64_t offset; 398 int rc;398 errno_t rc; 399 399 400 400 offset = (clst * FAT32_CLST_SIZE); … … 423 423 * @return EOK or an error code. 424 424 */ 425 int425 errno_t 426 426 fat_get_cluster(fat_bs_t *bs, service_id_t service_id, unsigned fatno, 427 427 fat_cluster_t clst, fat_cluster_t *value) 428 428 { 429 int rc;429 errno_t rc; 430 430 431 431 assert(fatno < FATCNT(bs)); … … 451 451 * @return EOK on success or an error code. 452 452 */ 453 static int453 static errno_t 454 454 fat_set_cluster_fat12(fat_bs_t *bs, service_id_t service_id, unsigned fatno, 455 455 fat_cluster_t clst, fat_cluster_t value) … … 458 458 aoff64_t offset; 459 459 uint16_t byte1, byte2; 460 int rc;460 errno_t rc; 461 461 462 462 offset = (clst + clst / 2); … … 539 539 * @return EOK on success or an error code. 540 540 */ 541 static int541 static errno_t 542 542 fat_set_cluster_fat16(fat_bs_t *bs, service_id_t service_id, unsigned fatno, 543 543 fat_cluster_t clst, fat_cluster_t value) … … 545 545 block_t *b; 546 546 aoff64_t offset; 547 int rc;547 errno_t rc; 548 548 549 549 offset = (clst * FAT16_CLST_SIZE); … … 572 572 * @return EOK on success or an error code. 573 573 */ 574 static int574 static errno_t 575 575 fat_set_cluster_fat32(fat_bs_t *bs, service_id_t service_id, unsigned fatno, 576 576 fat_cluster_t clst, fat_cluster_t value) … … 578 578 block_t *b; 579 579 aoff64_t offset; 580 int rc;580 errno_t rc; 581 581 fat_cluster_t temp; 582 582 … … 609 609 * @return EOK on success or an error code. 610 610 */ 611 int611 errno_t 612 612 fat_set_cluster(fat_bs_t *bs, service_id_t service_id, unsigned fatno, 613 613 fat_cluster_t clst, fat_cluster_t value) 614 614 { 615 int rc;615 errno_t rc; 616 616 617 617 assert(fatno < FATCNT(bs)); … … 636 636 * @return EOK on success or an error code. 637 637 */ 638 int fat_alloc_shadow_clusters(fat_bs_t *bs, service_id_t service_id,638 errno_t fat_alloc_shadow_clusters(fat_bs_t *bs, service_id_t service_id, 639 639 fat_cluster_t *lifo, unsigned nclsts) 640 640 { … … 642 642 unsigned c; 643 643 fat_cluster_t clst_last1 = FAT_CLST_LAST1(bs); 644 int rc;644 errno_t rc; 645 645 646 646 for (fatno = FAT1 + 1; fatno < FATCNT(bs); fatno++) { … … 673 673 * @return EOK on success, an error code otherwise. 674 674 */ 675 int675 errno_t 676 676 fat_alloc_clusters(fat_bs_t *bs, service_id_t service_id, unsigned nclsts, 677 677 fat_cluster_t *mcl, fat_cluster_t *lcl) … … 682 682 fat_cluster_t value = 0; 683 683 fat_cluster_t clst_last1 = FAT_CLST_LAST1(bs); 684 int rc = EOK;684 errno_t rc = EOK; 685 685 686 686 lifo = (fat_cluster_t *) malloc(nclsts * sizeof(fat_cluster_t)); … … 744 744 * @return EOK on success or an error code. 745 745 */ 746 int746 errno_t 747 747 fat_free_clusters(fat_bs_t *bs, service_id_t service_id, fat_cluster_t firstc) 748 748 { … … 750 750 fat_cluster_t nextc = 0; 751 751 fat_cluster_t clst_bad = FAT_CLST_BAD(bs); 752 int rc;752 errno_t rc; 753 753 754 754 /* Mark all clusters in the chain as free in all copies of FAT. */ … … 782 782 * @return EOK on success or an error code. 783 783 */ 784 int fat_append_clusters(fat_bs_t *bs, fat_node_t *nodep, fat_cluster_t mcl,784 errno_t fat_append_clusters(fat_bs_t *bs, fat_node_t *nodep, fat_cluster_t mcl, 785 785 fat_cluster_t lcl) 786 786 { … … 788 788 fat_cluster_t lastc = 0; 789 789 uint8_t fatno; 790 int rc;790 errno_t rc; 791 791 792 792 if (nodep->firstc == FAT_CLST_RES0) { … … 829 829 * @return EOK on success or an error code. 830 830 */ 831 int fat_chop_clusters(fat_bs_t *bs, fat_node_t *nodep, fat_cluster_t lcl)831 errno_t fat_chop_clusters(fat_bs_t *bs, fat_node_t *nodep, fat_cluster_t lcl) 832 832 { 833 833 fat_cluster_t clst_last1 = FAT_CLST_LAST1(bs); 834 int rc;834 errno_t rc; 835 835 service_id_t service_id = nodep->idx->service_id; 836 836 … … 880 880 } 881 881 882 int882 errno_t 883 883 fat_zero_cluster(struct fat_bs *bs, service_id_t service_id, fat_cluster_t c) 884 884 { 885 885 int i; 886 886 block_t *b; 887 int rc;887 errno_t rc; 888 888 889 889 for (i = 0; i < SPC(bs); i++) { … … 908 908 * does not contain a fat file system. 909 909 */ 910 int fat_sanity_check(fat_bs_t *bs, service_id_t service_id)910 errno_t fat_sanity_check(fat_bs_t *bs, service_id_t service_id) 911 911 { 912 912 fat_cluster_t e0 = 0; 913 913 fat_cluster_t e1 = 0; 914 914 unsigned fat_no; 915 int rc;915 errno_t rc; 916 916 917 917 /* Check number of FATs. */ -
uspace/srv/fs/fat/fat_fat.h
rfacacc71 r46577995 108 108 #define fat_clusters_get(numc, bs, sid, fc) \ 109 109 fat_cluster_walk((bs), (sid), (fc), NULL, (numc), (uint32_t) -1) 110 extern int fat_cluster_walk(struct fat_bs *, service_id_t, fat_cluster_t,110 extern errno_t fat_cluster_walk(struct fat_bs *, service_id_t, fat_cluster_t, 111 111 fat_cluster_t *, uint32_t *, uint32_t); 112 112 113 extern int fat_block_get(block_t **, struct fat_bs *, struct fat_node *,113 extern errno_t fat_block_get(block_t **, struct fat_bs *, struct fat_node *, 114 114 aoff64_t, int); 115 extern int _fat_block_get(block_t **, struct fat_bs *, service_id_t,115 extern errno_t _fat_block_get(block_t **, struct fat_bs *, service_id_t, 116 116 fat_cluster_t, fat_cluster_t *, aoff64_t, int); 117 117 118 extern int fat_append_clusters(struct fat_bs *, struct fat_node *,118 extern errno_t fat_append_clusters(struct fat_bs *, struct fat_node *, 119 119 fat_cluster_t, fat_cluster_t); 120 extern int fat_chop_clusters(struct fat_bs *, struct fat_node *,120 extern errno_t fat_chop_clusters(struct fat_bs *, struct fat_node *, 121 121 fat_cluster_t); 122 extern int fat_alloc_clusters(struct fat_bs *, service_id_t, unsigned,122 extern errno_t fat_alloc_clusters(struct fat_bs *, service_id_t, unsigned, 123 123 fat_cluster_t *, fat_cluster_t *); 124 extern int fat_free_clusters(struct fat_bs *, service_id_t, fat_cluster_t);125 extern int fat_alloc_shadow_clusters(struct fat_bs *, service_id_t,124 extern errno_t fat_free_clusters(struct fat_bs *, service_id_t, fat_cluster_t); 125 extern errno_t fat_alloc_shadow_clusters(struct fat_bs *, service_id_t, 126 126 fat_cluster_t *, unsigned); 127 extern int fat_get_cluster(struct fat_bs *, service_id_t, unsigned,127 extern errno_t fat_get_cluster(struct fat_bs *, service_id_t, unsigned, 128 128 fat_cluster_t, fat_cluster_t *); 129 extern int fat_set_cluster(struct fat_bs *, service_id_t, unsigned,129 extern errno_t fat_set_cluster(struct fat_bs *, service_id_t, unsigned, 130 130 fat_cluster_t, fat_cluster_t); 131 extern int fat_fill_gap(struct fat_bs *, struct fat_node *, fat_cluster_t,131 extern errno_t fat_fill_gap(struct fat_bs *, struct fat_node *, fat_cluster_t, 132 132 aoff64_t); 133 extern int fat_zero_cluster(struct fat_bs *, service_id_t, fat_cluster_t);134 extern int fat_sanity_check(struct fat_bs *, service_id_t);133 extern errno_t fat_zero_cluster(struct fat_bs *, service_id_t, fat_cluster_t); 134 extern errno_t fat_sanity_check(struct fat_bs *, service_id_t); 135 135 136 136 #endif -
uspace/srv/fs/fat/fat_idx.c
rfacacc71 r46577995 328 328 } 329 329 330 static int fat_idx_create(fat_idx_t **fidxp, service_id_t service_id)330 static errno_t fat_idx_create(fat_idx_t **fidxp, service_id_t service_id) 331 331 { 332 332 fat_idx_t *fidx; … … 350 350 } 351 351 352 int fat_idx_get_new(fat_idx_t **fidxp, service_id_t service_id)352 errno_t fat_idx_get_new(fat_idx_t **fidxp, service_id_t service_id) 353 353 { 354 354 fat_idx_t *fidx; 355 int rc;355 errno_t rc; 356 356 357 357 fibril_mutex_lock(&used_lock); … … 386 386 fidx = hash_table_get_inst(l, fat_idx_t, uph_link); 387 387 } else { 388 int rc;388 errno_t rc; 389 389 390 390 rc = fat_idx_create(&fidx, service_id); … … 467 467 } 468 468 469 int fat_idx_init(void)469 errno_t fat_idx_init(void) 470 470 { 471 471 if (!hash_table_create(&up_hash, 0, 0, &uph_ops)) … … 486 486 } 487 487 488 int fat_idx_init_by_service_id(service_id_t service_id)488 errno_t fat_idx_init_by_service_id(service_id_t service_id) 489 489 { 490 490 unused_t *u; 491 int rc = EOK;491 errno_t rc = EOK; 492 492 493 493 u = (unused_t *) malloc(sizeof(unused_t)); -
uspace/srv/fs/fat/fat_ops.c
rfacacc71 r46577995 73 73 * Forward declarations of FAT libfs operations. 74 74 */ 75 static int fat_root_get(fs_node_t **, service_id_t);76 static int fat_match(fs_node_t **, fs_node_t *, const char *);77 static int fat_node_get(fs_node_t **, service_id_t, fs_index_t);78 static int fat_node_open(fs_node_t *);79 static int fat_node_put(fs_node_t *);80 static int fat_create_node(fs_node_t **, service_id_t, int);81 static int fat_destroy_node(fs_node_t *);82 static int fat_link(fs_node_t *, fs_node_t *, const char *);83 static int fat_unlink(fs_node_t *, fs_node_t *, const char *);84 static int fat_has_children(bool *, fs_node_t *);75 static errno_t fat_root_get(fs_node_t **, service_id_t); 76 static errno_t fat_match(fs_node_t **, fs_node_t *, const char *); 77 static errno_t fat_node_get(fs_node_t **, service_id_t, fs_index_t); 78 static errno_t fat_node_open(fs_node_t *); 79 static errno_t fat_node_put(fs_node_t *); 80 static errno_t fat_create_node(fs_node_t **, service_id_t, int); 81 static errno_t fat_destroy_node(fs_node_t *); 82 static errno_t fat_link(fs_node_t *, fs_node_t *, const char *); 83 static errno_t fat_unlink(fs_node_t *, fs_node_t *, const char *); 84 static errno_t fat_has_children(bool *, fs_node_t *); 85 85 static fs_index_t fat_index_get(fs_node_t *); 86 86 static aoff64_t fat_size_get(fs_node_t *); … … 89 89 static bool fat_is_file(fs_node_t *node); 90 90 static service_id_t fat_service_get(fs_node_t *node); 91 static int fat_size_block(service_id_t, uint32_t *);92 static int fat_total_block_count(service_id_t, uint64_t *);93 static int fat_free_block_count(service_id_t, uint64_t *);91 static errno_t fat_size_block(service_id_t, uint32_t *); 92 static errno_t fat_total_block_count(service_id_t, uint64_t *); 93 static errno_t fat_free_block_count(service_id_t, uint64_t *); 94 94 95 95 /* … … 114 114 } 115 115 116 static int fat_node_sync(fat_node_t *node)116 static errno_t fat_node_sync(fat_node_t *node) 117 117 { 118 118 block_t *b; 119 119 fat_bs_t *bs; 120 120 fat_dentry_t *d; 121 int rc;121 errno_t rc; 122 122 123 123 assert(node->dirty); … … 148 148 } 149 149 150 static int fat_node_fini_by_service_id(service_id_t service_id)151 { 152 int rc;150 static errno_t fat_node_fini_by_service_id(service_id_t service_id) 151 { 152 errno_t rc; 153 153 154 154 /* … … 204 204 } 205 205 206 static int fat_node_get_new(fat_node_t **nodepp)206 static errno_t fat_node_get_new(fat_node_t **nodepp) 207 207 { 208 208 fs_node_t *fn; 209 209 fat_node_t *nodep; 210 int rc;210 errno_t rc; 211 211 212 212 fibril_mutex_lock(&ffn_mutex); … … 266 266 * @param idxp Locked index structure. 267 267 */ 268 static int fat_node_get_core(fat_node_t **nodepp, fat_idx_t *idxp)268 static errno_t fat_node_get_core(fat_node_t **nodepp, fat_idx_t *idxp) 269 269 { 270 270 block_t *b; … … 272 272 fat_dentry_t *d; 273 273 fat_node_t *nodep = NULL; 274 int rc;274 errno_t rc; 275 275 276 276 if (idxp->nodep) { … … 365 365 */ 366 366 367 int fat_root_get(fs_node_t **rfn, service_id_t service_id)367 errno_t fat_root_get(fs_node_t **rfn, service_id_t service_id) 368 368 { 369 369 return fat_node_get(rfn, service_id, 0); 370 370 } 371 371 372 int fat_match(fs_node_t **rfn, fs_node_t *pfn, const char *component)372 errno_t fat_match(fs_node_t **rfn, fs_node_t *pfn, const char *component) 373 373 { 374 374 fat_node_t *parentp = FAT_NODE(pfn); … … 376 376 fat_dentry_t *d; 377 377 service_id_t service_id; 378 int rc;378 errno_t rc; 379 379 380 380 fibril_mutex_lock(&parentp->idx->lock); … … 426 426 427 427 /** Instantiate a FAT in-core node. */ 428 int fat_node_get(fs_node_t **rfn, service_id_t service_id, fs_index_t index)428 errno_t fat_node_get(fs_node_t **rfn, service_id_t service_id, fs_index_t index) 429 429 { 430 430 fat_node_t *nodep; 431 431 fat_idx_t *idxp; 432 int rc;432 errno_t rc; 433 433 434 434 idxp = fat_idx_get_by_index(service_id, index); … … 445 445 } 446 446 447 int fat_node_open(fs_node_t *fn)447 errno_t fat_node_open(fs_node_t *fn) 448 448 { 449 449 /* … … 454 454 } 455 455 456 int fat_node_put(fs_node_t *fn)456 errno_t fat_node_put(fs_node_t *fn) 457 457 { 458 458 fat_node_t *nodep = FAT_NODE(fn); … … 483 483 } 484 484 485 int fat_create_node(fs_node_t **rfn, service_id_t service_id, int flags)485 errno_t fat_create_node(fs_node_t **rfn, service_id_t service_id, int flags) 486 486 { 487 487 fat_idx_t *idxp; … … 489 489 fat_bs_t *bs; 490 490 fat_cluster_t mcl, lcl; 491 int rc;491 errno_t rc; 492 492 493 493 bs = block_bb_get(service_id); … … 538 538 } 539 539 540 int fat_destroy_node(fs_node_t *fn)540 errno_t fat_destroy_node(fs_node_t *fn) 541 541 { 542 542 fat_node_t *nodep = FAT_NODE(fn); 543 543 fat_bs_t *bs; 544 544 bool has_children; 545 int rc;545 errno_t rc; 546 546 547 547 /* … … 575 575 } 576 576 577 int fat_link(fs_node_t *pfn, fs_node_t *cfn, const char *name)577 errno_t fat_link(fs_node_t *pfn, fs_node_t *cfn, const char *name) 578 578 { 579 579 fat_node_t *parentp = FAT_NODE(pfn); … … 584 584 fat_directory_t di; 585 585 fat_dentry_t de; 586 int rc;586 errno_t rc; 587 587 588 588 fibril_mutex_lock(&childp->lock); … … 696 696 } 697 697 698 int fat_unlink(fs_node_t *pfn, fs_node_t *cfn, const char *nm)698 errno_t fat_unlink(fs_node_t *pfn, fs_node_t *cfn, const char *nm) 699 699 { 700 700 fat_node_t *parentp = FAT_NODE(pfn); 701 701 fat_node_t *childp = FAT_NODE(cfn); 702 702 bool has_children; 703 int rc;703 errno_t rc; 704 704 705 705 if (!parentp) … … 753 753 } 754 754 755 int fat_has_children(bool *has_children, fs_node_t *fn)755 errno_t fat_has_children(bool *has_children, fs_node_t *fn) 756 756 { 757 757 fat_bs_t *bs; … … 760 760 block_t *b; 761 761 unsigned i, j; 762 int rc;762 errno_t rc; 763 763 764 764 if (nodep->type != FAT_DIRECTORY) { … … 843 843 } 844 844 845 int fat_size_block(service_id_t service_id, uint32_t *size)845 errno_t fat_size_block(service_id_t service_id, uint32_t *size) 846 846 { 847 847 fat_bs_t *bs; … … 853 853 } 854 854 855 int fat_total_block_count(service_id_t service_id, uint64_t *count)855 errno_t fat_total_block_count(service_id_t service_id, uint64_t *count) 856 856 { 857 857 fat_bs_t *bs; … … 863 863 } 864 864 865 int fat_free_block_count(service_id_t service_id, uint64_t *count)865 errno_t fat_free_block_count(service_id_t service_id, uint64_t *count) 866 866 { 867 867 fat_bs_t *bs; 868 868 fat_cluster_t e0; 869 869 uint64_t block_count; 870 int rc;870 errno_t rc; 871 871 uint32_t cluster_no, clusters; 872 872 … … 910 910 }; 911 911 912 static int fat_fs_open(service_id_t service_id, enum cache_mode cmode,912 static errno_t fat_fs_open(service_id_t service_id, enum cache_mode cmode, 913 913 fs_node_t **rrfn, fat_idx_t **rridxp) 914 914 { 915 915 fat_bs_t *bs; 916 int rc;916 errno_t rc; 917 917 918 918 /* initialize libblock */ … … 1037 1037 */ 1038 1038 1039 static int fat_fsprobe(service_id_t service_id, vfs_fs_probe_info_t *info)1039 static errno_t fat_fsprobe(service_id_t service_id, vfs_fs_probe_info_t *info) 1040 1040 { 1041 1041 fat_idx_t *ridxp; … … 1044 1044 fat_directory_t di; 1045 1045 char label[FAT_VOLLABEL_LEN + 1]; 1046 int rc;1046 errno_t rc; 1047 1047 1048 1048 rc = fat_fs_open(service_id, CACHE_MODE_WT, &rfn, &ridxp); … … 1076 1076 } 1077 1077 1078 static int1078 static errno_t 1079 1079 fat_mounted(service_id_t service_id, const char *opts, fs_index_t *index, 1080 1080 aoff64_t *size) … … 1084 1084 fat_idx_t *ridxp; 1085 1085 fs_node_t *rfn; 1086 int rc;1086 errno_t rc; 1087 1087 1088 1088 instance = malloc(sizeof(fat_instance_t)); … … 1125 1125 } 1126 1126 1127 static int fat_update_fat32_fsinfo(service_id_t service_id)1127 static errno_t fat_update_fat32_fsinfo(service_id_t service_id) 1128 1128 { 1129 1129 fat_bs_t *bs; 1130 1130 fat32_fsinfo_t *info; 1131 1131 block_t *b; 1132 int rc;1132 errno_t rc; 1133 1133 1134 1134 bs = block_bb_get(service_id); … … 1156 1156 } 1157 1157 1158 static int fat_unmounted(service_id_t service_id)1158 static errno_t fat_unmounted(service_id_t service_id) 1159 1159 { 1160 1160 fs_node_t *fn; 1161 1161 fat_node_t *nodep; 1162 1162 fat_bs_t *bs; 1163 int rc;1163 errno_t rc; 1164 1164 1165 1165 bs = block_bb_get(service_id); … … 1208 1208 } 1209 1209 1210 static int1210 static errno_t 1211 1211 fat_read(service_id_t service_id, fs_index_t index, aoff64_t pos, 1212 1212 size_t *rbytes) … … 1217 1217 size_t bytes; 1218 1218 block_t *b; 1219 int rc;1219 errno_t rc; 1220 1220 1221 1221 rc = fat_node_get(&fn, service_id, index); … … 1318 1318 } 1319 1319 1320 static int1320 static errno_t 1321 1321 fat_write(service_id_t service_id, fs_index_t index, aoff64_t pos, 1322 1322 size_t *wbytes, aoff64_t *nsize) … … 1329 1329 aoff64_t boundary; 1330 1330 int flags = BLOCK_FLAGS_NONE; 1331 int rc;1331 errno_t rc; 1332 1332 1333 1333 rc = fat_node_get(&fn, service_id, index); … … 1455 1455 } 1456 1456 1457 static int1457 static errno_t 1458 1458 fat_truncate(service_id_t service_id, fs_index_t index, aoff64_t size) 1459 1459 { … … 1461 1461 fat_node_t *nodep; 1462 1462 fat_bs_t *bs; 1463 int rc;1463 errno_t rc; 1464 1464 1465 1465 rc = fat_node_get(&fn, service_id, index); … … 1514 1514 } 1515 1515 1516 static int fat_close(service_id_t service_id, fs_index_t index)1517 { 1518 return EOK; 1519 } 1520 1521 static int fat_destroy(service_id_t service_id, fs_index_t index)1516 static errno_t fat_close(service_id_t service_id, fs_index_t index) 1517 { 1518 return EOK; 1519 } 1520 1521 static errno_t fat_destroy(service_id_t service_id, fs_index_t index) 1522 1522 { 1523 1523 fs_node_t *fn; 1524 1524 fat_node_t *nodep; 1525 int rc;1525 errno_t rc; 1526 1526 1527 1527 rc = fat_node_get(&fn, service_id, index); … … 1542 1542 } 1543 1543 1544 static int fat_sync(service_id_t service_id, fs_index_t index)1544 static errno_t fat_sync(service_id_t service_id, fs_index_t index) 1545 1545 { 1546 1546 fs_node_t *fn; 1547 int rc = fat_node_get(&fn, service_id, index);1547 errno_t rc = fat_node_get(&fn, service_id, index); 1548 1548 if (rc != EOK) 1549 1549 return rc;
Note:
See TracChangeset
for help on using the changeset viewer.