All of lore.kernel.org
 help / color / mirror / Atom feed
From: Sukadev Bhattiprolu <sukadev@linux.ibm.com>
To: Andrew Donnellan <andrew.donnellan@au1.ibm.com>
Cc: "Alastair D'Silva" <alastair@au1.ibm.com>,
	linuxppc-dev@lists.ozlabs.org, linux-kernel@vger.kernel.org,
	linux-doc@vger.kernel.org, mikey@neuling.org,
	vaibhav@linux.vnet.ibm.com, aneesh.kumar@linux.vnet.ibm.com,
	malat@debian.org, felix@linux.vnet.ibm.com, pombredanne@nexb.com,
	sukadev@linux.vnet.ibm.com, npiggin@gmail.com,
	gregkh@linuxfoundation.org, arnd@arndb.de,
	fbarrat@linux.vnet.ibm.com, corbet@lwn.net,
	"Alastair D'Silva" <alastair@d-silva.org>,
	Christophe Lombard <clombard@linux.vnet.ibm.com>
Subject: Re: [PATCH v2 3/7] powerpc: use task_pid_nr() for TID allocation
Date: Tue, 24 Apr 2018 14:12:32 -0700	[thread overview]
Message-ID: <20180424211231.GA25392@us.ibm.com> (raw)
In-Reply-To: <b088d063-058a-2557-812c-6d5659f9d67b@au1.ibm.com>

