Alasdair Kergon
9a079266dd
Add pool_strndup
2003-04-24 21:58:34 +00:00
Alasdair Kergon
010c07de20
Improve message for pvcreate of empty device.
2003-04-22 16:09:11 +00:00
Alasdair Kergon
b896caa19b
Improve build robustness.
2003-04-15 13:24:42 +00:00
Alasdair Kergon
5beb6fab74
Abort if any filter creation fails.
2003-04-15 13:22:43 +00:00
Alasdair Kergon
258c50db74
Cope with intentionally missing /proc.
2003-04-15 13:21:38 +00:00
Alasdair Kergon
446155d94f
Support snapshot status fraction.
2003-04-15 13:20:16 +00:00
Alasdair Kergon
27f364af95
Allow for specification of major number as well as minor.
2003-04-02 19:14:43 +00:00
Alasdair Kergon
34e0f798e3
size_t tidying
2003-04-02 19:11:23 +00:00
Alasdair Kergon
26e7f2e0c4
Tidy various pre-processing incl. making libdl optional.
2003-03-24 18:08:53 +00:00
Alasdair Kergon
3a1703294b
Fix incomplete munmap. (pjc)
2003-03-20 14:29:28 +00:00
Joe Thornber
712a874f07
HAT_CHAR and DOLLAR_CHAR were defined to the same value !
2003-02-20 14:53:56 +00:00
Alasdair Kergon
7e4867f743
LV name validation
2003-02-03 20:09:58 +00:00
Alasdair Kergon
c0002e576e
Identifiers may now start with digits etc.
2003-02-03 20:08:45 +00:00
Alasdair Kergon
efb63f4740
Allow strings in single quotes too
2003-01-28 17:20:11 +00:00
Alasdair Kergon
41102098e5
Treat 'section{' as equivalent to 'section {'
2003-01-28 16:07:04 +00:00
Alasdair Kergon
79be52c881
Indicate full (dropped) snapshot.
2003-01-21 18:50:50 +00:00
Alasdair Kergon
a421f74371
vgreduce --removemissing to remove missing PVs & deps & make VG consistent
2003-01-17 21:04:26 +00:00
Alasdair Kergon
711f7fc681
Activation commands now return success in test mode.
2003-01-17 20:16:23 +00:00
Alasdair Kergon
e9ea1fb3bf
Fix (rare) cache bug on machines with large /dev directories.
2003-01-10 19:14:01 +00:00
Alasdair Kergon
04e8cd96f3
Fix segfault in uuid display (substitution missed during bulk change)
2003-01-09 19:35:17 +00:00
Alasdair Kergon
199e490e7d
configure --disable-devmapper if you don't have libdevmapper
2003-01-08 22:44:07 +00:00
Alasdair Kergon
4970ebfb92
o Additional device/filter-level debugging messages + duplicate alias fix
...
o 32/64-bit size_t fix (pjc)
2003-01-08 16:41:22 +00:00
Alasdair Kergon
f3f3424f9a
Detect duplicate PV uuids - select the one on an md device if appropriate.
2003-01-06 21:10:43 +00:00
Alasdair Kergon
fdf481c665
Ignore filter cache at startup if config file is newer than cache.
2003-01-06 21:09:04 +00:00
Alasdair Kergon
4aae68792c
When there are device name aliases, choose the "nicest" to display.
2003-01-03 21:11:23 +00:00
Alasdair Kergon
4e268ceacb
Also lock memory during LV updates.
2003-01-03 21:10:28 +00:00
Alasdair Kergon
4086fb2620
When activating an LV, remove any stray LVM1 /dev nodes and group file.
2003-01-03 13:50:47 +00:00
Alasdair Kergon
8ef2b021ed
Default stripesize 64k & config file setting for it;
...
Clear many compiler warnings (i386) & associated bugs - hopefully without
introducing too many new bugs:-) (Same exercise required for other archs.)
Default compilation has optimisation - or else use ./configure --enable-debug
2002-12-19 23:25:55 +00:00
Alasdair Kergon
4c64ed4ced
New column-based reporting tools: lvs, pvs & vgs.
2002-12-12 20:55:49 +00:00
Alasdair Kergon
69e2befd15
Use sync_dir().
2002-12-05 22:56:22 +00:00
Alasdair Kergon
0fc1d0788d
Add sync_dir()
2002-12-05 22:51:15 +00:00
Alasdair Kergon
28879d4174
Fix display alignment of zero.
2002-12-05 22:42:31 +00:00
Alasdair Kergon
8a95d67e26
Maintain snapshot_count correctly.
2002-12-05 22:30:39 +00:00
Alasdair Kergon
a14e14efdd
Keep some ld versions happy.
2002-12-05 22:27:43 +00:00
Alasdair Kergon
a648372757
New devices/types config file entry to add new types of block devices.
2002-12-03 16:20:38 +00:00
Alasdair Kergon
11779747ef
Show PV uuid; single stripe is 'linear'; suppress snapshot fields for origin.
2002-12-03 13:26:17 +00:00
Alasdair Kergon
66a8d8b4b2
Show stripesize in KB.
2002-11-26 21:56:57 +00:00
Alasdair Kergon
22d2827b41
Skip config file reload attempt if no config file location.
2002-11-26 12:14:37 +00:00
Alasdair Kergon
50d7e96c6d
Remove 2 TB LV size restriction message.
2002-11-18 16:21:00 +00:00
Alasdair Kergon
c3aa104a8d
Missing sector->k conversion in "logical volumes cannot be larger than" mesg.
2002-11-18 16:08:45 +00:00
Alasdair Kergon
5a52dca9c2
Some new features.
2002-11-18 14:04:08 +00:00
Alasdair Kergon
d1d9800ef1
Refactoring.
2002-11-18 14:01:16 +00:00
Alasdair Kergon
74b27447c1
A new cache.
2002-11-18 13:53:58 +00:00
Alasdair Kergon
f2187638dc
Don't let LVM2 access a VG if the original LVM driver appears to be using it.
2002-11-01 19:57:25 +00:00
Joe Thornber
6086b60455
o inline _step_matcher
2002-08-29 15:05:16 +00:00
Joe Thornber
22a0881ded
o Anchor support for the regex engine.
2002-08-29 14:46:30 +00:00
Patrick Caulfield
da253e3aac
Remove O_DIRECT as it causes problems with some systems.
...
Harumph.
2002-08-14 14:58:00 +00:00
Joe Thornber
b1545f2985
o Make sure the status parsing code can deal with an empty array.
2002-08-01 12:51:48 +00:00
Joe Thornber
07bb413a8f
o Added new value type CFG_EMPTY_ARRAY, to indicate '[]', useful since we use
...
the arrays to hold a symbolic set of flags.
2002-08-01 12:46:52 +00:00
Joe Thornber
ffa879d092
o 0 was used rather than NULL in a couple of places.
...
o Indent output with tabs rather than single spaces.
2002-08-01 08:22:09 +00:00
Patrick Caulfield
7a0ed4a40c
Rename lock_resource to file_lock_resource to avoid name clashes
2002-07-25 09:04:30 +00:00
Patrick Caulfield
6b3b4a250b
Use O_DIRECT for writing to devices.
...
Doesn't work on HPPA due to a kernel bug but other archs shuld be OK.
2002-07-22 08:10:54 +00:00
Alasdair Kergon
12caf445d4
Remove hard-coded extent_size from snapshot target (field no longer used).
2002-07-17 17:00:54 +00:00
Joe Thornber
7cc602c800
i) Add the VISIBLE flag to the text format. (Other changes are pending
...
for lib/activate.)
2002-07-11 15:28:49 +00:00
Joe Thornber
291906a208
i) Added a little macro to aid defining the status flags.
2002-07-11 14:36:45 +00:00
Joe Thornber
097d49e73d
i) There's now a seperate field in struct logical_volume that stores the
...
allocation policy. This can currently take one of three values:
typedef enum {
ALLOC_NEXT_FREE,
ALLOC_STRICT,
ALLOC_CONTIGUOUS
} alloc_policy_t;
Notice that 'SIMPLE' has turned into the slightly more meaningful NEXT_FREE.
ii) Put code into display.[hc] for converting one of these enums to a
text representation and back again.
ii) Updated the text format so this also has the alloc_policy field.
2002-07-11 14:21:49 +00:00
Alasdair Kergon
407332cb9a
tidy
2002-07-11 14:09:26 +00:00
Alasdair Kergon
48450b8f43
Add get_config_str
2002-07-11 14:07:43 +00:00
Patrick Caulfield
38f3949b25
Don't log an error if we can't write the cache file because the FS is read-only.
...
Gets rid of that annoying error at shutdown.
2002-07-11 09:23:29 +00:00
Alasdair Kergon
48ad31920d
Add --ignorelockingfailure
2002-07-10 20:43:32 +00:00
Alasdair Kergon
0dbd22124b
Merge adjacent "Missing" segments.
2002-07-10 13:54:17 +00:00
Joe Thornber
7df3006c6b
o Add version number to text format.
2002-07-02 18:47:43 +00:00
Patrick Caulfield
b40b90f035
Flush on open as well as close.
2002-06-25 14:02:28 +00:00
Patrick Caulfield
aefa3c6d82
Get rid of compile warnings on 64bit platforms.
2002-06-07 08:37:07 +00:00
Alasdair Kergon
70d6838fb0
Tidy
2002-05-31 19:28:37 +00:00
Alasdair Kergon
61e9603be5
Remember to update VG free_count when reducing size of an LV.
2002-05-30 16:08:19 +00:00
AJ Lewis
fa6a82c9af
o fix changed function names
2002-05-23 14:13:21 +00:00
Alasdair Kergon
5f05971a84
Fix LVM1 backwards compatibility issue when LV with a low LV number is deleted.
2002-05-23 11:37:51 +00:00
Alasdair Kergon
c826c0d17c
Rename; add some FIXMEs.
2002-05-22 14:03:45 +00:00
Alasdair Kergon
1f835295d8
Revert to standard linux macros (for correct behaviour on rare architectures).
2002-05-21 12:37:07 +00:00
Andres Salomon
6106741bea
ack, missing include
2002-05-19 04:11:34 +00:00
Andres Salomon
6e0fa64c7b
update create_dir() comment
2002-05-19 03:52:38 +00:00
Andres Salomon
310a81c90c
support recursive mkdir in create_dir()
2002-05-19 03:46:34 +00:00
Alasdair Kergon
031079703f
Rewrite missing/corrupt metadata in more cases.
2002-05-13 12:38:54 +00:00
AJ Lewis
39ed033adb
o the _status fxns now take more arguments - this way i don't get the
...
preparsed status info, shove it all into a string, and then parse it
again to get the info back out (which is what i was doing before)
o basically that's it...i like this *much* better than the previous
method and i think it makes the _status fxn more flexible if we need
to use it to get other info out.
2002-05-10 16:06:06 +00:00
AJ Lewis
1951dba955
o Actually read snapshot percentage from the kernel - what a pain! :)
...
o Not sure if the code in dev_manager is really optimal, but it works..
will look at adjusting it a bit now.
o I *think* it works right when one snapshot if full but others aren't,
but I haven't really been able to test it because the full snapshot
somehow resets itself and weird things start happening to the system...
2002-05-09 21:17:57 +00:00
Alasdair Kergon
64ad493eac
Remove a no-op.
2002-05-09 12:03:55 +00:00
AJ Lewis
29152f6ef0
o header should only be printed once...
2002-05-08 17:58:52 +00:00
AJ Lewis
fccc39a3a7
o Added function find_snapshots to snapshot_manip.c that returns a list
...
of snapshots whose origin is the lv passed in.
o Used this new function to make lvdisplay properly display all snapshots
attached to a origin.
2002-05-08 16:57:46 +00:00
Andres Salomon
8ac9aae78a
implement our own swabbing functions, instead of relying on the kernel's.
2002-05-07 15:28:59 +00:00
Alasdair Kergon
c5e08c6c83
Default values for some display output settings
2002-05-07 12:50:01 +00:00
Alasdair Kergon
5be981bab5
Tweaks
2002-05-07 12:47:11 +00:00
Andres Salomon
b9923fe3f2
Make lvm2 compile on big endian archs; use the kernel/glibc's endian
...
conversion stuff, instead of implementing our own. Tested on a little
endian system (x86); I'll let the debian handle big endian testing. :)
2002-05-07 05:54:14 +00:00
AJ Lewis
b7749b7a96
o Will now correctly remove expired achive files from the system when
...
archive_vg is called.
o Added a #define to the top of the file - not sure if this is the
appropriate place for it though
2002-05-03 19:28:07 +00:00
Alasdair Kergon
6b4c9ff740
Some partial VG support with format_text.
2002-04-30 17:12:37 +00:00
Alasdair Kergon
e1f93d52e3
get_vgs must check for text format VGs when no lvm1 format VGs present
2002-04-30 12:27:13 +00:00
AJ Lewis
6e2ff7fb35
o Updated *display output for LVM1 compatibility
...
o There is still a bit missing
+ all are missing the {PV,VG,LV} # - that is not applicable in LVM2
+ pvdisplay doesn't show how many LVs are contained on it
+ much of the snapshot information isn't available for lvdisplay
o Look at the code for other potiential FIXMEs :)
2002-04-29 21:43:14 +00:00
Alasdair Kergon
25b733809a
Merge with text format branch.
...
Lots of changes/very little testing so far => there'll be bugs!
Use 'vgcreate -M text' to create a volume group with its metadata stored
in text files. Text format metadata changes should be reasonably atomic,
with a (basic) automatic recovery mechanism if the system crashes while a
change is in progress.
Add a metadata section to lvm.conf to specify multiple directories if
you want (recommended) to keep multiple copies of the metadata (eg on
different filesystems).
e.g. metadata {
dirs = ["/etc/lvm/metadata1","/usr/local/lvm/metadata2"]
}
Plenty of refinements still in the pipeline.
2002-04-24 18:20:51 +00:00
Joe Thornber
e3528bcda7
o Stop printing errors if flushing fails (could be an unconfigured device).
2002-04-24 08:37:34 +00:00
Alasdair Kergon
de3bec7f81
Missing seg->lv gives segfault when activating from text format.
2002-04-16 19:41:54 +00:00
Alasdair Kergon
69e8a53ee4
Allow deactivation of final snapshot.
2002-04-16 14:42:20 +00:00
Alasdair Kergon
7e3d403b88
Implement a no_locking module that *does* attempt activation.
2002-04-11 14:10:32 +00:00
Patrick Caulfield
584404f8f4
Return status from _lv_activate and friends.
...
Alasdair, I think this is right (and I need it) but you may like to check.
2002-04-11 09:14:04 +00:00
Patrick Caulfield
426bc429ef
Remove \n from log messages.
2002-04-10 15:49:47 +00:00
Joe Thornber
f31c47ade8
o Perform a BLKFLSBUF ioctl whenever a block device is closed.
...
Patrick, can you see if this fixes your cluster syncing problem please ?
If so I'll make it so it only syncs if you have actually written to the
device.
2002-04-08 18:59:50 +00:00
Patrick Caulfield
2fab033e9b
Implement an external locking interface.
2002-04-08 16:04:50 +00:00
Patrick Caulfield
c34d34e6a0
Fix prototype.
2002-04-08 13:35:09 +00:00
Alasdair Kergon
ab053ad6c1
Fix lv_setup() not to generate a new lvid each time if asked to setup the
...
same LV more than once - subsequent times validate only.
2002-04-05 14:32:22 +00:00
Patrick Caulfield
ae70673752
Make lock type numbers match the DLM numbers in use, and move UNLOCK out
...
of the way.
2002-04-04 13:31:21 +00:00
Alasdair Kergon
8856889d10
Rename LCK_NONE to LCK_UNLOCK
2002-04-04 11:18:45 +00:00
Alasdair Kergon
607bcd61d0
Tidying.
2002-04-03 12:17:55 +00:00
Alasdair Kergon
7bb6856a7e
Cope with creation of additional snapshots while active.
...
(More work on suspension dependencies still needed.)
2002-03-27 18:17:43 +00:00
Alasdair Kergon
4bb3eccf2b
New-style persistent minor support.
2002-03-26 13:41:37 +00:00
Alasdair Kergon
e04c519896
o read-only device support
...
o name/uuid disambiguation
2002-03-25 18:54:59 +00:00
Alasdair Kergon
c1b5fc6673
Fix typo.
2002-03-25 18:50:37 +00:00
Alasdair Kergon
9585e50fef
Better support for LVs with hyphens in names.
2002-03-19 16:41:44 +00:00
Alasdair Kergon
2ed2a72439
lvrename works on snapshots now
2002-03-18 23:25:50 +00:00
Alasdair Kergon
a76ba817a8
Tie all snapshot (de)activation requests to (de)activation of origin device.
2002-03-18 13:09:27 +00:00
Alasdair Kergon
20ce742691
s/Removing/Unloading/ in messages to reduce confusion
2002-03-15 23:01:59 +00:00
Alasdair Kergon
a69de4919b
Cut the number of device-mapper calls.
2002-03-15 22:59:12 +00:00
Alasdair Kergon
a6bf4bcfa2
New function to enable suppression of messages to stdout/stderr.
2002-03-15 22:54:04 +00:00
Alasdair Kergon
568d7229bf
Review locking: block signals instead of ignoring them and restore state
...
afterwards; avoid race condition with unlink; add LCK_HOLD to process_each_vg.
2002-03-15 16:07:38 +00:00
Alasdair Kergon
14a9cda63b
Reduce the number of dm info calls.
2002-03-14 21:17:30 +00:00
Alasdair Kergon
20c5fcf764
Integrate suspend.
2002-03-14 15:36:07 +00:00
Joe Thornber
d8e7d77316
o dev_manager_suspend, untested.
2002-03-14 10:56:09 +00:00
Alasdair Kergon
dd420615d5
Set LV uuid.
2002-03-13 15:11:29 +00:00
Alasdair Kergon
251502f9a1
Move is_empty_dir to lvm-file
2002-03-11 22:23:24 +00:00
Joe Thornber
bb13858120
o Actually check that the vg directory is empty rather than speculatively
...
rmdiring it. Work around for devfs bug.
2002-03-11 20:43:58 +00:00
Joe Thornber
2ec94d4daf
o This should complete the dev_manager alg. Please could people now
...
report any activation oddities they see.
2002-03-11 20:36:04 +00:00
Alasdair Kergon
41967a0276
lv_info replaces lv_active etc.
2002-03-11 19:02:28 +00:00
Alasdair Kergon
be326a2f1b
o activate/reactivate merge
...
o unlocking macro
2002-03-11 15:08:39 +00:00
Joe Thornber
323a167b49
o dm->active_list now filled in, ATM this is based on the layer name rather
...
than the uuid.
2002-03-11 11:27:48 +00:00
Joe Thornber
fd6932b18b
o Comment out some new code that was preventing pjc activating
...
snapshots. This will go back in when the active_list is working.
2002-03-11 10:38:16 +00:00
Joe Thornber
5295f36cb4
o knock out the offset for origin targets.
2002-03-08 10:45:01 +00:00
Joe Thornber
4526747997
o Add active_list to dev_manager
...
o Origin layer is only added to snapshots if a snapshot is in the
active_list.
2002-03-08 10:41:48 +00:00
Joe Thornber
11d2da4036
o First cut at dev scanning.
...
o Split up _expand_lv
2002-03-07 17:37:38 +00:00
Joe Thornber
0fe3a2c512
o Add comment describing what we're aiming for with dev_manager.
...
o Remove dev_manager_reactivate, since it'll be the same as activate.
o Merge the mark, visible and dirty fields into the same flags field.
2002-03-07 16:48:46 +00:00
Joe Thornber
eea1d6932c
o Top level device is now just called <vg>-<lv> (there's no 'top'
...
layer appended).
o Got rid of the unused layer->type field and enum.
2002-03-07 15:29:31 +00:00
Alasdair Kergon
15c325f06a
o Use new LCK_HOLD flag to indicate whether lock should be held on return
...
from lock_vol() - otherwise it now attempts to acquire the lock and then
immediately releases it.
o Extend the id field in struct logical_volume to hold VG uuid + LV uuid
for format1. This unique lvid can be used directly when calling lock_vol().
o Add the VG uuid to vgcache to make VG uuid lookups possible. (Another
step towards using them instead of VG names internally.)
2002-03-05 20:03:09 +00:00
Alasdair Kergon
2731508b34
Fix activation for VG with more than one LV.
2002-03-04 18:50:34 +00:00
Joe Thornber
fdec53fb9c
o Add a line to lvdisplay to say if the volume is a snapshot.
2002-03-04 15:12:30 +00:00
Joe Thornber
d30321a6cf
o Bad dependency, meant the origin was always getting activated.
2002-03-04 15:10:30 +00:00
Alasdair Kergon
3bf898526a
Remove unused fns.
2002-03-04 14:27:25 +00:00
Joe Thornber
3a84c18bdd
o I was tearing down device bottom-up instead of top down. Which
...
is why lvremove of snapshots wasn't working.
2002-03-04 14:26:43 +00:00
Joe Thornber
9db196e6c5
o Break creating a snapshot down into:
...
i) create cow
ii) activate cow
iii) zero cow
iv) deactivate
v) add snapshot info
vi) reactivate
2002-03-04 13:46:37 +00:00
Alasdair Kergon
8c013da41f
More use of LV locking.
2002-03-01 19:08:11 +00:00
Joe Thornber
6ed0234393
o point snapshots at origin:real rather than origin:top, and *ping*
...
snapshots work.
2002-03-01 09:07:00 +00:00
Alasdair Kergon
f4cbeaf0ac
o Lock mechanism for LV activation
...
o #defines for common lock flag combinations
o Try out hyphens instead of colons in device-mapper names - does this
make messages containing filenames easier to read?
2002-02-27 12:26:41 +00:00
Joe Thornber
841da63e77
o Format1 wasn't recording the snapshot chunk size properly
...
o Activation of snapshots now works - though the resulting device
doesn't (pjc ?)
o text format wasn't setting vg->cmd.
2002-02-26 16:48:52 +00:00
Alasdair Kergon
6761081ab4
Clearer link pathname display.
2002-02-26 16:08:22 +00:00
Joe Thornber
349f09e401
o _build_name was allocating 1 byte too few, which meant the
...
terminating zero was falling off at some later point.
o Don't try and iterate from a deleted node in _prune_unmarked.
2002-02-26 14:44:13 +00:00
Joe Thornber
de6c918392
o Removed old files
...
o rewrote activate.c to use dev-manager, I'm sure these two will merge
at some point.
o Rename is broken ATM
o dev-manager puts the calls through to fs.c for layers that have the
'visible' flag set.
2002-02-26 11:49:17 +00:00
Joe Thornber
c15334eb4e
o More dev_manager fns.
2002-02-25 16:53:12 +00:00
Joe Thornber
999e584511
o In go the populate functions.
2002-02-25 15:19:53 +00:00
Joe Thornber
fc28b60f9c
o More dev_manager work.
2002-02-25 14:46:57 +00:00
Alasdair Kergon
413cc9189e
Begin conversion so LV id is passed to activation unit instead of
...
struct logical_volume.
2002-02-25 12:56:16 +00:00
Joe Thornber
ca73e23fd0
o Sync with cvs, dev_manager still needs to be wired into activate.c
2002-02-25 12:02:33 +00:00
Joe Thornber
7b9e789f9c
o Remove the vg argument from find_cow
2002-02-25 11:55:39 +00:00
Joe Thornber
b00094bdeb
o hash_iterate -> hash_iter
2002-02-25 11:54:15 +00:00
Joe Thornber
7e682f4f93
o Added a macro called hash_iterate, that is similar to list_iterate
...
o Renamed hash_iterate function, hash_iter.
2002-02-25 11:52:58 +00:00