Received: by 2002:a25:ab43:0:0:0:0:0 with SMTP id u61csp2384259ybi; Sun, 9 Jun 2019 10:23:08 -0700 (PDT) X-Google-Smtp-Source: APXvYqxn4IgbX8d4gcTSS7LI7qW0g6fZEv1ENONsNQBAydFz9qQZz4KBNNW8QdLISbNYb2D3YJ2C X-Received: by 2002:a17:90a:5d0a:: with SMTP id s10mr16968807pji.94.1560100988802; Sun, 09 Jun 2019 10:23:08 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1560100988; cv=none; d=google.com; s=arc-20160816; b=XD/OTjyMe8Ao6yXZZchhlf88RCaJOeP25QNdSRO8bF5f8wZ5LMVW8J3jJiASoTZfrK mfWA2gi5meIDHlRCmZGgkc8dCtFz+uZa009EyaSYFBVckVyiEJ2AejGdcc/ztjvN3G0R UVpKN3z6hlBaqMPTq41quXG+mbcZU7ooFJS4x0EffZGw5MddfAn5leRpAM9X7o37DAcx tjVeBnRW3R7Rlb8BD4K/5USZSO77LKYRkfT2RiZngI4DGAEe7Etk/F+jDU8byUrZBz7j NzDaPSXhtjMkVi+NRN3YWAa8ghtiwjKnk1fSXDIDNCMNYnzUAg1QoRZZUY8um+KuEVAB xJLA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=r4ODeuHpce2WxEQnkSPVTmmhYFm4WjEg0OxkSgX0rDY=; b=FMJm8TWYkt1GsWTF24wuc9fDlcJzCowZR0RJb84nsyPNpHMXhhr+NH9f4TIyt/VJu5 73CvItY47pv3iTXXxHV8QcWkdB6McEE+0lAa5bCLGonxf4jS2NVcGoxXiIpn+dZiqQtH N6JdkcYT2jP4/aVg4ZFxddouDihRDnSJR/DLMLknNWTfGj477/LDfWXA5Ra1D29Q6y0g l+CWZuOJP1mC1Vvo1SbM8eZTjglggNZmLbEHhJu+CbjdI+HR4f/BRvWgaYyL7nRLbQGJ 0HPZqtHffg5hBlsoIkIL8QGYKyQ1jtpgaBJR7N4Ak43r/6QlWE1iiI3EXCwh9G4I+nlU aAvQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b="GPeHn/dl"; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id f62si7694208plf.88.2019.06.09.10.22.53; Sun, 09 Jun 2019 10:23:08 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b="GPeHn/dl"; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1731124AbfFIRT6 (ORCPT + 99 others); Sun, 9 Jun 2019 13:19:58 -0400 Received: from mail.kernel.org ([198.145.29.99]:46978 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1731071AbfFIQsD (ORCPT ); Sun, 9 Jun 2019 12:48:03 -0400 Received: from localhost (83-86-89-107.cable.dynamic.v4.ziggo.nl [83.86.89.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id B79FA206C3; Sun, 9 Jun 2019 16:48:02 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1560098883; bh=IbT8X3DgZm5nk+OV3IJ5ml/dTNHDkUuw6SOafKmU2Gc=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=GPeHn/dl919QWKg/4JDXQJRVsg5Ab/+X0Y//JY2Len1Yj3ntHdd3Tm0CFhdUoqlfg 73vFut+Kcn2xYTXEHTtlpBfwTptknLSGhIo67NM2E0OZeCDu3gDtIZxVhhS0/jR01b R2bgLGaDAXdCv5q2zwZLqgrmk44KB8ki+aMpFBrU= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Kees Cook , "Joel Fernandes (Google)" Subject: [PATCH 4.19 23/51] pstore: Remove needless lock during console writes Date: Sun, 9 Jun 2019 18:42:04 +0200 Message-Id: <20190609164128.456426716@linuxfoundation.org> X-Mailer: git-send-email 2.21.0 In-Reply-To: <20190609164127.123076536@linuxfoundation.org> References: <20190609164127.123076536@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Kees Cook commit b77fa617a2ff4d6beccad3d3d4b3a1f2d10368aa upstream. Since the console writer does not use the preallocated crash dump buffer any more, there is no reason to perform locking around it. Fixes: 70ad35db3321 ("pstore: Convert console write to use ->write_buf") Signed-off-by: Kees Cook Reviewed-by: Joel Fernandes (Google) Signed-off-by: Greg Kroah-Hartman --- fs/pstore/platform.c | 29 ++++++----------------------- 1 file changed, 6 insertions(+), 23 deletions(-) --- a/fs/pstore/platform.c +++ b/fs/pstore/platform.c @@ -476,31 +476,14 @@ static void pstore_unregister_kmsg(void) #ifdef CONFIG_PSTORE_CONSOLE static void pstore_console_write(struct console *con, const char *s, unsigned c) { - const char *e = s + c; + struct pstore_record record; - while (s < e) { - struct pstore_record record; - unsigned long flags; + pstore_record_init(&record, psinfo); + record.type = PSTORE_TYPE_CONSOLE; - pstore_record_init(&record, psinfo); - record.type = PSTORE_TYPE_CONSOLE; - - if (c > psinfo->bufsize) - c = psinfo->bufsize; - - if (oops_in_progress) { - if (!spin_trylock_irqsave(&psinfo->buf_lock, flags)) - break; - } else { - spin_lock_irqsave(&psinfo->buf_lock, flags); - } - record.buf = (char *)s; - record.size = c; - psinfo->write(&record); - spin_unlock_irqrestore(&psinfo->buf_lock, flags); - s += c; - c = e - s; - } + record.buf = (char *)s; + record.size = c; + psinfo->write(&record); } static struct console pstore_console = {