Re: vmalloc size

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





On Mon, Jun 25, 2012 at 3:00 PM, Dave Hylands <dhylands@xxxxxxxxx> wrote:
Hi Subbu,

On Mon, Jun 25, 2012 at 11:18 AM, Subramaniam Appadodharana
<c.a.subramaniam@xxxxxxxxx> wrote:
>
>
> On Mon, Jun 25, 2012 at 1:00 PM, Mulyadi Santosa <mulyadi.santosa@xxxxxxxxx>
> wrote:
>>
>> Hi.... :)
>>
>> On Sun, Jun 24, 2012 at 1:32 AM, Subramaniam Appadodharana
>> <c.a.subramaniam@xxxxxxxxx> wrote:
>> > Hi All,
>> > I am trying to understand how vmalloc memory is reserved in kernel. In
>> > 3.4+
>> > latest kernel, the default vmalloc size is 240MB.
>>
>> vmalloc reserved address range, you meant?
>>
>> >Is this a carveout from
>> > the 1GiB memory that kernel has?
>>
>> Yup....
>>
>> > In other words can I do a __pa(VMALLOC_START) or __pa(VMALLOC_END)
>> > or __pa(highmemory) irrespective of the vmalloc size that I request, say
>> >  doing vmalloc=1G?
>>
>> uhm....not sure....vmalloc-ed is not physically contigous. Also, it is
>> set up far after identity mapping setup. So, the value you get from
>> __pa() IMHO would be likely invalid or has no meaning.
>>
> I thought that, as log as we know that the address is within  the 1GiB, we
> could get the
> pa of the virtual address using __pa(). Is this not the case?

__pa only works on kernel direct addresses.

__pa doesn't work on the addresses from vmalloc

Using __pa on VMALLOC_START or VMALLOC_END doesn't really make sense.
If there were any physical memory there, it would be highmem.

Okay, but my intention was to just print out the pa for the VMALLOC_START and END, just to know where they are.
And I thought they will work. no?

__pa should only be used on memory from PAGE_OFFSET through to (high_memory - 1)

--
Dave Hylands
Shuswap, BC, Canada
http://www.davehylands.com

_______________________________________________
Kernelnewbies mailing list
Kernelnewbies@xxxxxxxxxxxxxxxxx
http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies

[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux