unbound-1.19.0 alloc_reg_obtain() core dumps

Yorgos Thessalonikefs yorgos at nlnetlabs.nl
Tue Feb 20 09:57:30 UTC 2024


Hi Sami,

An extra question while looking around; when reloading, do you maybe use 
the reload_keep_cache command?

Best regards,
-- Yorgos

On 19/02/2024 12:38, Yorgos Thessalonikefs wrote:
> Hi Sami,
> 
> I believe this alloc_reg_release() needs to be there and I don't see it 
> being called twice on failure, unless I miss something.
> 
> As for the cores I started looking around; the latest ones seem really 
> weird especially with pointers that seem to change between calls.
> 
> Did you find out if there was a reason systemctl restarts would happen 
> unexpectedly, so that we can rule that out?
> 
> Best regards,
> -- Yorgos
> 
> On 15/02/2024 08:52, Sami Kerola wrote:
>> On Fri, 9 Feb 2024 at 12:59, Yorgos Thessalonikefs 
>> <yorgos at nlnetlabs.nl> wrote:
>>> I am quiet because I have nothing to share at the moment but thanks for
>>> these!
>>
>> Hi Yorgos, et.al.,
>>
>> I wonder could the issue be similar (but not the same) as earlier 
>> issue. Perhaps
>> something like:
>>
>> From: Sami Kerola <kerolasa at cloudflare.com>
>> Subject: [PATCH] - Fix core dumps caused by double free
>> Organization: Cloudflare
>>
>> Similar-to: 
>> https://github.com/NLnetLabs/unbound/commit/cd22fdc28d35e3a659c89f346ff5e36b64e44845
>> ---
>>   services/outside_network.c | 1 -
>>   1 file changed, 1 deletion(-)
>>
>> diff --git a/services/outside_network.c b/services/outside_network.c
>> index 1f89740d..ff2ce0e3 100644
>> --- a/services/outside_network.c
>> +++ b/services/outside_network.c
>> @@ -3461,7 +3461,6 @@ outnet_serviced_query(struct outside_network* 
>> outnet,
>>                                          ub_random_max(env->rnd,
>>                                          env->cfg->ratelimit_factor) 
>> != 1) {
>>                                          *was_ratelimited = 1;
>> -                                       alloc_reg_release(env->alloc, 
>> region);
>>                                          return NULL;
>>                                  }
>>                                  log_nametypeclass(VERB_ALGO,


More information about the Unbound-users mailing list