Received: by 2002:a25:868d:0:0:0:0:0 with SMTP id z13csp2864339ybk; Mon, 18 May 2020 09:45:04 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzLsO4rTWmtP+7r381TgvKQqes5Cb6xW4YY+MR+0TuycU9Ur4Zs4uEiUKOXHMeNzP3pGhwy X-Received: by 2002:a50:c60a:: with SMTP id k10mr7979272edg.326.1589820303837; Mon, 18 May 2020 09:45:03 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1589820303; cv=none; d=google.com; s=arc-20160816; b=TIXGIDD4zN0mTP185gY4atcFyiryJyTJK2V+AIUvcJSxv/1i1aeKKXEheFxBx+5xgt J2jTCyyZy/HcLI3cWElnYieDb/ZiAgMxSGe81Emba2kTNXdaQuxCc3uNjqEg7lV/OX53 BZTFn4dxYb4Y8/Md+QqwM0r9p6agt1WcuRIfOKpZXFKOASFjwlVd4GV6acK4NCPTN8fm uiuTJbNE9X355CHdrTrWfI/Yp/Gom0kQhcgXno8Axh4jn6SP1zzD352I4InI9vDV6hbn yCjAeN19EKjy92xTjArW5xy+HrQwieRd/sWh4Zt+1IyYN8jtnJTmLzylBh5xZwgKTMV6 zLKg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-disposition:mime-version:references:message-id:subject:cc :to:from:date; bh=dqKSK9cFf54dS3ketDBN0EGpQq9sSmRTQY0P+2Qci1I=; b=sDRwMuEhCiuN5KDDKt6ghKjhpVME8Emh5KJcM3Inpz02Grw5H9Dlh3K2/YNS9ZPqTn rwPNHFqrTSPEMn/J9mDhKpgB1V3gjJh5gh7iq5qeyMsaLl7a81GpfdUfLMSSsB9c8BVr AfQLUkses7bGcHm/yumiJ8n0v2pcfRei1ycvAqWQ7HMB48Nk3i3yo/qHHt3k6DYZNkXR nOVcbAtDqV/cVKVkdDzmMiqw9Z1OsSgEXYGK7c5+799REbsvAf66A1vh2opPVBkROFed krOCN1aMz2RrJnncnq2oAi9z7YZEpw0DwPpgqgbbK5YX280SI20oHqW/coJs+oAGmHlo jVuA== ARC-Authentication-Results: i=1; mx.google.com; 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 a1si5179146edn.540.2020.05.18.09.44.40; Mon, 18 May 2020 09:45:03 -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; 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 S1728201AbgERQmc (ORCPT + 99 others); Mon, 18 May 2020 12:42:32 -0400 Received: from mx2.suse.de ([195.135.220.15]:51462 "EHLO mx2.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726958AbgERQmc (ORCPT ); Mon, 18 May 2020 12:42:32 -0400 X-Virus-Scanned: by amavisd-new at test-mx.suse.de Received: from relay2.suse.de (unknown [195.135.220.254]) by mx2.suse.de (Postfix) with ESMTP id 9CFEAAC6C; Mon, 18 May 2020 16:42:32 +0000 (UTC) Date: Mon, 18 May 2020 09:37:00 -0700 From: Davidlohr Bueso To: Paolo Bonzini Cc: tglx@linutronix.de, peterz@infradead.org, maz@kernel.org, bigeasy@linutronix.de, rostedt@goodmis.org, torvalds@linux-foundation.org, will@kernel.org, joel@joelfernandes.org, linux-kernel@vger.kernel.org, kvm@vger.kernel.org, Davidlohr Bueso Subject: Re: [PATCH 4/5] rcuwait: Introduce rcuwait_active() Message-ID: <20200518163700.4nn4csjlbpcixmsv@linux-p48b> References: <20200424054837.5138-1-dave@stgolabs.net> <20200424054837.5138-5-dave@stgolabs.net> <57309494-58bf-a11e-e4ac-e669e6af22f2@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii; format=flowed Content-Disposition: inline In-Reply-To: <57309494-58bf-a11e-e4ac-e669e6af22f2@redhat.com> User-Agent: NeoMutt/20180716 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, 18 May 2020, Paolo Bonzini wrote: >On 24/04/20 07:48, Davidlohr Bueso wrote: >> +/* >> + * Note: this provides no serialization and, just as with waitqueues, >> + * requires care to estimate as to whether or not the wait is active. >> + */ >> +static inline int rcuwait_active(struct rcuwait *w) >> +{ >> + return !!rcu_dereference(w->task); >> +} > >This needs to be changed to rcu_access_pointer: > > >--------------- 8< ----------------- >From: Paolo Bonzini >Subject: [PATCH] rcuwait: avoid lockdep splats from rcuwait_active() > >rcuwait_active only returns whether w->task is not NULL. This is >exactly one of the usecases that are mentioned in the documentation >for rcu_access_pointer() where it is correct to bypass lockdep checks. > >This avoids a splat from kvm_vcpu_on_spin(). > >Reported-by: Wanpeng Li >Cc: Peter Zijlstra >Signed-off-by: Paolo Bonzini Acked-by: Davidlohr Bueso