.SH SYNOPSIS
.B debugfs
[
-.B \-Vwci
+.B \-DVwci
]
[
.B \-b
and execute them. When
.B debugfs
is finished executing those commands, it will exit.
-.TP
+.TP
+.I -D
+Causes
+.B debugfs
+to open the device using Direct I/O, bypassing the buffer cache. Note
+that some Linux devices, notably device mapper as of this writing, do
+not support Direct I/O.
+.TP
.I -R request
Causes
.B debugfs
.TP
.I help
Print a list of commands understood by
-.BR debugfs (8).
+.BR debugfs .
.TP
.I icheck block ...
Print a listing of the inodes which use the one or more blocks specified
Take the requested list of inode numbers, and print a listing of pathnames
to those inodes.
.TP
-.I open [-w] [-e] [-f] [-i] [-c] [-b blocksize] [-s superblock] device
+.I open [-w] [-e] [-f] [-i] [-c] [-D] [-b blocksize] [-s superblock] device
Open a filesystem for editing. The
.I -f
flag forces the filesystem to be opened even if there are some unknown
prevent the filesystem from being opened. The
.I -e
flag causes the filesystem to be opened in exclusive mode. The
-.IR -b ", " -c ", " -i ", " -s ", and " -w
+.IR -b ", " -c ", " -i ", " -s ", " -w ", and " -D
options behave the same as the command-line options to
.BR debugfs .
.TP
.TP
.B DEBUGFS_PAGER, PAGER
The
-.BR debugfs (8)
+.B debugfs
program always pipes the output of the some commands through a
pager program. These commands include:
.IR show_super_stats ,
char *data_filename = 0;
reset_getopt();
- while ((c = getopt (argc, argv, "iwfecb:s:d:")) != EOF) {
+ while ((c = getopt (argc, argv, "iwfecb:s:d:D")) != EOF) {
switch (c) {
case 'i':
open_flags |= EXT2_FLAG_IMAGE_FILE;
case 'd':
data_filename = optarg;
break;
+ case 'D':
+ open_flags |= EXT2_FLAG_DIRECT_IO;
+ break;
case 'b':
blocksize = parse_ulong(optarg, argv[0],
"block size", &err);
fprintf (stderr, "%s %s (%s)\n", debug_prog_name,
E2FSPROGS_VERSION, E2FSPROGS_DATE);
- while ((c = getopt (argc, argv, "iwcR:f:b:s:Vd:")) != EOF) {
+ while ((c = getopt (argc, argv, "iwcR:f:b:s:Vd:D")) != EOF) {
switch (c) {
case 'R':
request = optarg;
case 'w':
open_flags |= EXT2_FLAG_RW;
break;
+ case 'D':
+ open_flags |= EXT2_FLAG_DIRECT_IO;
+ break;
case 'b':
blocksize = parse_ulong(optarg, argv[0],
"block size", 0);