From mboxrd@z Thu Jan 1 00:00:00 1970 From: Takahiro Yasui Date: Fri, 25 Sep 2009 18:15:54 -0400 Subject: [PATCH] update dmeventd plugins to use proper lvm2_log_fn_t In-Reply-To: <20090917020623.GA7271@redhat.com> References: <20090917020623.GA7271@redhat.com> Message-ID: <4ABD411A.9070701@redhat.com> List-Id: To: lvm-devel@redhat.com MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Hi Mike, I built the latest lvm2 but the following error messages were displayed. dmeventd_mirror.c: In function 'register_device': dmeventd_mirror.c:256: warning: passing argument 1 of 'lvm2_log_fn' from incompatible pointer type ... dmeventd_snapshot.c: In function 'register_device': dmeventd_snapshot.c:170: warning: passing argument 1 of 'lvm2_log_fn' from incompatible pointer type The prototype definition in lvm2cmd.h also needs to be updated. Thanks, Taka -- Takahiro Yasui Hitachi Computer Products (America), Inc. Signed-off-by: Takahiro Yasui --- tools/lvm2cmd.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) Index: LVM2.02.53-20090925/tools/lvm2cmd.h =================================================================== --- LVM2.02.53-20090925.orig/tools/lvm2cmd.h +++ LVM2.02.53-20090925/tools/lvm2cmd.h @@ -18,7 +18,7 @@ #ifndef _LVM_LOG_H typedef void (*lvm2_log_fn_t) (int level, const char *file, int line, - const char *message); + int dm_errno, const char *message); #endif #define LVM2_LOG_SUPPRESS 0 Mike Snitzer wrote: > The dmeventd plugins provide their own _temporary_log_fn. But they were > not updated when lvm2_log_fn_t was last updated, see: > http://sources.redhat.com/git/?p=lvm2.git;a=commit;h=0ed40c04c > > I verified this patch fixes a SEGV seen in the dmeventd snapshot plugin: > > # lvs > LV VG Attr LSize Origin Snap% Move Log Copy% Convert > testlv test owi-a- 300.00M > testlv_snap test swi-ao 52.00M testlv 92.68 > # vgchange --monitor y test > 2 logical volume(s) in volume group "test" monitored > > and messages file shows: > > Sep 16 21:15:05 really-raw dmeventd[12522]: dmeventd ready for processing. > Sep 16 21:15:11 really-raw lvm[12522]: Monitoring snapshot test-testlv_snap > Sep 16 21:15:15 really-raw lvm[12522]: Snapshot test-testlv_snap is now 92% full. > > Signed-off-by: Mike Snitzer > > --- > diff --git a/daemons/dmeventd/plugins/mirror/dmeventd_mirror.c b/daemons/dmeventd/plugins/mirror/dmeventd_mirror.c > index 8869e80..503ec0d 100644 > --- a/daemons/dmeventd/plugins/mirror/dmeventd_mirror.c > +++ b/daemons/dmeventd/plugins/mirror/dmeventd_mirror.c > @@ -126,8 +126,10 @@ out_parse: > return ME_IGNORE; > } > > -static void _temporary_log_fn(int level, const char *file __attribute((unused)), > +static void _temporary_log_fn(int level, > + const char *file __attribute((unused)), > int line __attribute((unused)), > + int dm_errno __attribute((unused)), > const char *format) > { > if (!strncmp(format, "WARNING: ", 9) && (level < 5)) > diff --git a/daemons/dmeventd/plugins/snapshot/dmeventd_snapshot.c b/daemons/dmeventd/plugins/snapshot/dmeventd_snapshot.c > index 3e250af..96c4688 100644 > --- a/daemons/dmeventd/plugins/snapshot/dmeventd_snapshot.c > +++ b/daemons/dmeventd/plugins/snapshot/dmeventd_snapshot.c > @@ -57,6 +57,7 @@ static pthread_mutex_t _event_mutex = PTHREAD_MUTEX_INITIALIZER; > static void _temporary_log_fn(int level, > const char *file __attribute((unused)), > int line __attribute((unused)), > + int dm_errno __attribute((unused)), > const char *format) > { > if (!strncmp(format, "WARNING: ", 9) && (level < 5)) > > -- > lvm-devel mailing list > lvm-devel at redhat.com > https://www.redhat.com/mailman/listinfo/lvm-devel