434
434
/* Flags [no locking] */
435
unsigned int h_sync: 1; /* sync-on-close */
436
unsigned int h_jdata: 1; /* force data journaling */
437
unsigned int h_aborted: 1; /* fatal error on handle */
435
unsigned int h_sync:1; /* sync-on-close */
436
unsigned int h_jdata:1; /* force data journaling */
437
unsigned int h_aborted:1; /* fatal error on handle */
438
unsigned int h_cowing:1; /* COWing block to snapshot */
440
/* Number of buffers requested by user:
441
* (before adding the COW credits factor) */
442
unsigned int h_base_credits:14;
444
/* Number of buffers the user is allowed to dirty:
445
* (counts only buffers dirtied when !h_cowing) */
446
unsigned int h_user_credits:14;
439
449
#ifdef CONFIG_DEBUG_LOCK_ALLOC
440
450
struct lockdep_map h_lockdep_map;
453
#ifdef CONFIG_JBD2_DEBUG
454
/* COW debugging counters: */
455
unsigned int h_cow_moved; /* blocks moved to snapshot */
456
unsigned int h_cow_copied; /* blocks copied to snapshot */
457
unsigned int h_cow_ok_jh; /* blocks already COWed during current
459
unsigned int h_cow_ok_bitmap; /* blocks not set in COW bitmap */
460
unsigned int h_cow_ok_mapped;/* blocks already mapped in snapshot */
461
unsigned int h_cow_bitmaps; /* COW bitmaps created */
462
unsigned int h_cow_excluded; /* blocks set in exclude bitmap */