All of lore.kernel.org
 help / color / mirror / Atom feed
From: Don Slutz <dslutz@verizon.com>
To: Ian Campbell <Ian.Campbell@citrix.com>, Don Slutz <dslutz@verizon.com>
Cc: Stefano Stabellini <stefano.stabellini@eu.citrix.com>,
	George Dunlap <george.dunlap@eu.citrix.com>,
	Don Slutz <Don@CloudSwitch.com>,
	Ian Jackson <ian.jackson@eu.citrix.com>,
	xen-devel@lists.xen.org, Jan Beulich <jbeulich@suse.com>
Subject: Re: [PATCH v5 10/17] xenctx: Add -m (--memory) <maddr> option to dump memory at maddr.
Date: Tue, 25 Mar 2014 15:16:57 -0400	[thread overview]
Message-ID: <5331D629.6020903@terremark.com> (raw)
In-Reply-To: <1395413599.19839.125.camel@kazak.uk.xensource.com>

On 03/21/14 10:53, Ian Campbell wrote:
> On Thu, 2014-03-20 at 15:06 -0400, Don Slutz wrote:
>> Currently not supported on ARM.
>>
>> New routine read_mem_word() will correctly read a word that crosses
>> a page boundary.  It will not fault if the 2nd page can not be
>> mapped.
>>
>> Here is an example:
>> Memory (address ffffffff803ddf90):
>>   ffffffff80048d19 0000000000200800 ffffffff803e7801 0000000000086800
>>   0000000000000000 ffffffff80430720 ffffffff803e722f 80008e000010019c
>>   00000000ffffffff 0000000000000000 0000000000000000 0000000000200000
>>   0000000000000000 0000000000000000 0000000000000000 00cf9b000000ffff
>>   00af9b000000ffff 00cf93000000ffff 00cffb000000ffff 00cff3000000ffff
>>
>> Signed-off-by: Don Slutz <Don@CloudSwitch.com>
>> ---
>> v5: Remove extra #ifndef.  Make common routine print_lines().
>>
>>   tools/xentrace/xenctx.c | 232 +++++++++++++++++++++++++++++++++---------------
>>   1 file changed, 162 insertions(+), 70 deletions(-)
>>
>> diff --git a/tools/xentrace/xenctx.c b/tools/xentrace/xenctx.c
>> index 5732665..13f56ed 100644
>> --- a/tools/xentrace/xenctx.c
>> +++ b/tools/xentrace/xenctx.c
>> @@ -33,23 +33,6 @@
>>   #define DEFAULT_BYTES_PER_LINE 32
>>   #define DEFAULT_LINES 5
>>   
>> -static struct xenctx {
>> -    xc_interface *xc_handle;
>> -    int domid;
>> -    int frame_ptrs;
>> -    int stack_trace;
>> -    int disp_all;
>> -    int multiple_pages;
>> -    int bytes_per_line;
>> -    int lines;
>> -    int decode_as_ascii;
>> -    int tag_stack_dump;
>> -    int tag_call_trace;
>> -    int all_vcpus;
>> -    int self_paused;
>> -    xc_dominfo_t dominfo;
>> -} xenctx;
>> -
>>   #if defined (__i386__) || defined (__x86_64__)
>>   typedef unsigned long long guest_word_t;
>>   #define FMT_32B_WORD "%08llx"
>> @@ -73,6 +56,27 @@ typedef uint64_t guest_word_t;
>>   
>>   #define MAX_BYTES_PER_LINE 128
>>   
>> +static struct xenctx {
>> +    xc_interface *xc_handle;
>> +    int domid;
>> +    int frame_ptrs;
>> +    int stack_trace;
>> +    int disp_all;
>> +    int multiple_pages;
>> +    int bytes_per_line;
>> +    int lines;
>> +    int decode_as_ascii;
>> +    int tag_stack_dump;
>> +    int tag_call_trace;
>> +    int all_vcpus;
>> +#ifndef NO_TRANSLATION
>> +    guest_word_t mem_addr;
>> +    int do_memory;
>> +#endif
>> +    int self_paused;
>> +    xc_dominfo_t dominfo;
>> +} xenctx;
>> +
> This motion seems to be unmotivated by the commit message.

I will add the reason to the commit message:

Moved xenctx because guest_word_t is not defined where it was.



> (I've no idea why there is a struct for this stuff anyway, even though
> there is a good chance I added it, it could just as easily be globals in
> a program of this sort)

I just went with what was there...

