Package: evms Version: 2.5.5-20 Severity: normal Tags: patch,upstream Hi there,
starting somewhere between 2.6.18 and 2.6.19 making snapshots stopped working. The device mapper complains like this: device-mapper: table: 254:52: snapshot: requires exactly 4 arguments EVMS passes one argument more than expected. Apparently the evms patch that actually supported the argument never made it into device mapper. Before 2.6.19 it was ignored, so I assume it's save to just drop it. Attached a patch does that. Juergen PS: also posted upstream ([EMAIL PROTECTED], but awaiting moderator approval). -- Package-specific info: -- System Information: Debian Release: lenny/sid APT prefers unstable APT policy: (500, 'unstable') Architecture: amd64 (x86_64) Shell: /bin/sh linked to /bin/bash Kernel: Linux 2.6.20.5 Locale: LANG=C, [EMAIL PROTECTED] (charmap=ISO-8859-15) Versions of packages evms depends on: ii libc6 2.3.6.ds1-13 GNU C Library: Shared libraries ii libevms-2.5 2.5.5-13 Enterprise Volume Management Syste ii lsb-base 3.1-23.1 Linux Standard Base 3.1 init scrip Versions of packages evms recommends: ii evms-cli 2.5.5-20 Enterprise Volume Management Syste ii evms-ncurses 2.5.5-20 Enterprise Volume Management Syste -- no debconf information
--- engine/dm-targets.c.orig 2007-04-10 21:35:29.651723176 +0200 +++ engine/dm-targets.c 2007-04-10 21:35:59.293412360 +0200 @@ -921,14 +921,14 @@ * * Generate an ASCII constructor string for a snapshot target. * A snapshot string has the form: - * <org_major>:<org_minor> <snap_major>:<snap_minor> <p|n> <chunk_size> <org_parent_major>:<org_parent_minor> + * <org_major>:<org_minor> <snap_major>:<snap_minor> <p|n> <chunk_size> **/ static int snapshot_build_params(dm_target_t *target) { dm_target_snapshot_t *snapshot = target->data.snapshot; char *format = (dm_get_version() == 3) ? - "%x:%x %x:%x %c %u %x:%x" : - "%u:%u %u:%u %c %u %u:%u"; + "%x:%x %x:%x %c %u" : + "%u:%u %u:%u %c %u"; int rc = ENOMEM; LOG_PROC_ENTRY(); @@ -938,9 +938,7 @@ snprintf(target->params, 50, format, snapshot->origin.major, snapshot->origin.minor, snapshot->snapshot.major, snapshot->snapshot.minor, - (snapshot->persistent) ? 'p' : 'n', snapshot->chunk_size, - snapshot->origin_parent.major, - snapshot->origin_parent.minor); + (snapshot->persistent) ? 'p' : 'n', snapshot->chunk_size); rc = 0; }