From: David Vrabel <david.vrabel@citrix.com>
To: Ian Campbell <Ian.Campbell@citrix.com>
Cc: Andres Lagar-Cavilla <andres@gridcentric.ca>,
"xen-devel@lists.xensource.com" <xen-devel@lists.xensource.com>,
Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Subject: Re: [PATCHv2 0/2] xen/privcmd: support for paged-out frames
Date: Thu, 30 Aug 2012 11:09:13 +0100 [thread overview]
Message-ID: <503F3BC9.6020100@citrix.com> (raw)
In-Reply-To: <1346263520.6655.4.camel@dagon.hellion.org.uk>
On 29/08/12 19:05, Ian Campbell wrote:
> On Wed, 2012-08-29 at 17:56 +0100, David Vrabel wrote:
>> On 29/08/12 17:23, Ian Campbell wrote:
>>> On Wed, 2012-08-29 at 14:15 +0100, David Vrabel wrote:
>>>> This series is a straight forward-port of some functionality from
>>>> classic kernels to support Xen hosts that do paging of guests.
>>>>
>>>> This isn't functionality the XenServer makes use of so I've not tested
>>>> these with paging in use.
>>>>
>>>> Changes since v1:
>>>>
>>>> - Don't change PRIVCMD_MMAPBATCH (except to #define a constant for the
>>>> error). It's broken and not really fixable sensibly and libxc will
>>>> use V2 if it is available.
>>>> - Return -ENOENT if all failures were -ENOENT.
>>>
>>> Is this behaviour a requirement from something?
>>
>> It's the behaviour libxc is expecting. It doesn't retry unless errno ==
>> ENOENT.
>
> Surely if that is the case you must return -ENOENT if *any* failure was
> -ENOENT? That seems to be what the linux-2.6.18-xen.hg implementation
> does.
Yes.
libxc will subsequently fail the whole map call is any frame errors
without ENOENT so if someone was to propose a V3 it may be useful to
return a different error code for other errors.
>>> Usually hypercalls of this type return a global error only if something
>>> went wrong with the general mechanics of the hypercall (e.g. faults
>>> reading arguments etc) and leave reporting of the individual failures of
>>> subops to the op specific field, even if all the subops fail in the same
>>> way.
>>
>> I didn't design this interface...
>
> The interface you described doesn't make any sense...
I don't entirely agree. There are three types of result: success,
retryable errors, and fatal errors. It's not nonsensical to return
different error codes for these.
Regardless, it's not what the original implementation does so I'll fix
rework the patch.
David
prev parent reply other threads:[~2012-08-30 10:09 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-08-29 13:15 [PATCHv2 0/2] xen/privcmd: support for paged-out frames David Vrabel
2012-08-29 13:15 ` [PATCH 1/2] xen/mm: return more precise error from xen_remap_domain_range() David Vrabel
2012-08-29 13:15 ` [PATCH 2/2] xen/privcmd: add PRIVCMD_MMAPBATCH_V2 ioctl David Vrabel
2012-08-29 16:14 ` Andres Lagar-Cavilla
2012-08-29 16:36 ` David Vrabel
2012-08-29 18:10 ` Andres Lagar-Cavilla
2012-08-29 16:23 ` [PATCHv2 0/2] xen/privcmd: support for paged-out frames Ian Campbell
2012-08-29 16:56 ` David Vrabel
2012-08-29 18:05 ` Ian Campbell
2012-08-30 10:09 ` David Vrabel [this message]
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=503F3BC9.6020100@citrix.com \
--to=david.vrabel@citrix.com \
--cc=Ian.Campbell@citrix.com \
--cc=andres@gridcentric.ca \
--cc=konrad.wilk@oracle.com \
--cc=xen-devel@lists.xensource.com \
/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).