Changeset View
Changeset View
Standalone View
Standalone View
sbin/newfs_nandfs/newfs_nandfs.c
Show First 20 Lines • Show All 514 Lines • ▼ Show 20 Lines | else | ||||
blocksize); | blocksize); | ||||
} | } | ||||
ss->ss_datasum = crc_data; | ss->ss_datasum = crc_data; | ||||
} | } | ||||
static void | static void | ||||
create_fsdata(void) | create_fsdata(void) | ||||
{ | { | ||||
struct uuid fs_uuid; | |||||
memset(&fsdata, 0, sizeof(struct nandfs_fsdata)); | memset(&fsdata, 0, sizeof(struct nandfs_fsdata)); | ||||
fsdata.f_magic = NANDFS_FSDATA_MAGIC; | fsdata.f_magic = NANDFS_FSDATA_MAGIC; | ||||
fsdata.f_nsegments = nsegments; | fsdata.f_nsegments = nsegments; | ||||
fsdata.f_erasesize = erasesize; | fsdata.f_erasesize = erasesize; | ||||
fsdata.f_first_data_block = NANDFS_FIRST_BLOCK; | fsdata.f_first_data_block = NANDFS_FIRST_BLOCK; | ||||
fsdata.f_blocks_per_segment = blocks_per_segment; | fsdata.f_blocks_per_segment = blocks_per_segment; | ||||
fsdata.f_r_segments_percentage = rsv_segment_percent; | fsdata.f_r_segments_percentage = rsv_segment_percent; | ||||
fsdata.f_rev_level = NANDFS_CURRENT_REV; | fsdata.f_rev_level = NANDFS_CURRENT_REV; | ||||
fsdata.f_sbbytes = NANDFS_SB_BYTES; | fsdata.f_sbbytes = NANDFS_SB_BYTES; | ||||
fsdata.f_bytes = NANDFS_FSDATA_CRC_BYTES; | fsdata.f_bytes = NANDFS_FSDATA_CRC_BYTES; | ||||
fsdata.f_ctime = nandfs_time; | fsdata.f_ctime = nandfs_time; | ||||
fsdata.f_log_block_size = nandfs_log2(blocksize) - 10; | fsdata.f_log_block_size = nandfs_log2(blocksize) - 10; | ||||
fsdata.f_errors = 1; | fsdata.f_errors = 1; | ||||
fsdata.f_inode_size = sizeof(struct nandfs_inode); | fsdata.f_inode_size = sizeof(struct nandfs_inode); | ||||
fsdata.f_dat_entry_size = sizeof(struct nandfs_dat_entry); | fsdata.f_dat_entry_size = sizeof(struct nandfs_dat_entry); | ||||
fsdata.f_checkpoint_size = sizeof(struct nandfs_checkpoint); | fsdata.f_checkpoint_size = sizeof(struct nandfs_checkpoint); | ||||
fsdata.f_segment_usage_size = sizeof(struct nandfs_segment_usage); | fsdata.f_segment_usage_size = sizeof(struct nandfs_segment_usage); | ||||
uuidgen(&fsdata.f_uuid, 1); | uuidgen(&fs_uuid, 1); | ||||
memcpy(&fsdata.f_uuid, &fs_uuid, sizeof(fsdata.f_uuid)); | |||||
if (volumelabel) | if (volumelabel) | ||||
memcpy(fsdata.f_volume_name, volumelabel, 16); | memcpy(fsdata.f_volume_name, volumelabel, 16); | ||||
fsdata.f_sum = crc32_le(0, (const uint8_t *)&fsdata, | fsdata.f_sum = crc32_le(0, (const uint8_t *)&fsdata, | ||||
NANDFS_FSDATA_CRC_BYTES); | NANDFS_FSDATA_CRC_BYTES); | ||||
} | } | ||||
▲ Show 20 Lines • Show All 628 Lines • Show Last 20 Lines |