core: rework socket/service GC logic
authorLennart Poettering <lennart@poettering.net>
Fri, 29 Apr 2016 09:14:03 +0000 (11:14 +0200)
committerLennart Poettering <lennart@poettering.net>
Fri, 29 Apr 2016 14:27:49 +0000 (16:27 +0200)
commite4f673174e54f1f187ec78f5ac908a62fbeb1236
tree13ae7f2a5a1b1294e2c525879c4867d9124d498f
parentbb5049ae24991b45f2aa38d90d4f6e0f7e14d53c
core: rework socket/service GC logic

There's no need to set the no_gc bit for service units that socket units
prepare, as we always keep a proper reference (as maintained by unit_ref_set())
on them, and such references are honoured by the GC logic anyway. Moreover,
explicitly setting the no_gc bit is problematic if the socket gets GC'ed for a
reason, as the service might then leak with the bit set.
src/core/socket.c