Lines Matching defs:disk

21 dump_bplustree(Disk &disk, BPositionIO *file, off_t size, bool hexDump)
44 dump_bplustree_node(node, header, &disk);
57 dump_indirect_stream(Disk &disk, bfs_inode *node, bool showOffsets)
62 int32 bytes = node->data.indirect.length * disk.BlockSize();
68 ssize_t bytesRead = disk.ReadAt(disk.ToOffset(node->data.indirect),
92 offset += runs[i].length * disk.BlockSize();
98 parseBlockRun(Disk &disk, char *first, char *last)
109 return disk.ToBlockRun(atoll(first));
129 "\t-o\tshow disk offsets\n",
174 Disk disk(argv[0]);
175 if (disk.InitCheck() < B_OK)
177 fprintf(stderr, "Could not open device or file: %s\n", strerror(disk.InitCheck()));
184 printf(" Name:\t\t\t\"%s\"\n", disk.SuperBlock()->name);
185 printf(" (disk is %s)\n\n",
186 disk.ValidateSuperBlock() == B_OK ? "valid" : "invalid!!");
187 printf(" Block Size:\t\t%ld bytes\n", disk.BlockSize());
188 printf(" Number of Blocks:\t%12Lu\t%10g MB\n", disk.NumBlocks(),
189 disk.NumBlocks() * disk.BlockSize() / (1024.0*1024));
190 if (disk.BlockBitmap() != NULL) {
192 disk.BlockBitmap()->UsedBlocks(),
193 disk.BlockBitmap()->UsedBlocks() * disk.BlockSize()
196 disk.BlockBitmap()->FreeBlocks(),
197 disk.BlockBitmap()->FreeBlocks() * disk.BlockSize()
201 = (disk.AllocationGroups() * disk.SuperBlock()->blocks_per_ag);
203 "group)\n", disk.BlockSize() * size, size,
204 disk.SuperBlock()->blocks_per_ag);
205 printf(" Allocation Groups:\t%lu\n\n", disk.AllocationGroups());
206 dump_block_run(" Log:\t\t\t", disk.Log());
207 printf(" (was %s)\n\n", disk.SuperBlock()->flags == SUPER_BLOCK_CLEAN
209 dump_block_run(" Root Directory:\t", disk.Root());
212 dump_super_block(disk.SuperBlock());
216 if (disk.ValidateSuperBlock() < B_OK) {
217 fprintf(stderr, "The disk's superblock is corrupt (or it's not a BFS "
224 if (disk.ReadAt(disk.ToOffset(disk.Root()), (void *)&inode,
226 fprintf(stderr,"Could not read root node from disk!\n");
230 dump_indirect_stream(disk, &inode, showOffsets);
235 char buffer[disk.BlockSize()];
247 run = parseBlockRun(disk, argv[1], argv[2]);
249 if (disk.ReadAt(disk.ToOffset(run), buffer, disk.BlockSize()) <= 0) {
250 fprintf(stderr,"Could not read node from disk!\n");
254 inode = Inode::Factory(&disk, (bfs_inode *)buffer, false);
264 "\n", disk.ToBlock(run));
266 dump_indirect_stream(disk, (bfs_inode *)buffer, showOffsets);
273 "-\n", disk.ToBlock(run));
275 dump_bplustree(disk, (Directory *)inode, inode->Size(), dumpHex);
283 "------------\n", disk.ToBlock(run));
298 "------------\n", disk.ToBlock(run));
299 dump_block(buffer, disk.BlockSize());