[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20190909102340.8592-1-dima@arista.com>
Date: Mon, 9 Sep 2019 11:23:31 +0100
From: Dmitry Safonov <dima@...sta.com>
To: linux-kernel@...r.kernel.org
Cc: Dmitry Safonov <0x7f454c46@...il.com>,
Dmitry Safonov <dima@...sta.com>,
Adrian Reber <adrian@...as.de>,
Alexander Viro <viro@...iv.linux.org.uk>,
Andrei Vagin <avagin@...nvz.org>,
Andy Lutomirski <luto@...nel.org>,
Cyrill Gorcunov <gorcunov@...nvz.org>,
Ingo Molnar <mingo@...hat.com>,
Oleg Nesterov <oleg@...hat.com>,
Pavel Emelyanov <xemul@...tuozzo.com>,
Thomas Gleixner <tglx@...utronix.de>,
containers@...ts.linux-foundation.org,
linux-fsdevel@...r.kernel.org
Subject: [PATCH 0/9] restart_block: Prepare the ground for dumping timeout
Hi,
I'm trying to address an issue in CRIU (Checkpoint Restore In Userspace)
about timed syscalls restart. It's not possible to use restart_syscall()
as the majority of applications does, as after restore the kernel doesn't
know anything about a syscall that may have been interrupted on
checkpoint. That's because the tasks are re-created from scratch and so
there isn't task_struct::restart_block set on a new task.
As a preparation, unify timeouts for different syscalls in
restart_block.
On contrary, I'm struggling with patches that introduce the new ptrace()
request API. I'll speak about difficulties of designing new ptrace
operation on Containers Microconference at Plumbers [with a hope to
find the sensible solution].
Cc: Adrian Reber <adrian@...as.de>
Cc: Alexander Viro <viro@...iv.linux.org.uk>
Cc: Andrei Vagin <avagin@...nvz.org>
Cc: Andy Lutomirski <luto@...nel.org>
Cc: Cyrill Gorcunov <gorcunov@...nvz.org>
Cc: Dmitry Safonov <0x7f454c46@...il.com>
Cc: Ingo Molnar <mingo@...hat.com>
Cc: Oleg Nesterov <oleg@...hat.com>
Cc: Pavel Emelyanov <xemul@...tuozzo.com>
Cc: Thomas Gleixner <tglx@...utronix.de>
Cc: containers@...ts.linux-foundation.org
Cc: linux-fsdevel@...r.kernel.org
Dmitry Safonov (9):
futex: Remove unused uaddr2 in restart_block
restart_block: Prevent userspace set part of the block
select: Convert __esimate_accuracy() to ktime_t
select: Micro-optimise __estimate_accuracy()
select: Convert select_estimate_accuracy() to take ktime_t
select: Extract common code into do_sys_ppoll()
select: Use ktime_t in do_sys_poll() and do_poll()
select/restart_block: Convert poll's timeout to u64
restart_block: Make common timeout
fs/eventpoll.c | 4 +-
fs/select.c | 214 ++++++++++++---------------------
include/linux/poll.h | 2 +-
include/linux/restart_block.h | 11 +-
kernel/futex.c | 14 +--
kernel/time/alarmtimer.c | 6 +-
kernel/time/hrtimer.c | 14 ++-
kernel/time/posix-cpu-timers.c | 10 +-
kernel/time/posix-stubs.c | 8 +-
kernel/time/posix-timers.c | 8 +-
10 files changed, 115 insertions(+), 176 deletions(-)
--
2.23.0
Powered by blists - more mailing lists