While investigating about a freeze when loading pf, PR 209475, Olivier has suspected the hash table allocation to be responsible of the loading freeze.
Reading the code, I noticed that the allocation process within pf_initialize() function sets the M_WAITOK flag. This way, the intialisation process might hang to wait for the requested resources.
Moreover, it sounds like requesting more than the total amount of ram causes a panic.
What should happen if the request *can't* be performed?
Reading malloc(9), malloc never returns NULL with this flag set.
So, the process will wait indefinitely?
Reading the code, I noticed that the allocation process within pf_initialize() function sets the M_WAITOK flag. This way, the intialisation process might hang to wait for the requested resources.
Moreover, it sounds like requesting more than the total amount of ram causes a panic.
What should happen if the request *can't* be performed?
Reading malloc(9), malloc never returns NULL with this flag set.
So, the process will wait indefinitely?
Last edited by a moderator: