On 11/11/19 7:56 AM, Manoj Basapathi wrote: > This is a snapshot of hardifletimer netfilter target as of msm-4.4 > commit 469a150b7426 ("netfilter: xtables: hardidletimer target implementation") > > This patch implements a hardidletimer Xtables target that can be > used to identify when interfaces have been idle for a certain period > of time. > > Timers are identified by labels and are created when a rule is set > with a new label. The rules also take a timeout value (in seconds) as > an option. If more than one rule uses the same timer label, the timer > will be restarted whenever any of the rules get a hit. > > One entry for each timer is created in sysfs. This attribute contains > the timer remaining for the timer to expire. The attributes are > located under the xt_idletimer class: > > /sys/class/xt_hardidletimer/timers/<label> > > When the timer expires, the target module sends a sysfs notification > to the userspace, which can then decide what to do (eg. disconnect to > save power) > > Compared to xt_IDLETIMER, xt_HARDIDLETIMER can send notifications when > CPU is in suspend too, to notify the timer expiry. > > Change-Id: Ib2e05af7267f3c86d1967f149f7e7e782c59807e > Signed-off-by: Subash Abhinov Kasiviswanathan <subashab@xxxxxxxxxxxxxx> > Signed-off-by: Manoj Basapathi <manojbm@xxxxxxxxxxxxxx> > --- > .../uapi/linux/netfilter/xt_HARDIDLETIMER.h | 51 +++ > net/netfilter/Kconfig | 14 + > net/netfilter/Makefile | 1 + > net/netfilter/xt_HARDIDLETIMER.c | 381 ++++++++++++++++++ > net/netfilter/xt_IDLETIMER.c | 2 + > 5 files changed, 449 insertions(+) > create mode 100644 include/uapi/linux/netfilter/xt_HARDIDLETIMER.h > create mode 100644 net/netfilter/xt_HARDIDLETIMER.c I have nothing to comment on the patch itself. But I wonder what would it take to implement this in the nf_tables framework.