Peter Rajnoha
b47952641a
Added displayable_lvs_in_vg and lv_is_displayable functions to deal with
...
the counts of visible LVs from user's perspective consistently throughout
the code.
2008-12-04 15:54:26 +00:00
Alasdair Kergon
2c44337bd5
Right, a simple build (without options) is working again.
2008-11-03 22:14:30 +00:00
Alasdair Kergon
9c4bf5db4a
Fix conversion of md chunk size into sectors.
2008-10-03 14:22:18 +00:00
Milan Broz
061fa9c4c5
Fix handling of PVs which reappeared with old metadata version.
2008-09-25 15:59:10 +00:00
Milan Broz
affecdc5fc
Try to fix possible infinite loop in dependency tree walking (by mornfall).
2008-09-25 15:57:02 +00:00
Alasdair Kergon
8c5bcdabab
Improve the way VGs with PVs missing are handled so manual intervention
...
is required in fewer circumstances. (mornfall)
2008-09-19 06:42:00 +00:00
Alasdair Kergon
86fb36e2b0
Add device/md_chunk_alignment to lvm.conf
2008-09-19 05:33:37 +00:00
Alasdair Kergon
3c2086efdd
adjust pe_align for md chunk size
2008-09-19 05:19:09 +00:00
Alasdair Kergon
a77f5bf258
Pass struct physical_volume to pe_align.
2008-09-19 04:28:58 +00:00
Milan Broz
3a2fb07349
Fix setting of volume limit count if converting to lvm1 format.
...
Fixes problem when after downconvert to lvm1 VG is broken:
# lvcreate -n lv1 -l 4 vg_test
Invalid LV in extent map (PV /dev/sdb1, PE 0, LV 0, LE 0)
...
2008-08-29 13:41:21 +00:00
Zdenek Kabelac
38a8b563bf
get lv_list properly from vg->lst and fix compiler warning
2008-08-13 13:42:35 +00:00
Zdenek Kabelac
e2151fb4af
vgremove tries to remove lv snapshot first.
...
Added function lv_remove_with_dependencies().
2008-08-05 12:05:26 +00:00
Alasdair Kergon
59743245b4
Fix up cache for PVs without mdas after consistent VG metadata is processed.
2008-06-27 15:18:31 +00:00
Dave Wysochanski
15db00b53e
Refactor pv_create() to take cmd_context - no functional change.
2008-06-24 20:10:32 +00:00
Dave Wysochanski
2d415cf9f8
Add uninitialized_var macro to suppress invalid compiler warnings.
...
One such warning is seen on fedora9 gcc compiler:
/metadata.c:1923: warning: 'results' may be used uninitialized in this function
2008-06-23 19:04:34 +00:00
Alasdair Kergon
bfadd2133e
Tweak detection of invalid fid after changes to PVs in VG in _vg_read.
2008-06-08 14:18:44 +00:00
Alasdair Kergon
ec40d92889
post-release
2008-06-06 19:28:35 +00:00
Alasdair Kergon
697e3bb2df
back out unnecessary changes for this release
2008-06-06 17:36:19 +00:00
Alasdair Kergon
d0de492ff3
cope with volatile vginfo in vg_read
2008-06-06 11:12:50 +00:00
Alasdair Kergon
57d0dc0db2
Allow for vginfo changing during _vg_read.
2008-06-06 09:48:04 +00:00
Alasdair Kergon
ad134662a2
Drop metadata cache if update fails in vg_revert or vg_commit.
2008-06-03 17:56:54 +00:00
Alasdair Kergon
d9c0105fef
Drop metadata cache before writing precommitted metadata instead of after.
2008-05-08 18:06:58 +00:00
Alasdair Kergon
eddc0f3307
post-release - reinstate incomplete enhancements
2008-04-29 16:11:28 +00:00
Alasdair Kergon
04ed52f6a0
pre-release (bug fixes only - enhancements excluded)
2008-04-29 15:58:25 +00:00
Alasdair Kergon
fd1b118942
Check lv_count in vg_validate.
...
Fix internal LV counter when a snapshot is removed.
2008-04-22 12:54:33 +00:00
Milan Broz
581b17def2
Drop cached VG metadata before and after committing changes to it.
2008-04-15 14:46:19 +00:00
Alasdair Kergon
3a370b7350
more pre-release cleanup
2008-04-10 19:59:43 +00:00
Alasdair Kergon
0b2a795ece
make list_move consistent with other list fns
2008-04-10 19:14:27 +00:00
Dave Wysochanski
985ca02b6a
Add vg_is_clustered() helper function.
...
Should be no functional change.
2008-04-10 17:09:32 +00:00
Alasdair Kergon
6eb44b5091
Fix vgreduce to use vg_split_mdas to check sufficient mdas remain.
...
Add (empty) orphan VGs to lvmcache during initialisation.
Fix orphan VG name used for format_pool.
2008-04-08 12:49:21 +00:00
Alasdair Kergon
ad607a23f1
create fids for internal orphan VGs
2008-04-07 22:12:37 +00:00
Dave Wysochanski
9da5d7ac02
Add check to vg_commit() to ensure lock is held before writing new VG metadata.
2008-04-04 15:41:20 +00:00
Alasdair Kergon
6e210a6c54
Cache VG metadata internally while VG lock is held.
2008-04-01 22:40:13 +00:00
Dave Wysochanski
9332d2cb9d
Add find_lv_in_lv_list() and find_pv_in_pv_list().
...
Update _add_pvs() to call find_pv_in_pv_list().
2008-03-28 19:08:23 +00:00
Dave Wysochanski
8e32e58e00
Use list_move() in applicable places.
2008-03-26 17:26:32 +00:00
Dave Wysochanski
052bbfba3a
Add pvseg_is_allocated() for identifying a PV segment allocated to a LV.
2008-03-26 16:48:10 +00:00
Alasdair Kergon
7284f3f966
preparation for vg cache
2008-03-17 16:51:31 +00:00
Dave Wysochanski
ad8f37df1b
Const cleanups in find_* functions.
2008-03-13 22:51:24 +00:00
Jim Meyering
a34a6a3f71
is_orphan: make parameter "const" to avoid compiler warning
2008-02-13 20:01:48 +00:00
Alasdair Kergon
bb097a97ea
split orphan VG by format type
2008-02-06 15:47:28 +00:00
Alasdair Kergon
67cdbd7e4d
Some whitespace tidy-ups.
2008-01-30 14:00:02 +00:00
Alasdair Kergon
c51b9fff19
Use stack return macros throughout.
2008-01-30 13:19:47 +00:00
Alasdair Kergon
ec2bd20886
suppress compiler warning
2008-01-22 16:02:26 +00:00
Dave Wysochanski
1ce224d13f
Fix vgsplit - print error if vgcreate option given w/existing vg destination
...
Fix vgsplit - reject split if metadata types or clustered attributes differ
Fix vgsplit - remove physicalextentsize option
Add vgsplit test cases
2008-01-22 02:48:53 +00:00
Alasdair Kergon
0c06de632a
pre-release review cleanups
2008-01-17 17:17:09 +00:00
Alasdair Kergon
70955d40a1
fix a _get_vgs return
2008-01-16 22:52:46 +00:00
Dave Wysochanski
d865615e9a
Create vgs_are_compatible() fn to check whether vgs are compatible for merging.
...
Add new vgmerge and vgsplit tests to check rejection of incompatible vgs.
Cleanup comments.
Bugzilla: bz251992
---
lib/metadata/metadata-exported.h | 3 +
lib/metadata/metadata.c | 89 +++++++++++++++++++++++++++++++++-
test/t-vgmerge-usage.sh | 101 +++++++++++++++++++++++++++++++++++++++
test/t-vgsplit-operation.sh | 20 +++++++
tools/vgmerge.c | 69 --------------------------
tools/vgsplit.c | 5 -
6 files changed, 215 insertions(+), 72 deletions(-)
2008-01-16 19:54:39 +00:00
Alasdair Kergon
fb3226a3ed
use scan_vgs_for_pvs to detect non-orphans without MDAs
2008-01-16 18:15:26 +00:00
Dave Wysochanski
8868a4ffc2
Move more parameter validation into the library.
...
Update vgrename to call validate_vg_rename_params().
Fix vgcreate and vgsplit default arguments by adding defaults parameter to
fill_vg_create_params().
Add t-vgrename-usage.sh test.
Bugzilla: bz251992
---
tools/toollib.c | 32 ++++++++------------------------
tools/toollib.h | 5 ++---
tools/vgcreate.c | 35 +++++++++++++++++++++--------------
tools/vgrename.c | 35 ++++++-----------------------------
tools/vgsplit.c | 21 ++++++++++++++-------
5 files changed, 51 insertions(+), 77 deletions(-)
2008-01-15 22:56:30 +00:00
Dave Wysochanski
b8daca8570
Allow vgcreate options as input to vgsplit when new vg is split destination.
2008-01-14 21:07:58 +00:00
Milan Broz
a95892f77d
Fix a segfault if using pvs with --all argument. (2.02.29)
2008-01-07 20:42:57 +00:00
Alasdair Kergon
31e9db2690
stacked mirror support (incomplete)
2007-12-20 18:55:46 +00:00
Alasdair Kergon
e5f7352bef
Convert some vg_reads into vg_lock_and_reads
2007-11-15 02:20:03 +00:00
Alasdair Kergon
00a7c302ea
Add pv_mda_free and vg_mda_free fields to reports for raw text format.
2007-11-05 17:17:55 +00:00
Alasdair Kergon
d38bf3616c
Fix orphan-related locking in pvdisplay and pvs.
...
Fix missing VG unlocks in some pvchange error paths.
Add some missing validation of VG names.
Rename validate_vg_name() to validate_new_vg_name().
Change orphan lock to VG_ORPHANS.
Change format1 to use ORPHAN as orphan VG name.
2007-11-02 20:40:05 +00:00
Bryn M. Reeves
8b98c12815
Add is_orphan_vg() and change all hardcoded checks to use it.
2007-11-02 13:06:42 +00:00
Dave Wysochanski
0f8387c2d6
Remove comment about allocation of pv->vg_name.
2007-10-12 21:08:38 +00:00
Dave Wysochanski
0283c439ec
Add _alloc_pv() and _free_pv() from _pv_create() code and fix error paths.
...
Modified original patch by Jun'ichi Nomura <j-nomura@ce.jp.nec.com>
2007-10-12 18:37:19 +00:00
Dave Wysochanski
1b8de4cb25
Add pv_dev_name() to access PV device name.
...
Patch by Jun'ichi Nomura <j-nomura@ce.jp.nec.com>
2007-10-12 14:29:32 +00:00
Dave Wysochanski
70d9f98ed3
Accessor functions for PV will not modify the given PV.
...
So we can add 'const' to it.
Patch by Jun'ichi Nomura <j-nomura@ce.jp.nec.com>
2007-10-12 14:08:10 +00:00
Alasdair Kergon
9eea0107ba
Fix strdup memory leak in str_list_dup().
2007-09-17 16:02:46 +00:00
Dave Wysochanski
f603fe64bd
Modify lvremove to prompt for removal if LV active on other cluster nodes.
...
Add '-f' to vgremove to force removal of VG even if LVs exist.
Update vgremove man page for '-f'.
2007-08-28 16:14:49 +00:00
Alasdair Kergon
21bc366486
Clean up numerous compiler warnings that crept in recently.
...
Remove several unused parameters from _allocate().
2007-08-22 14:38:18 +00:00
Dave Wysochanski
16669b5aa0
Move guts of vgremove into lvm library.
...
Include archiver.h in metadata.c as a result of prior move.
2007-08-21 17:38:20 +00:00
Alasdair Kergon
be6845999b
Fix inconsistent licence notices: executables are GPLv2; libraries LGPLv2.1.
2007-08-20 20:55:30 +00:00
Jim Meyering
08c9ff434b
Add "const" attributes where possible: first cut.
2007-08-07 09:06:05 +00:00
Dave Wysochanski
41a94b5400
Update a few comments
2007-08-06 21:11:27 +00:00
Dave Wysochanski
4f629c3bba
Add CORRECT_INCONSISTENT and FAIL_INCONSISTENT flags to vg_lock_and_read
2007-07-23 21:03:42 +00:00
Dave Wysochanski
891c3d298b
Add vg_lock_and_read() external library function.
2007-07-23 17:27:55 +00:00
Dave Wysochanski
33e5601937
Change pv_read_path to pv_by_path
2007-07-12 15:38:53 +00:00
Dave Wysochanski
0c795e2e18
Turn _add_pv_to_vg() into external library function add_pv_to_vg()
2007-07-12 05:04:42 +00:00
Dave Wysochanski
30303765a3
Refactor vg_extend error path.
2007-07-12 04:12:04 +00:00
Dave Wysochanski
c254039677
Add pv_read_path, a proposed external LVM library function to take a device path and return a PV handle
2007-07-11 23:33:12 +00:00
Dave Wysochanski
ea8a12dbc1
Convert _add_pv_to_vg to usable LVM library function.
2007-07-02 21:48:30 +00:00
Petr Rockai
e7ddf4168d
Make warnings go to stderr. Change log_warn to that effect, log_print
...
continues to send messages to stdout.
2007-06-28 17:33:44 +00:00
Dave Wysochanski
d6b1de30fe
Convert vg->status checks to use vg_check_status function.\nRename status_flags to status in vg_check_status.
2007-06-19 04:36:12 +00:00
Dave Wysochanski
69483a8aaf
Add vg_status function and clean up vg->status in tools directory
2007-06-19 04:23:32 +00:00
Dave Wysochanski
1f54709ee6
Make vg_extend() format_instance * parameter internal to vg_extend()
2007-06-19 00:33:43 +00:00
Dave Wysochanski
ff77bb1ab6
Remove get_ prefix from get_pv_* functions
2007-06-15 22:16:55 +00:00
Dave Wysochanski
3df2c388b1
convert pv->vg_name[0] to \!is_orphan(pv)
2007-06-14 15:48:05 +00:00
Dave Wysochanski
fb6ca78e05
Remove casts in pv_create and find_pv_in_vg_by_uuid
2007-06-13 21:14:07 +00:00
Dave Wysochanski
dd04871295
Convert pv_handle_t to pv_t * and tidy up whitespace
2007-06-13 20:55:56 +00:00
Dave Wysochanski
f1f4c1ea50
Add typedef pv_handle_t
2007-06-13 19:52:48 +00:00
Dave Wysochanski
b496210d9a
Convert find_pv_in_vg_by_uuid and pv_create to use PV handles
2007-06-12 22:41:27 +00:00
Dave Wysochanski
fc2063b660
Change PV_HANDLE_DEREF to pv_field and add paren's
2007-06-12 21:39:49 +00:00
Dave Wysochanski
0e2f6120ee
Add get_pv_* functions to return PV fields in prep for external LVM library
2007-06-12 21:20:20 +00:00
Dave Wysochanski
4e5f3e7331
Add wrappers to functions related to pv commands in preparation for exported LVM lib
2007-06-11 18:29:30 +00:00
Dave Wysochanski
c221b0bc21
Add vg_check_status to consolidate vg status flags checks and error messages.
2007-06-06 19:40:28 +00:00
Alasdair Kergon
4f2f566b06
Add devices/preferred_names config regex list for displayed device names.
...
Free a temporary dir string in fcntl_lock_file() after use.
Fix a dm_pool_destroy() in matcher_create().
Introduce goto_bad macro.
2007-04-26 16:44:59 +00:00
Dave Wysochanski
28d1c4d7e2
Update pvck to include text metadata area and record detection.
...
--
2007-04-25 21:10:55 +00:00
Dave Wysochanski
d915579c6b
Update pvck to read labels on disk, with flexible --labelsector
...
parameter.
--
2007-04-25 20:03:16 +00:00
Dave Wysochanski
17a6fc0b45
Add 'scan_sector' parameter to label_read and _find_labeller to add
...
flexibility in searching for disk labels.
2007-04-23 18:21:01 +00:00
Milan Broz
851002b87d
Fix vgsplit for lvm1 format (set and validate VG name in PVs metadata).
...
Split metadata areas in vgsplit properly.
2007-03-23 12:43:17 +00:00
Alasdair Kergon
37fb985a82
If a PV reappears after it was removed from its VG, make it an orphan.
2007-02-07 13:29:52 +00:00
Alasdair Kergon
4dc0ec2253
Adjust some alignments for ia64 and sparc.
...
(Some of the changes are probably unnecessary.)
2006-11-30 23:11:42 +00:00
Alasdair Kergon
a89d601463
Add some missing bounds checks on 32 bit extent counters.
...
Add Petabyte and Exabyte support.
Fix lvcreate error message when 0 extents requested.
2006-11-10 18:24:11 +00:00
Alasdair Kergon
5faf02761f
rely on pv_setup functions to fix up pe_count
2006-10-07 23:06:18 +00:00
Alasdair Kergon
209f03f2b6
Fix format_text mda_setup pv->size and pv_setup pe_count calculations.
...
(This area of the code needs a lot more work.)
2006-10-05 22:02:52 +00:00
Alasdair Kergon
5095de5177
Fix two potential NULL pointer derefs in error cases in vg_read().
2006-09-21 20:25:54 +00:00
Alasdair Kergon
94d501edd9
Fix PE_ALIGN for pagesize over 32KB.
2006-08-17 19:53:36 +00:00
Alasdair Kergon
b5d761e1d2
wrap PE_ALIGN
2006-08-17 19:30:59 +00:00
Alasdair Kergon
438abca889
Add checks for duplicate LV name, lvid and PV id before writing metadata.
...
Report all sanity check failures, not just the first.
2006-08-09 19:33:25 +00:00
Alasdair Kergon
e67ed94b3e
Add some forgotten memlock checks to _vg_read to protect against full scans.
2006-07-04 19:36:49 +00:00
Alasdair Kergon
898e6f8e41
Add mirror_library description to example.conf.
...
More compile-time cleanup.
2006-05-11 17:58:58 +00:00
Alasdair Kergon
2c7fbadeef
more coverity fixes
2006-05-10 17:49:25 +00:00
Alasdair Kergon
72b2cb613a
Make SIZE_SHORT the default for display_size().
...
Fix some memory leaks in error paths found by coverity.
Use C99 struct initialisers.
Move DEFS into configure.h.
Clean-ups to remove miscellaneous compiler warnings.
2006-05-09 21:23:51 +00:00
Alasdair Kergon
26b2524996
Invalidate cache if composition of VG changed externally.
2006-04-21 19:12:41 +00:00
Alasdair Kergon
dbd3026f8a
vgrename accepts vgid and exported VG.
2006-04-13 21:08:29 +00:00
Alasdair Kergon
a5fe5a7cdd
Fix vgexport/vgimport to set/reset PV exported flag so pv_attr is correct.
...
Add vgid to struct physical_volume and pass with vg_name to some functions.
2006-04-12 21:23:04 +00:00
Alasdair Kergon
e8db70239e
If two or more VGs are found with the same name, use one that is not exported.
2006-04-12 17:54:11 +00:00
Alasdair Kergon
7a5933259f
Clear up precommitted metadata better on disk after use.
...
[Some activation-related features will stop working for a while now.
Some types of activation are getting split into two steps, with the
first step using the precommitted metadata.]
2005-10-31 20:15:28 +00:00
Alasdair Kergon
1817dbaf60
more mirror library functions
2005-10-28 12:48:50 +00:00
Alasdair Kergon
e6c20c6100
Fix new mirror_seg pointer.
2005-10-27 21:51:28 +00:00
Alasdair Kergon
352a99b95a
Use dm_is_dm_major instead of local copy.
...
Allow mapped devices to be used as PVs safely.
2005-10-25 19:08:21 +00:00
Alasdair Kergon
2262b32057
Use hash, bitset, malloc, pool from libdevmapper.
2005-10-16 23:03:59 +00:00
Alasdair Kergon
0440a206dc
Fix pvmove segment splitting.
...
Abstract vg_validate.
2005-07-12 19:40:59 +00:00
Alasdair Kergon
5e947dac48
Various allocation-related pvmove fixes.
2005-06-14 17:54:48 +00:00
Alasdair Kergon
60f13f01d2
Basic support for mirrors.
2005-06-01 16:51:55 +00:00
Alasdair Kergon
21ca3b1227
Fix vgmerge to handle duplicate LVIDs.
2005-05-19 16:48:51 +00:00
Alasdair Kergon
7f2def9e6d
Remove lists of free PV segments.
...
Simplify pv_maps code and remove slow bitset algorithm.
2005-05-11 15:02:49 +00:00
Alasdair Kergon
bbdd74e0fa
fix compiler warnings
2005-05-09 17:41:36 +00:00
Alasdair Kergon
15db9fcfbf
Reinstate full PV size when removing from VG.
...
Support loopfiles for testing.
Complete the pv_segment support.
2005-05-03 17:28:23 +00:00
Alasdair Kergon
41d7e56a02
initial pv_segment defns
2005-04-19 20:52:35 +00:00
Alasdair Kergon
cc39455372
_copy_pv -> int
2005-04-19 20:44:21 +00:00
Alasdair Kergon
66278a80b1
vgchange --physicalextentsize (but only if it's an exact fit - may need to
...
use pvmove first)
2005-04-18 14:56:42 +00:00
Alasdair Kergon
f1379332dc
extract compose_log_line
2005-04-17 23:59:04 +00:00
Alasdair Kergon
ef9188078d
get_pv_from_vg_by_id
2005-04-17 23:57:44 +00:00
Alasdair Kergon
072893aabd
Internal snapshot code restructuring.
2005-04-07 12:39:44 +00:00
Alasdair Kergon
367b9cb1f5
Move from 2-step to 3-step on-disk metadata commit.
2005-04-06 18:59:55 +00:00
Alasdair Kergon
e5b836d2d6
Improve detection of external changes affecting internal cache.
2005-03-21 22:40:35 +00:00
Alasdair Kergon
b9565b406a
Cope with new devices appearing by rescanning /dev if a uuid can't be found.
2005-03-08 13:46:17 +00:00
Alasdair Kergon
52f9afec22
Always fail if random id generation fails.
2005-01-20 18:11:53 +00:00
Alasdair Kergon
73543ee70d
Fix vgscan metadata auto-correction.
2005-01-17 18:24:28 +00:00
Alasdair Kergon
c29d24650d
Display all filtered devices, not just PVs, with pvs -a.
2004-06-19 19:27:00 +00:00
Alasdair Kergon
a0a23eff4b
Rename allocation policies; add --alloc to cmdline; LV inherits from VG.
2004-05-18 22:12:53 +00:00
Alasdair Kergon
5668c1abad
move find_pv_by_name to lib
2004-05-05 11:04:28 +00:00
Alasdair Kergon
6606c3ae81
Update copyright notices.
2004-03-30 19:35:44 +00:00
Alasdair Kergon
93af0a4a51
indent
2004-03-26 21:07:30 +00:00
Alasdair Kergon
cf6dd25126
tagging
2004-03-08 17:19:15 +00:00
Alasdair Kergon
12bb377f9b
Default to unlimited number of LVs/PVs in lvm2 format.
2003-11-06 20:33:34 +00:00
Alasdair Kergon
c7ee8edc33
relax a scanning restriction
2003-10-15 20:10:11 +00:00
Alasdair Kergon
29ebccc3e2
Cope better when format functions are missing.
2003-08-26 21:12:06 +00:00
Alasdair Kergon
10f57523d9
Fix vgimport fix to work outside debug mode.
2003-07-15 01:26:24 +00:00
Alasdair Kergon
914c97239f
Another sync point - numerous fixes & clean ups.
2003-07-04 22:34:56 +00:00
Alasdair Kergon
44c319cf0d
move fields
2003-05-06 12:06:02 +00:00
Alasdair Kergon
97d344e2cb
basic pvmove support
2003-04-30 15:23:43 +00:00
Alasdair Kergon
b8c919b402
o Metadata area struct change.
...
o Support physical extent restrictions on PV lists for allocations
e.g. lvcreate -l 200 vg1 /dev/sda1:100-199:300-399
2003-04-24 22:23:24 +00:00
Alasdair Kergon
010c07de20
Improve message for pvcreate of empty device.
2003-04-22 16:09:11 +00:00
Alasdair Kergon
26e7f2e0c4
Tidy various pre-processing incl. making libdl optional.
2003-03-24 18:08:53 +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
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
5a52dca9c2
Some new features.
2002-11-18 14:04:08 +00:00
Alasdair Kergon
031079703f
Rewrite missing/corrupt metadata in more cases.
2002-05-13 12:38:54 +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
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
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
413cc9189e
Begin conversion so LV id is passed to activation unit instead of
...
struct logical_volume.
2002-02-25 12:56:16 +00:00
Alasdair Kergon
a45f546fe0
o Use 'pvcreate --setphysicalvolumesize' with no short form (instead of -s)
...
and add severe warning if it's used to make a device seem bigger than
it really is. This is not an option people should be using as it
breaks metadata integrity.
o Use uint64_t throughout (rather than unsigned long long)
o Convert a few messages that contain pathnames into the more common form:
pathname: message
2002-02-20 18:29:30 +00:00
Heinz Mauelshagen
e1d93eb457
Second path on "pvcreate -s"
2002-02-15 14:33:59 +00:00
Heinz Mauelshagen
f48d3bcbd0
First cut on "pvcreate -s"
2002-02-15 01:26:16 +00:00
Joe Thornber
e56598a84d
o Initialise the snapshot list properly in vgcreate.
2002-02-14 15:06:24 +00:00
Alasdair Kergon
60274aba6e
Preparation for an LVM2 liblvm - pass cmd_context into each tool and
...
link some globals that the tools need into that structure.
2002-02-11 20:50:53 +00:00
Alasdair Kergon
851866d2fc
Allocate fixed space for vg->system_id when vg is created, instead of
...
dynamically.
2002-01-30 12:47:29 +00:00
Alasdair Kergon
f53c6aa66e
o Basic support for exporting (but importing not completed yet).
...
o When volume group does not have write flag set, prevent changes to it.
o Preparation for partial activation (not completed yet).
2002-01-29 17:23:33 +00:00
Alasdair Kergon
1176eb2597
Tweak some error message levels.
2002-01-27 21:30:47 +00:00
Alasdair Kergon
7743c8685e
Clear a FIXME about checking for identical devices by comparing dev_t
...
instead of name.
2002-01-24 22:37:24 +00:00
Joe Thornber
f868d63582
o Similar changes for lv_list.
2002-01-21 16:49:32 +00:00
Joe Thornber
cc282870dd
o Changed
...
struct pv_list {
struct list list;
struct physical_volume pv;
};
to
struct pv_list {
struct list list;
struct physical_volume *pv;
};
o New function in toollib 'create_pv_list', which creates a list of pv's
from a given command line array of pv's.
o Changed lvcreate/extend to use this (fixes lvextend [pv list] bug).
2002-01-21 16:05:23 +00:00
Joe Thornber
e586401ecb
o Changed find_pv_in_vg, and find_lv_in_vg to return a struct pv_list * and
...
struct lv_list * respectively.
2002-01-21 14:28:12 +00:00
Alasdair Kergon
add7dc2d5a
o pvcreate --uuid to specify the uuid (required before using vgcfgrestore
...
onto a new device). uuid specified must not already exist on the system.
o More message tidying.
o When checking for label, only read PV metadata.
o Add ataraid. [Needs moving into config/defaults files.]
2002-01-16 18:10:08 +00:00
Alasdair Kergon
4a624ca055
o ACTIVE is no longer a status flag - lv_active() used to check if an LV
...
is active in the device-mapper.
o Many operations can be carried out regardless of whether the VG is
active or not.
o vgscan does not activate anything - use vgchange.
o Change lvrename to support renaming of active LVs.
o Remove '//' appearing in some pathnames.
o Dummy lv_check_segments() for compilation.
2002-01-10 23:21:07 +00:00
Alasdair Kergon
b80f32dd0a
Clarify terminology:
...
VG is resizeable - PVs can be added or removed
PV is allocatable - free extents on it may be allocated to LVs
2002-01-10 15:09:51 +00:00
Joe Thornber
5a72a50367
o vgcreate wasn't setting vg->cmd
2002-01-07 15:27:55 +00:00
Alasdair Kergon
579944d327
o Tool support for segments.
...
o vgmerge working.
2001-11-28 13:45:50 +00:00
Alasdair Kergon
5238b63f1a
Miscellaneous tidying
2001-11-14 13:52:38 +00:00
Joe Thornber
d53f88d7af
o Stuff
2001-11-12 19:28:50 +00:00
Alasdair Kergon
277237805a
iospace restructured
2001-11-12 15:10:01 +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
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
2ba80b436f
o Added lvs_in_vgs_opened
2001-11-07 15:02:07 +00:00
Alasdair Kergon
642c2e964b
lvcreate
2001-11-06 19:02:26 +00:00
Joe Thornber
1b9fcf48b1
o LGPL list implementation
2001-10-31 12:47:01 +00:00
Alasdair Kergon
cfd658dab0
lvremove
2001-10-29 13:52:23 +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
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
28f5d16b4f
Misc structural changes.
2001-10-01 19:36:06 +00:00
Alasdair Kergon
b8ef655fb7
Tidy include files
2001-10-01 15:14:39 +00:00
Alasdair Kergon
269930c0da
lvactivate checkpoint commit
2001-09-25 12:49:28 +00:00