>>> "CHEN, Jack" <zenghuchen@xxxxxxxxxxx> schrieb am 30.06.2021 um 13:39 in Nachricht <BYAPR07MB5927C804D4314E586DCB3332D4019@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx> > Hi, > > I happen to see to a fix in system, which adds a space checking before > reload/reexec. > From the code: > Require 16MiB free in /run/systemd for reloading/reexecing. After all we > need to serialize our state there, and if > * we can't we'll fail badly > #define RELOAD_DISK_SPACE_MIN (UINT64_C(16) * UINT64_C(1024) * > UINT64_C(1024)) > And I got further explanation from poettering: > it's a "safety buffer", see commit msg of the fix. It's set to 16M because > it has to be set to something, and it sounded like a reasonably value, and so > far we got no feedback to the contrary > > However, just for “serialize our state there”, literally, there is no need > for such a big space (16M). > There is no problem for PC. But for embedded devices, 16M is quite prodigal. > And in my test, even 1M free space would allow reloading/reexecing to work > normally. > > Shall we remove this restriction? (Removing I mean we just check if there is > free space or not) Or at least lower the threshold. > It is not good to forbid reloading/reexecing when there is enough free > space, just because it is smaller than the threshold (16M)。 The obvious solution seems to be: 1) Monitor the actual memory usage across different platforms 2) Add 25% to set the final value Or if really paranoid: use four times the maximum measured value ;-) > > Best Regards > Zenghu Chen _______________________________________________ systemd-devel mailing list systemd-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/systemd-devel