[stgt] [PATCH 1/1] Add DISK media support to TGTIMG

FUJITA Tomonori fujita.tomonori at lab.ntt.co.jp
Mon Apr 5 06:41:01 CEST 2010


On Sun, 4 Apr 2010 08:13:47 +1000
ronnie sahlberg <ronniesahlberg at gmail.com> wrote:

> From c235db24c4b5eacf269926ad6e34498f25103fb5 Mon Sep 17 00:00:00 2001
> From: Ronnie Sahlberg <ronniesahlberg at gmail.com>
> Date: Sun, 4 Apr 2010 08:07:33 +1000
> Subject: [PATCH] Update TGTIMG to use it to create DISK images.
>  This is a trivial reimplementation of dd if=/dev/zero bs=1M ...
>  but offers us to use one command for any type of media.
> 
> Update the manpage for TGTIMG to describe how to use TGTIMG
> to create DISK media.
> 
> Change the example in README.iser to use TGTIMG instead of dd to
> create the mediafile.
> 
> Signed-off-by: Ronnie Sahlberg <ronniesahlberg at gmail.com>
> ---
>  doc/README.iser             |    3 +-
>  doc/htmlpages/tgtimg.8.html |   32 +++++++++++--------
>  doc/manpages/tgtimg.8       |   29 ++++++++++++-----
>  doc/tgtimg.8.xml            |   26 ++++++++++-----
>  usr/tgtimg.c                |   71 +++++++++++++++++++++++++++++++++++++++++++
>  5 files changed, 129 insertions(+), 32 deletions(-)
> 
> diff --git a/doc/README.iser b/doc/README.iser
> index 2361c4e..f96e7aa 100644
> --- a/doc/README.iser
> +++ b/doc/README.iser
> @@ -189,7 +189,8 @@ Configure the running target with one or more devices, using the tgtadm
>  program you just built (also as root).  Full information is in
>  doc/README.iscsi.  Here is a quick-start guide:
>  
> -	dd if=/dev/zero bs=1k count=1 seek=1048575 of=/tmp/tid1lun1
> +	./tgtimg --op new --device-type disk --type disk --size 1024 \
> +		 --file /tmp/tid1lun1

The operations are slightly different. The previous operation using dd
creates a sparse file. tgtimg doesn't.

Worth adding the sparse option to tgtimg? I'm not sure.

> +static int sbc_new(int op, char *path, char *capacity, char *media_type)
> +{
> +	int fd;
> +
> +	if (!strncasecmp("disk", media_type, 4)) {
> +		uint32_t pos, size;
> +		char *buf;
> +
> +		sscanf(capacity, "%d", &size);
> +		if (size == 0) {

if (!size) is preferred.


> +			printf("Capacity must be > 0\n");
> +			exit(3);
> +		}
> +
> +		buf = malloc(1024*1024);
> +		if (buf == NULL) {

If (!buf) is preferred.

I can fix them so I'll merge this patch.

Thanks,
--
To unsubscribe from this list: send the line "unsubscribe stgt" in
the body of a message to majordomo at vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html



More information about the stgt mailing list