Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757335AbcDGSdH (ORCPT ); Thu, 7 Apr 2016 14:33:07 -0400 Received: from mx2.suse.de ([195.135.220.15]:49526 "EHLO mx2.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1757077AbcDGSdF (ORCPT ); Thu, 7 Apr 2016 14:33:05 -0400 Date: Thu, 7 Apr 2016 20:33:03 +0200 (CEST) From: Jiri Kosina X-X-Sender: jkosina@pobox.suse.cz To: Josh Poimboeuf cc: Petr Mladek , Jessica Yu , Miroslav Benes , linux-kernel@vger.kernel.org, live-patching@vger.kernel.org, Vojtech Pavlik Subject: Re: [RFC PATCH v1.9 00/14] livepatch: hybrid consistency model In-Reply-To: <20160407180302.c5x3sj6b3ditizc4@treble.redhat.com> Message-ID: References: <20160407121030.GC27670@pathway.suse.cz> <20160407150814.tgihh5v6ydhvo7h6@treble.redhat.com> <20160407180302.c5x3sj6b3ditizc4@treble.redhat.com> User-Agent: Alpine 2.00 (LNX 1167 2008-08-23) MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1525 Lines: 38 On Thu, 7 Apr 2016, Josh Poimboeuf wrote: > > I admittedly forgot what the "ftrace handler switching idea" is, and am > > not sure where exactly to look for it (could you please point it to me so > > that I can refresh my memory) > > Here's where I originally described it [1]: Thanks! > | 2) As mentioned above, kthreads which are always sleeping on a patched function > | will never transition to the new universe. This is really a minor issue > | (less than 1% of patches). It's not necessarily something that needs to be > | resolved with this patch set, but it would be good to have some discussion > | about it regardless. > | > | To overcome this issue, I have 1/2 an idea: we could add some stack checking > | code to the ftrace handler itself to transition the kthread to the new > | universe after it re-enters the function it was originally sleeping on, if > | the stack doesn't already have have any other to-be-patched functions. > | Combined with the klp_transition_work_fn()'s periodic stack checking of > | sleeping tasks, that would handle most of the cases (except when trying to > | patch the high-level thread_fn itself). > > > but generally we can't assume that a memory holding stack of a > > sleeping task hasn't been reclaimed and wouldn't need to have been > > paged in again. > > Hm, we're talking about kernel stacks, right? Are they not always > resident in memory? Sure they are, excuse my evening braindamage. Thanks, -- Jiri Kosina SUSE Labs