diff options
author | Darrick J. Wong <darrick.wong@oracle.com> | 2014-08-26 23:32:05 -0400 |
---|---|---|
committer | Theodore Ts'o <tytso@mit.edu> | 2014-08-26 23:32:05 -0400 |
commit | 389931ca1f02b5b6676a90345c8a624d6497cf80 (patch) | |
tree | 045a9be2e9a1ae2a7bf7bb3473c546ec9c529de8 /contrib | |
parent | c1c8800b71521959b0ea3e8e385ed9e01f902612 (diff) | |
download | e2fsprogs-389931ca1f02b5b6676a90345c8a624d6497cf80.tar.gz |
contrib: add script to help resync journal code with kernel
Add a script that handles (most) of the code massaging necessary to resync
{recovery,revoke}.c from the Linux kernel into e2fsprogs.
Usage: jbd2-resync.sh linux/fs/jbd2/revoke.c e2fsprogs/e2fsck/revoke.c
Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Diffstat (limited to 'contrib')
-rwxr-xr-x | contrib/jbd2-resync.sh | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/contrib/jbd2-resync.sh b/contrib/jbd2-resync.sh new file mode 100755 index 00000000..4133b632 --- /dev/null +++ b/contrib/jbd2-resync.sh @@ -0,0 +1,19 @@ +#!/bin/bash + +if [ -z "$1" -o -z "$2" ]; then + echo "Usage: $0 kernel-file e2fsprogs-file" + exit 0 +fi + +# Transform a few things to fit the compatibility things defined in jfs_user.h. +# Use the ext2fs_ endian conversion functions because they truncate oversized +# inputs (e.g. passing a u32 to cpu_to_be16()) like the kernel versions and +# unlike the libc6 versions. +exec sed -e 's/JBD_/JFS_/g' \ + -e 's/JBD2_/JFS_/g' \ + -e 's/jbd2_journal_/journal_/g' \ + -e 's/__be/__u/g' \ + -e 's/struct kmem_cache/lkmem_cache_t/g' \ + -e 's/cpu_to_be/ext2fs_cpu_to_be/g' \ + -e 's/be\([0-9][0-9]\)_to_cpu/ext2fs_be\1_to_cpu/g' \ + < "$1" > "$2" |