Commit Graph

47 Commits

Author SHA1 Message Date
Kent Overstreet
fedea00623 Minor cleanup 2015-03-15 15:50:07 -07:00
Slava Pestov
7ae2165053 bcache-tools: update for superblock changes
Change-Id: I660fef1366005377041cac5d75771d2fdc8c0824
2015-02-13 13:45:53 -08:00
Jacob Malevich
eb1d49d3f1 bcacheadm: fix capacity command
regression from 5730e47b

Signed-off-by: Jacob Malevich <jam@daterainc.com>

    Issue DAT-1977

Change-Id: I598ca9e5623fde441bb842580c2494fd03316f00
2015-02-12 14:05:52 -08:00
Jacob Malevich
ffb068c2b4 bcacheadm: Handle missing arg in rm-dev
Signed-off-by: Jacob Malevich <jam@daterainc.com>

    Issue DAT-1978

Change-Id: Iec1252f39bb1931ec4544b56b7db24c43253b8cd
2015-02-10 14:39:56 -08:00
Kent Overstreet
2859e5d780 Add option to set btree node size, give it sane default
Change-Id: Ic6d0a79b8a33c8c17422e0875d9e8d3fb3ef6d98
2015-02-09 21:51:56 -08:00
Jacob Malevich
3fa318e8b7 bcacheadm: add "list-cachesets --internal_uuid UUID" option
This shows the superblock set_uuid, given the user_uuid.

Signed-off-by: Jacob Malevich <jam@daterainc.com>

    Issue DAT-1913

Change-Id: If5f81427ac02bceeb609ae119f044de3fb5a0d77
2015-02-02 17:37:27 -08:00
jenkins
ba06f99a9c Merge branch 'master' of ssh://gits.daterainc.com:2984/project/2013.KERNEL/bcache-tools
Issue DAT-
2015-01-29 18:11:23 -08:00
Kent Overstreet
c6fd0321f8 Revert "if cache_set uuid is given in format command, then put the same"
This reverts commit 38aa84d04b - previous patch
fixed this correctly.

Change-Id: I76436860a85223883efcdbb1f91c4ff874a9f3b0
2015-01-29 22:58:21 +00:00
Kent Overstreet
2ef1c983d5 Display new user_uuid instead of internal cache set uuid
Change-Id: I9166876dba44de96f8e3f2da8f16728cbb57540a
2015-01-29 22:58:15 +00:00
Raghu Krishnamurthy
b0ed54d843 Do not stop scanning on a cache-device link is missing since
it might not exists when a cache disk device is removed and
further cache device might be active.

Also handle the case where cache set might not be registered
and the status should just believe what the super block
says and not mark the disk as missing.

This part of code needs optimization but that is a separate
change.

    Issue DAT-1859
    Issue DAT-1860

Change-Id: I7eb8e8ff517eae240fde30c70b3ac90aa9a50ed6
2015-01-28 21:53:55 -08:00
Raghu Krishnamurthy
38aa84d04b if cache_set uuid is given in format command, then put the same
information in both set-uuid and user-uuid until support is added
in the CLI to display user-uuid as part of query-devs and in
format command to accept set_uuid and user_uuid.

    Issue DAT-

Change-Id: I6f2306d858211933cb783f0efe8fe0ade64dd312
2015-01-28 16:59:38 -08:00
Kent Overstreet
5730e47b6f Cleanup, rip out more code, fix compiler warnings
Change-Id: I76b410dc700a917d2717b1ceda0df061a1599144
2015-01-27 13:45:02 -08:00
Kent Overstreet
3301c8dd52 Update for bcache superblock changes
Also, drop make-bcache - it's superceded by bcacheadm

