lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Date:	Tue, 29 Sep 2009 16:47:45 -0700
From:	Sean Brandenburger <seanbrandenburger@...il.com>
To:	linux-kernel@...r.kernel.org
Subject: In PAE enabled kernel, ioremap cannot handle physical address > 32bit

   I have a PAE enabled kernel. I am trying to ioremap a physical address
which is above 4GB area. It is noticed that the ioremap maps to the 32bit
truncated physical address.

   Even though __ioremap_caller takes in phys_addr of size
resource_size_t, the macro PAGE_SHIFT, PAGE_MASK truncates the
size to 32bit on the physical address operand it works on (for e.g. pfn,
phys_addr, last_addr, etc. below)

         /*
          * Don't allow anybody to remap normal RAM that we're using..
          */
         for (pfn = phys_addr >> PAGE_SHIFT;
                                 (pfn << PAGE_SHIFT) < (last_addr & PAGE_MASK);
                                 pfn++) {

   Even after fixing the above lines, still the issue is there. Looks
like there
is lot more places fixes to handle greater than 32bit need to be done.
I searched the past mailing list and did not find any fixes. I did come across
suggestions not to use PAGE_MASK on Physical address but to use
PHYSICAL_PAGE_MASK. I did come cross other fixes related to handling
physical address greater than 32bit but not any fixes for ioremap.

   Does any of you know if this issue has been fixed? If not, I will spend
time to fix it.

Thanks
Sean
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