>>   int main(int argc, char **argv)
>>   {
>>       int ch;
>>       int ret;
>> +#ifndef NO_TRANSLATION
>> +    static const char *sopts = "fs:hak:SCn:b:l:DtTm:";
>> +#else
>>       static const char *sopts = "fs:hak:SCn:b:l:DtT";
>> +#endif
>       static const char *sopts = "fs:hak:SCn:b:l:DtT"
> #ifdef ....
> 				"m:"
> #endif
> 	;

This is the way it use to be:

#ifdef __ia64__
         "r:"
#endif


>
> Or something to avoid that massive repetition. Another possibility:
>
> #ifndef NO_TRANSLATION
> #define TRANSLATION_OPTS "m:"
> #else
> #define TRANSLATION_OPTS
> #endif
> 		sopts = "fs:....." TRANS...._OPTS

I am planning on the following the old way (i.e. no new TRANSLATION_OPTS define).

    -Don Slutz

> Ian.
>
>

  reply	other threads:[~2014-03-25 19:16 UTC|newest]

Thread overview: 77+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-03-20 19:06 [PATCH v5 00/17] xenctx: Many changes Don Slutz
2014-03-20 19:06 ` [PATCH v5 01/17] xenctx: clean up usage output Don Slutz
2014-03-21 14:21   ` Ian Campbell
2014-03-20 19:06 ` [PATCH v5 02/17] xenctx: Clean up stack trace when hypercall_page not in symbol table Don Slutz
2014-03-20 19:06 ` [PATCH v5 03/17] xenctx: Add -n (--display-stack-pages) option to output larger stack Don Slutz
2014-03-21 14:29   ` Ian Campbell
2014-03-22 20:49     ` Don Slutz
2014-03-24 10:39       ` Ian Campbell
2014-03-24 13:26         ` Don Slutz
2014-03-20 19:06 ` [PATCH v5 04/17] xenctx: Add command line options -b (--bytes-per-line) and -l (--lines) Don Slutz
2014-03-21 14:32   ` Ian Campbell
2014-03-22 20:08     ` Don Slutz
2014-03-22 20:10       ` Don Slutz
2014-03-24 10:44       ` Ian Campbell
2014-03-24 16:58         ` Don Slutz
2014-03-27 15:55           ` Ian Campbell
2014-03-27 19:36             ` Don Slutz
2014-03-20 19:06 ` [PATCH v5 05/17] xenctx: Add command line option -D (--decode-as-ascii) Don Slutz
2014-03-21 14:38   ` Ian Campbell
2014-03-21 18:42     ` Don Slutz
2014-03-24 10:46       ` Ian Campbell
2014-03-24 17:00         ` Don Slutz
2014-03-20 19:06 ` [PATCH v5 06/17] xenctx: Add command line option -t (--tag-stack-dump) Don Slutz
2014-03-21 14:40   ` Ian Campbell
2014-03-20 19:06 ` [PATCH v5 07/17] xenctx: Change print_symbol to do the space before Don Slutz
2014-03-20 19:06 ` [PATCH v5 08/17] xenctx: More info on failed to map page Don Slutz
2014-03-20 19:06 ` [PATCH v5 09/17] xenctx: Add command line option -T (--tag-trace) Don Slutz
2014-03-21 14:44   ` Ian Campbell
2014-03-24 19:54     ` Don Slutz
2014-03-27 15:56       ` Ian Campbell
2014-03-20 19:06 ` [PATCH v5 10/17] xenctx: Add -m (--memory) <maddr> option to dump memory at maddr Don Slutz
2014-03-21 14:53   ` Ian Campbell
2014-03-25 19:16     ` Don Slutz [this message]
2014-03-20 19:06 ` [PATCH v5 11/17] xenctx: Add -d (--dump-as-stack) <daddr> option to dump memory at daddr as a stack Don Slutz
2014-03-21 14:57   ` Ian Campbell
2014-03-24 15:22     ` Don Slutz
2014-03-27 15:58       ` Ian Campbell
2014-03-27 17:05         ` Don Slutz
2014-03-27 17:20           ` Ian Campbell
2014-03-27 17:49             ` Don Slutz
2014-03-20 19:07 ` [PATCH v5 12/17] xenctx: change is_kernel_text() into kernel_addr() Don Slutz
2014-03-21 15:02   ` Ian Campbell
2014-03-21 17:45     ` Don Slutz
2014-03-24 22:23       ` Don Slutz
2014-03-25  9:13         ` Jan Beulich
2014-03-27 15:59         ` Ian Campbell
2014-03-20 19:07 ` [PATCH v5 13/17] xenctx: Add convert of more registers to symbols Don Slutz
2014-03-21 10:24   ` Jan Beulich
2014-03-21 12:34     ` Don Slutz
2014-03-21 14:11       ` [PATCH v6 " Don Slutz
2014-03-21 14:45         ` Jan Beulich
2014-03-21 17:43           ` [PATCH v7 " Don Slutz
2014-03-24 10:51             ` Ian Campbell
2014-03-21 15:03         ` [PATCH v6 " Ian Campbell
2014-03-21 17:38           ` Don Slutz
2014-03-21 15:07   ` [PATCH v5 " Ian Campbell
2014-03-21 15:11     ` Jan Beulich
2014-03-21 16:06       ` Ian Campbell
2014-03-21 18:16         ` Don Slutz
2014-03-24 10:49           ` Ian Campbell
2014-03-24 14:09             ` Don Slutz
2014-03-27 16:06               ` Ian Campbell
2014-03-27 16:52                 ` Don Slutz
2014-03-20 19:07 ` [PATCH v5 14/17] xenctx: Add output of vcpu value and state for --all-vcpus Don Slutz
2014-03-27 16:07   ` Ian Campbell
2014-03-20 19:07 ` [PATCH v5 15/17] xenctx: Fix handling of !guest_protected_mode Don Slutz
2014-03-21 15:09   ` Ian Campbell
2014-03-24 22:35     ` Don Slutz
2014-03-20 19:07 ` [PATCH v5 16/17] xenctx: Allow output for offline vcpu when specified Don Slutz
2014-03-21 15:11   ` Ian Campbell
2014-03-24 13:20     ` Don Slutz
2014-03-20 19:07 ` [PATCH v5 17/17] xenctx: Fixup options checking Don Slutz
2014-03-21 15:13   ` Ian Campbell
2014-03-24 14:26     ` Don Slutz
2014-03-27 16:10       ` Ian Campbell
2014-03-21 15:14 ` [PATCH v5 00/17] xenctx: Many changes Ian Campbell
2014-03-21 17:37   ` Don Slutz

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=5331D629.6020903@terremark.com \
    --to=dslutz@verizon.com \
    --cc=Don@CloudSwitch.com \
    --cc=Ian.Campbell@citrix.com \
    --cc=george.dunlap@eu.citrix.com \
    --cc=ian.jackson@eu.citrix.com \
    --cc=jbeulich@suse.com \
    --cc=stefano.stabellini@eu.citrix.com \
    --cc=xen-devel@lists.xen.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.