• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-R7000-V1.0.7.12_1.2.5/components/opensource/linux/linux-2.6.36/fs/jfs/

Lines Matching defs:log

26  *	log manager configuration parameters
29 /* log page size */
36 * log logical volume
38 * a log is used to make the commit operation on journalled
40 * a log is implemented with a logical volume.
41 * there is one log per logical volume group.
43 * block 0 of the log logical volume is not used (ipl etc).
44 * block 1 contains a log "superblock" and is used by logFormat(),
46 * of the log but is not otherwise used during normal processing.
47 * blocks 2 - (N-1) are used to contain log records.
54 * log superblock (block 1 of logical volume)
62 #define MAX_ACTIVE 128 /* Max active file systems sharing log */
65 __le32 magic; /* 4: log lv identifier */
67 __le32 serial; /* 4: log open/mount counter */
75 __le32 end; /* 4: addr of last log record set by logredo */
85 /* log flag: commit option (see jfs_filsys.h) */
87 /* log state */
88 #define LOGMOUNT 0 /* log mounted by lmLogInit() */
89 #define LOGREDONE 1 /* log shutdown by lmLogShutdown().
90 * log redo completed by logredo().
92 #define LOGWRAP 2 /* log wrapped */
93 #define LOGREADERR 3 /* log read error detected in logredo() */
97 * log logical page
105 * and needs to be recognized during log replay. The xor value is
106 * an "exclusive or" of all log words in the page up to eor. This
110 * the log page.
124 __le32 page; /* 4: log sequence page number */
126 __le16 eor; /* 2: end-of-log offset of lasrt record write */
129 __le32 data[LOGPSIZE / 4 - 4]; /* log record area */
138 #define LOGPHDRSIZE 8 /* log page header size */
139 #define LOGPTLRSIZE 8 /* log page trailer size */
143 * log record
146 * jfs uses only "after" log records (only a single writer is allowed
150 * the log records containing the after values and the commit
151 * record is written to the log on disk, undo discards the copy
154 * a log record consists of a data area of variable length followed by
160 * records are packed one after the other in the data area of log pages.
167 /* log record types */
177 /* REDOPAGE/NOREDOPAGE log record data type */
190 /* UPDATEMAP log record descriptor type */
205 __le32 logtid; /* 4: log transaction identifier */
242 * in the log with the same page block number to this page.
274 * record in the log with the any of the 4 page block
289 * SYNCPT: log sync point
291 * replay log upto syncpt address specified;
319 * do not apply records which precede this record in the log
349 } log;
364 * log logical volume
372 struct block_device *bdev; /* 4: log lv pointer */
373 int serial; /* 4: log mount serial number */
375 s64 base; /* @8: log extent address (inline log ) */
376 int size; /* 4: log size in log page (in page) */
384 /* log write */
385 int logtid; /* 4: log tid */
388 struct lbuf *bp; /* 4: current log page buffer */
390 struct mutex loglock; /* 4: log write serialization lock */
404 int logsize; /* 4: log data area size in byte */
405 int lsn; /* 4: end-of-log */
411 struct lbuf *wqueue; /* 4: log pageout queue */
413 char uuid[16]; /* 16: 128-bit uuid of log device */
445 * log cache buffer header
448 struct jfs_log *l_log; /* 4: log associated with buffer */
458 int l_pn; /* 4: log page number */
459 int l_eor; /* 4: log record eor */
460 int l_ceor; /* 4: committed log record eor */
462 s64 l_blkno; /* 8: log page block number */
482 s32 lsn; /* log sequence number */
483 struct list_head synclist; /* log sync list link */
487 * logsynclist serialization (per log)
490 #define LOGSYNC_LOCK_INIT(log) spin_lock_init(&(log)->synclock)
491 #define LOGSYNC_LOCK(log, flags) spin_lock_irqsave(&(log)->synclock, flags)
492 #define LOGSYNC_UNLOCK(log, flags) \
493 spin_unlock_irqrestore(&(log)->synclock, flags)
496 #define logdiff(diff, lsn, log)\
498 diff = (lsn) - (log)->syncpt;\
500 diff += (log)->logsize;\
505 extern int lmLogShutdown(struct jfs_log * log);
506 extern int lmLogInit(struct jfs_log * log);
507 extern int lmLogFormat(struct jfs_log *log, s64 logAddress, int logSize);
510 extern void jfs_flush_journal(struct jfs_log * log, int wait);
511 extern void jfs_syncpt(struct jfs_log *log, int hard_sync);