All of lore.kernel.org
 help / color / mirror / Atom feed
From: cov@codeaurora.org (Christopher Covington)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH V2 4/6] ARM: Make PID_IN_CONTEXTIDR incompatible with PID_NS
Date: Fri, 24 Jan 2014 14:12:09 -0500	[thread overview]
Message-ID: <52E2BB09.1020008@codeaurora.org> (raw)
In-Reply-To: <52E2A866.1050400@codeaurora.org>

On 01/24/2014 12:52 PM, Christopher Covington wrote:
> On 01/24/2014 12:17 PM, Will Deacon wrote:
>> On Fri, Jan 24, 2014 at 05:16:28PM +0000, Adrien Verg? wrote:
>>> 2014/1/24 Will Deacon <will.deacon@arm.com>:
>>>> Are you sure about this? The value we write is actually task_pid_nr, which I
>>>> believe to be globally unique.
>>>
>>> You are right: the task_pid_nr is unique in the system. However when
>>> using namespaces, the so called "PID" is the virtual number that
>>> processes in different namespaces can share.
>>>
>>> This PID is the one visible by user-space tasks, in particular
>>> user-space tracers and debuggers. These programs would expect to find
>>> the PID of the traced process in the Context ID reg, while it is not.
>>> I think it is better to remove confusion by making PID_IN_CONTEXTIDR
>>> and PID_NS incompatible.
>>>
>>> What do you think?
>>
>> I think I'd rather have the global ID than disable a potentially useful
>> feature, especially since this is likely to be consumed by external trace
>> tools as opposed to user-space tasks.
> 
> We've discussed before that the ARM architecture doesn't say what should be
> written to the CONTEXTIDR, so it's up to us to decide. Will has a use case
> where the global PID is useful. Adrien's patches present a use case where I
> think the virtual PID would be useful. I've done work in the past where
> writing the process group ID was useful. Would it be reasonable to make what's
> written to the CONTEXTIDR run-time configurable? If so, what would be the best
> interface for configuring it?

D'oh, I mixed things up. For ETM to work it can only use global PID's in the
CONTEXTIDR.

Christopher

-- 
Employee of Qualcomm Innovation Center, Inc.
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
hosted by the Linux Foundation.

WARNING: multiple messages have this Message-ID (diff)
From: Christopher Covington <cov@codeaurora.org>
To: Will Deacon <will.deacon@arm.com>
Cc: "Dirk Behme" <dirk.behme@de.bosch.com>,
	"Russell King" <linux@arm.linux.org.uk>,
	"Mathieu Poirier" <mathieu.poirier@linaro.org>,
	"Catalin Marinas" <Catalin.Marinas@arm.com>,
	"Randy Dunlap" <rdunlap@infradead.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"Michel Dagenais" <michel.dagenais@polymtl.ca>,
	"Ben Dooks" <ben.dooks@codethink.co.uk>,
	"Adrien Vergé" <adrienverge@gmail.com>,
	"Andrew Morton" <akpm@linux-foundation.org>,
	"linux-arm-kernel@lists.infradead.org"
	<linux-arm-kernel@lists.infradead.org>,
	"zhangwei(Jovi)" <jovi.zhangwei@huawei.com>
Subject: Re: [PATCH V2 4/6] ARM: Make PID_IN_CONTEXTIDR incompatible with PID_NS
Date: Fri, 24 Jan 2014 14:12:09 -0500	[thread overview]
Message-ID: <52E2BB09.1020008@codeaurora.org> (raw)
In-Reply-To: <52E2A866.1050400@codeaurora.org>

On 01/24/2014 12:52 PM, Christopher Covington wrote:
> On 01/24/2014 12:17 PM, Will Deacon wrote:
>> On Fri, Jan 24, 2014 at 05:16:28PM +0000, Adrien Vergé wrote:
>>> 2014/1/24 Will Deacon <will.deacon@arm.com>:
>>>> Are you sure about this? The value we write is actually task_pid_nr, which I
>>>> believe to be globally unique.
>>>
>>> You are right: the task_pid_nr is unique in the system. However when
>>> using namespaces, the so called "PID" is the virtual number that
>>> processes in different namespaces can share.
>>>
>>> This PID is the one visible by user-space tasks, in particular
>>> user-space tracers and debuggers. These programs would expect to find
>>> the PID of the traced process in the Context ID reg, while it is not.
>>> I think it is better to remove confusion by making PID_IN_CONTEXTIDR
>>> and PID_NS incompatible.
>>>
>>> What do you think?
>>
>> I think I'd rather have the global ID than disable a potentially useful
>> feature, especially since this is likely to be consumed by external trace
>> tools as opposed to user-space tasks.
> 
> We've discussed before that the ARM architecture doesn't say what should be
> written to the CONTEXTIDR, so it's up to us to decide. Will has a use case
> where the global PID is useful. Adrien's patches present a use case where I
> think the virtual PID would be useful. I've done work in the past where
> writing the process group ID was useful. Would it be reasonable to make what's
> written to the CONTEXTIDR run-time configurable? If so, what would be the best
> interface for configuring it?

D'oh, I mixed things up. For ETM to work it can only use global PID's in the
CONTEXTIDR.

Christopher

-- 
Employee of Qualcomm Innovation Center, Inc.
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
hosted by the Linux Foundation.

  reply	other threads:[~2014-01-24 19:12 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-01-24 16:40 [PATCH V2 0/6] ARM CoreSight: Enhance ETM tracing control Adrien Vergé
2014-01-24 16:40 ` Adrien Vergé
2014-01-24 16:40 ` [PATCH V2 1/6] ARM CoreSight: ETM: Use device attributes Adrien Vergé
2014-01-24 16:40   ` Adrien Vergé
2014-01-24 16:40 ` [PATCH V2 2/6] ARM CoreSight: ETM: Rename 'comparator' to 'address comparator' Adrien Vergé
2014-01-24 16:40   ` Adrien Vergé
2014-01-24 16:40 ` [PATCH V2 3/6] ARM CoreSight: ETM: Add address control support Adrien Vergé
2014-01-24 16:40   ` Adrien Vergé
2014-01-24 16:40 ` [PATCH V2 4/6] ARM: Make PID_IN_CONTEXTIDR incompatible with PID_NS Adrien Vergé
2014-01-24 16:40   ` Adrien Vergé
2014-01-24 16:43   ` Will Deacon
2014-01-24 16:43     ` Will Deacon
2014-01-24 17:16     ` Adrien Vergé
2014-01-24 17:16       ` Adrien Vergé
2014-01-24 17:17       ` Will Deacon
2014-01-24 17:17         ` Will Deacon
2014-01-24 17:52         ` Christopher Covington
2014-01-24 17:52           ` Christopher Covington
2014-01-24 19:12           ` Christopher Covington [this message]
2014-01-24 19:12             ` Christopher Covington
2014-01-24 19:34           ` Adrien Vergé
2014-01-24 19:34             ` Adrien Vergé
2014-01-24 16:40 ` [PATCH V2 5/6] ARM CoreSight: ETM: Add PID control support Adrien Vergé
2014-01-24 16:40   ` Adrien Vergé
2014-01-24 16:40 ` [PATCH V2 6/6] ARM CoreSight: ETM: Allocate a trace buffer only when necessary Adrien Vergé
2014-01-24 16:40   ` Adrien Vergé

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=52E2BB09.1020008@codeaurora.org \
    --to=cov@codeaurora.org \
    --cc=linux-arm-kernel@lists.infradead.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.