Hi,

I was debugging the issue by viewing the free ques "sysctl vm.phys_free" and 
also using "show page" in ddb.
The inactive memory is never being released back into the free que. 
I thought that when inactive memory reaches a certain threshold that the kernel 
will start reclaiming and move it to the free list?
In my program this is not happening, the program uses free memory 
(contigmalloc), and then it is put into the inactive que (contiigfree) when the 
program frees it.
This inactive memory is never released by the kernel, and the inactive que 
grows until all the memory is in this que.
I  have attached a xml sheet that shows the memory usage in the system.

Ciunas.

-----Original Message-----
From: Konstantin Belousov [mailto:kostik...@gmail.com] 
Sent: Friday, October 26, 2018 9:13 PM
To: Bennett, Ciunas <ciunas.benn...@intel.com>
Cc: freebsd-stable@freebsd.org
Subject: Re: Possible memory leak in the kernel (contigmalloc)

On Wed, Oct 24, 2018 at 04:27:52PM +0000, Bennett, Ciunas wrote:
> Hello,
> 
> I have encountered an issue with a kernel application that I have 
> written, the issue might be caused by a memory leak in the kernel.
> The application allocates and deallocates contiguous memory using
> contigmalloc() and contigfree(). The application will fail after a 
> period of time because there is not enough free contiguous memory 
> left. There could be an issue with the freeing of memory when using 
> the contigfree() function.
>

It is unlikely that there is an issue with a leak, but I would be not surprised 
if your allocation/free pattern would cause fragmentation on free lists that 
results in contigmalloc(9) failures after.

Look at the vmstat -z/vmstat -m output to see uma and malloc stats.
More interesting for your case can be the output from
        sysctl vm.phys_free
which provides information about the free queues and order of free pages on 
them.
--------------------------------------------------------------
Intel Research and Development Ireland Limited
Registered in Ireland
Registered Office: Collinstown Industrial Park, Leixlip, County Kildare
Registered Number: 308263


This e-mail and any attachments may contain confidential material for the sole
use of the intended recipient(s). Any review or distribution by others is
strictly prohibited. If you are not the intended recipient, please contact the
sender and delete all copies.
_______________________________________________
freebsd-stable@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to "freebsd-stable-unsubscr...@freebsd.org"

Reply via email to