[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v2 0/5] block: Strip protocol prefixes from file
From: |
Stefan Hajnoczi |
Subject: |
Re: [Qemu-devel] [PATCH v2 0/5] block: Strip protocol prefixes from filenames |
Date: |
Wed, 12 Mar 2014 11:03:37 +0100 |
User-agent: |
Mutt/1.5.21 (2010-09-15) |
On Sat, Mar 08, 2014 at 12:39:40AM +0100, Max Reitz wrote:
> As some kind of follow-up to the "block: Strip 'file:' prefix from
> filenames" series, this series does the same thing for other protocol
> drivers.
>
> All protocol drivers which implement bdrv_probe() may rely on them being
> selected based on that function returning success alone. However, they
> may have been chosen through a protocol prefix as well. Thus, if they
> currently do not implement bdrv_parse_filename(), they may be unaware of
> that possible prefix and therefore fail to interpret such filenames
> (and, in fact, all of those are unaware).
>
> This series makes these drivers strip their respective prefix through
> bdrv_parse_filename() and in bdrv_create(), if implemented.
>
> The following protocol drivers are not touched by this series since they
> already implement bdrv_parse_filename() and are thus very likely aware
> of the prefix:
> - vvfat, nbd, blkdebug, blkverify, ssh, curl
>
> The following protocol drivers are not touched by this series since they
> do not implement bdrv_probe() and therefore always receive a prefixed
> filename (unless they are selected through QMP options) which makes them
> pretty much guaranteed to handle these prefixes correctly:
> - nfs, sheepdog, rbd, quorum, gluster, iscsi
>
> Thus, only drivers implementing bdrv_probe() and not implementing
> bdrv_parse_filename() have been touched.
>
>
> Please note that this series does not strip the prefix in bdrv_probe().
> This is due to the driver being selected anyway later on through the
> protocol prefix, even though bdrv_probe() returned 0. More importantly,
> according to a comment in bdrv_find_protocol() in block.c about why
> bdrv_probe() occurs before the protocol prefix is interpreted, it seems
> actually more desirable not to strip the prefix in bdrv_probe() (since
> it may in fact not be a prefix but rather some obscure device naming
> schema).
>
>
> v2:
> - Patch 3: Use a common cdrom_parse_filename() for both Linux and
> FreeBSD [Benoît]
> - Patch 4: Fixed commit message [Eric]
>
>
>
> Key:
> [----] : patches are identical
> [####] : number of functional differences between upstream/downstream patch
> [down] : patch is downstream-only
> The flags [FC] indicate (F)unctional and (C)ontextual differences,
> respectively
>
> 001/5:[----] [--] 'block/raw-posix: bdrv_parse_filename() for hdev'
> 002/5:[----] [--] 'block/raw-posix: bdrv_parse_filename() for floppy'
> 003/5:[0013] [FC] 'block/raw-posix: bdrv_parse_filename() for cdrom'
> 004/5:[----] [--] 'block/raw-posix: Strip protocol prefix on creation'
> 005/5:[----] [--] 'block/raw-win32: bdrv_parse_filename() for hdev'
>
>
>
> Max Reitz (5):
> block/raw-posix: bdrv_parse_filename() for hdev
> block/raw-posix: bdrv_parse_filename() for floppy
> block/raw-posix: bdrv_parse_filename() for cdrom
> block/raw-posix: Strip protocol prefix on creation
> block/raw-win32: bdrv_parse_filename() for hdev
>
> block/raw-posix.c | 47 +++++++++++++++++++++++++++++++++++++++++++++++
> block/raw-win32.c | 10 ++++++++++
> 2 files changed, 57 insertions(+)
>
> --
> 1.9.0
>
>
Thanks, applied to my block tree:
https://github.com/stefanha/qemu/commits/block
Stefan
- [Qemu-devel] [PATCH v2 0/5] block: Strip protocol prefixes from filenames, Max Reitz, 2014/03/07
- [Qemu-devel] [PATCH v2 1/5] block/raw-posix: bdrv_parse_filename() for hdev, Max Reitz, 2014/03/07
- [Qemu-devel] [PATCH v2 2/5] block/raw-posix: bdrv_parse_filename() for floppy, Max Reitz, 2014/03/07
- [Qemu-devel] [PATCH v2 3/5] block/raw-posix: bdrv_parse_filename() for cdrom, Max Reitz, 2014/03/07
- [Qemu-devel] [PATCH v2 4/5] block/raw-posix: Strip protocol prefix on creation, Max Reitz, 2014/03/07
- [Qemu-devel] [PATCH v2 5/5] block/raw-win32: bdrv_parse_filename() for hdev, Max Reitz, 2014/03/07
- Re: [Qemu-devel] [PATCH v2 0/5] block: Strip protocol prefixes from filenames,
Stefan Hajnoczi <=