linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: Dan Williams <dan.j.williams@intel.com>
To: Christoph Hellwig <hch@lst.de>
Cc: "Andrew Morton" <akpm@linux-foundation.org>,
	"Felix Kuehling" <Felix.Kuehling@amd.com>,
	"Alex Deucher" <alexander.deucher@amd.com>,
	"Christian König" <christian.koenig@amd.com>,
	"Pan, Xinhui" <Xinhui.Pan@amd.com>,
	"Ben Skeggs" <bskeggs@redhat.com>,
	"Karol Herbst" <kherbst@redhat.com>,
	"Lyude Paul" <lyude@redhat.com>, "Jason Gunthorpe" <jgg@ziepe.ca>,
	"Alistair Popple" <apopple@nvidia.com>,
	"Logan Gunthorpe" <logang@deltatee.com>,
	"Ralph Campbell" <rcampbell@nvidia.com>,
	"Linux Kernel Mailing List" <linux-kernel@vger.kernel.org>,
	"amd-gfx list" <amd-gfx@lists.freedesktop.org>,
	"Maling list - DRI developers" <dri-devel@lists.freedesktop.org>,
	nouveau@lists.freedesktop.org,
	"Linux NVDIMM" <nvdimm@lists.linux.dev>,
	"Linux MM" <linux-mm@kvack.org>
Subject: Re: [PATCH 7/8] mm: remove the extra ZONE_DEVICE struct page refcount
Date: Tue, 8 Feb 2022 19:30:11 -0800	[thread overview]
Message-ID: <CAPcyv4h_axDTmkZ35KFfCdzMoOp8V3dc6btYGq6gCj1OmLXM=g@mail.gmail.com> (raw)
In-Reply-To: <20220207063249.1833066-8-hch@lst.de>

On Sun, Feb 6, 2022 at 10:33 PM Christoph Hellwig <hch@lst.de> wrote:
[..]
> @@ -500,28 +482,27 @@ void free_devmap_managed_page(struct page *page)
>          */
>         page->mapping = NULL;
>         page->pgmap->ops->page_free(page);
> +
> +       /*
> +        * Reset the page count to 1 to prepare for handing out the page again.
> +        */
> +       set_page_count(page, 1);

Interesting. I had expected that to really fix the refcount problem
that fs/dax.c would need to start taking real page references as pages
were added to a mapping, just like page cache.

This looks ok to me, and passes my tests. So given I'm still working
my way back to fixing the references properly I'm ok for this hack to
replace the more broken hack that is there presently.

Reviewed-by: Dan Williams <dan.j.williams@intel.com>


  parent reply	other threads:[~2022-02-09  3:30 UTC|newest]

Thread overview: 47+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-02-07  6:32 start sorting out the ZONE_DEVICE refcount mess Christoph Hellwig
2022-02-07  6:32 ` [PATCH 1/8] mm: remove a pointless CONFIG_ZONE_DEVICE check in memremap_pages Christoph Hellwig
2022-02-07 18:08   ` Dan Williams
2022-02-07 19:22   ` Jason Gunthorpe
2022-02-08  7:17   ` Chaitanya Kulkarni
2022-02-08  8:06   ` Muchun Song
2022-02-07  6:32 ` [PATCH 2/8] mm: remove the __KERNEL__ guard from <linux/mm.h> Christoph Hellwig
2022-02-07 18:08   ` Dan Williams
2022-02-07 19:26   ` Jason Gunthorpe
2022-02-08  7:21   ` Chaitanya Kulkarni
2022-02-08  8:07   ` Muchun Song
2022-02-07  6:32 ` [PATCH 3/8] mm: remove pointless includes from <linux/hmm.h> Christoph Hellwig
2022-02-07 14:01   ` Jason Gunthorpe
2022-02-08  7:27   ` Chaitanya Kulkarni
2022-02-07  6:32 ` [PATCH 4/8] mm: move free_devmap_managed_page to memremap.c Christoph Hellwig
2022-02-07 19:06   ` Dan Williams
2022-02-07 19:27   ` Jason Gunthorpe
2022-02-08  7:34   ` Chaitanya Kulkarni
2022-02-08  8:09   ` Muchun Song
2022-02-07  6:32 ` [PATCH 5/8] mm: simplify freeing of devmap managed pages Christoph Hellwig
2022-02-07 19:34   ` Jason Gunthorpe
2022-02-07 23:42   ` Dan Williams
2022-02-08  7:50   ` Chaitanya Kulkarni
2022-02-07  6:32 ` [PATCH 6/8] mm: don't include <linux/memremap.h> in <linux/mm.h> Christoph Hellwig
2022-02-07 17:38   ` Logan Gunthorpe
2022-02-07 19:35   ` Jason Gunthorpe
2022-02-07 21:19   ` Felix Kuehling
2022-02-08  6:46     ` Christoph Hellwig
2022-02-09 17:48     ` Christoph Hellwig
2022-02-10  2:10       ` Alistair Popple
2022-02-10  6:45         ` Christoph Hellwig
2022-02-10 21:00       ` Felix Kuehling
2022-02-07 23:49   ` Dan Williams
2022-02-08 23:53     ` Dan Williams
2022-02-09  6:22       ` Christoph Hellwig
2022-02-07  6:32 ` [PATCH 7/8] mm: remove the extra ZONE_DEVICE struct page refcount Christoph Hellwig
2022-02-07 19:21   ` Jason Gunthorpe
2022-02-08  2:25   ` Ralph Campbell
2022-02-09  3:30   ` Dan Williams [this message]
2022-02-09  6:23     ` Christoph Hellwig
2022-02-09 12:29       ` Jason Gunthorpe
2022-02-09 13:53         ` Christoph Hellwig
2022-02-09 14:14           ` Jason Gunthorpe
2022-02-07  6:32 ` [PATCH 8/8] fsdax: depend on ZONE_DEVICE || FS_DAX_LIMITED Christoph Hellwig
2022-02-07 19:36   ` Jason Gunthorpe
2022-02-07 23:51 ` start sorting out the ZONE_DEVICE refcount mess Logan Gunthorpe
2022-02-08  3:03 ` Miaohe Lin

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='CAPcyv4h_axDTmkZ35KFfCdzMoOp8V3dc6btYGq6gCj1OmLXM=g@mail.gmail.com' \
    --to=dan.j.williams@intel.com \
    --cc=Felix.Kuehling@amd.com \
    --cc=Xinhui.Pan@amd.com \
    --cc=akpm@linux-foundation.org \
    --cc=alexander.deucher@amd.com \
    --cc=amd-gfx@lists.freedesktop.org \
    --cc=apopple@nvidia.com \
    --cc=bskeggs@redhat.com \
    --cc=christian.koenig@amd.com \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=hch@lst.de \
    --cc=jgg@ziepe.ca \
    --cc=kherbst@redhat.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=logang@deltatee.com \
    --cc=lyude@redhat.com \
    --cc=nouveau@lists.freedesktop.org \
    --cc=nvdimm@lists.linux.dev \
    --cc=rcampbell@nvidia.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 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).