On Fri, 13 Mar 2026 13:43:28 +0100
Boris Brezillon <[email protected]> wrote:

> On Fri, 13 Mar 2026 13:18:35 +0100
> Boris Brezillon <[email protected]> wrote:
> 
> > On Fri, 13 Mar 2026 12:04:25 +0000
> > Biju Das <[email protected]> wrote:
> >   
> > > > -----Original Message-----
> > > > From: dri-devel <[email protected]> On Behalf Of 
> > > > Boris Brezillon
> > > > Sent: 13 March 2026 11:57
> > > > Subject: Re: [PATCH v4 5/6] drm/gem-shmem: Track folio accessed/dirty 
> > > > status in mmap
> > > > 
> > > > On Fri, 13 Mar 2026 11:29:47 +0100
> > > > Thomas Zimmermann <[email protected]> wrote:
> > > >       
> > > > > Hi
> > > > >
> > > > > Am 13.03.26 um 11:18 schrieb Boris Brezillon:
> > > > > [...]      
> > > > > >>>>> +       if (drm_WARN_ON(obj->dev, !shmem->pages || page_offset 
> > > > > >>>>> >= num_pages))
> > > > > >>>>> +               return VM_FAULT_SIGBUS;
> > > > > >>>>> +
> > > > > >>>>> +       file_update_time(vma->vm_file);
> > > > > >>>>> +
> > > > > >>>>> +       
> > > > > >>>>> folio_mark_dirty(page_folio(shmem->pages[page_offset]));      
> > > > > > Do we need a folio_mark_dirty_lock() here?      
> > > > >
> > > > > There is a helper for that with some documentation. [1]      
> > > > 
> > > > This [1] seems to solve the problem for me. Still unsure about the 
> > > > folio_mark_dirty_lock vs
> > > > folio_mark_dirty though.
> > > > 
> > > > [1]https://yhbt.net/lore/dri-devel/[email protected]/
> > > >       
> > > 
> > > FYI, I used folio_mark_dirty_lock() still it does not solve the issue 
> > > with weston hang.    
> > 
> > The patch I pointed to has nothing to do with folio_mark_dirty_lock(),
> > It's a bug caused by huge page mapping changes.  
> 
> Scratch that. I had a bunch of other changes on top, and it hangs again
> now that I dropped those.

Seems like it's the combination of huge pages and mkwrite that's
causing issues, if I disable huge pages, it doesn't hang...

Reply via email to