This is the mail archive of the
lvm2-cvs@sourceware.org
mailing list for the LVM2 project.
LVM2 ./WHATS_NEW lib/mirror/mirrored.c libdm/l ...
- From: agk at sourceware dot org
- To: lvm-devel at redhat dot com, lvm2-cvs at sourceware dot org
- Date: 24 May 2010 17:46:48 -0000
- Subject: LVM2 ./WHATS_NEW lib/mirror/mirrored.c libdm/l ...
CVSROOT: /cvs/lvm2
Module name: LVM2
Changes by: agk@sourceware.org 2010-05-24 17:46:48
Modified files:
. : WHATS_NEW
lib/mirror : mirrored.c
libdm : libdm-deptree.c
Log message:
Choose between clustered log versions based on kernel version.
Add fixmes for broken strcmp.
Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/WHATS_NEW.diff?cvsroot=lvm2&r1=1.1595&r2=1.1596
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/lib/mirror/mirrored.c.diff?cvsroot=lvm2&r1=1.69&r2=1.70
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/libdm/libdm-deptree.c.diff?cvsroot=lvm2&r1=1.79&r2=1.80
--- LVM2/WHATS_NEW 2010/05/24 16:30:15 1.1595
+++ LVM2/WHATS_NEW 2010/05/24 17:46:47 1.1596
@@ -1,6 +1,6 @@
Version 2.02.67 -
===============================
- Update clustered log kernel module name to log-userspace.
+ Update clustered log kernel module name to log-userspace for 2.6.31 onwards.
Activate only first head of Replicator for vgchange -ay.
Add Replicators' LVs to dtree for activation.
Avoid print activation message if there is a missing VG (Replicator).
--- LVM2/lib/mirror/mirrored.c 2010/05/24 16:30:16 1.69
+++ LVM2/lib/mirror/mirrored.c 2010/05/24 17:46:47 1.70
@@ -28,6 +28,8 @@
#include "sharedlib.h"
#include "str_list.h"
+#include <sys/utsname.h>
+
#ifdef DMEVENTD
# include "libdevmapper-event.h"
#endif
@@ -471,6 +473,7 @@
uint32_t maj, min, patchlevel;
unsigned maj2, min2, patchlevel2;
char vsn[80];
+ struct utsname uts;
if (!_mirrored_checked) {
_mirrored_present = target_present(cmd, "mirror", 1);
@@ -503,8 +506,18 @@
* FIXME: Fails incorrectly if cmirror was built into kernel.
*/
if (attributes) {
- if (!_mirror_attributes && module_present(cmd, "log-userspace"))
- _mirror_attributes |= MIRROR_LOG_CLUSTERED;
+ if (!_mirror_attributes) {
+ /*
+ * The dm-log-userspace module was added to the
+ * 2.6.31 kernel.
+ */
+ /* FIXME Replace the broken string comparison! */
+ if (!uname(&uts) && strncmp(uts.release, "2.6.31", 6) < 0) {
+ if (module_present(cmd, "log-clustered"))
+ _mirror_attributes |= MIRROR_LOG_CLUSTERED;
+ } else if (module_present(cmd, "log-userspace"))
+ _mirror_attributes |= MIRROR_LOG_CLUSTERED;
+ }
*attributes = _mirror_attributes;
}
_mirrored_checked = 1;
--- LVM2/libdm/libdm-deptree.c 2010/05/24 09:04:27 1.79
+++ LVM2/libdm/libdm-deptree.c 2010/05/24 17:46:47 1.80
@@ -1575,6 +1575,7 @@
* The dm-log-userspace module was added to the
* 2.6.31 kernel.
*/
+ /* FIXME Replace the broken string comparison! */
if (strncmp(uts.release, "2.6.31", 6) >= 0)
dm_log_userspace = 1;
}