--- lvm2-2.02.54.orig/debian/libdevmapper1.02.1.preinst +++ lvm2-2.02.54/debian/libdevmapper1.02.1.preinst @@ -0,0 +1,10 @@ +#!/bin/sh + +if [ "$1" = "upgrade" ] && dpkg --compare-versions "$2" "<<" "2:1.02.24"; then + update-rc.d -f libdevmapper1.02.1 remove >/dev/null || exit $? + rm /etc/init.d/libdevmapper1.02.1 +fi + +#DEBHELPER# + +exit 0 --- lvm2-2.02.54.orig/debian/dmeventd.manpages +++ lvm2-2.02.54/debian/dmeventd.manpages @@ -0,0 +1 @@ +debian/dmeventd.8 --- lvm2-2.02.54.orig/debian/clvm.README.Debian +++ lvm2-2.02.54/debian/clvm.README.Debian @@ -0,0 +1,23 @@ +This is the cluster LVM daemon for LVM2. + +In conjunction with the Red Hat cluster infrastructure (cman & dlm) it +will allow LVM volumes on shared storage to be managed from a central +point. If you also want to share data you should also look at GFS. + +Only "normal" block devices may be shared. At present, snapshots and +mirroring are not cluster aware. So, if you want to snapshot a volume +is is VERY IMPORTANT that not only the snapshot device but also the origin +device be activated on one node only. + +clvmd should be run on all nodes in the cluster, unless this is the case +commands will fail as the integrity of the LVM metadata cannot be assured. + +In order to make normal lvm2 cluster-aware it is necessary to edit the +configuration file /etc/lvm/lvm.conf as follows: + +in the global{} section: + locking_type = 3 + + +Patrick Caulfield +24th December 2004 --- lvm2-2.02.54.orig/debian/libdevmapper1.02.1.docs +++ lvm2-2.02.54/debian/libdevmapper1.02.1.docs @@ -0,0 +1 @@ +debian/changelog.Debian.devmapper --- lvm2-2.02.54.orig/debian/clvm.install +++ lvm2-2.02.54/debian/clvm.install @@ -0,0 +1,2 @@ +sbin/clvmd +usr/share/man/man8/clvmd* --- lvm2-2.02.54.orig/debian/libdevmapper-dev.docs +++ lvm2-2.02.54/debian/libdevmapper-dev.docs @@ -0,0 +1 @@ +debian/changelog.Debian.devmapper --- lvm2-2.02.54.orig/debian/clvm.default +++ lvm2-2.02.54/debian/clvm.default @@ -0,0 +1,9 @@ +# Bourne shell compatible script, sourced by /etc/init.d/clvm to set +# additional arguments for clvmd. + +# Startup timeout: +CLVMDTIMEOUT=20 + +# Volume groups to activate on startup: +# LVM_VGS="cluster_vg1 cluster_vg2" + --- lvm2-2.02.54.orig/debian/lvm2.postrm +++ lvm2-2.02.54/debian/lvm2.postrm @@ -0,0 +1,14 @@ +#!/bin/sh + +set -e + +case "$1" in + remove) + rm -rf /etc/lvm/cache || : + rm -rf /var/lock/lvm || : + ;; +esac + +#DEBHELPER# + +exit 0 --- lvm2-2.02.54.orig/debian/rules +++ lvm2-2.02.54/debian/rules @@ -0,0 +1,326 @@ +#!/usr/bin/make -f + +# Uncomment this to turn on verbose mode. +#export DH_VERBOSE=1 + +DEB_HOST_ARCH ?= $(shell dpkg-architecture -qDEB_HOST_ARCH) +DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) +DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) + +SOURCE := $(shell dpkg-parsechangelog | sed -ne 's,^Source: *\(.*\)$$,\1,p') +VERSION_COMPLETE := $(shell dpkg-parsechangelog | sed -ne 's,^Version: *\(.*\)$$,\1,p') +VERSION_UPSTREAM := $(shell echo "$(VERSION_COMPLETE)" | sed -e 's,^[0-9]*:,,' -e 's,-[^-]*$$,,') +VERSION_DEBIAN := $(shell echo "$(VERSION_COMPLETE)" | sed -e 's,^[^-]*-,,') + +DEVMAPPER_ABINAME = 1.02.1 +DEVMAPPER_VERSION_PLAIN = $(shell awk '{print $$1}' VERSION_DM) +DEVMAPPER_VERSION = 2:$(DEVMAPPER_VERSION_PLAIN) +DEVMAPPER_VERSION_DEBIAN = $(DEVMAPPER_VERSION)-$(VERSION_DEBIAN) +DEVMAPPER_VERSION_FILE = $(DEVMAPPER_VERSION_PLAIN)-$(VERSION_DEBIAN) + +BUILD_DIR = debian/build +STAMPS_DIR = debian/stamps + +CFLAGS_UDEB := $(CFLAGS) +ifeq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) +CFLAGS_UDEB = -g -Os +endif + +CONFIGURE_FLAGS = --build $(DEB_BUILD_GNU_TYPE) +ifneq ($(DEB_HOST_GNU_TYPE),$(DEB_BUILD_GNU_TYPE)) +CONFIGURE_FLAGS += --host $(DEB_HOST_GNU_TYPE) +endif + +CONFIGURE_FLAGS += \ + --prefix=/usr \ + --exec-prefix= \ + --mandir=\$${prefix}/share/man \ + --infodir=\$${prefix}/share/info \ + --with-confdir=\$${exec_prefix}/etc + +ifneq (,$(findstring $(DEB_HOST_ARCH), arm armeb hppa mips mipsel)) +CONFIGURE_FLAGS += --disable-o_direct +endif + +source: $(STAMPS_DIR)/source + +$(STAMPS_DIR)/source: DIR = $(BUILD_DIR)/source +$(STAMPS_DIR)/source: + @mkdir -p $(STAMPS_DIR) + rm -rf $(DIR) + mkdir -p $(DIR) + cp -al $(filter-out debian .svk .svn, $(wildcard .[^.]* *)) $(DIR) + cp --remove-destination /usr/share/misc/config.sub /usr/share/misc/config.guess $(DIR)/autoconf + cd $(DIR); QUILT_PATCHES=$(CURDIR)/debian/patches quilt --quiltrc /dev/null push -a || test $$? = 2 + cd $(DIR); autoreconf + touch $@ + +setup: $(STAMPS_DIR)/setup-deb $(STAMPS_DIR)/setup-udeb + +$(STAMPS_DIR)/setup-deb: SOURCE_DIR = $(BUILD_DIR)/source +$(STAMPS_DIR)/setup-deb: DIR = $(BUILD_DIR)/build-deb +$(STAMPS_DIR)/setup-deb: $(STAMPS_DIR)/source + rm -rf $(DIR) + cp -al $(SOURCE_DIR) $(DIR) + cd $(DIR); \ + ./configure CFLAGS="$(CFLAGS)" \ + $(CONFIGURE_FLAGS) \ + --with-optimisation="" \ + --with-clvmd=cman \ + --with-device-uid=0 \ + --with-device-gid=6 \ + --with-device-mode=0660 \ + --enable-dmeventd \ + --enable-cmdlib \ + --enable-pkgconfig \ + --enable-readline + cp po/lvm2.po po/lvm2.pot + touch $@ + +$(STAMPS_DIR)/setup-udeb: SOURCE_DIR = $(BUILD_DIR)/source +$(STAMPS_DIR)/setup-udeb: DIR = $(BUILD_DIR)/build-udeb +$(STAMPS_DIR)/setup-udeb: $(STAMPS_DIR)/source + rm -rf $(DIR) + cp -al $(SOURCE_DIR) $(DIR) + cd $(DIR); \ + ./configure CFLAGS="$(CFLAGS_UDEB)" \ + $(CONFIGURE_FLAGS) \ + --with-optimisation="" \ + --with-cluster=none \ + --with-lvm1=none \ + --with-pool=none \ + --disable-dmeventd \ + --disable-readline \ + --disable-selinux + touch $@ + +build: $(STAMPS_DIR)/build-deb $(STAMPS_DIR)/build-udeb + +build-deb: $(STAMPS_DIR)/build-deb +.NOTPARALLEL: $(STAMPS_DIR)/build-deb +$(STAMPS_DIR)/build-deb: DIR = $(BUILD_DIR)/build-deb +$(STAMPS_DIR)/build-deb: $(STAMPS_DIR)/setup-deb + dh_testdir + $(MAKE) -C $(DIR) LIB_VERSION_DM=$(DEVMAPPER_ABINAME) + touch $@ + +build-udeb: $(STAMPS_DIR)/build-udeb +.NOTPARALLEL: $(STAMPS_DIR)/build-udeb +$(STAMPS_DIR)/build-udeb: DIR = $(BUILD_DIR)/build-udeb +$(STAMPS_DIR)/build-udeb: $(STAMPS_DIR)/setup-udeb + dh_testdir + $(MAKE) -C $(DIR) LIB_VERSION_DM=$(DEVMAPPER_ABINAME) + touch $@ + +$(BUILD_DIR) $(STAMPS_DIR): + @[ -d $@ ] || mkdir $@ + +maintainerclean: + rm -rf $(filter-out .svn .svk debian, $(wildcard * .[^.]*)) + +clean: + dh_testdir + rm -rf $(BUILD_DIR) $(STAMPS_DIR) + dh_clean + rm -f po/lvm2.pot + +$(STAMPS_DIR)/install-deb-%: DIR = $(BUILD_DIR)/install-deb-$* +$(STAMPS_DIR)/install-deb-%: $(STAMPS_DIR)/build-deb + dh_testdir + dh_testroot + rm -rf $(DIR) + $(MAKE) -C $(BUILD_DIR)/build-deb install_$* DESTDIR=$(CURDIR)/$(DIR) LIB_VERSION_DM=$(DEVMAPPER_ABINAME) + touch $@ + +$(STAMPS_DIR)/install-udeb-%: DIR = $(BUILD_DIR)/install-udeb-$* +$(STAMPS_DIR)/install-udeb-%: $(STAMPS_DIR)/build-udeb + dh_testdir + dh_testroot + rm -rf $(DIR) + $(MAKE) -C $(BUILD_DIR)/build-udeb install_$* DESTDIR=$(CURDIR)/$(DIR) LIB_VERSION_DM=$(DEVMAPPER_ABINAME) + touch $@ + +install: $(addprefix install-,libdevmapper libdevmapper-udeb dmeventd dmsetup dmsetup-udeb lvm2 lvm2-udeb clvm) + +install-base: + dh_installdocs + dh_strip + dh_compress + dh_fixperms + dh_installdeb + dh_shlibdeps + dh_gencontrol -- $(GENCONTROL_ARGS) + dh_md5sums + dh_builddeb + +install-clvm: export DH_OPTIONS = -pclvm +install-clvm: DIR = $(BUILD_DIR)/install-deb-cluster +install-clvm: $(STAMPS_DIR)/install-deb-cluster + dh_testdir + dh_testroot + dh_clean -k + dh_install --sourcedir=$(DIR) + dh_installchangelogs WHATS_NEW + dh_installexamples + dh_installinit --no-start -- start 63 S . start 51 0 6 . + $(MAKE) -f debian/rules install-base + +install-dmsetup: export DH_OPTIONS = -pdmsetup +install-dmsetup: DIR = $(BUILD_DIR)/install-deb-device-mapper +install-dmsetup: $(STAMPS_DIR)/install-deb-device-mapper + dh_testdir + dh_testroot + dh_clean -k + cp -a debian/tree/dmsetup debian/dmsetup + find debian/dmsetup -name .svn | xargs -r rm -r + dh_install --sourcedir=$(DIR) + chmod +x -R debian/dmsetup/usr/share/initramfs-tools + dh_installchangelogs WHATS_NEW_DM + dh_installdebconf + dh_installexamples + $(MAKE) -f debian/rules install-base GENCONTROL_ARGS="-v$(DEVMAPPER_VERSION_DEBIAN)" + +install-dmsetup-udeb: PACKAGE_NAME = dmsetup-udeb +install-dmsetup-udeb: export DH_OPTIONS = -p$(PACKAGE_NAME) +install-dmsetup-udeb: PACKAGE_FILE = $(PACKAGE_NAME)_$(DEVMAPPER_VERSION_FILE)_$(DEB_HOST_ARCH).udeb +install-dmsetup-udeb: DIR = $(BUILD_DIR)/install-udeb-device-mapper +install-dmsetup-udeb: $(STAMPS_DIR)/install-udeb-device-mapper + dh_testdir + dh_testroot + dh_clean -k + dh_installchangelogs WHATS_NEW_DM + cp -a debian/tree/dmsetup debian/dmsetup-udeb + dh_install --sourcedir=$(DIR) + chmod +x -R debian/dmsetup-udeb/usr/share/initramfs-tools + + dh_installdocs + dh_strip + dh_compress + dh_fixperms + dh_installdeb + dh_shlibdeps + dpkg-gencontrol \ + -p$(PACKAGE_NAME) -ldebian/changelog -n$(PACKAGE_FILE) \ + -Tdebian/$(PACKAGE_NAME).substvars -Pdebian/$(PACKAGE_NAME) \ + -v$(DEVMAPPER_VERSION_DEBIAN) + dh_md5sums + dpkg-deb --build debian/$(PACKAGE_NAME) ../$(PACKAGE_FILE) + + +install-libdevmapper: export DH_OPTIONS = -plibdevmapper-dev -plibdevmapper$(DEVMAPPER_ABINAME) -plibdevmapper-event$(DEVMAPPER_ABINAME) +install-libdevmapper: DIR = $(BUILD_DIR)/install-deb-device-mapper +install-libdevmapper: $(STAMPS_DIR)/install-deb-device-mapper + dh_testdir + dh_testroot + dh_clean -k + dh_install --sourcedir=$(DIR) + dh_installchangelogs WHATS_NEW_DM + dh_installexamples + dh_link -p libdevmapper-dev lib/libdevmapper.so.$(DEVMAPPER_ABINAME) usr/lib/libdevmapper.so + DH_OPTIONS= dh_makeshlibs -p 'libdevmapper$(DEVMAPPER_ABINAME)' \ + --add-udeb 'libdevmapper$(DEVMAPPER_ABINAME)-udeb' \ + "-Vlibdevmapper$(DEVMAPPER_ABINAME) (>= $(DEVMAPPER_VERSION))" \ + -- "-v$(DEVMAPPER_VERSION_DEBIAN)" -c2 + dh_link -p libdevmapper-dev lib/libdevmapper-event.so.$(DEVMAPPER_ABINAME) usr/lib/libdevmapper-event.so + DH_OPTIONS= dh_makeshlibs -p 'libdevmapper-event$(DEVMAPPER_ABINAME)' \ + "-Vlibdevmapper-event$(DEVMAPPER_ABINAME) (>= $(DEVMAPPER_VERSION))" \ + -- "-v$(DEVMAPPER_VERSION_DEBIAN)" -c2 + $(MAKE) -f debian/rules install-base GENCONTROL_ARGS="-v$(DEVMAPPER_VERSION_DEBIAN)" + +install-libdevmapper-udeb: PACKAGE_NAME = libdevmapper$(DEVMAPPER_ABINAME)-udeb +install-libdevmapper-udeb: export DH_OPTIONS = -p$(PACKAGE_NAME) +install-libdevmapper-udeb: PACKAGE_FILE = $(PACKAGE_NAME)_$(DEVMAPPER_VERSION_FILE)_$(DEB_HOST_ARCH).udeb +install-libdevmapper-udeb: DIR = $(BUILD_DIR)/install-udeb-device-mapper +install-libdevmapper-udeb: $(STAMPS_DIR)/install-udeb-device-mapper + dh_testdir + dh_testroot + dh_clean -k + dh_install --sourcedir=$(DIR) + dh_installchangelogs WHATS_NEW_DM + dh_installexamples + + dh_installdocs + dh_strip + dh_compress + dh_fixperms + dh_installdeb + dh_shlibdeps + dpkg-gencontrol \ + -p$(PACKAGE_NAME) -ldebian/changelog -n$(PACKAGE_FILE) \ + -Tdebian/$(PACKAGE_NAME).substvars -Pdebian/$(PACKAGE_NAME) \ + -v$(DEVMAPPER_VERSION_DEBIAN) + dh_md5sums + dpkg-deb --build debian/$(PACKAGE_NAME) ../$(PACKAGE_FILE) + +install-libdevmapper-event: export DH_OPTIONS = -plibdevmapper-event$(DEVMAPPER_ABINAME) +install-libdevmapper-event: DIR = $(BUILD_DIR)/install-deb-device-mapper +install-libdevmapper-event: $(STAMPS_DIR)/install-deb-device-mapper + dh_testdir + dh_testroot + dh_clean -k + dh_install --sourcedir=$(DIR) + dh_installchangelogs WHATS_NEW_DM + dh_installexamples + $(MAKE) -f debian/rules install-base GENCONTROL_ARGS="-v$(DEVMAPPER_VERSION_DEBIAN)" + +install-dmeventd: export DH_OPTIONS = -pdmeventd +install-dmeventd: DIR = $(BUILD_DIR)/install-deb-device-mapper +install-dmeventd: $(STAMPS_DIR)/install-deb-device-mapper + dh_testdir + dh_testroot + dh_clean -k + dh_install --sourcedir=$(DIR) + dh_installchangelogs WHATS_NEW_DM + dh_installdebconf + dh_installexamples + $(MAKE) -f debian/rules install-base GENCONTROL_ARGS="-v$(DEVMAPPER_VERSION_DEBIAN)" + +install-lvm2: export DH_OPTIONS = -plvm2 +install-lvm2: DIR = $(BUILD_DIR)/install-deb-lvm2 +install-lvm2: $(STAMPS_DIR)/install-deb-lvm2 + dh_testdir + dh_testroot + dh_clean -k + cp -a debian/tree/lvm2 debian/lvm2 + rm -rf debian/lvm2/usr/share/initramfs-tools/scripts/local-top + find debian/lvm2 -name .svn | xargs -r rm -r + dh_install --sourcedir=$(DIR) + chmod +x -R debian/lvm2/usr/share/initramfs-tools + dh_installchangelogs WHATS_NEW + dh_installdebconf + dh_installexamples + $(MAKE) -f debian/rules install-base + +install-lvm2-udeb: export DH_OPTIONS = -plvm2-udeb +install-lvm2-udeb: DIR = $(BUILD_DIR)/install-udeb-lvm2 +install-lvm2-udeb: $(STAMPS_DIR)/install-udeb-lvm2 + dh_testdir + dh_testroot + dh_clean -k + dh_installchangelogs WHATS_NEW + cp -a debian/tree/lvm2 debian/lvm2-udeb + dh_install --sourcedir=$(DIR) + chmod +x -R debian/lvm2-udeb/usr/share/initramfs-tools + $(MAKE) -f debian/rules install-base + +binary-indep: +binary-arch: install + +binary: binary-indep binary-arch + +DIR_ORIG = ../orig/$(SOURCE)-$(VERSION_UPSTREAM) +TAR_ORIG_NAME = $(SOURCE)_$(VERSION_UPSTREAM).orig.tar.gz +TAR_ORIG = $(firstword $(wildcard ../$(TAR_ORIG_NAME)) $(wildcard ../orig/$(TAR_ORIG_NAME))) + +orig: $(DIR_ORIG) + rsync --delete --exclude debian --exclude .svk --exclude .svn --link-dest=$(DIR_ORIG)/ -a $(DIR_ORIG)/ . + +$(DIR_ORIG): +ifeq ($(TAR_ORIG),) + $(error Cannot find orig tarball $(TAR_ORIG_NAME)) +else + mkdir -p ../orig + tar -C ../orig -xzf $(TAR_ORIG) +endif + +.PHONY: build clean binary-indep binary-arch binary install configure --- lvm2-2.02.54.orig/debian/dmeventd.8 +++ lvm2-2.02.54/debian/dmeventd.8 @@ -0,0 +1,27 @@ +.TH DMEVENTD 8 "Aug 18 2008" +.SH NAME +dmeventd \- Device-mapper event monitoring daemon. +.SH SYNOPSIS +.ad l +.B dmeventd +.I [-V|-d|-h] +.ad b +.SH DESCRIPTION +dmeventd is the event monitoring daemon for device-mapper devices. +.SH OPTIONS +.TP +.B -V +Show version of dmeventd +.TP +.B -d +Don't fork, run in the foreground +.TP +.B -h +Display command-line arguments +.SH AUTHORS +Original author: Joe Thornber (thornber@sistina.com) +.PP +This manual page was written by Luke Yelavich , for the Ubuntu project (but may be used by others). + +.SH SEE ALSO +Device-mapper resource page: http://sources.redhat.com/dm/ --- lvm2-2.02.54.orig/debian/libdevmapper1.02.1.install +++ lvm2-2.02.54/debian/libdevmapper1.02.1.install @@ -0,0 +1 @@ +lib/libdevmapper.so.* --- lvm2-2.02.54.orig/debian/dmsetup.postinst +++ lvm2-2.02.54/debian/dmsetup.postinst @@ -0,0 +1,15 @@ +#!/bin/sh + +set -e + +case "$1" in + configure) + if [ -x /usr/sbin/update-initramfs ]; then + update-initramfs -u + fi + ;; +esac + +#DEBHELPER# + +exit 0 --- lvm2-2.02.54.orig/debian/lvm2.docs +++ lvm2-2.02.54/debian/lvm2.docs @@ -0,0 +1 @@ +doc/*.txt --- lvm2-2.02.54.orig/debian/libdevmapper-event1.02.1.install +++ lvm2-2.02.54/debian/libdevmapper-event1.02.1.install @@ -0,0 +1 @@ +lib/libdevmapper-event.so.* --- lvm2-2.02.54.orig/debian/lvm2.install +++ lvm2-2.02.54/debian/lvm2.install @@ -0,0 +1,9 @@ +etc/lvm/lvm.conf +sbin/fsadm +sbin/lv* +sbin/pv* +sbin/vg* +usr/share/man/man8/lv* +usr/share/man/man8/pv* +usr/share/man/man8/vg* +usr/share/man/man5 --- lvm2-2.02.54.orig/debian/lvm2.prerm +++ lvm2-2.02.54/debian/lvm2.prerm @@ -0,0 +1,13 @@ +#!/bin/sh + +set -e + +case "$1" in + remove) + vgcfgbackup >/dev/null 2>&1 || : + ;; +esac + +#DEBHELPER# + +exit 0 --- lvm2-2.02.54.orig/debian/lvm2.preinst +++ lvm2-2.02.54/debian/lvm2.preinst @@ -0,0 +1,43 @@ +#!/bin/sh + +set -e + +rm_conffile() { + CONFFILE="$1" + + if [ -e "$1" ]; then + md5sum="$(md5sum "$1" | awk '{print $1}')" + old_md5sum="$(dpkg-query -W -f='${Conffiles}' lvm2 | sed -n -e "\' $CONFFILE ' { s/ obsolete$//; s/.* //; p }"))" + if [ "$md5sum" != "$old_md5sum" ]; then + echo "Obsolete conffile $CONFFILE has been modified by you." + echo "Saving as $CONFFILE.dpkg-bak ..." + mv -f "$CONFFILE" "$CONFFILE".dpkg-bak + else + rm -f "$CONFFILE" + fi + fi +} + +case "$1" in + upgrade) + if dpkg --compare-versions "$2" lt 2.02.39-5; then + if [ -L /lib/lvm-default ]; then + rm -f /lib/lvm-default + fi + rm -f /etc/lvm/.cache + fi + if dpkg --compare-versions "$2" lt 2.02.51-1; then + if [ -e /etc/init.d/lvm ]; then + rm -f /etc/init.d/lvm + fi + update-rc.d lvm remove >/dev/null || : + fi + if dpkg --compare-versions "$2" lt 2.02.54-1ubuntu1; then + rm_conffile "/etc/udev/rules.d/85-lvm2.rules" + fi + ;; +esac + +#DEBHELPER# + +exit 0 --- lvm2-2.02.54.orig/debian/libdevmapper-event1.02.1.symbols +++ lvm2-2.02.54/debian/libdevmapper-event1.02.1.symbols @@ -0,0 +1,20 @@ +libdevmapper-event.so.1.02.1 libdevmapper-event1.02.1 #MINVER# + Base@Base 2:1.02.20 + dm_event_get_registered_device@Base 2:1.02.20 + dm_event_handler_create@Base 2:1.02.20 + dm_event_handler_destroy@Base 2:1.02.20 + dm_event_handler_get_dso@Base 2:1.02.20 + dm_event_handler_get_event_mask@Base 2:1.02.20 + dm_event_handler_get_major@Base 2:1.02.20 + dm_event_handler_get_minor@Base 2:1.02.20 + dm_event_handler_get_timeout@Base 2:1.02.20 + dm_event_handler_get_uuid@Base 2:1.02.20 + dm_event_handler_set_dev_name@Base 2:1.02.20 + dm_event_handler_set_dso@Base 2:1.02.20 + dm_event_handler_set_event_mask@Base 2:1.02.20 + dm_event_handler_set_major@Base 2:1.02.20 + dm_event_handler_set_minor@Base 2:1.02.20 + dm_event_handler_set_timeout@Base 2:1.02.20 + dm_event_handler_set_uuid@Base 2:1.02.20 + dm_event_register_handler@Base 2:1.02.20 + dm_event_unregister_handler@Base 2:1.02.20 --- lvm2-2.02.54.orig/debian/libdevmapper-dev.install +++ lvm2-2.02.54/debian/libdevmapper-dev.install @@ -0,0 +1,5 @@ +usr/include/libdevmapper.h +usr/include/libdevmapper-event.h +usr/lib/libdevmapper.a +usr/lib/libdevmapper-event.a +usr/lib/pkgconfig --- lvm2-2.02.54.orig/debian/clvm.examples +++ lvm2-2.02.54/debian/clvm.examples @@ -0,0 +1 @@ +scripts/clvmd_fix_conf.sh --- lvm2-2.02.54.orig/debian/dmsetup-udeb.install +++ lvm2-2.02.54/debian/dmsetup-udeb.install @@ -0,0 +1 @@ +sbin/dmsetup --- lvm2-2.02.54.orig/debian/changelog +++ lvm2-2.02.54/debian/changelog @@ -0,0 +1,1211 @@ +lvm2 (2.02.54-1ubuntu6) maverick; urgency=low + + * SECURITY UPDATE: unprivileged logical volume manipulation with clvmd + - debian/patches/CVE-2010-2526.patch: revert to using a pathname-based + socket in order to enforce correct permissions. + - CVE-2010-2526 + + -- Marc Deslauriers Thu, 23 Sep 2010 14:09:51 -0400 + +lvm2 (2.02.54-1ubuntu5) maverick; urgency=low + + * Backport from Debian: + - Don't overwrite names of dm devices; use symlinks instead + (LP: #621951). + + -- Colin Watson Wed, 08 Sep 2010 22:50:26 +0100 + +lvm2 (2.02.54-1ubuntu4) lucid; urgency=low + + * Some idiot thought it'd be a good idea if device mapper didn't respond + to "add" events, like those during boot. Take their change out back + and shoot it in the head. LP: #561390. + + -- Scott James Remnant Sun, 25 Apr 2010 21:36:25 -0700 + +lvm2 (2.02.54-1ubuntu3) lucid; urgency=low + + * lidevmapper-dev: move .so symlinks to /usr/lib where they belong + + -- Steve Langasek Thu, 18 Feb 2010 04:38:10 -0800 + +lvm2 (2.02.54-1ubuntu2) lucid; urgency=low + + * debian/lvm2.preinst: fix Hardy conf-file removal to check against the + correct binary package name. + + -- Kees Cook Tue, 16 Feb 2010 16:08:43 -0800 + +lvm2 (2.02.54-1ubuntu1) lucid; urgency=low + + * Merge from debian testing. Remaining changes: + - debian/control: + - add libtool for autoconf regeneration. + - debian/patches/avoid-dev-block.patch: Prefer any other device name over + names in /dev/block/ since lvm.conf won't handle this (Debian bug 569290). + - debian/rules: + - copy .po file to .pot file for Rosetta (Ubuntu specific). + - install initramfs and udev hooks in udebs (Debian bug 504341). + - auto-start VGs as their PVs are discovered (Ubuntu specific): + - add debian/tree/lvm2/lib/udev/rules.d/85-lvm2.rules: use watershed plus + the sledgehammer of vgscan/vgchange to turn on VGs as they come online. + - debian/tree/lvm2/usr/share/initramfs-tools/scripts/hooks/lvm2: + - add 85-lvm2.rules to the list of udev rules to copy. + - depend on udev. + - debian/control: + - add versioned Depend on watershed in lvm2 for udev rules. + - add versioned Depend/Breaks on udev in dmsetup for udev rules. + - add Depend on initramfs-tools in dmsetup so system is not potentially + rendered unbootable by out-of-order dpkg configuration. + - debian/rules: + - do not install local-top scripts since Ubuntu mounts root using udev. + - do not install init scripts for lvm2, since udev starts LVM. + - debian/lvm2.postinst: handle missing lvm2 init script. + - debian/tree/dmsetup/lib/udev/rules.d/60-persistent-storage-dm.rules: + watch dm devices for changes with inotify. + - debian/patches/open-readonly.patch: do not open every device for + write, otherwise udev thinks they've all changed (see inotify above). + - add mountroot failure hooks to help fix bad boots (Debian bug 468115): + - debian/tree/lvm2/usr/share/initramfs-tools/scripts/init-premount/lvm2 + - add packages for upstream event manager (Debian bug 514706): + - debian/control: define libdevmapper-event1.02.1 and dmeventd packages. + - debian/rules: + - enable dmeventd during configure. + - add build targets. + - fix shlibs invocation with a cleared DH_OPTIONS to get udeb shlibs. + - debian/patches/rules-subdir.patch: update to reorder build targets. + - debian/patches/libdm-event-static.patch: force static library build. + - debian/dmeventd.{install,8,manpages}: install dmeventd files. + - debian/libdevmapper-event*.{install,symbols}: install dmeventd files. + - debian/libdevmapper-dev.install: install libdevmapper-event files. + - debian/patches/monitoring-default-off.patch: by default, do not + expect to talk to dmeventd. Monitoring can be done via "--monitor y". + * debian/rules: make dmsetup initramfs-tools scripts executable (Debian bug + 569286). + * rename debian/clvm.defaults to debian/clvm.default so it is intalled + correctly (Debian bug 569292). + * debian/control: bump up to libreadline6-dev for build. + * debian/{lvm2,dmsetup}.preinst: remove obsolete udev rules from Hardy. + * debian/tree/lvm2/lib/udev/rules.d/56-lvm.rules: include *_mlog in + devices to be ignored for filesystem symlinks (Debian bug 569745). + + -- Kees Cook Tue, 16 Feb 2010 10:40:31 -0800 + +lvm2 (2.02.54-1) unstable; urgency=low + + * New upstream version. + * Remove notify rules, unused for now. + * Add better documentation about the udev rules. + * Update list of to be ignored hidden lvm subvolumes. + * Make libdevmapper-dev depend against libselinux1-dev. + * Update complete udev ruleset. + * Remove conflict against devicekit-disks. + * Use bash for new script. + + -- Bastian Blank Fri, 06 Nov 2009 18:20:39 +0100 + +lvm2 (2.02.53-2) unstable; urgency=medium + + * Fix variable assignment in udev rules. (closes: #550100, RC bugfix) + * Install udev rules into initramfs. + * Add initramfs-tools hook to dmsetup. + * Trigger initramfs update. + + -- Bastian Blank Thu, 08 Oct 2009 18:17:43 +0200 + +lvm2 (2.02.53-1) unstable; urgency=low + + * New upstream version. + * Make dmsetup conflicts against devicekit-disks, it duplicates the udev + rules. + * Add possibility to hide creation of extra symlinks via udev. + * Ignore temporary cryptsetup devices. + + -- Bastian Blank Wed, 30 Sep 2009 05:27:35 +0200 + +lvm2 (2.02.52-1) unstable; urgency=low + + * New upstram version. + * Fix clvm init script. (closes: #542169) + * Remove dmsetup export support, unused. + + -- Bastian Blank Fri, 18 Sep 2009 17:44:29 +0000 + +lvm2 (2.02.51-4) unstable; urgency=low + + * Fix version in conffile removal. (closes: #542942) + * Add example udev rules file for permission setup. (closes: #450793) + + -- Bastian Blank Sun, 06 Sep 2009 13:40:08 +0200 + +lvm2 (2.02.51-3) unstable; urgency=low + + * Remove obsolete udev rule files. (closes: #542942) + * Add Homepage and Vcs-{Browser,Svn} fields. (closes: #486552, #516486) + * Apply upstream patch for pvcreate breakage. (closes: #542702) + + -- Bastian Blank Sat, 05 Sep 2009 14:02:48 +0200 + +lvm2 (2.02.51-2) unstable; urgency=low + + * Make mapper/* the real device, dm-* a symlink. (closes: #542422) + + -- Bastian Blank Thu, 20 Aug 2009 21:23:14 +0200 + +lvm2 (2.02.51-1) unstable; urgency=low + + * New upstream version. + * Add multipath as prereq of initramfs-tools script. (closes: #511903) + * Don't explicitely load special dm modules in initramfs-tools script. + * Fix dependencies of init script for mdadm and multipath-tools. + (closes: #514665, #532661) + * Add new libdevmapper symbols. + * Forcible remove old lvm init script. + * Update udev rules, but not enable udev sync yet. + - Use blkid. (closes: #541885) + - Make lvm2 depend on dmsetup. + - Make dmsetup depend on new util-linux for blkid. + - Make dmsetup depend on udev. + * Install fsadm. + * Use dmsetup name split support in initramfs-tools script. + * Only enable needed LVs in initramfs-tools script. + + -- Bastian Blank Mon, 17 Aug 2009 17:29:04 +0000 + +lvm2 (2.02.44-3) unstable; urgency=low + + * Merge remaining settings for devmapper. + - Fix device group and mode. (closes: #518361) + - Disable selinux support in udeb. (closes: #518527) + + -- Bastian Blank Tue, 10 Mar 2009 11:32:36 +0100 + +lvm2 (2.02.44-2) unstable; urgency=low + + * Fix implicit pointer conversion. (closes: #516867) + * Drop unused ncurses dependency. + + -- Bastian Blank Sat, 28 Feb 2009 11:51:01 +0100 + +lvm2 (2.02.44-1) unstable; urgency=low + + * New upstream version. + - Merge devmapper sources. + * Add devmapper binary packages. + * Use debhelper compat level 7. + * Add new libdevmapper symbols. + * Update copyright file. + + -- Bastian Blank Mon, 23 Feb 2009 20:51:17 +0100 + +lvm2 (2.02.39-6) unstable; urgency=low + + * Readd a vgchange binary into the initramfs. At least cryptsetup depends on + this. + + -- Bastian Blank Sat, 22 Nov 2008 16:16:57 +0100 + +lvm2 (2.02.39-5) unstable; urgency=low + + * Install lvm.conf into initramfs. (closes: #439761) + * Also ignore locking in initramfs. + * Make piuparts-clean. (closes: 455115) + - Cleanup old files on upgrade. /lib/lvm-default, /etc/lvm/.cache. + - Cleanup dirs on remove. /etc/lvm/cache, /var/lock/lvm. + * Recommend dmsetup. + + -- Bastian Blank Fri, 21 Nov 2008 22:15:18 +0100 + +lvm2 (2.02.39-4) unstable; urgency=low + + * Revert locking change, it breaks too much. (closes: #506354) + * Disable cluster support in udeb. + * Install the binary as lvm in the initramfs. (closes: #503627) + * Build cluster locking internal. + * Adjust clvm documentation for the locking change. + + -- Bastian Blank Fri, 21 Nov 2008 16:23:22 +0100 + +lvm2 (2.02.39-3) unstable; urgency=low + + * Depend against lsb-base. + * Make clvm depend against cman. + * Don't ignore locking failures in lvm2 init script. + * Only activate vgs local. + * Add clvm initscript. (closes: #336258) + * Try to activate anything in the lvm2 postinst. (closes: #506105) + + -- Bastian Blank Wed, 19 Nov 2008 11:59:06 +0100 + +lvm2 (2.02.39-2) unstable; urgency=low + + * Disable readline support in udeb. (closes: #491203) + + -- Bastian Blank Fri, 18 Jul 2008 16:42:03 +0000 + +lvm2 (2.02.39-1) unstable; urgency=low + + * New upstream version. + * Make /dev/$vgname readable by anyone, it is not private data as + /dev/mapper is already readable. + + -- Bastian Blank Tue, 15 Jul 2008 20:05:08 +0200 + +lvm2 (2.02.39-0ubuntu11) karmic; urgency=low + + * Copy /etc/lvm/lvm.conf into the initramfs (LP: #246324). + + -- Colin Watson Wed, 15 Jul 2009 13:52:21 +0100 + +lvm2 (2.02.39-0ubuntu10) karmic; urgency=low + + * debian/control: Increase dependencies for vol_id->blkid transition. + + -- Scott James Remnant Tue, 12 May 2009 10:19:09 +0100 + +lvm2 (2.02.39-0ubuntu9) jaunty; urgency=low + + * debian/patches/avoid-dev-block.patch: Prefer any other device name over + names in /dev/block/ (LP: #341928). + + -- Colin Watson Wed, 08 Apr 2009 14:19:32 +0100 + +lvm2 (2.02.39-0ubuntu8) jaunty; urgency=low + + * Revert quilt damage to two other patches. + + -- Scott James Remnant Tue, 24 Feb 2009 00:26:56 +0000 + +lvm2 (2.02.39-0ubuntu7) jaunty; urgency=low + + * debian/patches/open-readonly.patch: + - Generally we don't need to write to every single block device we open, + in fact if we do that when scanning we'll make udev think they all + changed, and it could run "lvm vgscan" again! When the file descriptor + is needed for writing, it will be closed and opened again. LP: #332270. + + -- Scott James Remnant Mon, 23 Feb 2009 21:44:51 +0000 + +lvm2 (2.02.39-0ubuntu6) jaunty; urgency=low + + * Bump build-dependency on debhelper to ensure we get the right one. + + -- Scott James Remnant Fri, 09 Jan 2009 14:09:31 +0000 + +lvm2 (2.02.39-0ubuntu5) jaunty; urgency=low + + * Update udev rules.d path to /lib/udev/rules.d, (LP #314879) and add + versioned dependency on udev accordingly. + * Add versioned breaks on udev to make sure we do the upgrade + in the correct order. + * Add versioned dependency on watershed version that installs + into initramfs. + + -- Soren Hansen Fri, 09 Jan 2009 13:46:10 +0100 + +lvm2 (2.02.39-0ubuntu4) jaunty; urgency=low + + * Change dependency on udev to one on watershed. + + -- Scott James Remnant Mon, 05 Jan 2009 16:54:00 +0000 + +lvm2 (2.02.39-0ubuntu3) jaunty; urgency=low + + * Rebuild for armel. + + -- Matthias Klose Thu, 20 Nov 2008 10:51:16 +0000 + +lvm2 (2.02.39-0ubuntu2) intrepid; urgency=low + + * Backport from Debian unstable (Bastian Blank): + - Disable readline support in udeb. (closes: #491203, LP: #263558) + + -- Colin Watson Mon, 01 Sep 2008 16:47:50 +0100 + +lvm2 (2.02.39-0ubuntu1) intrepid; urgency=low + + * New upstream release (LP: #239460). + * Merges 2.02.35-1 from Debian. + * Increase devmapper dependency to (>> 2:1.02.27) due to new API. + * Re-add quilt to Build-Depends. + * Add missing Build-Depends on autoconf and libtool. + + -- James Westby Tue, 01 Jul 2008 16:39:18 +0100 + +lvm2 (2.02.38-1) unstable; urgency=low + + * New upstream version. + * Update standards version to 3.7.3, no changes. + * Only ignore known VCS dirs (closes: #482745) + + -- Bastian Blank Sun, 22 Jun 2008 11:19:29 +0200 + +lvm2 (2.02.35-1) unstable; urgency=low + + * New upstream version. + + -- Bastian Blank Sun, 20 Apr 2008 20:11:53 +0200 + +lvm2 (2.02.33-2) unstable; urgency=low + + * Fix LSB header of init script. + + -- Bastian Blank Mon, 10 Mar 2008 22:41:13 +0100 + +lvm2 (2.02.33-1) unstable; urgency=low + + * New upstream version. + * Remove loading of additional modules from init script. + + -- Bastian Blank Fri, 15 Feb 2008 16:21:44 +0000 + +lvm2 (2.02.31-1) unstable; urgency=low + + * New upstream version. + * Readd clvm. + * Add LSB header to lvm2 init script. (closes: #426108) + + -- Bastian Blank Tue, 22 Jan 2008 16:45:09 +0000 + +lvm2 (2.02.29-1) unstable; urgency=low + + * New upstream version. + * Load modules. + * Don't longer directly link libncurses, libselinux and librt. + * Drop lvm1 support in lvm2-udeb. + * Force modprobe path to enable module loading. + + -- Bastian Blank Thu, 10 Jan 2008 13:36:53 +0000 + +lvm2 (2.02.26-1ubuntu11) intrepid; urgency=low + + * debian/control: build-deps on newer libcman and libdlm to guarantee a + build against new libcman3 and libdlm3 soname. + + -- Fabio M. Di Nitto Tue, 26 Aug 2008 14:18:13 +0200 + +lvm2 (2.02.26-1ubuntu10) intrepid; urgency=low + + * debian/initramfs-tools/scripts/init-premount/lvm2: + - use new named mountroot-fail hook ordering + - silently detect array failures + * lib/locking/cluster_locking.c, daemons/clvmd/{refresh_,}clvmd.c: + add include for sys/param.h to catch limits, where PIPE_BUF went to live. + + -- Kees Cook Mon, 28 Jul 2008 12:22:26 -0700 + +lvm2 (2.02.26-1ubuntu9) hardy; urgency=low + + * Include virtio block type in the filters. (LP: #218574) + This change is included upstream in 2.02.34. + + -- James Westby Fri, 18 Apr 2008 14:08:56 +0100 + +lvm2 (2.02.26-1ubuntu8) hardy; urgency=low + + * debian/initramfs-tools/scripts/init-premount/lvm2: Ensure we exit if + the script is called with mountfail. + + -- Luke Yelavich Mon, 18 Feb 2008 11:56:54 +1100 + +lvm2 (2.02.26-1ubuntu7) hardy; urgency=low + + * debian/initramfs-tools/scripts/init-premount/lvm2: + /sbin/mdadm -> /sbin/lvm (Thanks Kees.) + + -- Luke Yelavich Fri, 15 Feb 2008 12:28:14 +1100 + +lvm2 (2.02.26-1ubuntu6) hardy; urgency=low + + * Create init-premount hook script for the initramfs, to provide + information at boot, if the root device is not functional. + * Tighten initramfs-tools dependency. + + -- Luke Yelavich Tue, 05 Feb 2008 14:16:36 +1100 + +lvm2 (2.02.26-1ubuntu5) hardy; urgency=low + + * Changes from Debian audited, remaining changes: + - Recognise SUN's LDOM virtual block devices. + (forwarded upstream and to Debian #455975). + - Drop build-dependencies on libccs-dev and libgulm-dev since gulm + locking is obsolete. + (forwarded to Debian #455976). + - Separate clvm package. + (forwarded to Debian #455978). + - Use udev to activate new LVM physical volumes, and thus volume groups + and logical volumes. + (forwarded to Debian #455979). + - Copy lvm2.po to lvm2.pot for Rosetta. + - Migrate configuration files from earlier Ubuntu versions. + + * Drop compilation without stack protector, no bugs are referenced as + justification for that change. + * Drop higher build requirements on libdlm-dev since we don't actually + seem to have any patch that necessitates it (it builds fine with either, + so just build with whatever we have). + + -- Scott James Remnant Wed, 12 Dec 2007 18:15:39 +0000 + +lvm2 (2.02.26-1ubuntu4) gutsy; urgency=low + + * Bump dmsetup Suggests: to a Depends:, since without it we do not get + /dev/disks/by-uuid/ and thus cannot mount anything. (LP: #126776) + + -- Martin Pitt Thu, 19 Jul 2007 16:55:25 +0200 + +lvm2 (2.02.26-1ubuntu3) gutsy; urgency=low + + * Max partitions for vdisk is 8 and not 16. + + -- Fabio M. Di Nitto Thu, 19 Jul 2007 07:32:59 +0200 + +lvm2 (2.02.26-1ubuntu2) gutsy; urgency=low + + * Make lvm2 recognize SUN's LDOM virtual disks. + + -- Fabio M. Di Nitto Tue, 17 Jul 2007 09:37:50 +0200 + +lvm2 (2.02.26-1ubuntu1) gutsy; urgency=low + + * Merge from debian unstable, remaining changes: + - Drop libccs-dev/libgulm-dev Build-Dep + - Keep clvm around and all related bits (init, defaults, etc) + - scan and activate new volumes whenever udev detects a new block device + containing LVM metadata + - compile with -fno-stack-protector + - clvm depends on cman, rather than suggests, and don't support fence + - remove lvm2 init script, since it clashes with our udev rules + - make initramfs hook prereq on udev + - copy the lvm binary and udev rules across + - load the dm-mod, dm-snapshot and dm-mirror modules + - Depend on both udev and initramfs-tools + - Build-Deps on a newer devmapper + - Ubuntu maintainer foobar + - copy lvm2.po to lvm2.pot for Rosetta + + -- Fabio M. Di Nitto Tue, 03 Jul 2007 08:20:30 +0200 + +lvm2 (2.02.26-1) unstable; urgency=low + + * New upstream release. + * Drop clvm for now. + + -- Bastian Blank Fri, 22 Jun 2007 11:33:50 +0000 + +lvm2 (2.02.24-6ubuntu3) gutsy; urgency=low + + * Drop libccs-dev Build-Dep: + - it was only required for gulm locking (dead since edgy). + - HAVE_CCS has not been set for a while and ccs support never built since + it was useful only for gulm. + + -- Fabio M. Di Nitto Mon, 11 Jun 2007 12:03:35 +0200 + +lvm2 (2.02.24-6ubuntu2) gutsy; urgency=low + + * Readd clvm init script. + + * Fix clvm.init: + - not run if there is no cluster.conf + - not run if cman is not running. + - it's ok to fail on stop. (--oknodo) + - wait_for_nodes only if we can start. + + (Closes LP: #61794, #115828, #108704, #108120) + + -- Fabio M. Di Nitto Fri, 08 Jun 2007 13:09:50 +0200 + +lvm2 (2.02.24-6ubuntu1) gutsy; urgency=low + + * Merge from debian unstable, remaining changes: + - tighter build-depends on libccs-dev, libcman-dev & libdlm-dev + - scan and activate new volumes whenever udev detects a new block device + containing LVM metadata. + - compile with -fno-stack-protector + - copy lvm2.po to lvm2.pot for Rosetta + - clvm depends on cman, rather than suggests, and don't support fence + - init script for clvm + + * Turns out that doing merges dependency-first isn't necessarily the right + way; this package replaces lvm-common! So merge changes I just made + there to here: + - remove the init script, since it clashes with our udev rules + - make initramfs hook prereq on udev + - copy the lvm binary and udev rules across + - load the dm-mod, dm-snapshot and dm-mirror modules + * Depend on both udev and initramfs-tools + + -- Scott James Remnant Tue, 22 May 2007 12:43:07 +0100 + +lvm2 (2.02.24-6) unstable; urgency=low + + * Also replace lvm-common. + + -- Bastian Blank Wed, 11 Apr 2007 20:40:39 +0000 + +lvm2 (2.02.24-5) unstable; urgency=low + + * Install correct files in initramfs-tools hook. (closes: #418652, #418661) + + -- Bastian Blank Wed, 11 Apr 2007 05:43:40 +0000 + +lvm2 (2.02.24-4) unstable; urgency=low + + * Make initramfs-tools hook also executable. + + -- Bastian Blank Tue, 10 Apr 2007 09:01:33 +0000 + +lvm2 (2.02.24-3) unstable; urgency=low + + * Make initramfs-tools script executable. (closes: #418490) + + -- Bastian Blank Tue, 10 Apr 2007 08:35:09 +0000 + +lvm2 (2.02.24-2) unstable; urgency=low + + * Really add init script. + * Remove old code from maintainer scripts. + + -- Bastian Blank Tue, 10 Apr 2007 08:02:39 +0000 + +lvm2 (2.02.24-1) unstable; urgency=low + + * Add initramfs-tools hooks. + * New upstream version. + * Remove O_NOATIME hack. + * Remove lvm2create_initrd. (closes: #417938) + * Deprecate lvm-common. + + -- Bastian Blank Mon, 9 Apr 2007 18:58:57 +0000 + +lvm2 (2.02.06-4) unstable; urgency=low + + * Update translations. + - Norwegian Bokmål (closes: #393191) + - German (closes: #396268) + - Galician (closes: #411832) + - Swedish + + -- Bastian Blank Tue, 27 Feb 2007 18:53:04 +0000 + +lvm2 (2.02.06-3) unstable; urgency=low + + * Update translations. (closes: #349843) + - Vietnamese + - Swedish + - French + - Czech + - Dutch + - Portuguese + - Catalan + * Use error debconf template. + + -- Bastian Blank Sun, 15 Oct 2006 12:05:01 +0000 + +lvm2 (2.02.06-2ubuntu9) feisty; urgency=low + + * Remove the call to vgck on the creation of devmapper devices; this + would cause udev to block, and thus prevent LVM from creating snapshot + devices. LP: #84672. + (This also needs a newer libdevmapper to complete the fix) + + * Rename 70-lvm.rules to 85-lvm.rules so that it appears at the correct + point; remove the old file rather than transitioning since it was + broken anyway. + + -- Scott James Remnant Fri, 30 Mar 2007 17:29:09 +0100 + +lvm2 (2.02.06-2ubuntu8) feisty; urgency=low + + UdevLvm fix: + * Run vgscan and vgchange on block device change as well as add. + + -- Ian Jackson Tue, 6 Feb 2007 19:25:40 +0000 + +lvm2 (2.02.06-2ubuntu7) feisty; urgency=low + + UdevLvm: + * Force loading of dm_mod in initramfs (for some reason the lvm tools do + not do this themselves). + * Update the initramfs in the postinst. + * Update the 70-lvm.rules to + - run vgscan as needed; + - invoke things via /sbin/lvm rather than relying on the symlinks + - run vgck and not vgmknodes (since udev makes the nodes now) + * Declare Breaks against old lvm-common and old udev, since our new + node generation requires the new working machinery in lvm-common and + the corresponding support in udev. + + -- Ian Jackson Tue, 6 Feb 2007 16:35:04 +0000 + +lvm2 (2.02.06-2ubuntu6) feisty; urgency=low + + * Backport endian fix for dev_is_md from upstream. + After a deeper investigation we found out that md super block 0.90.0 + are machine endian and super block 1 or higher are little endian. + On big endian machine (that are the only one affected) we need to compare + both values. + + -- Fabio M. Di Nitto Sun, 28 Jan 2007 05:51:59 +0100 + +lvm2 (2.02.06-2ubuntu5) feisty; urgency=low + + [ Fabio M. Di Nitto ] + * Fix dev_is_md check on big endian machines. + + -- Fabio M. Di Nitto Thu, 25 Jan 2007 16:55:37 +0100 + +lvm2 (2.02.06-2ubuntu4) feisty; urgency=low + + UdevLvm implementation: + * Provide udev rules to 1. run vgchange to activate lvs on new block + devices containing lvm volumes; 2. run vgmknodes when new dm devices + appear, to ensure that things which might depend on the lv symlinks + only run after vgchange has finished. + * Do symlink-to-..tmp-and-then-rename rather than unlink/symlink, + in vgchange, vgmknodes, etc., for /dev/vg/lv link. (This fixes + an obscure race. Reported with patch to Debian as #402132.) + + -- Ian Jackson Fri, 8 Dec 2006 15:22:20 +0000 + +lvm2 (2.02.06-2ubuntu3) edgy; urgency=low + + * Disable gcc stack protector to fix some weird segfaults/bus errors. + + -- Fabio M. Di Nitto Wed, 13 Sep 2006 09:59:29 +0200 + +lvm2 (2.02.06-2ubuntu2) edgy; urgency=low + + * Drop B-D on libgulm-dev since gulm locking is obsoleted. + + * Update Depends: to drop gulm and fence. + + * Rebuild for libdlm2. + + -- Fabio M. Di Nitto Thu, 27 Jul 2006 05:50:20 +0200 + +lvm2 (2.02.06-2ubuntu1) edgy; urgency=low + + * Merge from debian unstable. + + -- Michael Vogt Fri, 30 Jun 2006 11:16:28 +0200 + +lvm2 (2.02.06-2) unstable; urgency=low + + * Fix return value for unknown vg. (closes: #373644) + + -- Bastian Blank Wed, 14 Jun 2006 23:47:36 +0200 + +lvm2 (2.02.06-1) unstable; urgency=low + + * New upstream version. + + -- Bastian Blank Tue, 13 Jun 2006 07:35:37 +0000 + +lvm2 (2.02.05-3) unstable; urgency=low + + * Realy set default permissions. + + -- Bastian Blank Tue, 6 Jun 2006 17:21:18 +0000 + +lvm2 (2.02.05-2) unstable; urgency=low + + * Set default permissions to 0, 6, 0660. (closes: #370684) + + -- Bastian Blank Tue, 06 Jun 2006 13:01:13 +0000 + +lvm2 (2.02.05-1) unstable; urgency=low + + * New upstream version. + * Don't longer disallow installation on older kernels. (closes: #358373) + * Explicitely link libpthread. (closes: #358305) + + -- Bastian Blank Fri, 12 May 2006 18:20:01 +0000 + +lvm2 (2.02.02-1ubuntu1) dapper; urgency=low + + * merged with debian (required to fix ubuntu #38007) + * daemons/clvmd/Makefile.in: + * added -lpthreads to LDFLAGS to make it build + + -- Michael Vogt Mon, 8 May 2006 11:42:45 +0200 + +lvm2 (2.02.02-1) unstable; urgency=low + + * New upstream version. + * Enable md_component_detection. (closes: #278180) + * Set device permissions. + * Don't use O_DIRECT on armeb. (closes: #351632) + + -- Bastian Blank Sun, 12 Feb 2006 13:00:23 +0100 + +lvm2 (2.02.01-3) unstable; urgency=low + + * Fix snapshot check to work with set -e. (closes: #348154) + + -- Bastian Blank Sun, 15 Jan 2006 13:29:06 +0100 + +lvm2 (2.02.01-2) unstable; urgency=low + + * Abort installation on kernel < 2.6.12. + + -- Bastian Blank Sat, 14 Jan 2006 10:51:33 +0100 + +lvm2 (2.02.01-1) unstable; urgency=low + + * New upstream version. + + -- Bastian Blank Sat, 03 Dec 2005 18:15:24 +0100 + +lvm2 (2.02.00-1) unstable; urgency=low + + * New upstream version. + + -- Bastian Blank Sat, 26 Nov 2005 10:26:42 +0100 + +lvm2 (2.01.15-0ubuntu5) dapper; urgency=low + + * debian/rules: Copy lvm2.po to lvm2.pot at build, remove it at clean. + Closes: + + -- Martin Pitt Thu, 4 May 2006 12:53:41 +0200 + +lvm2 (2.01.15-0ubuntu4) dapper; urgency=low + + * Call vgscan instead of pvscan in clvm init script. + + * Fix while condition in clvm init script to catch only cluster errors. + + -- Fabio M. Di Nitto Fri, 07 Apr 2006 06:53:52 +0200 + +lvm2 (2.01.15-0ubuntu3) dapper; urgency=low + + * Call pvscan in clvm init script after clvmd is running + to refresh the cache or vgchange might fail. + + * Add wait_for_nodes loop to avoid a possible race condition + when starting up the entire cluster all together to clvm init script. + + * Make clvm init script use /etc/default/clvm instead of /etc/default/clvmd. + + * Ship a default clvm. + + -- Fabio M. Di Nitto Thu, 06 Apr 2006 07:32:53 +0200 + +lvm2 (2.01.15-0ubuntu2) dapper; urgency=low + + * Add init script for clvmd. + + * clvm now Depends: cman | gulm and fence. + + * Build clvm with gulm support. + + * Add Build-Deps: libccs-dev and libgulm-dev. + + -- Fabio M. Di Nitto Wed, 05 Apr 2006 12:52:08 +0200 + +lvm2 (2.01.15-0ubuntu1) dapper; urgency=low + + * New upstream version. + + -- Matthias Klose Mon, 23 Jan 2006 09:58:28 +0100 + +lvm2 (2.01.14-3ubuntu2) dapper; urgency=low + + * Drop selinux support since it breaks lvm2-udeb. + * Make sure to build with a proper libdevmapper. + + -- Fabio M. Di Nitto Tue, 29 Nov 2005 09:11:39 +0100 + +lvm2 (2.01.14-3ubuntu1) dapper; urgency=low + + * Resynchronise with Debian. + + -- Fabio M. Di Nitto Fri, 25 Nov 2005 12:51:58 +0100 + +lvm2 (2.01.14-3) unstable; urgency=low + + * It is pronounced readline, not ncurses. Fix build-deps. (closes: #330715) + + -- Bastian Blank Fri, 30 Sep 2005 13:14:25 +0200 + +lvm2 (2.01.14-2) unstable; urgency=low + + * Enable readline support for debs. (closes: #257406) + * Fix O_DIRECT disable for hppa. (closes: #330166) + + -- Bastian Blank Wed, 28 Sep 2005 19:12:53 +0200 + +lvm2 (2.01.14-1) unstable; urgency=low + + * New upstream version. (closes: #320454) + * Enable selinux support for debs. (closes: #315505) + * Change optimization for udebs. + + -- Bastian Blank Mon, 15 Aug 2005 18:33:41 +0200 + +lvm2 (2.01.12-2) unstable; urgency=low + + * Fix LVM1 metadata support. (closes: #315339) + + -- Bastian Blank Wed, 22 Jun 2005 18:49:36 +0200 + +lvm2 (2.01.12-1) unstable; urgency=low + + * New upstream version. + + -- Bastian Blank Mon, 20 Jun 2005 16:50:41 +0200 + +lvm2 (2.01.11-1) unstable; urgency=low + + * New upstream version. + * Reentregrate changes. + + -- Bastian Blank Sun, 19 Jun 2005 13:17:48 +0200 + +lvm2 (2.01.04-5ubuntu1) breezy; urgency=low + + * Bump Build-Deps on libncruses5-dev and libdlm-dev (1.x) + + -- Fabio M. Di Nitto Mon, 30 May 2005 11:05:56 +0200 + +lvm2 (2.01.04-5) unstable; urgency=low + + * Revert -4's rather widespread changes, except for the amd64 fix. + + -- Andres Salomon Thu, 28 Apr 2005 05:20:08 -0400 + +lvm2 (2.01.04-4) unstable; urgency=low + + * Don't longer use cdbs. + * Remove cruft. + * Workaround missing O_NOATIME on amd64. (closes: #298762) + + -- Bastian Blank Thu, 28 Apr 2005 09:58:00 +0200 + +lvm2 (2.01.04-3) unstable; urgency=high + + * Workaround missing O_NOATIME. (closes: #297010) + + -- Bastian Blank Tue, 08 Mar 2005 18:40:08 +0100 + +lvm2 (2.01.04-2) unstable; urgency=low + + * New maintainer. + * Always build clvmd and bump version of needed libdlm. + + -- Bastian Blank Sun, 27 Feb 2005 16:49:32 +0100 + +lvm2 (2.01.04-1) unstable; urgency=low + + * New upstream + Closes: #292984, 293174 + + -- Patrick Caulfield Thu, 17 Feb 2005 09:30:18 +0000 + +lvm2 (2.00.32-1) unstable; urgency=low + + * New upstream + Closes: #283290, 284990, 285225 + * Don't make /lib/lvm2 the default library directory as it causes initrd + troubles. + Closes: #287042 + + -- Patrick Caulfield Fri, 24 Dec 2004 12:27:05 +0000 + +lvm2 (2.00.31-1) unstable; urgency=low + + * New upstream. + + -- Patrick Caulfield Mon, 20 Dec 2004 13:27:43 +0000 + +lvm2 (2.00.29-1) unstable; urgency=low + + * New upstream + * Only build clvmd where a libdlm is available. + Doesn't exactly close #281433 but maybe reduces it to a wishlist bug. + + -- Patrick Caulfield Tue, 7 Dec 2004 10:54:43 +0000 + +lvm2 (2.00.25-1) unstable; urgency=low + + * New upstream + Closes: 272117 + * Remove useless "pvresize" command. + Closes: #278597 + * Add Brazilian debconf translation. + Closes: #278732 + * Remove "is not recommended for production use" from package description. + Closes: #278919 + * Add lvm2create_initrd to documentation directory. + + -- Patrick Caulfield Wed, 3 Nov 2004 09:37:56 +0000 + +lvm2 (2.00.24-2) unstable; urgency=low + + * Also provide "clvm" package for Cluster LVM daemon + Closes: #276651 + * Get rid of references to kernel-patch-device-mapper + Closes: #275881 + * Fix some Lintian warnings. + + -- Patrick Caulfield Sat, 16 Oct 2004 14:07:16 +0100 + +lvm2 (2.00.24-1) unstable; urgency=low + + * New upstream + Closes: #268562, #270111 + + -- Patrick Caulfield Mon, 20 Sep 2004 09:03:57 +0100 + +lvm2 (2.00.22-1) unstable; urgency=low + + * New upstream + This one really /does/ incorporate the swab stuff, sorry waldi. + * Include Japanese po-debconf + Closes: #270763 + + -- Patrick Caulfield Mon, 13 Sep 2004 09:12:07 +0100 + +lvm2 (2.00.21-2) unstable; urgency=low + + * Disable use of O_DIRECT on arm. + Closes: #267157 + + -- Patrick Caulfield Mon, 23 Aug 2004 08:39:43 +0100 + +lvm2 (2.00.21-1) unstable; urgency=low + + * New upstream. + * Update README.Debian to mention that later Debian 2.4 kernels have + device-mapper included. + * Really add French debconf transation (sorry) + Closes: #260700 + * Add Czech debconf translation + Closes: #265545 + + -- Patrick Caulfield Fri, 20 Aug 2004 10:44:11 +0100 + +lvm2 (2.00.19-3) unstable; urgency=low + + * Use libc byteswap functions. + Closes: #259733 + * Add French debconfg translation + Closes: #260700 + + -- Patrick Caulfield Mon, 2 Aug 2004 11:37:15 +0100 + +lvm2 (2.00.19-2) unstable; urgency=low + + * Switch to debconf-gettext templates + Closes: #257681 + * Fix snapshot warning so it doesn't error on a new installation. + Closes: #256276 + + -- Patrick Caulfield Wed, 7 Jul 2004 15:31:33 +0100 + +lvm2 (2.00.19-1) unstable; urgency=low + + * New upstream(s) + * Also added patch from upstream bk to fix problem with large 2.6 device + numbers. Closes: #248477 + + -- Patrick Caulfield Thu, 1 Jul 2004 16:07:58 +0100 + +lvm2 (2.00.16-2) unstable; urgency=low + + * Switch md_component_detection OFF by default in config file. + Closes: #248709, #252085 + * Ignore cdroms by default in config file. + * Warn about snapshot incompatibility with lvm10. + + -- Patrick Caulfield Fri, 11 Jun 2004 08:43:15 +0100 + +lvm2 (2.00.16-1) unstable; urgency=low + + * New Upstream version + + -- Patrick Caulfield Sun, 30 May 2004 10:40:04 +0100 + +lvm2 (2.00.15-3) unstable; urgency=low + + * Take over maintainership + * Disable O_DIRECT on hppa. + + -- Patrick Caulfield Wed, 19 May 2004 09:05:29 +0100 + +lvm2 (2.00.15-2) unstable; urgency=low + + * Fix FTBFS (closes: #248143). + + -- Andres Salomon Sun, 09 May 2004 13:57:07 -0400 + +lvm2 (2.00.15-1) unstable; urgency=low + + * New upstream release. + * Drop 001-separated.patch; merged upstream. + * Drop 002-vgdisplay_colon.patch; merged upstream. + * Compile w/ -D_FILE_OFFSET_BITS=64 (thanks to Thierry DE CARVALHO for + the suggestion/patch). + * Add 004-make_clean.patch and 005-make_distclean.patch; fixes + build system problem. + * Add Patrick Caulfield as a co-maintainer. + * Disable O_DIRECT for mips and mipsel (closes: #247896). + + -- Andres Salomon Mon, 03 May 2004 00:54:06 -0400 + +lvm2 (2.00.08-4) unstable; urgency=low + + * Fix libdevmapper-dev versioned dep (missing epoch). + * Fix typos in manpage. (Closes: #226026) + * Implement vgdisplay --colon. (Closes: #226056) + * Add udeb for debian-installer. (Closes: #225178) + * Remove lvm-default symlink in prerm. (Closes: #230543) + + -- Andres Salomon Sun, 04 Jan 2004 23:14:25 -0500 + +lvm2 (2.00.08-3) unstable; urgency=low + + * Add autotools-dev build-dep. + + -- Andres Salomon Sun, 14 Dec 2003 20:37:39 -0500 + +lvm2 (2.00.08-2) unstable; urgency=low + + * Update build-deps to require devmapper 1.00.07 or greater. + + -- Andres Salomon Sat, 06 Dec 2003 23:07:59 -0500 + +lvm2 (2.00.08-1) unstable; urgency=low + + * New upstream release. + * Update package description. (Closes: #216441) + * Tell cdbs where to find config.{sub,guess}. (Closes: #217457) + + -- Andres Salomon Sun, 30 Nov 2003 02:07:38 -0500 + +lvm2 (2.00.07-1) unstable; urgency=low + + * New upstream release. + * Update standards-version. + * Convert build system to cdbs. + + -- Andres Salomon Wed, 15 Oct 2003 01:27:48 -0400 + +lvm2 (2.00.06-1) unstable; urgency=low + + * New upstream release. + + -- Andres Salomon Fri, 22 Aug 2003 00:59:39 -0400 + +lvm2 (2.00.05-1) unstable; urgency=low + + * New upstream release. (Closes: #203571) + * This release creates locking_dir if it doesn't exist. (Closes: #192789) + * Fixes missing-symlink bug. (Closes: #204432) + + -- Andres Salomon Tue, 12 Aug 2003 00:00:41 -0400 + +lvm2 (1.95.15-4) unstable; urgency=low + + * Update libdevmapper-dev build-deps, so accidents like rebuilding + against non-existent libdevmapper0 versions don't happen. + + -- Andres Salomon Thu, 07 Aug 2003 17:01:52 -0400 + +lvm2 (1.95.15-3) unstable; urgency=low + + * The naming-releases-is-lame release. + * Put binaries in /lib/lvm-200 instead of /sbin, allowing lvm10 to be + installed with lvm2. Also dropped init script. (Closes: #185245) + * Clean up manpages/undocumented files. + + -- Andres Salomon Thu, 07 Aug 2003 01:04:59 -0400 + +lvm2 (1.95.15-2) unstable; urgency=low + + * Calm-before-the-storm release; the next one will either be 2.00 (once + the kill-yer-VGs bug is fixed) or 1.95 with lvm10 compatibility (once + patrick returns from vacation). + * Update maintainer email address. + * Update standards-version. + * Rebuild against newly SONAME'd libdevmapper packages. (Closes: #199399) + * When deactivating VGs, ignore failures related to file locking, as + / might be read-only. (Closes: #192802) + * Make backup of lvm2 metadata in postinst. (Closes: #189325) + + -- Andres Salomon Thu, 31 Jul 2003 01:36:44 -0400 + +lvm2 (1.95.11-1) unstable; urgency=low + + * New upstream release. (Closes: #171436) + * Removed TODO and INTRO from debian/docs; added WHATS_NEW. + * Remove vgcfgrestore.8 undocumented symlink. + * Added a README.Debian, mentioning the device-mapper kernel module + requirement that lvm2 has. (Closes: #171674, #163020) + * Get rid of debian/conffiles (debhelper's smart enough to figure that out). + * debian/copyright fix to appease lintian. + * Fix typo in tools/commands.h that caused /usr/sbin/; to be created. + + -- Andres Salomon Mon, 9 Dec 2002 02:51:02 -0400 + +lvm2 (1.95.10-2) unstable; urgency=low + + * Fix software raid problems by ensuring lvm init script runs after + raidtools init script. (Closes: #152569) + + -- Andres Salomon Tue, 3 Sep 2002 04:05:43 -0400 + +lvm2 (1.95.10-1) unstable; urgency=low + + * New upstream release (Beta 3.2). + * Change all references to /dev/device-mapper/control to + /dev/mapper/control. + + -- Andres Salomon Sun, 1 Sep 2002 18:55:12 -0400 + +lvm2 (0.95.05-3) unstable; urgency=low + + * Get rid of awk dependency in init script. (Closes: #146257) + + -- Andres Salomon Sun, 12 May 2002 04:39:06 -0500 + +lvm2 (0.95.05-2) unstable; urgency=low + + * Use ${shlibs:Depends} in Depends. + * Get rid of postinst/postrm scripts, use debhelper's init script instead. + * Add Conflicts against lvm10, lvm-common. + * Fix endian issues on big-endian machines. + + -- Andres Salomon Thu, 2 May 2002 23:53:53 -0500 + +lvm2 (0.95.05-1) unstable; urgency=low + + * New release (Beta2). + + -- Andres Salomon Thu, 25 Apr 2002 00:37:41 -0500 + +lvm2 (0.95.04cvs20020306-1) unstable; urgency=low + + * CVS updated. + * Convert from debian native package. + + -- Andres Salomon Wed, 6 Mar 2002 00:43:21 -0500 + +lvm2 (0.95.04cvs20020304) unstable; urgency=low + + * CVS updated. + * Enhance init script; create devmapper control device, etc. + * Add dmsetup as a suggestion. + * Add /etc/lvm/lvm.conf conffile. + * Add undocumented(7) for the commands missing manpages. + + -- Andres Salomon Mon, 4 Mar 2002 04:51:26 -0500 + +lvm2 (0.95.02cvs20020220) unstable; urgency=low + + * Initial Release. + + -- Andres Salomon Wed, 20 Feb 2002 03:17:25 -0500 + --- lvm2-2.02.54.orig/debian/changelog.Debian.devmapper +++ lvm2-2.02.54/debian/changelog.Debian.devmapper @@ -0,0 +1,517 @@ +devmapper (2:1.02.27-4) unstable; urgency=low + + * Set link priority to 100 for dmraid devices. (closes: #498838) + + -- Bastian Blank Wed, 01 Oct 2008 16:14:32 +0200 + +devmapper (2:1.02.27-3) unstable; urgency=low + + * Fix jump to undefined label in udev rules. (closes: #491107) + + -- Bastian Blank Thu, 17 Jul 2008 11:14:48 +0200 + +devmapper (2:1.02.27-2) unstable; urgency=low + + * Update dmsetup export patch to export target types. (closes: #486780) + * Add udev rules to dmsetup. (closes: #455746) + + -- Bastian Blank Wed, 16 Jul 2008 00:00:31 +0200 + +devmapper (2:1.02.27-1) unstable; urgency=low + + * New upstream version. (closes: #488981) + * Update dm_report symbols. + * Only ignore known VCS dirs. (closes: #482744) + + -- Bastian Blank Sun, 06 Jul 2008 15:07:56 +0200 + +devmapper (2:1.02.26-1) unstable; urgency=low + + * New upstream version. + * Update symbols files. + * Update dmsetup export patch. + + -- Bastian Blank Sun, 22 Jun 2008 10:54:09 +0200 + +devmapper (2:1.02.25-1) unstable; urgency=low + + * New upstream version. + + -- Bastian Blank Sun, 18 May 2008 14:34:03 +0200 + +devmapper (2:1.02.24-4) unstable; urgency=low + + * Add symbols file for libdevmapper1.02. + * Add modified version of atomic device creation patch. (closes: #455745) + * Add modified version of dmsetup export patch. (closes: #434241) + + -- Bastian Blank Mon, 10 Mar 2008 22:16:48 +0100 + +devmapper (2:1.02.24-3) unstable; urgency=low + + * Always export selinux function. + + -- Bastian Blank Tue, 08 Jan 2008 16:45:10 +0000 + +devmapper (2:1.02.24-2) unstable; urgency=low + + * Build depend against automake. + + -- Bastian Blank Wed, 02 Jan 2008 18:42:07 +0000 + +devmapper (2:1.02.24-1) unstable; urgency=low + + * New upstream version. (closes: #457972) + * Use linux-2.6 style orig handling. + * Reduce linked libs to minimum. + * Remove init script. (closes: #361358, #375340, #384900, #419958) + * Cleanup udeb relations. (closes: #419604) + * Fix pkgconfig file for static linking. (closes: #390243) + * Supply proper --host and --build args to configure. (closes: #451136) + * Fix copyright file. + * Update standards version to 3.7.3, no changes. + + -- Bastian Blank Wed, 02 Jan 2008 14:42:20 +0000 + +devmapper (2:1.02.20-2) unstable; urgency=low + + * Add version to shlibs. (closes: #431735) + * Woraround kernel headers. + + -- Bastian Blank Fri, 6 Jul 2007 08:40:12 +0000 + +devmapper (2:1.02.20-1) unstable; urgency=low + + * New upstream version. + - Fix include guards. (closes: #426900) + + -- Bastian Blank Fri, 22 Jun 2007 11:14:47 +0000 + +devmapper (2:1.02.18-1) unstable; urgency=low + + * New upstream version. + * Bump abiname. + + -- Bastian Blank Sun, 8 Apr 2007 17:52:34 +0000 + +devmapper (2:1.02.12-1) unstable; urgency=low + + * New upstream version. + - Don't suspend device which is already suspended. + + -- Bastian Blank Sat, 2 Dec 2006 16:54:38 +0000 + +devmapper (2:1.02.08-1) unstable; urgency=medium + + * New upstream version. + - Fix corelog segment line. (closes: #376283) + + -- Bastian Blank Tue, 8 Aug 2006 22:05:44 +0000 + +devmapper (2:1.02.07-1) unstable; urgency=low + + * New upstream version. + * Update priorities to match overrides. + * Acknowledge NMU. (closes: #316883, #329409, #341901, #342455) + + -- Bastian Blank Sat, 10 Jun 2006 21:20:43 +0000 + +devmapper (2:1.02.05-2.1) unstable; urgency=low + + * Non-maintainer upload. + * Set default device modes to 0, 6, 0660, according to the decision + of the technical committee, + http://lists.debian.org/debian-ctte/2006/04/msg00033.html + Closes: #316883, #329409, #341901, #342455 + LVM devices are created with root:disk ownership and 0660 permissions, + which is used by all other disk block devices. This allows backups + of LVM logical volumes with tools such as amanda, which run as user + backup, a member of the disk group. + Thanks for Roger Leigh for preparing the patch. + + -- Andreas Barth Sun, 4 Jun 2006 20:15:33 +0200 + +devmapper (2:1.02.05-2) unstable; urgency=low + + * Generate udeb shlibs entries. (closes: #356906) + * Set default device modes to 0, 6, 0644. (closes: #304476) + + -- Bastian Blank Sat, 13 May 2006 14:44:47 +0000 + +devmapper (2:1.02.05-1) unstable; urgency=low + + * New upstram version. + * Install pkgconfig file. (closes: #355927) + + -- Bastian Blank Fri, 5 May 2006 20:40:42 +0000 + +devmapper (2:1.02.03-1) unstable; urgency=low + + * New upstram version. + * Make device modes overridable. + + -- Bastian Blank Sun, 12 Feb 2006 11:45:49 +0100 + +devmapper (2:1.02.02-1) unstable; urgency=low + + * New upstram version. + - Use names instead of numbers in messages when ioctls fail. + (closes: #341452) + + -- Bastian Blank Fri, 02 Dec 2005 20:16:55 +0100 + +devmapper (2:1.02.00-1) unstable; urgency=low + + * New upstream version. (closes: #338947) + + -- Bastian Blank Thu, 24 Nov 2005 20:07:41 +0100 + +devmapper (2:1.01.05-1) unstable; urgency=low + + * Readd init script to load the device-mapper module. + (closes: #330549, #315161, #298406) + + -- Bastian Blank Thu, 29 Sep 2005 18:58:31 +0200 + +devmapper (2:1.01.04-2) unstable; urgency=low + + * Enable selinux support for debs. (closes: #323022) + * Change optimization for udebs. (closes: #314360) + + -- Bastian Blank Sun, 14 Aug 2005 11:14:54 +0200 + +devmapper (2:1.01.04-1) unstable; urgency=low + + * New upstream version. + * Explicitly disable selinux support. (blocked by #322891) + + -- Bastian Blank Sat, 13 Aug 2005 13:16:31 +0200 + +devmapper (2:1.01.03-1) unstable; urgency=low + + * New upstream version. + * Remove init script, libdevmapper creates the device themself. + + -- Bastian Blank Sun, 19 Jun 2005 13:41:08 +0200 + +devmapper (2:1.01.00-4) unstable; urgency=low + + * Build static libs. + * Remove the wrong dh_python call. + + -- Bastian Blank Mon, 14 Mar 2005 19:43:32 +0100 + +devmapper (2:1.01.00-3) unstable; urgency=low + + * Don't longer use cdbs. + * Remove many cruft. + + -- Bastian Blank Mon, 14 Mar 2005 13:55:47 +0100 + +devmapper (2:1.01.00-2) unstable; urgency=high + + * New maintainer. + * Fix initscript links. (closes: #299013) + + -- Bastian Blank Fri, 11 Mar 2005 08:29:31 +0100 + +devmapper (2:1.01.00-1) unstable; urgency=low + + * New upstream + * Set permission on control device to 0660 + Closes: #294260 + + -- Patrick Caulfield Mon, 14 Feb 2005 09:20:23 +0000 + +devmapper (2:1.00.19-4) unstable; urgency=low + + * Cope with single/multiple spaces in "ls" output when checking device. + Closes: #273273 + + -- Patrick Caulfield Sun, 17 Oct 2004 11:01:00 +0100 + +devmapper (2:1.00.19-3) unstable; urgency=low + + * Remove kernel-patch-devmapper as it is now incorporated in the + Debian kernel. + Closes: #262347, #272384 + * Remove XSI:ism (what ever that is) from init script. + Closes: #258853 + + -- Patrick Caulfield Mon, 20 Sep 2004 08:01:42 +0100 + +devmapper (2:1.00.19-2) unstable; urgency=low + + * Don't error on startup of /dev/mapper directory does not exist. + Closes: #259314 + + -- Patrick Caulfield Thu, 15 Jul 2004 11:52:38 +0100 + +devmapper (2:1.00.19-1) unstable; urgency=low + + * New upstream version(s). Closes: #257958 + * Don't build debian-speciif patches as dm is now in the Debian kernels + Closes: #247004, #252168 + * Don't recreate /dev/mapper/control if it hasn't changed. + Closes: #257106 + * Add dmsetup udeb + Closes: #241385 + + -- Patrick Caulfield Wed, 7 Jul 2004 14:42:34 +0100 + +devmapper (2:1.00.17-5) unstable; urgency=low + + * Take over maintainership. + * recreate the /dev/mapper/control device at each reboot in case + the minor number changes. Closes: #236735 + + -- Patrick Caulfield Tue, 1 Jun 2004 11:13:55 +0100 + +devmapper (2:1.00.17-4) unstable; urgency=low + + * The DAM-approval-process-sucks release. + * Fix missing autoconf build-dep (closes: #249476). + + -- Andres Salomon Mon, 17 May 2004 22:35:26 -0400 + +devmapper (2:1.00.17-3) unstable; urgency=low + + * Fix autoconf check for selinux build environment (closes: #248656). + + -- Andres Salomon Mon, 17 May 2004 03:20:52 -0400 + +devmapper (2:1.00.17-2) unstable; urgency=low + + * Add a little blurb about the removal of VFS locking patch in + README.Debian. By popular request. + * Have libdevmapper1.00-udeb provide libdevmapper1.00 (closes: #248238). + + -- Andres Salomon Mon, 10 May 2004 02:07:12 -0400 + +devmapper (2:1.00.17-1) unstable; urgency=low + + * New upstream release. + * Update kernel patches, ensure VFS lock patch is applied + (closes: #245748). + * Move dmsetup binary into /sbin (closes: #247053). + * Add 002-lfs.patch; compile w/ -D_FILE_OFFSET_BITS=64. + + -- Andres Salomon Sat, 01 May 2004 23:55:01 -0400 + +devmapper (2:1.00.15-1) unstable; urgency=low + + * New upstream release (closes: #242514). + * Update copyright file. + * Drop 2.4.22 kernel patch. This rids us of the need for a separate + VFS-lock patch. + * Add 2.4.25 kernel patch (closes: #241097). + * Add init script for libdevmapper (closes: #233624). + * Doc updates, cleanups, and added a README.Debian (closes: #234488). + * Update kernel headers to 2.4.25. + + -- Andres Salomon Thu, 08 Apr 2004 03:16:45 -0400 + +devmapper (2:1.00.07-4) unstable; urgency=low + + * Acknowledge NMU. + * Add udeb for debian-installer. + * Add 2.4.24 devmapper patch, taken from Joe Thornber's 2.4.23-pre7 patch. + Note that this also includes the VFS-locking patch. (Closes: #228017) + * Add 2.4.24 devmapper patch for Debian; this one is based on the normal + 2.4.24 patch, but applies to Debian's 2.4.24-2 kernel. (Closes: #230015) + * Drop 2.4.20 and 2.4.21 patches; those kernels are deprecated and + insecure. (Closes: #205862) + * Add versioned build-dep for cdbs. + + -- Andres Salomon Sat, 14 Feb 2004 18:56:08 -0500 + +devmapper (2:1.00.07-3.1) unstable; urgency=low + + * Non-maintainer upload + * Include VFS-lock patch (Closes: #224829) + + -- Matt Zimmerman Mon, 22 Dec 2003 13:28:25 -0800 + +devmapper (2:1.00.07-3) unstable; urgency=low + + * Add explicit dependency upon linux-kernel-headers. (Closes: #223629) + * Build-depend upon autotools-dev so that cdbs can find an + updated config.{sub,guess}. (Closes: #223697) + + -- Andres Salomon Sun, 14 Dec 2003 19:30:54 -0500 + +devmapper (2:1.00.07-2) unstable; urgency=low + + * Enable v1 ioctls compatibility. (Closes: #223414) + + -- Andres Salomon Tue, 09 Dec 2003 10:36:38 -0500 + +devmapper (2:1.00.07-1) unstable; urgency=low + + * New upstream release. + * Remove 001-2.4.22-dm1.patch (now included upstream). + * Change kernel-patch-device-mapper's arch type to all; thanks to + Philipp Matthias Hahn for pointing this out. (Closes: #216187) + * Tell cdbs the proper directory for config.{sub,guess}. + + -- Andres Salomon Sun, 30 Nov 2003 01:50:06 -0500 + +devmapper (2:1.00.05-3) unstable; urgency=low + + * Fix problem w/ dm patch on sparc64. (Closes: #213446) + * Update standards-version. + * Remove CFLAGS patch, as cdbs now doesn't clobber CFLAGS (yay!). + + -- Andres Salomon Wed, 15 Oct 2003 00:57:12 -0400 + +devmapper (2:1.00.05-2) unstable; urgency=low + + * Fix PIC problem due to cdbs clobbering CFLAGS. (Closes: #212023) + + -- Andres Salomon Sat, 27 Sep 2003 16:00:59 -0400 + +devmapper (2:1.00.05-1) unstable; urgency=low + + * New upstream version. + * Change build system to use cdbs. + * Add 2.4.22 device-mapper patch. (Closes: #210447) + * Add versioned build-dep for dh-kpatches (see bug #204160). + + -- Andres Salomon Thu, 18 Sep 2003 01:00:28 -0400 + +devmapper (2:1.00.03-1) unstable; urgency=low + + * New upstream version. + + -- Andres Salomon Fri, 22 Aug 2003 00:50:48 -0400 + +devmapper (2:1.00.02-2) unstable; urgency=low + + * Add epoch. + * Fix typo in description. (Closes: #202727) + + -- Andres Salomon Sat, 19 Jul 2003 19:32:37 -0400 + +devmapper (1.00.02-1) unstable; urgency=low + + * New upstream version. + * Update standards-version. + + -- Andres Salomon Sat, 19 Jul 2003 19:32:37 -0400 + +devmapper (1.00.02rc3-1) unstable; urgency=low + + * New upstream version. + + -- Andres Salomon Mon, 14 Jul 2003 00:50:42 -0400 + +devmapper (1.00.01rc2-1) unstable; urgency=low + + * New upstream version. + * Update kernel patch, headers, and header scripts; 2.4.20 and 2.4.21 patches are now + included. + * New 1.00 SONAME, updated lib accordingly. + + -- Andres Salomon Wed, 09 Jul 2003 01:12:50 -0400 + +devmapper (0.96.08-1) unstable; urgency=low + + * New upstream version. + * Update maintainer email address. + * Rename libdevmapper0 to match SONAME. (Closes: #197438) + * Remove libdevmapper modutils dependency and lvm2 postinst stuff; working + towards a proper lvm2/lvm10/dm relationship. (Closes: #194907) + * Update kernel patch and headers; 2.4.19 and 2.4.20 patches are now + included. + * Update standards-version and libdevmapper-dev's section. + * Change SONAME stuff to work around ldconfig weirdness, and various + other fixes. + + -- Andres Salomon Sat, 07 Jun 2003 18:00:03 -0400 + +devmapper (0.96.07-1) unstable; urgency=low + + * New upstream version. (Closes: #171671) + * Char signedness assumption fixed. (Closes: #163825) + * Remove types.h inclusion fix from 2.4.19 kernel patch; committed upstream. + * debian/copyright fix to appease lintian. + + -- Andres Salomon Mon, 9 Dec 2002 02:16:28 -0400 + +devmapper (0.96.04-2) unstable; urgency=low + + * Make the new version of dh-kpatches happy. (Closes: #160927) + * Make header-update makefile rule consistent w/ my other packages, and + update headers for good measure. + + -- Andres Salomon Sat, 21 Sep 2002 17:29:07 -0400 + +devmapper (0.96.04-1) unstable; urgency=low + + * New upstream release (Beta5). + * Update kernel headers to 2.4.19. + * Update kpatch to 2.4.19. + + -- Andres Salomon Thu, 15 Aug 2002 00:26:20 -0400 + +devmapper (0.95.07-3) unstable; urgency=low + + * Move libdevmapper0 libs to /lib. (Closes: #146237) + * Remove dependency on fileutils, to shut lintian up. + + -- Andres Salomon Sun, 12 May 2002 03:20:54 -0500 + +devmapper (0.95.07-2) unstable; urgency=low + + * Fix link error on hppa, due to lack of -fPIC. (Closes: #144792) + * Fix postinst error in libdevmapper0. (Closes: #144889) + * Updated depends (removed patch, bzip2, added modutils, fileutils). + + -- Andres Salomon Sun, 28 Apr 2002 14:26:59 -0500 + +devmapper (0.95.07-1) unstable; urgency=low + + * New release (Beta2). + * Remove 2.4.16 and 2.4.17 patches from kpatches. + * Reworked the build system to supply its own headers, instead of + depending upon kernel-source packages. Makes building much faster. + * Added scripts/ directory, and scripts to keep kernel headers up-to-date. + + -- Andres Salomon Thu, 25 Apr 2002 01:01:41 -0500 + +devmapper (0.95.06-1) unstable; urgency=low + + * New release. + + -- Andres Salomon Wed, 3 Apr 2002 00:02:12 -0500 + +devmapper (0.95.05-1) unstable; urgency=low + + * New release; ext3 support and 2.4.18 patches now included. + * Drop the cvs suffix from version. + + -- Andres Salomon Fri, 15 Mar 2002 01:03:25 -0500 + +devmapper (0.95.03cvs20020306-1) unstable; urgency=low + + * New Release. + * Convert from debian native package. + + -- Andres Salomon Wed, 6 Mar 2002 00:29:39 -0500 + +devmapper (0.95.02cvs20020304) unstable; urgency=low + + * CVS update. + * Renamed libdevmapper package to libdevmapper0. + * Added postinst script for creating devmapper control device. + + -- Andres Salomon Mon, 4 Mar 2002 02:23:48 -0500 + +devmapper (0.95.02cvs20020218) unstable; urgency=low + + * Initial Release. + * device-mapper broken up into libdevmapper1, libdevmapper-dev, + dmsetup, and kernel-patch-device-mapper. + + -- Andres Salomon Mon, 18 Feb 2002 15:46:08 -0500 + --- lvm2-2.02.54.orig/debian/compat +++ lvm2-2.02.54/debian/compat @@ -0,0 +1 @@ +7 --- lvm2-2.02.54.orig/debian/dmsetup.install +++ lvm2-2.02.54/debian/dmsetup.install @@ -0,0 +1,2 @@ +sbin/dmsetup +usr/share/man/man8/dmsetup.8 --- lvm2-2.02.54.orig/debian/lvm2.init +++ lvm2-2.02.54/debian/lvm2.init @@ -0,0 +1,56 @@ +#!/bin/sh +### BEGIN INIT INFO +# Provides: lvm2 lvm +# Required-Start: mountdevsubfs udev +# Required-Stop: +# Should-Start: mdadm-raid cryptdisks-early multipath-tools-boot +# Should-Stop: umountroot mdadm-raid +# X-Start-Before: checkfs mountall +# X-Stop-After: umountfs +# Default-Start: S +# Default-Stop: 0 6 +### END INIT INFO + +SCRIPTNAME=/etc/init.d/lvm2 + +. /lib/lsb/init-functions + +[ -x /sbin/vgchange ] || exit 0 + +do_start() +{ + modprobe dm-mod 2> /dev/null || : + /sbin/vgscan --ignorelockingfailure --mknodes || : + /sbin/vgchange -aly --ignorelockingfailure || return 2 +} + +do_stop() +{ + /sbin/vgchange -aln --ignorelockingfailure || return 2 +} + +case "$1" in + start) + log_begin_msg "Setting up LVM Volume Groups" + do_start + case "$?" in + 0|1) log_end_msg 0 ;; + 2) log_end_msg 1 ;; + esac + ;; + stop) + log_begin_msg "Shutting down LVM Volume Groups" + do_stop + case "$?" in + 0|1) log_end_msg 0 ;; + 2) log_end_msg 1 ;; + esac + ;; + restart|force-reload) + ;; + *) + echo "Usage: $SCRIPTNAME {start|stop}" >&2 + exit 3 + ;; +esac + --- lvm2-2.02.54.orig/debian/copyright +++ lvm2-2.02.54/debian/copyright @@ -0,0 +1,52 @@ +This package was downloaded from: + + ftp://sources.redhat.com/pub/lvm2/ + +Copyright: + + Copyright (C) 1997-2004 Sistina Software + 2004 Luca Berra + 2004-2009 Red Hat, Inc + 2005-2007 NEC Corporation + +License for libdevmapper, liblvm and the lvm tools lib: + + This package is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License version 2.1 as published by the Free Software Foundation. + + This package is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this package; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + +On Debian systems, the complete text of the GNU Lesser General +Public License v2.1 can be found in `/usr/share/common-licenses/LGPL-2.1'. + +License for the daemons, tools, tests and build system: + + This package is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License version 2 as + published by the Free Software Foundation. + + This package is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this package; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + +On Debian systems, the complete text of the GNU General +Public License v2 can be found in `/usr/share/common-licenses/GPL-2'. + +The Debian packaging is: + + Copyright (C) 2005-2009 Bastian Blank + +and is licensed under the GPL v2, see above. --- lvm2-2.02.54.orig/debian/control +++ lvm2-2.02.54/debian/control @@ -0,0 +1,152 @@ +Source: lvm2 +Section: admin +Priority: optional +Maintainer: Ubuntu Core Developers +XSBC-Original-Maintainer: Debian LVM Team +Uploaders: Bastian Blank +Build-Depends: debhelper (>> 4.2), automake, libcman-dev (>> 2), libdlm-dev (>> 2), libreadline6-dev, libselinux1-dev, pkg-config, quilt, libtool +Standards-Version: 3.7.3 +Homepage: http://sources.redhat.com/lvm2/ +Vcs-Svn: svn://svn.debian.org/pkg-lvm/lvm2/trunk/ +Vcs-Browser: http://svn.debian.org/wsvn/pkg-lvm/lvm2/trunk/ + +Package: lvm2 +Architecture: any +Depends: ${shlibs:Depends}, ${misc:Depends}, lsb-base, dmsetup (>> 2:1.02.36), watershed (>= 2) +Conflicts: lvm-common +Replaces: lvm-common +Description: The Linux Logical Volume Manager + This is LVM2, the rewrite of The Linux Logical Volume Manager. LVM + supports enterprise level volume management of disk and disk subsystems + by grouping arbitrary disks into volume groups. The total capacity of + volume groups can be allocated to logical volumes, which are accessed as + regular block devices. + +Package: lvm2-udeb +XC-Package-Type: udeb +Section: debian-installer +Architecture: any +Depends: ${shlibs:Depends}, ${misc:Depends} +Description: The Linux Logical Volume Manager + This is a udeb, or a microdeb, for the debian-installer. + . + This is LVM2, the rewrite of The Linux Logical Volume Manager. LVM + supports enterprise level volume management of disk and disk subsystems + by grouping arbitrary disks into volume groups. The total capacity of + volume groups can be allocated to logical volumes, which are accessed as + regular block devices. + +Package: clvm +Section: admin +Priority: extra +Architecture: any +Depends: ${shlibs:Depends}, ${misc:Depends}, lvm2 (= ${binary:Version}), lsb-base, cman +Description: Cluster LVM Daemon for lvm2 + This package provides the clustering interface for lvm2, when used with + Red Hat's "cman" cluster infrastructure. It allows logical volumes to + be created on shared storage devices (eg Fibre Channel, or iSCSI). + +Package: libdevmapper-dev +Section: libdevel +Architecture: any +Depends: ${misc:Depends}, libdevmapper1.02.1 (= ${binary:Version}), libdevmapper-event1.02.1 (= ${binary:Version}), libselinux1-dev +Description: The Linux Kernel Device Mapper header files + The Linux Kernel Device Mapper is the LVM (Linux Logical Volume Management) + Team's implementation of a minimalistic kernel-space driver that handles + volume management, while keeping knowledge of the underlying device layout + in user-space. This makes it useful for not only LVM, but EVMS, software + raid, and other drivers that create "virtual" block devices. + . + This package contains the (user-space) header files for accessing the + device-mapper; it allow usage of the device-mapper through a clean, + consistent interface (as opposed to through kernel ioctls). + +Package: libdevmapper1.02.1 +Section: libs +Priority: required +Architecture: any +Depends: ${shlibs:Depends}, ${misc:Depends} +Recommends: dmsetup +Provides: libdevmapper +Description: The Linux Kernel Device Mapper userspace library + The Linux Kernel Device Mapper is the LVM (Linux Logical Volume Management) + Team's implementation of a minimalistic kernel-space driver that handles + volume management, while keeping knowledge of the underlying device layout + in user-space. This makes it useful for not only LVM, but EVMS, software + raid, and other drivers that create "virtual" block devices. + . + This package contains the (user-space) shared library for accessing the + device-mapper; it allows usage of the device-mapper through a clean, + consistent interface (as opposed to through kernel ioctls). + +Package: libdevmapper1.02.1-udeb +XC-Package-Type: udeb +Section: debian-installer +Architecture: any +Depends: ${shlibs:Depends}, ${misc:Depends} +Recommends: dmsetup-udeb +Description: The Linux Kernel Device Mapper userspace library + This is a udeb, or a microdeb, for the debian-installer. + . + The Linux Kernel Device Mapper is the LVM (Linux Logical Volume Management) + Team's implementation of a minimalistic kernel-space driver that handles + volume management, while keeping knowledge of the underlying device layout + in user-space. This makes it useful for not only LVM, but EVMS, software + raid, and other drivers that create "virtual" block devices. + +Package: dmsetup +Section: admin +Architecture: any +Depends: ${shlibs:Depends}, ${misc:Depends}, initramfs-tools, util-linux (>> 2.16), udev (>> 141-2) +Conflicts: devicekit-disks (<< 009) +Breaks: udev (<< 138-1) +Description: The Linux Kernel Device Mapper userspace library + The Linux Kernel Device Mapper is the LVM (Linux Logical Volume Management) + Team's implementation of a minimalistic kernel-space driver that handles + volume management, while keeping knowledge of the underlying device layout + in user-space. This makes it useful for not only LVM, but EVMS, software + raid, and other drivers that create "virtual" block devices. + . + This package contains a utility for modifying device mappings. + +Package: dmsetup-udeb +XC-Package-Type: udeb +Section: debian-installer +Architecture: any +Depends: ${shlibs:Depends}, ${misc:Depends} +Description: The Linux Kernel Device Mapper userspace library + The Linux Kernel Device Mapper is the LVM (Linux Logical Volume Management) + Team's implementation of a minimalistic kernel-space driver that handles + volume management, while keeping knowledge of the underlying device layout + in user-space. This makes it useful for not only LVM, but EVMS, software + raid, and other drivers that create "virtual" block devices. + . + This package contains a utility for modifying device mappings. + +Package: libdevmapper-event1.02.1 +Section: libs +Priority: optional +Architecture: any +Depends: ${shlibs:Depends} +Description: The Linux Kernel Device Mapper userspace library + The Linux Kernel Device Mapper is the LVM (Linux Logical Volume Management) + Team's implementation of a minimalistic kernel-space driver that handles + volume management, while keeping knowledge of the underlying device layout + in user-space. This makes it useful for not only LVM, but EVMS, software + raid, and other drivers that create "virtual" block devices. + . + This package contains the userspace library to help with event monitoring + for devmapper devices, in conjunction with the dmevent daemon. + +Package: dmeventd +Section: admin +Architecture: any +Depends: ${shlibs:Depends} +Description: The Linux Kernel Device Mapper userspace library + The Linux Kernel Device Mapper is the LVM (Linux Logical Volume Management) + Team's implementation of a minimalistic kernel-space driver that handles + volume management, while keeping knowledge of the underlying device layout + in user-space. This makes it useful for not only LVM, but EVMS, software + raid, and other drivers that create "virtual" block devices. + . + This package contains a daemon to monitor events of devmapper devices. --- lvm2-2.02.54.orig/debian/lvm2.examples +++ lvm2-2.02.54/debian/lvm2.examples @@ -0,0 +1 @@ +doc/*.conf --- lvm2-2.02.54.orig/debian/lvm2.postinst +++ lvm2-2.02.54/debian/lvm2.postinst @@ -0,0 +1,19 @@ +#!/bin/sh + +set -e + +case "$1" in + configure) + vgcfgbackup >/dev/null 2>&1 || : + if [ -x /etc/init.d/lvm2 ]; then + invoke-rc.d lvm2 start || : + fi + if [ -x /usr/sbin/update-initramfs ]; then + update-initramfs -u + fi + ;; +esac + +#DEBHELPER# + +exit 0 --- lvm2-2.02.54.orig/debian/dmsetup.preinst +++ lvm2-2.02.54/debian/dmsetup.preinst @@ -0,0 +1,34 @@ +#!/bin/sh + +set -e + +rm_conffile() { + CONFFILE="$1" + + if [ -e "$1" ]; then + md5sum="$(md5sum "$1" | awk '{print $1}')" + old_md5sum="$(dpkg-query -W -f='${Conffiles}' dmsetup | sed -n -e "\' $CONFFILE ' { s/ obsolete$//; s/.* //; p }"))" + if [ "$md5sum" != "$old_md5sum" ]; then + echo "Obsolete conffile $CONFFILE has been modified by you." + echo "Saving as $CONFFILE.dpkg-bak ..." + mv -f "$CONFFILE" "$CONFFILE".dpkg-bak + else + rm -f "$CONFFILE" + fi + fi +} + +case "$1" in + upgrade) + if dpkg --compare-versions "$2" lt 2:2.02.51-4; then + rm_conffile "/etc/udev/rules.d/65_dmsetup.rules" + fi + if dpkg --compare-versions "$2" lt 2.02.54-1ubuntu1; then + rm_conffile "/etc/udev/rules.d/65-dmsetup.rules" + fi + ;; +esac + +#DEBHELPER# + +exit 0 --- lvm2-2.02.54.orig/debian/lvm2-udeb.install +++ lvm2-2.02.54/debian/lvm2-udeb.install @@ -0,0 +1,4 @@ +etc/lvm/lvm.conf +sbin/lv* +sbin/pv* +sbin/vg* --- lvm2-2.02.54.orig/debian/clvm.NEWS +++ lvm2-2.02.54/debian/clvm.NEWS @@ -0,0 +1,11 @@ +lvm2 (2.02.39-4) unstable; urgency=low + + The cluster locking support is now built as internal support. This + means that the lvm config needs to contain the following to use this + support. + + global { + locking_type = 3 + } + + -- Bastian Blank Fri, 21 Nov 2008 15:58:27 +0100 --- lvm2-2.02.54.orig/debian/dmeventd.install +++ lvm2-2.02.54/debian/dmeventd.install @@ -0,0 +1 @@ +sbin/dmeventd --- lvm2-2.02.54.orig/debian/clvm.init +++ lvm2-2.02.54/debian/clvm.init @@ -0,0 +1,141 @@ +#!/bin/sh +# +### BEGIN INIT INFO +# Provides: clvm +# Required-Start: $remote_fs lvm2 cman +# Required-Stop: $remote_fs lvm2 cman +# Default-Start: S +# Default-Stop: 0 6 +# Short-Description: start and stop the lvm cluster locking daemon +### END INIT INFO +# +# Author: Frederik Schüler +# based on the old clvm init script from etch +# and the clvmd init script from RHEL5 + +PATH=/sbin:/usr/sbin:/bin:/usr/bin +DESC="Cluster LVM Daemon" +NAME=clvm +DAEMON=/sbin/clvmd +SCRIPTNAME=/etc/init.d/clvm + +[ -x $DAEMON ] || exit 0 + +. /lib/init/vars.sh + +. /lib/lsb/init-functions + +if [ ! -f /etc/cluster/cluster.conf ]; then + log_failure_msg "clvmd: cluster not configured. Aborting." + exit 0 +fi + +if ! cman_tool status >/dev/null 2>&1; then + log_failure_msg "clvmd: cluster is not running. Aborting." + exit 0 +fi + +CLVMDTIMEOUT=20 + +# Read configuration variable file if it is present +[ -r /etc/default/$NAME ] && . /etc/default/$NAME + +DAEMON_OPTS="-T$CLVMDTIMEOUT" + +do_start() +{ + start-stop-daemon --start --quiet --exec $DAEMON -- $DAEMON_OPTS || status="$?" + # flush cache + vgscan > /dev/null 2>&1 + return $status +} + +do_activate() +{ + if [ -n "$LVM_VGS" ] ; then + log_action_msg "Activating VGs $LVM_VGS" + vgchange -ayl $LVM_VGS || return $? + else + log_action_msg "Activating all VGs" + vgchange -ayl || return $? + fi +} + +do_deactivate() +{ + if [ -n "$LVM_VGS" ] ; then + vgs="$LVM_VGS" + else + # Hack to only deactivate clustered volumes + vgs=$(vgdisplay -C -o vg_name,vg_attr --noheadings 2> /dev/null | awk '($2 ~ /.....c/) {print $1}') + fi + + [ "$vgs" ] || return 0 + + vgchange -anl $vgs || return $? +} + +do_stop() +{ + start-stop-daemon --stop --quiet --name clvmd + status=$? + return $status +} + +case "$1" in + start) + # start the daemon... + log_daemon_msg "Starting $DESC" "$NAME" + do_start + status=$? + case "$status" in + 0) log_end_msg 0 ;; + 1) log_action_msg " already running" ; log_end_msg 0 ;; + *) log_end_msg 1 ;; + esac + # and activate clustered volume groups + do_activate + status=$? + exit $status + ;; + stop) + # deactivate volumes... + log_daemon_msg "Deactivating VG $vg:" + do_deactivate + status=$? + case "$status" in + 0) log_end_msg 0 ;; + 1) log_end_msg 0 ;; + *) log_end_msg 1 ;; + esac + # and stop the daemon + log_daemon_msg "Stopping $DESC" "$NAME" + do_stop + status=$? + case "$status" in + 0) log_end_msg 0 ; exit 0 ;; + 1) log_end_msg 0 ; exit 0 ;; + *) log_end_msg 1 ; exit $status ;; + esac + ;; + restart|force-reload) + $0 stop + sleep 1 + $0 start + ;; + status) + pid=$( pidof $DAEMON ) + if [ -n "$pid" ] ; then + log_action_msg "$DESC is running" + else + log_action_msg "$DESC is not running" + fi + exit 0 + ;; + *) + echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload|status}" >&2 + exit 1 + ;; +esac + +exit 0 --- lvm2-2.02.54.orig/debian/libdevmapper1.02.1-udeb.install +++ lvm2-2.02.54/debian/libdevmapper1.02.1-udeb.install @@ -0,0 +1 @@ +lib/libdevmapper.so.* --- lvm2-2.02.54.orig/debian/dmsetup.docs +++ lvm2-2.02.54/debian/dmsetup.docs @@ -0,0 +1 @@ +debian/changelog.Debian.devmapper --- lvm2-2.02.54.orig/debian/libdevmapper1.02.1.symbols +++ lvm2-2.02.54/debian/libdevmapper1.02.1.symbols @@ -0,0 +1,164 @@ +libdevmapper.so.1.02.1 libdevmapper1.02.1 #MINVER# + Base@Base 2:1.02.20 + dm_asprintf@Base 2:1.02.20 + dm_basename@Base 2:1.02.20 + dm_bit_get_first@Base 2:1.02.20 + dm_bit_get_next@Base 2:1.02.20 + dm_bit_union@Base 2:1.02.20 + dm_bitset_create@Base 2:1.02.20 + dm_bitset_destroy@Base 2:1.02.20 + dm_bounds_check_debug@Base 2:1.02.20 + dm_cookie_supported@Base 2:1.02.36 + dm_create_dir@Base 2:1.02.24 + dm_dir@Base 2:1.02.20 + dm_driver_version@Base 2:1.02.20 + dm_dump_memory_debug@Base 2:1.02.20 + dm_fclose@Base 2:1.02.24 + dm_format_dev@Base 2:1.02.20 + dm_free_aux@Base 2:1.02.20 + dm_get_library_version@Base 2:1.02.20 + dm_get_next_target@Base 2:1.02.20 + dm_hash_create@Base 2:1.02.20 + dm_hash_destroy@Base 2:1.02.20 + dm_hash_get_data@Base 2:1.02.20 + dm_hash_get_first@Base 2:1.02.20 + dm_hash_get_key@Base 2:1.02.20 + dm_hash_get_next@Base 2:1.02.20 + dm_hash_get_num_entries@Base 2:1.02.20 + dm_hash_insert@Base 2:1.02.20 + dm_hash_insert_binary@Base 2:1.02.20 + dm_hash_iter@Base 2:1.02.20 + dm_hash_lookup@Base 2:1.02.20 + dm_hash_lookup_binary@Base 2:1.02.20 + dm_hash_remove@Base 2:1.02.20 + dm_hash_remove_binary@Base 2:1.02.20 + dm_hash_wipe@Base 2:1.02.20 + dm_is_dm_major@Base 2:1.02.20 + dm_lib_exit@Base 2:1.02.20 + dm_lib_release@Base 2:1.02.20 + dm_list_add@Base 2:1.02.30 + dm_list_add_h@Base 2:1.02.30 + dm_list_del@Base 2:1.02.30 + dm_list_empty@Base 2:1.02.30 + dm_list_end@Base 2:1.02.30 + dm_list_first@Base 2:1.02.30 + dm_list_init@Base 2:1.02.30 + dm_list_last@Base 2:1.02.30 + dm_list_move@Base 2:1.02.30 + dm_list_next@Base 2:1.02.30 + dm_list_prev@Base 2:1.02.30 + dm_list_size@Base 2:1.02.30 + dm_list_start@Base 2:1.02.30 + dm_log@Base 2:1.02.20 + dm_log_init@Base 2:1.02.20 + dm_log_init_verbose@Base 2:1.02.20 + dm_log_is_non_default@Base 2:1.02.36 + dm_log_with_errno@Base 2:1.02.36 + dm_log_with_errno_init@Base 2:1.02.36 + dm_malloc_aux@Base 2:1.02.20 + dm_malloc_aux_debug@Base 2:1.02.20 + dm_mknodes@Base 2:1.02.20 + dm_pool_abandon_object@Base 2:1.02.20 + dm_pool_alloc@Base 2:1.02.20 + dm_pool_alloc_aligned@Base 2:1.02.20 + dm_pool_begin_object@Base 2:1.02.20 + dm_pool_create@Base 2:1.02.20 + dm_pool_destroy@Base 2:1.02.20 + dm_pool_empty@Base 2:1.02.20 + dm_pool_end_object@Base 2:1.02.20 + dm_pool_free@Base 2:1.02.20 + dm_pool_grow_object@Base 2:1.02.20 + dm_pool_strdup@Base 2:1.02.20 + dm_pool_strndup@Base 2:1.02.20 + dm_pool_zalloc@Base 2:1.02.20 + dm_realloc_aux@Base 2:1.02.20 + dm_regex_create@Base 2:1.02.20 + dm_regex_match@Base 2:1.02.20 + dm_report_field_int32@Base 2:1.02.27 + dm_report_field_int@Base 2:1.02.27 + dm_report_field_set_value@Base 2:1.02.27 + dm_report_field_string@Base 2:1.02.27 + dm_report_field_uint32@Base 2:1.02.27 + dm_report_field_uint64@Base 2:1.02.27 + dm_report_free@Base 2:1.02.27 + dm_report_init@Base 2:1.02.27 + dm_report_object@Base 2:1.02.27 + dm_report_output@Base 2:1.02.27 + dm_report_set_output_field_name_prefix@Base 2:1.02.27 + dm_set_dev_dir@Base 2:1.02.20 + dm_set_selinux_context@Base 2:1.02.20 + dm_snprintf@Base 2:1.02.20 + dm_split_lvm_name@Base 2:1.02.20 + dm_split_words@Base 2:1.02.20 + dm_strdup_aux@Base 2:1.02.20 + dm_task_add_target@Base 2:1.02.20 + dm_task_create@Base 2:1.02.20 + dm_task_destroy@Base 2:1.02.20 + dm_task_get_deps@Base 2:1.02.20 + dm_task_get_driver_version@Base 2:1.02.20 + dm_task_get_info@Base 2:1.02.20 + dm_task_get_name@Base 2:1.02.20 + dm_task_get_names@Base 2:1.02.20 + dm_task_get_read_ahead@Base 2:1.02.24 + dm_task_get_uuid@Base 2:1.02.20 + dm_task_get_versions@Base 2:1.02.20 + dm_task_no_flush@Base 2:1.02.20 + dm_task_no_open_count@Base 2:1.02.20 + dm_task_run@Base 2:1.02.20 + dm_task_set_cookie@Base 2:1.02.36 + dm_task_set_event_nr@Base 2:1.02.20 + dm_task_set_geometry@Base 2:1.02.20 + dm_task_set_gid@Base 2:1.02.20 + dm_task_set_major@Base 2:1.02.20 + dm_task_set_major_minor@Base 2:1.02.36 + dm_task_set_message@Base 2:1.02.20 + dm_task_set_minor@Base 2:1.02.20 + dm_task_set_mode@Base 2:1.02.20 + dm_task_set_name@Base 2:1.02.20 + dm_task_set_newname@Base 2:1.02.20 + dm_task_set_read_ahead@Base 2:1.02.24 + dm_task_set_ro@Base 2:1.02.20 + dm_task_set_sector@Base 2:1.02.20 + dm_task_set_uid@Base 2:1.02.20 + dm_task_set_uuid@Base 2:1.02.20 + dm_task_skip_lockfs@Base 2:1.02.20 + dm_task_suppress_identical_reload@Base 2:1.02.20 + dm_task_update_nodes@Base 2:1.02.20 + dm_tree_activate_children@Base 2:1.02.20 + dm_tree_add_dev@Base 2:1.02.20 + dm_tree_add_new_dev@Base 2:1.02.20 + dm_tree_add_new_dev_with_udev_flags@Base 2:1.02.39 + dm_tree_children_use_uuid@Base 2:1.02.20 + dm_tree_create@Base 2:1.02.20 + dm_tree_deactivate_children@Base 2:1.02.20 + dm_tree_find_node@Base 2:1.02.20 + dm_tree_find_node_by_uuid@Base 2:1.02.20 + dm_tree_free@Base 2:1.02.20 + dm_tree_get_cookie@Base 2:1.02.36 + dm_tree_next_child@Base 2:1.02.20 + dm_tree_node_add_crypt_target@Base 2:1.02.36 + dm_tree_node_add_error_target@Base 2:1.02.20 + dm_tree_node_add_linear_target@Base 2:1.02.20 + dm_tree_node_add_mirror_target@Base 2:1.02.20 + dm_tree_node_add_mirror_target_log@Base 2:1.02.20 + dm_tree_node_add_snapshot_origin_target@Base 2:1.02.20 + dm_tree_node_add_snapshot_target@Base 2:1.02.20 + dm_tree_node_add_striped_target@Base 2:1.02.20 + dm_tree_node_add_target_area@Base 2:1.02.20 + dm_tree_node_add_zero_target@Base 2:1.02.20 + dm_tree_node_get_context@Base 2:1.02.20 + dm_tree_node_get_info@Base 2:1.02.20 + dm_tree_node_get_name@Base 2:1.02.20 + dm_tree_node_get_uuid@Base 2:1.02.20 + dm_tree_node_num_children@Base 2:1.02.20 + dm_tree_node_set_read_ahead@Base 2:1.02.24 + dm_tree_node_size_changed@Base 2:1.02.36 + dm_tree_preload_children@Base 2:1.02.20 + dm_tree_set_cookie@Base 2:1.02.36 + dm_tree_skip_lockfs@Base 2:1.02.20 + dm_tree_suspend_children@Base 2:1.02.20 + dm_tree_use_no_flush_suspend@Base 2:1.02.20 + dm_udev_complete@Base 2:1.02.36 + dm_udev_get_sync_support@Base 2:1.02.36 + dm_udev_set_sync_support@Base 2:1.02.36 + dm_udev_wait@Base 2:1.02.36 --- lvm2-2.02.54.orig/debian/patches/series +++ lvm2-2.02.54/debian/patches/series @@ -0,0 +1,15 @@ +install.patch +libs-cleanup.patch +config.patch +force-modprobe.patch +pkgconfig.patch +libdm-atomic.patch +rules-subdir.patch +implicit-pointer.patch +libdm-static.patch +libdm-event-static.patch +scripts-bash.sh +open-readonly.patch +avoid-dev-block.patch +monitoring-default-off.patch +CVE-2010-2526.patch --- lvm2-2.02.54.orig/debian/patches/CVE-2010-2526.patch +++ lvm2-2.02.54/debian/patches/CVE-2010-2526.patch @@ -0,0 +1,149 @@ +Description: fix unprivileged logical volume manipulation with clvmd +Origin: vendor, http://patch-tracker.debian.org/patch/series/view/lvm2/2.02.39-8/CVE-2010-2526.patch +Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=591204 + +diff -Nur lvm2-2.02.54/daemons/clvmd/clvmd.c lvm2-2.02.54.new/daemons/clvmd/clvmd.c +--- lvm2-2.02.54/daemons/clvmd/clvmd.c 2009-10-12 04:33:30.000000000 -0400 ++++ lvm2-2.02.54.new/daemons/clvmd/clvmd.c 2010-09-23 14:09:26.000000000 -0400 +@@ -134,6 +134,7 @@ + static int process_reply(const struct clvm_header *msg, int msglen, + const char *csid); + static int open_local_sock(void); ++static void close_local_sock(int local_socket); + static int check_local_clvmd(void); + static struct local_client *find_client(int clientid); + static void main_loop(int local_sock, int cmd_timeout); +@@ -275,6 +276,23 @@ + return buf; + } + ++/* ++ * clvmd require dm-ioctl capability for operation ++ */ ++static void check_permissions() ++{ ++ if (getuid() || geteuid()) { ++ log_error("Cannot run as a non-root user."); ++ ++ /* ++ * Fail cleanly here if not run as root, instead of failing ++ * later when attempting a root-only operation ++ * Preferred exit code from an initscript for this. ++ */ ++ exit(4); ++ } ++} ++ + int main(int argc, char *argv[]) + { + int local_sock; +@@ -303,6 +321,7 @@ + exit(0); + + case 'R': ++ check_permissions(); + return refresh_clvmd()==1?0:1; + + case 'C': +@@ -348,6 +367,8 @@ + } + } + ++ check_permissions(); ++ + /* Setting debug options on an existing clvmd */ + if (debug_opt && !check_local_clvmd()) { + +@@ -491,6 +512,8 @@ + + destroy_lvm(); + ++ close_local_sock(local_sock); ++ + return 0; + } + +@@ -828,7 +851,6 @@ + + closedown: + clops->cluster_closedown(); +- close(local_sock); + } + + static __attribute__ ((noreturn)) void wait_for_child(int c_pipe, int timeout) +@@ -1920,20 +1942,30 @@ + return ret; + } + ++static void close_local_sock(int local_socket) ++{ ++ if (local_socket != -1 && close(local_socket)) ++ stack; ++ ++ if (CLVMD_SOCKNAME[0] != '\0' && unlink(CLVMD_SOCKNAME)) ++ stack; ++} + + /* Open the local socket, that's the one we talk to libclvm down */ + static int open_local_sock() + { +- int local_socket; ++ int local_socket = -1; + struct sockaddr_un sockaddr; ++ mode_t old_mask; ++ ++ close_local_sock(local_socket); ++ old_mask = umask(0077); + + /* Open local socket */ +- if (CLVMD_SOCKNAME[0] != '\0') +- unlink(CLVMD_SOCKNAME); + local_socket = socket(PF_UNIX, SOCK_STREAM, 0); + if (local_socket < 0) { + log_error("Can't create local socket: %m"); +- return -1; ++ goto error; + } + /* Set Close-on-exec & non-blocking */ + fcntl(local_socket, F_SETFD, 1); +@@ -1944,18 +1976,19 @@ + sockaddr.sun_family = AF_UNIX; + if (bind(local_socket, (struct sockaddr *) &sockaddr, sizeof(sockaddr))) { + log_error("can't bind local socket: %m"); +- close(local_socket); +- return -1; ++ goto error; + } + if (listen(local_socket, 1) != 0) { + log_error("listen local: %m"); +- close(local_socket); +- return -1; ++ goto error; + } +- if (CLVMD_SOCKNAME[0] != '\0') +- chmod(CLVMD_SOCKNAME, 0600); + ++ umask(old_mask); + return local_socket; ++error: ++ close_local_sock(local_socket); ++ umask(old_mask); ++ return -1; + } + + void process_message(struct local_client *client, const char *buf, int len, +diff -Nur lvm2-2.02.54/daemons/clvmd/clvm.h lvm2-2.02.54.new/daemons/clvmd/clvm.h +--- lvm2-2.02.54/daemons/clvmd/clvm.h 2009-05-19 06:38:58.000000000 -0400 ++++ lvm2-2.02.54.new/daemons/clvmd/clvm.h 2010-09-23 14:08:44.000000000 -0400 +@@ -45,9 +45,8 @@ + #define CLVMD_FLAG_SYSTEMLV 2 /* Data in system LV under my node name */ + #define CLVMD_FLAG_NODEERRS 4 /* Reply has errors in node-specific portion */ + +-/* Name of the local socket to communicate between libclvm and clvmd */ +-//static const char CLVMD_SOCKNAME[]="/var/run/clvmd"; +-static const char CLVMD_SOCKNAME[] = "\0clvmd"; ++/* Name of the local socket to communicate between lvm and clvmd */ ++static const char CLVMD_SOCKNAME[]= "/var/run/clvmd.sock"; + + /* Internal commands & replies */ + #define CLVMD_CMD_REPLY 1 --- lvm2-2.02.54.orig/debian/patches/libdm-event-static.patch +++ lvm2-2.02.54/debian/patches/libdm-event-static.patch @@ -0,0 +1,29 @@ +Index: merged/daemons/dmeventd/Makefile.in +=================================================================== +--- merged.orig/daemons/dmeventd/Makefile.in 2010-02-11 03:13:14.297770338 -0800 ++++ merged/daemons/dmeventd/Makefile.in 2010-02-11 03:13:52.074691571 -0800 +@@ -26,12 +26,12 @@ + INSTALL_DMEVENTD_TARGETS = install_dmeventd_dynamic + INSTALL_LIB_TARGETS = install_lib_dynamic + +-ifeq ("@STATIC_LINK@", "yes") + LIB_STATIC = libdevmapper-event.a ++ifeq ("@STATIC_LINK@", "yes") + TARGETS += dmeventd.static + INSTALL_DMEVENTD_TARGETS += install_dmeventd_static +- INSTALL_LIB_TARGETS += install_lib_static + endif ++ INSTALL_LIB_TARGETS += install_lib_static + + LIB_VERSION = $(LIB_VERSION_DM) + +@@ -86,8 +86,7 @@ + $(libdir)/libdevmapper-event.$(LIB_SUFFIX) + + install_lib_static: libdevmapper-event.a +- $(INSTALL) -D $< $(libdir)/libdevmapper-event.a.$(LIB_VERSION) +- $(LN_S) -f libdevmapper-event.a.$(LIB_VERSION) $(libdir)/libdevmapper-event.a ++ $(INSTALL) -D $< $(usrlibdir)/libdevmapper-event.a + + install_lib: $(INSTALL_LIB_TARGETS) + --- lvm2-2.02.54.orig/debian/patches/scripts-bash.sh +++ lvm2-2.02.54/debian/patches/scripts-bash.sh @@ -0,0 +1,8 @@ +--- a/scripts/vgimportclone.sh ++++ b/scripts/vgimportclone.sh +@@ -1,4 +1,4 @@ +-#!/bin/sh ++#!/bin/bash + + # Copyright (C) 2009 Chris Procter All rights reserved. + # Copyright (C) 2009 Red Hat, Inc. All rights reserved. --- lvm2-2.02.54.orig/debian/patches/install.patch +++ lvm2-2.02.54/debian/patches/install.patch @@ -0,0 +1,429 @@ +--- a/tools/Makefile.in ++++ b/tools/Makefile.in +@@ -165,22 +165,17 @@ + endif + + install_cmdlib_dynamic: liblvm2cmd.$(LIB_SUFFIX) +- $(INSTALL) -D $(OWNER) $(GROUP) -m 555 $(STRIP) $< \ +- $(libdir)/liblvm2cmd.$(LIB_SUFFIX).$(LIB_VERSION) ++ $(INSTALL) -D $< $(libdir)/liblvm2cmd.$(LIB_SUFFIX).$(LIB_VERSION) + $(LN_S) -f liblvm2cmd.$(LIB_SUFFIX).$(LIB_VERSION) $(libdir)/liblvm2cmd.$(LIB_SUFFIX) +- $(INSTALL) -D $(OWNER) $(GROUP) -m 444 $(srcdir)/lvm2cmd.h \ +- $(includedir)/lvm2cmd.h ++ $(INSTALL_DATA) -D $(srcdir)/lvm2cmd.h $(includedir)/lvm2cmd.h + + install_cmdlib_static: liblvm2cmd-static.a +- $(INSTALL) -D $(OWNER) $(GROUP) -m 555 $(STRIP) $< \ +- $(libdir)/liblvm2cmd.a.$(LIB_VERSION) ++ $(INSTALL) -D $< $(libdir)/liblvm2cmd.a.$(LIB_VERSION) + $(LN_S) -f liblvm2cmd.a.$(LIB_VERSION) $(libdir)/liblvm2cmd.a +- $(INSTALL) -D $(OWNER) $(GROUP) -m 444 $(srcdir)/lvm2cmd.h \ +- $(includedir)/lvm2cmd.h ++ $(INSTALL) -D $(srcdir)/lvm2cmd.h $(includedir)/lvm2cmd.h + + install_tools_dynamic: lvm .commands +- $(INSTALL) -D $(OWNER) $(GROUP) -m 555 $(STRIP) lvm \ +- $(sbindir)/lvm ++ $(INSTALL) -D lvm $(sbindir)/lvm + @echo Creating symbolic links for individual commands in $(sbindir) + @( \ + for v in `cat $(srcdir)/.commands`; do \ +@@ -190,14 +185,13 @@ + ) + + install_tools_static: lvm.static +- $(INSTALL) -D $(OWNER) $(GROUP) -m 555 $(STRIP) $< \ +- $(staticdir)/lvm.static ++ $(INSTALL) -D $< $(staticdir)/$< + + install_dmsetup_dynamic: dmsetup +- $(INSTALL) -D $(OWNER) $(GROUP) -m 555 $(STRIP) $< $(sbindir)/$< ++ $(INSTALL) -D $< $(sbindir)/$< + + install_dmsetup_static: dmsetup.static +- $(INSTALL) -D $(OWNER) $(GROUP) -m 555 $(STRIP) $< $(sbindir)/$< ++ $(INSTALL) -D $< $(sbindir)/$< + + install_device-mapper: $(INSTALL_DMSETUP_TARGETS) + +--- a/daemons/clvmd/Makefile.in ++++ b/daemons/clvmd/Makefile.in +@@ -98,8 +98,8 @@ + .PHONY: install_clvmd + + install_clvmd: $(TARGETS) +- $(INSTALL) -D $(OWNER) $(GROUP) -m 555 $(STRIP) clvmd \ +- $(usrsbindir)/clvmd ++ $(INSTALL) -D clvmd \ ++ $(sbindir)/clvmd + + install: $(INSTALL_TARGETS) + +--- a/lib/format1/Makefile.in ++++ b/lib/format1/Makefile.in +@@ -32,7 +32,6 @@ + include ../../make.tmpl + + install: liblvm2format1.so +- $(INSTALL) -D $(OWNER) $(GROUP) -m 555 $(STRIP) $< \ +- $(libdir)/liblvm2format1.so.$(LIB_VERSION) ++ $(INSTALL) -D $< $(libdir)/liblvm2format1.so.$(LIB_VERSION) + $(LN_S) -f liblvm2format1.so.$(LIB_VERSION) $(libdir)/liblvm2format1.so + +--- a/lib/format_pool/Makefile.in ++++ b/lib/format_pool/Makefile.in +@@ -29,8 +29,7 @@ + include ../../make.tmpl + + install: liblvm2formatpool.so +- $(INSTALL) -D $(OWNER) $(GROUP) -m 555 $(STRIP) $< \ +- $(libdir)/liblvm2formatpool.so.$(LIB_VERSION) ++ $(INSTALL) -D $< $(libdir)/liblvm2formatpool.so.$(LIB_VERSION) + $(LN_S) -f liblvm2formatpool.so.$(LIB_VERSION) \ + $(libdir)/liblvm2formatpool.so + +--- a/lib/locking/Makefile.in ++++ b/lib/locking/Makefile.in +@@ -25,8 +25,7 @@ + include ../../make.tmpl + + install install_cluster: liblvm2clusterlock.so +- $(INSTALL) -D $(OWNER) $(GROUP) -m 555 $(STRIP) $< \ +- $(libdir)/liblvm2clusterlock.so.$(LIB_VERSION) ++ $(INSTALL) -D $< $(libdir)/liblvm2clusterlock.so.$(LIB_VERSION) + $(LN_S) -f liblvm2clusterlock.so.$(LIB_VERSION) \ + $(libdir)/liblvm2clusterlock.so + +--- a/lib/mirror/Makefile.in ++++ b/lib/mirror/Makefile.in +@@ -25,7 +25,6 @@ + include ../../make.tmpl + + install: liblvm2mirror.so +- $(INSTALL) -D $(OWNER) $(GROUP) -m 555 $(STRIP) $< \ +- $(libdir)/liblvm2mirror.so.$(LIB_VERSION) ++ $(INSTALL) -D $< $(libdir)/liblvm2mirror.so.$(LIB_VERSION) + $(LN_S) -f liblvm2mirror.so.$(LIB_VERSION) $(libdir)/liblvm2mirror.so + +--- a/lib/snapshot/Makefile.in ++++ b/lib/snapshot/Makefile.in +@@ -25,8 +25,7 @@ + include ../../make.tmpl + + install: liblvm2snapshot.so +- $(INSTALL) -D $(OWNER) $(GROUP) -m 555 $(STRIP) $< \ +- $(libdir)/liblvm2snapshot.so.$(LIB_VERSION) ++ $(INSTALL) -D $< $(libdir)/liblvm2snapshot.so.$(LIB_VERSION) + $(LN_S) -f liblvm2snapshot.so.$(LIB_VERSION) \ + $(libdir)/liblvm2snapshot.so + +--- a/man/Makefile.in ++++ b/man/Makefile.in +@@ -63,14 +63,14 @@ + @for f in $(MAN8); \ + do \ + $(RM) $(MAN8DIR)/$$f; \ +- @INSTALL@ -D $(OWNER) $(GROUP) -m 444 $$f $(MAN8DIR)/$$f; \ ++ $(INSTALL_DATA) -D $$f $(MAN8DIR)/$$f; \ + done + + @echo "Installing $(MAN5) in $(MAN5DIR)" + @for f in $(MAN5); \ + do \ + $(RM) $(MAN5DIR)/$$f; \ +- @INSTALL@ -D $(OWNER) $(GROUP) -m 444 $$f $(MAN5DIR)/$$f; \ ++ $(INSTALL_DATA) -D $$f $(MAN5DIR)/$$f; \ + done + + install_cluster: +@@ -78,7 +78,7 @@ + @for f in $(MAN8CLUSTER); \ + do \ + $(RM) $(MAN8DIR)/$$f; \ +- @INSTALL@ -D $(OWNER) $(GROUP) -m 444 $$f $(MAN8DIR)/$$f; \ ++ $(INSTALL_DATA) -D $$f $(MAN8DIR)/$$f; \ + done + + install_device-mapper: +@@ -86,7 +86,7 @@ + @for f in $(MAN8DM); \ + do \ + $(RM) $(MAN8DIR)/$$f; \ +- @INSTALL@ -D $(OWNER) $(GROUP) -m 444 $$f $(MAN8DIR)/$$f; \ ++ $(INSTALL_DATA) -D $$f $(MAN8DIR)/$$f; \ + done + + install: install_lvm2 install_device-mapper +--- a/libdm/Makefile.in ++++ b/libdm/Makefile.in +@@ -73,7 +69,7 @@ + install_device-mapper: install + + install_include: +- $(INSTALL) -D $(OWNER) $(GROUP) -m 444 $(srcdir)/libdevmapper.h \ ++ $(INSTALL_DATA) -D $(srcdir)/libdevmapper.h \ + $(includedir)/libdevmapper.h + + install_dynamic: install_@interface@ +@@ -81,19 +77,16 @@ + $(libdir)/libdevmapper.$(LIB_SUFFIX) + + install_static: install_@interface@_static +- $(LN_S) -f libdevmapper.a.$(LIB_VERSION_DM) $(libdir)/libdevmapper.a + + install_ioctl: ioctl/libdevmapper.$(LIB_SUFFIX) +- $(INSTALL) -D $(OWNER) $(GROUP) -m 555 $(STRIP) $< \ +- $(libdir)/libdevmapper.$(LIB_SUFFIX).$(LIB_VERSION_DM) ++ $(INSTALL) -D $< $(libdir)/libdevmapper.$(LIB_SUFFIX).$(LIB_VERSION_DM) + + install_pkgconfig: +- $(INSTALL) -D $(OWNER) $(GROUP) -m 444 libdevmapper.pc \ ++ $(INSTALL_DATA) -D libdevmapper.pc \ + $(usrlibdir)/pkgconfig/devmapper.pc + + install_ioctl_static: ioctl/libdevmapper.a +- $(INSTALL) -D $(OWNER) $(GROUP) -m 555 $(STRIP) $< \ +- $(libdir)/libdevmapper.a.$(LIB_VERSION_DM) ++ $(INSTALL) -D $< $(usrlibdir)/libdevmapper.a + + $(VERSIONED_SHLIB): %.$(LIB_SUFFIX).$(LIB_VERSION_DM): $(interface)/%.$(LIB_SUFFIX) + rm -f $@ +--- a/daemons/dmeventd/Makefile.in ++++ b/daemons/dmeventd/Makefile.in +@@ -73,31 +73,29 @@ + endif + + install_include: +- $(INSTALL) -D $(OWNER) $(GROUP) -m 444 $(srcdir)/libdevmapper-event.h \ ++ $(INSTALL_DATA) $(srcdir)/libdevmapper-event.h \ + $(includedir)/libdevmapper-event.h + + install_pkgconfig: +- $(INSTALL) -D $(OWNER) $(GROUP) -m 444 libdevmapper-event.pc \ ++ $(INSTALL_DATA) libdevmapper-event.pc \ + $(usrlibdir)/pkgconfig/devmapper-event.pc + + install_lib_dynamic: libdevmapper-event.$(LIB_SUFFIX) +- $(INSTALL) -D $(OWNER) $(GROUP) -m 555 $(STRIP) $< \ +- $(libdir)/libdevmapper-event.$(LIB_SUFFIX).$(LIB_VERSION) ++ $(INSTALL) -D $< $(libdir)/libdevmapper-event.$(LIB_SUFFIX).$(LIB_VERSION) + $(LN_S) -f libdevmapper-event.$(LIB_SUFFIX).$(LIB_VERSION) \ + $(libdir)/libdevmapper-event.$(LIB_SUFFIX) + + install_lib_static: libdevmapper-event.a +- $(INSTALL) -D $(OWNER) $(GROUP) -m 555 $(STRIP) $< \ +- $(libdir)/libdevmapper-event.a.$(LIB_VERSION) ++ $(INSTALL) -D $< $(libdir)/libdevmapper-event.a.$(LIB_VERSION) + $(LN_S) -f libdevmapper-event.a.$(LIB_VERSION) $(libdir)/libdevmapper-event.a + + install_lib: $(INSTALL_LIB_TARGETS) + + install_dmeventd_dynamic: dmeventd +- $(INSTALL) -D $(OWNER) $(GROUP) -m 555 $(STRIP) $< $(sbindir)/$< ++ $(INSTALL) -D $< $(sbindir)/$< + + install_dmeventd_static: dmeventd.static +- $(INSTALL) -D $(OWNER) $(GROUP) -m 555 $(STRIP) $< $(sbindir)/$< ++ $(INSTALL) -D $< $(sbindir)/$< + + install_dmeventd: $(INSTALL_DMEVENTD_TARGETS) + +--- a/daemons/dmeventd/plugins/mirror/Makefile.in ++++ b/daemons/dmeventd/plugins/mirror/Makefile.in +@@ -35,7 +35,7 @@ + LIBS += -ldevmapper @LIB_PTHREAD@ @LVM2CMD_LIB@ + + install_lvm2: libdevmapper-event-lvm2mirror.$(LIB_SUFFIX) +- $(INSTALL) -D $(OWNER) $(GROUP) -m 555 $(STRIP) $< \ ++ $(INSTALL) -D $< \ + $(libdir)/$<.$(LIB_VERSION) + $(LN_S) -f $<.$(LIB_VERSION) $(libdir)/$< + +--- a/daemons/dmeventd/plugins/snapshot/Makefile.in ++++ b/daemons/dmeventd/plugins/snapshot/Makefile.in +@@ -35,7 +35,7 @@ + LIBS += -ldevmapper @LIB_PTHREAD@ @LVM2CMD_LIB@ + + install_lvm2: libdevmapper-event-lvm2snapshot.$(LIB_SUFFIX) +- $(INSTALL) -D $(OWNER) $(GROUP) -m 555 $(STRIP) $< \ ++ $(INSTALL) -D $< \ + $(libdir)/$<.$(LIB_VERSION) + $(LN_S) -f $<.$(LIB_VERSION) $(libdir)/$< + +--- a/doc/Makefile.in ++++ b/doc/Makefile.in +@@ -24,7 +24,7 @@ + install_lvm2: $(CONFSRC) + @if [ ! -e $(confdir)/$(CONFDEST) ]; then \ + echo "Installing $(CONFSRC) as $(confdir)/$(CONFDEST)"; \ +- @INSTALL@ -D $(OWNER) $(GROUP) -m 644 $< \ ++ $(INSTALL_DATA) -D $< \ + $(confdir)/$(CONFDEST); \ + fi + +--- a/make.tmpl.in ++++ b/make.tmpl.in +@@ -21,6 +21,7 @@ + RANLIB = @RANLIB@ + SHELL = /bin/sh + INSTALL = @INSTALL@ ++INSTALL_DATA = @INSTALL@ -m 644 + MKDIR_P = @MKDIR_P@ + MSGFMT = @MSGFMT@ + LCOV = @LCOV@ +@@ -56,11 +57,6 @@ + interface = @interface@ + interfacedir = $(top_srcdir)/libdm/$(interface) + +-# setup misc variables +-# define the ownership variables for the binaries and man pages +-OWNER = @OWNER@ +-GROUP = @GROUP@ +- + # The number of jobs to run, if blank, defaults to the make standard + ifndef MAKEFLAGS + MAKEFLAGS = @JOBS@ +--- a/scripts/Makefile.in ++++ b/scripts/Makefile.in +@@ -19,13 +19,10 @@ + include ../make.tmpl + + install: +- $(INSTALL) -D $(OWNER) $(GROUP) -m 555 $(srcdir)/lvm_dump.sh \ +- $(sbindir)/lvmdump +- $(INSTALL) -D $(OWNER) $(GROUP) -m 555 $(srcdir)/vgimportclone.sh \ +- $(sbindir)/vgimportclone ++ $(INSTALL) -D $(srcdir)/lvm_dump.sh $(sbindir)/lvmdump ++ $(INSTALL) -D $(srcdir)/vgimportclone.sh $(sbindir)/vgimportclone + ifeq ("@FSADM@", "yes") +- $(INSTALL) -D $(OWNER) $(GROUP) -m 555 $(srcdir)/fsadm.sh \ +- $(sbindir)/fsadm ++ $(INSTALL) -D $(srcdir)/fsadm.sh $(sbindir)/fsadm + endif + + install_lvm2: install +--- a/po/Makefile.in ++++ b/po/Makefile.in +@@ -54,13 +54,13 @@ + @echo Installing translation files in $(localedir) + @( \ + for lang in $(LANGS); do \ +- $(INSTALL) -D $(OWNER) $(GROUP) -m 444 $$lang.mo \ ++ $(INSTALL_DATA) -D $$lang.mo \ + $(localedir)/$$lang/LC_MESSAGES/lvm2.mo;\ + done; \ + ) + @( \ + for lang in $(LANGS); do \ +- $(INSTALL) -D $(OWNER) $(GROUP) -m 444 $$lang.mo \ ++ $(INSTALL_DATA) -D $$lang.mo \ + $(localedir)/$$lang/LC_MESSAGES/device-mapper.mo;\ + done; \ + ) +--- a/liblvm/Makefile.in ++++ b/liblvm/Makefile.in +@@ -67,22 +67,19 @@ + install: $(INSTALL_TYPE) install_include + + install_include: +- $(INSTALL) -D $(OWNER) $(GROUP) -m 444 $(srcdir)/lvm2app.h $(includedir)/lvm2app.h ++ $(INSTALL_DATA) -D $(srcdir)/lvm2app.h $(includedir)/lvm2app.h + + install_dynamic: $(LIB_SHARED) +- $(INSTALL) -D $(OWNER) $(GROUP) -m 555 $(STRIP) $< \ +- $(libdir)/$(LIB_SHARED).$(LIB_VERSION_APP) ++ $(INSTALL) -D $< $(libdir)/$(LIB_SHARED).$(LIB_VERSION_APP) + $(LN_S) -f $(LIB_SHARED).$(LIB_VERSION_APP) \ + $(libdir)/$(LIB_SHARED) + + install_static: $(LIB_STATIC) +- $(INSTALL) -D $(OWNER) $(GROUP) -m 555 $(STRIP) $< \ +- $(libdir)/$(LIB_STATIC).$(LIB_VERSION_APP) ++ $(INSTALL) -D $< $(libdir)/$(LIB_STATIC).$(LIB_VERSION_APP) + $(LN_S) -f $(LIB_STATIC).$(LIB_VERSION_APP) $(libdir)/$(LIB_STATIC) + + install_pkgconfig: +- $(INSTALL) -D $(OWNER) $(GROUP) -m 444 $(LIB_NAME).pc \ +- $(usrlibdir)/pkgconfig/lvm2app.pc ++ $(INSTALL_DATA) -D $(LIB_NAME).pc $(usrlibdir)/pkgconfig/lvm2app.pc + + liblvm.cflow: $(SOURCES) + set -e; (echo -n "SOURCES += "; \ +--- a/daemons/cmirrord/Makefile.in ++++ b/daemons/cmirrord/Makefile.in +@@ -36,5 +36,4 @@ + $(LVMLIBS) $(LMLIBS) $(LIBS) + + install: $(TARGETS) +- $(INSTALL) -D $(OWNER) $(GROUP) -m 555 $(STRIP) cmirrord \ +- $(usrsbindir)/cmirrord ++ $(INSTALL) -D cmirrord $(usrsbindir)/cmirrord +--- a/udev/Makefile.in ++++ b/udev/Makefile.in +@@ -32,7 +32,7 @@ + @for f in $(LVM_RULES); \ + do \ + $(RM) $(udevdir)/$$f; \ +- $(INSTALL) -c -D $(OWNER) $(GROUP) -m 644 $(srcdir)/$$f $(udevdir)/$$f; \ ++ $(INSTALL_DATA) -c -D $(srcdir)/$$f $(udevdir)/$$f; \ + done + + install_device-mapper: $(DM_RULES) +@@ -40,7 +40,7 @@ + @for f in $(DM_RULES); \ + do \ + $(RM) $(udevdir)/$$f; \ +- $(INSTALL) -c -D $(OWNER) $(GROUP) -m 644 $(srcdir)/$$f $(udevdir)/$$f; \ ++ $(INSTALL_DATA) -c -D $(srcdir)/$$f $(udevdir)/$$f; \ + done + + install: install_lvm2 install_device-mapper +--- a/configure.in ++++ b/configure.in +@@ -144,28 +144,25 @@ + ################################################################################ + dnl -- Setup the ownership of the files + AC_MSG_CHECKING(file owner) +-OWNER="" +- + AC_ARG_WITH(user, + [ --with-user=USER Set the owner of installed files [[USER=]] ], + [ OWNER="$withval" ]) + AC_MSG_RESULT($OWNER) + + if test x$OWNER != x; then +- OWNER="-o $OWNER" ++ INSTALL="$INSTALL -o $OWNER" + fi + + ################################################################################ + dnl -- Setup the group ownership of the files + AC_MSG_CHECKING(group owner) +-GROUP="" + AC_ARG_WITH(group, + [ --with-group=GROUP Set the group owner of installed files [[GROUP=]] ], + [ GROUP="$withval" ]) + AC_MSG_RESULT($GROUP) + + if test x$GROUP != x; then +- GROUP="-g $GROUP" ++ INSTALL="$INSTALL -g $GROUP" + fi + + ################################################################################ +@@ -1092,7 +1089,6 @@ + AC_SUBST(DM_LIB_VERSION) + AC_SUBST(DM_LIB_PATCHLEVEL) + AC_SUBST(FSADM) +-AC_SUBST(GROUP) + AC_SUBST(GULM_CFLAGS) + AC_SUBST(GULM_LIBS) + AC_SUBST(HAVE_LIBDL) +@@ -1116,7 +1112,6 @@ + AC_SUBST(LVM_RELEASE_DATE) + AC_SUBST(MIRRORS) + AC_SUBST(MSGFMT) +-AC_SUBST(OWNER) + AC_SUBST(PKGCONFIG) + AC_SUBST(POOL) + AC_SUBST(QUORUM_CFLAGS) --- lvm2-2.02.54.orig/debian/patches/monitoring-default-off.patch +++ lvm2-2.02.54/debian/patches/monitoring-default-off.patch @@ -0,0 +1,17 @@ +Description: default to not monitoring so that regular LVM operation does not + require dmeventd running. +Author: Kees Cook + +Index: merged/lib/config/defaults.h +=================================================================== +--- merged.orig/lib/config/defaults.h 2010-02-11 15:56:50.551735761 -0800 ++++ merged/lib/config/defaults.h 2010-02-11 15:57:12.971034511 -0800 +@@ -48,7 +48,7 @@ + #define DEFAULT_MIRROR_LOG_FAULT_POLICY "allocate" + #define DEFAULT_MIRROR_DEV_FAULT_POLICY "remove" + #define DEFAULT_DMEVENTD_MIRROR_LIB "libdevmapper-event-lvm2mirror.so" +-#define DEFAULT_DMEVENTD_MONITOR 1 ++#define DEFAULT_DMEVENTD_MONITOR -1 + + #define DEFAULT_UMASK 0077 + --- lvm2-2.02.54.orig/debian/patches/force-modprobe.patch +++ lvm2-2.02.54/debian/patches/force-modprobe.patch @@ -0,0 +1,15 @@ +--- a/configure.in ++++ b/configure.in +@@ -946,11 +946,7 @@ + fi + + ################################################################################ +-AC_PATH_PROG(MODPROBE_CMD, modprobe) +- +-if test x$MODPROBE_CMD != x; then +- AC_DEFINE_UNQUOTED([MODPROBE_CMD], ["$MODPROBE_CMD"], [The path to 'modprobe', if available.]) +-fi ++AC_DEFINE_UNQUOTED([MODPROBE_CMD], ["/sbin/modprobe"], [The path to 'modprobe', if available.]) + + ################################################################################ + dnl -- dmeventd pidfile and executable path --- lvm2-2.02.54.orig/debian/patches/pkgconfig.patch +++ lvm2-2.02.54/debian/patches/pkgconfig.patch @@ -0,0 +1,8 @@ +--- a/libdm/libdevmapper.pc.in ++++ b/libdm/libdevmapper.pc.in +@@ -8,4 +8,4 @@ + Version: @DM_LIB_PATCHLEVEL@ + Cflags: -I${includedir} + Libs: -L${libdir} -ldevmapper +-Libs.private: @SELINUX_LIBS@ ++Requires.private: libselinux --- lvm2-2.02.54.orig/debian/patches/libdm-static.patch +++ lvm2-2.02.54/debian/patches/libdm-static.patch @@ -0,0 +1,25 @@ +--- a/libdm/Makefile.in ++++ b/libdm/Makefile.in +@@ -35,9 +35,7 @@ + + INCLUDES = -I$(srcdir)/$(interface) -I$(srcdir) + +-ifeq ("@STATIC_LINK@", "yes") + LIB_STATIC = $(interface)/libdevmapper.a +-endif + + ifeq ("@LIB_SUFFIX@","dylib") + LIB_SHARED = $(interface)/libdevmapper.dylib +@@ -60,11 +58,7 @@ + install_ioctl install_ioctl_static \ + install_pkgconfig + +-INSTALL_TYPE = install_dynamic +- +-ifeq ("@STATIC_LINK@", "yes") +- INSTALL_TYPE += install_static +-endif ++INSTALL_TYPE = install_dynamic install_static + + ifeq ("@PKGCONFIG@", "yes") + INSTALL_TYPE += install_pkgconfig --- lvm2-2.02.54.orig/debian/patches/libdm-atomic.patch +++ lvm2-2.02.54/debian/patches/libdm-atomic.patch @@ -0,0 +1,64 @@ +--- a/libdm/libdm-common.c ++++ b/libdm/libdm-common.c +@@ -404,12 +404,19 @@ + static int _add_dev_node(const char *dev_name, uint32_t major, uint32_t minor, + uid_t uid, gid_t gid, mode_t mode, int check_udev) + { +- char path[PATH_MAX]; ++ char path[PATH_MAX], tmppath[PATH_MAX]; + struct stat info; + dev_t dev = MKDEV(major, minor); + mode_t old_mask; + + _build_dev_path(path, sizeof(path), dev_name); ++ _build_dev_path(tmppath, sizeof(tmppath), ".XXXXXX"); ++ ++ mktemp(tmppath); ++ if (strlen(tmppath) == 0) { ++ log_error("Unable to create name of temporary file"); ++ return 0; ++ } + + if (stat(path, &info) >= 0) { + if (!S_ISBLK(info.st_mode)) { +@@ -432,24 +439,33 @@ + "node creation.", path); + + old_mask = umask(0); +- if (mknod(path, S_IFBLK | mode, dev) < 0) { ++ if (mknod(tmppath, S_IFBLK | mode, dev) < 0) { + umask(old_mask); + log_error("Unable to make device node for '%s'", dev_name); +- return 0; ++ goto error; + } + umask(old_mask); + +- if (chown(path, uid, gid) < 0) { ++ if (chown(tmppath, uid, gid) < 0) { + log_sys_error("chown", path); +- return 0; ++ goto error; + } + +- log_debug("Created %s", path); ++ if (!dm_set_selinux_context(tmppath, S_IFBLK)) ++ goto error; + +- if (!dm_set_selinux_context(path, S_IFBLK)) +- return 0; ++ if (rename(tmppath, path) < 0) { ++ log_error("Unable to replace device node for '%s'", dev_name); ++ goto error; ++ } ++ ++ log_debug("Created %s", path); + + return 1; ++ ++error: ++ unlink(tmppath); ++ return 0; + } + + static int _rm_dev_node(const char *dev_name, int check_udev) --- lvm2-2.02.54.orig/debian/patches/avoid-dev-block.patch +++ lvm2-2.02.54/debian/patches/avoid-dev-block.patch @@ -0,0 +1,31 @@ +Description: Prefer any other device name over names in /dev/block/. +Author: Colin Watson +Bug-Ubuntu: https://bugs.launchpad.net/bugs/341928 +Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=569290 + +Index: merged/lib/device/dev-cache.c +=================================================================== +--- merged.orig/lib/device/dev-cache.c 2009-07-15 13:02:46.000000000 -0700 ++++ merged/lib/device/dev-cache.c 2010-02-10 15:57:40.175269708 -0800 +@@ -179,6 +179,21 @@ + * Built-in rules. + */ + ++ /* Put /dev/block/ names last regardless of path shortness. ++ * FIXME It would be better if we could do this in the configuration ++ * file, but the only way to do so with preferred_names is to try to ++ * enumerate all the possible names we might want to prefer over ++ * /dev/block/. */ ++ m0 = strncmp(path0, "/dev/block/", 11); ++ m1 = strncmp(path1, "/dev/block/", 11); ++ ++ if (m0 != m1) { ++ if (m0 == 0) ++ return 1; ++ if (m1 == 0) ++ return 0; ++ } ++ + /* Return the path with fewer slashes */ + for (p = path0; p++; p = (const char *) strchr(p, '/')) + slash0++; --- lvm2-2.02.54.orig/debian/patches/config.patch +++ lvm2-2.02.54/debian/patches/config.patch @@ -0,0 +1,11 @@ +--- a/doc/example.conf ++++ b/doc/example.conf +@@ -312,7 +312,7 @@ + # Full pathnames can be given. + + # Search this directory first for shared libraries. +- # library_dir = "/lib" ++ # library_dir = "/lib/lvm2" + + # The external locking library to load if locking_type is set to 2. + # locking_library = "liblvm2clusterlock.so" --- lvm2-2.02.54.orig/debian/patches/rules-subdir.patch +++ lvm2-2.02.54/debian/patches/rules-subdir.patch @@ -0,0 +1,183 @@ +Index: merged/make.tmpl.in +=================================================================== +--- merged.orig/make.tmpl.in 2010-02-11 02:39:16.724020797 -0800 ++++ merged/make.tmpl.in 2010-02-11 02:39:16.794019477 -0800 +@@ -128,65 +128,27 @@ + + .PHONY: all install install_cluster pofile distclean clean cflow device-mapper + .PHONY: install_device-mapper install_lvm2 +-.PHONY: $(SUBDIRS) $(SUBDIRS.install) $(SUBDIRS.clean) $(SUBDIRS.distclean) +-.PHONY: $(SUBDIRS.pofile) $(SUBDIRS.install_cluster) $(SUBDIRS.cflow) +-.PHONY: $(SUBDIRS.device-mapper) $(SUBDIRS.install-device-mapper) +- +-SUBDIRS.device-mapper := $(SUBDIRS:=.device-mapper) +-SUBDIRS.install := $(SUBDIRS:=.install) +-SUBDIRS.install_cluster := $(SUBDIRS:=.install_cluster) +-SUBDIRS.install_device-mapper := $(SUBDIRS:=.install_device-mapper) +-SUBDIRS.install_lvm2 := $(SUBDIRS:=.install_lvm2) +-SUBDIRS.pofile := $(SUBDIRS:=.pofile) +-SUBDIRS.cflow := $(SUBDIRS:=.cflow) +-SUBDIRS.clean := $(SUBDIRS:=.clean) +-SUBDIRS.distclean := $(SUBDIRS:=.distclean) + + TARGETS += $(LIB_SHARED) $(LIB_STATIC) $(VERSIONED_SHLIB) + +-all: $(SUBDIRS) $(TARGETS) ++all: subdirs-all $(TARGETS) + +-install: all $(SUBDIRS.install) +-install_cluster: all $(SUBDIRS.install_cluster) +-install_device-mapper: $(SUBDIRS.install_device-mapper) +-install_lvm2: $(SUBDIRS.install_lvm2) +- +-$(SUBDIRS): $(SUBDIRS.device-mapper) +- $(MAKE) -C $@ +- +-$(SUBDIRS.device-mapper): +- $(MAKE) -C $(@:.device-mapper=) device-mapper +- +-$(SUBDIRS.install): $(SUBDIRS) +- $(MAKE) -C $(@:.install=) install +- +-$(SUBDIRS.install_cluster): $(SUBDIRS) +- $(MAKE) -C $(@:.install_cluster=) install_cluster +- +-$(SUBDIRS.install_device-mapper): device-mapper +- $(MAKE) -C $(@:.install_device-mapper=) install_device-mapper +- +-$(SUBDIRS.install_lvm2): $(SUBDIRS) +- $(MAKE) -C $(@:.install_lvm2=) install_lvm2 +- +-$(SUBDIRS.clean): +- -$(MAKE) -C $(@:.clean=) clean +- +-$(SUBDIRS.distclean): +- -$(MAKE) -C $(@:.distclean=) distclean ++install: subdirs-install ++install_cluster: subdirs-install_cluster ++install_device-mapper: subdirs-install_device-mapper ++install_lvm2: subdirs-install_lvm2 ++ ++subdirs-%: ++ +@set -e; for subdir in $(SUBDIRS); do \ ++ $(MAKE) -C $$subdir $(patsubst subdirs-%,%,$@); \ ++ done + + ifeq ("@INTL@", "yes") +-pofile: $(SUBDIRS.pofile) $(POTFILES) +- +-$(SUBDIRS.pofile): +- $(MAKE) -C $(@:.pofile=) pofile ++pofile: subdirs-pofile $(POTFILES) + endif + + ifneq ("@CFLOW_CMD@", "") +-cflow: $(SUBDIRS.cflow) +- +-$(SUBDIRS.cflow): +- $(MAKE) -C $(@:.cflow=) cflow ++cflow: subdirs-cflow + endif + + $(TARGETS): $(OBJECTS) +@@ -234,12 +196,12 @@ + %.mo: %.po + $(MSGFMT) -o $@ $< + +-clean: $(SUBDIRS.clean) ++clean: subdirs-clean + $(RM) $(OBJECTS) $(TARGETS) $(CLEAN_TARGETS) $(SOURCES:%.c=%.d) \ + $(SOURCES2:%.c=%.d) $(SOURCES:%.c=%.pot) $(SOURCES:%.c=%.gcno) \ + $(SOURCES:%.c=%.gcda) $(LDDEPS) + +-distclean: $(SUBDIRS.distclean) ++distclean: subdir-distclean + $(RM) -rf $(DISTCLEAN_DIRS) + $(RM) $(DISTCLEAN_TARGETS) \ + $(OBJECTS) $(TARGETS) $(CLEAN_TARGETS) $(SOURCES:%.c=%.d) \ +Index: merged/Makefile.in +=================================================================== +--- merged.orig/Makefile.in 2010-02-11 02:37:57.465269848 -0800 ++++ merged/Makefile.in 2010-02-11 02:39:16.794019477 -0800 +@@ -27,7 +27,7 @@ + SUBDIRS += po + endif + +-SUBDIRS += lib tools daemons libdm ++SUBDIRS += libdm lib daemons tools + + ifeq ("@APPLIB@", "yes") + SUBDIRS += liblvm +@@ -54,31 +54,6 @@ + + include make.tmpl + +-libdm: include +-lib: libdm +-liblvm: lib +-daemons: lib tools +-tools: lib device-mapper +-po: tools daemons +- +-libdm.device-mapper: include.device-mapper +-daemons.device-mapper: libdm.device-mapper +-tools.device-mapper: libdm.device-mapper +-device-mapper: tools.device-mapper daemons.device-mapper man.device-mapper +- +-ifeq ("@INTL@", "yes") +-lib.pofile: include.pofile +-tools.pofile: lib.pofile +-daemons.pofile: lib.pofile +-po.pofile: tools.pofile daemons.pofile +-pofile: po.pofile +-endif +- +-ifneq ("@CFLOW_CMD@", "") +-tools.cflow: lib.cflow +-cflow: tools.cflow +-endif +- + ifneq ("@CSCOPE_CMD@", "") + cscope.out: tools + @CSCOPE_CMD@ -b -R +Index: merged/man/Makefile.in +=================================================================== +--- merged.orig/man/Makefile.in 2010-02-11 02:39:16.694020715 -0800 ++++ merged/man/Makefile.in 2010-02-11 02:39:16.794019477 -0800 +@@ -49,9 +49,7 @@ + + .PHONY: man + +-device-mapper: $(MAN8DM) +- +-man: $(MAN5) $(MAN8) $(MAN8CLUSTER) ++man: $(MAN5) $(MAN8) $(MAN8CLUSTER) $(MAN8DM) + + $(MAN5) $(MAN8) $(MAN8CLUSTER): Makefile + +Index: merged/daemons/Makefile.in +=================================================================== +--- merged.orig/daemons/Makefile.in 2010-02-11 02:37:57.485269638 -0800 ++++ merged/daemons/Makefile.in 2010-02-11 02:42:19.164019853 -0800 +@@ -18,9 +18,7 @@ + + .PHONY: dmeventd clvmd cmirrord + +-ifneq ("@CLVMD@", "none") +- SUBDIRS = clvmd +-endif ++SUBDIRS = + + ifeq ("@BUILD_CMIRRORD@", "yes") + SUBDIRS += cmirrord +@@ -30,6 +28,10 @@ + SUBDIRS += dmeventd + endif + ++ifneq ("@CLVMD@", "none") ++ SUBDIRS += clvmd ++endif ++ + include ../make.tmpl + + ifeq ("@BUILD_DMEVENTD@", "yes") --- lvm2-2.02.54.orig/debian/patches/libs-cleanup.patch +++ lvm2-2.02.54/debian/patches/libs-cleanup.patch @@ -0,0 +1,202 @@ +--- a/configure.in ++++ b/configure.in +@@ -34,7 +34,6 @@ + CLDWHOLEARCHIVE="-Wl,-whole-archive" + CLDNOWHOLEARCHIVE="-Wl,-no-whole-archive" + LDDEPS="$LDDEPS .export.sym" +- LDFLAGS="$LDFLAGS -Wl,--export-dynamic" + LIB_SUFFIX=so + DEVMAPPER=yes + ODIRECT=yes +@@ -783,24 +782,6 @@ + fi; + + ################################################################################ +-dnl -- Check for termcap (Shamelessly copied from parted 1.4.17) +-if test x$READLINE != xno; then +- AC_SEARCH_LIBS([tgetent], [tinfo ncurses curses termcap termlib], +- [tg_found=yes], [tg_found=no]) +- test x$READLINE:$tg_found = xyes:no && +- AC_MSG_ERROR( +-termcap could not be found which is required for the +---enable-readline option (which is enabled by default). Either disable readline +-support with --disable-readline or download and install termcap from: +- ftp.gnu.org/gnu/termcap +-Note: if you are using precompiled packages you will also need the development +- package as well (which may be called termcap-devel or something similar). +-Note: (n)curses also seems to work as a substitute for termcap. This was +- not found either - but you could try installing that as well. +-) +-fi +- +-################################################################################ + dnl -- Check for dlopen + AC_CHECK_LIB(dl, dlopen, HAVE_LIBDL=yes, HAVE_LIBDL=no) + +@@ -831,35 +812,9 @@ + ################################################################################ + dnl -- Check for selinux + if test x$SELINUX = xyes; then +- AC_CHECK_LIB(sepol, sepol_check_context, HAVE_SEPOL=yes, HAVE_SEPOL=no) +- +- if test x$HAVE_SEPOL = xyes; then +- AC_DEFINE([HAVE_SEPOL], 1, +- [Define to 1 if sepol_check_context is available.]) +- SELINUX_LIBS="-lsepol $SELINUX_LIBS" +- fi +- +- AC_CHECK_LIB(selinux, is_selinux_enabled, HAVE_SELINUX=yes, HAVE_SELINUX=no) +- +- if test x$HAVE_SELINUX = xyes; then +- AC_DEFINE([HAVE_SELINUX], 1, [Define to 1 to include support for selinux.]) +- SELINUX_LIBS="-lselinux $SELINUX_LIBS" +- else +- AC_MSG_WARN(Disabling selinux) +- fi +- LIBS="$SELINUX_LIBS $LIBS" +- +- # With --enable-static_link and selinux enabled, linking +- # fails on at least Debian unstable due to unsatisfied references +- # to pthread_mutex_lock and _unlock. See if we need -lpthread. +- if test "$STATIC_LINK-$HAVE_SELINUX" = yes-yes; then +- lvm_saved_libs=$LIBS +- LIBS="$LIBS -static" +- AC_SEARCH_LIBS([pthread_mutex_lock], [pthread], +- [test "$ac_cv_search_pthread_mutex_lock" = "none required" || +- LIB_PTHREAD=-lpthread]) +- LIBS=$lvm_saved_libs +- fi ++ AC_DEFINE([HAVE_SELINUX], 1, [Define to 1 to include support for selinux.]) ++ LIBS_SELINUX="$(pkg-config --libs libselinux)" ++ LIBS_SELINUX_STATIC="$(pkg-config --libs --static libselinux)" + fi + + ################################################################################ +@@ -883,7 +838,7 @@ + dnl -- Check for readline (Shamelessly copied from parted 1.4.17) + if test x$READLINE != xno; then + rl_found=yes +- AC_CHECK_LIB([readline], [readline], , [rl_found=no]) ++ AC_CHECK_LIB([readline], [readline], [LIBS_READLINE="-lreadline $LIBS_READLINE"], [rl_found=no]) + test x$READLINE:$rl_found = xyes:no && + AC_MSG_ERROR( + GNU Readline could not be found which is required for the +@@ -1099,6 +1054,9 @@ + AC_SUBST(JOBS) + AC_SUBST(LDDEPS) + AC_SUBST(LIBS) ++AC_SUBST(LIBS_READLINE) ++AC_SUBST(LIBS_SELINUX) ++AC_SUBST(LIBS_SELINUX_STATIC) + AC_SUBST(LIB_SUFFIX) + AC_SUBST(LOCALEDIR) + AC_SUBST(LVM1) +@@ -1125,7 +1083,6 @@ + AC_SUBST(STATICDIR) + AC_SUBST(STATIC_LINK) + AC_SUBST(UDEV_RULES) +-AC_SUBST([LIB_PTHREAD]) + AC_SUBST(interface) + AC_SUBST(kerneldir) + AC_SUBST(missingkernel) +--- a/tools/Makefile.in ++++ b/tools/Makefile.in +@@ -17,8 +17,6 @@ + top_builddir = @top_builddir@ + VPATH = @srcdir@ + +-LIB_PTHREAD = @LIB_PTHREAD@ +- + SOURCES =\ + dumpconfig.c \ + formats.c \ +@@ -105,6 +103,9 @@ + + LVMLIBS += -ldevmapper + ++LDFLAGS_DMSETUP_STATIC = @LIBS_SELINUX_STATIC@ ++LDFLAGS_LVM = @LIBS_READLINE@ ++ + DEFS += -DLVM_SHARED_PATH=\"$(exec_prefix)/sbin/lvm\" + + include ../make.tmpl +@@ -113,22 +114,21 @@ + + dmsetup: dmsetup.o $(top_builddir)/libdm/libdevmapper.$(LIB_SUFFIX) + $(CC) $(CFLAGS) $(LDFLAGS) -L$(top_builddir)/libdm \ +- -o $@ dmsetup.o -ldevmapper $(LIBS) $(LIB_PTHREAD) ++ -o $@ dmsetup.o -ldevmapper $(LIBS) + + dmsetup.static: dmsetup.o $(interfacedir)/libdevmapper.a + $(CC) $(CFLAGS) $(LDFLAGS) -static -L$(interfacedir) \ +- -o $@ dmsetup.o -ldevmapper $(LIBS) $(LIB_PTHREAD) ++ -o $@ dmsetup.o -ldevmapper $(LIBS) $(LDFLAGS_DMSETUP_STATIC) + + all: device-mapper + + lvm: $(OBJECTS) lvm.o $(top_builddir)/lib/liblvm-internal.a + $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(OBJECTS) lvm.o \ +- $(LVMLIBS) $(LIBS) $(LIB_PTHREAD) -rdynamic ++ $(LVMLIBS) $(LIBS) $(LDFLAGS_LVM) + + lvm.static: $(OBJECTS) lvm-static.o $(top_builddir)/lib/liblvm-internal.a $(interfacedir)/libdevmapper.a + $(CC) $(CFLAGS) $(LDFLAGS) -static -L$(interfacedir) -o $@ \ +- $(OBJECTS) lvm-static.o $(LVMLIBS) $(LIBS) $(LIB_PTHREAD) \ +- -rdynamic ++ $(OBJECTS) lvm-static.o $(LVMLIBS) $(LIBS) $(LDFLAGS_LVM) + + liblvm2cmd.a: $(top_builddir)/lib/liblvm-internal.a $(OBJECTS) lvmcmdlib.o lvm2cmd.o + cat $(top_builddir)/lib/liblvm-internal.a > $@ +--- a/daemons/dmeventd/Makefile.in ++++ b/daemons/dmeventd/Makefile.in +@@ -62,11 +62,11 @@ + + dmeventd: $(LIB_SHARED) $(VERSIONED_SHLIB) dmeventd.o + $(CC) $(CFLAGS) $(LDFLAGS) -L. -o $@ dmeventd.o \ +- $(LVMLIBS) $(LIBS) -rdynamic ++ $(LVMLIBS) $(LIBS) + + dmeventd.static: $(LIB_STATIC) dmeventd.o $(interfacedir)/libdevmapper.a + $(CC) $(CFLAGS) $(LDFLAGS) -static -L. -L$(interfacedir) -o $@ \ +- dmeventd.o $(LVMLIBS) $(LIBS) -rdynamic ++ dmeventd.o $(LVMLIBS) $(LIBS) + + ifeq ("@PKGCONFIG@", "yes") + INSTALL_LIB_TARGETS += install_pkgconfig +--- a/libdm/Makefile.in ++++ b/libdm/Makefile.in +@@ -47,6 +47,8 @@ + VERSIONED_SHLIB = libdevmapper.$(LIB_SUFFIX).$(LIB_VERSION_DM) + LIB_VERSION = $(LIB_VERSION_DM) + ++LDFLAGS += @LIBS_SELINUX@ ++ + DEFS += -DDM_DEVICE_UID=@DM_DEVICE_UID@ -DDM_DEVICE_GID=@DM_DEVICE_GID@ \ + -DDM_DEVICE_MODE=@DM_DEVICE_MODE@ + +--- a/make.tmpl.in ++++ b/make.tmpl.in +@@ -101,7 +101,6 @@ + #DEFS += -DBOUNDS_CHECK + + #CFLAGS += -pg +-#LDFLAGS += -pg + + STRIP= + #STRIP = -s +@@ -205,13 +204,13 @@ + ifeq ("@LIB_SUFFIX@","so") + $(LIB_SHARED): $(OBJECTS) $(LDDEPS) + $(CC) -shared -Wl,-soname,$(notdir $@).$(LIB_VERSION) \ +- $(CFLAGS) $(CLDFLAGS) $(OBJECTS) $(LIBS) -o $@ ++ $(CFLAGS) $(LDFLAGS) $(CLDFLAGS) $(OBJECTS) -o $@ + endif + + ifeq ("@LIB_SUFFIX@","dylib") + $(LIB_SHARED): $(OBJECTS) $(LDDEPS) + $(CC) -dynamiclib -dylib_current_version,$(LIB_VERSION) \ +- $(CFLAGS) $(CLDFLAGS) $(OBJECTS) $(LIBS) -o $@ ++ $(CFLAGS) $(LDFLAGS) $(CLDFLAGS) $(OBJECTS) -o $@ + endif + + %.so: %.a --- lvm2-2.02.54.orig/debian/patches/open-readonly.patch +++ lvm2-2.02.54/debian/patches/open-readonly.patch @@ -0,0 +1,121 @@ +Description: Generally we don't need to write to every single block device we + open, in fact if we do that when scanning we'll make udev think they all + changed, and it could run "lvm vgscan" again! When the file descriptor + is needed for writing, it will be closed and opened again. +Author: Scott James Remnant +Bug-Ubuntu: https://bugs.launchpad.net/bugs/332270 + +Index: merged/lib/device/dev-md.c +=================================================================== +--- merged.orig/lib/device/dev-md.c 2009-08-19 08:34:43.000000000 -0700 ++++ merged/lib/device/dev-md.c 2010-02-10 15:54:15.186520283 -0800 +@@ -94,7 +94,7 @@ + if (size < MD_RESERVED_SECTORS * 2) + return 0; + +- if (!dev_open(dev)) { ++ if (!dev_open_flags(dev, O_RDONLY, 1, 0)) { + stack; + return -1; + } +Index: merged/lib/device/device.c +=================================================================== +--- merged.orig/lib/device/device.c 2009-08-01 10:14:52.000000000 -0700 ++++ merged/lib/device/device.c 2010-02-10 15:54:15.186520283 -0800 +@@ -62,7 +62,7 @@ + uint16_t *part_magic; + struct partition *part; + +- if (!dev_open(dev)) { ++ if (!dev_open_flags(dev, O_RDONLY, 1, 0)) { + stack; + return -1; + } +Index: merged/lib/format1/disk-rep.c +=================================================================== +--- merged.orig/lib/format1/disk-rep.c 2009-07-15 13:02:46.000000000 -0700 ++++ merged/lib/format1/disk-rep.c 2010-02-10 15:54:15.186520283 -0800 +@@ -415,7 +415,7 @@ + { + struct disk_list *dl; + +- if (!dev_open(dev)) ++ if (!dev_open_flags(dev, O_RDONLY, 1, 0)) + return_NULL; + + dl = __read_disk(fmt, dev, mem, vg_name); +Index: merged/lib/format_pool/disk_rep.c +=================================================================== +--- merged.orig/lib/format_pool/disk_rep.c 2008-11-04 07:07:44.000000000 -0800 ++++ merged/lib/format_pool/disk_rep.c 2010-02-10 15:54:15.186520283 -0800 +@@ -349,7 +349,7 @@ + { + struct pool_list *pl; + +- if (!dev_open(dev)) ++ if (!dev_open_flags(dev, O_RDONLY, 1, 0)) + return_NULL; + + if (!(pl = dm_pool_zalloc(mem, sizeof(*pl)))) { +Index: merged/lib/format_text/format-text.c +=================================================================== +--- merged.orig/lib/format_text/format-text.c 2009-08-01 10:07:37.000000000 -0700 ++++ merged/lib/format_text/format-text.c 2010-02-10 15:54:15.186520283 -0800 +@@ -165,7 +165,7 @@ + PRIu64, mdac->area.start, mdac->area.size); + area = &mdac->area; + +- if (!dev_open(area->dev)) ++ if (!dev_open_flags(area->dev, O_RDONLY, 1, 0)) + return_0; + + if (!(mdah = _raw_read_mda_header(fmt, area))) +@@ -424,7 +424,7 @@ + int noprecommit = 0; + struct mda_header *mdah; + +- if (!dev_open(dev_area->dev)) ++ if (!dev_open_flags(dev_area->dev, O_RDONLY, 1, 0)) + return_0; + + if (!(mdah = _raw_read_mda_header(fid->fmt, dev_area))) +@@ -451,7 +451,7 @@ + char *desc; + uint32_t wrap = 0; + +- if (!dev_open(area->dev)) ++ if (!dev_open_flags(area->dev, O_RDONLY, 1, 0)) + return_NULL; + + if (!(mdah = _raw_read_mda_header(fid->fmt, area))) +@@ -1052,7 +1052,7 @@ + if (mda_free_sectors) + *mda_free_sectors = ((dev_area->size - MDA_HEADER_SIZE) / 2) >> SECTOR_SHIFT; + +- if (!dev_open(dev_area->dev)) ++ if (!dev_open_flags(dev_area->dev, O_RDONLY, 1, 0)) + return_NULL; + + if (!(mdah = _raw_read_mda_header(fmt, dev_area))) +Index: merged/lib/label/label.c +=================================================================== +--- merged.orig/lib/label/label.c 2009-07-15 13:02:47.000000000 -0700 ++++ merged/lib/label/label.c 2010-02-10 15:54:15.196520340 -0800 +@@ -272,7 +272,7 @@ + return 1; + } + +- if (!dev_open(dev)) { ++ if (!dev_open_flags(dev, O_RDONLY, 1, 0)) { + stack; + + if ((info = info_from_pvid(dev->pvid, 0))) +@@ -352,7 +352,7 @@ + struct lvmcache_info *info; + int r = 0; + +- if (!dev_open(dev)) { ++ if (!dev_open_flags(dev, O_RDONLY, 1, 0)) { + if ((info = info_from_pvid(dev->pvid, 0))) + lvmcache_update_vgname_and_id(info, info->fmt->orphan_vg_name, + info->fmt->orphan_vg_name, --- lvm2-2.02.54.orig/debian/patches/implicit-pointer.patch +++ lvm2-2.02.54/debian/patches/implicit-pointer.patch @@ -0,0 +1,12 @@ +--- a/tools/lvm.c ++++ b/tools/lvm.c +@@ -25,9 +25,6 @@ + + # include + # include +-# ifndef HAVE_RL_COMPLETION_MATCHES +-# define rl_completion_matches(a, b) completion_matches((char *)a, b) +-# endif + + static struct cmdline_context *_cmdline; + --- lvm2-2.02.54.orig/debian/tree/lvm2/lib/udev/rules.d/56-lvm.rules +++ lvm2-2.02.54/debian/tree/lvm2/lib/udev/rules.d/56-lvm.rules @@ -0,0 +1,14 @@ +# Udev rules for LVM. +# See /usr/share/doc/lvm2/README.udev for further information. + +ENV{DM_UDEV_RULES}=="", GOTO="lvm_end" +ENV{DM_UUID}!="LVM-?*", GOTO="lvm_end" + +# Use DM name and split it up into its VG/LV/layer constituents. +IMPORT{program}="/sbin/dmsetup splitname --nameprefixes --noheadings --rows $env{DM_NAME}" + +# Do not create symlinks for hidden subdevices. +ENV{DM_LV_NAME}=="?*_mimage_[0-9]*|pvmove?*|?*_vorigin|?*_mlog", ENV{DM_UDEV_DISABLE_DISK_RULES_FLAG}="1" +ENV{DM_LV_LAYER}=="?*", ENV{DM_UDEV_DISABLE_DISK_RULES_FLAG}="1" + +LABEL="lvm_end" --- lvm2-2.02.54.orig/debian/tree/lvm2/lib/udev/rules.d/60-persistent-storage-lvm.rules +++ lvm2-2.02.54/debian/tree/lvm2/lib/udev/rules.d/60-persistent-storage-lvm.rules @@ -0,0 +1,11 @@ +# Udev rules for LVM. +# See /usr/share/doc/lvm2/README.udev for further information. + +ENV{DM_UDEV_RULES}=="", GOTO="persistent_storage_lvm_end" +ENV{DM_UUID}!="LVM-?*", GOTO="persistent_storage_lvm_end" +ENV{DM_UDEV_DISABLE_SUBSYSTEM_RULES_FLAG}!="", GOTO="persistent_storage_lvm_end" +ENV{DM_UDEV_DISABLE_DISK_RULES_FLAG}!="", GOTO="persistent_storage_lvm_end" + +ENV{DM_VG_NAME}=="?*", ENV{DM_LV_NAME}=="?*", ENV{DM_LV_LAYER}=="", SYMLINK+="$env{DM_VG_NAME}/$env{DM_LV_NAME}" + +LABEL="persistent_storage_lvm_end" --- lvm2-2.02.54.orig/debian/tree/lvm2/lib/udev/rules.d/85-lvm2.rules +++ lvm2-2.02.54/debian/tree/lvm2/lib/udev/rules.d/85-lvm2.rules @@ -0,0 +1,6 @@ +# This file causes block devices with LVM signatures to be automatically +# added to their volume group. +# See udev(8) for syntax + +SUBSYSTEM=="block", ACTION=="add|change", ENV{ID_FS_TYPE}=="lvm*|LVM*", \ + RUN+="watershed sh -c '/sbin/lvm vgscan; /sbin/lvm vgchange -a y'" --- lvm2-2.02.54.orig/debian/tree/lvm2/usr/share/initramfs-tools/hooks/lvm2 +++ lvm2-2.02.54/debian/tree/lvm2/usr/share/initramfs-tools/hooks/lvm2 @@ -0,0 +1,43 @@ +#!/bin/sh + +PREREQ="udev" + +prereqs() +{ + echo "$PREREQ" +} + +case $1 in +prereqs) + prereqs + exit 0 + ;; +esac + +if [ ! -x /sbin/lvm ]; then + exit 0 +fi + +. /usr/share/initramfs-tools/hook-functions + +if [ -e /etc/lvm/lvm.conf ]; then + mkdir -p ${DESTDIR}/etc/lvm + cp /etc/lvm/lvm.conf ${DESTDIR}/etc/lvm/ +fi + +mkdir -p $DESTDIR/lib/udev/rules.d/ +for rules in 56-lvm.rules 60-persistent-storage-lvm.rules 85-lvm2.rules; do + if [ -e /etc/udev/rules.d/$rules ]; then + cp -p /etc/udev/rules.d/$rules $DESTDIR/lib/udev/rules.d/ + elif [ -e /lib/udev/rules.d/$rules ]; then + cp -p /lib/udev/rules.d/$rules $DESTDIR/lib/udev/rules.d/ + fi +done + +copy_exec /sbin/dmsetup +copy_exec /sbin/lvm +ln -s lvm ${DESTDIR}/sbin/vgchange + +for x in dm_mod dm_snapshot dm_mirror; do + manual_add_modules ${x} +done --- lvm2-2.02.54.orig/debian/tree/lvm2/usr/share/initramfs-tools/scripts/init-premount/lvm2 +++ lvm2-2.02.54/debian/tree/lvm2/usr/share/initramfs-tools/scripts/init-premount/lvm2 @@ -0,0 +1,41 @@ +#!/bin/sh + +# init-premount script for lvm2. + +PREREQS="udev mdadm" +prereqs() +{ + echo $PREREQS +} + +mountroot_fail() +{ + if ! /sbin/lvm vgscan >/dev/null 2>&1 ; then + cat <= 2.6.31 only. +ENV{DM_COOKIE}=="?*", IMPORT{program}="/sbin/dmsetup udevflags $env{DM_COOKIE}" + +ACTION!="add|change", GOTO="dm_end" + +# Normally, we operate on "change" events only. But when +# coldplugging, there's an "add" event present. We have to +# recognize this and do our actions in this particular +# situation, too. Also, we don't want the nodes to be +# created prematurely on "add" events while not coldplugging. + +# What idiot thought this was a good idea? +#ACTION=="add", ENV{STARTUP}!="1", NAME="", GOTO="dm_end" + +# "dm" sysfs subdirectory is available in newer versions of DM +# only (kernels >= 2.6.29). We have to check for its existence +# and use dmsetup tool instead to get the DM name, uuid and +# suspended state if the "dm" subdirectory is not present. +# The "suspended" item was added even later (kernels >= 2.6.31), +# so we also have to call dmsetup if the kernel version used +# is in between these releases. +TEST=="dm", ENV{DM_NAME}="$attr{dm/name}", ENV{DM_UUID}="$attr{dm/uuid}", ENV{DM_SUSPENDED}="$attr{dm/suspended}" +TEST!="dm", IMPORT{program}="/sbin/dmsetup info -j %M -m %m -c --nameprefixes --noheadings --rows -o name,uuid,suspended" +ENV{DM_SUSPENDED}!="?*", IMPORT{program}="/sbin/dmsetup info -j %M -m %m -c --nameprefixes --noheadings --rows -o suspended" + +# dmsetup tool provides suspended state information in textual +# form with values "Suspended"/"Active". We translate it to +# 0/1 respectively to be consistent with sysfs values. +ENV{DM_SUSPENDED}=="Active", ENV{DM_SUSPENDED}="0" +ENV{DM_SUSPENDED}=="Suspended", ENV{DM_SUSPENDED}="1" + +ENV{DM_NAME}=="?*", SYMLINK+="mapper/$env{DM_NAME}" + +ENV{DM_UDEV_RULES}="1" + +# We have to ignore further rule application for inappropriate events +# and devices. But still send the notification if cookie exists. +ENV{DM_UUID}=="mpath-?*", ENV{DM_ACTION}=="PATH_FAILED", ENV{DM_UDEV_DISABLE_OTHER_RULES_FLAG}="1" +ENV{DM_UUID}=="CRYPT-TEMP-?*", ENV{DM_UDEV_DISABLE_OTHER_RULES_FLAG}="1" +ENV{DM_UUID}!="?*", ENV{DM_NAME}=="temporary-cryptsetup-?*", ENV{DM_UDEV_DISABLE_OTHER_RULES_FLAG}="1" + +ENV{DM_SUSPENDED}=="1", ENV{DM_UDEV_DISABLE_DISK_RULES_FLAG}="1" + +ENV{DM_UDEV_DISABLE_OTHER_RULES_FLAG}!="", ENV{DM_UDEV_DISABLE_DISK_RULES_FLAG}="1" + +LABEL="dm_end" --- lvm2-2.02.54.orig/debian/tree/dmsetup/usr/share/initramfs-tools/hooks/dmsetup +++ lvm2-2.02.54/debian/tree/dmsetup/usr/share/initramfs-tools/hooks/dmsetup @@ -0,0 +1,23 @@ +#!/bin/sh + +case $1 in +prereqs) + echo "udev" + exit 0 + ;; +esac + +. /usr/share/initramfs-tools/hook-functions + +mkdir -p $DESTDIR/lib/udev/rules.d/ +for rules in 55-dm.rules 60-persistent-storage-dm.rules; do + if [ -e /etc/udev/rules.d/$rules ]; then + cp -p /etc/udev/rules.d/$rules $DESTDIR/lib/udev/rules.d/ + elif [ -e /lib/udev/rules.d/$rules ]; then + cp -p /lib/udev/rules.d/$rules $DESTDIR/lib/udev/rules.d/ + fi +done + +copy_exec /sbin/dmsetup + +manual_add_modules dm_mod --- lvm2-2.02.54.orig/debian/tree/dmsetup/usr/share/doc/dmsetup/README.udev +++ lvm2-2.02.54/debian/tree/dmsetup/usr/share/doc/dmsetup/README.udev @@ -0,0 +1,19 @@ +The udev rules included into dmsetup are responsible for setting up the devices +in /dev/mapper and also provides some environment variables for use by later +rules: + +* DM_NAME + Actual DM device's name +* DM_UUID + UUID set for DM device (blank if not specified) +* DM_SUSPENDED + Suspended state of DM device (0 or 1) + +Some other variables can be set to change the behaviour: + +* DM_HIDE + Set to 1 to not even try to extract filesystem information and set links in + /dev/disk according to that information. + +Other device mapper using packages may define there own rules. For example lvm2, +see /usr/share/doc/lvm2/README.udev for further informations. --- lvm2-2.02.54.orig/debian/tree/dmsetup/usr/share/doc/dmsetup/examples/udev-dm-permissions.rules +++ lvm2-2.02.54/debian/tree/dmsetup/usr/share/doc/dmsetup/examples/udev-dm-permissions.rules @@ -0,0 +1,47 @@ +# Example udev rules for permissions of device-mapper devices. +# For information about available variables, see +# /usr/share/doc/dmsetup/README.udev. + +# PLAIN DM DEVICES +# +# Set permissions for a DM device named 'my_device' exactly +# ENV{DM_NAME}=="my_device", OWNER="root", GROUP="root", MODE="660" + +# Set permissions for all DM devices having 'MY_UUID-' UUID prefix +# ENV{DM_UUID}=="MY_UUID-?*", OWNER="root", GROUP="root", MODE="660" + + +# LVM DEVICES +# +# Set permissions for all LVM devices +# ENV{DM_UUID}=="LVM-?*", OWNER="root", GROUP="root", MODE="660" + +# Set permissions for all devices that belong to one LVM VG +# ENV{DM_VG_NAME}=="VolGroup00", OWNER="root", GROUP="root", MODE="660" + +# Set permissions for an LVM device with VG named VolGroup00 and LV named LogVol00 exactly +# ENV{DM_VG_NAME}=="VolGroup00", ENV{DM_LV_NAME}=="LogVol00", OWNER="root", GROUP="root", MODE="660" + +# Set permissions for all LVM devices that does not belong to a VG named VolGroup00 +# ENV{DM_VG_NAME}!="VolGroup00", OWNER="root", GROUP="root", MODE="660" + + +# ENCRYPTED DEVICES (using cryptsetup >= 1.1) +# +# Set permissions for all encrypted devices created by cryptsetup (plain devices) +# ENV{DM_UUID}=="CRYPT-PLAIN-?*", OWNER="root", GROUP="root", MODE="660" + +# Set permissions for all encrypted devices created by cryptsetup (LUKS extension) +# ENV{DM_UUID}=="CRYPT-LUKS1-?*", OWNER="root", GROUP="root", MODE="660" + +# Set permissions for an encrypted device created by cryptsetup and having an exact luks UUID +# ENV{DM_UUID}=="CRYPT-LUKS1-22fce5c8313c43c68d84b50a3b0fee78-?*", OWNER="root", GROUP="root", MODE="660" + + +# MULTIPATH DEVICES +# +# Set permissions for all multipath devices +# ENV{DM_UUID}=="mpath-?*", OWNER="root", GROUP="root", MODE="660" + +# Set permissions for first two partitions created on a multipath device (and detected by kpartx) +# ENV{DM_UUID}=="part[1-2]-mpath-?*", OWNER="root", GROUP="root", MODE="660" --- lvm2-2.02.54.orig/debian/bin/genorig.py +++ lvm2-2.02.54/debian/bin/genorig.py @@ -0,0 +1,116 @@ +#!/usr/bin/env python + +import os, os.path, re, shutil, sys + +class Changelog(list): + _rules = r""" +^ +(?P + \w[-+0-9a-z.]+ +) +\ +\( +(?P + [^\(\)\ \t]+ +) +\) +\s+ +(?P + [-+0-9a-zA-Z.]+ +) +\; +""" + _re = re.compile(_rules, re.X) + + class Entry(object): + __slot__ = 'distribution', 'source', 'version' + + def __init__(self, distribution, source, version): + self.distribution, self.source, self.version = distribution, source, version + + def __init__(self, dir): + f = file(os.path.join(dir, "debian/changelog")) + while True: + line = f.readline() + if not line: + break + match = self._re.match(line) + if not match: + continue + self.append(self.Entry(match.group('distribution'), match.group('source'), match.group('version'))) + +class GenOrig(object): + log = sys.stdout.write + + def __init__(self, root, orig, input_tar, version): + self.orig, self.input_tar, self.version = orig, input_tar, version + + changelog = Changelog(root) + self.source = changelog[0].source + + def __call__(self): + import tempfile + self.dir = tempfile.mkdtemp(prefix = 'genorig', dir = 'debian') + try: + self.orig_dir = "%s-%s" % (self.source, self.version) + self.orig_tar = "%s_%s.orig.tar.gz" % (self.source, self.version) + + self.do_upstream() + self.do_orig() + finally: + shutil.rmtree(self.dir) + + def do_upstream(self): + self.log("Extracting tarball %s\n" % self.input_tar) + match = re.match(r'(^|.*/)(?P[^/]+)\.(t|tar\.)(?P(gz|bz2))$', self.input_tar) + if not match: + raise RuntimeError("Can't identify name of tarball") + cmdline = ['tar -xf', self.input_tar, '-C', self.dir] + extension = match.group('extension') + if extension == 'bz2': + cmdline.append('-j') + elif extension == 'gz': + cmdline.append('-z') + if os.spawnv(os.P_WAIT, '/bin/sh', ['sh', '-c', ' '.join(cmdline)]): + raise RuntimeError("Can't extract tarball") + os.rename(os.path.join(self.dir, match.group('dir')), os.path.join(self.dir, self.orig_dir)) + + def do_orig(self): + self.log("Generating tarball %s\n" % self.orig_tar) + out = os.path.join(self.orig, self.orig_tar) + + try: + os.mkdir(self.orig) + except OSError: pass + try: + os.stat(out) + except OSError: pass + else: + raise RuntimeError("Destination already exists (%s)" % out) + + cmdline = ['tar -czf', out, '-C', self.dir, self.orig_dir] + try: + if os.spawnv(os.P_WAIT, '/bin/sh', ['sh', '-c', ' '.join(cmdline)]): + raise RuntimeError("Can't patch source") + os.chmod(out, 0644) + except: + try: + os.unlink(out) + except OSError: + pass + raise + +if __name__ == '__main__': + from optparse import OptionParser + p = OptionParser(usage = "%prog TAR VERSION") + options, args = p.parse_args(sys.argv) + + if len(args) < 2: + raise RuntimeError("Need more arguments") + + root = os.path.realpath(os.path.join(sys.path[0], '..', '..')) + orig = os.path.realpath(os.path.join(root, '..', 'orig')) + input_tar = args[1] + version = args[2] + + GenOrig(root, orig, input_tar, version)()