[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <kk4fmefhwnis4lwlvssgu6t54o5mkahgyz4cm3wjh2hgtriexh@x3xseg5v7nrm>
Date: Tue, 11 Mar 2025 16:57:49 +1100
From: Alistair Popple <apopple@...dia.com>
To: Stephen Rothwell <sfr@...b.auug.org.au>
Cc: Andrew Morton <akpm@...ux-foundation.org>,
Dave Airlie <airlied@...hat.com>, Lucas De Marchi <lucas.demarchi@...el.com>,
Thomas Hellström <thomas.hellstrom@...ux.intel.com>, DRM XE List <intel-xe@...ts.freedesktop.org>,
Balbir Singh <balbirs@...dia.com>, Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
Linux Next Mailing List <linux-next@...r.kernel.org>, Matthew Brost <matthew.brost@...el.com>,
DRI <dri-devel@...ts.freedesktop.org>
Subject: Re: linux-next: manual merge of the drm-xe tree with the mm tree
On Tue, Mar 11, 2025 at 01:12:14PM +1100, Stephen Rothwell wrote:
> Hi all,
>
> On Fri, 7 Mar 2025 12:29:54 +1100 Stephen Rothwell <sfr@...b.auug.org.au> wrote:
> >
> > Hi all,
> >
> > Today's linux-next merge of the drm-xe tree got a conflict in:
> >
> > mm/memory.c
> >
> > between commit:
> >
> > 089b22f60a0f ("mm: allow compound zone device pages")
> >
> > from the mm-unstable branch of the mm tree and commit:
> >
> > 1afaeb8293c9 ("mm/migrate: Trylock device page in do_swap_page")
> >
> > from the drm-xe tree.
I'm not sure what the process is here, but having either reviewed or authored
these patches I can add that the fix up carried below looks correct.
- Alistair
> > I fixed it up (see below) and can carry the fix as necessary. This
> > is now fixed as far as linux-next is concerned, but any non trivial
> > conflicts should be mentioned to your upstream maintainer when your tree
> > is submitted for merging. You may also want to consider cooperating
> > with the maintainer of the conflicting tree to minimise any particularly
> > complex conflicts.
> >
> > diff --cc mm/memory.c
> > index d21f6cded7e3,59b804f4bf3f..000000000000
> > --- a/mm/memory.c
> > +++ b/mm/memory.c
> > @@@ -4473,11 -4348,15 +4473,16 @@@ vm_fault_t do_swap_page(struct vm_faul
> > * Get a page reference while we know the page can't be
> > * freed.
> > */
> > - get_page(vmf->page);
> > - pte_unmap_unlock(vmf->pte, vmf->ptl);
> > - pgmap = page_pgmap(vmf->page);
> > - ret = pgmap->ops->migrate_to_ram(vmf);
> > - put_page(vmf->page);
> > + if (trylock_page(vmf->page)) {
> > + get_page(vmf->page);
> > + pte_unmap_unlock(vmf->pte, vmf->ptl);
> > - ret = vmf->page->pgmap->ops->migrate_to_ram(vmf);
> > ++ pgmap = page_pgmap(vmf->page);
> > ++ ret = pgmap->ops->migrate_to_ram(vmf);
> > + unlock_page(vmf->page);
> > + put_page(vmf->page);
> > + } else {
> > + pte_unmap_unlock(vmf->pte, vmf->ptl);
> > + }
> > } else if (is_hwpoison_entry(entry)) {
> > ret = VM_FAULT_HWPOISON;
> > } else if (is_pte_marker_entry(entry)) {
>
> This is now conflict between the mm tree and the drm tree.
>
> --
> Cheers,
> Stephen Rothwell
Powered by blists - more mailing lists