From: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: xen-devel@lists.xenproject.org, wei.liu2@citrix.com, jbeulich@suse.com
Subject: Re: [PATCH v2 5/8] tmem: Move TMEM_CONTROL subop of tmem hypercall to sysctl.
Date: Thu, 27 Aug 2015 15:20:21 -0400 [thread overview]
Message-ID: <20150827192021.GK5982@konrad-lan.dumpdata.com> (raw)
In-Reply-To: <55DF5DDB.5000909@citrix.com>
> >>> +struct xen_sysctl_tmem_op {
> >>> + uint32_t cmd; /* IN: XEN_SYSCTL_TMEM_OP_* . */
> >>> + int32_t pool_id; /* IN: 0 by default unless _SAVE_*, RESTORE_* .*/
> >>> + uint32_t cli_id; /* IN: client id, 0 for XEN_SYSCTL_TMEM_QUERY_FREEABLE_MB
> >>> + for all others can be the domain id or
> >>> + XEN_SYSCTL_TMEM_OP_ALL_CLIENTS for all. */
> >>> + uint32_t arg1; /* IN: If not applicable to command use 0. */
> >>> + uint32_t arg2; /* IN: If not applicable to command use 0. */
> >> Please can this interface be fixed as part of the move, even if it is in
> >> subsequent patches for clarity.
> > I will gladly fix this interface in further patches. By all means!
>
> What I wish to avoid is 4.6 releasing with the API in this state, as
> adjusting valgrind and strace to compensate will be miserable.
Right.
>
> The best solution would be to have this patch and the fixups adjacent in
> the series, at which point the valgrind/strace adjustments can start
> with the clean API for 4.6
Yes. I shall post this patchset plus extra patches next week.
>
> >>> + uint64_t oid[3]; /* IN: If not applicable to command use 0. */
> >>> + XEN_GUEST_HANDLE_64(char) buf; /* IN/OUT: Buffer to save and restore ops. */
> >>> +};
> >>> +typedef struct xen_sysctl_tmem_op xen_sysctl_tmem_op_t;
> >>> +DEFINE_XEN_GUEST_HANDLE(xen_sysctl_tmem_op_t);
> >>> +
> >>> struct xen_sysctl {
> >>> uint32_t cmd;
> >>> #define XEN_SYSCTL_readconsole 1
> >>> @@ -734,6 +776,7 @@ struct xen_sysctl {
> >>> #define XEN_SYSCTL_psr_cmt_op 21
> >>> #define XEN_SYSCTL_pcitopoinfo 22
> >>> #define XEN_SYSCTL_psr_cat_op 23
> >>> +#define XEN_SYSCTL_tmem_op 24
> >>> uint32_t interface_version; /* XEN_SYSCTL_INTERFACE_VERSION */
> >>> union {
> >>> struct xen_sysctl_readconsole readconsole;
> >>> @@ -758,6 +801,7 @@ struct xen_sysctl {
> >>> struct xen_sysctl_coverage_op coverage_op;
> >>> struct xen_sysctl_psr_cmt_op psr_cmt_op;
> >>> struct xen_sysctl_psr_cat_op psr_cat_op;
> >>> + struct xen_sysctl_tmem_op tmem_op;
> >>> uint8_t pad[128];
> >>> } u;
> >>> };
> >>> diff --git a/xen/include/public/tmem.h b/xen/include/public/tmem.h
> >>> index 4fd2fc6..208f5a6 100644
> >>> --- a/xen/include/public/tmem.h
> >>> +++ b/xen/include/public/tmem.h
> >>> @@ -33,7 +33,7 @@
> >>> #define TMEM_SPEC_VERSION 1
> >>>
> >>> /* Commands to HYPERVISOR_tmem_op() */
> >>> -#define TMEM_CONTROL 0
> >>> +#define TMEM_CONTROL_MOVED 0
> >> If anything, this should be deleted as opposed to being renamed. The
> >> _MOVED suffix is confusing, as TMEM_CONTROL_MOVED sounds like it could
> >> be a plausible TMEM operation.
> > Ah, will do what Jan asked and just put a big comment. And keep the old
> > name (or maybe add 'DEPRECATED'?)
>
> If you are going to the effort of renaming, then just delete. Either
> way will break the build of unsuspecting code, and the latter leaves us
> with less junk.
It will break the tmem hypervisor code as it has a check for
TMEM_CONTROL (which per Jan suggestion should return -E.. something).
>
> A comment however will be useful in all cases.
Aye.
next prev parent reply other threads:[~2015-08-27 19:20 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-08-27 11:01 [PATCH v2] Tmem bug-fixes and cleanups Konrad Rzeszutek Wilk
2015-08-27 11:01 ` [PATCH v2 1/8] tmem: Don't crash/hang/leak hypervisor when using shared pools within an guest Konrad Rzeszutek Wilk
2015-08-27 11:21 ` Wei Liu
2015-08-27 11:01 ` [PATCH v2 2/8] tmem: Add ASSERT in obj_rb_insert for pool->rwlock lock Konrad Rzeszutek Wilk
2015-08-27 14:55 ` Jan Beulich
2015-08-27 11:01 ` [PATCH v2 3/8] tmem: remove in xc_tmem_control_oid duplicate set_xen_guest_handle call Konrad Rzeszutek Wilk
2015-08-27 11:01 ` [PATCH v2 4/8] tmem: Remove xc_tmem_control mystical arg3 Konrad Rzeszutek Wilk
2015-08-27 11:15 ` Wei Liu
2015-08-27 12:53 ` Andrew Cooper
2015-08-27 18:38 ` Konrad Rzeszutek Wilk
2015-08-27 11:02 ` [PATCH v2 5/8] tmem: Move TMEM_CONTROL subop of tmem hypercall to sysctl Konrad Rzeszutek Wilk
2015-08-27 11:22 ` Wei Liu
2015-08-27 13:12 ` Andrew Cooper
2015-08-27 15:13 ` Jan Beulich
2015-08-27 18:47 ` Konrad Rzeszutek Wilk
2015-08-27 18:58 ` Andrew Cooper
2015-08-27 19:20 ` Konrad Rzeszutek Wilk [this message]
2015-08-28 8:31 ` Jan Beulich
2015-08-28 14:15 ` Konrad Rzeszutek Wilk
2015-08-28 14:40 ` Jan Beulich
2015-08-27 15:11 ` Jan Beulich
2015-08-27 18:43 ` Konrad Rzeszutek Wilk
2015-08-27 19:02 ` Andrew Cooper
2015-08-28 7:03 ` Jan Beulich
2015-08-27 11:02 ` [PATCH v2 6/8] tmem: Remove the old tmem control XSM checks as it is part of sysctl hypercall Konrad Rzeszutek Wilk
2015-08-27 20:59 ` Daniel De Graaf
2015-08-27 11:02 ` [PATCH v2 7/8] tmem: Remove extra spaces at end and some hard tabbing Konrad Rzeszutek Wilk
2015-08-27 13:19 ` Andrew Cooper
2015-08-27 11:02 ` [PATCH v2 8/8] tmem: Spelling mistakes Konrad Rzeszutek Wilk
2015-08-27 15:14 ` Jan Beulich
2015-08-27 13:30 ` [PATCH v2] Tmem bug-fixes and cleanups Andrew Cooper
2015-08-27 14:10 ` Wei Liu
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=20150827192021.GK5982@konrad-lan.dumpdata.com \
--to=konrad.wilk@oracle.com \
--cc=andrew.cooper3@citrix.com \
--cc=jbeulich@suse.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.