Messages in this thread | | | Date | Mon, 18 Feb 2019 14:50:02 +0100 | From | Michal Hocko <> | Subject | Re: [PATCH v2] mm: page_mapped: don't assume compound page is huge or THP |
| |
On Mon 18-02-19 14:43:58, Lars Persson wrote: > On Tue, Feb 5, 2019 at 8:14 AM Jan Stancek <jstancek@redhat.com> wrote: > > Hi, > > > > are you using THP (CONFIG_TRANSPARENT_HUGEPAGE)? > > > > The changed line should affect only THP and normal compound pages, > > so a test with THP disabled might be interesting. > > > > > > > > The breakage consists of random processes dying with SIGILL or SIGSEGV > > > when we stress test the system with high memory pressure and explicit > > > memory compaction requested through /proc/sys/vm/compact_memory. > > > Reverting this patch fixes the crashes. > > > > > > We can put some effort on debugging if there are no obvious > > > explanations for this. Keep in mind that this is 32-bit system with > > > HIGHMEM. > > > > Nothing obvious that I can see. I've been trying to reproduce on > > 32-bit x86 Fedora with no luck so far. > > > > Hi > > Thanks for looking in to it. After some deep dive in MM code, I think > it is safe to say this patch was innocent. > > All traces studied so far points to a missing cache coherency call in > mm/migrate.c:migrate_page that is needed only for those evil MIPSes > that lack I/D cache coherency. I will send a write-up to linux-mips > about this. Basically for a non-mapped page it does only a copy of > page data and metadata but no flush_dcache_page() call will be done. > This races with subsequent use of the page.
Please make sure to cc linux-mm for the patch -- Michal Hocko SUSE Labs
| |