All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Christian König" <christian.koenig@amd.com>
To: Christoph Hellwig <hch@infradead.org>,
	John Stultz <john.stultz@linaro.org>
Cc: lkml <linux-kernel@vger.kernel.org>,
	Daniel Vetter <daniel@ffwll.ch>,
	Sumit Semwal <sumit.semwal@linaro.org>,
	Liam Mark <lmark@codeaurora.org>,
	Chris Goldsworthy <cgoldswo@codeaurora.org>,
	Laura Abbott <labbott@kernel.org>,
	Brian Starkey <Brian.Starkey@arm.com>,
	Hridya Valsaraju <hridya@google.com>,
	Suren Baghdasaryan <surenb@google.com>,
	Sandeep Patil <sspatil@google.com>,
	Daniel Mentz <danielmentz@google.com>,
	??rjan Eide <orjan.eide@arm.com>,
	Robin Murphy <robin.murphy@arm.com>,
	Ezequiel Garcia <ezequiel@collabora.com>,
	Simon Ser <contact@emersion.fr>, James Jones <jajones@nvidia.com>,
	linux-media <linux-media@vger.kernel.org>,
	dri-devel <dri-devel@lists.freedesktop.org>,
	Mel Gorman <mgorman@suse.de>, linux-mm <linux-mm@kvack.org>
Subject: Re: page pools, was Re: [PATCH v9 1/5] drm: Add a sharable drm page-pool implementation
Date: Thu, 8 Jul 2021 09:37:41 +0200	[thread overview]
Message-ID: <798f5d1d-b64c-8c73-bfe6-701893820ff0@amd.com> (raw)
In-Reply-To: <YOZ9JZlwkjyDGti5@infradead.org>

Am 08.07.21 um 06:20 schrieb Christoph Hellwig:
> On Wed, Jul 07, 2021 at 12:35:23PM -0700, John Stultz wrote:
>> So, as Christian mentioned, on the TTM side it's useful, as they are
>> trying to avoid TLB flushes when changing caching attributes.
>>
>> For the dmabuf system heap purposes, the main benefit is moving the
>> page zeroing to the free path, rather than the allocation path. This
>> on its own doesn't save much, but allows us to defer frees (and thus
>> the zeroing) to the background, which can get that work out of the hot
>> path.
> I really do no think that is worth it to fragment the free pages.

And I think functionality like that should be part of the common page 
allocator.

I mean we already have __GFP_ZERO, why not have a background kernel 
thread which zeros free pages when a CPU core is idle? (I'm pretty sure 
we already have that somehow).

Christian.

WARNING: multiple messages have this Message-ID (diff)
From: "Christian König" <christian.koenig@amd.com>
To: Christoph Hellwig <hch@infradead.org>,
	John Stultz <john.stultz@linaro.org>
Cc: dri-devel <dri-devel@lists.freedesktop.org>,
	Sandeep Patil <sspatil@google.com>, linux-mm <linux-mm@kvack.org>,
	Ezequiel Garcia <ezequiel@collabora.com>,
	Robin Murphy <robin.murphy@arm.com>,
	James Jones <jajones@nvidia.com>,
	lkml <linux-kernel@vger.kernel.org>,
	Liam Mark <lmark@codeaurora.org>, Mel Gorman <mgorman@suse.de>,
	Laura Abbott <labbott@kernel.org>,
	Chris Goldsworthy <cgoldswo@codeaurora.org>,
	Hridya Valsaraju <hridya@google.com>,
	??rjan Eide <orjan.eide@arm.com>,
	linux-media <linux-media@vger.kernel.org>,
	Suren Baghdasaryan <surenb@google.com>,
	Daniel Mentz <danielmentz@google.com>
Subject: Re: page pools, was Re: [PATCH v9 1/5] drm: Add a sharable drm page-pool implementation
Date: Thu, 8 Jul 2021 09:37:41 +0200	[thread overview]
Message-ID: <798f5d1d-b64c-8c73-bfe6-701893820ff0@amd.com> (raw)
In-Reply-To: <YOZ9JZlwkjyDGti5@infradead.org>

Am 08.07.21 um 06:20 schrieb Christoph Hellwig:
> On Wed, Jul 07, 2021 at 12:35:23PM -0700, John Stultz wrote:
>> So, as Christian mentioned, on the TTM side it's useful, as they are
>> trying to avoid TLB flushes when changing caching attributes.
>>
>> For the dmabuf system heap purposes, the main benefit is moving the
>> page zeroing to the free path, rather than the allocation path. This
>> on its own doesn't save much, but allows us to defer frees (and thus
>> the zeroing) to the background, which can get that work out of the hot
>> path.
> I really do no think that is worth it to fragment the free pages.

