mirror of
https://github.com/genodelabs/genode.git
synced 2025-01-18 18:56:29 +00:00
nic_router: optimize handling of invalid domains
Dissolve and destroy the invalid domain first before deinitializing all domains for the next round. This way, the deinitialization is not done twice for the invalid domain. Issue #2840
This commit is contained in:
parent
27155a507f
commit
ff7bc0ac6c
@ -96,16 +96,16 @@ Configuration::Configuration(Env &env,
|
||||
}
|
||||
catch (Retry_without_domain exception) {
|
||||
|
||||
/* deinitialize all domains again */
|
||||
/* destroy domain that became invalid during initialization */
|
||||
_domains.remove(exception.domain);
|
||||
destroy(_alloc, &exception.domain);
|
||||
|
||||
/* deinitialize the remaining domains again */
|
||||
_domains.for_each([&] (Domain &domain) {
|
||||
domain.deinit();
|
||||
if (_verbose) {
|
||||
log("[", domain, "] deinitiated domain"); }
|
||||
});
|
||||
/* destroy domain that became invalid during initialization */
|
||||
_domains.remove(exception.domain);
|
||||
destroy(_alloc, &exception.domain);
|
||||
|
||||
/* retry to initialize the remaining domains */
|
||||
continue;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user