From: George Dunlap <George.Dunlap@eu.citrix.com>
To: Jan Beulich <JBeulich@novell.com>
Cc: xen-devel@lists.xensource.com
Subject: Re: [PATCH 1/6] trace: share t_info pages only in read-only mode
Date: Tue, 29 Jun 2010 17:27:04 +0100 [thread overview]
Message-ID: <AANLkTimwTkr-tMS13LsPiadf01LSEhIE7Svzv3oU4f73@mail.gmail.com> (raw)
In-Reply-To: <4C2A2DDD0200007800008A5D@vpn.id2.novell.com>
Acked-by: George Dunlap <george.dunlap@eu.citrix.com>
On Tue, Jun 29, 2010 at 4:31 PM, Jan Beulich <JBeulich@novell.com> wrote:
> There's no need to share writably the t_info pages (Dom0 only wants
> [and needs] to read it)
>
> Signed-off-by: Jan Beulich <jbeulich@novell.com>
>
> --- 2010-06-15.orig/tools/xenmon/xenbaked.c 2010-06-29 16:55:30.000000000 +0200
> +++ 2010-06-15/tools/xenmon/xenbaked.c 2010-06-28 10:23:01.000000000 +0200
> @@ -84,7 +84,7 @@ typedef struct settings_st {
> } settings_t;
>
> struct t_struct {
> - struct t_info *t_info; /* Structure with information about individual buffers */
> + const struct t_info *t_info; /* Structure with information about individual buffers */
> struct t_buf **meta; /* Pointers to trace buffer metadata */
> unsigned char **data; /* Pointers to trace buffer data areas */
> };
> @@ -376,9 +376,8 @@ static struct t_struct *map_tbufs(unsign
> }
>
> /* Map t_info metadata structure */
> - tbufs.t_info = xc_map_foreign_range(xc_handle, DOMID_XEN,
> - tinfo_size, PROT_READ | PROT_WRITE,
> - tbufs_mfn);
> + tbufs.t_info = xc_map_foreign_range(xc_handle, DOMID_XEN, tinfo_size,
> + PROT_READ, tbufs_mfn);
>
> if ( tbufs.t_info == 0 )
> {
> @@ -404,7 +403,8 @@ static struct t_struct *map_tbufs(unsign
> for(i=0; i<num; i++)
> {
>
> - uint32_t *mfn_list = ((uint32_t *)tbufs.t_info) + tbufs.t_info->mfn_offset[i];
> + const uint32_t *mfn_list = (const uint32_t *)tbufs.t_info
> + + tbufs.t_info->mfn_offset[i];
> int j;
> xen_pfn_t pfn_list[tbufs.t_info->tbuf_size];
>
> --- 2010-06-15.orig/tools/xentrace/xentrace.c 2010-06-29 16:55:30.000000000 +0200
> +++ 2010-06-15/tools/xentrace/xentrace.c 2010-06-28 10:23:26.000000000 +0200
> @@ -63,7 +63,7 @@ typedef struct settings_st {
> } settings_t;
>
> struct t_struct {
> - struct t_info *t_info; /* Structure with information about individual buffers */
> + const struct t_info *t_info; /* Structure with information about individual buffers */
> struct t_buf **meta; /* Pointers to trace buffer metadata */
> unsigned char **data; /* Pointers to trace buffer data areas */
> };
> @@ -475,9 +475,8 @@ static struct t_struct *map_tbufs(unsign
> int i;
>
> /* Map t_info metadata structure */
> - tbufs.t_info = xc_map_foreign_range(xc_handle, DOMID_XEN,
> - tinfo_size, PROT_READ | PROT_WRITE,
> - tbufs_mfn);
> + tbufs.t_info = xc_map_foreign_range(xc_handle, DOMID_XEN, tinfo_size,
> + PROT_READ, tbufs_mfn);
>
> if ( tbufs.t_info == 0 )
> {
> @@ -503,7 +502,8 @@ static struct t_struct *map_tbufs(unsign
> for(i=0; i<num; i++)
> {
>
> - uint32_t *mfn_list = ((uint32_t *)tbufs.t_info) + tbufs.t_info->mfn_offset[i];
> + const uint32_t *mfn_list = (const uint32_t *)tbufs.t_info
> + + tbufs.t_info->mfn_offset[i];
> int j;
> xen_pfn_t pfn_list[tbufs.t_info->tbuf_size];
>
> --- 2010-06-15.orig/xen/common/trace.c 2010-06-28 12:16:05.000000000 +0200
> +++ 2010-06-15/xen/common/trace.c 2010-06-28 11:58:37.000000000 +0200
> @@ -309,7 +309,7 @@ void __init init_trace_bufs(void)
>
> for(i=0; i<T_INFO_PAGES; i++)
> share_xen_page_with_privileged_guests(
> - virt_to_page(t_info) + i, XENSHARE_writable);
> + virt_to_page(t_info) + i, XENSHARE_readonly);
>
> if ( opt_tbuf_size == 0 )
> {
>
>
>
>
prev parent reply other threads:[~2010-06-29 16:27 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-06-29 15:31 [PATCH 1/6] trace: share t_info pages only in read-only mode Jan Beulich
2010-06-29 16:27 ` George Dunlap [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=AANLkTimwTkr-tMS13LsPiadf01LSEhIE7Svzv3oU4f73@mail.gmail.com \
--to=george.dunlap@eu.citrix.com \
--cc=JBeulich@novell.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).