]>
sourceware.org Git - lvm2.git/log
Dave Wysochanski [Wed, 6 May 2009 15:25:23 +0000 (15:25 +0000)]
Update columns.h comment.
Dave Wysochanski [Wed, 29 Apr 2009 20:14:21 +0000 (20:14 +0000)]
Fixup whitespace.
Dave Wysochanski [Wed, 29 Apr 2009 20:11:46 +0000 (20:11 +0000)]
Fixup whitespace.
Dave Wysochanski [Tue, 28 Apr 2009 19:08:25 +0000 (19:08 +0000)]
Use liblvm.so instead of .a
Dave Wysochanski [Tue, 28 Apr 2009 17:46:47 +0000 (17:46 +0000)]
Fix error path in vg_make_handle().
Enter the error condition if either of the allocations fail, and
don't use dm_pool_zalloc if dm_pool_create fails.
Peter Rajnoha [Sun, 26 Apr 2009 08:12:12 +0000 (08:12 +0000)]
Fix wrong arg in lv_is_virtual_origin call while creating snapshots.
Alasdair Kergon [Sat, 25 Apr 2009 01:17:59 +0000 (01:17 +0000)]
Add sparse devices: lvcreate -s --virtualoriginsize (hidden zero origin).
Add lvs origin_size field.
Fix linux configure --enable-debug to exclude -O2.
Still a few rough edges, but hopefully usable now:
lvcreate -s vg1 -L 100M --virtualoriginsize 1T
Alasdair Kergon [Fri, 24 Apr 2009 21:44:15 +0000 (21:44 +0000)]
Fix linux configure --enable-debug to exclude -O2.
Milan Broz [Fri, 24 Apr 2009 12:03:55 +0000 (12:03 +0000)]
Fix pool leak in lvmcache_read_vg error path.
(Introduced in previous patches.)
Peter Rajnoha [Fri, 24 Apr 2009 11:30:49 +0000 (11:30 +0000)]
Fix segfault when using -U, -G and -M options in dmsetup.
Petr Rockai [Fri, 24 Apr 2009 08:00:48 +0000 (08:00 +0000)]
Avoid scanning non-PV devices in functional tests, otherwise lvconvert --repair
breaks for some reason -- possibly needs investagation, but this should fix it
in the meantime.
Petr Rockai [Thu, 23 Apr 2009 16:56:21 +0000 (16:56 +0000)]
Implement, test and document (first iteration of) lvconvert --repair.
Petr Rockai [Thu, 23 Apr 2009 16:45:30 +0000 (16:45 +0000)]
Refuse adding missing PVs in create_pv_list in toollib when allocatable_only is
requested.
Petr Rockai [Thu, 23 Apr 2009 16:43:01 +0000 (16:43 +0000)]
A more thorough PV equality test (that also copes better with MISSING_PVs) in
_is_mirror_image_removable.
Petr Rockai [Thu, 23 Apr 2009 16:41:27 +0000 (16:41 +0000)]
Do not include MISSING_PVs in allocation maps.
Dave Wysochanski [Thu, 23 Apr 2009 16:27:58 +0000 (16:27 +0000)]
Update columns.h comment to describe macro args.
Alasdair Kergon [Thu, 23 Apr 2009 12:20:15 +0000 (12:20 +0000)]
fix typo reported by "A. Costa" <agcosta@gis.net>
Milan Broz [Wed, 22 Apr 2009 17:00:28 +0000 (17:00 +0000)]
Fix vgreduce --removemissing failure exit code.
Dave Wysochanski [Wed, 22 Apr 2009 12:46:25 +0000 (12:46 +0000)]
Remove some trailing whitespace so git won't complain.
Milan Broz [Wed, 22 Apr 2009 10:38:16 +0000 (10:38 +0000)]
Clean a lot of extra extra whitespaces.
Milan Broz [Wed, 22 Apr 2009 09:39:45 +0000 (09:39 +0000)]
Fix remote metadata backup for clvmd
Run backup of metadata on remote nodes in the
same place like local node - when calling backup().
Introduce backup_locally() which calls only
local backup if needed.
Remote backup is now trigerred by LCK_VG_BACKUP flag
combination (special VG lock).
This lock type will call check_current_backup()
(including backup_locally() call) and updates
metadata on all nodes.
(Patch fixes non-functional remote backup,
current call during VG lock never triggers.)
Milan Broz [Wed, 22 Apr 2009 09:31:30 +0000 (09:31 +0000)]
Alloc PV internal structure from VG mempool if possible.
Jonathan Earl Brassow [Tue, 21 Apr 2009 19:16:22 +0000 (19:16 +0000)]
- Updating cluster log with latest code changes/bug fixes before
altering to new kernel structures.
Milan Broz [Tue, 21 Apr 2009 14:31:57 +0000 (14:31 +0000)]
Move metadata backup call after vg_commit.
The backup() call store metadata from memory.
But in cluster backup() call performs
remote nodes metadata backup and it reads data from disk.
For metadata backup consistency,
patch moves all backup() calls after vg_commit.
(Moreover, some tools already do that this way.)
Milan Broz [Tue, 21 Apr 2009 13:11:28 +0000 (13:11 +0000)]
Tidy lv_hash[_lock] use inside clvmd.
- Rename unlock_all to destroy_lvhash,
this function is called in cluster shutdown
unlocks everything and clean up allocated info space.
- Tidy lv_hash_lock use
.
Except adding free(lvi) in lv_has destructror
there is no functional change.
Milan Broz [Tue, 21 Apr 2009 12:59:18 +0000 (12:59 +0000)]
Fix pvseg report for orphan PVs and other devices.
If user requests report attribute from PVSEG type
and PV is orphan (or all devices is set), the report
is empty.
Try for example (when only orphan PV are present)
#pvs
#pvs -o +devices
# pvs /dev/sdb1
PV VG Fmt Attr PSize PFree
/dev/sdb1 lvm2 -- 46.58G 46.58G
# pvs -o +devices /dev/sdb1
(no output)
The problem is caused by empty pv->segments list.
Fix it by providing fake segment here (similar to fake structures
in _pvsegs_sub_single() calls.
Milan Broz [Tue, 21 Apr 2009 12:57:31 +0000 (12:57 +0000)]
Fix pvs -a for segmented output
# pvs -a -o devices
Volume group name (null) has invalid characters
Skipping volume group (null)
...
_pvsegs_sub_single creates fake vg, we need to check
that pv is real here.
Dave Wysochanski [Mon, 20 Apr 2009 20:46:06 +0000 (20:46 +0000)]
Add libdevmapper to test/api building.
Milan Broz [Thu, 16 Apr 2009 10:16:14 +0000 (10:16 +0000)]
Add MMC device type to filters.
Milan Broz [Wed, 15 Apr 2009 14:42:27 +0000 (14:42 +0000)]
Fix dmsetup.static build.
Milan Broz [Fri, 10 Apr 2009 10:01:38 +0000 (10:01 +0000)]
Properly release VG memory pool in all CLI tools.
Milan Broz [Fri, 10 Apr 2009 10:01:08 +0000 (10:01 +0000)]
Properly release VG memory pool in metadata manipulation code.
Milan Broz [Fri, 10 Apr 2009 10:00:37 +0000 (10:00 +0000)]
Properly release VG memory pool in archiver code.
Milan Broz [Fri, 10 Apr 2009 10:00:04 +0000 (10:00 +0000)]
Properly release VG memory pool in activation code and clvmd.
Milan Broz [Fri, 10 Apr 2009 09:59:18 +0000 (09:59 +0000)]
Introduce memory pool per volume group.
Since now, all code reading volume group is responsible for releasing
the memory allocated by calling vg_release(vg).
(For simplicity of use, vg_releae can be called for vg == NULL,
the same logic like free(NULL)).
Also providing simple macro for unlocking & releasing in one step,
tools usualy uses this approach.
The global memory pool (cmd->mem) should be used only for global
physical volume operations.
This patch have to be applied with all subsequent patches to complete
memory pool per vg logic.
Using separate memory pool has quite bit memory saving impact when
using large VGs, this is mainly needed when we have to use
preallocated and locked memory (and should not overflow from that
memory space).
Milan Broz [Fri, 10 Apr 2009 09:56:58 +0000 (09:56 +0000)]
Helper function to catch memory pool leaks.
Milan Broz [Fri, 10 Apr 2009 09:56:00 +0000 (09:56 +0000)]
Properly copy the whole pv structure for later use.
The all_pvs list, used in vg_read, should make its own private
copy of pv structures, otherwise (when vg will use its own pool)
it will point to released memory pool.
The same applies for get_pvs() call.
Patch adds pv_list copy helper and adds explicit memory pool
parameter into _copy_pv.
(Please note that all these helper functions cannot guarantee that
vg related fields are valid - proper vg read & lock must be used
if it is requested.)
Milan Broz [Fri, 10 Apr 2009 09:54:36 +0000 (09:54 +0000)]
Always return exit error status when locking of volume group fails.
Milan Broz [Fri, 10 Apr 2009 09:53:42 +0000 (09:53 +0000)]
Fix mirror log convert validation question.
Zdenek Kabelac [Wed, 8 Apr 2009 14:08:05 +0000 (14:08 +0000)]
Avoid referencing files from DESTDIR during build process
Zdenek Kabelac [Wed, 8 Apr 2009 14:04:35 +0000 (14:04 +0000)]
Do not create some dm and lvm static librarie when they are not requested
by configure option
Add dependency for static dmeventd library
Milan Broz [Wed, 8 Apr 2009 12:53:20 +0000 (12:53 +0000)]
Enable use of cached metadata for pvs & pvdisplay.
Currently PV commands, which performs full device scan, repeatly
re-reads PVs and scans for all devices.
This behaviour can lead to OOM for large VG.
This patch allows using internal metadata cache for pvs & pvdisplay,
so the commands scan the PVs only once.
(We have to use VG_GLOBAL otherwise cache is invalidated on every
VG unlock in process_single PV call.)
Alasdair Kergon [Tue, 7 Apr 2009 22:53:48 +0000 (22:53 +0000)]
Add missing 'device-mapper' internal subdir build dependency.
Milan Broz [Tue, 7 Apr 2009 10:22:14 +0000 (10:22 +0000)]
Use pv from newly read_vg to avoid possible use of not initialized memory.
If the vg in process_each_segment_in_pv is NULL, the pv struct
can be incomplete (for example lv_segs are not copied in get_pvs()
call).
We need use the new pv from just read-in volume group.
(The same code is in pvdisplay already.)
Milan Broz [Tue, 7 Apr 2009 10:20:28 +0000 (10:20 +0000)]
Fix memory pool leak.
Call the alloc_destory call always after finishing operation
with handle otherwise it will leak a memory pool.
Also fix return code in lv_extend.
Dave Wysochanski [Fri, 3 Apr 2009 14:23:17 +0000 (14:23 +0000)]
Fix whitespace in t-mdata-strings.sh
Author: Dave Wysochanski <dwysocha@redhat.com>
Takahiro Yasui [Thu, 2 Apr 2009 21:34:41 +0000 (21:34 +0000)]
Save and restore the previous logging level when log level is changed.
Takahiro Yasui [Thu, 2 Apr 2009 20:46:11 +0000 (20:46 +0000)]
Fix error message when archive initialization fails.
Milan Broz [Thu, 2 Apr 2009 15:02:18 +0000 (15:02 +0000)]
Fix debug pool grow object to properly support delta=0
(It prints garbage for some reports)
Milan Broz [Thu, 2 Apr 2009 15:01:11 +0000 (15:01 +0000)]
Allocate new pv->vg_name from pool, it can be destroyed later.
(The mempool rename will be used later by vg private mempools)
Milan Broz [Thu, 2 Apr 2009 14:59:48 +0000 (14:59 +0000)]
Do not use pointer from released memory pool (cmd->cmd_line).
Christine Caulfield [Wed, 1 Apr 2009 07:51:05 +0000 (07:51 +0000)]
Make sure clvmd-corosync releases the lockspace when it exits.
patch from Xinwei Hu
Milan Broz [Tue, 31 Mar 2009 17:30:47 +0000 (17:30 +0000)]
Add some more special chars for device name test.
Milan Broz [Thu, 26 Mar 2009 09:25:18 +0000 (09:25 +0000)]
fix some issues when compiling with -D DEBUG_POOL
- fix compilation issues
- fix wrong pool object maipulation (lvm dumpconfig triggers assert)
- second iteration in loop _log_parallel_areas operates on non-existing object
Milan Broz [Tue, 24 Mar 2009 13:16:34 +0000 (13:16 +0000)]
Fix segfault for vgcfgrestore on VG with missing PVs.
Christine Caulfield [Tue, 24 Mar 2009 11:49:15 +0000 (11:49 +0000)]
Block SIGINT & SIGTERM in clvmd subthreads so they don't delay shutdown.
Patch from Xinwei Hu, Thanks
Takahiro Yasui [Mon, 23 Mar 2009 22:57:27 +0000 (22:57 +0000)]
Restore log_suppress state when metadata backup file is up-to-date.
Author: Takahiro Yasui <tyasui@redhat.com>
Takahiro Yasui [Mon, 23 Mar 2009 22:29:06 +0000 (22:29 +0000)]
Remove old metadata backup file after renaming vg.
Author: Takahiro Yasui <tyasui@redhat.com>
Takahiro Yasui [Mon, 23 Mar 2009 21:56:32 +0000 (21:56 +0000)]
Fix size and error message of memory allocation at backup initialization.
Author: Takahiro Yasui <tyasui@redhat.com>
Takahiro Yasui [Mon, 23 Mar 2009 21:13:37 +0000 (21:13 +0000)]
Fix error message when adding metadata directory to internal list fails.
Author: Takahiro Yasui <tyasui@redhat.com>
Petr Rockai [Tue, 17 Mar 2009 14:40:00 +0000 (14:40 +0000)]
Missed file from previous checkin.
Petr Rockai [Tue, 17 Mar 2009 14:00:58 +0000 (14:00 +0000)]
Some extra (paranoid) checks on dev_is_{md,swap} result.
Petr Rockai [Tue, 17 Mar 2009 13:59:56 +0000 (13:59 +0000)]
Detect and wipe swap signatures in pvcreate.
Dave Wysochanski [Mon, 16 Mar 2009 20:00:10 +0000 (20:00 +0000)]
Fix some clean rules, fix previous distclean checkin.
In libdm/Makefile.in, we need to cleanup the symlink properly.
Adding to CLEAN_TARGETS seemed like the simplest way to do this
in the current build framework. We could redo dependencies for
VERSIONED_SHLIB, but for now just add to CLEAN_TARGETS.
For scripts/Makefile.in, we should be adding to DISTCLEAN_TARGETS.
The generic rule in make.tmpl.in takes care of the cleanup.
Signed-off-by: Dave Wysochanski <dwysocha@redhat.com>
Author: Takahiro Yasui <tyasui@redhat.com>
Dave Wysochanski [Mon, 16 Mar 2009 18:28:04 +0000 (18:28 +0000)]
Fix some distclean rules.
By gnu coding stds, 'distclean' should remove all files generated
by ./configure in addition to what 'clean' does.
Author: Takahiro Yasui <tyasui@redhat.com>
Milan Broz [Mon, 16 Mar 2009 15:19:29 +0000 (15:19 +0000)]
Fix warning in previous commit.
Milan Broz [Mon, 16 Mar 2009 14:34:57 +0000 (14:34 +0000)]
Fix lv_count when manipulating with snapshots and max_lv is set.
Patch fixes these problems:
- during the snapshot creation process, it needs create 2 LVs,
one is cow, second becomes snapshot.
If the code fails in vg_add_snapshot, code lvcreate will not remove
LV cow volume.
- if max_lv is set and VG contains snapshot, it can happen that
during the activation lv_count is temporarily increased over the limit
and VG metadata are not properly processed
see https://bugzilla.redhat.com/show_bug.cgi?id=490298
- vgcfgrestore alows restore with max_lv set to lower valuer that actual
LV count. This later leads to situation that max_lv is completely ignored.
- vgck doesn't call vg_validate(). It should at least try:-)
Signed-off-by: Milan Broz <mbroz@redhat.com>
Dave Wysochanski [Tue, 10 Mar 2009 15:38:46 +0000 (15:38 +0000)]
Remove unnecessary includes in lvm_base.c.
We would like to declare our handles pv_t, vg_t, and lv_t in
the external library header lvm.h. However, these are already
defined in metadata-exported.h for the use of some of the
in-progress liblvm APIs. Thus, we cannot both define
them in lvm.h and include metadata-exported.h in the external
library C files. We could use preprocessor tricks (#ifndef)
but for now we just avoid the include.
Milan Broz [Tue, 10 Mar 2009 12:10:12 +0000 (12:10 +0000)]
Fix clvmd build after liblvm commit.
Dave Wysochanski [Mon, 9 Mar 2009 15:42:10 +0000 (15:42 +0000)]
Fix error messages when PV uuid or pe_start reading fails.
Author: Takahiro Yasui <tyasui@redhat.com>
Committer: Dave Wysochanski <dwysocha@redhat.com>
Dave Wysochanski [Sun, 8 Mar 2009 18:58:53 +0000 (18:58 +0000)]
Add missing liblvm/.exported_symbols
Dave Wysochanski [Sun, 8 Mar 2009 18:10:39 +0000 (18:10 +0000)]
Fix liblvm version symlink.
Dave Wysochanski [Sun, 8 Mar 2009 17:29:26 +0000 (17:29 +0000)]
Remove unnecessary linker flags for liblvm.
Dave Wysochanski [Sun, 8 Mar 2009 17:06:55 +0000 (17:06 +0000)]
Add DSO generation for new LVM application library.
Fix test/api/test build.
Dave Wysochanski [Fri, 6 Mar 2009 22:49:48 +0000 (22:49 +0000)]
Move lvm.h from lib to liblvm.
Dave Wysochanski [Fri, 6 Mar 2009 16:19:52 +0000 (16:19 +0000)]
Add new liblvm build directory and move lvm_base.c.
The original liblvm.a has been moved to liblvm-internal.a.
We now use liblvm.a for the new application library and build
it inside liblvm directory.
Change dependencies so tools depend on liblvm application library,
and application library depends on liblvm internal.
Dave Wysochanski [Fri, 6 Mar 2009 16:17:28 +0000 (16:17 +0000)]
Rename liblvm to liblvm-internal.
Make preparation for using liblvm for new application library.
Christine Caulfield [Fri, 6 Mar 2009 11:29:38 +0000 (11:29 +0000)]
Fix unlocks in clvmd-corosync.
The DLM unlock returns EUNLOCK in the lksb on success, not 0
Milan Broz [Thu, 5 Mar 2009 16:25:35 +0000 (16:25 +0000)]
Fix possible increasing in memory allocation if refreshing_context
(for example when CLVMD_CMD_LOCK_VG for is called during vgscan).
If clvmd calls LV lock, it calls
/* clean the pool for another command */
dm_pool_empty(cmd->mem);
to clean up memory pool after command.
Unfortunately, do_refresh_cache() do not call this
and because during it operation it allocates some memory,
the pool increases.
Also do_refresh_cache should use lvm_lock
(it manipulates with lvm internal data).
The same applies for lvm_backup command.
Signed-off-by: Milan Broz <mbroz@redhat.com>
Alasdair Kergon [Tue, 3 Mar 2009 18:25:05 +0000 (18:25 +0000)]
post-release
Milan Broz [Tue, 3 Mar 2009 16:35:32 +0000 (16:35 +0000)]
vgname_from_mda now tries to parse for vgname even
if rlocn not defined (there is no metadata area).
In most cases it fails in validate_name(),
unfortunately there are situatuions, when
validate_name is ok and later code fails with
checksum error.
Reproducer:
# dd if=/dev/zero of=/dev/loop0
# pvcreate --metadatasize 637k /dev/loop0
Physical volume "/dev/loop0" successfully created
# pvs /dev/loop0
/dev/loop0: Checksum error
PV VG Fmt Attr PSize PFree
/dev/loop0 lvm2 -- 1.00M 1.00M
Signed-off-by: Milan Broz <mbroz@redhat.com>
-
Alasdair Kergon [Tue, 3 Mar 2009 13:03:03 +0000 (13:03 +0000)]
pre-release
Alasdair Kergon [Sat, 28 Feb 2009 20:04:24 +0000 (20:04 +0000)]
Fix last check-ins: seg can be NULL.
Alasdair Kergon [Sat, 28 Feb 2009 19:43:42 +0000 (19:43 +0000)]
.
Alasdair Kergon [Sat, 28 Feb 2009 00:54:06 +0000 (00:54 +0000)]
Attempt cleanup in child before execing new binary in exec_cmd()
Alasdair Kergon [Fri, 27 Feb 2009 23:55:15 +0000 (23:55 +0000)]
.
Alasdair Kergon [Fri, 27 Feb 2009 23:40:11 +0000 (23:40 +0000)]
fsadm cleanups & release prep
Alasdair Kergon [Wed, 25 Feb 2009 23:33:30 +0000 (23:33 +0000)]
autoreconf (using fedora 10 for this now)
Milan Broz [Wed, 25 Feb 2009 23:31:06 +0000 (23:31 +0000)]
pe_start can be overwritten in VG metadata, so it is not PV label-only field.
Milan Broz [Wed, 25 Feb 2009 23:29:06 +0000 (23:29 +0000)]
Try to avoid full rescan if label scan is enough.
Alasdair Kergon [Wed, 25 Feb 2009 22:41:12 +0000 (22:41 +0000)]
Use pkgconfig to obtain corosync library details during configuration. (kabi)
Christine Caulfield [Wed, 25 Feb 2009 14:33:00 +0000 (14:33 +0000)]
Fix error returns in clvmd-corosync interface to DLM.
Thanks to Xinwei Hu for spotting this.
Dave Wysochanski [Wed, 25 Feb 2009 13:17:40 +0000 (13:17 +0000)]
Update vgchange and vgmknodes man pages to include --refresh.
Author: Dave Wysochanski <dwysocha@redhat.com>
Zdenek Kabelac [Tue, 24 Feb 2009 15:48:00 +0000 (15:48 +0000)]
Fixed bug where lvresize option -t was not properly passed to fsadm.
Using argv[] list in exec_cmd() to allow more params for external commands.
Fsadm does not allow checking mounted filesystem.
Fsadm no longer accepts 'any other key' as 'no' answer to y/n.
Fsadm improved handling of command line options.
Thomas Woerner [Tue, 24 Feb 2009 13:13:56 +0000 (13:13 +0000)]
Fix include/.symlinks for lvm2.h to lvm.h renaming
Author: Thomas Woerner <twoerner@redhat.com>
Thomas Woerner [Tue, 24 Feb 2009 13:03:45 +0000 (13:03 +0000)]
Added files lib/lvm.h and lib/lvm_base.c:
New structure lvm (used as an alias to cmd_context), new type definition lvm_t
for the lvm handle. Added functions lvm_create, lvm_destroy and
lvm_reload_config using the new handle.
Modified test/api/test.c:
Use new lvm.h header file and lvm_t handle.
Removed lib/lvm2.h
Author: Thomas Woerner <twoerner@redhat.com>
Milan Broz [Mon, 23 Feb 2009 16:53:42 +0000 (16:53 +0000)]
Fix validation of dataalignment value introduced in previous commit.
Alasdair Kergon [Sun, 22 Feb 2009 22:11:58 +0000 (22:11 +0000)]
Move tools/version.h to lib/misc/lvm-version.h.
Split LVM_VERSION into MAJOR, MINOR, PATCHLEVEL, RELEASE and RELEASE_DATE.
Alasdair Kergon [Sun, 22 Feb 2009 21:14:37 +0000 (21:14 +0000)]
Add system_dir parameter to create_toolcontext() and call it system_dir
everywhere for consistency.
Milan Broz [Sun, 22 Feb 2009 19:32:28 +0000 (19:32 +0000)]
Comment out pvcreate pagesize alignment test for now.
This page took 0.072292 seconds and 5 git commands to generate.