On Wed, 15 Aug 2012 21:28:17 +0200 Frederic Weisbecker <fweis...@gmail.com> wrote:
> On Wed, Aug 15, 2012 at 05:22:19PM +0200, Martin Schwidefsky wrote: > > On Tue, 14 Aug 2012 16:16:49 +0200 > > Frederic Weisbecker <fweis...@gmail.com> wrote: > > > > > The archs that implement virtual cputime accounting all > > > flush the cputime of a task when it gets descheduled > > > and sometimes set up some ground initialization for the > > > next task to account its cputime. > > > > > > These archs all put their own hooks in their context > > > switch callbacks and handle the off-case themselves. > > > > > > Consolidate this by creating a new account_switch_vtime() > > > callback called in generic code right after a context switch > > > and that these archs must implement to flush the prev task > > > cputime and initialize the next task cputime related state. > > > > That change requires that the accounting for the previous process > > can be done before finish_arch_switch() completed. With the old > > code the architecture could to the accounting call in the middle > > of finish_arch_switch, that is not possible anymore. Dunno if this > > is relevant or not. For s390 the new code should work fine. > > I'm not sure how this could potentially cause a problem. Interrupts are > disabled > between while we switch_to() until finish_lock_switch(). So nothing > should be able to mess up with the accounting of the prev task. > > I don't really understand what you mean actually. It is more a theoretical consideration. If the finish_arch_switch code updates fields that are required to do the cputime accounting then the order could be important. But then you could move that necessary code from finish_arch_switch to account_switch_vtime. As said that change is fine for s390, so I'm good with it. -- blue skies, Martin. "Reality continues to ruin my life." - Calvin. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/