[systemd-devel] systemd-213: regression with zram

Alexander E. Patrakov patrakov at gmail.com
Mon Jun 9 07:31:54 PDT 2014


09.06.2014 20:11, Kay Sievers wrote:
> On Mon, Jun 9, 2014 at 4:02 PM, Alexander E. Patrakov
> <patrakov at gmail.com> wrote:
>> 09.06.2014 19:26, Kai Krakow wrote:
>>>
>>> Alexander E. Patrakov <patrakov at gmail.com> schrieb:
>>>
>>>> I have upgraded systemd from 212 to 213 on two my Gentoo boxes, and see
>>>> the same regression here: zram swap space does not get activated. It
>>>> looks like systemd tries to activate swap before the RUN+=mkswap part of
>>>> the udev rule finishes.
>>>>
>>>> Here are the relevant lines from my configuration files. Are they indeed
>>>> supposed to work, or were working only by pure luck?
>>>
>>>
>>> I switched to zswap because of this. This also looks more appropriate for
>>> my
>>> workload. Maybe that's an option? At least if you do have a physical swap
>>> device (and in that cased I'd prefer zswap over zram).
>>
>> Please don't persuade me to hide or tolerate bugs. Even if zswap is more
>> appropriate, I would like to get a comment on my zram issue from systemd
>> maintainers.
>
> I don't know of anybody working on systemd, using this
> horrible-to-configure facility.
>
> I have no idea how stuff should work, but it *might* need some
> ENV{SYSTEMD_READY}="0" fiddling.

Let's decompose the question then. Maybe you know how at least one of 
the steps should work.

1. Is it correct that swap units created from /etc/fstab have 
dependencies on the devices mentioned in the first column? What kind of 
dependencies?

2. At what point in time (just after getting the uevent, after setting 
sysfs attributes, after running the RUN programs) is the dependency on 
the device node considered "satisfied"?

> Module parameters to configure devices, sysfs attributes to
> re-configure pre-created "dead devices", ...; given the fact, that it
> is relatively recent technology, such terribly outdated and
> have-always-been-broken concepts should never have been merged into
> the kernel.

A valid observation, but still - the semantics need to be documented 
(even if the document says "undefined") in systemd.device(5) or 
elsewhere WRT dependencies and ordering.

-- 
Alexander E. Patrakov


More information about the systemd-devel mailing list