From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mout.gmx.net (mout.gmx.net [212.227.17.21]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id B94B435F8B9 for ; Thu, 23 Apr 2026 04:51:53 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=212.227.17.21 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1776919915; cv=none; b=rCAK5R+EykP6kJH6JwWWRMnnKyCIvm8LtEdVYBm7HtvqAPefNXSgEU6TcstDoe1E2wlu1P6npfG//oTWEq1SlwsOUyZChrsAyyFEtZ3AuatHhAzmKWSecvQKWCLU35AClDYAVNVZK1aRxy87NHmC7ClBNcP1wL0zSqhPVtRAvFk= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1776919915; c=relaxed/simple; bh=kORfGKXFg/OFcG+OQPsFJw7B9qliiK8bOxE7ovXRUe4=; h=Message-ID:Subject:From:To:Cc:Date:In-Reply-To:References: Content-Type:MIME-Version; b=RglLufja/FaC5ctthyfEZrSB1MKeLuBlrmQmOjISFdV25i/uYfOVOlimFErA+MwvPCphX+ffWotcpaB/T7wUvXpeJCazZ7cUS3NwsOM28RXmjs2lxGHRhp/qu/hq0B1RM9YptY4eOysvxL5cICJQB4TXEHoX3VJjRbFiRvtlDBw= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=gmx.de; spf=pass smtp.mailfrom=gmx.de; dkim=pass (2048-bit key) header.d=gmx.de header.i=efault@gmx.de header.b=Y5KwnDl8; arc=none smtp.client-ip=212.227.17.21 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=gmx.de Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmx.de Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmx.de header.i=efault@gmx.de header.b="Y5KwnDl8" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.de; s=s31663417; t=1776919881; x=1777524681; i=efault@gmx.de; bh=lKneSccQqu6ZCJ65YsxX3ouNSN7nvfR7sb/H/dli6TU=; h=X-UI-Sender-Class:Message-ID:Subject:From:To:Cc:Date:In-Reply-To: References:Content-Type:MIME-Version:cc:content-transfer-encoding: content-type:date:from:message-id:mime-version:reply-to:subject: to; b=Y5KwnDl8nNMkmNk43UXti/uUKjjEe1cA0rXuicXSigCY1ZOMxLlbDCWtFneqEv0u mgMWv0+reoZFX9eQ6yWm3pJOeVY9P4ZXPAG+EHVXdBJ/iquUD4Je06+at4oh2nxrj OdrkjTalQoOI1fQ98tFlU9+kGAGUTQZFqa7Cx5AN6wmYbYqsLRk/DYTwWu0oh+UXk xuB//bQGkbc1s9F5+hvvDbGDhfCCJbfj+Z6RSdH/Ua8I70VNBII8hZgUCBlkyfqyO UMa6Pmsk/rxgBsr+io7PJuqVncCLOhs7VMj7debnFiCe7uR24rJsLMqkpQOahHnSq 3i7YR0jQv9nBeSNAeA== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from client.hidden.invalid by mail.gmx.net (mrgmx104 [212.227.17.168]) with ESMTPSA (Nemesis) id 1MSc1B-1vmwU40M0H-00OpiU; Thu, 23 Apr 2026 06:51:21 +0200 Message-ID: <8f02df669230c771cb34aec704e287d9ef2efa6a.camel@gmx.de> Subject: Re: sched/fair: DELAY_DEQUEUE causes ~25% pipe IPC regression on Raspberry Pi 5 From: Mike Galbraith To: Tom Gebhardt Cc: peterz@infradead.org, mingo@redhat.com, linux-kernel@vger.kernel.org Date: Thu, 23 Apr 2026 06:51:20 +0200 In-Reply-To: <0a93288ace2a95616066f7a26cc45d6407dc5147.camel@gmx.de> References: <2877d886d8470f4ea3393e8c2e570a059c2b8b1b.camel@gmx.de> <0a93288ace2a95616066f7a26cc45d6407dc5147.camel@gmx.de> Content-Type: multipart/mixed; boundary="=-P7f9kkQeTGpj62CBXRuk" User-Agent: Evolution 3.56.2 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-Provags-ID: V03:K1:ilgmQRlFXZsWKh35C/eU0Se3EbLZzQJ59qFHX0bI4n3gkgPTUi/ ivLKzGyx//Jghfcstjpg8cAUkdJ4Rju3kJl8fxme1X8Gn8T4+RZKeTSbhZQyVUokoeAq6Hg Lebvoa9CSAi9dQzY791cujgY4ssIypgvHgplYhZVJp1wSmFgyaD//5kB122296AQHqUUZ3S grmY7vr6Y8KdF3XUt23vw== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:Fvwllk/vRwI=;HFf8XYCCkOdCRq4L21oVM5pkC1M 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 --=-P7f9kkQeTGpj62CBXRuk Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Tue, 2026-04-21 at 05:55 +0200, Mike Galbraith wrote: > On Mon, 2026-04-20 at 12:59 +0200, Tom Gebhardt wrote: >=20 >=20 > > Would you be willing to run the 6.6 comparison with stress-ng 0.15.06 > > on your Pi 5? >=20 > No need, your reported DELAY_DEQUEUE impact for 6.12.75+rpt-rpi-2712 > appeared with stress-ng 0.15.06. >=20 > However, my local 6.12.y branch kernel, which has all eevdf fixes as > well as Peter's still pending sched/ttwu series, still does NOT repro. >=20 > git@homer:..git/raspberrypi-kernel> quilt applied|grep delay > patches/eevdf/WIP/0043-sched-fair-Removed-unsued-cfs_rq.h_nr_delayed.patc= h > patches/eevdf/WIP/0047-sched-fair-Do-not-try-to-migrate-delayed-dequeue-t= ask.patch=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 <=3D= =3D ? > patches/eevdf/WIP/0065-sched-Change-ttwu_runnable-vs-sched_delayed.patch > patches/eevdf/WIP/0066-sched-Add-ttwu_queue-support-for-delayed-tasks.pat= ch > patches/eevdf/WIP/0089-sched-fair-Prevent-negative-lag-increase-during-de= layed-dequeue.patch <=3D=3D ? I've finally finished slogging through my quilt backport battery, and my dinky/cute rpi5 asserts that what prevents the local heavily patched rpi-6.12-y@6.12.81 kernel from reproducing has nothing to do with pointed at suspects, rather Peter's long pending ttwu series is entirely responsible. Validation enabling tarball attached. -Mike --=-P7f9kkQeTGpj62CBXRuk Content-Type: application/x-compressed-tar; name="peterz-queue-ttwu.tar.gz" Content-Disposition: attachment; filename="peterz-queue-ttwu.tar.gz" Content-Transfer-Encoding: base64 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 --=-P7f9kkQeTGpj62CBXRuk--