chfs.h (30296cb2) | chfs.h (98907fc3) |
---|---|
1/* $NetBSD: chfs.h,v 1.10 2018/04/19 21:50:10 christos Exp $ */ | 1/* $NetBSD: chfs.h,v 1.11 2021/12/07 21:37:37 andvar Exp $ */ |
2 3/*- 4 * Copyright (c) 2010 Department of Software Engineering, 5 * University of Szeged, Hungary 6 * Copyright (C) 2009 Ferenc Havasi <havasi@inf.u-szeged.hu> 7 * Copyright (C) 2009 Zoltan Sogor <weth@inf.u-szeged.hu> 8 * Copyright (C) 2009 David Tengeri <dtengeri@inf.u-szeged.hu> 9 * Copyright (C) 2009 Tamas Toth <ttoth@inf.u-szeged.hu> --- 184 unchanged lines hidden (view full) --- 194 uint64_t version; /* version */ 195 ino_t vno; /* vnode number */ 196 uint32_t nhash; /* name hash */ 197 enum chtype type; /* type of the dirent */ 198 uint8_t nsize; /* length of its name */ 199 uint8_t name[0]; /* name of the directory */ 200}; 201 | 2 3/*- 4 * Copyright (c) 2010 Department of Software Engineering, 5 * University of Szeged, Hungary 6 * Copyright (C) 2009 Ferenc Havasi <havasi@inf.u-szeged.hu> 7 * Copyright (C) 2009 Zoltan Sogor <weth@inf.u-szeged.hu> 8 * Copyright (C) 2009 David Tengeri <dtengeri@inf.u-szeged.hu> 9 * Copyright (C) 2009 Tamas Toth <ttoth@inf.u-szeged.hu> --- 184 unchanged lines hidden (view full) --- 194 uint64_t version; /* version */ 195 ino_t vno; /* vnode number */ 196 uint32_t nhash; /* name hash */ 197 enum chtype type; /* type of the dirent */ 198 uint8_t nsize; /* length of its name */ 199 uint8_t name[0]; /* name of the directory */ 200}; 201 |
202/* struct chfs_tmp_dnode - used temporarly while building a data node */ | 202/* struct chfs_tmp_dnode - used temporarily while building a data node */ |
203struct chfs_tmp_dnode { 204 struct chfs_full_dnode *node; /* associated full dnode */ 205 uint64_t version; /* version of the tmp node */ 206 uint32_t data_crc; /* CRC of the data */ 207 uint16_t overlapped; /* is overlapped */ 208 struct chfs_tmp_dnode *next; /* next tmp node */ 209}; 210 --- 160 unchanged lines hidden (view full) --- 371 * (and also the sizes of each eraseblock). 372 * If you have to lock chm_lock_mountfields and also chm_lock_sizes, 373 * you must lock chm_lock_mountfields first. 374 */ 375 kmutex_t chm_lock_sizes; 376 377 /* 378 * eraseblock queues | 203struct chfs_tmp_dnode { 204 struct chfs_full_dnode *node; /* associated full dnode */ 205 uint64_t version; /* version of the tmp node */ 206 uint32_t data_crc; /* CRC of the data */ 207 uint16_t overlapped; /* is overlapped */ 208 struct chfs_tmp_dnode *next; /* next tmp node */ 209}; 210 --- 160 unchanged lines hidden (view full) --- 371 * (and also the sizes of each eraseblock). 372 * If you have to lock chm_lock_mountfields and also chm_lock_sizes, 373 * you must lock chm_lock_mountfields first. 374 */ 375 kmutex_t chm_lock_sizes; 376 377 /* 378 * eraseblock queues |
379 * free: completly free | 379 * free: completely free |
380 * clean: contains only valid data 381 * dirty: contains valid and deleted data 382 * very_dirty: contains mostly deleted data (should be GC'd) 383 * erasable: doesn't contain valid data (should be erased) 384 * erase_pending: we can erase blocks from this queue 385 */ 386 struct chfs_eraseblock_queue chm_free_queue; 387 struct chfs_eraseblock_queue chm_clean_queue; --- 370 unchanged lines hidden --- | 380 * clean: contains only valid data 381 * dirty: contains valid and deleted data 382 * very_dirty: contains mostly deleted data (should be GC'd) 383 * erasable: doesn't contain valid data (should be erased) 384 * erase_pending: we can erase blocks from this queue 385 */ 386 struct chfs_eraseblock_queue chm_free_queue; 387 struct chfs_eraseblock_queue chm_clean_queue; --- 370 unchanged lines hidden --- |