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=-8.2 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED,USER_AGENT_SANE_1 autolearn=ham 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 93B33C76191 for ; Thu, 18 Jul 2019 10:37:35 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 6B56A21783 for ; Thu, 18 Jul 2019 10:37:35 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2389846AbfGRKhe (ORCPT ); Thu, 18 Jul 2019 06:37:34 -0400 Received: from asavdk4.altibox.net ([109.247.116.15]:47058 "EHLO asavdk4.altibox.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726423AbfGRKhd (ORCPT ); Thu, 18 Jul 2019 06:37:33 -0400 Received: from ravnborg.org (unknown [158.248.194.18]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by asavdk4.altibox.net (Postfix) with ESMTPS id 0121980335; Thu, 18 Jul 2019 12:37:27 +0200 (CEST) Date: Thu, 18 Jul 2019 12:37:26 +0200 From: Sam Ravnborg To: Daniel Vetter Cc: Intel Graphics Development , Jens Remus , linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, linux-fbdev@vger.kernel.org, linux-s390@vger.kernel.org, Greg Kroah-Hartman , Nicolas Pitre , Martin Hostettler , Adam Borowski , Mikulas Patocka , Daniel Vetter Subject: Re: [PATCH] vt: Grab console_lock around con_is_bound in show_bind Message-ID: <20190718103726.GA17341@ravnborg.org> References: <20190718080903.22622-1-daniel.vetter@ffwll.ch> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20190718080903.22622-1-daniel.vetter@ffwll.ch> User-Agent: Mutt/1.10.1 (2018-07-13) X-CMAE-Score: 0 X-CMAE-Analysis: v=2.3 cv=VcLZwmh9 c=1 sm=1 tr=0 a=UWs3HLbX/2nnQ3s7vZ42gw==:117 a=UWs3HLbX/2nnQ3s7vZ42gw==:17 a=jpOVt7BSZ2e4Z31A5e1TngXxSK0=:19 a=kj9zAlcOel0A:10 a=7gkXJVJtAAAA:8 a=VnNF1IyMAAAA:8 a=VwQbUJbxAAAA:8 a=e5mUnYsNAAAA:8 a=ag1SF4gXAAAA:8 a=KKAkSRfTAAAA:8 a=20KFwNOVAAAA:8 a=QyXUC8HyAAAA:8 a=II7inwo8ijMyP0ieMOUA:9 a=CjuIK1q_8ugA:10 a=E9Po1WZjFZOl8hwRPBS3:22 a=AjGcO6oz07-iQ99wixmX:22 a=Vxmtnl_E_bksehYqCbjh:22 a=Yupwre4RP9_Eg_Bd0iYG:22 a=cvBusfyB2V15izCimMoJ:22 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Daniel. Patch looks good. You can add my: Acked-by: Sam Ravnborg For good measure I checked all other users of con_is_bound() and they looked good from a locking perspective. Then I looked a bit more for missing locking and lost the overview. On Thu, Jul 18, 2019 at 10:09:03AM +0200, Daniel Vetter wrote: > Not really harmful not to, but also not harm in grabbing the lock. And > this shuts up a new WARNING I introduced in commit ddde3c18b700 ("vt: > More locking checks"). Maybe add the warning that Jens reported to the changelog, in case someone hits something that looks like this warning. Mainly for google fodder, but also in case changelogs are searched. Sam > > Reported-by: Jens Remus > Cc: linux-kernel@vger.kernel.org > Cc: dri-devel@lists.freedesktop.org > Cc: linux-fbdev@vger.kernel.org > Cc: linux-s390@vger.kernel.org > Cc: Greg Kroah-Hartman > Cc: Nicolas Pitre > Cc: Martin Hostettler > Cc: Adam Borowski > Cc: Mikulas Patocka > Signed-off-by: Daniel Vetter > Cc: Daniel Vetter > Cc: Sam Ravnborg > --- > drivers/tty/vt/vt.c | 6 +++++- > 1 file changed, 5 insertions(+), 1 deletion(-) > > diff --git a/drivers/tty/vt/vt.c b/drivers/tty/vt/vt.c > index ec92f36ab5c4..34aa39d1aed9 100644 > --- a/drivers/tty/vt/vt.c > +++ b/drivers/tty/vt/vt.c > @@ -3771,7 +3771,11 @@ static ssize_t show_bind(struct device *dev, struct device_attribute *attr, > char *buf) > { > struct con_driver *con = dev_get_drvdata(dev); > - int bind = con_is_bound(con->con); > + int bind; > + > + console_lock(); > + bind = con_is_bound(con->con); > + console_unlock(); > > return snprintf(buf, PAGE_SIZE, "%i\n", bind); > } > -- > 2.20.1