All of lore.kernel.org
 help / color / mirror / Atom feed
From: prajnoha@sourceware.org <prajnoha@sourceware.org>
To: lvm-devel@redhat.com
Subject: LVM2 ./WHATS_NEW_DM ./configure.in libdm/libdm ...
Date: 23 Mar 2010 14:43:20 -0000	[thread overview]
Message-ID: <20100323144320.2537.qmail@sourceware.org> (raw)

CVSROOT:	/cvs/lvm2
Module name:	LVM2
Changes by:	prajnoha at sourceware.org	2010-03-23 14:43:19

Modified files:
	.              : WHATS_NEW_DM configure.in 
	libdm          : libdm-common.c 
	tools          : dmsetup.c lvmcmdline.c 

Log message:
	Strictly require libudev if udev_sync is used.
	
	This prevents some confusion when libudev was not found so udev_sync was disabled
	automatically. Configure was successful though giving only a tiny warning.
	
	Also, if "dmsetup udevcreatecookie" is used, never return 0x000000 as a result if
	udev is not running and keep the output blank.

Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/WHATS_NEW_DM.diff?cvsroot=lvm2&r1=1.351&r2=1.352
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/configure.in.diff?cvsroot=lvm2&r1=1.132&r2=1.133
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/libdm/libdm-common.c.diff?cvsroot=lvm2&r1=1.93&r2=1.94
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/tools/dmsetup.c.diff?cvsroot=lvm2&r1=1.135&r2=1.136
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/tools/lvmcmdline.c.diff?cvsroot=lvm2&r1=1.115&r2=1.116

--- LVM2/WHATS_NEW_DM	2010/03/23 14:38:37	1.351
+++ LVM2/WHATS_NEW_DM	2010/03/23 14:43:18	1.352
@@ -1,5 +1,6 @@
 Version 1.02.46 - 
 ================================
+  Strictly require libudev if udev_sync is used.
   Add support for ioctl's DM_UEVENT_GENERATED_FLAG.
 
 Version 1.02.45 - 9th March 2010
--- LVM2/configure.in	2010/03/18 09:19:30	1.132
+++ LVM2/configure.in	2010/03/23 14:43:18	1.133
@@ -650,6 +650,7 @@
 AC_MSG_RESULT($UDEV_SYNC)
 
 if test x$UDEV_SYNC = xyes; then
+	AC_CHECK_LIB(udev, udev_queue_get_udev_is_active, UDEV_LIBS="-ludev", AC_MSG_ERROR(bailing out... libudev library is required))
 	AC_DEFINE([UDEV_SYNC_SUPPORT], 1, [Define to 1 to enable synchronisation with udev processing.])
 fi
 
@@ -660,23 +661,6 @@
 AC_MSG_RESULT($UDEV_RULES)
 
 ################################################################################
