On Thu, 20 Feb 2014, Alexey Perevalov wrote:Compiler warning - if you mean uninitialized orun, I fixed it
From: Anton Vorontsov <anton@xxxxxxxxxx>This changelog is completely useless. How is timerfd_tmrproc, which is
There is nothing hrtimer-specific inside the timerfd_tmrproc(), except
the function prototype. We're about to add other timer types, so factor
out generic timerfd_expire() helper from timerfd_tmrproc().
not a function but a function pointer, related to the patch?
Moving duplicated code to a common function is nice, but ....
Signed-off-by: Anton Vorontsov <anton.vorontsov@xxxxxxxxxx>Warnings are there to be ignored and testing of user space
Signed-off-by: Alexey Perevalov <a.perevalov@xxxxxxxxxxx>
---
fs/timerfd.c | 40 +++++++++++++++++++---------------------
1 file changed, 19 insertions(+), 21 deletions(-)
diff --git a/fs/timerfd.c b/fs/timerfd.c
index 9293121..3561ce7 100644
--- a/fs/timerfd.c
+++ b/fs/timerfd.c
@@ -229,6 +229,23 @@ static unsigned int timerfd_poll(struct file *file, poll_table *wait)
return events;
}
+static u64 timerfd_rearm(struct timerfd_ctx *ctx)
+{
+ u64 orun;
+
+ if (isalarm(ctx)) {
+ orun += alarm_forward_now(
+ &ctx->t.alarm, ctx->tintv) - 1;
+ alarm_restart(&ctx->t.alarm);
+ } else {
+ orun += hrtimer_forward_now(&ctx->t.tmr,
+ ctx->tintv) - 1;
+ hrtimer_restart(&ctx->t.tmr);
interfaces after a change is overrated, right?
Aside of that you just blindly copied the original code w/o fixing up
the now unnecessary line breaks.
The summary of this patch is:
1) Breaks existing functionality including user space ABI
2) Compiler warnings ignored
3) Untested
4) Utter lack of programming style
5) Useless changelog
Impressive for a trivial thing like this.
Thanks,
tglx