Changeset 92dd5c8 in mainline for uspace/srv/fs/minixfs/mfs_super.c
- Timestamp:
- 2011-03-13T20:14:29Z (14 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 245eb02d
- Parents:
- ccbc5b56
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/srv/fs/minixfs/mfs_super.c
rccbc5b56 r92dd5c8 32 32 33 33 #include <libfs.h> 34 #include <stdio.h> 34 35 #include <stdlib.h> 35 36 #include <libblock.h> … … 47 48 devmap_handle_t devmap_handle = (devmap_handle_t) IPC_GET_ARG1(*request); 48 49 enum cache_mode cmode; 49 struct mfs 3_superblock *sp;50 struct mfs_superblock *sp; 50 51 bool native, longnames; 51 52 mfs_version_t version; … … 56 57 57 58 if (rc != EOK) { 59 mfsdebug("Can't accept async data write\n"); 58 60 async_answer_0(rid, rc); 59 61 return; … … 69 71 70 72 /* initialize libblock */ 71 rc = block_init(devmap_handle, MFS_SUPERBLOCK_SIZE);73 rc = block_init(devmap_handle, 1024); 72 74 if (rc != EOK) { 75 mfsdebug("libblock initialization failed\n"); 73 76 async_answer_0(rid, rc); 74 77 return; 75 78 } 76 79 77 /* prepare the superblock */ 78 rc = block_bb_read(devmap_handle, MFS_SUPERBLOCK); 80 sp = malloc(MFS_SUPERBLOCK_SIZE); 81 82 /* Read the superblock */ 83 rc = block_read_direct(devmap_handle, MFS_SUPERBLOCK << 1, 1, sp); 79 84 if (rc != EOK) { 80 85 block_fini(devmap_handle); … … 83 88 } 84 89 85 /* get the buffer with the superblock */86 sp = block_bb_get(devmap_handle);87 88 90 if (!check_magic_number(sp->s_magic, &native, &version, &longnames)) { 89 91 /*Magic number is invalid!*/ 92 mfsdebug("magic number not recognized\n"); 90 93 block_fini(devmap_handle); 91 94 async_answer_0(rid, ENOTSUP); 92 95 return; 93 96 } 97 98 mfsdebug("magic number recognized\n"); 99 free(sp); 94 100 } 95 101 … … 98 104 { 99 105 *longfilenames = false; 106 107 mfsdebug("magic = %d\n", magic); 100 108 101 109 if (magic == MFS_MAGIC_V1 || magic == MFS_MAGIC_V1R) {
Note:
See TracChangeset
for help on using the changeset viewer.