From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Subject: [2/2] ras: close the race condition with timer From: Borislav Petkov Message-Id: <20190416174259.GK31772@zn.tnic> Date: Tue, 16 Apr 2019 19:42:59 +0200 To: Cong Wang Cc: LKML , linux-edac@vger.kernel.org, Tony Luck , Thomas Gleixner List-ID: T24gVHVlLCBBcHIgMTYsIDIwMTkgYXQgMTA6MDk6NDlBTSAtMDcwMCwgQ29uZyBXYW5nIHdyb3Rl Ogo+IFRoZXkgYXJlIGp1c3QgbG9ja3MgcmVxdWlyaW5nIGRpZmZlcmVudCBjb250ZXh0cywgSSBk b24ndCBzZWUgaG93IG9uZSBpcwo+IHNpbXBsZXIgdGhhbiB0aGUgb3RoZXIuIERvIHlvdSBtaW5k IHRvIGJlIG1vcmUgc3BlY2lmaWM/CgpZZXMsIEknZCBsaWtlIGZvciB0aGlzIHdob2xlIENFQyBj b2RlIHRvIGJlIGxhenkgYW5kIHByZWVtcHRpYmxlIGFzIGl0CmlzIG5vdCBhdCBhbGwgaW1wb3J0 YW50IHdoZW4gaXQgZG9lcyBpdHMgd29yaywgYXMgbG9uZyBhcyBpdCBnZXRzIGl0CmRvbmUgZXZl bnR1YWxseS4KCkNhbid0IGJlIHByZWVtcHRpYmxlIHdpdGggc3BpbmxvY2tzLgoKPiBCeSB3b3Jr cXVldWUsIHlvdSBtdXN0IG1lYW4gdG8gc2F5IGRlbGF5ZWQgd29yaywgcmlnaHQ/Cj4KPiBCdXQg dGhlIGdsb2JhbCB3b3JrcXVldWUgaXMgbm90IHNlcmlhbGl6ZWQgZWl0aGVyLAoKU2VyaWFsaXpl ZCB3aXRoIHdoYXQ/IEluc2VydGlvbnM/CgpUaGF0J3Mgd2hhdCB0aGUgbXV0ZXggaXMgZm9yIGFu ZCB0aGUgaW5zZXJ0aW9ucyBoYXBwZW4gaW4gcHJvY2Vzcwpjb250ZXh0LgoKU28geWVhaCwgZGVs YXllZF93b3JrIHNvdW5kcyBsaWtlIHdoYXQgaXQgc2hvdWxkIGRvLiBJLmUuLApxdWV1ZV9kZWxh eWVkX3dvcmsoKSBhbmQgZGVjYXlfaW50ZXJ2YWxfc2V0KCkgc2hvdWxkIGRvCm1vZF9kZWxheWVk X3dvcmsoKS4gU29tZXRoaW5nIGFsb25nIHRob3NlIGxpbmVzLCBhbnl3YXlzLgoKVGh4Lgo= 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=-2.6 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SPF_PASS, USER_AGENT_MUTT autolearn=unavailable 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 6A981C10F13 for ; Tue, 16 Apr 2019 17:43:01 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 2D8F12075B for ; Tue, 16 Apr 2019 17:43:01 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=alien8.de header.i=@alien8.de header.b="aTG7g5Ov" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727180AbfDPRnA (ORCPT ); Tue, 16 Apr 2019 13:43:00 -0400 Received: from mail.skyhub.de ([5.9.137.197]:34638 "EHLO mail.skyhub.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727067AbfDPRnA (ORCPT ); Tue, 16 Apr 2019 13:43:00 -0400 Received: from zn.tnic (p200300EC2F0D69007D63E3F8FEB0C818.dip0.t-ipconnect.de [IPv6:2003:ec:2f0d:6900:7d63:e3f8:feb0:c818]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.skyhub.de (SuperMail on ZX Spectrum 128k) with ESMTPSA id 725A51EC013F; Tue, 16 Apr 2019 19:42:59 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=alien8.de; s=dkim; t=1555436579; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:in-reply-to:in-reply-to: references:references; bh=piRcqDsXit6RX2mOm+UqwZdg7tVVMYbv1+su5eaXx74=; b=aTG7g5OvQtHVi2VTNvzC3xSo0BxhNJfBYA+yLXqjbzeWSEE6aPGeqXoTr7VNih7AqLyYpm JtJjCNpbGhGI0yUovbWtk1GwIW9/+hWeJbzlBejQmJ3VkEIErKT1nOvNOCw77BByp7I28L SyGxmlQbdIVW//Y+g99igQKtt6VGJY4= Date: Tue, 16 Apr 2019 19:42:59 +0200 From: Borislav Petkov To: Cong Wang Cc: LKML , linux-edac@vger.kernel.org, Tony Luck , Thomas Gleixner Subject: Re: [PATCH 2/2] ras: close the race condition with timer Message-ID: <20190416174259.GK31772@zn.tnic> References: <20190416012001.5338-1-xiyou.wangcong@gmail.com> <20190416012001.5338-2-xiyou.wangcong@gmail.com> <20190416095852.GA31772@zn.tnic> MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.10.1 (2018-07-13) Sender: linux-edac-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-edac@vger.kernel.org Message-ID: <20190416174259.BG_58rzZ5epgIl98EEHttj1qv6c-TMVneh5UMH4uDtY@z> On Tue, Apr 16, 2019 at 10:09:49AM -0700, Cong Wang wrote: > They are just locks requiring different contexts, I don't see how one is > simpler than the other. Do you mind to be more specific? Yes, I'd like for this whole CEC code to be lazy and preemptible as it is not at all important when it does its work, as long as it gets it done eventually. Can't be preemptible with spinlocks. > By workqueue, you must mean to say delayed work, right? > > But the global workqueue is not serialized either, Serialized with what? Insertions? That's what the mutex is for and the insertions happen in process context. So yeah, delayed_work sounds like what it should do. I.e., queue_delayed_work() and decay_interval_set() should do mod_delayed_work(). Something along those lines, anyways. Thx. -- Regards/Gruss, Boris. Good mailing practices for 400: avoid top-posting and trim the reply.