Changeset 6c501f8 in mainline for uspace/lib


Ignore:
Timestamp:
2011-09-30T20:00:30Z (14 years ago)
Author:
Frantisek Princ <frantisek.princ@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
00a8f1b
Parents:
9875711
Message:

_mounted and _unmounted operations skeletons (copied from ext2fs)

Location:
uspace/lib/ext4
Files:
2 added
8 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/ext4/Makefile

    r9875711 r6c501f8  
    3333
    3434SOURCES = \
    35         libext4_superblock.c \
    3635        libext4_block_group.c \
     36        libext4_directory.c \
     37        libext4_filesystem.c \
    3738        libext4_inode.c \
    38         libext4_directory.c
     39        libext4_superblock.c
     40       
    3941
    4042include $(USPACE_PREFIX)/Makefile.common
  • uspace/lib/ext4/libext4.h

    r9875711 r6c501f8  
    3636#include "libext4_block_group.h"
    3737#include "libext4_directory.h"
     38#include "libext4_filesystem.h"
    3839#include "libext4_inode.h"
    3940#include "libext4_superblock.h"
  • uspace/lib/ext4/libext4_block_group.c

    r9875711 r6c501f8  
    3636 */
    3737
     38#include "libext4_block_group.h"
    3839
    3940
  • uspace/lib/ext4/libext4_block_group.h

    r9875711 r6c501f8  
    3434#define LIBEXT4_LIBEXT4_BLOCK_GROUP_H_
    3535
     36#include <sys/types.h>
     37
     38/*
     39 * Structure of a blocks group descriptor
     40 */
     41typedef struct ext4_block_group {
     42        uint32_t bg_block_bitmap_lo; // Blocks bitmap block
     43        uint32_t bg_inode_bitmap_lo; // Inodes bitmap block
     44        uint32_t bg_inode_table_lo; // Inodes table block
     45        uint16_t bg_free_blocks_count_lo; // Free blocks count
     46        uint16_t bg_free_inodes_count_lo; // Free inodes count
     47        uint16_t bg_used_dirs_count_lo; // Directories count
     48        uint16_t bg_flags; // EXT4_BG_flags (INODE_UNINIT, etc)
     49        uint32_t bg_reserved[2]; // Likely block/inode bitmap checksum
     50        uint16_t bg_itable_unused_lo; // Unused inodes count
     51        uint16_t bg_checksum; // crc16(sb_uuid+group+desc)
     52        uint32_t bg_block_bitmap_hi; // Blocks bitmap block MSB
     53        uint32_t bg_inode_bitmap_hi; // Inodes bitmap block MSB
     54        uint32_t bg_inode_table_hi; // Inodes table block MSB
     55        uint16_t bg_free_blocks_count_hi; // Free blocks count MSB
     56        uint16_t bg_free_inodes_count_hi; // Free inodes count MSB
     57        uint16_t bg_used_dirs_count_hi; // Directories count MSB
     58        uint16_t bg_itable_unused_hi;  // Unused inodes count MSB
     59        uint32_t bg_reserved2[3]; // Padding
     60} ext4_group_desc_t;
    3661
    3762#endif
  • uspace/lib/ext4/libext4_directory.c

    r9875711 r6c501f8  
    3636 */
    3737
     38#include "libext4_directory.h"
    3839
    3940
  • uspace/lib/ext4/libext4_inode.c

    r9875711 r6c501f8  
    3636 */
    3737
    38 #include "libext4.h"
     38#include "libext4_inode.h"
     39
     40// TODO check return type
     41uint16_t ext4_inode_get_usage_count(ext4_inode_t *inode)
     42{
     43        // TODO
     44        return 0;
     45}
     46
    3947
    4048/**
  • uspace/lib/ext4/libext4_inode.h

    r9875711 r6c501f8  
    3434#define LIBEXT4_LIBEXT4_INODE_H_
    3535
     36#include <libblock.h>
    3637#include <sys/types.h>
    3738
     
    112113
    113114
     115// TODO check value
     116#define EXT4_INODE_ROOT_INDEX   2
     117
     118typedef struct ext4_inode_ref {
     119        block_t *block; // Reference to a block containing this inode
     120        ext4_inode_t *inode;
     121        uint32_t index; // Index number of this inode
     122} ext4_inode_ref_t;
     123
     124extern uint16_t ext4_inode_get_usage_count(ext4_inode_t *);
    114125
    115126#endif
  • uspace/lib/ext4/libext4_superblock.c

    r9875711 r6c501f8  
    3636 */
    3737
    38 #include "libext4.h"
     38#include "libext4_superblock.h"
    3939
    4040
Note: See TracChangeset for help on using the changeset viewer.