Alasdair Kergon
7f3859bb5c
vgdisplay
2001-11-19 15:20:50 +00:00
Patrick Caulfield
afe46c849b
size_ts aren't really pointers but there are no format specifiers for them,
...
so this will just have to do.
2001-11-16 11:37:45 +00:00
Patrick Caulfield
f96175e75e
Fix format characters for printing size_ts
2001-11-16 10:56:11 +00:00
Alasdair Kergon
d9bc7ffe61
lvrename (without reactivation)
2001-11-15 17:27:45 +00:00
Patrick Caulfield
2fa9bf7052
Use POSIX defined PRIu64 for formatting 64 bit unsigned integer types
2001-11-15 15:18:53 +00:00
Patrick Caulfield
78125be9c2
Use FMT_64 to format 64bit types
2001-11-15 14:27:51 +00:00
Patrick Caulfield
1a5123da94
define FMT_64 to be the right format string for 64-bit types a la GFS
2001-11-15 14:27:34 +00:00
Alasdair Kergon
5389c987a3
Use inttypes.h
2001-11-15 14:14:03 +00:00
Patrick Caulfield
79b5666abe
#include <string.h> for memset
2001-11-15 11:46:00 +00:00
Alasdair Kergon
9b7742bb36
More LV-related tidying. lvdisplay without args now shows all LVs.
2001-11-14 18:38:07 +00:00
Alasdair Kergon
6e74833c6c
Avoid generating duplicate lv names
2001-11-14 14:12:01 +00:00
Alasdair Kergon
5238b63f1a
Miscellaneous tidying
2001-11-14 13:52:38 +00:00
Joe Thornber
e55ae5d32e
o lvcreate no longer needs the explicit -n flag
...
o disabled zeroing of lv until bug's worked out
2001-11-14 12:07:37 +00:00
Joe Thornber
29aa6d5850
o Added dev_open and dev_close functions
...
o Changed disk-rep to use these
o if NDEBUG is not defined the dev_cache will check for open devices on
teardown.
I was hoping this would speed things up. But I'm still getting:
reti:/home/joe/sistina/LVM2/tools# time ./lvm vgchange -a n
Volume group vg0 successfully changed
real 0m5.751s
user 0m0.060s
sys 0m0.070s
even though I have only 1 device with the vg on it passing the filters.
2001-11-14 10:01:52 +00:00
Joe Thornber
78fc479a69
o Deal with sparse lv arrays (on disk)
...
o new fn. dev_zero which zero's an area of a device
2001-11-13 18:52:52 +00:00
Alasdair Kergon
e68b5e3029
o lvdisplay now shows LE / PV map
...
o fix LE allocation when first PV is full
o reduce VG free_count when removing PVs from VG
2001-11-13 17:53:06 +00:00
Joe Thornber
30f7ee62e8
o Put underscore between vg and lv name.
2001-11-13 16:14:54 +00:00
Alasdair Kergon
03a8a07d67
Merge lvreduce & lvextend into lvresize.
2001-11-13 14:17:50 +00:00
Joe Thornber
d53f88d7af
o Stuff
2001-11-12 19:28:50 +00:00
Joe Thornber
4daacc38cb
o Add ALLOC_SIMPLE
2001-11-12 17:55:05 +00:00
Alasdair Kergon
cf4a4a1fa8
Remove hard-coding and create device-mapper directory if required
2001-11-12 17:21:25 +00:00
Joe Thornber
ac61645c2d
o if any pattern rejects a device, and there were no accepts then reject !
2001-11-12 17:06:33 +00:00
Joe Thornber
f7cbb38dbb
o check result of an allocation
2001-11-12 16:00:52 +00:00
Alasdair Kergon
277237805a
iospace restructured
2001-11-12 15:10:01 +00:00
Joe Thornber
09bc639dbf
o add fs.c to the Makefile
2001-11-12 13:02:06 +00:00
Joe Thornber
66b0745933
o add uplink from vg to cmd_context
2001-11-12 12:23:10 +00:00
Joe Thornber
f7a14956d8
o Plug in fs_(add|del)_lv
2001-11-12 12:20:58 +00:00
Joe Thornber
2107f48208
o Split struct io_space into:
...
struct format_handler - format methods
struct format_instance - links instance data, methods, and cmd
struct cmd_context - dev_dir, memory allocator, device filter
2001-11-12 12:16:57 +00:00
Joe Thornber
3c02236767
o Compile errors
2001-11-12 11:48:31 +00:00
Joe Thornber
32ddb2ed5f
o Ready for testing
2001-11-12 11:42:29 +00:00
Alasdair Kergon
7858f6fb16
o Added lvextend
...
o Full signed arguments to lvreduce/lvextend
o Consistent lv_number/pe map use
o Populate pv->pe_allocated
o Fixes for allocation/writing of multiple LVs
2001-11-09 22:01:04 +00:00
Joe Thornber
4f0a4a6a7a
sync only, not ready yet
2001-11-09 08:48:22 +00:00
Alasdair Kergon
94b8220f6a
lvdisplay & lvreduce
2001-11-08 16:15:58 +00:00
Alasdair Kergon
4f7a219dac
o Always set LVM_READ.
...
o Avoid duplicate deallocation.
2001-11-07 22:47:43 +00:00
Joe Thornber
2ba80b436f
o Added lvs_in_vgs_opened
2001-11-07 15:02:07 +00:00
Joe Thornber
801495c0f7
o pool_empty was very wrong
2001-11-07 14:11:20 +00:00
Joe Thornber
37ed70b9ea
o Another pass at the activation code
2001-11-07 11:51:42 +00:00
Alasdair Kergon
642c2e964b
lvcreate
2001-11-06 19:02:26 +00:00
Joe Thornber
c84cc3847c
o lv_extend
2001-11-06 12:01:46 +00:00
Joe Thornber
2cffd7d4e1
o Factor _allocate out for use by lv_extend
2001-11-06 11:31:29 +00:00
Joe Thornber
15e35a737c
o lv_reduce
...
o pv_maps wasn't taking a list of acceptable pvs
2001-11-06 11:19:33 +00:00
Joe Thornber
ed0502e98b
o Contiguous allocation
2001-11-06 10:55:01 +00:00
Joe Thornber
dd4e3f9efc
o lv_manip.c will contain the code for lv_create, lv_extend and lv_reduce.
2001-11-06 10:29:56 +00:00
Alasdair Kergon
1138def67f
Reinstate size of lv
2001-11-05 18:07:44 +00:00
Joe Thornber
242019fdf4
o code for building free area lists on a pv. Compiles but not run.
2001-11-05 16:41:38 +00:00
Joe Thornber
80f9662b05
o adjacent extents are now merged into a single target when activating.
2001-11-05 13:37:13 +00:00
Alasdair Kergon
9277853f07
lvcreate prototype
2001-11-05 13:06:03 +00:00
Joe Thornber
ab269099a7
o build lv name from <vg>_<lv>
2001-11-02 16:45:44 +00:00
Alasdair Kergon
f047219b23
Link in the activation library.
2001-11-02 16:28:04 +00:00
Joe Thornber
ae2bb66535
o First pass at activation
2001-11-02 13:45:05 +00:00
Alasdair Kergon
0a5e4a1442
o Changes to activation interface
...
o Add pointer lv->vg
o Some naming tweaks to improve clarity
2001-10-31 17:59:52 +00:00
Joe Thornber
1b9fcf48b1
o LGPL list implementation
2001-10-31 12:47:01 +00:00
Joe Thornber
b892f8ecb6
o random little fixes
2001-10-30 17:53:21 +00:00
Joe Thornber
dc6e03dc5b
o Add read_ahead and stripes to struct logical_volume
2001-10-29 15:34:56 +00:00
Alasdair Kergon
a352490f88
prefix & vgname in lvname
2001-10-29 15:28:00 +00:00
Alasdair Kergon
cfd658dab0
lvremove
2001-10-29 13:52:23 +00:00
Joe Thornber
aebf566c17
o rfilter was no longer accepting by default
2001-10-25 18:12:44 +00:00
Joe Thornber
d7c5efe663
o was freeing memory from the wrong pool
2001-10-25 15:24:35 +00:00
Alasdair Kergon
a4c0d9c2e4
o fopen error message
...
o debug options in makefile
2001-10-25 15:07:26 +00:00
Joe Thornber
c9a97a795a
o pfilter stores results for all aliases.
2001-10-25 14:51:51 +00:00
Joe Thornber
c3ceee769f
o It's a bit of a hack, but the regex filter now makes sure a device path
...
that passed the filter is at the front of the aliases list.
2001-10-25 14:41:28 +00:00
Joe Thornber
5e610278ad
o rfilter now checks all aliases for a match
2001-10-25 14:19:39 +00:00
Joe Thornber
c7f0b573ac
o use dev_name(dev) to get the name of a device, this operation is cheap
...
since it just get's the first alias.
2001-10-25 14:04:18 +00:00
Joe Thornber
3cfae6cfce
o Remove a couple of warnings, and one bug in ttree. Spotted by the optimiser
2001-10-25 13:08:29 +00:00
Joe Thornber
11f0a12ed8
o Shuffle the keys to stop degeneracy.
2001-10-25 12:38:18 +00:00
Joe Thornber
b27957a686
o Trivial binary tree
2001-10-25 11:38:19 +00:00
Joe Thornber
890b537974
o added aliases list to struct device.
2001-10-25 11:34:55 +00:00
Joe Thornber
e1e529fae1
o Merged common code between hash_destroy and hash_wipe.
2001-10-25 08:31:43 +00:00
Alasdair Kergon
d2393d23ee
persistent cache fully incorporated. Goodbye to scanning /dev/cdrom :-)
2001-10-24 17:53:50 +00:00
Alasdair Kergon
4790fce2ad
persistent filter & some log message changes
2001-10-23 18:20:27 +00:00
Joe Thornber
68c14b47aa
o removed old files
2001-10-23 14:17:07 +00:00
Joe Thornber
9d3bf3e2c1
o forgot to use the path passed into _read_array.
2001-10-23 13:12:05 +00:00
Alasdair Kergon
014a5c0bf0
deallocations
2001-10-23 12:33:57 +00:00
Joe Thornber
10a6939753
o rethink of the persistent filter
2001-10-23 12:24:55 +00:00
Alasdair Kergon
20a2b71c9c
filter integration into tools
2001-10-23 11:50:49 +00:00
Joe Thornber
7e38924de5
o forgot to retry on EINTR or EAGAIN, doh !
2001-10-23 11:16:30 +00:00
Joe Thornber
63408276f9
o forgot 'static'
2001-10-22 14:40:31 +00:00
Joe Thornber
12eabe3031
o composite filter that allows us to merge filters. Think of it as &&'ing
...
filters in order.
eg,
f = composite_filter_create(2, regex_filter, persistent_filter);
ownership of the filters passes, they will be destroyed when f's
destroy method is called.
2001-10-22 14:39:12 +00:00
Joe Thornber
5f16718b19
o Filter which caches valid devices in a file. Pass in init == 1 to the
...
constructor if you want it to ignore the existing cache and check every
device again (eg, vgscan, pvscan).
2001-10-22 14:14:00 +00:00
Alasdair Kergon
c4151d1aa4
reinstate a removed line
2001-10-22 13:44:09 +00:00
Joe Thornber
98af757b00
o tidying
2001-10-21 10:24:10 +00:00
Joe Thornber
291ec3b6c0
o Filter for the dev cache that takes values from config file:
...
devices {
# first match is final, eg. /dev/ide/cdrom
# get's rejected due to the first pattern
filter=["r/cdrom/", # don't touch the music !
"a/hd[a-d][0-9]+/",
"a/ide/",
"a/sd/",
"a/md/",
"a|loop/[0-9]+|", # accept devfs style loop back
"r/loop/", # and reject old style
"a/dasd/",
"a/dac960/",
"a/nbd/",
"a/ida/",
"a/cciss/",
"a/ubd/",
"r/.*/"] # reject all others
}
Alasdair this is ready to roll into the tools now.
2001-10-19 18:20:37 +00:00
Joe Thornber
d1b28647ed
o First pass at the regex code. lib/regex/matcher takes an array of regex's
...
and builds a *very* efficient engine that will tell you which regex a string
matches with only a single pass through the string. To be used in the config
file when specifying devices.
o Anchor's aren't supported yet (^ and $) but that won't take long.
o Also when we get some realistic config files we may want to consider adding an
extra level of indirection to the dfa state in order to compress the table.
It all depends on how large typical tables get.
2001-10-19 14:36:57 +00:00
Alasdair Kergon
cd77c5a7b7
pvdisplay
2001-10-18 16:55:19 +00:00
Alasdair Kergon
8f8a968dc2
pvchange
2001-10-17 15:29:31 +00:00
Alasdair Kergon
a381c45a6e
vgchange
2001-10-16 16:25:28 +00:00
Alasdair Kergon
ffb3162116
vgextend
2001-10-15 22:04:27 +00:00
Alasdair Kergon
aa290eb285
vgcreate basic extent size validation
2001-10-15 20:29:15 +00:00
Alasdair Kergon
df2e0dc751
More vgcreate error trapping
2001-10-15 18:39:40 +00:00
Alasdair Kergon
ca8f8837c2
o lvm readline error-case tidy-up
...
o more vgcreate error cases
2001-10-15 12:49:58 +00:00
Joe Thornber
8a482590fa
o vgcreate
2001-10-12 14:25:53 +00:00
Alasdair Kergon
9711fef759
vgcreate
2001-10-12 12:21:43 +00:00
Joe Thornber
2cb6249206
o make ios the first argument to pv_create
2001-10-12 10:52:32 +00:00
Joe Thornber
72a5e12b5c
o pvcreate
...
o added uuid unit
o stubbed partition stuff
2001-10-12 10:32:06 +00:00
Alasdair Kergon
6e91eeef13
vgreduce, vgremove, vgrename & vgscan
2001-10-11 21:35:55 +00:00
Joe Thornber
7f64636f5f
o try incrementing pv_number from 1
2001-10-11 16:31:09 +00:00
Joe Thornber
1eabbe1ad7
o if contained &= instad of &
2001-10-11 15:09:31 +00:00
Joe Thornber
e8220912e9
o initalise list_heads, initialise list_heads, initi ..
2001-10-11 14:21:38 +00:00
Joe Thornber
6b6a344e09
o a very quick hack to get vg_number right
2001-10-11 14:10:18 +00:00
Joe Thornber
383d1752fa
o set PV_ALLOCATABLE flag correctly
2001-10-11 13:34:17 +00:00