[systemd-devel] Implementing resume from hibernation as a systemd unit file

Lennart Poettering lennart at poettering.net
Mon Aug 18 09:40:59 PDT 2014


On Mon, 18.08.14 18:00, Ivan Shapovalov (intelfx100 at gmail.com) wrote:

> On Monday 18 August 2014 at 15:57:25, Lennart Poettering wrote:	
> > On Fri, 15.08.14 15:35, Ivan Shapovalov (intelfx100 at gmail.com) wrote:
> > 
> > > > That should be enough. (You don't need to individually order the
> > > > systemd-fsck at .service instances for the other devices after your
> > > > service, since they are already ordered after systemd-fsck-root.service,
> > > > and you order yourself before that, so all is good).
> > > 
> > > One more question. What about setups with no initrd and read-write rootfs?
> > > In such cases, the resume unit must silently skip itself.
> > > 
> > > ConditionPathIsReadWrite=!/ doesn't seem to be useful here: with initramfs
> > > this check will yield a false-negative.
> > 
> > I am pretty sure the hibernation stuff should only be supported when an
> > initrd is used. And in that case we should simply not pull in the
> > hibernation service into the non-initrd initial transaction (or in other
> > words, only pull it in by initrd.target, but not otherwise).
> 
> Even if initramfs-only, ordering dependencies still need to be worked out.
> Inside of initramfs, neither systemd-fsck-root.service nor systemd-remount-fs.service
> do exist, so there's apparently nothing to reliably order against.

Well, in the initrd the root dir is mounted to /sysroot, which means you
should be able to order yourself before sysroot.mount.

Lennart

-- 
Lennart Poettering, Red Hat


More information about the systemd-devel mailing list