Change-Id: I88ee25a1c13f2cbb0b0efa6e01bdca3f069bab62
2015-01-21 23:11:47 -08:00
jenkins
7243fbd22d Merge branch 'master' of ssh://gits.daterainc.com:2984/project/2013.KERNEL/bcache-tools
Issue DAT-
2015-01-21 00:44:46 -08:00
Slava Pestov
34c87b0e98 bcacheadm: add --writearound flag for testing, probably not useful
Change-Id: Ia4a2125a50d7b102791b8fc64b48bd102d8cdc89
2015-01-20 22:18:52 -08:00
Slava Pestov
15c8235aa4 bcacheadm: fix --cache_replacement_policy flag
Change-Id: Ic1f97df531345e1c4cb9a83f0fc5463718f56c60
2015-01-15 21:41:40 -08:00
Kent Overstreet
2f0a24917b update for bcache header changes
Change-Id: I5c64d438dac8bc28411f9a25e1be711477a3af80
2015-01-15 19:27:21 -08:00
Jacob Malevich
b765c10d0c bcacheadm: ioctl refactor
add-devs, rm-devs, and set-failed no longer need the
cacheset uuid. The cacheset already comes with the bcache_extent0
chardev.

Change-Id: I32572e865361d3c6ce759cf53f19d3f0e4cf04ce
Signed-off-by: Jacob Malevich <jam@daterainc.com>
2015-01-14 16:36:49 -08:00
Jacob Malevich
aa3e2d589d bcacheadm: fix status command
Don't say that the device is missing unless it is still showing
"active" state.

Change-Id: I708d7719c6f6804cd06e75cbadf7bea36ac4b62d
Signed-off-by: Jacob Malevich <jam@daterainc.com>
2015-01-13 17:22:20 -08:00
Jacob Malevich
47013b3d06 bcacheadm: set disk-failed command
Given a cacheset uuid and a device uuid, set that devices
member_info to CACHE_FAILED.

Change-Id: Ideb2034b1deb5fd11efda67f85b82d8a49fe71e4
Signed-off-by: Jacob Malevich <jam@daterainc.com>
2015-01-13 13:51:21 -08:00
Jacob Malevich
4304193d31 bcacheadm: fix status for forcefully pulled devs
Cross reference the superblock with the highest sequence number
to sysfs. If there is a device shown still active in the superblock,
mark it as 'missing'.

Fixes DAT-1758

Change-Id: I13098bbde6bd4b0b402c74ed648160576605311c
Signed-off-by: Jacob Malevich <jam@daterainc.com>
2015-01-13 13:51:05 -08:00
Jacob Malevich
f8d3f7da8f bcacheadm: Fix bcacheadm status segfault if no devs given
Fixes DAT-1655

Change-Id: I79cfc78fb8513f3e751332d65310d65020c15e3e
Signed-off-by: Jacob Malevich <jam@daterainc.com>
2014-12-19 15:35:40 -08:00
Jacob Malevich
be4e8676b6 Merge ssh://gits.daterainc.com:2984/project/2013.KERNEL/bcache-tools 2014-12-19 15:21:51 -08:00
Jacob Malevich
ff6acc10b4 bcacheadm: fix status and query-devs
Previously we were reading old superblocks stuck in the cache.
Pass in O_DIRECT when opening the device. This requires that
the dest buffer be memaligned.
If we are unable to read the entire superblock then increase
the buffer and try again.

Also since we now have to alloc the sb, make sure it is freed
everywhere in bcacheadm.

Fixes DAT-1609 DAT-1626

Change-Id: I04b5337b992a8569809835b5826a2656df753214
Signed-off-by: Jacob Malevich <jam@daterainc.com>
2014-12-19 14:44:24 -08:00
Jacob Malevich
91ba18738e bcacheadm: add capacity command
prints the device capacity, and free space for a cacheset

example:
bcacheadm capacity -u UUID --devs

Device Name    Capacity (512 Blocks)    Free (512 Blocks)
/dev/sdb       1048576.00               1024128.00
/dev/sdc       1048576.00               1024128.00
/dev/sdd       1048576.00               1024128.00
Total          3145728.00               3072384.00

