ksummit.lists.linux.dev archive mirror
 help / color / mirror / Atom feed
From: Jiri Kosina <jkosina@suse.com>
To: ksummit-discuss@lists.linuxfoundation.org
Subject: [Ksummit-discuss] [CORE TOPIC] live patching
Date: Tue, 7 Jul 2015 22:42:45 +0200 (CEST)	[thread overview]
Message-ID: <alpine.LNX.2.00.1507071253390.10183@pobox.suse.cz> (raw)

[ I was wondering whether to tag this "CORE TOPIC" or "TECH TOPIC", as I 
  really see it on the bordeline; let's see ]

As people are probably aware, the basic infrastructure for live patching 
of the kernel has been merged and there are still quite some loose ends to 
tie up.

On top of original agreement by the two teams working at live kernel 
patching at Red Hat and SUSE, there has been quite some feedback raised 
during upstream review by people not being directly involved in the 
development itself [1].

Tangentially related topics have been spawned in the discussion, namely:

- stack unwinding has so far been deemed purely debugging facility, with 
  no correctness guarantees whatsoever. One of the possible aproaches to
  improving the coverage of live patching infrastructure would assume
  100% reliability of in-kernel stack unwinding.

  Is this something that should be pursued further? Especially opinions 
  and comments from various arch maintainers would be welcome

- it would be beneficial for live patching if kernel threads could be 
  cleaned up; currently it's a mess, with freezer points, signal handling 
  etc. spewed randomly all over the main loop. Generalizing the API (such
  as improving kthread_worker and migrating kthreads to use that) would 
  be beneficial if there are no major objections. See my related TECH 
  TOPIC submission

- Ingo proposed a "checkpoint"-based way for live patching, i.e. forcing 
  all the processess out of kernel to serliaze on a well-defined execution
  point, perform the patching, and resume the execution.

  I see several issues with this aproach, but Ingo seems to be really 
  insisting on this to be the way to go.

I could give a short introduction to how the current in-kernel live 
patching facility looks like and what are the things that are currently 
missing (either because they were considered too controversial by some 
(such as the stack unwinding reliability or lazy-migration) or because 
they just have not been implemented yet) and hopefully create a basis for 
a discussion that would result in more defined opinions on how this 
facility should work to be widely acceptable.

Suggested attendance: folks working on live patching and anyone else 
who's not directly involved, but has strong opinions on how things should 
be done.

[1] http://lkml.kernel.org/r/20150220104418.GD25076@gmail.com

Thanks,

-- 
Jiri Kosina
SUSE Labs

             reply	other threads:[~2015-07-07 20:43 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-07-07 20:42 Jiri Kosina [this message]
2015-07-08 16:13 ` Masami Hiramatsu
2015-07-08 21:21   ` Jiri Kosina
2015-07-09  3:26   ` Kamezawa Hiroyuki
2015-07-09  9:56     ` Jiri Kosina
2015-07-09 10:05       ` Kamezawa Hiroyuki
2015-10-12 17:13 ` Theodore Ts'o
2015-10-13  9:29   ` Jiri Kosina
2015-10-16 19:34     ` Jiri Kosina

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=alpine.LNX.2.00.1507071253390.10183@pobox.suse.cz \
    --to=jkosina@suse.com \
    --cc=ksummit-discuss@lists.linuxfoundation.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox