Commit Graph

190 Commits

Author SHA1 Message Date
Zach Brown
ec782fff8d scoutfs-utils: meta and data free blocks
The super block now tracks free metadata and data blocks in separate
counters.

Signed-off-by: Zach Brown <zab@versity.com>
2020-02-25 12:04:17 -08:00
Zach Brown
6b66e583f2 scoutfs-utils: fix printing block hdr fields
The block header printing helper had the identifiers for the blkno and
seq in the format string swapped.

Signed-off-by: Zach Brown <zab@versity.com>
2020-02-25 12:04:17 -08:00
Zach Brown
ff436db49b scoutfs-utils: add support for radix alloc
Add support for initializing radix allocator blocks that describe free
space in mkfs and support for printing them out.

Signed-off-by: Zach Brown <zab@versity.com>
2020-02-25 12:04:17 -08:00
Zach Brown
34c3d903d9 scoutfs-utils: add round_down() and flsll()
Add quick helpers for these two kernel functions.

Signed-off-by: Zach Brown <zab@versity.com>
2020-02-25 12:04:17 -08:00
Zach Brown
794277053f scoutfs-utils: add a few more man pages
Add an overview man page for scoutfs and add a manpage for the userspace
utility and its commands.

Signed-off-by: Zach Brown <zab@versity.com>
2020-01-20 14:25:16 -08:00
Zach Brown
920fca752c scoutfs-utils: have xattr use max val size
Signed-off-by: Zach Brown <zab@versity.com>
2020-01-17 11:22:04 -08:00
Zach Brown
e0a49c46a7 scoutfs-utils: add packed extents and bitmaps
Signed-off-by: Zach Brown <zab@versity.com>
2020-01-17 11:22:04 -08:00
Zach Brown
c87a9f3a07 scoutfs-utils: resurrect bitops
We've had these in the past and we need them again for the block
allocator item bitmaps.

Signed-off-by: Zach Brown <zab@versity.com>
2020-01-17 11:22:04 -08:00
Zach Brown
3776c18c66 scoutfs-utils: switch to btree forest
Remove all the lsm code from mkfs and print, replacing
it with the forest of btrees.

Signed-off-by: Zach Brown <zab@versity.com>
2020-01-17 11:22:04 -08:00
Zach Brown
70efa2f905 scoutfs-utils: add statfs wrapper
Add a scoutfs command wrapper around the statfs_moe ioctl.  It's the
same as the stat_more ioctl but has different fields and a different
ioctl.

Signed-off-by: Zach Brown <zab@versity.com>
2019-08-20 15:52:17 -07:00
Zach Brown
7cd8738add scoutfs-utils: net uses rid instead of node_id
Now that networking is identifing clients by their rid some persistent
structures are using that to store records of clients.

Signed-off-by: Zach Brown <zab@versity.com>
2019-08-20 15:52:17 -07:00
Zach Brown
3670a5b80d scoutfs-utils: remove quorum slot config
The format no longer has statically configured named slots.  The only
persistent config is the number of monts that must be voting to reach
quorum.  The quorum blocks now have a log of successfull elections.

Signed-off-by: Zach Brown <zab@versity.com>
2019-08-20 15:52:17 -07:00
Zach Brown
fc15b816b0 scoutfs-utils: update format for rid
Signed-off-by: Zach Brown <zab@versity.com>
2019-08-20 15:52:17 -07:00
Zach Brown
2dc611a433 scoutfs-utils: update sysfs dir to use fr identity
Signed-off-by: Zach Brown <zab@versity.com>
2019-08-20 15:52:17 -07:00
Zach Brown
adadd51815 scoutfs-utils: update for listxattr_hidden
listxattr_raw was renamed to listxattr_hidden to more accurately
describe the only reason that it exists.

Signed-off-by: Zach Brown <zab@versity.com>
2019-06-28 10:23:59 -07:00
Zach Brown
9a087be46c scoutfs-utils: update ioctl _IO usage
Signed-off-by: Zach Brown <zab@versity.com>
2019-06-28 10:23:59 -07:00
Zach Brown
8597fd0bfc scoutfs-utils: naturally align ioctl structs
Use natuturally aligned and explicitly padded ioctl structs.

Signed-off-by: Zach Brown <zab@versity.com>
2019-06-27 11:39:19 -07:00
Zach Brown
674224d454 scoutfs-utils: hidden and indexed xattrs
Add support for the xattr tags which can hide or index xattrs by their
name.  We get an item that indexes inodes by the presence of an xattr, a
listxattr_raw ioctl which can show hidden xattrs, and an ioctl that
finds inodes which have an xattr.

Signed-off-by: Zach Brown <zab@versity.com>
2019-06-24 10:08:35 -07:00
Zach Brown
8d505668fe scoutfs-utils: add quorum block listening flag
Signed-off-by: Zach Brown <zab@versity.com>
2019-05-30 15:00:56 -07:00
Zach Brown
da185b214b scoutfs: return non-zero status on error
The error return conventions were confused, resulting in main exiting
with success when command execution failed.

Signed-off-by: Zach Brown <zab@versity.com>
2019-05-30 13:45:57 -07:00
Zach Brown
336a6a155d scoutfs-utils: add setattr more command
Add a command that wraps the setattr_more ioctl.

Signed-off-by: Zach Brown <zab@versity.com>
2019-05-30 13:45:57 -07:00
Zach Brown
ffe15c2d82 scoutfs-utils: add string parsing functions
We're starting to collect a few of these.  Let's put them in one place.

Signed-off-by: Zach Brown <zab@versity.com>
2019-05-30 13:45:57 -07:00
Zach Brown
57da5fae4c scoutfs-utils: add waiting ioctl command
Add a quick command that lists the results of the new waiting ioctl.

Signed-off-by: Zach Brown <zab@versity.com>
2019-05-21 11:33:42 -07:00
Zach Brown
77bd0c20ab scoutfs-utils: add flags to quorum block
Signed-off-by: Zach Brown <zab@versity.com>
2019-04-12 10:54:20 -07:00
Zach Brown
514418421c scoutfs-utils: add support for unmount_barrier
Signed-off-by: Zach Brown <zab@versity.com>
2019-04-12 10:54:20 -07:00
Zach Brown
a9b46213b3 scoutfs-utils: remove ctrstat command
Remove the ctrstat command.  It was built back when we had a handful of
counters.  It's output format doesn't make much sense now that we have
an absolute ton of counters.  If we want fancy counter output in the
future we'd add it to the counters command.

Signed-off-by: Zach Brown <zab@versity.com>
2019-04-12 10:54:20 -07:00
Zach Brown
841fbc1b66 scoutfs-utils: add counters command
Add a command to output the sysfs counters for a volume, with the option
of generating a table that fits the terminal.

Signed-off-by: Zach Brown <zab@versity.com>
2019-04-12 10:54:20 -07:00
Zach Brown
3c9eeeb2ef scoutfs-utils: add transaction seq btree
Signed-off-by: Zach Brown <zab@versity.com>
2019-04-12 10:54:20 -07:00
Zach Brown
587760edb3 scoutfs-utils: add clock sync id to messages
Signed-off-by: Zach Brown <zab@versity.com>
2019-04-12 10:54:20 -07:00
Zach Brown
3d64c46fcd scoutfs-utils: add lock clients btree
Show the lock client btree entries in print.

Signed-off-by: Zach Brown <zab@versity.com>
2019-04-12 10:54:20 -07:00
Zach Brown
4c611474e8 scoutfs-utils: update for reliable messaging
Signed-off-by: Zach Brown <zab@versity.com>
2019-04-12 10:54:20 -07:00
Zach Brown
64bdda717c scoutfs-utils: move super id to block hdr magic
Move the magic value that identifies the super block into the block
header and use it for btree blocks as well.

Signed-off-by: Zach Brown <zab@versity.com>
2019-04-12 10:54:20 -07:00
Zach Brown
dd117593da scoutfs-utils: update format for locking service
Update the format header to reflect that the kernel now uses a locking
service instead of using an fs/dlm lockspace.  Nothing in userspace uses
locking.

