journal_lock_updates(9)

journal_lock_updates9

Establish a transaction barrier.

Usage

void journal_lock_updates(journal_t * journal);

Arguments

journal

Journal to establish a barrier on.

Overview

This locks out any further updates from being started, and blocks until all existing updates have completed, returning only once the journal is in a quiescent state with no updates running.

We do not use simple mutex for synchronization as there are syscalls which want to return with filesystem locked and that trips up lockdep. Also hibernate needs to lock filesystem but locked mutex then blocks hibernation. Since locking filesystem is rare operation, we use simple counter and waitqueue for locking.

Releases

5 releases since Debian 4.0 (Etch); the text changed 4 times.

  1. 4.0
  2. 5.0
  3. 6.0
  4. 7
  5. 8

Authors

Roger Gammans <[email protected]>

Author.

Stephen Tweedie <[email protected]>

Author.

From linux-manual-3.16 3.16.56-1+deb8u1 in Debian 8 (Jessie). Parsed by carta from the page's man source.