← Back to team overview

kernel-packages team mailing list archive

[Bug 1563293] [NEW] linux: exclude ZONE_DEVICE from GFP_ZONE_TABLE

 

Public bug reported:

mm: exclude ZONE_DEVICE from GFP_ZONE_TABLE
    
    ZONE_DEVICE (merged in 4.3) and ZONE_CMA (proposed) are examples of new
    mm zones that are bumping up against the current maximum limit of 4
    zones, i.e.  2 bits in page->flags for the GFP_ZONE_TABLE.
    
    The GFP_ZONE_TABLE poses an interesting constraint since
    include/linux/gfp.h gets included by the 32-bit portion of a 64-bit
    build.  We need to be careful to only build the table for zones that
    have a corresponding gfp_t flag.  GFP_ZONES_SHIFT is introduced for this
    purpose.  This patch does not attempt to solve the problem of adding a
    new zone that also has a corresponding GFP_ flag.
    
    Vlastimil points out that ZONE_DEVICE, by depending on x86_64 and
    SPARSEMEM_VMEMMAP implies that SECTIONS_WIDTH is zero.  In other words
    even though ZONE_DEVICE does not fit in GFP_ZONE_TABLE it is free to
    consume another bit in page->flags (expand ZONES_WIDTH) with room to
    spare.

** Affects: linux (Ubuntu)
     Importance: Undecided
     Assignee: Tim Gardner (timg-tpi)
         Status: Fix Committed

** Affects: linux (Ubuntu Xenial)
     Importance: Undecided
     Assignee: Tim Gardner (timg-tpi)
         Status: Fix Committed

** Also affects: linux (Ubuntu Xenial)
   Importance: Undecided
       Status: New

** Changed in: linux (Ubuntu Xenial)
       Status: New => Fix Committed

** Changed in: linux (Ubuntu Xenial)
     Assignee: (unassigned) => Tim Gardner (timg-tpi)

-- 
You received this bug notification because you are a member of Kernel
Packages, which is subscribed to linux in Ubuntu.
https://bugs.launchpad.net/bugs/1563293

Title:
  linux: exclude ZONE_DEVICE from GFP_ZONE_TABLE

Status in linux package in Ubuntu:
  Fix Committed
Status in linux source package in Xenial:
  Fix Committed

Bug description:
  mm: exclude ZONE_DEVICE from GFP_ZONE_TABLE
      
      ZONE_DEVICE (merged in 4.3) and ZONE_CMA (proposed) are examples of new
      mm zones that are bumping up against the current maximum limit of 4
      zones, i.e.  2 bits in page->flags for the GFP_ZONE_TABLE.
      
      The GFP_ZONE_TABLE poses an interesting constraint since
      include/linux/gfp.h gets included by the 32-bit portion of a 64-bit
      build.  We need to be careful to only build the table for zones that
      have a corresponding gfp_t flag.  GFP_ZONES_SHIFT is introduced for this
      purpose.  This patch does not attempt to solve the problem of adding a
      new zone that also has a corresponding GFP_ flag.
      
      Vlastimil points out that ZONE_DEVICE, by depending on x86_64 and
      SPARSEMEM_VMEMMAP implies that SECTIONS_WIDTH is zero.  In other words
      even though ZONE_DEVICE does not fit in GFP_ZONE_TABLE it is free to
      consume another bit in page->flags (expand ZONES_WIDTH) with room to
      spare.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1563293/+subscriptions


Follow ups