Andrew Donnellan [andrew.donnellan@au1.ibm.com] wrote:
> [+ Sukadev, Christophe]
> 
> On 18/04/18 11:08, Alastair D'Silva wrote:
> > From: Alastair D'Silva <alastair@d-silva.org>
> > 
> > The current implementation of TID allocation, using a global IDR, may
> > result in an errant process starving the system of available TIDs.
> > Instead, use task_pid_nr(), as mentioned by the original author. The
> > scenario described which prevented it's use is not applicable, as
> > set_thread_tidr can only be called after the task struct has been
> > populated.
> > 
> > Signed-off-by: Alastair D'Silva <alastair@d-silva.org>
> 
> So it's too late in the evening for me to completely get my head around
> what's going on here enough to give my Reviewed-by:, but my current thinking
> is:
> 
> - In the first version of the patch to add TIDR support
> (https://patchwork.ozlabs.org/patch/799494/), it was originally proposed to
> call assign_thread_id() (as it was then called) from copy_thread()
> 
> - The comment block documents the reason why we can't use task_pid_nr() but
> assumes that we're trying to assign a TIDR from within copy_thread()
> 
> - The final patch that was accepted
> (https://patchwork.ozlabs.org/patch/835552/,
> ec233ede4c8654894610ea54f4dae7adc954ac62) instead sets the TIDR to 0 from
> copy_thread(), so the original reasoning regarding not using task_pid_nr()
> within copy_thread() is no longer applicable.
> 
> Sukadev: does this sound right?

Yes. Like with PIDR, was trying to assign TIDR initially to all threads.
But since only a subset of threads need/use TIDR, we can assign the
value later (when set_thread_tidr() is called). So we should be able to
use task_pid_nr() then.

Sukadev

WARNING: multiple messages have this Message-ID (diff)
From: Sukadev Bhattiprolu <sukadev@linux.ibm.com>
To: Andrew Donnellan <andrew.donnellan@au1.ibm.com>
Cc: "Alastair D'Silva" <alastair@au1.ibm.com>,
	linuxppc-dev@lists.ozlabs.org, linux-kernel@vger.kernel.org,
	linux-doc@vger.kernel.org, mikey@neuling.org,
	vaibhav@linux.vnet.ibm.com, aneesh.kumar@linux.vnet.ibm.com,
	malat@debian.org, felix@linux.vnet.ibm.com, pombredanne@nexb.com,
	sukadev@linux.vnet.ibm.com, npiggin@gmail.com,
	gregkh@linuxfoundation.org, arnd@arndb.de,
	fbarrat@linux.vnet.ibm.com, corbet@lwn.net,
	"Alastair D'Silva" <alastair@d-silva.org>,
	Christophe Lombard <clombard@linux.vnet.ibm.com>
Subject: Re: [PATCH v2 3/7] powerpc: use task_pid_nr() for TID allocation
Date: Tue, 24 Apr 2018 14:12:32 -0700	[thread overview]
Message-ID: <20180424211231.GA25392@us.ibm.com> (raw)
In-Reply-To: <b088d063-058a-2557-812c-6d5659f9d67b@au1.ibm.com>

Andrew Donnellan [andrew.donnellan@au1.ibm.com] wrote:
> [+ Sukadev, Christophe]
> 
> On 18/04/18 11:08, Alastair D'Silva wrote:
> > From: Alastair D'Silva <alastair@d-silva.org>
> > 
> > The current implementation of TID allocation, using a global IDR, may
> > result in an errant process starving the system of available TIDs.
> > Instead, use task_pid_nr(), as mentioned by the original author. The
> > scenario described which prevented it's use is not applicable, as
> > set_thread_tidr can only be called after the task struct has been
> > populated.
> > 
> > Signed-off-by: Alastair D'Silva <alastair@d-silva.org>
> 
> So it's too late in the evening for me to completely get my head around
> what's going on here enough to give my Reviewed-by:, but my current thinking
> is:
> 
> - In the first version of the patch to add TIDR support
> (https://patchwork.ozlabs.org/patch/799494/), it was originally proposed to
> call assign_thread_id() (as it was then called) from copy_thread()
> 
> - The comment block documents the reason why we can't use task_pid_nr() but
> assumes that we're trying to assign a TIDR from within copy_thread()
> 
> - The final patch that was accepted
> (https://patchwork.ozlabs.org/patch/835552/,
> ec233ede4c8654894610ea54f4dae7adc954ac62) instead sets the TIDR to 0 from
> copy_thread(), so the original reasoning regarding not using task_pid_nr()
> within copy_thread() is no longer applicable.
> 
> Sukadev: does this sound right?

Yes. Like with PIDR, was trying to assign TIDR initially to all threads.
But since only a subset of threads need/use TIDR, we can assign the
value later (when set_thread_tidr() is called). So we should be able to
use task_pid_nr() then.

Sukadev

--
To unsubscribe from this list: send the line "unsubscribe linux-doc" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

  reply	other threads:[~2018-04-24 21:12 UTC|newest]

Thread overview: 119+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-04-17  2:09 [PATCH 0/7] ocxl: Implement Power9 as_notify/wait for OpenCAPI Alastair D'Silva
2018-04-17  2:09 ` Alastair D'Silva
2018-04-17  2:09 ` [PATCH 1/7] powerpc: Add TIDR CPU feature for Power9 Alastair D'Silva
2018-04-17  2:09   ` Alastair D'Silva
2018-04-17  4:09   ` Andrew Donnellan
2018-04-17  4:09     ` Andrew Donnellan
2018-04-17  2:09 ` [PATCH 2/7] powerpc: Use TIDR CPU feature to control TIDR allocation Alastair D'Silva
2018-04-17  2:09   ` Alastair D'Silva
2018-04-17  4:21   ` Andrew Donnellan
2018-04-17  4:21     ` Andrew Donnellan
2018-04-17  5:31     ` Alastair D'Silva
2018-04-17  5:31       ` Alastair D'Silva
2018-04-17  2:09 ` [PATCH 3/7] powerpc: use task_pid_nr() for TID allocation Alastair D'Silva
2018-04-17  2:09   ` Alastair D'Silva
2018-04-17  2:09 ` [PATCH 4/7] ocxl: Rename pnv_ocxl_spa_remove_pe to clarify it's action Alastair D'Silva
2018-04-17  2:09   ` Alastair D'Silva
2018-04-17  5:37   ` Andrew Donnellan
2018-04-17  5:37     ` Andrew Donnellan
2018-04-17  2:09 ` [PATCH 5/7] ocxl: Expose the thread_id needed for wait on p9 Alastair D'Silva
2018-04-17  2:09   ` Alastair D'Silva
2018-04-17  2:09 ` [PATCH 6/7] ocxl: Add an IOCTL so userspace knows which platform the kernel requires Alastair D'Silva
2018-04-17  2:09   ` Alastair D'Silva
2018-04-17  2:09 ` [PATCH 7/7] ocxl: Document new OCXL IOCTLs Alastair D'Silva
2018-04-17  2:09   ` Alastair D'Silva
2018-04-17  3:45   ` Andrew Donnellan
2018-04-17  3:45     ` Andrew Donnellan
2018-04-18  1:08 ` [PATCH v2 0/7] ocxl: Implement Power9 as_notify/wait for OpenCAPI Alastair D'Silva
2018-04-18  1:08   ` Alastair D'Silva
2018-04-18  1:08   ` [PATCH v2 1/7] powerpc: Add TIDR CPU feature for Power9 Alastair D'Silva
2018-04-18  1:08     ` Alastair D'Silva
2018-04-18  7:03     ` Andrew Donnellan
2018-04-18  7:03       ` Andrew Donnellan
2018-05-07 17:17     ` Frederic Barrat
2018-05-07 17:17       ` Frederic Barrat
2018-05-08  3:13       ` Alastair D'Silva
2018-05-08  3:13         ` Alastair D'Silva
2018-04-18  1:08   ` [PATCH v2 2/7] powerpc: Use TIDR CPU feature to control TIDR allocation Alastair D'Silva
2018-04-18  1:08     ` Alastair D'Silva
2018-04-18  7:13     ` Andrew Donnellan
2018-04-18  7:13       ` Andrew Donnellan
2018-05-07 17:19     ` Frederic Barrat
2018-05-07 17:19       ` Frederic Barrat
2018-04-18  1:08   ` [PATCH v2 3/7] powerpc: use task_pid_nr() for TID allocation Alastair D'Silva
2018-04-18  1:08     ` Alastair D'Silva
2018-04-20  8:43     ` Andrew Donnellan
2018-04-20  8:43       ` Andrew Donnellan
2018-04-24 21:12       ` Sukadev Bhattiprolu [this message]
2018-04-24 21:12         ` Sukadev Bhattiprolu
2018-04-26  9:25         ` Andrew Donnellan
2018-04-26  9:25           ` Andrew Donnellan
2018-05-07 17:37     ` Frederic Barrat
2018-05-07 17:37       ` Frederic Barrat
2018-05-08  0:40       ` Alastair D'Silva
2018-05-08  0:40         ` Alastair D'Silva
2018-04-18  1:08   ` [PATCH v2 4/7] ocxl: Rename pnv_ocxl_spa_remove_pe to clarify it's action Alastair D'Silva
2018-04-18  1:08     ` Alastair D'Silva
2018-05-07 17:38     ` Frederic Barrat
2018-05-07 17:38       ` Frederic Barrat
2018-04-18  1:08   ` [PATCH v2 5/7] ocxl: Expose the thread_id needed for wait on p9 Alastair D'Silva
2018-04-18  1:08     ` Alastair D'Silva
2018-04-23  7:16     ` Andrew Donnellan
2018-04-23  7:16       ` Andrew Donnellan
2018-05-07 18:08     ` Frederic Barrat
2018-05-07 18:08       ` Frederic Barrat
2018-04-18  1:08   ` [PATCH v2 6/7] ocxl: Add an IOCTL so userspace knows what CPU features are available Alastair D'Silva
2018-04-18  1:08     ` Alastair D'Silva
2018-04-20  7:25     ` Andrew Donnellan
2018-04-20  7:25       ` Andrew Donnellan
2018-05-07 18:14     ` Frederic Barrat
2018-05-07 18:14       ` Frederic Barrat
2018-05-08  0:41       ` Alastair D'Silva
2018-05-08  0:41         ` Alastair D'Silva
2018-05-08  3:50         ` Nicholas Piggin
2018-05-08  3:50           ` Nicholas Piggin
2018-05-08  3:54           ` Alastair D'Silva
2018-05-08  3:54             ` Alastair D'Silva
2018-04-18  1:08   ` [PATCH v2 7/7] ocxl: Document new OCXL IOCTLs Alastair D'Silva
2018-04-18  1:08     ` Alastair D'Silva
2018-04-18  7:29     ` Andrew Donnellan
2018-04-18  7:29       ` Andrew Donnellan
2018-05-07 18:15     ` Frederic Barrat
2018-05-07 18:15       ` Frederic Barrat
2018-05-09  0:42 ` [PATCH v3 0/7] ocxl: Implement Power9 as_notify/wait for OpenCAPI Alastair D'Silva
2018-05-09  0:42   ` Alastair D'Silva
2018-05-09  0:42   ` [PATCH v3 1/7] powerpc: Add TIDR CPU feature for POWER9 Alastair D'Silva
2018-05-09  0:42     ` Alastair D'Silva
2018-05-09  0:42   ` [PATCH v3 2/7] powerpc: Use TIDR CPU feature to control TIDR allocation Alastair D'Silva
2018-05-09  0:42     ` Alastair D'Silva
2018-05-09  0:42   ` [PATCH v3 3/7] powerpc: use task_pid_nr() for TID allocation Alastair D'Silva
2018-05-09  0:42     ` Alastair D'Silva
2018-05-09  0:42   ` [PATCH v3 4/7] ocxl: Rename pnv_ocxl_spa_remove_pe to clarify it's action Alastair D'Silva
2018-05-09  0:42     ` Alastair D'Silva
2018-05-09  0:42   ` [PATCH v3 5/7] ocxl: Expose the thread_id needed for wait on POWER9 Alastair D'Silva
2018-05-09  0:42     ` Alastair D'Silva
2018-05-11  5:01     ` Michael Ellerman
2018-05-11  5:01       ` Michael Ellerman
2018-05-09  0:42   ` [PATCH v3 6/7] ocxl: Add an IOCTL so userspace knows what OCXL features are available Alastair D'Silva
2018-05-09  0:42     ` Alastair D'Silva
2018-05-09  0:42   ` [PATCH v3 7/7] ocxl: Document new OCXL IOCTLs Alastair D'Silva
2018-05-09  0:42     ` Alastair D'Silva
2018-05-09  5:34   ` [PATCH v4 0/7] ocxl: Implement Power9 as_notify/wait for OpenCAPI Alastair D'Silva
2018-05-09  5:34     ` Alastair D'Silva
2018-05-09  5:35     ` [PATCH v4 1/7] powerpc: Add TIDR CPU feature for POWER9 Alastair D'Silva
2018-05-09  5:35       ` Alastair D'Silva
2018-05-09  5:35     ` [PATCH v4 2/7] powerpc: Use TIDR CPU feature to control TIDR allocation Alastair D'Silva
2018-05-09  5:35       ` Alastair D'Silva
2018-05-09  5:35     ` [PATCH v4 3/7] powerpc: use task_pid_nr() for TID allocation Alastair D'Silva
2018-05-09  5:35       ` Alastair D'Silva
2018-05-09  5:35     ` [PATCH v4 4/7] ocxl: Rename pnv_ocxl_spa_remove_pe to clarify it's action Alastair D'Silva
2018-05-09  5:35       ` Alastair D'Silva
2018-05-09  5:35     ` [PATCH v4 5/7] ocxl: Expose the thread_id needed for wait on POWER9 Alastair D'Silva
2018-05-09  5:35       ` Alastair D'Silva
2018-05-09  5:35     ` [PATCH v4 6/7] ocxl: Add an IOCTL so userspace knows what OCXL features are available Alastair D'Silva
2018-05-09  5:35       ` Alastair D'Silva
2018-05-11  5:20       ` Michael Ellerman
2018-05-11  5:20         ` Michael Ellerman
2018-05-11  5:20         ` Michael Ellerman
2018-05-09  5:35     ` [PATCH v4 7/7] ocxl: Document new OCXL IOCTLs Alastair D'Silva
2018-05-09  5:35       ` Alastair D'Silva

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=20180424211231.GA25392@us.ibm.com \
    --to=sukadev@linux.ibm.com \
    --cc=alastair@au1.ibm.com \
    --cc=alastair@d-silva.org \
    --cc=andrew.donnellan@au1.ibm.com \
    --cc=aneesh.kumar@linux.vnet.ibm.com \
    --cc=arnd@arndb.de \
    --cc=clombard@linux.vnet.ibm.com \
    --cc=corbet@lwn.net \
    --cc=fbarrat@linux.vnet.ibm.com \
    --cc=felix@linux.vnet.ibm.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linuxppc-dev@lists.ozlabs.org \
    --cc=malat@debian.org \
    --cc=mikey@neuling.org \
    --cc=npiggin@gmail.com \
    --cc=pombredanne@nexb.com \
    --cc=sukadev@linux.vnet.ibm.com \
    --cc=vaibhav@linux.vnet.ibm.com \
    /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.