Re: [BUG] Devices breaking due to CONFIG_ZONE_DEVICE
From: Borislav Petkov
Date: Sun Jan 24 2016 - 04:42:32 EST
+ linux-mm
On Fri, Jan 22, 2016 at 10:15:17PM -0800, Dan Williams wrote:
> On Fri, Jan 22, 2016 at 9:47 PM, Dan Williams <dan.j.williams@xxxxxxxxx> wrote:
> > On Fri, Jan 22, 2016 at 8:46 PM, Sudip Mukherjee
> > <sudipm.mukherjee@xxxxxxxxx> wrote:
> >> Hi All,
> >> Commit 033fbae988fc ("mm: ZONE_DEVICE for "device memory"") has
> >> introduced CONFIG_ZONE_DEVICE while sacrificing CONFIG_ZONE_DMA.
> >> Distributions like Ubuntu has started enabling CONFIG_ZONE_DEVICE and
> >> thus breaking parallel port. Please have a look at
> >> https://bugzilla.kernel.org/show_bug.cgi?id=110931 for the bug report.
> >>
> >> Apart from parallel port I can see some sound drivers will also break.
> >>
> >> Now what is the possible solution for this?
> >
> > The tradeoff here is enabling direct-I/O for persistent memory vs
> > support for legacy devices.
> >
> > One possible solution is to alias ZONE_DMA and ZONE_DEVICE. At early
> > boot if pmem is detected disable these legacy devices, or the reverse
> > disable DMA to persistent memory if a legacy device is detected. The
> > latter is a bit harder to do as I think we would want to make the
> > decision early during memory init before we would know if any parallel
> > ports or ISA sound cards are present.
>
> ...another option that might be cleaner is to teach GFP_DMA to get
> memory from a different mechanism. I.e. don't use the mm-zone
> infrastructure to organize that small 16MB pool of memory.
--
Regards/Gruss,
Boris.
SUSE Linux GmbH, GF: Felix ImendÃrffer, Jane Smithard, Graham Norton, HRB 21284 (AG NÃrnberg)
--