From: "Roger Pau Monné" <roger.pau@citrix.com>
To: Ian Jackson <Ian.Jackson@eu.citrix.com>
Cc: xen-devel@lists.xenproject.org, Wei Liu <wei.liu2@citrix.com>,
Ian Campbell <ian.campbell@citrix.com>,
Alex Braunegg <alex.braunegg@gmail.com>
Subject: Re: [PATCH v6] libxl: allow 'phy' backend to use empty files
Date: Fri, 19 Feb 2016 18:41:50 +0100 [thread overview]
Message-ID: <56C753DE.7030409@citrix.com> (raw)
In-Reply-To: <22215.20813.59866.409199@mariner.uk.xensource.com>
El 19/2/16 a les 18:30, Ian Jackson ha escrit:
> Roger Pau Monne writes ("[PATCH v6] libxl: allow 'phy' backend to use empty files"):
>> This was introduced by 97ee1f (~5 years ago), but was probably never
>> surfaced because most people used regular files as CDROM images, so the PHY
>> backend was actually never selected. A year ago this was changed, and now
>> regular RAW files are also handled by the PHY backend, which has made this
>> bug surface.
>>
>> Fix it by allowing empty disks to use the PHY backend, skipping the stat
>> tests.
>>
>> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
>> Reported-by: Alex Braunegg <alex.braunegg@gmail.com>
>
> Thanks, and thanks to Alex for the testing, but:
>
>> diff --git a/tools/libxl/libxl_device.c b/tools/libxl/libxl_device.c
>> index 8bb5e93..2e08108 100644
>> --- a/tools/libxl/libxl_device.c
>> +++ b/tools/libxl/libxl_device.c
>> @@ -196,6 +196,14 @@ static int disk_try_backend(disk_try_backend_args *a,
>> goto bad_format;
>> }
>>
>> + if (a->disk->format == LIBXL_DISK_FORMAT_EMPTY) {
>> + assert(a->disk->pdev_path == NULL ||
>> + !strcmp(a->disk->pdev_path, ""));
>
> I agree that these things ought to be true but I don't see what code
> in libxl ensures that they definitely are.
>
> I think this check ought to be moved to libxl__device_disk_set_backend,
> or perhaps even earlier, and should generate an ERROR_INVAL rather
> than an assertion failure.
Thanks, libxl can return EINVAL without problems from
libxl__device_disk_set_backend, so I think it's a fine place to put this
check. libxl__device_disk_setdefault should also be a good place, but I
feel _backend is where it makes more sense. v7 is on the way.
Roger.
next prev parent reply other threads:[~2016-02-19 17:41 UTC|newest]
Thread overview: 39+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-02-16 17:37 [PATCH v4 0/4] Assorted fixes and improvements Roger Pau Monne
2016-02-16 17:37 ` [PATCH v4 1/4] x86/HVM: update the start info structure layout Roger Pau Monne
2016-02-16 19:13 ` Andrew Cooper
2016-02-16 20:06 ` Konrad Rzeszutek Wilk
2016-02-17 10:01 ` Roger Pau Monné
2016-02-16 21:26 ` Boris Ostrovsky
2016-02-17 9:58 ` Jan Beulich
2016-02-17 10:05 ` Roger Pau Monné
2016-02-17 14:39 ` Boris Ostrovsky
2016-02-17 14:54 ` Jan Beulich
2016-02-17 10:45 ` Samuel Thibault
2016-02-17 13:00 ` Jan Beulich
2016-02-16 17:37 ` [PATCH v4 2/4] libxl: introduce LIBXL_VGA_INTERFACE_TYPE_UNKNOWN Roger Pau Monne
2016-02-24 12:08 ` Wei Liu
2016-03-01 16:06 ` Ian Jackson
2016-02-16 17:37 ` [PATCH v4 3/4] libelf: rewrite symtab/strtab loading Roger Pau Monne
2016-02-26 13:15 ` Jan Beulich
2016-02-26 17:02 ` Roger Pau Monné
2016-02-29 9:31 ` Jan Beulich
2016-02-29 10:57 ` Roger Pau Monné
2016-02-29 12:14 ` Jan Beulich
2016-02-29 16:20 ` Roger Pau Monné
2016-02-29 16:41 ` Jan Beulich
2016-02-16 17:37 ` [PATCH v4 4/4] libxl: fix cd-eject Roger Pau Monne
2016-02-16 17:58 ` Ian Jackson
2016-02-17 11:20 ` Roger Pau Monné
2016-02-17 11:42 ` Ian Campbell
2016-02-17 12:15 ` Ian Jackson
2016-02-17 17:20 ` [PATCH v6] libxl: allow 'phy' backend to use empty files Roger Pau Monne
2016-02-18 10:27 ` Alex Braunegg
2016-02-19 17:30 ` Ian Jackson
2016-02-19 17:41 ` Roger Pau Monné [this message]
2016-02-19 18:01 ` [PATCH v7] " Roger Pau Monne
2016-03-01 9:51 ` Roger Pau Monné
2016-03-03 15:41 ` Ian Jackson
2016-03-31 16:20 ` Roger Pau Monné
2016-04-01 14:06 ` Ian Jackson
2016-04-05 16:48 ` [PATCH v6] " George Dunlap
2016-04-05 21:45 ` Alex Braunegg
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=56C753DE.7030409@citrix.com \
--to=roger.pau@citrix.com \
--cc=Ian.Jackson@eu.citrix.com \
--cc=alex.braunegg@gmail.com \
--cc=ian.campbell@citrix.com \
--cc=wei.liu2@citrix.com \
--cc=xen-devel@lists.xenproject.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).