#include <sys/types.h>#include <sys/stat.h>#include <fcntl.h>#include <unistd.h>#include <stdlib.h>#include <limits.h>#include <string.h>#include <libgen.h>#include <stdio.h>#include <dirent.h>#include <errno.h>#include <sys/mman.h>#include "libjio.h"#include "common.h"#include "compat.h"#include "journal.h"#include "trans.h"

Go to the source code of this file.
Functions | |
| struct jtrans * | jtrans_new (struct jfs *fs, unsigned int flags) | 
| Create a new transaction.   | |
| void | jtrans_free (struct jtrans *ts) | 
| Free a transaction structure.   | |
| static int | lock_file_ranges (struct jtrans *ts, int mode) | 
| Lock/unlock the ranges of the file covered by the transaction.   | |
| static int | operation_read_prev (struct jtrans *ts, struct operation *op) | 
| Read the previous information from the disk into the given operation structure.   | |
| static int | jtrans_add_common (struct jtrans *ts, const void *buf, size_t count, off_t offset, enum op_direction direction) | 
| Common function to add an operation to a transaction.   | |
| int | jtrans_add_r (struct jtrans *ts, void *buf, size_t count, off_t offset) | 
| Add a read operation to a transaction.   | |
| int | jtrans_add_w (struct jtrans *ts, const void *buf, size_t count, off_t offset) | 
| Add a write operation to a transaction.   | |
| ssize_t | jtrans_commit (struct jtrans *ts) | 
| Commit a transaction.   | |
| ssize_t | jtrans_rollback (struct jtrans *ts) | 
| Rollback a transaction.   | |
| struct jfs * | jopen (const char *name, int flags, int mode, unsigned int jflags) | 
| Open a file.   | |
| int | jsync (struct jfs *fs) | 
| Sync a file.   | |
| int | jmove_journal (struct jfs *fs, const char *newpath) | 
| Change the location of the journal directory.   | |
| int | jclose (struct jfs *fs) | 
| Close a file opened with jopen().   | |
| static int lock_file_ranges | ( | struct jtrans * | ts, | |
| int | mode | |||
| ) |  [static] | 
        
Lock/unlock the ranges of the file covered by the transaction.
mode must be either F_LOCKW or F_UNLOCK. Returns 0 on success, -1 on error.
Definition at line 81 of file trans.c.
Referenced by jtrans_commit().


Read the previous information from the disk into the given operation structure.
Returns 0 on success, -1 on error.
Definition at line 112 of file trans.c.
Referenced by jtrans_commit().


| static int jtrans_add_common | ( | struct jtrans * | ts, | |
| const void * | buf, | |||
| size_t | count, | |||
| off_t | offset, | |||
| enum op_direction | direction | |||
| ) |  [static] | 
        
Common function to add an operation to a transaction.
Definition at line 139 of file trans.c.
Referenced by jtrans_add_r(), and jtrans_add_w().

 1.5.8