lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <87df2da43513408f96da2185be680cd3@SN2PR03MB061.namprd03.prod.outlook.com>
Date:	Tue, 26 Mar 2013 18:25:35 +0000
From:	KY Srinivasan <kys@...rosoft.com>
To:	Paolo Bonzini <pbonzini@...hat.com>
CC:	"gregkh@...uxfoundation.org" <gregkh@...uxfoundation.org>,
	"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
	"devel@...uxdriverproject.org" <devel@...uxdriverproject.org>,
	"olaf@...fle.de" <olaf@...fle.de>,
	"apw@...onical.com" <apw@...onical.com>,
	"jasowang@...hat.com" <jasowang@...hat.com>,
	Evgeniy Polyakov <zbr@...emap.net>
Subject: RE: [PATCH V2 1/1] Drivers: hv: Add a new driver to support host
 initiated backup



> -----Original Message-----
> From: Paolo Bonzini [mailto:paolo.bonzini@...il.com] On Behalf Of Paolo
> Bonzini
> Sent: Tuesday, March 26, 2013 5:02 AM
> To: KY Srinivasan
> Cc: gregkh@...uxfoundation.org; linux-kernel@...r.kernel.org;
> devel@...uxdriverproject.org; olaf@...fle.de; apw@...onical.com;
> jasowang@...hat.com; Evgeniy Polyakov
> Subject: Re: [PATCH V2 1/1] Drivers: hv: Add a new driver to support host
> initiated backup
> 
> > diff --git a/tools/hv/hv_vss_daemon.c b/tools/hv/hv_vss_daemon.c
> > new file mode 100644
> > index 0000000..9526995
> > --- /dev/null
> > +++ b/tools/hv/hv_vss_daemon.c
> > @@ -0,0 +1,220 @@
> > +/*
> > + * An implementation of the host initiated guest snapshot for Hyper-V.
> > + *
> > + *
> > + * Copyright (C) 2013, Microsoft, Inc.
> > + * Author : K. Y. Srinivasan <kys@...rosoft.com>
> > + *
> > + * This program 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 program 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, GOOD TITLE
> or
> > + * NON INFRINGEMENT.  See the GNU General Public License for more
> > + * details.
> > + *
> > + */
> > +
> > +
> > +#include <sys/types.h>
> > +#include <sys/socket.h>
> > +#include <sys/poll.h>
> > +#include <linux/types.h>
> > +#include <stdio.h>
> > +#include <stdlib.h>
> > +#include <unistd.h>
> > +#include <string.h>
> > +#include <ctype.h>
> > +#include <errno.h>
> > +#include <arpa/inet.h>
> > +#include <linux/connector.h>
> > +#include <linux/hyperv.h>
> > +#include <linux/netlink.h>
> > +#include <syslog.h>
> > +
> > +static char vss_recv_buffer[4096];
> > +static char vss_send_buffer[4096];
> > +static struct sockaddr_nl addr;
> > +
> > +#ifndef SOL_NETLINK
> > +#define SOL_NETLINK 270
> > +#endif
> > +
> > +
> > +static int vss_operate(int operation)
> > +{
> > +	char *fs_op;
> > +	char cmd[512];
> > +	char buf[512];
> > +	FILE *file;
> > +	char *p;
> > +	char *x;
> > +	int error;
> > +
> > +	switch (operation) {
> > +	case VSS_OP_FREEZE:
> > +		fs_op = "-f ";
> > +		break;
> > +	case VSS_OP_THAW:
> > +		fs_op = "-u ";
> > +		break;
> > +	}
> > +
> > +	file = popen("mount | awk '/^\/dev\// { print $3}'", "r");
> > +	if (file == NULL)
> > +		return;
> > +
> > +	while ((p = fgets(buf, sizeof(buf), file)) != NULL) {
> > +		x = strchr(p, '\n');
> > +		*x = '\0';
> > +		if (!strncmp(p, "/", sizeof("/")))
> > +			continue;
> > +
> > +		sprintf(cmd, "%s %s %s", "fsfreeze ", fs_op, p);
> 
> Please use getmntent and FIFREEZE/FITHAW.

I think Olaf has already addressed this in the recent patches he has sent.

> 
> However, I wonder if a dedicated daemon is really the best mechanism.
> Perhaps you can use uevents instead, and trigger the freeze/thaw with
> udev rules?

I need to be able to return errors back from the freeze/thaw operations.

Regards,

K. Y

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