Changeset View
Changeset View
Standalone View
Standalone View
sys/boot/zfs/zfs.c
Show First 20 Lines • Show All 134 Lines • ▼ Show 20 Lines | zfs_read(struct open_file *f, void *start, size_t size, size_t *resid /* out */) | ||||
int rc; | int rc; | ||||
rc = zfs_stat(f, &sb); | rc = zfs_stat(f, &sb); | ||||
if (rc) | if (rc) | ||||
return (rc); | return (rc); | ||||
n = size; | n = size; | ||||
if (fp->f_seekp + n > sb.st_size) | if (fp->f_seekp + n > sb.st_size) | ||||
n = sb.st_size - fp->f_seekp; | n = sb.st_size - fp->f_seekp; | ||||
rc = dnode_read(spa, &fp->f_dnode, fp->f_seekp, start, n); | rc = dnode_read(spa, &fp->f_dnode, fp->f_seekp, start, n); | ||||
if (rc) | if (rc) | ||||
return (rc); | return (rc); | ||||
if (0) { | if (0) { | ||||
int i; | int i; | ||||
for (i = 0; i < n; i++) | for (i = 0; i < n; i++) | ||||
putchar(((char*) start)[i]); | putchar(((char*) start)[i]); | ||||
▲ Show 20 Lines • Show All 336 Lines • ▼ Show 20 Lines | if (ret == 0) { | ||||
table = ptable_open(&pa, mediasz / pa.secsz, pa.secsz, | table = ptable_open(&pa, mediasz / pa.secsz, pa.secsz, | ||||
zfs_diskread); | zfs_diskread); | ||||
if (table != NULL) { | if (table != NULL) { | ||||
ptable_iterate(table, &pa, zfs_probe_partition); | ptable_iterate(table, &pa, zfs_probe_partition); | ||||
ptable_close(table); | ptable_close(table); | ||||
} | } | ||||
} | } | ||||
close(pa.fd); | close(pa.fd); | ||||
return (0); | return (ret); | ||||
} | } | ||||
/* | /* | ||||
* Print information about ZFS pools | * Print information about ZFS pools | ||||
*/ | */ | ||||
static void | static void | ||||
zfs_dev_print(int verbose) | zfs_dev_print(int verbose) | ||||
{ | { | ||||
▲ Show 20 Lines • Show All 192 Lines • Show Last 20 Lines |