Re: Re: are all memory addresses in ZONE_NORMAL "logical" addresses?

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

 



Hello Pradeep..

This is actually a bit beyond the original topic asked by Robert... so if you want, maybe you can start a new thread instead. And here's my thought...

Don't you think it should be NORMAL zone first instead of highmem,
unless normal zone is under pressure though?
Because accessing HIGHMEM is indeed a small hit because it involves
setting temporary kernel mappings and resetting them after use.
Correct, but IMO if those pages are allocated for user space, then it wouldn't be too much trouble. Kernel finds free pages in highmem, assign them to user space process plus setting the correct PTEs. Assuming this is 32 bit x86 with 3:1 VM split, there is 3G address space ready to map some (or maybe all) the highmem pages.

Between locating free pages and assign them to process, IIRC there is slight perfomance hit because the kernel needs to zero them. Logically, before zeroing those pages, you need to temporarily map them and later unmap them.
Should you use the NORMAL zone absolutely, unless you know NORMAL zone
is already under heavy pressure?
Maybe MM folks know about it whole lot better, but I think if highmem has plenty of free pages and kernel don't need to access them so frequently, allocating from highmem is good choice. However, in general, I think we should think about it case by case.

regards,

Mulyadi


--
To unsubscribe from this list: send an email with
"unsubscribe kernelnewbies" to ecartis@xxxxxxxxxxxx
Please read the FAQ at http://kernelnewbies.org/FAQ


[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