On Sunday, May 19, 2019 6:45 PM, Alex Ivanov <gnido...@ya.ru> wrote: > Hello. > What is the proper way to do that? I have a unit that creates gvt device in > the system > > ExecStart = "sh -c 'echo a297db4a-f4c2-11e6-90f6-d3b88d6c9525 > > /sys/bus/pci/devices/0000:00:02.0/mdev_supported_types/i915-GVTg_V5_8/create'"; > ExecStop = "sh -c 'echo 1 > > /sys/bus/pci/devices/0000:00:02.0/a297db4a-f4c2-11e6-90f6-d3b88d6c9525/remove'"; > > Ideally I would to like to start this service when 0000:00:02.0 device > appears in the system, but the problem is that > /sys/bus/pci/devices/0000:00:02.0/mdev_supported_types/ tree is populated > later, so my service will fail. > > So the question what is the proper way to fix that. >
Use systemd.path helper: https://www.freedesktop.org/software/systemd/man/systemd.path.html Examples: https://blog.andrewkeech.com/posts/170809_path.html Create gvt.path and gvt.service gvt.path: ... [Unit] Description=gvt path [Path] PathExist=/sys/bus/pci/devices/0000:00:02.0/mdev_supported_types [Install] WantedBy=multi-user.target gvt.service: ... [Unit] Description=gvt service [Service] ExecStart = "sh -c 'echo a297db4a-f4c2-11e6-90f6-d3b88d6c9525 > /sys/bus/pci/devices/0000:00:02.0/mdev_supported_types/i915-GVTg_V5_8/create'" ExecStop = "sh -c 'echo 1 > /sys/bus/pci/devices/0000:00:02.0/a297db4a-f4c2-11e6-90f6-d3b88d6c9525/remove'" _______________________________________________ vfio-users mailing list vfio-users@redhat.com https://www.redhat.com/mailman/listinfo/vfio-users