Also did some bcacheadm stats refactoring.

Change-Id: Iff5562191478c5fd9f03399a9479d3d75740904d
Signed-off-by: Jacob Malevich <jam@daterainc.com>
2014-12-19 14:43:34 -08:00
jenkins
4c7c1f088e Merge branch 'master' of ssh://gits.daterainc.com:2984/project/2013.MAIN/bcache-tools 2014-12-13 05:04:36 -08:00
Jacob Malevich
6401e32229 bcacheadm: add query-devs --brief command
bcacheadm query-devs --brief /dev/sdb /dev/sdc /dev/sdd
will output table showing only the dev name, dev uuid,
server uuid, and cluster uuid for each device

Change-Id: I47a375c9a8f9284942befa0151fae32b0b856a53
Signed-off-by: Jacob Malevich <jam@daterainc.com>
2014-12-11 14:12:21 -08:00
Jacob Malevich
8389c1f5da bcacheadm: add command to modify sysfs attributes for
a cache or cacheset

bcacheadm modify -u csetuuid -d cacheuuid attr val
bcacheadm modify -u csetuuid attr val
bcacheadm modify --list

Change-Id: I7b8ddfb6a7cd12a7bc71870dcc10787a7d3d9e8d
Signed-off-by: Jacob Malevich <jam@daterainc.com>
2014-12-11 14:12:16 -08:00
Jacob Malevich
52789b5673 bcacheadm: fix status command
previously it wasn't properly looking through the list of
member info in the cache that has the highest seq.

Change-Id: I2a6ebf6bd0814055ec1247d0f4d79dab683115d3
Signed-off-by: Jacob Malevich <jam@daterainc.com>
2014-12-10 14:19:17 -08:00
Jacob Malevich
b375ed9755 bcacheadm: add-devs and rm-dev options
Option to add multiple devices and remove single devices.

bcacheadm add-devs --set=uuid <list of devices>
bcacheadm rm-dev <dev>

Change-Id: I4f0a287c02dfad76d8263554e455c408191ea7ba
Signed-off-by: Jacob Malevich <jam@daterainc.com>
2014-12-09 18:29:20 -08:00
Raghu Krishnamurthy
6145b37851 Set the label field in the cache set superblock if label is
specified.

Change-Id: Ic1b2d45c9544acfbabd8ee99cfe59c4ae6fb4183
2014-12-08 19:23:39 -08:00
Kent Overstreet
7916b2eb3b bcacheadm fixes
Change-Id: I3f6024d54aee263ef843705a0e9a02869e2a53e9
2014-12-05 19:20:03 -08:00
Jacob Malevich
7763a86ca8 Remove exit points from libbache and return error messages instead.
Change-Id: Ibd238bb63354dae841c2a70e5ded550b3c603d4b
Signed-off-by: Jacob Malevich <jam@daterainc.com>
2014-11-25 14:19:28 -08:00
Jacob Malevich
0098187201 Fix string parsing
Change-Id: I0edd8f1e247ae802cdccf871a40b50d8a8714433
Signed-off-by: Jacob Malevich <jam@daterainc.com>
2014-11-24 15:53:35 -08:00
Jacob Malevich
7a80b660c2 bcacheadm unregister devices
uses unregister ioctl to unregister a cacheset that the device
belongs to

Change-Id: I01772de3471888c4951f050b3e92f41b58c5d103
Signed-off-by: Jacob Malevich <jam@daterainc.com>
2014-11-21 14:42:07 -08:00
Jacob Malevich
6ad19a812b bcacheadm: add ability to find a dev uuid within a cacheset
simplifies input for finding stats for a single dev

Change-Id: I5d879aaa8cb68aaaedabd2bc780fbea4994e2541
Signed-off-by: Jacob Malevich <jam@daterainc.com>
2014-11-18 14:45:18 -08:00
Jacob Malevich
4603dcf36b Option for returning only the uuid of the dev when doing a
query-dev

