Received: by 2002:a05:6a10:f3d0:0:0:0:0 with SMTP id a16csp5649722pxv; Wed, 7 Jul 2021 08:36:34 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwJwdZtHcdDdnMup9/oVRtpzuZ9pGrnDcso0ppaeEAxX/hhnBG/XCSlq3mHFVByVXKLv6GF X-Received: by 2002:aa7:dd57:: with SMTP id o23mr30800130edw.6.1625672194519; Wed, 07 Jul 2021 08:36:34 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1625672194; cv=none; d=google.com; s=arc-20160816; b=O0uxVf6DrhnEImXsKbfhXd7MoZWmay2v8B+JfW1R4vfe2en0JudOZazEv7gvldRCo/ JDSmTWL+aooDIj4ydT6ggVtyyGO2qDZ8fsolFEg35HUnGwbMV93ecCaA28y8Onj80sU5 QNSD82mUdXAHpBkhaRWpwDkh+k/URA1NFuKLxMAXf6X0DYo/P8SI7o7GIsAdcqqUDdzV Sj0HODH3TNyc1X+oppUJVDm/sLk1vjoFFAoJmwdrS3H7ETDj+7Uo6b7BTsNXR+IKpUg4 FaaMv5N3zl+FF3cBkeRA1qCz4kEN0KlPmwU1SPxHoXSJvjToX73rVTz06+Xh/v7IPpUV S9xg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:in-reply-to:from :references:cc:to:content-language:subject:user-agent:mime-version :date:message-id:dkim-signature; bh=zCuVLIRisCBVFVTqoZmLYlwjqTVj+wOlxhhkcxXyeMY=; b=rjBdA1chvXNtTe1y+C26mwOt19ydDHNZmE5r160eS28vvYT/iI9yLMsiDlpNUdSFhe Xin0RCUyTXY02tIW7m3jvJo3g9821skIHHmzDMDHKepkTfmWU6HVF/SLF83uaNj1nVKo reUJGsXtBfYFpdz0ngbP8ctHTApLC5/weMK7TRNzUkbxwThE2O3Rl25OxMuKmmV1eoeJ 2o4S3CyIFhMkoTPYS09xoMwp4YMUDWLLsR5+eICcm1mI3AFbHViX8XQPARm3daTSagtw DqoJ1ztTl/O8POt82Bz0j8Hmu0G5dYDl738qJvA7QNjCRiW+4UwGMYKqygb+OdTAXpul a4dQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@ozlabs-ru.20150623.gappssmtp.com header.s=20150623 header.b=sjWqY2yl; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id he20si9418713ejc.389.2021.07.07.08.36.11; Wed, 07 Jul 2021 08:36:34 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@ozlabs-ru.20150623.gappssmtp.com header.s=20150623 header.b=sjWqY2yl; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232036AbhGGOiK (ORCPT + 99 others); Wed, 7 Jul 2021 10:38:10 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:41890 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231737AbhGGOiJ (ORCPT ); Wed, 7 Jul 2021 10:38:09 -0400 Received: from mail-pf1-x42c.google.com (mail-pf1-x42c.google.com [IPv6:2607:f8b0:4864:20::42c]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id B1CCEC061574 for ; Wed, 7 Jul 2021 07:35:29 -0700 (PDT) Received: by mail-pf1-x42c.google.com with SMTP id q10so2286310pfj.12 for ; Wed, 07 Jul 2021 07:35:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ozlabs-ru.20150623.gappssmtp.com; s=20150623; h=message-id:date:mime-version:user-agent:subject:content-language:to :cc:references:from:in-reply-to:content-transfer-encoding; bh=zCuVLIRisCBVFVTqoZmLYlwjqTVj+wOlxhhkcxXyeMY=; b=sjWqY2yl7Bm2dnZosYR3SUmdxG00K+ZhhJQ+Hs7j9qWKGOZLRHw3e+/DUWtC2jaLd5 J72SqKyX9+eGsprY/f58B+NRLCu9kLTiWFAMvwiZYZOAIOCFtmn040kbaN9qAfPXYvj0 +5XaKKxtnwPJepUBzjz8BH99deTwo7p5PpJtaFlhFfcXPq3mMeU1Dvu9PIXE6n3Xj+e7 1Ifx3VpJLqAtQCtP/3xOPte0eNxTKe/QizyTrrr7EOKtU1b3cFCvkW0kvTASFr/GFbSS tiPTxdGtq0U7ZsUgzDatf/rkek2DucyqiGguh3QG3gagJzVm5G/c2zCAzgwWA7ee9aTp Ipeg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:message-id:date:mime-version:user-agent:subject :content-language:to:cc:references:from:in-reply-to :content-transfer-encoding; bh=zCuVLIRisCBVFVTqoZmLYlwjqTVj+wOlxhhkcxXyeMY=; b=PXCxBQfPYpDUvDwP+yLPsdWHmltsnqbT4iA4y0BIC2Nzg3zEpUEtynB8TDxjgxnscj dJD6tdaEENq+fa7BePFcJp3o3w/7QkRwRS0auTY2U5vWSBce8ebibyFRryk7jiYzqeo6 sKlH2sCGFAHnit7jAsxD9SiTFfc8n+oq9OVeY+Bs35IPZVDGSX3RIAhH0wtchbHYVKYw J/538cGr9FNVlGAE7vM4Ek4x4L1Oc1Hkp71wAob0uacFwg05vykBQ36Gjf12W1uDzkxR kalzxXE5u8A7CN0MoNOvaVLiSpCkDqKg2TZvZgYZGkj6y1X+3DY2/fNShWENapOeb8/V mygw== X-Gm-Message-State: AOAM533Utif6qo99eLSzqvB20Y49xwcK3rsb5zTYdphdXRcUZ4jlkw9i RNA2OyYohlZNWUNQmZzijKp7yQ== X-Received: by 2002:a62:8fc8:0:b029:2ec:9b7a:f59e with SMTP id n191-20020a628fc80000b02902ec9b7af59emr25702534pfd.39.1625668529305; Wed, 07 Jul 2021 07:35:29 -0700 (PDT) Received: from localhost (219-90-184-65.ip.adam.com.au. [219.90.184.65]) by smtp.gmail.com with UTF8SMTPSA id x18sm16075987pfc.76.2021.07.07.07.35.25 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 07 Jul 2021 07:35:28 -0700 (PDT) Message-ID: Date: Thu, 8 Jul 2021 00:35:23 +1000 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:88.0) Gecko/20100101 Thunderbird/88.0 Subject: Re: [tip: sched/core] sched/core: Initialize the idle task with preemption disabled Content-Language: en-US To: Guenter Roeck , Valentin Schneider , Frederic Weisbecker Cc: linux-kernel@vger.kernel.org, linux-tip-commits@vger.kernel.org, Ingo Molnar , Peter Zijlstra , x86@kernel.org References: <20210512094636.2958515-1-valentin.schneider@arm.com> <162081815405.29796.14574924529325899839.tip-bot2@tip-bot2> <20210706194456.GA1823793@roeck-us.net> <87fswr6lqv.mognet@arm.com> <20210707120305.GB115752@lothringen> <87czru727k.mognet@arm.com> From: Alexey Kardashevskiy In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 08/07/2021 00:14, Guenter Roeck wrote: > On 7/7/21 5:11 AM, Valentin Schneider wrote: >> On 07/07/21 14:03, Frederic Weisbecker wrote: >>> On Wed, Jul 07, 2021 at 12:55:20AM +0100, Valentin Schneider wrote: >>>> Thanks for the report. >>>> >>>> So somehow the init task ends up with a non-zero preempt_count()? Per >>>> FORK_PREEMPT_COUNT we should exit __ret_from_fork() with a zero >>>> count, are >>>> you hitting the WARN_ONCE() in finish_task_switch()? >>>> >>>> Does CONFIG_DEBUG_PREEMPT=y yield anything interesting? >>>> >>>> I can't make sense of this right now, but it's a bit late :) I'll >>>> grab some >>>> toolchain+qemu tomorrow and go poke at it (and while at it I need to >>>> do the >>>> same with powerpc). >>> >>> One possible issue is that s390's init_idle_preempt_count() doesn't >>> apply on the >>> target idle task but on the _current_ CPU. And since smp_init() -> >>> idle_threads_init() is actually called remotely, we are overwriting >>> the current >>> CPU preempt_count() instead of the target one. >> >> Indeed, this becomes quite obvious when tracing the preemption count >> changes. This also means that s390 relied on the idle_thread_get() >> from the >> hotplug machinery to properly setup the preempt count, rather than >> init_idle_preempt_count() - which is quite yuck. >> >> I'll write a patch for that and likely one for powerpc. >> > > Can you reproduce the problem with a powerpc qemu emulation ? > If so, how do you reproduce it there ? Reason for asking is that I don't > see > the problem with any of my powerpc emulations, and I would like to add test > case(s) if possible. I can reproduce the problem on powerpc easily - qemu with "-smp 2" does it. -- Alexey