-dnl -- Check for libudev's udev_queue_get_udev_is_active function when udev synchronisation is enabled
-
-if test x$UDEV_SYNC = xyes; then
-	AC_CHECK_LIB(udev, udev_queue_get_udev_is_active, HAVE_UDEV_QUEUE_GET_UDEV_IS_ACTIVE=yes,
-		HAVE_UDEV_QUEUE_GET_UDEV_IS_ACTIVE=no)
-
-		if test x$HAVE_UDEV_QUEUE_GET_UDEV_IS_ACTIVE = xyes; then
-			AC_DEFINE([HAVE_UDEV_QUEUE_GET_UDEV_IS_ACTIVE], 1,
-			  [Define to 1 if libudev's udev_queue_get_udev_is_active function is available.])
-			UDEV_LIBS="-ludev"
-		else
-			UDEV_LIBS=
-			AC_MSG_WARN(It won't be possible to get udev state. We will assume that udev is not running.)
-		fi
-fi
-
-################################################################################
 dnl -- Compatibility mode
 AC_ARG_ENABLE(compat,   [  --enable-compat         Enable support for old device-mapper versions],
   DM_COMPAT=$enableval, DM_COMPAT=no)
--- LVM2/libdm/libdm-common.c	2010/02/15 16:21:33	1.93
+++ LVM2/libdm/libdm-common.c	2010/03/23 14:43:18	1.94
@@ -29,11 +29,9 @@
 #  include <sys/types.h>
 #  include <sys/ipc.h>
 #  include <sys/sem.h>
-#ifdef HAVE_UDEV_QUEUE_GET_UDEV_IS_ACTIVE
 #  define LIBUDEV_I_KNOW_THE_API_IS_SUBJECT_TO_CHANGE
 #  include <libudev.h>
 #endif
-#endif
 
 #ifdef linux
 #  include <linux/fs.h>
@@ -922,16 +920,6 @@
 
 static int _check_udev_is_running(void)
 {
-
-#  ifndef HAVE_UDEV_QUEUE_GET_UDEV_IS_ACTIVE
-
-	log_debug("Could not get udev state because libudev library "
-		  "was not found and it was not compiled in. "
-		  "Assuming udev is not running.");
-	return 0;
-
-#  else	/* HAVE_UDEV_QUEUE_GET_UDEV_IS_ACTIVE */
-
 	struct udev *udev;
 	struct udev_queue *udev_queue;
 	int r;
@@ -956,9 +944,6 @@
 bad:
 	log_error("Could not get udev state. Assuming udev is not running.");
 	return 0;
-
-#  endif	/* HAVE_UDEV_QUEUE_GET_UDEV_IS_ACTIVE */
-
 }
 
 void dm_udev_set_sync_support(int sync_with_udev)
@@ -1170,8 +1155,10 @@
 {
 	int semid;
 
-	if (!dm_udev_get_sync_support())
+	if (!dm_udev_get_sync_support()) {
+		*cookie = 0;
 		return 1;
+	}
 
 	return _udev_notify_sem_create(cookie, &semid);
 }
--- LVM2/tools/dmsetup.c	2010/03/08 16:05:08	1.135
+++ LVM2/tools/dmsetup.c	2010/03/23 14:43:19	1.136
@@ -45,11 +45,9 @@
 #  include <sys/types.h>
 #  include <sys/ipc.h>
 #  include <sys/sem.h>
-#ifdef HAVE_UDEV_QUEUE_GET_UDEV_IS_ACTIVE
 #  define LIBUDEV_I_KNOW_THE_API_IS_SUBJECT_TO_CHANGE
 #  include <libudev.h>
 #endif
-#endif
 
 /* FIXME Unused so far */
 #undef HAVE_SYS_STATVFS_H
@@ -931,12 +929,10 @@
 #else	/* UDEV_SYNC_SUPPORT */
 static int _set_up_udev_support(const char *dev_dir)
 {
-#ifdef HAVE_UDEV_QUEUE_GET_UDEV_IS_ACTIVE
 	struct udev *udev;
 	const char *udev_dev_dir;
 	size_t udev_dev_dir_len;
 	int dirs_diff;
-#endif
 	const char *env;
 
 	if (_switches[NOUDEVSYNC_ARG])
@@ -955,7 +951,6 @@
 			  " defined by --udevcookie option.",
 			  _udev_cookie);
 
-#ifdef HAVE_UDEV_QUEUE_GET_UDEV_IS_ACTIVE
 	if (!(udev = udev_new()) ||
 	    !(udev_dev_dir = udev_get_dev_path(udev)) ||
 	    !*udev_dev_dir) {
@@ -995,7 +990,6 @@
 	}
 
 	udev_unref(udev);
-#endif
 	return 1;
 }
 
@@ -1007,7 +1001,8 @@
 	if (!dm_udev_create_cookie(&cookie))
 		return 0;
 
-	printf("0x%08" PRIX32 "\n", cookie);
+	if (cookie)
+		printf("0x%08" PRIX32 "\n", cookie);
 
 	return 1;
 }
--- LVM2/tools/lvmcmdline.c	2010/02/15 16:26:49	1.115
+++ LVM2/tools/lvmcmdline.c	2010/03/23 14:43:19	1.116
@@ -42,7 +42,7 @@
 #  define OPTIND_INIT 1
 #endif
 
-#ifdef HAVE_UDEV_QUEUE_GET_UDEV_IS_ACTIVE
+#ifdef UDEV_SYNC_SUPPORT
 #  define LIBUDEV_I_KNOW_THE_API_IS_SUBJECT_TO_CHANGE
 #  include <libudev.h>
 #endif
@@ -919,7 +919,7 @@
 
 static int _set_udev_checking(struct cmd_context *cmd)
 {
-#ifdef HAVE_UDEV_QUEUE_GET_UDEV_IS_ACTIVE
+#ifdef UDEV_SYNC
 	struct udev *udev;
 	const char *udev_dev_dir;
 	size_t udev_dev_dir_len;



             reply	other threads:[~2010-03-23 14:43 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-03-23 14:43 prajnoha [this message]
  -- strict thread matches above, loose matches on Subject: below --
2011-04-22 11:56 LVM2 ./WHATS_NEW_DM ./configure.in libdm/libdm prajnoha

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20100323144320.2537.qmail@sourceware.org \
    --to=prajnoha@sourceware.org \
    --cc=lvm-devel@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.