And I think functionality like that should be part of the common page 
allocator.

I mean we already have __GFP_ZERO, why not have a background kernel 
thread which zeros free pages when a CPU core is idle? (I'm pretty sure 
we already have that somehow).

Christian.

  reply	other threads:[~2021-07-08  7:38 UTC|newest]

Thread overview: 49+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-06-30  1:34 [PATCH v9 0/5] Generic page pool & deferred freeing for system dmabuf hea John Stultz
2021-06-30  1:34 ` John Stultz
2021-06-30  1:34 ` [PATCH v9 1/5] drm: Add a sharable drm page-pool implementation John Stultz
2021-06-30  1:34   ` John Stultz
2021-06-30  9:10   ` Christian König
2021-06-30  9:10     ` Christian König
2021-06-30 22:24     ` John Stultz
2021-06-30 22:24       ` John Stultz
2021-07-01  6:52       ` Christian König
2021-07-01  6:52         ` Christian König
2021-07-06 21:03         ` John Stultz
2021-07-06 21:03           ` John Stultz
2021-07-06 21:15           ` Daniel Vetter
2021-07-06 21:15             ` Daniel Vetter
2021-07-06 21:19             ` John Stultz
2021-07-06 21:19               ` John Stultz
2021-07-07  6:52               ` Christian König
2021-07-07  6:52                 ` Christian König
2021-07-07  6:38   ` page pools, was " Christoph Hellwig
2021-07-07  7:10     ` Christian König
2021-07-07  7:10       ` Christian König
2021-07-07  7:14       ` Christoph Hellwig
2021-07-07  9:32         ` Christian König
2021-07-07  9:32           ` Christian König
2021-07-07 19:42         ` John Stultz
2021-07-07 19:42           ` John Stultz
2021-07-07 19:42           ` John Stultz
2021-07-07 19:35     ` John Stultz
2021-07-07 19:35       ` John Stultz
2021-07-07 19:35       ` John Stultz
2021-07-08  4:20       ` Christoph Hellwig
2021-07-08  7:37         ` Christian König [this message]
2021-07-08  7:37           ` Christian König
2021-06-30  1:34 ` [PATCH v9 2/5] drm: ttm_pool: Rework ttm_pool to use drm_page_pool John Stultz
2021-06-30  1:34   ` John Stultz
2021-06-30  5:11   ` kernel test robot
2021-06-30  5:11     ` kernel test robot
2021-06-30  1:34 ` [PATCH v9 3/5] dma-buf: system_heap: Add drm pagepool support to system heap John Stultz
2021-06-30  1:34   ` John Stultz
2021-06-30  4:34   ` kernel test robot
2021-06-30  4:34     ` kernel test robot
2021-06-30  5:25   ` kernel test robot
2021-06-30  5:25     ` kernel test robot
2021-06-30  1:34 ` [PATCH v9 4/5] dma-buf: heaps: Add deferred-free-helper library code John Stultz
2021-06-30  1:34   ` John Stultz
2021-06-30  1:34 ` [PATCH v9 5/5] dma-buf: system_heap: Add deferred freeing to the system heap John Stultz
2021-06-30  1:34   ` John Stultz
2021-06-30  9:13 ` [PATCH v9 0/5] Generic page pool & deferred freeing for system dmabuf hea Christian König
2021-06-30  9:13   ` Christian König

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=798f5d1d-b64c-8c73-bfe6-701893820ff0@amd.com \
    --to=christian.koenig@amd.com \
    --cc=Brian.Starkey@arm.com \
    --cc=cgoldswo@codeaurora.org \
    --cc=contact@emersion.fr \
    --cc=daniel@ffwll.ch \
    --cc=danielmentz@google.com \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=ezequiel@collabora.com \
    --cc=hch@infradead.org \
    --cc=hridya@google.com \
    --cc=jajones@nvidia.com \
    --cc=john.stultz@linaro.org \
    --cc=labbott@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-media@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=lmark@codeaurora.org \
    --cc=mgorman@suse.de \
    --cc=orjan.eide@arm.com \
    --cc=robin.murphy@arm.com \
    --cc=sspatil@google.com \
    --cc=sumit.semwal@linaro.org \
    --cc=surenb@google.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.