Signed-off-by: Zach Brown <zab@versity.com>
2019-04-12 10:54:20 -07:00
Zach Brown
02d2edb467 scoutfs-utils: remove super server_addr
The server no longer stores the address to connect to in the super
block.  It's now stored in the quorum config and voting blocks.

Signed-off-by: Zach Brown <zab@versity.com>
2019-04-12 10:54:20 -07:00
Zach Brown
ea969a5dde scoutfs-utils: update format.h for quorum
Signed-off-by: Zach Brown <zab@versity.com>
2019-04-12 10:54:20 -07:00
Zach Brown
f59dfe8b73 scoutfs-utils: make scoutfs binary executable
The %defattr in the %files section was accidentally setting the
installed scoutfs binary's mode to 644.

Signed-off-by: Zach Brown <zab@versity.com>
2018-09-14 16:18:33 -07:00
Zach Brown
266b6d8bdd scoutfs-utils: add a README.md
Add a markdown README for github.

Signed-off-by: Zach Brown <zab@versity.com>
2018-09-14 13:52:05 -07:00
Zach Brown
92f22358a7 scoutfs-utils: add rpm build make dist helpers
Add make targets to build a spec file and tarball with a version based
on a git tag.

Signed-off-by: Zach Brown <zab@versity.com>
2018-09-14 13:51:09 -07:00
Zach Brown
bbfa71361f scoutfs-utils: compaction request format update
Signed-off-by: Zach Brown <zab@versity.com>
2018-08-28 15:34:33 -07:00
Zach Brown
bf014a4c57 scoutfs-utils: update format network requests
We updated the format header when relaxing the restrictions on duplicate
request message processing.

Signed-off-by: Zach Brown <zab@versity.com>
2018-08-28 15:34:33 -07:00
Zach Brown
078d2f6073 scoutfs-utils: update format for greeting node_id
Signed-off-by: Zach Brown <zab@versity.com>
2018-08-28 15:34:33 -07:00
Zach Brown
7abf5c1e2b scoutfs-utils: calculate segment crc in mkfs
Signed-off-by: Zach Brown <zab@versity.com>
2018-08-21 13:27:37 -07:00
Zach Brown
c3ad8282a3 scoutfs-utils: update net format
Signed-off-by: Zach Brown <zab@versity.com>
2018-07-27 09:50:29 -07:00
Zach Brown
f368686b89 scoutfs-utils: add net free extents
Signed-off-by: Zach Brown <zab@versity.com>
2018-07-05 16:19:39 -07:00
Zach Brown
ea2ec838ec scoutfs-utils: use one super and verify its crc
Signed-off-by: Zach Brown <zab@versity.com>
2018-06-29 15:56:36 -07:00
Zach Brown
51a48fbbb6 scoutfs-utils: add TeX paper
Add the start of a paper that documents the scoutfs design.

Signed-off-by: Zach Brown <zab@versity.com>
2018-06-29 14:42:08 -07:00
Zach Brown
b96feaa5b0 scoutfs-utils: add scoutfs_net_extent to format.h
Signed-off-by: Zach Brown <zab@versity.com>
2018-06-29 14:42:08 -07:00
Zach Brown
35b5f1f9c5 scoutfs-utils: add fallocate corruption source
Signed-off-by: Zach Brown <zab@versity.com>
2018-06-29 14:42:08 -07:00
Zach Brown
0a62ffbc2f scoutfs-utils: buffer staging
The stage command was trivially implemented by allocating, reading, and
staging the entire region in buffer.  This is unreasonable for large
file regions.  Implement the stage command by having it read each
portion of the region into a smaller buffer, starting with a meg.

Signed-off-by: Zach Brown <zab@versity.com>
2018-06-29 14:42:08 -07:00
Zach Brown
445ac62172 scoutfs-utils: add extent corruption sources
Signed-off-by: Zach Brown <zab@versity.com>
2018-06-29 14:42:08 -07:00