From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-0.8 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id EEC16C64E8A for ; Sun, 29 Nov 2020 10:59:23 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id A62BD207BC for ; Sun, 29 Nov 2020 10:59:23 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=gmx.net header.i=@gmx.net header.b="ePOGmg6c" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726904AbgK2K7H (ORCPT ); Sun, 29 Nov 2020 05:59:07 -0500 Received: from mout.gmx.net ([212.227.17.20]:59021 "EHLO mout.gmx.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725852AbgK2K7E (ORCPT ); Sun, 29 Nov 2020 05:59:04 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1606647417; bh=xuUwzZ7J2wadinLY3BrTlVoxFqhsceEnaYR1kreYZ6c=; h=X-UI-Sender-Class:Subject:From:To:Cc:Date:In-Reply-To:References; b=ePOGmg6cTvk3A8f3JZd4VecBJNrCkwo6OPUqccm9oqNbY6T1uiV+q9viKtl7pZGbI /rOOoeC10vAZbnHJpxIF6c0OU3i53qRiZPbYIOaWaKKCxR/pVrqCYd5uIsrflslpWu ++inwpavKK+DSrntZB32485YKrFTeQU2h2UqWvGM= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from homer.fritz.box ([185.191.218.83]) by mail.gmx.com (mrgmx104 [212.227.17.168]) with ESMTPSA (Nemesis) id 1N2V4J-1k3pH43EFj-013w5p; Sun, 29 Nov 2020 11:56:57 +0100 Message-ID: Subject: Re: scheduling while atomic in z3fold From: Mike Galbraith To: Oleksandr Natalenko , linux-kernel@vger.kernel.org Cc: linux-mm@kvack.org, Andrew Morton , Sebastian Andrzej Siewior , Steven Rostedt , Thomas Gleixner , linux-rt-users@vger.kernel.org Date: Sun, 29 Nov 2020 11:56:55 +0100 In-Reply-To: References: <20201128140523.ovmqon5fjetvpby4@spock.localdomain> <20201128140924.iyqr2h52z2olt6zb@spock.localdomain> <20201128142723.zik6d5skvt3uwu5f@spock.localdomain> <15171df044b167351e7f6a688aabd71bade9ae2a.camel@gmx.de> <79ee43026efe5aaa560953ea8fe29a826ac4e855.camel@gmx.de> Content-Type: text/plain; charset="ISO-8859-15" User-Agent: Evolution 3.34.4 MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Provags-ID: V03:K1:0KkU+dO0CotFg8t98ZX+R+ppUKncpqsi1f3DNTFjPAkwxZI/cMf fOUGowMDXMp16ib7vCoLfW59yuQr1b+C8biP51nhq7Wm9UPGQ9uNYwvIW7qaoZUPzMhMFx9 C9ad/1eVySHF7O0ptB5l8pIbT6f3bPNLJwiFzR4By1xjYM7STZanAP1fe7o/S0Atd1bVtYR sbD2N19+KbuWzaM4mss4w== X-UI-Out-Filterresults: notjunk:1;V03:K0:3NxniihrIMQ=:NwxAzoQDYk6FvcXnaDATmx y2OKPHWUPRwKVmpCIKZmgKEsn3Jvmg1IWyji3F4EHzoqdSXW/mR/ofxTPbM2rW81GuIrbZruu n1I+wM4zcTqNOgs5QIRKoxtInhW1Bf5hl+d2SuaLF84WNCSslAXFe3Lwb0aP35/gfiQybNkmB BPqsB5sgwN5yDO/rI7xzReX8z72Y5/b1SDQ02b8u9lUJwjrHSVYrJ9WHxRszu5h5TDjSgeuBo lwznEaIE4EkCkdzrWkP/mvvAfAEm8opasML1q1u/VhpVm/cZTHuv1rx1XADDaHJ3ColoH0yfj Jl90CbCFjaplvNhsZsmmV3NLf2vwYMb1XusM4n66kxDSzCb8m7ZfkpDxV7MhjoNYdjiuhC6AM XT0sGcCzRRUGcUfur4IVgV9UDzsiLvTExgYolyDfLtzJOREXdWG3lbMoJR68oOiH0ijelYFIS BukCHpFBBIUa3VUC2kbKVtIbAExTYCslXTSg3EibM0rc4OVOcP2fy41vv2uT9cmqYpTuN7Lo4 vlN6inPBjALISNSiiyXj1T1STX9Nw+S111a2oFFpErO7rNQyLLSjiWa96f7/9s+ZGIWl3dfXF T/0AzK/OGFLks/ac1oSPmrzV/MFvhd061Fstyj5AH7mgyOZL1K+CfWGNvk7wWVPxPXm/LJb4/ zSy+AhGA/Exr90dVQ80YvOVm3Nw0wMuSgtpeu5POEcinjg4m1w44JPbIoRY7aS2c+VdKcl4KV ZhTQJWjBeGYVs5fa8arVRfSXeNQP+vc24GqKsOBvQwNazr3tcg0Kk8LgwAlypk707NC500nrF wGrqC/DfmZE54Zjrdr+Je66iFmredHbtba9LkITmwg2Xg9l3SfkkdMkBhjUDMEiqo8+pGhEk5 QHE8ZmYOx7jK7RmriKAQ== Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Sun, 2020-11-29 at 10:21 +0100, Mike Galbraith wrote: > On Sun, 2020-11-29 at 08:48 +0100, Mike Galbraith wrote: > > On Sun, 2020-11-29 at 07:41 +0100, Mike Galbraith wrote: > > > On Sat, 2020-11-28 at 15:27 +0100, Oleksandr Natalenko wrote: > > > > > > > > > > Shouldn't the list manipulation be protected with > > > > > > local_lock+this_cpu_ptr instead of get_cpu_ptr+spin_lock? > > > > > > > > Totally untested: > > > > > > Hrm, the thing doesn't seem to care deeply about preemption being > > > disabled, so adding another lock may be overkill. It looks like you > > > could get the job done via migrate_disable()+this_cpu_ptr(). > > > > There is however an ever so tiny chance that I'm wrong about that :) > > Or not, your local_lock+this_cpu_ptr version exploded too. > > Perhaps there's a bit of non-rt related racy racy going on in zswap > thingy that makes swap an even less wonderful idea for RT than usual. Raciness seems to be restricted to pool compressor. "zbud" seems to be solid, virgin "zsmalloc" explodes, as does "z3fold" regardless which of us puts his grubby fingerprints on it. Exploding compressors survived zero runs of runltp -f mm, I declared zbud to be at least kinda sorta stable after box survived five runs. -Mike From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-0.8 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 8B1F4C3E8C5 for ; Sun, 29 Nov 2020 10:57:30 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id 64A9720771 for ; Sun, 29 Nov 2020 10:57:29 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=gmx.net header.i=@gmx.net header.b="ePOGmg6c" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 64A9720771 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=gmx.de Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=owner-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix) id 6E8B06B005C; Sun, 29 Nov 2020 05:57:28 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 69AB86B005D; Sun, 29 Nov 2020 05:57:28 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 586B36B0068; Sun, 29 Nov 2020 05:57:28 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0114.hostedemail.com [216.40.44.114]) by kanga.kvack.org (Postfix) with ESMTP id 40A106B005C for ; Sun, 29 Nov 2020 05:57:28 -0500 (EST) Received: from smtpin19.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay02.hostedemail.com (Postfix) with ESMTP id EC3ED363C for ; Sun, 29 Nov 2020 10:57:27 +0000 (UTC) X-FDA: 77537154534.19.stem69_11067f527398 Received: from filter.hostedemail.com (10.5.16.251.rfc1918.com [10.5.16.251]) by smtpin19.hostedemail.com (Postfix) with ESMTP id D2FF91ACEA2 for ; Sun, 29 Nov 2020 10:57:27 +0000 (UTC) X-HE-Tag: stem69_11067f527398 X-Filterd-Recvd-Size: 4462 Received: from mout.gmx.net (mout.gmx.net [212.227.17.20]) by imf34.hostedemail.com (Postfix) with ESMTP for ; Sun, 29 Nov 2020 10:57:27 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1606647417; bh=xuUwzZ7J2wadinLY3BrTlVoxFqhsceEnaYR1kreYZ6c=; h=X-UI-Sender-Class:Subject:From:To:Cc:Date:In-Reply-To:References; b=ePOGmg6cTvk3A8f3JZd4VecBJNrCkwo6OPUqccm9oqNbY6T1uiV+q9viKtl7pZGbI /rOOoeC10vAZbnHJpxIF6c0OU3i53qRiZPbYIOaWaKKCxR/pVrqCYd5uIsrflslpWu ++inwpavKK+DSrntZB32485YKrFTeQU2h2UqWvGM= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from homer.fritz.box ([185.191.218.83]) by mail.gmx.com (mrgmx104 [212.227.17.168]) with ESMTPSA (Nemesis) id 1N2V4J-1k3pH43EFj-013w5p; Sun, 29 Nov 2020 11:56:57 +0100 Message-ID: Subject: Re: scheduling while atomic in z3fold From: Mike Galbraith To: Oleksandr Natalenko , linux-kernel@vger.kernel.org Cc: linux-mm@kvack.org, Andrew Morton , Sebastian Andrzej Siewior , Steven Rostedt , Thomas Gleixner , linux-rt-users@vger.kernel.org Date: Sun, 29 Nov 2020 11:56:55 +0100 In-Reply-To: References: <20201128140523.ovmqon5fjetvpby4@spock.localdomain> <20201128140924.iyqr2h52z2olt6zb@spock.localdomain> <20201128142723.zik6d5skvt3uwu5f@spock.localdomain> <15171df044b167351e7f6a688aabd71bade9ae2a.camel@gmx.de> <79ee43026efe5aaa560953ea8fe29a826ac4e855.camel@gmx.de> Content-Type: text/plain; charset="ISO-8859-15" User-Agent: Evolution 3.34.4 MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Provags-ID: V03:K1:0KkU+dO0CotFg8t98ZX+R+ppUKncpqsi1f3DNTFjPAkwxZI/cMf fOUGowMDXMp16ib7vCoLfW59yuQr1b+C8biP51nhq7Wm9UPGQ9uNYwvIW7qaoZUPzMhMFx9 C9ad/1eVySHF7O0ptB5l8pIbT6f3bPNLJwiFzR4By1xjYM7STZanAP1fe7o/S0Atd1bVtYR sbD2N19+KbuWzaM4mss4w== X-UI-Out-Filterresults: notjunk:1;V03:K0:3NxniihrIMQ=:NwxAzoQDYk6FvcXnaDATmx y2OKPHWUPRwKVmpCIKZmgKEsn3Jvmg1IWyji3F4EHzoqdSXW/mR/ofxTPbM2rW81GuIrbZruu n1I+wM4zcTqNOgs5QIRKoxtInhW1Bf5hl+d2SuaLF84WNCSslAXFe3Lwb0aP35/gfiQybNkmB BPqsB5sgwN5yDO/rI7xzReX8z72Y5/b1SDQ02b8u9lUJwjrHSVYrJ9WHxRszu5h5TDjSgeuBo lwznEaIE4EkCkdzrWkP/mvvAfAEm8opasML1q1u/VhpVm/cZTHuv1rx1XADDaHJ3ColoH0yfj Jl90CbCFjaplvNhsZsmmV3NLf2vwYMb1XusM4n66kxDSzCb8m7ZfkpDxV7MhjoNYdjiuhC6AM XT0sGcCzRRUGcUfur4IVgV9UDzsiLvTExgYolyDfLtzJOREXdWG3lbMoJR68oOiH0ijelYFIS BukCHpFBBIUa3VUC2kbKVtIbAExTYCslXTSg3EibM0rc4OVOcP2fy41vv2uT9cmqYpTuN7Lo4 vlN6inPBjALISNSiiyXj1T1STX9Nw+S111a2oFFpErO7rNQyLLSjiWa96f7/9s+ZGIWl3dfXF T/0AzK/OGFLks/ac1oSPmrzV/MFvhd061Fstyj5AH7mgyOZL1K+CfWGNvk7wWVPxPXm/LJb4/ zSy+AhGA/Exr90dVQ80YvOVm3Nw0wMuSgtpeu5POEcinjg4m1w44JPbIoRY7aS2c+VdKcl4KV ZhTQJWjBeGYVs5fa8arVRfSXeNQP+vc24GqKsOBvQwNazr3tcg0Kk8LgwAlypk707NC500nrF wGrqC/DfmZE54Zjrdr+Je66iFmredHbtba9LkITmwg2Xg9l3SfkkdMkBhjUDMEiqo8+pGhEk5 QHE8ZmYOx7jK7RmriKAQ== X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: On Sun, 2020-11-29 at 10:21 +0100, Mike Galbraith wrote: > On Sun, 2020-11-29 at 08:48 +0100, Mike Galbraith wrote: > > On Sun, 2020-11-29 at 07:41 +0100, Mike Galbraith wrote: > > > On Sat, 2020-11-28 at 15:27 +0100, Oleksandr Natalenko wrote: > > > > > > > > > > Shouldn't the list manipulation be protected with > > > > > > local_lock+this_cpu_ptr instead of get_cpu_ptr+spin_lock? > > > > > > > > Totally untested: > > > > > > Hrm, the thing doesn't seem to care deeply about preemption being > > > disabled, so adding another lock may be overkill. It looks like you > > > could get the job done via migrate_disable()+this_cpu_ptr(). > > > > There is however an ever so tiny chance that I'm wrong about that :) > > Or not, your local_lock+this_cpu_ptr version exploded too. > > Perhaps there's a bit of non-rt related racy racy going on in zswap > thingy that makes swap an even less wonderful idea for RT than usual. Raciness seems to be restricted to pool compressor. "zbud" seems to be solid, virgin "zsmalloc" explodes, as does "z3fold" regardless which of us puts his grubby fingerprints on it. Exploding compressors survived zero runs of runltp -f mm, I declared zbud to be at least kinda sorta stable after box survived five runs. -Mike