linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
From: Michael Neuling <mikey@neuling.org>
To: Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
Cc: shuahkh@osg.samsung.com, james.hogan@imgtec.com,
	avagin@openvz.org, Paul.Clothier@imgtec.com,
	peterz@infradead.org, linux-kernel@vger.kernel.org,
	davem@davemloft.net, dhowells@redhat.com,
	linuxppc-dev@ozlabs.org, kirjanov@gmail.com, tglx@linutronix.de,
	oleg@redhat.com, sukadev@linux.vnet.ibm.com, davej@redhat.com,
	akpm@linux-foundation.org, palves@redhat.com,
	Edjunior Barbosa Machado <emachado@linux.vnet.ibm.com>,
	sam.bobroff@au1.ibm.com,
	Anshuman Khandual <khandual@linux.vnet.ibm.com>
Subject: Re: [V6,1/9] elf: Add new powerpc specifc core note sections
Date: Thu, 19 Mar 2015 09:45:02 +1100	[thread overview]
Message-ID: <1426718702.4866.2.camel@neuling.org> (raw)
In-Reply-To: <OF5DE08D4B.0B79C501-ONC1257E0C.0044F80B-C1257E0C.0046DC8F@de.ibm.com>

On Wed, 2015-03-18 at 13:53 +0100, Ulrich Weigand wrote:
> Michael Neuling <mikey@neuling.org> wrote on 23.02.2015 05:51:50:
>=20
> > Sorry for the slow response.
>=20
> Same here :-(

I'm going to break the cycle and respond in a few hours :-)


> > I think what you're proposing with running the inferior function in
> > suspend mode may end up corrupting the stack in this way.  You'd need t=
o
> > be really careful to make sure the inferior function is run on the stac=
k
> > pointer of the checkpointed registers.
>=20
> On the other hand, if code called a subroutine after the tbegin, if we
> were using the checkpointed r1, this might corrupt the stack of the
> transactional code.  (This code will never actually *run* again since
> the transaction is doomed, but we can still *inspect* it in GDB after
> the inferior call has returned, so the stack should remain unchanged.
> Well .. if the transaction is suspended, the code might in fact still
> run, so it should remain unchanged either way.)
>=20
> I guess we could use the minimum of transactional and checkpointed r1
> in that case, to be safe either way.

Sounds good.

<snip>

> > > Using the combination of (A)+(A') would be easiest to implement
> > > in GDB without modifying a lot of common code, and would have the
> > > advantage that the inferior function always executes in the same
> > > state (suspended), while leaving information about the interrupted
> > > transaction visible.
> > >
> > > Using the combination of (B)+(B') would be a bit more difficult
> > > to implement (but certainly feasible), and would have the advantage
> > > that the inferior function always executes in nontransactional state
> > > (which is what it would most likely expect, anyway).  However, the
> > > disadvantage is that after the inferior call returns, GDB is unable
> > > to fully restore the visible inferior state as it was before (since
> > > we're now in nontransactional state, and there is probably no way
> > > to force us back into transactional/suspended state ...).
> >
> > Yep.
>=20
> So right now I'd tend to prefer (A)+(A'), but the important thing is
> that the kernel seems to provide all features required for GDB to
> implement any of the above, so we can still make that decision later.
>=20
> > Getting back to the kernel interface, are you happy with what Anshuman
> > has proposed in the current series?
>=20
> Given the discussion above, this seems fine to me now.

Great, we'll push through with this in mind.

Thanks!
Mikey

  reply	other threads:[~2015-03-18 22:45 UTC|newest]

Thread overview: 40+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-12-02  7:56 [PATCH V6 0/9] Add new powerpc specific ELF core notes Anshuman Khandual
2014-12-02  7:56 ` [PATCH V6 1/9] elf: Add new powerpc specifc core note sections Anshuman Khandual
2014-12-03  5:22   ` [V6,1/9] " Michael Ellerman
2014-12-03  6:48     ` Anshuman Khandual
2014-12-08 10:08       ` Anshuman Khandual
2014-12-19 19:28         ` Edjunior Barbosa Machado
2015-01-01  8:08           ` Anshuman Khandual
2015-01-14  4:44             ` Anshuman Khandual
2015-01-21 23:39             ` Michael Neuling
2015-01-22 15:55               ` Ulrich Weigand
2015-01-22 21:44                 ` Michael Neuling
2015-01-28  4:28                   ` Michael Neuling
2015-02-06 14:47                     ` Ulrich Weigand
2015-02-23  4:51                       ` Michael Neuling
2015-03-18 12:53                         ` Ulrich Weigand
2015-03-18 22:45                           ` Michael Neuling [this message]
2015-03-18 22:50                             ` Michael Neuling
2015-03-23 10:34                               ` Anshuman Khandual
2015-04-08 17:50                                 ` Ulrich Weigand
2015-04-08 23:11                                   ` Michael Neuling
2015-04-09 12:50                                     ` Anshuman Khandual
2015-04-10  3:03                                       ` Michael Neuling
2015-04-10  9:10                                         ` Anshuman Khandual
2015-04-10 10:33                                           ` Ulrich Weigand
2015-04-13  8:48                                             ` Anshuman Khandual
2015-04-20  6:42                                               ` Anshuman Khandual
2015-04-20 12:27                                               ` Ulrich Weigand
2015-04-21  4:55                                                 ` Anshuman Khandual
2015-04-21 14:41                                                   ` Ulrich Weigand
2015-04-22  9:24                                                     ` Anshuman Khandual
2014-12-02  7:56 ` [PATCH V6 2/9] powerpc, process: Add the function flush_tmregs_to_thread Anshuman Khandual
2014-12-02  7:56 ` [PATCH V6 3/9] powerpc, ptrace: Enable fpr_(get/set) for transactional memory Anshuman Khandual
2014-12-02  7:56 ` [PATCH V6 4/9] powerpc, ptrace: Enable vr_(get/set) " Anshuman Khandual
2014-12-02  7:56 ` [PATCH V6 5/9] powerpc, ptrace: Enable support for transactional memory register sets Anshuman Khandual
2014-12-02  7:56 ` [PATCH V6 6/9] powerpc, ptrace: Enable support for miscellaneous debug registers Anshuman Khandual
2014-12-02  7:56 ` [PATCH V6 7/9] selftests, powerpc: Add test case for TM related ptrace interface Anshuman Khandual
2014-12-02  7:56 ` [PATCH V6 8/9] selftests, powerpc: Make GIT ignore all binaries related to TM Anshuman Khandual
2014-12-02  7:56 ` [PATCH V6 9/9] selftests: Make GIT ignore all binaries in powerpc test suite Anshuman Khandual
2014-12-02 18:23   ` Shuah Khan
2014-12-03  5:46     ` Anshuman Khandual

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=1426718702.4866.2.camel@neuling.org \
    --to=mikey@neuling.org \
    --cc=Paul.Clothier@imgtec.com \
    --cc=Ulrich.Weigand@de.ibm.com \
    --cc=akpm@linux-foundation.org \
    --cc=avagin@openvz.org \
    --cc=davej@redhat.com \
    --cc=davem@davemloft.net \
    --cc=dhowells@redhat.com \
    --cc=emachado@linux.vnet.ibm.com \
    --cc=james.hogan@imgtec.com \
    --cc=khandual@linux.vnet.ibm.com \
    --cc=kirjanov@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linuxppc-dev@ozlabs.org \
    --cc=oleg@redhat.com \
    --cc=palves@redhat.com \
    --cc=peterz@infradead.org \
    --cc=sam.bobroff@au1.ibm.com \
    --cc=shuahkh@osg.samsung.com \
    --cc=sukadev@linux.vnet.ibm.com \
    --cc=tglx@linutronix.de \
    /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).