Journal
Journal::Unlock(Transaction* owner, bool success)
Journal::_TransactionSize() const
Journal::_TransactionDone(bool success)
Journal::MoveLog(block_run newLog)
Journal::Dump()
Journal* journal = volume->GetJournal(0);
LogEntry::LogEntry(Journal* journal, uint32 start, uint32 length)
RunArrays::RunArrays(Journal* journal)
RunArrays(Journal* journal);
Journal::Journal(Volume* volume)
fLogFlusher = spawn_kernel_thread(&Journal::_LogFlusher, "bfs log flusher",
Journal::~Journal()
Journal::InitCheck()
Journal::_CheckRunArray(const run_array* array)
Journal::_ReplayRunArray(int32* _start)
Journal::ReplayLog()
Journal* fJournal;
Journal::CurrentTransactionSize() const
Journal::CurrentTransactionTooLarge() const
Journal::_TransactionWritten(int32 transactionID, int32 event, void* _logEntry)
Journal* journal = logEntry->GetJournal();
LogEntry(Journal* journal, uint32 logStart,
Journal::_TransactionIdle(int32 transactionID, int32 event, void* _journal)
Journal* journal = (Journal*)_journal;
Journal::_LogFlusher(void* _journal)
Journal* journal = (Journal*)_journal;
Journal::_WriteTransactionToLog()
Journal* GetJournal() { return fJournal; }
Journal* fJournal;
Journal::_FlushLog(bool canWait, bool flushBlocks, bool alreadyLocked)
Journal::FlushLogAndBlocks()
Journal::FlushLogAndLockJournal()
Journal::Lock(Transaction* owner, bool separateSubTransactions)
class Journal {
Journal* fJournal;
Journal(Volume* volume);
~Journal();
Journal::FreeLogBlocks() const
fJournal = new(std::nothrow) Journal(this);
fJournal = new(std::nothrow) Journal(this);
Journal* GetJournal(off_t refBlock) const;
class Journal;
Journal* fJournal;
inline Journal*
Journal::Journal(Volume* volume)
Journal::~Journal()
Journal::_TransactionWritten(int32 transactionID, int32 event, void* _journal)
Journal::_TransactionDone(bool success)
Journal::Lock(Transaction* owner)
Journal::UnLock(Transaction* owner, bool success)
class Journal {
Journal(Volume* volume);
~Journal();
Journal* GetJournal() const { return fJournal; }
Journal* fJournal;
fJournal = new(std::nothrow) Journal(this);
fJournal = new(std::nothrow) Journal(this);
class Journal;
Journal* GetJournal() const { return fJournal; }
Journal* fJournal;
Journal(),
class InodeJournal : public Journal {
Journal::_RecoverPassReplay(uint32 lastCommitID)
Journal::_FlushLog(bool canWait, bool flushBlocks)
Journal::_WrapAroundLog(uint32 block)
Journal::_CurrentTransactionSize() const
Journal::_FullTransactionSize() const
Journal::_MainTransactionSize() const
Journal::_TransactionDone(bool success)
Journal::Journal()
Journal::_TransactionWritten(int32 transactionID, int32 event, void* _logEntry)
Journal* journal = logEntry->GetJournal();
Journal::_TransactionIdle(int32 transactionID, int32 event, void* _journal)
Journal* journal = (Journal*)_journal;
Journal::~Journal()
Journal::InitCheck()
Journal::Uninit()
Journal::StartLog()
Journal::RestartLog()
Journal::Lock(Transaction* owner, bool separateSubTransactions)
Journal::Unlock(Transaction* owner, bool success)
Journal::MapBlock(off_t logical, fsblock_t& physical)
Journal::FreeLogBlocks() const
Journal::FlushLogAndBlocks()
Journal::TransactionID() const
Journal::_WritePartialTransactionToLog(JournalHeader* descriptorBlock,
LogEntry(Journal* journal, uint32 logStart,
Journal* GetJournal() { return fJournal; }
Journal* fJournal;
Journal::_WriteTransactionToLog()
LogEntry::LogEntry(Journal* journal, uint32 logStart, uint32 commitID)
Journal::_SaveSuperBlock()
Journal::_LoadSuperBlock()
Journal::_CheckFeatures(JournalSuperBlock* superblock)
Journal::_Checksum(JournalSuperBlock* superblock)
Journal::Journal(Volume* fsVolume, Volume* jVolume)
Journal::_Checksum(uint8* block, bool set)
Journal::_CountTags(JournalHeader* descriptorBlock)
Journal::_TagSize()
Journal::Recover()
Journal::_RecoverPassScan(uint32& lastCommitID)
Journal::_RecoverPassRevoke(uint32 lastCommitID)
class Journal {
Journal(Volume *fsVolume, Volume *jVolume);
virtual ~Journal();
Journal();
Journal()
status = Journal::Lock(owner, separateSubTransactions);
return Journal::Unlock(owner, success);
class NoJournal : public Journal {
Transaction::Transaction(Journal* journal)
Transaction::Start(Journal* journal)
class Journal;
Transaction(Journal* journal);
status_t Start(Journal* journal);
Journal* fJournal;
Journal* fJournal;
class Journal;
Journal* GetJournal() { return fJournal; }