From: Anshuman Khandual <khandual@linux.vnet.ibm.com>
To: Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
Cc: Michael Neuling <mikey@neuling.org>,
james.hogan@imgtec.com, avagin@openvz.org,
Paul.Clothier@imgtec.com, peterz@infradead.org,
palves@redhat.com,
Edjunior Barbosa Machado <emachado@linux.vnet.ibm.com>,
shuahkh@osg.samsung.com, akpm@linux-foundation.org,
linux-kernel@vger.kernel.org, dhowells@redhat.com,
linuxppc-dev@ozlabs.org, kirjanov@gmail.com, oleg@redhat.com,
davej@redhat.com, tglx@linutronix.de, sukadev@linux.vnet.ibm.com,
davem@davemloft.net, sam.bobroff@au1.ibm.com
Subject: Re: [V6,1/9] elf: Add new powerpc specifc core note sections
Date: Mon, 20 Apr 2015 12:12:33 +0530 [thread overview]
Message-ID: <55349FD9.5040006@linux.vnet.ibm.com> (raw)
In-Reply-To: <552B82F9.3080108@linux.vnet.ibm.com>
On 04/13/2015 02:18 PM, Anshuman Khandual wrote:
> On 04/10/2015 04:03 PM, Ulrich Weigand wrote:
>> Anshuman Khandual <khandual@linux.vnet.ibm.com> wrote on 10.04.2015
>> 11:10:35:
>
> I believed it stores the check pointed MSR value which was in the register
> before the transaction started. But then how it is different from the
> ckpt_regs.msr, I am not sure. Mikey or Michael should be able to clarify
> more on this. I can see "orig_msr" getting used in many places to hold the
> check pointed value of MSR.
tm_orig_msr is used during process context switch only. ckpt_regs
gets used in the signal context where we save all userspace context.
So ptrace would look into the saved MSR value correctly inside
ckpt_regs.msr slot. I believe thats the check pointed MSR value
we are interested in from the ptrace perspective not the tm_orig_msr
which just gets used during process context switch.
>> I may be misreading kernel code, but it seems the kernel does not
>> actually
>> use the ckpt_regs.msr slot at all, and therefore the corresponding slot
>> of
>> the NT_PPC_TM_CGPR regset is likewise undefined/unused. Would it not be
>> more consistent to use that slot to pass the checkpointed MSR?
>
> Hmm. Its a valid point. Would like to get some more clarity on this from
> Mikey whether that slot can be used for check pointed MSR value or not.
> Then why did we have these two slots to hold the same check pointed MSR
> value in the first place at all. Getting confused a bit.
Using ckpt_regs.msr during process context switch instead of tm_orig_msr seems
to be working fine and all the basic TM tests pass, in which case we can drop
tm_orig_msr from thread_struct. Will post a patch on this and see whats the
response from others.
WARNING: multiple messages have this Message-ID (diff)
From: Anshuman Khandual <khandual@linux.vnet.ibm.com>
To: Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
Cc: shuahkh@osg.samsung.com, Michael Neuling <mikey@neuling.org>,
james.hogan@imgtec.com, avagin@openvz.org,
Paul.Clothier@imgtec.com, peterz@infradead.org,
palves@redhat.com, linux-kernel@vger.kernel.org,
davem@davemloft.net, dhowells@redhat.com,
linuxppc-dev@ozlabs.org, kirjanov@gmail.com, tglx@linutronix.de,
oleg@redhat.com, davej@redhat.com, akpm@linux-foundation.org,
sukadev@linux.vnet.ibm.com,
Edjunior Barbosa Machado <emachado@linux.vnet.ibm.com>,
sam.bobroff@au1.ibm.com
Subject: Re: [V6,1/9] elf: Add new powerpc specifc core note sections
Date: Mon, 20 Apr 2015 12:12:33 +0530 [thread overview]
Message-ID: <55349FD9.5040006@linux.vnet.ibm.com> (raw)
In-Reply-To: <552B82F9.3080108@linux.vnet.ibm.com>
On 04/13/2015 02:18 PM, Anshuman Khandual wrote:
> On 04/10/2015 04:03 PM, Ulrich Weigand wrote:
>> Anshuman Khandual <khandual@linux.vnet.ibm.com> wrote on 10.04.2015
>> 11:10:35:
>
> I believed it stores the check pointed MSR value which was in the register
> before the transaction started. But then how it is different from the
> ckpt_regs.msr, I am not sure. Mikey or Michael should be able to clarify
> more on this. I can see "orig_msr" getting used in many places to hold the
> check pointed value of MSR.
tm_orig_msr is used during process context switch only. ckpt_regs
gets used in the signal context where we save all userspace context.
So ptrace would look into the saved MSR value correctly inside
ckpt_regs.msr slot. I believe thats the check pointed MSR value
we are interested in from the ptrace perspective not the tm_orig_msr
which just gets used during process context switch.
>> I may be misreading kernel code, but it seems the kernel does not
>> actually
>> use the ckpt_regs.msr slot at all, and therefore the corresponding slot
>> of
>> the NT_PPC_TM_CGPR regset is likewise undefined/unused. Would it not be
>> more consistent to use that slot to pass the checkpointed MSR?
>
> Hmm. Its a valid point. Would like to get some more clarity on this from
> Mikey whether that slot can be used for check pointed MSR value or not.
> Then why did we have these two slots to hold the same check pointed MSR
> value in the first place at all. Getting confused a bit.
Using ckpt_regs.msr during process context switch instead of tm_orig_msr seems
to be working fine and all the basic TM tests pass, in which case we can drop
tm_orig_msr from thread_struct. Will post a patch on this and see whats the
response from others.
next prev parent reply other threads:[~2015-04-20 6:43 UTC|newest]
Thread overview: 80+ 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 ` Anshuman Khandual
2014-12-02 7:56 ` [PATCH V6 1/9] elf: Add new powerpc specifc core note sections Anshuman Khandual
2014-12-02 7:56 ` Anshuman Khandual
2014-12-03 5:22 ` [V6,1/9] " Michael Ellerman
2014-12-03 5:22 ` Michael Ellerman
2014-12-03 6:48 ` Anshuman Khandual
2014-12-03 6:48 ` Anshuman Khandual
2014-12-08 10:08 ` Anshuman Khandual
2014-12-08 10:08 ` Anshuman Khandual
2014-12-19 19:28 ` Edjunior Barbosa Machado
2014-12-19 19:28 ` Edjunior Barbosa Machado
2015-01-01 8:08 ` Anshuman Khandual
2015-01-01 8:08 ` Anshuman Khandual
2015-01-14 4:44 ` Anshuman Khandual
2015-01-14 4:44 ` Anshuman Khandual
2015-01-21 23:39 ` Michael Neuling
2015-01-21 23:39 ` Michael Neuling
2015-01-22 15:55 ` Ulrich Weigand
2015-01-22 15:55 ` Ulrich Weigand
2015-01-22 21:44 ` Michael Neuling
2015-01-22 21:44 ` Michael Neuling
2015-01-28 4:28 ` Michael Neuling
2015-01-28 4:28 ` Michael Neuling
2015-02-06 14:47 ` Ulrich Weigand
2015-02-06 14:47 ` Ulrich Weigand
2015-02-23 4:51 ` Michael Neuling
2015-02-23 4:51 ` Michael Neuling
2015-03-18 12:53 ` Ulrich Weigand
2015-03-18 12:53 ` Ulrich Weigand
2015-03-18 22:45 ` Michael Neuling
2015-03-18 22:45 ` Michael Neuling
2015-03-18 22:50 ` Michael Neuling
2015-03-18 22:50 ` Michael Neuling
2015-03-23 10:34 ` Anshuman Khandual
2015-03-23 10:34 ` Anshuman Khandual
2015-04-08 17:50 ` Ulrich Weigand
2015-04-08 17:50 ` Ulrich Weigand
2015-04-08 23:11 ` Michael Neuling
2015-04-08 23:11 ` Michael Neuling
2015-04-09 12:50 ` Anshuman Khandual
2015-04-09 12:50 ` Anshuman Khandual
2015-04-10 3:03 ` Michael Neuling
2015-04-10 3:03 ` Michael Neuling
2015-04-10 9:10 ` Anshuman Khandual
2015-04-10 9:10 ` Anshuman Khandual
2015-04-10 10:33 ` Ulrich Weigand
2015-04-10 10:33 ` Ulrich Weigand
2015-04-13 8:48 ` Anshuman Khandual
2015-04-13 8:48 ` Anshuman Khandual
2015-04-20 6:42 ` Anshuman Khandual [this message]
2015-04-20 6:42 ` Anshuman Khandual
2015-04-20 12:27 ` Ulrich Weigand
2015-04-20 12:27 ` Ulrich Weigand
2015-04-21 4:55 ` Anshuman Khandual
2015-04-21 4:55 ` Anshuman Khandual
2015-04-21 14:41 ` Ulrich Weigand
2015-04-21 14:41 ` Ulrich Weigand
2015-04-22 9:24 ` Anshuman Khandual
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 ` 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 ` Anshuman Khandual
2014-12-02 7:56 ` [PATCH V6 4/9] powerpc, ptrace: Enable vr_(get/set) " Anshuman Khandual
2014-12-02 7:56 ` 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 ` 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 ` 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 ` 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 ` 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 7:56 ` Anshuman Khandual
2014-12-02 18:23 ` Shuah Khan
2014-12-02 18:23 ` Shuah Khan
2014-12-03 5:46 ` Anshuman Khandual
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=55349FD9.5040006@linux.vnet.ibm.com \
--to=khandual@linux.vnet.ibm.com \
--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=kirjanov@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linuxppc-dev@ozlabs.org \
--cc=mikey@neuling.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 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.