Fixes to the new pagetable page allocation code.

Alexandr Rybalko ray at dlink.ua
Wed May 26 09:25:55 UTC 2010


Hi,

On Wed, 26 May 2010 10:33:58 +0530
"C. Jayachandran" <c.jayachandran at gmail.com> wrote:

>> The attached patch (also at
>> http://people.freebsd.org/~jchandra/for-review/pmap-alloc-page-fix.diff)
>> has two fixes for the new pagetable page allocation code, one to
>> handle NULL return from the allocating function, and another to call
>> VM_WAIT in cases we can wait. It also removes the variable 'req' left
>> over from an earlier change.
>> 
>> Please let me know if you have any comments...
>> 
>> JC.

>> +	for (;;) {
>> +		m = vm_phys_alloc_contig(1, 0, MIPS_KSEG0_LARGEST_PHYS,
>> +		    PAGE_SIZE, PAGE_SIZE);
>> +		if (m != NULL)
>> +			break;
>> +		if ((wait & M_WAITOK) == 0)
>> +			return (NULL);
>> +		VM_WAIT;
>> +	}

So under low memory, subsystem will blocked forever if set M_WAITOK?
I don`t think is good idea.


-- 
Alexandr Rybalko <ray at dlink.ua> 
aka Alex RAY <ray at ddteam.net>


More information about the freebsd-mips mailing list