Support kernel syscall f80, add more tests for extended attributes and unicode.

This commit is contained in:
Ivan Baravy 2019-12-08 04:32:07 +03:00
parent 83fb6bb99f
commit 4a242557b5
27 changed files with 4520 additions and 618 deletions

8
cio.c
View File

@ -29,14 +29,14 @@ void cio_disk_free(vdisk_t *vdisk) {
free(vdisk);
}
f70status cio_disk_read(vdisk_t *vdisk, uint8_t *buffer, off_t startsector, uint32_t *numsectors) {
f70status_t cio_disk_read(vdisk_t *vdisk, uint8_t *buffer, off_t startsector, uint32_t *numsectors) {
fseeko(vdisk->file, startsector * vdisk->sect_size, SEEK_SET);
fread(buffer, *numsectors * vdisk->sect_size, 1, vdisk->file);
return F70_ERROR_SUCCESS;
return ERROR_SUCCESS;
}
f70status cio_disk_write(vdisk_t *vdisk, uint8_t *buffer, off_t startsector, uint32_t *numsectors) {
f70status_t cio_disk_write(vdisk_t *vdisk, uint8_t *buffer, off_t startsector, uint32_t *numsectors) {
fseeko(vdisk->file, startsector * vdisk->sect_size, SEEK_SET);
fwrite(buffer, *numsectors * vdisk->sect_size, 1, vdisk->file);
return F70_ERROR_SUCCESS;
return ERROR_SUCCESS;
}

View File

@ -3,13 +3,15 @@ MKFILEPATTERN=../tools/mkfilepattern
MOUNT_OPT=-t xfs
TEMP_DIR:=$(shell mktemp -d)
all: s05k s4k
all: s05k s4k unicode
rmdir $(TEMP_DIR)
s05k: xfs_v4_ftype0_s05k_b2k_n8k.img xfs_v4_ftype1_s05k_b2k_n8k.img xfs_v4_xattr.img xfs_v4_files_s05k_b4k_n8k.img xfs_v4_deep_btree_dirs.img
s05k: xfs_v4_ftype0_s05k_b2k_n8k.img xfs_v4_ftype1_s05k_b2k_n8k.img xfs_v4_xattr.img xfs_v4_files_s05k_b4k_n8k.img xfs_v4_deep_btree_dirs.img xfs_v4_ftype0_s05k_b2k_n8k_xattr.img
s4k: xfs_v4_ftype0_s4k_b4k_n8k.img
unicode: xfs_v4_unicode.img
xfs_v4_ftype0_s05k_b2k_n8k.img:
fallocate -l 63MiB $@
sudo mkfs.xfs -b size=2k -m crc=0,finobt=0,rmapbt=0,reflink=0 -d sectsize=512 -i maxpct=100 -n size=8k,ftype=0 $@
@ -173,3 +175,62 @@ xfs_v4_ftype0_s4k_b4k_n8k.img:
# parted --script $@ mktable gpt
# parted --script --align optimal $@ mkpart primary 1MiB 100%
xfs_v4_ftype0_s05k_b2k_n8k_xattr.img:
fallocate -l 63MiB $@
sudo mkfs.xfs -b size=2k -m crc=0,finobt=0,rmapbt=0,reflink=0 -d sectsize=512 -i maxpct=100 -n size=8k,ftype=0 $@
sudo mount $(MOUNT_OPT) $@ $(TEMP_DIR)
sudo chown $$USER $(TEMP_DIR) -R
#
mkdir $(TEMP_DIR)/sf_empty
setfattr -n user.pew_attr_pew -v pew_value_pew $(TEMP_DIR)/sf_empty
#
mkdir $(TEMP_DIR)/sf
setfattr -n user.pew_attr_pew -v pew_value_pew $(TEMP_DIR)/sf
$(MKDIRRANGE) $(TEMP_DIR)/sf 0 3 0 244
#
mkdir $(TEMP_DIR)/block
setfattr -n user.pew_attr_pew -v pew_value_pew $(TEMP_DIR)/block
$(MKDIRRANGE) $(TEMP_DIR)/block 0 5 234 10
#
mkdir $(TEMP_DIR)/leaf
setfattr -n user.pew_attr_pew -v pew_value_pew $(TEMP_DIR)/leaf
$(MKDIRRANGE) $(TEMP_DIR)/leaf 0 40 214 30
#
mkdir $(TEMP_DIR)/node
setfattr -n user.pew_attr_pew -v pew_value_pew $(TEMP_DIR)/node
$(MKDIRRANGE) $(TEMP_DIR)/node 0 1020 0 23
#
mkdir $(TEMP_DIR)/btree_leaf
setfattr -n user.pew_attr_pew -v pew_value_pew $(TEMP_DIR)/btree_leaf
$(MKDIRRANGE) $(TEMP_DIR)/btree_leaf 0 1000 201 43
#
mkdir $(TEMP_DIR)/btree_leaf_free
setfattr -n user.pew_attr_pew -v pew_value_pew $(TEMP_DIR)/btree_leaf_free
$(MKDIRRANGE) $(TEMP_DIR)/btree_leaf_free 0 1200 201 43
#
sudo umount $(TEMP_DIR)
fallocate -i -o 0 -l 1MiB $@
parted --script $@ mktable gpt
parted --script --align optimal $@ mkpart primary 1MiB 100%
xfs_v4_unicode.img:
fallocate -l 63MiB $@
sudo mkfs.xfs -m crc=0,finobt=0,rmapbt=0,reflink=0 $@
sudo mount $(MOUNT_OPT) $@ $(TEMP_DIR)
sudo chown $$USER $(TEMP_DIR) -R
#
mkdir -p $(TEMP_DIR)/dir0
mkdir -p $(TEMP_DIR)/дир❦/дир11
mkdir -p $(TEMP_DIR)/❦❦❦/д❦р22
mkdir $(TEMP_DIR)/дир3/
#
echo hello_world > $(TEMP_DIR)/dir0/file00
echo привет❦мир > $(TEMP_DIR)/❦❦❦/д❦р22/❦❦
echo привет💗мир > $(TEMP_DIR)/❦❦❦/д❦р22/💗💗
echo привет❦💗мир > $(TEMP_DIR)/дир3/файл33
#
sudo umount $(TEMP_DIR)
fallocate -i -o 0 -l 1MiB $@
parted --script $@ mktable gpt
parted --script --align optimal $@ mkpart primary 1MiB 100%

228
kofu.c
View File

@ -22,6 +22,8 @@
#define MAX_DIRENTS_TO_READ 100
#define MAX_BYTES_TO_READ (16*1024)
#define DEFAULT_PATH_ENCODING UTF8
char cur_dir[PATH_MAX] = "/";
const char *last_dir = cur_dir;
bool cur_dir_changed = true;
@ -45,22 +47,22 @@ const char *f70_status_name[] = {
"out_of_memory"
};
const char *get_f70_status_name(f70status s) {
const char *get_f70_status_name(f70status_t s) {
switch (s) {
case F70_ERROR_SUCCESS:
case ERROR_SUCCESS:
// return "";
case F70_ERROR_DISK_BASE:
case F70_ERROR_UNSUPPORTED_FS:
case F70_ERROR_UNKNOWN_FS:
case F70_ERROR_PARTITION:
case F70_ERROR_FILE_NOT_FOUND:
case F70_ERROR_END_OF_FILE:
case F70_ERROR_MEMORY_POINTER:
case F70_ERROR_DISK_FULL:
case F70_ERROR_FS_FAIL:
case F70_ERROR_ACCESS_DENIED:
case F70_ERROR_DEVICE:
case F70_ERROR_OUT_OF_MEMORY:
case ERROR_DISK_BASE:
case ERROR_UNSUPPORTED_FS:
case ERROR_UNKNOWN_FS:
case ERROR_PARTITION:
case ERROR_FILE_NOT_FOUND:
case ERROR_END_OF_FILE:
case ERROR_MEMORY_POINTER:
case ERROR_DISK_FULL:
case ERROR_FS_FAIL:
case ERROR_ACCESS_DENIED:
case ERROR_DEVICE:
case ERROR_OUT_OF_MEMORY:
return f70_status_name[s];
default:
return "unknown";
@ -76,9 +78,9 @@ void convert_f70_file_attr(uint32_t attr, char s[KF_ATTR_CNT+1]) {
s[5] = '\0';
}
void print_f70_status(f70ret_t *r, int use_ebx) {
void print_f70_status(f7080ret_t *r, int use_ebx) {
printf("status = %d %s", r->status, get_f70_status_name(r->status));
if (use_ebx && (r->status == F70_ERROR_SUCCESS || r->status == F70_ERROR_END_OF_FILE))
if (use_ebx && (r->status == ERROR_SUCCESS || r->status == ERROR_END_OF_FILE))
printf(", count = %d", r->count);
putchar('\n');
}
@ -198,93 +200,122 @@ void kofu_cd(int argc, const char **argv) {
cur_dir_changed = true;
}
void ls_range(f70s1arg_t *f70) {
f70ret_t r;
uint32_t requested = f70->size;
if (f70->size > MAX_DIRENTS_TO_READ) {
f70->size = MAX_DIRENTS_TO_READ;
void ls_range(f7080s1arg_t *fX0, f70or80_t f70or80) {
f7080ret_t r;
size_t bdfe_len = (fX0->encoding == CP866) ? BDFE_LEN_CP866 : BDFE_LEN_UNICODE;
uint32_t requested = fX0->size;
if (fX0->size > MAX_DIRENTS_TO_READ) {
fX0->size = MAX_DIRENTS_TO_READ;
}
for (; requested; requested -= f70->size) {
if (f70->size > requested) {
f70->size = requested;
for (; requested; requested -= fX0->size) {
if (fX0->size > requested) {
fX0->size = requested;
}
kos_lfn(f70, &r);
f70->offset += f70->size;
kos_lfn(fX0, &r, f70or80);
fX0->offset += fX0->size;
print_f70_status(&r, 1);
f70s1info_t *dir = f70->buf;
int ok = (r.count <= f70->size);
f7080s1info_t *dir = fX0->buf;
int ok = (r.count <= fX0->size);
ok &= (dir->cnt == r.count);
ok &= (r.status == F70_ERROR_SUCCESS && r.count == f70->size)
|| (r.status == F70_ERROR_END_OF_FILE && r.count < f70->size);
ok &= (r.status == ERROR_SUCCESS && r.count == fX0->size)
|| (r.status == ERROR_END_OF_FILE && r.count < fX0->size);
assert(ok);
if (!ok)
break;
bdfe_t *bdfe = dir->bdfes;
for (size_t i = 0; i < dir->cnt; i++) {
char fattr[KF_ATTR_CNT+1];
convert_f70_file_attr(dir->bdfes[i].attr, fattr);
printf("%s %s\n", fattr, dir->bdfes[i].name);
convert_f70_file_attr(bdfe->attr, fattr);
printf("%s %s\n", fattr, bdfe->name);
bdfe = (bdfe_t*)((uintptr_t)bdfe + bdfe_len);
}
if (r.status == F70_ERROR_END_OF_FILE) {
if (r.status == ERROR_END_OF_FILE) {
break;
}
}
}
void ls_all(f70s1arg_t *f70) {
f70ret_t r;
void ls_all(f7080s1arg_t *fX0, f70or80_t f70or80) {
f7080ret_t r;
size_t bdfe_len = (fX0->encoding == CP866) ? BDFE_LEN_CP866 : BDFE_LEN_UNICODE;
while (true) {
kos_lfn(f70, &r);
kos_lfn(fX0, &r, f70or80);
print_f70_status(&r, 1);
assert((r.status == F70_ERROR_SUCCESS && r.count == f70->size)
|| (r.status == F70_ERROR_END_OF_FILE && r.count < f70->size));
f70s1info_t *dir = f70->buf;
f70->offset += dir->cnt;
int ok = (r.count <= f70->size);
assert((r.status == ERROR_SUCCESS && r.count == fX0->size)
|| (r.status == ERROR_END_OF_FILE && r.count < fX0->size));
f7080s1info_t *dir = fX0->buf;
fX0->offset += dir->cnt;
int ok = (r.count <= fX0->size);
ok &= (dir->cnt == r.count);
ok &= (r.status == F70_ERROR_SUCCESS && r.count == f70->size)
|| (r.status == F70_ERROR_END_OF_FILE && r.count < f70->size);
ok &= (r.status == ERROR_SUCCESS && r.count == fX0->size)
|| (r.status == ERROR_END_OF_FILE && r.count < fX0->size);
assert(ok);
if (!ok)
break;
printf("total = %"PRIi32"\n", dir->total_cnt);
bdfe_t *bdfe = dir->bdfes;
for (size_t i = 0; i < dir->cnt; i++) {
char fattr[KF_ATTR_CNT+1];
convert_f70_file_attr(dir->bdfes[i].attr, fattr);
printf("%s %s\n", fattr, dir->bdfes[i].name);
convert_f70_file_attr(bdfe->attr, fattr);
printf("%s %s\n", fattr, bdfe->name);
bdfe = (bdfe_t*)((uintptr_t)bdfe + bdfe_len);
}
if (r.status == F70_ERROR_END_OF_FILE) {
if (r.status == ERROR_END_OF_FILE) {
break;
}
}
}
void kofu_ls(int argc, const char **argv) {
void kofu_ls(int argc, const char **argv, f70or80_t f70or80) {
(void)argc;
f70s1info_t *dir = (f70s1info_t*)malloc(sizeof(f70s1info_t) + sizeof(bdfe_t) * MAX_DIRENTS_TO_READ);
f70s1arg_t f70 = {1, 0, CP866, MAX_DIRENTS_TO_READ, dir, 0, argv[1]};
if (argv[2]) {
sscanf(argv[2], "%"SCNu32, &f70.size);
if (argv[3]) {
sscanf(argv[3], "%"SCNu32, &f70.offset);
}
ls_range(&f70);
uint32_t encoding = UTF8;
size_t bdfe_len = (encoding == CP866) ? BDFE_LEN_CP866 : BDFE_LEN_UNICODE;
f7080s1info_t *dir = (f7080s1info_t*)malloc(sizeof(f7080s1info_t) + bdfe_len * MAX_DIRENTS_TO_READ);
f7080s1arg_t fX0 = {.sf = 1, .offset = 0, .encoding = encoding, .size = MAX_DIRENTS_TO_READ, .buf = dir};
if (f70or80 == F70) {
fX0.u.f70.zero = 0;
fX0.u.f70.path = argv[1];
} else {
ls_all(&f70);
fX0.u.f80.path_encoding = DEFAULT_PATH_ENCODING;
fX0.u.f80.path = argv[1];
}
if (argv[2]) {
sscanf(argv[2], "%"SCNu32, &fX0.size);
if (argv[3]) {
sscanf(argv[3], "%"SCNu32, &fX0.offset);
}
ls_range(&fX0, f70or80);
} else {
ls_all(&fX0, f70or80);
}
free(dir);
return;
}
void kofu_stat(int argc, const char **argv) {
void kofu_ls70(int argc, const char **argv) {
kofu_ls(argc, argv, F70);
}
void kofu_ls80(int argc, const char **argv) {
kofu_ls(argc, argv, F80);
}
void kofu_stat(int argc, const char **argv, f70or80_t f70or80) {
(void)argc;
f70s5arg_t f70 = {.sf = 5, .flags = 0, .zero = 0};
f70ret_t r;
f7080s5arg_t fX0 = {.sf = 5, .flags = 0};
f7080ret_t r;
bdfe_t file;
f70.buf = &file;
f70.path = argv[1];
kos_lfn(&f70, &r);
fX0.buf = &file;
if (f70or80 == F70) {
fX0.u.f70.zero = 0;
fX0.u.f70.path = argv[1];
} else {
fX0.u.f80.path_encoding = DEFAULT_PATH_ENCODING;
fX0.u.f80.path = argv[1];
}
kos_lfn(&fX0, &r, f70or80);
print_f70_status(&r, 0);
if (r.status != F70_ERROR_SUCCESS)
if (r.status != ERROR_SUCCESS)
return;
char fattr[KF_ATTR_CNT+1];
convert_f70_file_attr(file.attr, fattr);
@ -315,50 +346,74 @@ void kofu_stat(int argc, const char **argv) {
return;
}
void kofu_read(int argc, const char **argv) {
void kofu_stat70(int argc, const char **argv) {
kofu_stat(argc, argv, F70);
}
void kofu_stat80(int argc, const char **argv) {
kofu_stat(argc, argv, F80);
}
void kofu_read(int argc, const char **argv, f70or80_t f70or80) {
(void)argc;
f70s0arg_t f70 = {.sf = 0, .zero = 0};
f70ret_t r;
f7080s0arg_t fX0 = {.sf = 0};
f7080ret_t r;
bool dump_bytes = false, dump_hash = false;
if (argc < 4) {
printf("usage: %s <offset> <length> [-b] [-h]\n", argv[0]);
printf("usage: %s <offset> <length> [-b] [-h] [-e cp866|utf8|utf16]\n", argv[0]);
return;
}
int opt = 1;
f70.path = argv[opt++];
if ((opt >= argc) || !parse_uint64(argv[opt++], &f70.offset))
if (f70or80 == F70) {
fX0.u.f70.zero = 0;
fX0.u.f70.path = argv[opt++];
} else {
fX0.u.f80.path_encoding = DEFAULT_PATH_ENCODING;
fX0.u.f80.path = argv[opt++];
}
if ((opt >= argc) || !parse_uint64(argv[opt++], &fX0.offset))
return;
if ((opt >= argc) || !parse_uint32(argv[opt++], &f70.count))
if ((opt >= argc) || !parse_uint32(argv[opt++], &fX0.count))
return;
for (; opt < argc; opt++) {
if (!strcmp(argv[opt], "-b")) {
dump_bytes = true;
} else if (!strcmp(argv[opt], "-h")) {
dump_hash = true;
} else if (!strcmp(argv[opt], "-e")) {
if (f70or80 == F70) {
printf("f70 doesn't accept encoding parameter, use f80\n");
return;
}
} else {
printf("invalid option: '%s'\n", argv[opt]);
return;
}
}
f70.buf = (uint8_t*)malloc(f70.count);
fX0.buf = (uint8_t*)malloc(fX0.count);
kos_lfn(&f70, &r);
assert(r.count <= f70.count);
assert((r.count == f70.count && r.status == F70_ERROR_SUCCESS) ||
(r.count < f70.count && r.status == F70_ERROR_END_OF_FILE)
);
kos_lfn(&fX0, &r, f70or80);
print_f70_status(&r, 1);
if (dump_bytes)
print_bytes(f70.buf, r.count);
if (dump_hash)
print_hash(f70.buf, r.count);
if (r.status == ERROR_SUCCESS || r.status == ERROR_END_OF_FILE) {
if (dump_bytes)
print_bytes(fX0.buf, r.count);
if (dump_hash)
print_hash(fX0.buf, r.count);
}
free(f70.buf);
free(fX0.buf);
return;
}
void kofu_read70(int argc, const char **argv) {
kofu_read(argc, argv, F70);
}
void kofu_read80(int argc, const char **argv) {
kofu_read(argc, argv, F80);
}
typedef struct {
char *name;
void (*func) (int, const char **);
@ -367,9 +422,12 @@ typedef struct {
func_table_t funcs[] = {
{ "disk_add", kofu_disk_add },
{ "disk_del", kofu_disk_del },
{ "ls", kofu_ls },
{ "stat", kofu_stat },
{ "read", kofu_read },
{ "ls70", kofu_ls70 },
{ "ls80", kofu_ls80 },
{ "stat70", kofu_stat70 },
{ "stat80", kofu_stat80 },
{ "read70", kofu_read70 },
{ "read80", kofu_read80 },
{ "pwd", kofu_pwd },
{ "cd", kofu_cd },
{ NULL, NULL },

View File

@ -63,9 +63,9 @@ static int kofuse_getattr(const char *path, struct stat *stbuf,
bdfe_t file;
f70s5arg_t f70 = {.sf = 5, .flags = 0, .buf = &file, .zero = 0, .path = path};
f70ret_t r;
kos_lfn(&f70, &r);
f7080s5arg_t fX0 = {.sf = 5, .flags = 0, .buf = &file, .u = {.f80 = {.path_encoding = UTF8, .path = path}}};
f7080ret_t r;
kos_lfn(&fX0, &r, F80);
bdfe_to_stat(&file, stbuf);
// res = -ENOENT;
@ -79,12 +79,14 @@ static int kofuse_readdir(const char *path, void *buf, fuse_fill_dir_t filler,
(void) fi;
(void) flags;
f70s1info_t *dir = (f70s1info_t*)malloc(sizeof(f70s1info_t) + sizeof(bdfe_t) * DIRENTS_TO_READ);
f70s1arg_t f70 = {1, 0, CP866, DIRENTS_TO_READ, dir, 0, path};
f70ret_t r;
kos_lfn(&f70, &r);
f7080s1info_t *dir = (f7080s1info_t*)malloc(sizeof(f7080s1info_t) + BDFE_LEN_UNICODE * DIRENTS_TO_READ);
f7080s1arg_t fX0 = {.sf = 1, .offset = 0, .encoding = UTF8, .size = DIRENTS_TO_READ, .buf = dir, .u = {.f80 = {.path_encoding = UTF8, .path = path}}};
f7080ret_t r;
kos_lfn(&fX0, &r, F80);
bdfe_t *bdfe = dir->bdfes;
for (size_t i = 0; i < dir->cnt; i++) {
filler(buf, dir->bdfes[i].name, NULL, 0, 0);
filler(buf, bdfe->name, NULL, 0, 0);
bdfe = (bdfe_t*)((uintptr_t)bdfe + BDFE_LEN_UNICODE);
}
free(dir);
return 0;
@ -105,9 +107,9 @@ static int kofuse_read(const char *path, char *buf, size_t size, off_t offset,
struct fuse_file_info *fi) {
(void) fi;
f70s0arg_t f70 = {.sf = 0, .offset = offset, .count = size, .buf = buf, .zero = 0, .path = path};
f70ret_t r;
kos_lfn(&f70, &r);
f7080s0arg_t fX0 = {.sf = 0, .offset = offset, .count = size, .buf = buf, .u = {.f80 = {.path_encoding = UTF8, .path = path}}};
f7080ret_t r;
kos_lfn(&fX0, &r, F80);
return size;
}

View File

@ -201,13 +201,20 @@ endp
public kos_lfn
proc kos_lfn c uses ebx edx esi edi ebp, _f70arg, _f70ret
proc kos_lfn c uses ebx edx esi edi ebp, _f7080arg, _f7080ret, _f70or80
push ebx
mov ebx, [_f70arg]
mov ebx, [_f7080arg]
pushad ; file_system_lfn writes here
cmp [_f70or80], 80
jz .f80
.f70:
call file_system_lfn
jmp .done
.f80:
call fileSystemUnicode
.done:
popad
mov ecx, [_f70ret]
mov ecx, [_f7080ret]
mov [ecx+0], eax ; status
mov [ecx+4], ebx ; count
pop ebx

View File

@ -4,6 +4,9 @@
#include <stdint.h>
#include <stddef.h>
#define BDFE_LEN_CP866 304
#define BDFE_LEN_UNICODE 560
enum {
DEFAULT,
CP866,
@ -12,20 +15,25 @@ enum {
};
typedef enum {
F70_ERROR_SUCCESS,
F70_ERROR_DISK_BASE,
F70_ERROR_UNSUPPORTED_FS,
F70_ERROR_UNKNOWN_FS,
F70_ERROR_PARTITION,
F70_ERROR_FILE_NOT_FOUND,
F70_ERROR_END_OF_FILE,
F70_ERROR_MEMORY_POINTER,
F70_ERROR_DISK_FULL,
F70_ERROR_FS_FAIL,
F70_ERROR_ACCESS_DENIED,
F70_ERROR_DEVICE,
F70_ERROR_OUT_OF_MEMORY,
} f70status;
F70 = 70,
F80 = 80,
} f70or80_t;
typedef enum {
ERROR_SUCCESS,
ERROR_DISK_BASE,
ERROR_UNSUPPORTED_FS,
ERROR_UNKNOWN_FS,
ERROR_PARTITION,
ERROR_FILE_NOT_FOUND,
ERROR_END_OF_FILE,
ERROR_MEMORY_POINTER,
ERROR_DISK_FULL,
ERROR_FS_FAIL,
ERROR_ACCESS_DENIED,
ERROR_DEVICE,
ERROR_OUT_OF_MEMORY,
} f70status_t;
typedef struct {
uint32_t attr;
@ -37,22 +45,30 @@ typedef struct {
uint32_t mtime;
uint32_t mdate;
uint64_t size;
char name[264];
char name[0];
} bdfe_t;
typedef struct {
uint32_t status;
uint32_t count;
} f70ret_t;
} f7080ret_t;
typedef struct {
uint32_t sf;
uint64_t offset;
uint32_t count;
void *buf;
uint8_t zero;
const char *path;
} __attribute__((packed)) f70s0arg_t;
union {
struct {
uint8_t zero;
const char *path;
} __attribute__((packed)) f70;
struct {
uint32_t path_encoding;
const char *path;
} f80;
} u;
} __attribute__((packed)) f7080s0arg_t;
typedef struct {
uint32_t sf;
@ -60,9 +76,17 @@ typedef struct {
uint32_t encoding;
uint32_t size;
void *buf;
uint8_t zero;
const char *path;
} __attribute__((packed)) f70s1arg_t;
union {
struct {
uint8_t zero;
const char *path;
} __attribute__((packed)) f70;
struct {
uint32_t path_encoding;
const char *path;
} f80;
} u;
} __attribute__((packed)) f7080s1arg_t;
typedef struct {
uint32_t version;
@ -70,7 +94,7 @@ typedef struct {
uint32_t total_cnt;
uint32_t zeroed[5];
bdfe_t bdfes[0];
} f70s1info_t;
} f7080s1info_t;
typedef struct {
uint32_t sf;
@ -78,9 +102,17 @@ typedef struct {
uint32_t flags;
uint32_t reserved2;
void *buf;
uint8_t zero;
const char *path;
} __attribute__((packed)) f70s5arg_t;
union {
struct {
uint8_t zero;
const char *path;
} __attribute__((packed)) f70;
struct {
uint32_t path_encoding;
const char *path;
} f80;
} u;
} __attribute__((packed)) f7080s5arg_t;
#define KF_READONLY 0x01
#define KF_HIDDEN 0x02
@ -97,15 +129,12 @@ typedef struct {
uint32_t kos_time_to_epoch(uint32_t *time);
void kos_init(void);
void kos_lfn(void *f70sXarg, f70ret_t *r);
void kos_lfn(void *f7080sXarg, f7080ret_t *r, f70or80_t f70or80);
void *kos_disk_add(const char *file_name, const char *disk_name);
int kos_disk_del(const char *name);
uint32_t kos_getcwd(char *buf, uint32_t len);
void kos_cd(const char *buf);
//void hash_init(void *ctx);
//void hash_update(void *ctx, void *data, size_t len);
//void hash_final(void *ctx);
void hash_oneshot(void *ctx, void *data, size_t len);
void set_eflags_tf(int x);

View File

@ -1,11 +1,11 @@
/> disk_add ../img/xfs_v4_ftype1_s05k_b2k_n8k.img hd0
/hd0/1: xfs
/> ls /hd0/1/sf_empty
/> ls70 /hd0/1/sf_empty
status = 6 end_of_file, count = 2
total = 2
----f .
----f ..
/> ls /hd0/1/sf
/> ls70 /hd0/1/sf
status = 6 end_of_file, count = 5
total = 5
----f .
@ -13,7 +13,7 @@ total = 5
----f d0000000000_
----f d0000000001_x
----f d0000000002_xx
/> ls /hd0/1/block
/> ls70 /hd0/1/block
status = 6 end_of_file, count = 7
total = 7
----f .
@ -23,7 +23,7 @@ total = 7
----f d0000000002_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
----f d0000000003_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
----f d0000000004_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
/> ls /hd0/1/leaf
/> ls70 /hd0/1/leaf
status = 6 end_of_file, count = 42
total = 42
----f .
@ -68,7 +68,7 @@ total = 42
----f d0000000037_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
----f d0000000038_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
----f d0000000039_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
/> ls /hd0/1/node
/> ls70 /hd0/1/node
status = 0 success, count = 100
total = 1102
----f .
@ -1195,7 +1195,7 @@ status = 6 end_of_file, count = 2
total = 1102
----f d0000001098_xxxxxxxxxxxxxxxxx
----f d0000001099_xxxxxxxxxxxxxxxxxx
/> ls /hd0/1/btree_leaf
/> ls70 /hd0/1/btree_leaf
status = 0 success, count = 100
total = 1002
----f .
@ -2220,7 +2220,7 @@ status = 6 end_of_file, count = 2
total = 1002
----f d0000000998_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
----f d0000000999_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
/> ls /hd0/1/btree_leaf_free
/> ls70 /hd0/1/btree_leaf_free
status = 0 success, count = 100
total = 1202
----f .

View File

@ -1,9 +1,9 @@
disk_add ../img/xfs_v4_ftype1_s05k_b2k_n8k.img hd0
ls /hd0/1/sf_empty
ls /hd0/1/sf
ls /hd0/1/block
ls /hd0/1/leaf
ls /hd0/1/node
ls /hd0/1/btree_leaf
ls /hd0/1/btree_leaf_free
ls70 /hd0/1/sf_empty
ls70 /hd0/1/sf
ls70 /hd0/1/block
ls70 /hd0/1/leaf
ls70 /hd0/1/node
ls70 /hd0/1/btree_leaf
ls70 /hd0/1/btree_leaf_free
disk_del hd0

View File

@ -1,11 +1,11 @@
/> disk_add ../img/xfs_v4_ftype0_s05k_b2k_n8k.img hd0
/hd0/1: xfs
/> ls /hd0/1/sf_empty
/> ls70 /hd0/1/sf_empty
status = 6 end_of_file, count = 2
total = 2
----f .
----f ..
/> ls /hd0/1/sf
/> ls70 /hd0/1/sf
status = 6 end_of_file, count = 5
total = 5
----f .
@ -13,7 +13,7 @@ total = 5
----f d0000000000_
----f d0000000001_x
----f d0000000002_xx
/> ls /hd0/1/block
/> ls70 /hd0/1/block
status = 6 end_of_file, count = 7
total = 7
----f .
@ -23,7 +23,7 @@ total = 7
----f d0000000002_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
----f d0000000003_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
----f d0000000004_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
/> ls /hd0/1/leaf
/> ls70 /hd0/1/leaf
status = 6 end_of_file, count = 42
total = 42
----f .
@ -68,7 +68,7 @@ total = 42
----f d0000000037_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
----f d0000000038_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
----f d0000000039_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
/> ls /hd0/1/node
/> ls70 /hd0/1/node
status = 0 success, count = 100
total = 1102
----f .
@ -1195,7 +1195,7 @@ status = 6 end_of_file, count = 2
total = 1102
----f d0000001098_xxxxxxxxxxxxxxxxx
----f d0000001099_xxxxxxxxxxxxxxxxxx
/> ls /hd0/1/btree_leaf
/> ls70 /hd0/1/btree_leaf
status = 0 success, count = 100
total = 1002
----f .
@ -2220,7 +2220,7 @@ status = 6 end_of_file, count = 2
total = 1002
----f d0000000998_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
----f d0000000999_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
/> ls /hd0/1/btree_leaf_free
/> ls70 /hd0/1/btree_leaf_free
status = 0 success, count = 100
total = 1202
----f .
@ -3449,7 +3449,7 @@ status = 6 end_of_file, count = 2
total = 1202
----f d0000001198_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
----f d0000001199_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
/> ls /hd0/1/sf/.
/> ls70 /hd0/1/sf/.
status = 6 end_of_file, count = 5
total = 5
----f .
@ -3457,7 +3457,7 @@ total = 5
----f d0000000000_
----f d0000000001_x
----f d0000000002_xx
/> ls /hd0/1/sf/..
/> ls70 /hd0/1/sf/..
status = 6 end_of_file, count = 9
total = 9
----f .

View File

@ -1,11 +1,11 @@
disk_add ../img/xfs_v4_ftype0_s05k_b2k_n8k.img hd0
ls /hd0/1/sf_empty
ls /hd0/1/sf
ls /hd0/1/block
ls /hd0/1/leaf
ls /hd0/1/node
ls /hd0/1/btree_leaf
ls /hd0/1/btree_leaf_free
ls /hd0/1/sf/.
ls /hd0/1/sf/..
ls70 /hd0/1/sf_empty
ls70 /hd0/1/sf
ls70 /hd0/1/block
ls70 /hd0/1/leaf
ls70 /hd0/1/node
ls70 /hd0/1/btree_leaf
ls70 /hd0/1/btree_leaf_free
ls70 /hd0/1/sf/.
ls70 /hd0/1/sf/..
disk_del hd0

View File

@ -1,211 +1,211 @@
/> disk_add ../img/xfs_v4_files_s05k_b4k_n8k.img hd0
/hd0/1: xfs
# zero length
/> read /hd0/1/no_hole 0 0 -b
/> read70 /hd0/1/no_hole 0 0 -b
status = 0 success, count = 0
/> read /hd0/1/no_hole 1 0 -b
/> read70 /hd0/1/no_hole 1 0 -b
status = 0 success, count = 0
/> read /hd0/1/no_hole 0xffe 0 -b
/> read70 /hd0/1/no_hole 0xffe 0 -b
status = 0 success, count = 0
/> read /hd0/1/no_hole 0xfff 0 -b
/> read70 /hd0/1/no_hole 0xfff 0 -b
status = 0 success, count = 0
/> read /hd0/1/no_hole 0x1000 0 -b
/> read70 /hd0/1/no_hole 0x1000 0 -b
status = 0 success, count = 0
/> read /hd0/1/no_hole 0x1001 0 -b
/> read70 /hd0/1/no_hole 0x1001 0 -b
status = 0 success, count = 0
/> read /hd0/1/no_hole 0x1ffe 0 -b
/> read70 /hd0/1/no_hole 0x1ffe 0 -b
status = 0 success, count = 0
/> read /hd0/1/no_hole 0x1fff 0 -b
/> read70 /hd0/1/no_hole 0x1fff 0 -b
status = 0 success, count = 0
/> read /hd0/1/no_hole 0x2000 0 -b
/> read70 /hd0/1/no_hole 0x2000 0 -b
status = 0 success, count = 0
/> read /hd0/1/no_hole 0xfffe 0 -b
/> read70 /hd0/1/no_hole 0xfffe 0 -b
status = 0 success, count = 0
/> read /hd0/1/no_hole 0xffff 0 -b
/> read70 /hd0/1/no_hole 0xffff 0 -b
status = 0 success, count = 0
/> read /hd0/1/no_hole 0x10000 0 -b
/> read70 /hd0/1/no_hole 0x10000 0 -b
status = 0 success, count = 0
/> read /hd0/1/no_hole 0x10001 0 -b
/> read70 /hd0/1/no_hole 0x10001 0 -b
status = 0 success, count = 0
/> read /hd0/1/no_hole 0x1ffff 0 -b
/> read70 /hd0/1/no_hole 0x1ffff 0 -b
status = 0 success, count = 0
/> read /hd0/1/no_hole 0x10000000 0 -b
/> read70 /hd0/1/no_hole 0x10000000 0 -b
status = 0 success, count = 0
/> read /hd0/1/no_hole 0x1000ffff 0 -b
/> read70 /hd0/1/no_hole 0x1000ffff 0 -b
status = 0 success, count = 0
/> read /hd0/1/no_hole 0xffff0000 0 -b
/> read70 /hd0/1/no_hole 0xffff0000 0 -b
status = 0 success, count = 0
/> read /hd0/1/no_hole 0xffff0001 0 -b
/> read70 /hd0/1/no_hole 0xffff0001 0 -b
status = 0 success, count = 0
/> read /hd0/1/no_hole 0xffffffff 0 -b
/> read70 /hd0/1/no_hole 0xffffffff 0 -b
status = 0 success, count = 0
/> read /hd0/1/no_hole 0x100000000 0 -b
/> read70 /hd0/1/no_hole 0x100000000 0 -b
status = 0 success, count = 0
/> read /hd0/1/no_hole 0x100000001 0 -b
/> read70 /hd0/1/no_hole 0x100000001 0 -b
status = 0 success, count = 0
/> read /hd0/1/no_hole 0x1ffffffff 0 -b
/> read70 /hd0/1/no_hole 0x1ffffffff 0 -b
status = 0 success, count = 0
/> read /hd0/1/no_hole 0xffffffff00000000 0 -b
/> read70 /hd0/1/no_hole 0xffffffff00000000 0 -b
status = 0 success, count = 0
/> read /hd0/1/no_hole 0xffffffffffffffff 0 -b
/> read70 /hd0/1/no_hole 0xffffffffffffffff 0 -b
status = 0 success, count = 0
# one-byte length
/> read /hd0/1/no_hole 0 1 -b
/> read70 /hd0/1/no_hole 0 1 -b
status = 0 success, count = 1
00
/> read /hd0/1/no_hole 1 1 -b
/> read70 /hd0/1/no_hole 1 1 -b
status = 0 success, count = 1
01
/> read /hd0/1/no_hole 0xffe 1 -b
/> read70 /hd0/1/no_hole 0xffe 1 -b
status = 0 success, count = 1
fe
/> read /hd0/1/no_hole 0xfff 1 -b
/> read70 /hd0/1/no_hole 0xfff 1 -b
status = 0 success, count = 1
0f
/> read /hd0/1/no_hole 0x1000 1 -b
/> read70 /hd0/1/no_hole 0x1000 1 -b
status = 0 success, count = 1
00
/> read /hd0/1/no_hole 0x1001 1 -b
/> read70 /hd0/1/no_hole 0x1001 1 -b
status = 0 success, count = 1
10
/> read /hd0/1/no_hole 0x1ffe 1 -b
/> read70 /hd0/1/no_hole 0x1ffe 1 -b
status = 0 success, count = 1
fe
/> read /hd0/1/no_hole 0x1fff 1 -b
/> read70 /hd0/1/no_hole 0x1fff 1 -b
status = 0 success, count = 1
1f
/> read /hd0/1/no_hole 0x2000 1 -b
/> read70 /hd0/1/no_hole 0x2000 1 -b
status = 0 success, count = 1
00
/> read /hd0/1/no_hole 0xfffe 1 -b
/> read70 /hd0/1/no_hole 0xfffe 1 -b
status = 0 success, count = 1
fe
/> read /hd0/1/no_hole 0xffff 1 -b
/> read70 /hd0/1/no_hole 0xffff 1 -b
status = 0 success, count = 1
ff
/> read /hd0/1/no_hole 0x10000 1 -b
/> read70 /hd0/1/no_hole 0x10000 1 -b
status = 6 end_of_file, count = 0
/> read /hd0/1/no_hole 0x10001 1 -b
/> read70 /hd0/1/no_hole 0x10001 1 -b
status = 6 end_of_file, count = 0
/> read /hd0/1/no_hole 0x1ffff 1 -b
/> read70 /hd0/1/no_hole 0x1ffff 1 -b
status = 6 end_of_file, count = 0
/> read /hd0/1/no_hole 0x10000000 1 -b
/> read70 /hd0/1/no_hole 0x10000000 1 -b
status = 6 end_of_file, count = 0
/> read /hd0/1/no_hole 0x1000ffff 1 -b
/> read70 /hd0/1/no_hole 0x1000ffff 1 -b
status = 6 end_of_file, count = 0
/> read /hd0/1/no_hole 0xffff0000 1 -b
/> read70 /hd0/1/no_hole 0xffff0000 1 -b
status = 6 end_of_file, count = 0
/> read /hd0/1/no_hole 0xffff0001 1 -b
/> read70 /hd0/1/no_hole 0xffff0001 1 -b
status = 6 end_of_file, count = 0
/> read /hd0/1/no_hole 0xffffffff 1 -b
/> read70 /hd0/1/no_hole 0xffffffff 1 -b
status = 6 end_of_file, count = 0
/> read /hd0/1/no_hole 0x100000000 1 -b
/> read70 /hd0/1/no_hole 0x100000000 1 -b
status = 6 end_of_file, count = 0
/> read /hd0/1/no_hole 0x100000001 1 -b
/> read70 /hd0/1/no_hole 0x100000001 1 -b
status = 6 end_of_file, count = 0
/> read /hd0/1/no_hole 0x1ffffffff 1 -b
/> read70 /hd0/1/no_hole 0x1ffffffff 1 -b
status = 6 end_of_file, count = 0
/> read /hd0/1/no_hole 0xffffffff00000000 1 -b
/> read70 /hd0/1/no_hole 0xffffffff00000000 1 -b
status = 6 end_of_file, count = 0
/> read /hd0/1/no_hole 0xffffffffffffffff 1 -b
/> read70 /hd0/1/no_hole 0xffffffffffffffff 1 -b
status = 6 end_of_file, count = 0
# fixed-size block, different begin/end positions
/> read /hd0/1/no_hole 0 11 -b
/> read70 /hd0/1/no_hole 0 11 -b
status = 0 success, count = 11
000102030405060708090a
/> read /hd0/1/no_hole 1 11 -b
/> read70 /hd0/1/no_hole 1 11 -b
status = 0 success, count = 11
0102030405060708090a0b
/> read /hd0/1/no_hole 0xfff4 11 -b
/> read70 /hd0/1/no_hole 0xfff4 11 -b
status = 0 success, count = 11
f4fff6fff8fffafffcfffe
/> read /hd0/1/no_hole 0xfff5 11 -b
/> read70 /hd0/1/no_hole 0xfff5 11 -b
status = 0 success, count = 11
fff6fff8fffafffcfffeff
/> read /hd0/1/no_hole 0xfff6 11 -b
/> read70 /hd0/1/no_hole 0xfff6 11 -b
status = 6 end_of_file, count = 10
f6fff8fffafffcfffeff
/> read /hd0/1/no_hole 0xfffe 11 -b
/> read70 /hd0/1/no_hole 0xfffe 11 -b
status = 6 end_of_file, count = 2
feff
/> read /hd0/1/no_hole 0xffff 11 -b
/> read70 /hd0/1/no_hole 0xffff 11 -b
status = 6 end_of_file, count = 1
ff
/> read /hd0/1/no_hole 0x10000 11 -b
/> read70 /hd0/1/no_hole 0x10000 11 -b
status = 6 end_of_file, count = 0
/> read /hd0/1/no_hole 0x10001 11 -b
/> read70 /hd0/1/no_hole 0x10001 11 -b
status = 6 end_of_file, count = 0
/> read /hd0/1/no_hole 0x10000000 11 -b
/> read70 /hd0/1/no_hole 0x10000000 11 -b
status = 6 end_of_file, count = 0
/> read /hd0/1/no_hole 0x10000001 11 -b
/> read70 /hd0/1/no_hole 0x10000001 11 -b
status = 6 end_of_file, count = 0
/> read /hd0/1/no_hole 0x1000ffff 11 -b
/> read70 /hd0/1/no_hole 0x1000ffff 11 -b
status = 6 end_of_file, count = 0
/> read /hd0/1/no_hole 0xffff0000 11 -b
/> read70 /hd0/1/no_hole 0xffff0000 11 -b
status = 6 end_of_file, count = 0
/> read /hd0/1/no_hole 0xffffffff 11 -b
/> read70 /hd0/1/no_hole 0xffffffff 11 -b
status = 6 end_of_file, count = 0
/> read /hd0/1/no_hole 0x100000000 11 -b
/> read70 /hd0/1/no_hole 0x100000000 11 -b
status = 6 end_of_file, count = 0
/> read /hd0/1/no_hole 0x100000001 11 -b
/> read70 /hd0/1/no_hole 0x100000001 11 -b
status = 6 end_of_file, count = 0
/> read /hd0/1/no_hole 0x1ffffffff 11 -b
/> read70 /hd0/1/no_hole 0x1ffffffff 11 -b
status = 6 end_of_file, count = 0
/> read /hd0/1/no_hole 0xffffffff00000000 11 -b
/> read70 /hd0/1/no_hole 0xffffffff00000000 11 -b
status = 6 end_of_file, count = 0
/> read /hd0/1/no_hole 0xffffffffffffffff 11 -b
/> read70 /hd0/1/no_hole 0xffffffffffffffff 11 -b
status = 6 end_of_file, count = 0
# btree
/> read /hd0/1/btree_l1_no_hole 0x80000 11 -b
/> read70 /hd0/1/btree_l1_no_hole 0x80000 11 -b
status = 0 success, count = 11
0000080004000800080008

View File

@ -1,74 +1,74 @@
disk_add ../img/xfs_v4_files_s05k_b4k_n8k.img hd0
# zero length
read /hd0/1/no_hole 0 0 -b
read /hd0/1/no_hole 1 0 -b
read /hd0/1/no_hole 0xffe 0 -b
read /hd0/1/no_hole 0xfff 0 -b
read /hd0/1/no_hole 0x1000 0 -b
read /hd0/1/no_hole 0x1001 0 -b
read /hd0/1/no_hole 0x1ffe 0 -b
read /hd0/1/no_hole 0x1fff 0 -b
read /hd0/1/no_hole 0x2000 0 -b
read /hd0/1/no_hole 0xfffe 0 -b
read /hd0/1/no_hole 0xffff 0 -b
read /hd0/1/no_hole 0x10000 0 -b
read /hd0/1/no_hole 0x10001 0 -b
read /hd0/1/no_hole 0x1ffff 0 -b
read /hd0/1/no_hole 0x10000000 0 -b
read /hd0/1/no_hole 0x1000ffff 0 -b
read /hd0/1/no_hole 0xffff0000 0 -b
read /hd0/1/no_hole 0xffff0001 0 -b
read /hd0/1/no_hole 0xffffffff 0 -b
read /hd0/1/no_hole 0x100000000 0 -b
read /hd0/1/no_hole 0x100000001 0 -b
read /hd0/1/no_hole 0x1ffffffff 0 -b
read /hd0/1/no_hole 0xffffffff00000000 0 -b
read /hd0/1/no_hole 0xffffffffffffffff 0 -b
read70 /hd0/1/no_hole 0 0 -b
read70 /hd0/1/no_hole 1 0 -b
read70 /hd0/1/no_hole 0xffe 0 -b
read70 /hd0/1/no_hole 0xfff 0 -b
read70 /hd0/1/no_hole 0x1000 0 -b
read70 /hd0/1/no_hole 0x1001 0 -b
read70 /hd0/1/no_hole 0x1ffe 0 -b
read70 /hd0/1/no_hole 0x1fff 0 -b
read70 /hd0/1/no_hole 0x2000 0 -b
read70 /hd0/1/no_hole 0xfffe 0 -b
read70 /hd0/1/no_hole 0xffff 0 -b
read70 /hd0/1/no_hole 0x10000 0 -b
read70 /hd0/1/no_hole 0x10001 0 -b
read70 /hd0/1/no_hole 0x1ffff 0 -b
read70 /hd0/1/no_hole 0x10000000 0 -b
read70 /hd0/1/no_hole 0x1000ffff 0 -b
read70 /hd0/1/no_hole 0xffff0000 0 -b
read70 /hd0/1/no_hole 0xffff0001 0 -b
read70 /hd0/1/no_hole 0xffffffff 0 -b
read70 /hd0/1/no_hole 0x100000000 0 -b
read70 /hd0/1/no_hole 0x100000001 0 -b
read70 /hd0/1/no_hole 0x1ffffffff 0 -b
read70 /hd0/1/no_hole 0xffffffff00000000 0 -b
read70 /hd0/1/no_hole 0xffffffffffffffff 0 -b
# one-byte length
read /hd0/1/no_hole 0 1 -b
read /hd0/1/no_hole 1 1 -b
read /hd0/1/no_hole 0xffe 1 -b
read /hd0/1/no_hole 0xfff 1 -b
read /hd0/1/no_hole 0x1000 1 -b
read /hd0/1/no_hole 0x1001 1 -b
read /hd0/1/no_hole 0x1ffe 1 -b
read /hd0/1/no_hole 0x1fff 1 -b
read /hd0/1/no_hole 0x2000 1 -b
read /hd0/1/no_hole 0xfffe 1 -b
read /hd0/1/no_hole 0xffff 1 -b
read /hd0/1/no_hole 0x10000 1 -b
read /hd0/1/no_hole 0x10001 1 -b
read /hd0/1/no_hole 0x1ffff 1 -b
read /hd0/1/no_hole 0x10000000 1 -b
read /hd0/1/no_hole 0x1000ffff 1 -b
read /hd0/1/no_hole 0xffff0000 1 -b
read /hd0/1/no_hole 0xffff0001 1 -b
read /hd0/1/no_hole 0xffffffff 1 -b
read /hd0/1/no_hole 0x100000000 1 -b
read /hd0/1/no_hole 0x100000001 1 -b
read /hd0/1/no_hole 0x1ffffffff 1 -b
read /hd0/1/no_hole 0xffffffff00000000 1 -b
read /hd0/1/no_hole 0xffffffffffffffff 1 -b
read70 /hd0/1/no_hole 0 1 -b
read70 /hd0/1/no_hole 1 1 -b
read70 /hd0/1/no_hole 0xffe 1 -b
read70 /hd0/1/no_hole 0xfff 1 -b
read70 /hd0/1/no_hole 0x1000 1 -b
read70 /hd0/1/no_hole 0x1001 1 -b
read70 /hd0/1/no_hole 0x1ffe 1 -b
read70 /hd0/1/no_hole 0x1fff 1 -b
read70 /hd0/1/no_hole 0x2000 1 -b
read70 /hd0/1/no_hole 0xfffe 1 -b
read70 /hd0/1/no_hole 0xffff 1 -b
read70 /hd0/1/no_hole 0x10000 1 -b
read70 /hd0/1/no_hole 0x10001 1 -b
read70 /hd0/1/no_hole 0x1ffff 1 -b
read70 /hd0/1/no_hole 0x10000000 1 -b
read70 /hd0/1/no_hole 0x1000ffff 1 -b
read70 /hd0/1/no_hole 0xffff0000 1 -b
read70 /hd0/1/no_hole 0xffff0001 1 -b
read70 /hd0/1/no_hole 0xffffffff 1 -b
read70 /hd0/1/no_hole 0x100000000 1 -b
read70 /hd0/1/no_hole 0x100000001 1 -b
read70 /hd0/1/no_hole 0x1ffffffff 1 -b
read70 /hd0/1/no_hole 0xffffffff00000000 1 -b
read70 /hd0/1/no_hole 0xffffffffffffffff 1 -b
# fixed-size block, different begin/end positions
read /hd0/1/no_hole 0 11 -b
read /hd0/1/no_hole 1 11 -b
read /hd0/1/no_hole 0xfff4 11 -b
read /hd0/1/no_hole 0xfff5 11 -b
read /hd0/1/no_hole 0xfff6 11 -b
read /hd0/1/no_hole 0xfffe 11 -b
read /hd0/1/no_hole 0xffff 11 -b
read /hd0/1/no_hole 0x10000 11 -b
read /hd0/1/no_hole 0x10001 11 -b
read /hd0/1/no_hole 0x10000000 11 -b
read /hd0/1/no_hole 0x10000001 11 -b
read /hd0/1/no_hole 0x1000ffff 11 -b
read /hd0/1/no_hole 0xffff0000 11 -b
read /hd0/1/no_hole 0xffffffff 11 -b
read /hd0/1/no_hole 0x100000000 11 -b
read /hd0/1/no_hole 0x100000001 11 -b
read /hd0/1/no_hole 0x1ffffffff 11 -b
read /hd0/1/no_hole 0xffffffff00000000 11 -b
read /hd0/1/no_hole 0xffffffffffffffff 11 -b
read70 /hd0/1/no_hole 0 11 -b
read70 /hd0/1/no_hole 1 11 -b
read70 /hd0/1/no_hole 0xfff4 11 -b
read70 /hd0/1/no_hole 0xfff5 11 -b
read70 /hd0/1/no_hole 0xfff6 11 -b
read70 /hd0/1/no_hole 0xfffe 11 -b
read70 /hd0/1/no_hole 0xffff 11 -b
read70 /hd0/1/no_hole 0x10000 11 -b
read70 /hd0/1/no_hole 0x10001 11 -b
read70 /hd0/1/no_hole 0x10000000 11 -b
read70 /hd0/1/no_hole 0x10000001 11 -b
read70 /hd0/1/no_hole 0x1000ffff 11 -b
read70 /hd0/1/no_hole 0xffff0000 11 -b
read70 /hd0/1/no_hole 0xffffffff 11 -b
read70 /hd0/1/no_hole 0x100000000 11 -b
read70 /hd0/1/no_hole 0x100000001 11 -b
read70 /hd0/1/no_hole 0x1ffffffff 11 -b
read70 /hd0/1/no_hole 0xffffffff00000000 11 -b
read70 /hd0/1/no_hole 0xffffffffffffffff 11 -b
# btree
read /hd0/1/btree_l1_no_hole 0x80000 11 -b
read70 /hd0/1/btree_l1_no_hole 0x80000 11 -b

View File

@ -1,9 +1,9 @@
/> disk_add ../img/xfs_v4_files_s05k_b4k_n8k.img hd0
/hd0/1: xfs
/> stat /hd0/1/
/> stat70 /hd0/1/
status = 0 success
attr: ----f
/> stat /hd0/1/hole_begin
/> stat70 /hd0/1/hole_begin
status = 0 success
attr: -----
size: 65536

View File

@ -1,4 +1,4 @@
disk_add ../img/xfs_v4_files_s05k_b4k_n8k.img hd0
stat /hd0/1/
stat /hd0/1/hole_begin
stat70 /hd0/1/
stat70 /hd0/1/hole_begin
disk_del hd0

View File

@ -2,273 +2,273 @@
/hd0/1: xfs
# hole begin
# zero length
/> read /hd0/1/hole_begin 0 0 -b
/> read70 /hd0/1/hole_begin 0 0 -b
status = 0 success, count = 0
/> read /hd0/1/hole_begin 1 0 -b
/> read70 /hd0/1/hole_begin 1 0 -b
status = 0 success, count = 0
/> read /hd0/1/hole_begin 0x3ffe 0 -b
/> read70 /hd0/1/hole_begin 0x3ffe 0 -b
status = 0 success, count = 0
/> read /hd0/1/hole_begin 0x3fff 0 -b
/> read70 /hd0/1/hole_begin 0x3fff 0 -b
status = 0 success, count = 0
/> read /hd0/1/hole_begin 0x4000 0 -b
/> read70 /hd0/1/hole_begin 0x4000 0 -b
status = 0 success, count = 0
/> read /hd0/1/hole_begin 0x4001 0 -b
/> read70 /hd0/1/hole_begin 0x4001 0 -b
status = 0 success, count = 0
# one-byte length
/> read /hd0/1/hole_begin 0 1 -b
/> read70 /hd0/1/hole_begin 0 1 -b
status = 0 success, count = 1
00
/> read /hd0/1/hole_begin 1 1 -b
/> read70 /hd0/1/hole_begin 1 1 -b
status = 0 success, count = 1
00
/> read /hd0/1/hole_begin 0x3ffe 1 -b
/> read70 /hd0/1/hole_begin 0x3ffe 1 -b
status = 0 success, count = 1
00
/> read /hd0/1/hole_begin 0x3fff 1 -b
/> read70 /hd0/1/hole_begin 0x3fff 1 -b
status = 0 success, count = 1
00
/> read /hd0/1/hole_begin 0x4000 1 -b
/> read70 /hd0/1/hole_begin 0x4000 1 -b
status = 0 success, count = 1
00
/> read /hd0/1/hole_begin 0x4001 1 -b
/> read70 /hd0/1/hole_begin 0x4001 1 -b
status = 0 success, count = 1
40
# fixed-size block, different begin/end positions
/> read /hd0/1/hole_begin 0 11 -b
/> read70 /hd0/1/hole_begin 0 11 -b
status = 0 success, count = 11
0000000000000000000000
/> read /hd0/1/hole_begin 1 11 -b
/> read70 /hd0/1/hole_begin 1 11 -b
status = 0 success, count = 11
0000000000000000000000
/> read /hd0/1/hole_begin 0x3ff4 11 -b
/> read70 /hd0/1/hole_begin 0x3ff4 11 -b
status = 0 success, count = 11
0000000000000000000000
/> read /hd0/1/hole_begin 0x3ff5 11 -b
/> read70 /hd0/1/hole_begin 0x3ff5 11 -b
status = 0 success, count = 11
0000000000000000000000
/> read /hd0/1/hole_begin 0x3ff6 11 -b
/> read70 /hd0/1/hole_begin 0x3ff6 11 -b
status = 0 success, count = 11
0000000000000000000000
/> read /hd0/1/hole_begin 0x3ff7 11 -b
/> read70 /hd0/1/hole_begin 0x3ff7 11 -b
status = 0 success, count = 11
0000000000000000000040
/> read /hd0/1/hole_begin 0x3ffe 11 -b
/> read70 /hd0/1/hole_begin 0x3ffe 11 -b
status = 0 success, count = 11
0000004002400440064008
/> read /hd0/1/hole_begin 0x3fff 11 -b
/> read70 /hd0/1/hole_begin 0x3fff 11 -b
status = 0 success, count = 11
0000400240044006400840
/> read /hd0/1/hole_begin 0x4000 11 -b
/> read70 /hd0/1/hole_begin 0x4000 11 -b
status = 0 success, count = 11
004002400440064008400a
/> read /hd0/1/hole_begin 0x4001 11 -b
/> read70 /hd0/1/hole_begin 0x4001 11 -b
status = 0 success, count = 11
4002400440064008400a40
# hole middle
# zero length
/> read /hd0/1/hole_middle 0x7ffe 0 -b
/> read70 /hd0/1/hole_middle 0x7ffe 0 -b
status = 0 success, count = 0
/> read /hd0/1/hole_middle 0x7fff 0 -b
/> read70 /hd0/1/hole_middle 0x7fff 0 -b
status = 0 success, count = 0
/> read /hd0/1/hole_middle 0x8000 0 -b
/> read70 /hd0/1/hole_middle 0x8000 0 -b
status = 0 success, count = 0
/> read /hd0/1/hole_middle 0x8001 0 -b
/> read70 /hd0/1/hole_middle 0x8001 0 -b
status = 0 success, count = 0
/> read /hd0/1/hole_middle 0xbffe 0 -b
/> read70 /hd0/1/hole_middle 0xbffe 0 -b
status = 0 success, count = 0
/> read /hd0/1/hole_middle 0xbfff 0 -b
/> read70 /hd0/1/hole_middle 0xbfff 0 -b
status = 0 success, count = 0
/> read /hd0/1/hole_middle 0xc000 0 -b
/> read70 /hd0/1/hole_middle 0xc000 0 -b
status = 0 success, count = 0
/> read /hd0/1/hole_middle 0xc001 0 -b
/> read70 /hd0/1/hole_middle 0xc001 0 -b
status = 0 success, count = 0
# one-byte length
/> read /hd0/1/hole_middle 0x7ffe 1 -b
/> read70 /hd0/1/hole_middle 0x7ffe 1 -b
status = 0 success, count = 1
fe
/> read /hd0/1/hole_middle 0x7fff 1 -b
/> read70 /hd0/1/hole_middle 0x7fff 1 -b
status = 0 success, count = 1
7f
/> read /hd0/1/hole_middle 0x8000 1 -b
/> read70 /hd0/1/hole_middle 0x8000 1 -b
status = 0 success, count = 1
00
/> read /hd0/1/hole_middle 0x8001 1 -b
/> read70 /hd0/1/hole_middle 0x8001 1 -b
status = 0 success, count = 1
00
/> read /hd0/1/hole_middle 0xbffe 1 -b
/> read70 /hd0/1/hole_middle 0xbffe 1 -b
status = 0 success, count = 1
00
/> read /hd0/1/hole_middle 0xbfff 1 -b
/> read70 /hd0/1/hole_middle 0xbfff 1 -b
status = 0 success, count = 1
00
/> read /hd0/1/hole_middle 0xc000 1 -b
/> read70 /hd0/1/hole_middle 0xc000 1 -b
status = 0 success, count = 1
00
/> read /hd0/1/hole_middle 0xc001 1 -b
/> read70 /hd0/1/hole_middle 0xc001 1 -b
status = 0 success, count = 1
c0
# fixed-size block, different begin/end positions
/> read /hd0/1/hole_middle 0x7ff4 11 -b
/> read70 /hd0/1/hole_middle 0x7ff4 11 -b
status = 0 success, count = 11
f47ff67ff87ffa7ffc7ffe
/> read /hd0/1/hole_middle 0x7ff5 11 -b
/> read70 /hd0/1/hole_middle 0x7ff5 11 -b
status = 0 success, count = 11
7ff67ff87ffa7ffc7ffe7f
/> read /hd0/1/hole_middle 0x7ff6 11 -b
/> read70 /hd0/1/hole_middle 0x7ff6 11 -b
status = 0 success, count = 11
f67ff87ffa7ffc7ffe7f00
/> read /hd0/1/hole_middle 0x7ff7 11 -b
/> read70 /hd0/1/hole_middle 0x7ff7 11 -b
status = 0 success, count = 11
7ff87ffa7ffc7ffe7f0000
/> read /hd0/1/hole_middle 0x7ffe 11 -b
/> read70 /hd0/1/hole_middle 0x7ffe 11 -b
status = 0 success, count = 11
fe7f000000000000000000
/> read /hd0/1/hole_middle 0x7fff 11 -b
/> read70 /hd0/1/hole_middle 0x7fff 11 -b
status = 0 success, count = 11
7f00000000000000000000
/> read /hd0/1/hole_middle 0x8000 11 -b
/> read70 /hd0/1/hole_middle 0x8000 11 -b
status = 0 success, count = 11
0000000000000000000000
/> read /hd0/1/hole_middle 0x8001 11 -b
/> read70 /hd0/1/hole_middle 0x8001 11 -b
status = 0 success, count = 11
0000000000000000000000
/> read /hd0/1/hole_middle 0xbff4 11 -b
/> read70 /hd0/1/hole_middle 0xbff4 11 -b
status = 0 success, count = 11
0000000000000000000000
/> read /hd0/1/hole_middle 0xbff5 11 -b
/> read70 /hd0/1/hole_middle 0xbff5 11 -b
status = 0 success, count = 11
0000000000000000000000
/> read /hd0/1/hole_middle 0xbff6 11 -b
/> read70 /hd0/1/hole_middle 0xbff6 11 -b
status = 0 success, count = 11
0000000000000000000000
/> read /hd0/1/hole_middle 0xbff7 11 -b
/> read70 /hd0/1/hole_middle 0xbff7 11 -b
status = 0 success, count = 11
00000000000000000000c0
/> read /hd0/1/hole_middle 0xbffe 11 -b
/> read70 /hd0/1/hole_middle 0xbffe 11 -b
status = 0 success, count = 11
000000c002c004c006c008
/> read /hd0/1/hole_middle 0xbfff 11 -b
/> read70 /hd0/1/hole_middle 0xbfff 11 -b
status = 0 success, count = 11
0000c002c004c006c008c0
/> read /hd0/1/hole_middle 0xc000 11 -b
/> read70 /hd0/1/hole_middle 0xc000 11 -b
status = 0 success, count = 11
00c002c004c006c008c00a
/> read /hd0/1/hole_middle 0xc001 11 -b
/> read70 /hd0/1/hole_middle 0xc001 11 -b
status = 0 success, count = 11
c002c004c006c008c00ac0
# hole end
# zero length
/> read /hd0/1/hole_end 0xbffe 0 -b
/> read70 /hd0/1/hole_end 0xbffe 0 -b
status = 0 success, count = 0
/> read /hd0/1/hole_end 0xbfff 0 -b
/> read70 /hd0/1/hole_end 0xbfff 0 -b
status = 0 success, count = 0
/> read /hd0/1/hole_end 0xc000 0 -b
/> read70 /hd0/1/hole_end 0xc000 0 -b
status = 0 success, count = 0
/> read /hd0/1/hole_end 0xc001 0 -b
/> read70 /hd0/1/hole_end 0xc001 0 -b
status = 0 success, count = 0
/> read /hd0/1/hole_end 0xfffe 0 -b
/> read70 /hd0/1/hole_end 0xfffe 0 -b
status = 0 success, count = 0
/> read /hd0/1/hole_end 0xffff 0 -b
/> read70 /hd0/1/hole_end 0xffff 0 -b
status = 0 success, count = 0
/> read /hd0/1/hole_end 0x10000 0 -b
/> read70 /hd0/1/hole_end 0x10000 0 -b
status = 0 success, count = 0
/> read /hd0/1/hole_end 0x10001 0 -b
/> read70 /hd0/1/hole_end 0x10001 0 -b
status = 0 success, count = 0
# one-byte length
/> read /hd0/1/hole_end 0xbffe 1 -b
/> read70 /hd0/1/hole_end 0xbffe 1 -b
status = 0 success, count = 1
fe
/> read /hd0/1/hole_end 0xbfff 1 -b
/> read70 /hd0/1/hole_end 0xbfff 1 -b
status = 0 success, count = 1
bf
/> read /hd0/1/hole_end 0xc000 1 -b
/> read70 /hd0/1/hole_end 0xc000 1 -b
status = 0 success, count = 1
00
/> read /hd0/1/hole_end 0xc001 1 -b
/> read70 /hd0/1/hole_end 0xc001 1 -b
status = 0 success, count = 1
00
/> read /hd0/1/hole_end 0xfffe 1 -b
/> read70 /hd0/1/hole_end 0xfffe 1 -b
status = 0 success, count = 1
00
/> read /hd0/1/hole_end 0xffff 1 -b
/> read70 /hd0/1/hole_end 0xffff 1 -b
status = 0 success, count = 1
00
/> read /hd0/1/hole_end 0x10000 1 -b
/> read70 /hd0/1/hole_end 0x10000 1 -b
status = 6 end_of_file, count = 0
/> read /hd0/1/hole_end 0x10001 1 -b
/> read70 /hd0/1/hole_end 0x10001 1 -b
status = 6 end_of_file, count = 0
# fixed-size block, different begin/end positions
/> read /hd0/1/hole_end 0xbff4 11 -b
/> read70 /hd0/1/hole_end 0xbff4 11 -b
status = 0 success, count = 11
f4bff6bff8bffabffcbffe
/> read /hd0/1/hole_end 0xbff5 11 -b
/> read70 /hd0/1/hole_end 0xbff5 11 -b
status = 0 success, count = 11
bff6bff8bffabffcbffebf
/> read /hd0/1/hole_end 0xbff6 11 -b
/> read70 /hd0/1/hole_end 0xbff6 11 -b
status = 0 success, count = 11
f6bff8bffabffcbffebf00
/> read /hd0/1/hole_end 0xbff7 11 -b
/> read70 /hd0/1/hole_end 0xbff7 11 -b
status = 0 success, count = 11
bff8bffabffcbffebf0000
/> read /hd0/1/hole_end 0xbffe 11 -b
/> read70 /hd0/1/hole_end 0xbffe 11 -b
status = 0 success, count = 11
febf000000000000000000
/> read /hd0/1/hole_end 0xbfff 11 -b
/> read70 /hd0/1/hole_end 0xbfff 11 -b
status = 0 success, count = 11
bf00000000000000000000
/> read /hd0/1/hole_end 0xc000 11 -b
/> read70 /hd0/1/hole_end 0xc000 11 -b
status = 0 success, count = 11
0000000000000000000000
/> read /hd0/1/hole_end 0xc001 11 -b
/> read70 /hd0/1/hole_end 0xc001 11 -b
status = 0 success, count = 11
0000000000000000000000
/> read /hd0/1/hole_end 0xfff4 11 -b
/> read70 /hd0/1/hole_end 0xfff4 11 -b
status = 0 success, count = 11
0000000000000000000000
/> read /hd0/1/hole_end 0xfff5 11 -b
/> read70 /hd0/1/hole_end 0xfff5 11 -b
status = 0 success, count = 11
0000000000000000000000
/> read /hd0/1/hole_end 0xfff6 11 -b
/> read70 /hd0/1/hole_end 0xfff6 11 -b
status = 6 end_of_file, count = 10
00000000000000000000
/> read /hd0/1/hole_end 0xfff7 11 -b
/> read70 /hd0/1/hole_end 0xfff7 11 -b
status = 6 end_of_file, count = 9
000000000000000000
/> read /hd0/1/hole_end 0xfffe 11 -b
/> read70 /hd0/1/hole_end 0xfffe 11 -b
status = 6 end_of_file, count = 2
0000
/> read /hd0/1/hole_end 0xffff 11 -b
/> read70 /hd0/1/hole_end 0xffff 11 -b
status = 6 end_of_file, count = 1
00
/> read /hd0/1/hole_end 0x10000 11 -b
/> read70 /hd0/1/hole_end 0x10000 11 -b
status = 6 end_of_file, count = 0
/> read /hd0/1/hole_end 0x10001 11 -b
/> read70 /hd0/1/hole_end 0x10001 11 -b
status = 6 end_of_file, count = 0

View File

@ -1,101 +1,101 @@
disk_add ../img/xfs_v4_files_s05k_b4k_n8k.img hd0
# hole begin
# zero length
read /hd0/1/hole_begin 0 0 -b
read /hd0/1/hole_begin 1 0 -b
read /hd0/1/hole_begin 0x3ffe 0 -b
read /hd0/1/hole_begin 0x3fff 0 -b
read /hd0/1/hole_begin 0x4000 0 -b
read /hd0/1/hole_begin 0x4001 0 -b
read70 /hd0/1/hole_begin 0 0 -b
read70 /hd0/1/hole_begin 1 0 -b
read70 /hd0/1/hole_begin 0x3ffe 0 -b
read70 /hd0/1/hole_begin 0x3fff 0 -b
read70 /hd0/1/hole_begin 0x4000 0 -b
read70 /hd0/1/hole_begin 0x4001 0 -b
# one-byte length
read /hd0/1/hole_begin 0 1 -b
read /hd0/1/hole_begin 1 1 -b
read /hd0/1/hole_begin 0x3ffe 1 -b
read /hd0/1/hole_begin 0x3fff 1 -b
read /hd0/1/hole_begin 0x4000 1 -b
read /hd0/1/hole_begin 0x4001 1 -b
read70 /hd0/1/hole_begin 0 1 -b
read70 /hd0/1/hole_begin 1 1 -b
read70 /hd0/1/hole_begin 0x3ffe 1 -b
read70 /hd0/1/hole_begin 0x3fff 1 -b
read70 /hd0/1/hole_begin 0x4000 1 -b
read70 /hd0/1/hole_begin 0x4001 1 -b
# fixed-size block, different begin/end positions
read /hd0/1/hole_begin 0 11 -b
read /hd0/1/hole_begin 1 11 -b
read /hd0/1/hole_begin 0x3ff4 11 -b
read /hd0/1/hole_begin 0x3ff5 11 -b
read /hd0/1/hole_begin 0x3ff6 11 -b
read /hd0/1/hole_begin 0x3ff7 11 -b
read /hd0/1/hole_begin 0x3ffe 11 -b
read /hd0/1/hole_begin 0x3fff 11 -b
read /hd0/1/hole_begin 0x4000 11 -b
read /hd0/1/hole_begin 0x4001 11 -b
read70 /hd0/1/hole_begin 0 11 -b
read70 /hd0/1/hole_begin 1 11 -b
read70 /hd0/1/hole_begin 0x3ff4 11 -b
read70 /hd0/1/hole_begin 0x3ff5 11 -b
read70 /hd0/1/hole_begin 0x3ff6 11 -b
read70 /hd0/1/hole_begin 0x3ff7 11 -b
read70 /hd0/1/hole_begin 0x3ffe 11 -b
read70 /hd0/1/hole_begin 0x3fff 11 -b
read70 /hd0/1/hole_begin 0x4000 11 -b
read70 /hd0/1/hole_begin 0x4001 11 -b
# hole middle
# zero length
read /hd0/1/hole_middle 0x7ffe 0 -b
read /hd0/1/hole_middle 0x7fff 0 -b
read /hd0/1/hole_middle 0x8000 0 -b
read /hd0/1/hole_middle 0x8001 0 -b
read /hd0/1/hole_middle 0xbffe 0 -b
read /hd0/1/hole_middle 0xbfff 0 -b
read /hd0/1/hole_middle 0xc000 0 -b
read /hd0/1/hole_middle 0xc001 0 -b
read70 /hd0/1/hole_middle 0x7ffe 0 -b
read70 /hd0/1/hole_middle 0x7fff 0 -b
read70 /hd0/1/hole_middle 0x8000 0 -b
read70 /hd0/1/hole_middle 0x8001 0 -b
read70 /hd0/1/hole_middle 0xbffe 0 -b
read70 /hd0/1/hole_middle 0xbfff 0 -b
read70 /hd0/1/hole_middle 0xc000 0 -b
read70 /hd0/1/hole_middle 0xc001 0 -b
# one-byte length
read /hd0/1/hole_middle 0x7ffe 1 -b
read /hd0/1/hole_middle 0x7fff 1 -b
read /hd0/1/hole_middle 0x8000 1 -b
read /hd0/1/hole_middle 0x8001 1 -b
read /hd0/1/hole_middle 0xbffe 1 -b
read /hd0/1/hole_middle 0xbfff 1 -b
read /hd0/1/hole_middle 0xc000 1 -b
read /hd0/1/hole_middle 0xc001 1 -b
read70 /hd0/1/hole_middle 0x7ffe 1 -b
read70 /hd0/1/hole_middle 0x7fff 1 -b
read70 /hd0/1/hole_middle 0x8000 1 -b
read70 /hd0/1/hole_middle 0x8001 1 -b
read70 /hd0/1/hole_middle 0xbffe 1 -b
read70 /hd0/1/hole_middle 0xbfff 1 -b
read70 /hd0/1/hole_middle 0xc000 1 -b
read70 /hd0/1/hole_middle 0xc001 1 -b
# fixed-size block, different begin/end positions
read /hd0/1/hole_middle 0x7ff4 11 -b
read /hd0/1/hole_middle 0x7ff5 11 -b
read /hd0/1/hole_middle 0x7ff6 11 -b
read /hd0/1/hole_middle 0x7ff7 11 -b
read /hd0/1/hole_middle 0x7ffe 11 -b
read /hd0/1/hole_middle 0x7fff 11 -b
read /hd0/1/hole_middle 0x8000 11 -b
read /hd0/1/hole_middle 0x8001 11 -b
read /hd0/1/hole_middle 0xbff4 11 -b
read /hd0/1/hole_middle 0xbff5 11 -b
read /hd0/1/hole_middle 0xbff6 11 -b
read /hd0/1/hole_middle 0xbff7 11 -b
read /hd0/1/hole_middle 0xbffe 11 -b
read /hd0/1/hole_middle 0xbfff 11 -b
read /hd0/1/hole_middle 0xc000 11 -b
read /hd0/1/hole_middle 0xc001 11 -b
read70 /hd0/1/hole_middle 0x7ff4 11 -b
read70 /hd0/1/hole_middle 0x7ff5 11 -b
read70 /hd0/1/hole_middle 0x7ff6 11 -b
read70 /hd0/1/hole_middle 0x7ff7 11 -b
read70 /hd0/1/hole_middle 0x7ffe 11 -b
read70 /hd0/1/hole_middle 0x7fff 11 -b
read70 /hd0/1/hole_middle 0x8000 11 -b
read70 /hd0/1/hole_middle 0x8001 11 -b
read70 /hd0/1/hole_middle 0xbff4 11 -b
read70 /hd0/1/hole_middle 0xbff5 11 -b
read70 /hd0/1/hole_middle 0xbff6 11 -b
read70 /hd0/1/hole_middle 0xbff7 11 -b
read70 /hd0/1/hole_middle 0xbffe 11 -b
read70 /hd0/1/hole_middle 0xbfff 11 -b
read70 /hd0/1/hole_middle 0xc000 11 -b
read70 /hd0/1/hole_middle 0xc001 11 -b
# hole end
# zero length
read /hd0/1/hole_end 0xbffe 0 -b
read /hd0/1/hole_end 0xbfff 0 -b
read /hd0/1/hole_end 0xc000 0 -b
read /hd0/1/hole_end 0xc001 0 -b
read /hd0/1/hole_end 0xfffe 0 -b
read /hd0/1/hole_end 0xffff 0 -b
read /hd0/1/hole_end 0x10000 0 -b
read /hd0/1/hole_end 0x10001 0 -b
read70 /hd0/1/hole_end 0xbffe 0 -b
read70 /hd0/1/hole_end 0xbfff 0 -b
read70 /hd0/1/hole_end 0xc000 0 -b
read70 /hd0/1/hole_end 0xc001 0 -b
read70 /hd0/1/hole_end 0xfffe 0 -b
read70 /hd0/1/hole_end 0xffff 0 -b
read70 /hd0/1/hole_end 0x10000 0 -b
read70 /hd0/1/hole_end 0x10001 0 -b
# one-byte length
read /hd0/1/hole_end 0xbffe 1 -b
read /hd0/1/hole_end 0xbfff 1 -b
read /hd0/1/hole_end 0xc000 1 -b
read /hd0/1/hole_end 0xc001 1 -b
read /hd0/1/hole_end 0xfffe 1 -b
read /hd0/1/hole_end 0xffff 1 -b
read /hd0/1/hole_end 0x10000 1 -b
read /hd0/1/hole_end 0x10001 1 -b
read70 /hd0/1/hole_end 0xbffe 1 -b
read70 /hd0/1/hole_end 0xbfff 1 -b
read70 /hd0/1/hole_end 0xc000 1 -b
read70 /hd0/1/hole_end 0xc001 1 -b
read70 /hd0/1/hole_end 0xfffe 1 -b
read70 /hd0/1/hole_end 0xffff 1 -b
read70 /hd0/1/hole_end 0x10000 1 -b
read70 /hd0/1/hole_end 0x10001 1 -b
# fixed-size block, different begin/end positions
read /hd0/1/hole_end 0xbff4 11 -b
read /hd0/1/hole_end 0xbff5 11 -b
read /hd0/1/hole_end 0xbff6 11 -b
read /hd0/1/hole_end 0xbff7 11 -b
read /hd0/1/hole_end 0xbffe 11 -b
read /hd0/1/hole_end 0xbfff 11 -b
read /hd0/1/hole_end 0xc000 11 -b
read /hd0/1/hole_end 0xc001 11 -b
read /hd0/1/hole_end 0xfff4 11 -b
read /hd0/1/hole_end 0xfff5 11 -b
read /hd0/1/hole_end 0xfff6 11 -b
read /hd0/1/hole_end 0xfff7 11 -b
read /hd0/1/hole_end 0xfffe 11 -b
read /hd0/1/hole_end 0xffff 11 -b
read /hd0/1/hole_end 0x10000 11 -b
read /hd0/1/hole_end 0x10001 11 -b
read70 /hd0/1/hole_end 0xbff4 11 -b
read70 /hd0/1/hole_end 0xbff5 11 -b
read70 /hd0/1/hole_end 0xbff6 11 -b
read70 /hd0/1/hole_end 0xbff7 11 -b
read70 /hd0/1/hole_end 0xbffe 11 -b
read70 /hd0/1/hole_end 0xbfff 11 -b
read70 /hd0/1/hole_end 0xc000 11 -b
read70 /hd0/1/hole_end 0xc001 11 -b
read70 /hd0/1/hole_end 0xfff4 11 -b
read70 /hd0/1/hole_end 0xfff5 11 -b
read70 /hd0/1/hole_end 0xfff6 11 -b
read70 /hd0/1/hole_end 0xfff7 11 -b
read70 /hd0/1/hole_end 0xfffe 11 -b
read70 /hd0/1/hole_end 0xffff 11 -b
read70 /hd0/1/hole_end 0x10000 11 -b
read70 /hd0/1/hole_end 0x10001 11 -b

View File

@ -1,182 +1,182 @@
/> disk_add ../img/xfs_v4_ftype1_s05k_b2k_n8k.img hd0
/hd0/1: xfs
/> stat /hd0/1/sf_empty
/> stat70 /hd0/1/sf_empty
status = 0 success
attr: ----f
/> stat /hd0/1/sf_empty/.
/> stat70 /hd0/1/sf_empty/.
status = 0 success
attr: ----f
/> stat /hd0/1/sf_empty/..
/> stat70 /hd0/1/sf_empty/..
status = 0 success
attr: ----f
/> stat /hd0/1/sf_empty/deadbeef
/> stat70 /hd0/1/sf_empty/deadbeef
status = 5 file_not_found
/> stat /hd0/1/sf/.
/> stat70 /hd0/1/sf/.
status = 0 success
attr: ----f
/> stat /hd0/1/sf/..
/> stat70 /hd0/1/sf/..
status = 0 success
attr: ----f
/> stat /hd0/1/sf///
/> stat70 /hd0/1/sf///
status = 0 success
attr: ----f
/> stat /hd0/1/sf///.
/> stat70 /hd0/1/sf///.
status = 0 success
attr: ----f
/> stat /hd0/1/sf///..
/> stat70 /hd0/1/sf///..
status = 0 success
attr: ----f
/> stat /hd0/1/sf/../sf
/> stat70 /hd0/1/sf/../sf
status = 0 success
attr: ----f
/> stat /hd0/1/sf/../sf/
/> stat70 /hd0/1/sf/../sf/
status = 0 success
attr: ----f
#stat /hd0/1/sf///..//sf
#stat /hd0/1/sf///..//sf/
#stat70 /hd0/1/sf///..//sf
#stat70 /hd0/1/sf///..//sf/
/> stat /hd0/1/sf/d0000000000_
/> stat70 /hd0/1/sf/d0000000000_
status = 0 success
attr: ----f
/> stat /hd0/1/sf/d0000000001_x
/> stat70 /hd0/1/sf/d0000000001_x
status = 0 success
attr: ----f
/> stat /hd0/1/sf/d0000000002_xx
/> stat70 /hd0/1/sf/d0000000002_xx
status = 0 success
attr: ----f
/> stat /hd0/1/sf/d0000000003_xxx
/> stat70 /hd0/1/sf/d0000000003_xxx
status = 5 file_not_found
/> cd /hd0/1/sf
sf> stat .
sf> stat70 .
status = 0 success
attr: ----f
sf> stat ..
sf> stat70 ..
status = 0 success
attr: ----f
sf> stat d0000000001_x
sf> stat70 d0000000001_x
status = 0 success
attr: ----f
sf> stat d0000000002_xx
sf> stat70 d0000000002_xx
status = 0 success
attr: ----f
sf> stat d0000000003_xxx
sf> stat70 d0000000003_xxx
status = 5 file_not_found
sf> cd /hd0/1/block
block> stat .
block> stat70 .
status = 0 success
attr: ----f
block> stat ..
block> stat70 ..
status = 0 success
attr: ----f
block> stat d0000000000_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
block> stat70 d0000000000_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
status = 0 success
attr: ----f
block> stat d0000000001_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
block> stat70 d0000000001_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
status = 0 success
attr: ----f
block> stat d0000000002_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
block> stat70 d0000000002_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
status = 0 success
attr: ----f
block> stat d0000000003_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
block> stat70 d0000000003_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
status = 0 success
attr: ----f
block> stat d0000000004_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
block> stat70 d0000000004_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
status = 0 success
attr: ----f
block> stat d0000000005_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
block> stat70 d0000000005_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
status = 5 file_not_found
block> cd /hd0/1/leaf
leaf> stat .
leaf> stat70 .
status = 0 success
attr: ----f
leaf> stat ..
leaf> stat70 ..
status = 0 success
attr: ----f
leaf> stat d0000000000_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
leaf> stat70 d0000000000_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
status = 0 success
attr: ----f
leaf> stat d0000000001_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
leaf> stat70 d0000000001_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
status = 0 success
attr: ----f
leaf> stat d0000000039_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
leaf> stat70 d0000000039_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
status = 0 success
attr: ----f
leaf> stat d0000000040_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
leaf> stat70 d0000000040_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
status = 5 file_not_found
leaf> cd /hd0/1/node
node> stat d0000000000_
node> stat70 d0000000000_
status = 0 success
attr: ----f
node> stat d0000000001_x
node> stat70 d0000000001_x
status = 0 success
attr: ----f
node> stat d0000000002_xx
node> stat70 d0000000002_xx
status = 0 success
attr: ----f
node> stat d0000000003_xxx
node> stat70 d0000000003_xxx
status = 0 success
attr: ----f
node> stat d0000000004_xxxx
node> stat70 d0000000004_xxxx
status = 0 success
attr: ----f
node> stat d0000001095_xxxxxxxxxxxxxx
node> stat70 d0000001095_xxxxxxxxxxxxxx
status = 0 success
attr: ----f
node> stat d0000001096_xxxxxxxxxxxxxxx
node> stat70 d0000001096_xxxxxxxxxxxxxxx
status = 0 success
attr: ----f
node> stat d0000001097_xxxxxxxxxxxxxxxx
node> stat70 d0000001097_xxxxxxxxxxxxxxxx
status = 0 success
attr: ----f
node> stat d0000001098_xxxxxxxxxxxxxxxxx
node> stat70 d0000001098_xxxxxxxxxxxxxxxxx
status = 0 success
attr: ----f
node> stat d0000001099_xxxxxxxxxxxxxxxxxx
node> stat70 d0000001099_xxxxxxxxxxxxxxxxxx
status = 0 success
attr: ----f
node> cd /hd0/1/btree_leaf
btree_leaf> stat d0000000000_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
btree_leaf> stat70 d0000000000_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
status = 0 success
attr: ----f
btree_leaf> stat d0000000001_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
btree_leaf> stat70 d0000000001_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
status = 0 success
attr: ----f
btree_leaf> stat d0000000002_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
btree_leaf> stat70 d0000000002_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
status = 0 success
attr: ----f
btree_leaf> stat d0000000997_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
btree_leaf> stat70 d0000000997_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
status = 0 success
attr: ----f
btree_leaf> stat d0000000998_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
btree_leaf> stat70 d0000000998_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
status = 0 success
attr: ----f
btree_leaf> stat d0000000999_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
btree_leaf> stat70 d0000000999_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
status = 0 success
attr: ----f
btree_leaf> cd /hd0/1/btree_leaf_free
btree_leaf_free> stat d0000000000_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
btree_leaf_free> stat70 d0000000000_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
status = 0 success
attr: ----f
btree_leaf_free> stat d0000000001_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
btree_leaf_free> stat70 d0000000001_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
status = 0 success
attr: ----f
btree_leaf_free> stat d0000000002_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
btree_leaf_free> stat70 d0000000002_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
status = 0 success
attr: ----f
btree_leaf_free> stat d0000001197_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
btree_leaf_free> stat70 d0000001197_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
status = 0 success
attr: ----f
btree_leaf_free> stat d0000001198_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
btree_leaf_free> stat70 d0000001198_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
status = 0 success
attr: ----f
btree_leaf_free> stat d0000001199_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
btree_leaf_free> stat70 d0000001199_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
status = 0 success
attr: ----f

View File

@ -1,75 +1,75 @@
disk_add ../img/xfs_v4_ftype1_s05k_b2k_n8k.img hd0
stat /hd0/1/sf_empty
stat /hd0/1/sf_empty/.
stat /hd0/1/sf_empty/..
stat /hd0/1/sf_empty/deadbeef
stat70 /hd0/1/sf_empty
stat70 /hd0/1/sf_empty/.
stat70 /hd0/1/sf_empty/..
stat70 /hd0/1/sf_empty/deadbeef
stat /hd0/1/sf/.
stat /hd0/1/sf/..
stat /hd0/1/sf///
stat /hd0/1/sf///.
stat /hd0/1/sf///..
stat /hd0/1/sf/../sf
stat /hd0/1/sf/../sf/
#stat /hd0/1/sf///..//sf
#stat /hd0/1/sf///..//sf/
stat70 /hd0/1/sf/.
stat70 /hd0/1/sf/..
stat70 /hd0/1/sf///
stat70 /hd0/1/sf///.
stat70 /hd0/1/sf///..
stat70 /hd0/1/sf/../sf
stat70 /hd0/1/sf/../sf/
#stat70 /hd0/1/sf///..//sf
#stat70 /hd0/1/sf///..//sf/
stat /hd0/1/sf/d0000000000_
stat /hd0/1/sf/d0000000001_x
stat /hd0/1/sf/d0000000002_xx
stat /hd0/1/sf/d0000000003_xxx
stat70 /hd0/1/sf/d0000000000_
stat70 /hd0/1/sf/d0000000001_x
stat70 /hd0/1/sf/d0000000002_xx
stat70 /hd0/1/sf/d0000000003_xxx
cd /hd0/1/sf
stat .
stat ..
stat d0000000001_x
stat d0000000002_xx
stat d0000000003_xxx
stat70 .
stat70 ..
stat70 d0000000001_x
stat70 d0000000002_xx
stat70 d0000000003_xxx
cd /hd0/1/block
stat .
stat ..
stat d0000000000_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat d0000000001_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat d0000000002_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat d0000000003_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat d0000000004_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat d0000000005_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat70 .
stat70 ..
stat70 d0000000000_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat70 d0000000001_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat70 d0000000002_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat70 d0000000003_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat70 d0000000004_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat70 d0000000005_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
cd /hd0/1/leaf
stat .
stat ..
stat d0000000000_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat d0000000001_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat d0000000039_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat d0000000040_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat70 .
stat70 ..
stat70 d0000000000_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat70 d0000000001_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat70 d0000000039_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat70 d0000000040_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
cd /hd0/1/node
stat d0000000000_
stat d0000000001_x
stat d0000000002_xx
stat d0000000003_xxx
stat d0000000004_xxxx
stat d0000001095_xxxxxxxxxxxxxx
stat d0000001096_xxxxxxxxxxxxxxx
stat d0000001097_xxxxxxxxxxxxxxxx
stat d0000001098_xxxxxxxxxxxxxxxxx
stat d0000001099_xxxxxxxxxxxxxxxxxx
stat70 d0000000000_
stat70 d0000000001_x
stat70 d0000000002_xx
stat70 d0000000003_xxx
stat70 d0000000004_xxxx
stat70 d0000001095_xxxxxxxxxxxxxx
stat70 d0000001096_xxxxxxxxxxxxxxx
stat70 d0000001097_xxxxxxxxxxxxxxxx
stat70 d0000001098_xxxxxxxxxxxxxxxxx
stat70 d0000001099_xxxxxxxxxxxxxxxxxx
cd /hd0/1/btree_leaf
stat d0000000000_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat d0000000001_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat d0000000002_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat d0000000997_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat d0000000998_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat d0000000999_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat70 d0000000000_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat70 d0000000001_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat70 d0000000002_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat70 d0000000997_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat70 d0000000998_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat70 d0000000999_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
cd /hd0/1/btree_leaf_free
stat d0000000000_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat d0000000001_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat d0000000002_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat d0000001197_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat d0000001198_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat d0000001199_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat70 d0000000000_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat70 d0000000001_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat70 d0000000002_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat70 d0000001197_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat70 d0000001198_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat70 d0000001199_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
disk_del hd0

View File

@ -1,6 +1,6 @@
/> disk_add ../img/xfs_v4_ftype0_s4k_b4k_n8k.img hd0
/hd0/1: xfs
/> ls /hd0/1/sf
/> ls70 /hd0/1/sf
status = 6 end_of_file, count = 5
total = 5
----f .
@ -8,7 +8,7 @@ total = 5
----f d0000000000_
----f d0000000001_x
----f d0000000002_xx
/> ls /hd0/1/block
/> ls70 /hd0/1/block
status = 6 end_of_file, count = 7
total = 7
----f .
@ -18,7 +18,7 @@ total = 7
----f d0000000002_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
----f d0000000003_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
----f d0000000004_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
/> ls /hd0/1/leaf
/> ls70 /hd0/1/leaf
status = 6 end_of_file, count = 42
total = 42
----f .
@ -63,7 +63,7 @@ total = 42
----f d0000000037_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
----f d0000000038_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
----f d0000000039_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
/> ls /hd0/1/node
/> ls70 /hd0/1/node
status = 0 success, count = 100
total = 1102
----f .
@ -1190,7 +1190,7 @@ status = 6 end_of_file, count = 2
total = 1102
----f d0000001098_xxxxxxxxxxxxxxxxx
----f d0000001099_xxxxxxxxxxxxxxxxxx
/> ls /hd0/1/btree_leaf
/> ls70 /hd0/1/btree_leaf
status = 0 success, count = 100
total = 1002
----f .
@ -2215,7 +2215,7 @@ status = 6 end_of_file, count = 2
total = 1002
----f d0000000998_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
----f d0000000999_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
/> ls /hd0/1/btree_leaf_free
/> ls70 /hd0/1/btree_leaf_free
status = 0 success, count = 100
total = 1202
----f .

View File

@ -1,8 +1,8 @@
disk_add ../img/xfs_v4_ftype0_s4k_b4k_n8k.img hd0
ls /hd0/1/sf
ls /hd0/1/block
ls /hd0/1/leaf
ls /hd0/1/node
ls /hd0/1/btree_leaf
ls /hd0/1/btree_leaf_free
ls70 /hd0/1/sf
ls70 /hd0/1/block
ls70 /hd0/1/leaf
ls70 /hd0/1/node
ls70 /hd0/1/btree_leaf
ls70 /hd0/1/btree_leaf_free
disk_del hd0

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,9 @@
disk_add ../img/xfs_v4_ftype0_s05k_b2k_n8k_xattr.img hd0
ls70 /hd0/1/sf_empty
ls70 /hd0/1/sf
ls70 /hd0/1/block
ls70 /hd0/1/leaf
ls70 /hd0/1/node
ls70 /hd0/1/btree_leaf
ls70 /hd0/1/btree_leaf_free
disk_del hd0

View File

@ -0,0 +1,183 @@
/> disk_add ../img/xfs_v4_ftype0_s05k_b2k_n8k_xattr.img hd0
/hd0/1: xfs
/> stat70 /hd0/1/sf_empty
status = 0 success
attr: ----f
/> stat70 /hd0/1/sf_empty/.
status = 0 success
attr: ----f
/> stat70 /hd0/1/sf_empty/..
status = 0 success
attr: ----f
/> stat70 /hd0/1/sf_empty/deadbeef
status = 5 file_not_found
/> stat70 /hd0/1/sf/.
status = 0 success
attr: ----f
/> stat70 /hd0/1/sf/..
status = 0 success
attr: ----f
/> stat70 /hd0/1/sf///
status = 0 success
attr: ----f
/> stat70 /hd0/1/sf///.
status = 0 success
attr: ----f
/> stat70 /hd0/1/sf///..
status = 0 success
attr: ----f
/> stat70 /hd0/1/sf/../sf
status = 0 success
attr: ----f
/> stat70 /hd0/1/sf/../sf/
status = 0 success
attr: ----f
#stat70 /hd0/1/sf///..//sf
#stat70 /hd0/1/sf///..//sf/
/> stat70 /hd0/1/sf/d0000000000_
status = 0 success
attr: ----f
/> stat70 /hd0/1/sf/d0000000001_x
status = 0 success
attr: ----f
/> stat70 /hd0/1/sf/d0000000002_xx
status = 0 success
attr: ----f
/> stat70 /hd0/1/sf/d0000000003_xxx
status = 5 file_not_found
/> cd /hd0/1/sf
sf> stat70 .
status = 0 success
attr: ----f
sf> stat70 ..
status = 0 success
attr: ----f
sf> stat70 d0000000001_x
status = 0 success
attr: ----f
sf> stat70 d0000000002_xx
status = 0 success
attr: ----f
sf> stat70 d0000000003_xxx
status = 5 file_not_found
sf> cd /hd0/1/block
block> stat70 .
status = 0 success
attr: ----f
block> stat70 ..
status = 0 success
attr: ----f
block> stat70 d0000000000_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
status = 0 success
attr: ----f
block> stat70 d0000000001_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
status = 0 success
attr: ----f
block> stat70 d0000000002_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
status = 0 success
attr: ----f
block> stat70 d0000000003_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
status = 0 success
attr: ----f
block> stat70 d0000000004_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
status = 0 success
attr: ----f
block> stat70 d0000000005_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
status = 5 file_not_found
block> cd /hd0/1/leaf
leaf> stat70 .
status = 0 success
attr: ----f
leaf> stat70 ..
status = 0 success
attr: ----f
leaf> stat70 d0000000000_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
status = 0 success
attr: ----f
leaf> stat70 d0000000001_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
status = 0 success
attr: ----f
leaf> stat70 d0000000039_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
status = 0 success
attr: ----f
leaf> stat70 d0000000040_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
status = 5 file_not_found
leaf> cd /hd0/1/node
node> stat70 d0000000000_
status = 0 success
attr: ----f
node> stat70 d0000000001_x
status = 0 success
attr: ----f
node> stat70 d0000000002_xx
status = 0 success
attr: ----f
node> stat70 d0000000003_xxx
status = 0 success
attr: ----f
node> stat70 d0000000004_xxxx
status = 0 success
attr: ----f
node> stat70 d0000001015_xxx
status = 0 success
attr: ----f
node> stat70 d0000001016_xxxx
status = 0 success
attr: ----f
node> stat70 d0000001017_xxxxx
status = 0 success
attr: ----f
node> stat70 d0000001018_xxxxxx
status = 0 success
attr: ----f
node> stat70 d0000001019_xxxxxxx
status = 0 success
attr: ----f
node> cd /hd0/1/btree_leaf
btree_leaf> stat70 d0000000000_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
status = 0 success
attr: ----f
btree_leaf> stat70 d0000000001_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
status = 0 success
attr: ----f
btree_leaf> stat70 d0000000002_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
status = 0 success
attr: ----f
btree_leaf> stat70 d0000000997_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
status = 0 success
attr: ----f
btree_leaf> stat70 d0000000998_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
status = 0 success
attr: ----f
btree_leaf> stat70 d0000000999_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
status = 0 success
attr: ----f
btree_leaf> cd /hd0/1/btree_leaf_free
btree_leaf_free> stat70 d0000000000_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
status = 0 success
attr: ----f
btree_leaf_free> stat70 d0000000001_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
status = 0 success
attr: ----f
btree_leaf_free> stat70 d0000000002_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
status = 0 success
attr: ----f
btree_leaf_free> stat70 d0000001197_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
status = 0 success
attr: ----f
btree_leaf_free> stat70 d0000001198_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
status = 0 success
attr: ----f
btree_leaf_free> stat70 d0000001199_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
status = 0 success
attr: ----f
btree_leaf_free> disk_del hd0

View File

@ -0,0 +1,75 @@
disk_add ../img/xfs_v4_ftype0_s05k_b2k_n8k_xattr.img hd0
stat70 /hd0/1/sf_empty
stat70 /hd0/1/sf_empty/.
stat70 /hd0/1/sf_empty/..
stat70 /hd0/1/sf_empty/deadbeef
stat70 /hd0/1/sf/.
stat70 /hd0/1/sf/..
stat70 /hd0/1/sf///
stat70 /hd0/1/sf///.
stat70 /hd0/1/sf///..
stat70 /hd0/1/sf/../sf
stat70 /hd0/1/sf/../sf/
#stat70 /hd0/1/sf///..//sf
#stat70 /hd0/1/sf///..//sf/
stat70 /hd0/1/sf/d0000000000_
stat70 /hd0/1/sf/d0000000001_x
stat70 /hd0/1/sf/d0000000002_xx
stat70 /hd0/1/sf/d0000000003_xxx
cd /hd0/1/sf
stat70 .
stat70 ..
stat70 d0000000001_x
stat70 d0000000002_xx
stat70 d0000000003_xxx
cd /hd0/1/block
stat70 .
stat70 ..
stat70 d0000000000_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat70 d0000000001_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat70 d0000000002_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat70 d0000000003_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat70 d0000000004_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat70 d0000000005_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
cd /hd0/1/leaf
stat70 .
stat70 ..
stat70 d0000000000_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat70 d0000000001_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat70 d0000000039_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat70 d0000000040_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
cd /hd0/1/node
stat70 d0000000000_
stat70 d0000000001_x
stat70 d0000000002_xx
stat70 d0000000003_xxx
stat70 d0000000004_xxxx
stat70 d0000001015_xxx
stat70 d0000001016_xxxx
stat70 d0000001017_xxxxx
stat70 d0000001018_xxxxxx
stat70 d0000001019_xxxxxxx
cd /hd0/1/btree_leaf
stat70 d0000000000_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat70 d0000000001_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat70 d0000000002_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat70 d0000000997_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat70 d0000000998_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat70 d0000000999_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
cd /hd0/1/btree_leaf_free
stat70 d0000000000_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat70 d0000000001_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat70 d0000000002_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat70 d0000001197_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat70 d0000001198_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
stat70 d0000001199_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
disk_del hd0

View File

@ -0,0 +1,77 @@
/> disk_add ../img/xfs_v4_unicode.img hd0
/hd0/1: xfs
/> stat80 /hd0/1/dir0
status = 0 success
attr: ----f
/> stat80 /hd0/1/dir0/
status = 0 success
attr: ----f
/> stat80 /hd0/1/дир❦
status = 0 success
attr: ----f
/> stat80 /hd0/1/дир❦/
status = 0 success
attr: ----f
/> stat80 /hd0/1/дир❦/дир11
status = 0 success
attr: ----f
/> stat80 /hd0/1/дир❦/дир11/
status = 0 success
attr: ----f
/> stat80 /hd0/1/❦❦❦
status = 0 success
attr: ----f
/> stat80 /hd0/1/❦❦❦/
status = 0 success
attr: ----f
/> stat80 /hd0/1/❦❦❦/д❦р22
status = 0 success
attr: ----f
/> stat80 /hd0/1/дир3
status = 0 success
attr: ----f
/> stat80 /hd0/1/dir0/file00
status = 0 success
attr: -----
size: 12
/> stat80 /hd0/1/dir0/file00/
status = 0 success
attr: -----
size: 12
/> stat80 /hd0/1/❦❦❦/д❦р22/❦❦
status = 0 success
attr: -----
size: 22
/> stat80 /hd0/1/❦❦❦/д❦р22/❦❦/
status = 0 success
attr: -----
size: 22
/> stat80 /hd0/1/❦❦❦/д❦р22/💗💗
status = 0 success
attr: -----
size: 23
/> stat80 /hd0/1/дир3/файл33
status = 0 success
attr: -----
size: 26
/> stat80 /hd0/1/дир3/файл33/
status = 0 success
attr: -----
size: 26
/> read80 /hd0/1/dir0/file00 0 100 -b
status = 6 end_of_file, count = 12
68656c6c6f5f776f726c640a
/> read80 /hd0/1/dir0/file00/ 0 100 -b
status = 6 end_of_file, count = 12
68656c6c6f5f776f726c640a
/> read80 /hd0/1/❦❦❦/д❦р22/❦❦ 0 100 -b
status = 6 end_of_file, count = 22
d0bfd180d0b8d0b2d0b5d182e29da6d0bcd0b8d1800a
/> read80 /hd0/1/дир3/файл33 0 100 -b
status = 6 end_of_file, count = 26
d0bfd180d0b8d0b2d0b5d182e29da6f09f9297d0bcd0b8d1800a
/> disk_del hd0

View File

@ -0,0 +1,27 @@
disk_add ../img/xfs_v4_unicode.img hd0
stat80 /hd0/1/dir0
stat80 /hd0/1/dir0/
stat80 /hd0/1/дир
stat80 /hd0/1/дир❦/
stat80 /hd0/1/дир❦/дир11
stat80 /hd0/1/дир❦/дир11/
stat80 /hd0/1/
stat80 /hd0/1/❦❦❦/
stat80 /hd0/1/❦❦❦/др22
stat80 /hd0/1/дир3
stat80 /hd0/1/dir0/file00
stat80 /hd0/1/dir0/file00/
stat80 /hd0/1/❦❦❦/др22/
stat80 /hd0/1/❦❦❦/др22/❦❦/
stat80 /hd0/1/❦❦❦/др22/💗💗
stat80 /hd0/1/дир3/файл33
stat80 /hd0/1/дир3/файл33/
read80 /hd0/1/dir0/file00 0 100 -b
read80 /hd0/1/dir0/file00/ 0 100 -b
read80 /hd0/1/❦❦❦/др22/ 0 100 -b
read80 /hd0/1/дир3/файл33 0 100 -b
disk_del hd0

View File

@ -1,17 +1,19 @@
KOFU=../kofu
xfs_tests := $(addsuffix .out, $(basename $(wildcard *\#xfs_*.t)))
s05k_tests := $(addsuffix .out, $(basename $(wildcard *\#s05k_*.t)))
s4k_tests := $(addsuffix .out, $(basename $(wildcard *\#s4k_*.t)))
f30_tests := $(addsuffix .out, $(basename $(wildcard *\#f30_*.t)))
f70_tests := $(addsuffix .out, $(basename $(wildcard *\#f70_*.t)))
f70s0_tests := $(addsuffix .out, $(basename $(wildcard *\#f70s0_*.t)))
f70s1_tests := $(addsuffix .out, $(basename $(wildcard *\#f70s1_*.t)))
f70s5_tests := $(addsuffix .out, $(basename $(wildcard *\#f70s5_*.t)))
lookup_tests := $(addsuffix .out, $(basename $(wildcard *\#lookup_*.t)))
bug_tests := $(addsuffix .out, $(basename $(wildcard *\#bug_*.t)))
xfs_tests := $(addsuffix .out, $(basename $(wildcard *\#xfs_*.t)))
s05k_tests := $(addsuffix .out, $(basename $(wildcard *\#s05k_*.t)))
s4k_tests := $(addsuffix .out, $(basename $(wildcard *\#s4k_*.t)))
f30_tests := $(addsuffix .out, $(basename $(wildcard *\#f30_*.t)))
f70_tests := $(addsuffix .out, $(basename $(wildcard *\#f70_*.t)))
f70s0_tests := $(addsuffix .out, $(basename $(wildcard *\#f70s0_*.t)))
f70s1_tests := $(addsuffix .out, $(basename $(wildcard *\#f70s1_*.t)))
f70s5_tests := $(addsuffix .out, $(basename $(wildcard *\#f70s5_*.t)))
lookup_tests := $(addsuffix .out, $(basename $(wildcard *\#lookup_*.t)))
bug_tests := $(addsuffix .out, $(basename $(wildcard *\#bug_*.t)))
xattr_tests := $(addsuffix .out, $(basename $(wildcard *\#xattr_*.t)))
unicode_tests := $(addsuffix .out, $(basename $(wildcard *\#unicode_*.t)))
all: xfs s05k s4k f30 f70 f70s0 f70s1 f70s5 lookup bug
all: xfs s05k s4k f30 f70 f70s0 f70s1 f70s5 lookup bug xattr unicode
@echo all tests passed
xfs: $(xfs_tests)
@ -24,6 +26,8 @@ f70s1: $(f70s1_tests)
f70s5: $(f70s5_tests)
lookup: $(lookup_tests)
bug: $(bug_tests)
xattr: $(xattr_tests)
unicode: $(unicode_tests)
%.out: %.ref %.t
$(KOFU) < $(word 2, $^) > $@