[systemd-devel] some issues with missing HAVE_SYSV_COMPAT and /run/lock

Lennart Poettering lennart at poettering.net
Wed Apr 6 09:19:42 PDT 2011


On Wed, 06.04.11 16:35, Marius Tolzmann (tolzmann at molgen.mpg.de) wrote:

> > Well, we came to the conclusion that /var/lock is just completely broken
> > and we only want it on systems caring for legacy support. On legacy-free
> > systems that dir shouldn't exist (or at least systemd should not create
> > it) since it is deeply broken and we shouldn't bless something that
> > broken.
> 
> so what is the replacement dir for /var/lock? wasn't it /run/lock?

none. Don't use lock files. Use BSD locks, i.e. flock().

> if it was: how can i fix the missing /run/lock issue on a system without
> legacy support (e.g. legacy.conf)?

If you want to keep support for this legacy stuff in, you can always
just do mkdir /var/lock and use that. 

> i am a bit confused here since legacy.conf seems to be responsible for
> creating /run/lock stuff which isn't the legacy way to do it (?) but the
> proposed new way of handling lockfiles [since /run is new] (?)

There is no new way to find lock files. Lock files suck. We create a
place for them only if you enable legacy support. On a legacy-free
system you won't get the dir at all.

> or is it that i don't need /run/lock at all?

Precisely, if your software is working correct.

> or short: where are my lockfiles supposed to go with systemd v23? 8)

They should go nowhere. Use flock() on the tty fd itself.

> i really like all the cleanup stuff systemd brings to the gnu/linux
> world but it is sometimes very confusing... 8)

It's much simpler, we just removed something, and it's much easier now...

Lennart

-- 
Lennart Poettering - Red Hat, Inc.


More information about the systemd-devel mailing list