Change-Id: Ia055da0516bc7baac836642fa1405b77adfc5139
Signed-off-by: Jacob Malevich <jam@daterainc.com>
2014-11-14 11:24:02 -08:00
Jacob Malevich
28271115d7 bcache query-dev fixes, and don't print the sb out for status
Change-Id: I909ac15ca32a9cdecd6c7455e884d14f30ab0188
Signed-off-by: Jacob Malevich <jam@daterainc.com>
2014-11-13 17:31:39 -08:00
Jacob Malevich
3fda6adc19 bcacheadm: list-cachesets --list-devs option
lists the devices in each cacheset

Change-Id: Ie3beb38203eefc3ab64b2a3d37652964f7021e54
Signed-off-by: Jacob Malevich <jam@daterainc.com>
2014-11-13 17:08:20 -08:00
Jacob Malevich
7d34cf342e bcacheadm: register bcache ioctl already takes an argv, no need to parse it
Change-Id: I0295ebde998c038feb40332ea303935035b8e2bd
Signed-off-by: Jacob Malevich <jam@daterainc.com>
2014-11-13 12:46:03 -08:00
Jacob Malevich
34f54790d5 bcacheadm: fix tiering and backing device bugs
TODO: Support multiple devices for a single -C or -B flag

Change-Id: I73b18a39a0e0ff564600c2fc7386a785d3a10870
Signed-off-by: Jacob Malevich <jam@daterainc.com>
2014-11-12 17:51:42 -08:00
Jacob Malevich
552dc9fa7d bcacheadm: format bug fixes
bcacheadm format is now working in replacement of make-bcache

Change-Id: Ib152dde3b8dc1418d1508020529dd58e4cf5d222
Signed-off-by: Jacob Malevich <jam@daterainc.com>
2014-11-12 15:22:38 -08:00
Jacob Malevich
bae9ea7bbd bcacheadm stats, add flags
-c cache# displays stats for a specific cache in the cacheset
--stats-five-min,hour,day,total specific stats for the cacheset

Change-Id: I436d36d0853a250fe773573126c7a50a7251c72d
Signed-off-by: Jacob Malevich <jam@daterainc.com>
2014-11-06 18:11:31 -08:00
Jacob Malevich
269761b11f bcacheadm status [FLAGS] <list of stats>
FLAGS:
--list	-list all stats in the uuid directory
--all	-list all stats/values in the uuid directory
--uuid	-must pass in a uuid for the cacheset

TODO:	-subdirectory stats for individual caches
	-subdirectory stats for over time stats

Change-Id: Ic7126a511fb17aa8c9ac7bf89e014ddbb719f46d
Signed-off-by: Jacob Malevich <jam@daterainc.com>
2014-11-06 15:36:38 -08:00
Jacob Malevich
637b614630 bcacheadm status <list of devs>
provides status for the newest sb version for each tier for all
the devs passed in

Change-Id: Ib6e5b08e65b5c36e7b1af0e9806efc39d069f94c
Signed-off-by: Jacob Malevich <jam@daterainc.com>
2014-11-05 17:45:57 -08:00
Jacob Malevich
bc69c8fe04 bcacheadm add list-cachesets and query-devs
Change-Id: Ie2bc7ba8293d1d493c0a215119456e4bb9e659aa
Signed-off-by: Jacob Malevich <jam@daterainc.com>
2014-10-27 17:37:25 -07:00
Jacob Malevich
82ac2a0338 bcacheadm tool
bcacheadm is a combination of make-bcache, probe-bcache, bcache-super-show, and bcachectl(register).

Change-Id: Ia4f4cdd5f882516358eb0e26a75296d2103af1d0
Signed-off-by: Jacob Malevich <jam@daterainc.com>
2014-10-27 17:37:05 -07:00