← Back to team overview

kernel-packages team mailing list archive

[Bug 1549601] [NEW] [Hyper-V] x86, pageattr: prevent overflow in slow_virt_to_phys() for X86_PAE

 

Public bug reported:

https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=d1cd1210834649ce1ca6bafe5ac25d2f40331343

x86, pageattr: Prevent overflow in slow_virt_to_phys() for X86_PAE
pte_pfn() returns a PFN of long (32 bits in 32-PAE), so "long <<
PAGE_SHIFT" will overflow for PFNs above 4GB.

Due to this issue, some Linux 32-PAE distros, running as guests on Hyper-V,
with 5GB memory assigned, can't load the netvsc driver successfully and
hence the synthetic network device can't work (we can use the kernel parameter
mem=3000M to work around the issue).

Cast pte_pfn() to phys_addr_t before shifting.

** Affects: linux (Ubuntu)
     Importance: Undecided
         Status: New

-- 
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/1549601

Title:
  [Hyper-V] x86,pageattr: prevent overflow in slow_virt_to_phys() for
  X86_PAE

Status in linux package in Ubuntu:
  New

Bug description:
  https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=d1cd1210834649ce1ca6bafe5ac25d2f40331343

  x86, pageattr: Prevent overflow in slow_virt_to_phys() for X86_PAE
  pte_pfn() returns a PFN of long (32 bits in 32-PAE), so "long <<
  PAGE_SHIFT" will overflow for PFNs above 4GB.

  Due to this issue, some Linux 32-PAE distros, running as guests on Hyper-V,
  with 5GB memory assigned, can't load the netvsc driver successfully and
  hence the synthetic network device can't work (we can use the kernel parameter
  mem=3000M to work around the issue).

  Cast pte_pfn() to phys_addr_t before shifting.

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


Follow ups