[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH v8 03/20] xenctx: Add -n (--display-stack-pages) option to output larger stack



On Tue, 2014-04-01 at 16:28 -0400, Don Slutz wrote:
> On 04/01/14 09:25, George Dunlap wrote:
> > On 04/01/2014 02:19 PM, Ian Campbell wrote:
> >> On Thu, 2014-03-27 at 15:05 -0400, Don Slutz wrote:
> >>> Important: This is the stack size (also known as stack limit) to
> >>> display not the configured stack size.
> >>>
> >>> Note: use with caution (easy to get garbage).
> >>>
> >>> Below is a pictures of a configured 3 page stack, and where
> >>> the SP currently is.  Each box is a page.
> >>>
> >>>                              -n 1    -n 2    -n 3
> >>>
> >>>         +------------------+
> >>>         |                  |
> >>>         |                  |
> >>>         |                  |
> >>>         |                  |
> >>> SP --> |                  |   *       *       *
> >>>         +------------------+             |          |
> >>>         |                  |          |          |
> >>>         |                  |          |          |
> >>>         |                  |          |          |
> >>>         |                  |          |          |
> >>>         |                  |          *          |
> >>>         +------------------+                    |
> >>>         |                  |              |
> >>>         |                  |              |
> >>>         |                  |              |
> >>>         |                  |              |
> >>>         |                  |              *
> >>>         +------------------+
> >>>
> >>> Display using "-n 3" since the used stack pages is 3.
> >>
> >> Stacks grow downwards on all of the architectures we support. Perhaps
> >> that is why the rest of us find your diagrams so confusing?
> >>
> 
> I expect so.  I can flip the picture (and add relative address) to help.  I 
> was basing
> the layout to match the stack output:

The reality is that the layout does not match the stack output, but you
are using terms like "stack pages" which lead people to expect things in
terms of the layout in memory pages.

> 
> Call Trace:
>                      [<ffffffff81346898>] io_serial_out+0x18 <--
> ffff880032bb1310:   [<ffffffff81346f51>] serial8250_console_putchar+0x31
> ffff880032bb1330:   [<ffffffff813428de>] uart_console_write+0x3e
> ffff880032bb1338:   [<ffffffff8100bc0e>] apic_timer_interrupt+0xe
> ffff880032bb1370:   [<ffffffff813472ad>] serial8250_console_write+0xbd
> ffff880032bb13c0:   [<ffffffff8106b8f5>] __call_console_drivers+0x75
> ffff880032bb13f0:   [<ffffffff8106b95a>] _call_console_drivers+0x4a
> ffff880032bb1410:   [<ffffffff8106be6e>] release_console_sem+0x4e
> ffff880032bb1450:   [<ffffffff8106c628>] vprintk+0x248
> ffff880032bb14f0:   [<ffffffff814fd363>] printk+0x41
> ffff880032bb3f20:   [<ffffffff8100204c>] do_one_initcall+0x3c
> ffff880032bb3f50:   [<ffffffff810b0eb1>] sys_init_module+0xe1
> ffff880032bb3f80:   [<ffffffff8100b0f2>] system_call_fastpath+0x16
> 
> Adding (my) boxes (note not fully to scale):

Oh come on, how do you think that is useful?

> 
> >> Also, should the other end of the *---* line from SP (the bottom in your
> >> diagram above) not be aligned to a page boundary, after all -n works in
> >> pages.
> >>
> 
> I am happy to do it either way.  I think of the page breaks to not be part of 
> memory.

Oh I see, the ending * is just before the boundary.

I think you should move the SP into the middle of the page, otherwise
under your way of displaying it it seems like the 1-page case has no
contents.

Ian.


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.