<br><br><div class="gmail_quote">On Tue, Jun 26, 2012 at 12:41 AM, Dave Hylands <span dir="ltr"><<a href="mailto:dhylands@gmail.com" target="_blank">dhylands@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Hi Subbu,<br>
<br>
On Mon, Jun 25, 2012 at 7:45 PM, Subramaniam Appadodharana<br>
<<a href="mailto:c.a.subramaniam@gmail.com">c.a.subramaniam@gmail.com</a>> wrote:<br>
...snip...<br>
<div class="im">>> However, if you call vmalloc and lets suppose that vmalloc just<br>
>> happens to return 0xE0000000. The physical address of the first page<br>
>> might be 0xD2345000.<br>
>><br>
>> What's important is that the physical pages which back up the vmalloc<br>
>> area all come from the kernel direct mapped area. They won't ever be<br>
>> backed by pages from high-memory. So the physical addresses will all<br>
>> be in the range 0x40000000 thru 0x5FFFFFFF.<br>
>><br>
> This is the one that I had a completely wrong understanding of!!!!!!!<br>
> I understand from the above statement that the vmalloc'ed virtual address<br>
> will _ALWAYS_ correspond to a physical address from the lowmem region! I<br>
> was under the impression that the carved out region for the vmalloc,<br>
> is the one that would back any vmalloc'ed virtual address, which is<br>
> absolutely wrong by what you are saying.<br>
<br>
</div>Actually, I was the one that was wrong. vmalloc pages can come from<br>
low or highmem.<br>
<div class="im"></div></blockquote><div>Thanks for clarifying! Not a problem.</div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im"> </div></blockquote>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">
> Now this also means that increasing vmalloc inadvertently reduces lowmem.<br>
> Why is this designed such a way?<br>
<br>
</div>It may or may not depending on the amount of physical memory and the<br>
size of the vmalloc space.<br>
<br>
vmalloc space will normally increase vmalloc_end, which won't reduce lowmem.<br>
If the end can't advance any further, then I believe that the start<br>
can be reduced. This will reduce lowmem, if the lowmem overlaps with<br>
vmalloc memory.<br>
<div class="im"><br></div></blockquote><div>Okay! got that! </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">
> Essentially, the idea that we increase vmalloc is because we expect more<br>
> memory to be consumed via vmalloc<br>
> calls, and hence we might need more physical address backing. But increasing<br>
> vmalloc decreases low mem, which would also mean that we have less backing.<br>
> Am I missing something here too :)?<br>
<br>
</div>No - that was my mistake.<br>
<div class="HOEnZb"><div class="h5"><br></div></div></blockquote><div>No problem again. Thanks for correcting it! </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="HOEnZb"><div class="h5">
--<br>
Dave Hylands<br>
Shuswap, BC, Canada<br>
<a href="http://www.davehylands.com" target="_blank">http://www.davehylands.com</a><br>
</div></div></blockquote></div><br>