mirror of
https://github.com/morgan9e/systemd
synced 2026-04-14 16:37:19 +09:00
core: use FOREACH_ARRAY and RET_GATHER more
This commit is contained in:
@@ -4391,19 +4391,19 @@ int unit_reset_cpu_accounting(Unit *u) {
|
||||
}
|
||||
|
||||
int unit_reset_ip_accounting(Unit *u) {
|
||||
int r = 0, q = 0;
|
||||
int r = 0;
|
||||
|
||||
assert(u);
|
||||
|
||||
if (u->ip_accounting_ingress_map_fd >= 0)
|
||||
r = bpf_firewall_reset_accounting(u->ip_accounting_ingress_map_fd);
|
||||
RET_GATHER(r, bpf_firewall_reset_accounting(u->ip_accounting_ingress_map_fd));
|
||||
|
||||
if (u->ip_accounting_egress_map_fd >= 0)
|
||||
q = bpf_firewall_reset_accounting(u->ip_accounting_egress_map_fd);
|
||||
RET_GATHER(r, bpf_firewall_reset_accounting(u->ip_accounting_egress_map_fd));
|
||||
|
||||
zero(u->ip_accounting_extra);
|
||||
|
||||
return r < 0 ? r : q;
|
||||
return r;
|
||||
}
|
||||
|
||||
int unit_reset_io_accounting(Unit *u) {
|
||||
@@ -4411,8 +4411,8 @@ int unit_reset_io_accounting(Unit *u) {
|
||||
|
||||
assert(u);
|
||||
|
||||
for (CGroupIOAccountingMetric i = 0; i < _CGROUP_IO_ACCOUNTING_METRIC_MAX; i++)
|
||||
u->io_accounting_last[i] = UINT64_MAX;
|
||||
FOREACH_ARRAY(i, u->io_accounting_last, _CGROUP_IO_ACCOUNTING_METRIC_MAX)
|
||||
*i = UINT64_MAX;
|
||||
|
||||
r = unit_get_io_accounting_raw(u, u->io_accounting_base);
|
||||
if (r < 0) {
|
||||
@@ -4424,15 +4424,15 @@ int unit_reset_io_accounting(Unit *u) {
|
||||
}
|
||||
|
||||
int unit_reset_accounting(Unit *u) {
|
||||
int r, q, v;
|
||||
int r = 0;
|
||||
|
||||
assert(u);
|
||||
|
||||
r = unit_reset_cpu_accounting(u);
|
||||
q = unit_reset_io_accounting(u);
|
||||
v = unit_reset_ip_accounting(u);
|
||||
RET_GATHER(r, unit_reset_cpu_accounting(u));
|
||||
RET_GATHER(r, unit_reset_io_accounting(u));
|
||||
RET_GATHER(r, unit_reset_ip_accounting(u));
|
||||
|
||||
return r < 0 ? r : q < 0 ? q : v;
|
||||
return r;
|
||||
}
|
||||
|
||||
void unit_invalidate_cgroup(Unit *u, CGroupMask m) {
|
||||
|
||||
@@ -121,8 +121,9 @@ Unit* unit_new(Manager *m, size_t size) {
|
||||
|
||||
u->ip_accounting_ingress_map_fd = -EBADF;
|
||||
u->ip_accounting_egress_map_fd = -EBADF;
|
||||
for (CGroupIOAccountingMetric i = 0; i < _CGROUP_IO_ACCOUNTING_METRIC_MAX; i++)
|
||||
u->io_accounting_last[i] = UINT64_MAX;
|
||||
|
||||
FOREACH_ARRAY(i, u->io_accounting_last, _CGROUP_IO_ACCOUNTING_METRIC_MAX)
|
||||
*i = UINT64_MAX;
|
||||
|
||||
u->ipv4_allow_map_fd = -EBADF;
|
||||
u->ipv6_allow_map_fd = -EBADF;
|
||||
|
||||
Reference in New Issue
Block a user