Met een daemon wil ik controlleren of er een wijziging is opgetreden in het /sys-filesystem. Er wordt namelijk via een kernel driver een aantal waardes telkens geüpdate.
Nu dacht ik dit met inotify te doen. Echter ik heb gemerkt dat wanneer de kernelmodule de waarde bij werkt er bij inotify geen IN_MODIFY-event wordt getriggerd
.
De volgende relevante code: Het toevoegen van een watch:
Echter nu moet ik natuurlijk in de kernel-module aangeven dat de waarde is gewijzigd. Heeft iemand een idee hoe je een /sys-entry als 'gewijzigd' kan markeren? Zodat je dat dus af kan vangen met inotify in de userspace daemon?
Nu dacht ik dit met inotify te doen. Echter ik heb gemerkt dat wanneer de kernelmodule de waarde bij werkt er bij inotify geen IN_MODIFY-event wordt getriggerd
De volgende relevante code: Het toevoegen van een watch:
C++:
1
| wd = inotify_add_watch(fd,"/sys/bus/usb/drivers/k8055_drv/5-2:1.0/digital_in",IN_ALL_EVENTS); |
Echter nu moet ik natuurlijk in de kernel-module aangeven dat de waarde is gewijzigd. Heeft iemand een idee hoe je een /sys-entry als 'gewijzigd' kan markeren? Zodat je dat dus af kan vangen met inotify in de userspace daemon?
[ Voor 3% gewijzigd door LauPro op 06-12-2005 17:03 ]
Inkoopacties - HENK terug! - Megabit
It is a war here, so be a general!