Skip to content

systemd service definitions are flawed #309

@basak-qcom

Description

@basak-qcom

FastRPC version

v1.0.3

DSP firmware version

N/A

SoC and device name

N/A

Kernel version

N/A

What happened?

As introduced in 97b649d

The After= clause has no effect because it only affects ordering within a single set of service starts. WantedBy=multiuser.target then races the kernel module load. If it is reached before the kernel module is loaded, the daemon will never start.

I believe the correct way of doing this is to set WantedBy= on the device unit. But since there are two device units that don't necessarily exist at same the time the service unit is loaded, it should be done by Wants= from the device unit, which needs inserting into the udev rule instead. I already suggested this in #245.

Steps to reproduce

N/A

Relevant log output

Metadata

Metadata

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions