Received: by 10.192.165.148 with SMTP id m20csp3879165imm; Mon, 30 Apr 2018 07:56:48 -0700 (PDT) X-Google-Smtp-Source: AB8JxZps2wMlNBoMvNyN2tEzecJAtmw8GdykEnYO3kxLwyLEPRD2BZS65VGI/G6kiT5yyqibWh0V X-Received: by 2002:a63:7208:: with SMTP id n8-v6mr8192835pgc.420.1525100208693; Mon, 30 Apr 2018 07:56:48 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1525100208; cv=none; d=google.com; s=arc-20160816; b=hs1PtWG5WZzsrsv6mxo6v7HhxvIPwPrfv0GtcNpSmCcWQZmsNACyZtBCX4qCg3OaB+ vJtXkjsuuyjEImNe0pKi5sTIAlPdVNLIqUvez97+J9452INWUj/hkNEbfzDoicyQqKmY hFktDo2+Ev2WWy4pNENPHu4/bCAH7bQpBWTUzdyFj0Mn2GeWVgmTA2vshe7Az3+t2T4e 5oB2Kx07FOZI13npDB3558UKyhza+HvEECxj0hmj5xvN7POShVGdF64eOObueiv76z8S j3s0utOSjmq8/qwhRz2BcVHsuZFV0PszhavknQrGawlunQCRcCHWoBkuRLZsFowdAGNA 98Qw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:date:subject:cc:to:from :dkim-signature:arc-authentication-results; bh=ocO7Yk13OYCSN4eCYPhuRJ29wJp1e1v9UBvMeP671W0=; b=1JPkf2e2ZEDLrnEzkoSw/tEBYyts6PCkWL2dQwPdxIqpSOzBa9ROwF+rANnLO8k/EN sefduExjFR57MFWQhWL4wjmYB/i08i/Su4wJWTynIwNNy0n1FVeUF1LlxG8Jd0NJXwHa ZeDoqWB1fvI/KIYsCl5yPh6dr09Q7hdTrfomcot+gALJKVrOgyFw1T7w3GNhYNboyRRi 5bQkY82CkoYZKFD1XEW3Fxz6gHJWKruCpMPzjRk35eOZjXrp96zsdZQzumLvXlqUoYop /ri5Rfxl65WYI73Ueh1ar54fGkiq1+8oikUpfoa9euJrdVP1B9XH64DRxJFcf1eqT6ow 11/Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=pVbNruL2; 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; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id m39-v6si7624505plg.570.2018.04.30.07.56.34; Mon, 30 Apr 2018 07:56:48 -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=@gmail.com header.s=20161025 header.b=pVbNruL2; 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; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754283AbeD3O4K (ORCPT + 99 others); Mon, 30 Apr 2018 10:56:10 -0400 Received: from mail-pf0-f193.google.com ([209.85.192.193]:42966 "EHLO mail-pf0-f193.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751511AbeD3O4J (ORCPT ); Mon, 30 Apr 2018 10:56:09 -0400 Received: by mail-pf0-f193.google.com with SMTP id a11so6920284pfn.9 for ; Mon, 30 Apr 2018 07:56:09 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id; bh=ocO7Yk13OYCSN4eCYPhuRJ29wJp1e1v9UBvMeP671W0=; b=pVbNruL2lyjQ2dDY4C1L9I484ZDuZrd4Zc0RTCdShKveWlKvsja0E1ooNlsccxe0Vi Sofq+W6nNFZEIEhmJPz+976csNQdHmhfQ17tdR7B9emNxevTUIPaPBxqWM8NalgxSxge udxojRPGZW/yCoXWFoN/+2oRQzatyiLg49H2epD6WEglbvrkDRgpOIjVSn1afNxxOWa+ AwD+dDV+ZsNjopT+hZ0xL+EtxQSo4XuBT32Qqrzzyl+8P/AmuEKV507I3WLcsAd0KodE FxTW2RAmh2zMaIYfH2vdHaYBGIyynMak0QbBBhgDEV/D+rZn2g00eKKsOhJZtMU/pnhG eU0Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=ocO7Yk13OYCSN4eCYPhuRJ29wJp1e1v9UBvMeP671W0=; b=nNumxWef5dXc1m3pQ0L5pTN0H9xorMYWystHdUXyYQBlBAa5wxOZ0LUy/iMajRmBj3 UINY0/67yhPYlS7QTQwsEGE+6eQ509xYgpVwh0YQaCSapHCwSVR6kLh7HBdTjXHwF3PL xMQNOsUoj5zvDpAggUiUK0VPWQ+5dhVbT1MCsihPJYKo4SpLXE/o6Z+PvD56pW2PDO9N J+glt+EbV2SLgkiPHGlv8J8Y81EemrJ6NzSGA0bTz8Jxsb9Cg7R1Q/O7BxDUSkMpsZcf bfu5FbTzMnarCWRIpIDLpTz6J+GiApvld19GqV48bsXHWQqA4eWyVrsX6qzKsQsuaA7T ZGcQ== X-Gm-Message-State: ALQs6tBKxn1QFh1J/6bq62pObNiz/eB65pJb7gvnFZABHN2AyrXM9/5u 7yCmXpNRo3vkzVYx31t6xxc= X-Received: by 2002:a63:7981:: with SMTP id u123-v6mr10258809pgc.328.1525100168701; Mon, 30 Apr 2018 07:56:08 -0700 (PDT) Received: from roar.au.ibm.com (59-102-70-78.tpgi.com.au. [59.102.70.78]) by smtp.gmail.com with ESMTPSA id a12sm19132534pfe.78.2018.04.30.07.56.04 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 30 Apr 2018 07:56:07 -0700 (PDT) From: Nicholas Piggin To: linuxppc-dev@lists.ozlabs.org Cc: Nicholas Piggin , Benjamin Herrenschmidt , Greg Kroah-Hartman , Jiri Slaby , linux-kernel@vger.kernel.org Subject: [PATCH 00/15] hvc and powerpc opal console latency reduction Date: Tue, 1 May 2018 00:55:43 +1000 Message-Id: <20180430145558.4308-1-npiggin@gmail.com> X-Mailer: git-send-email 2.17.0 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org I'm seeing scattered reports of hard lockups triggering in the OPAL console code. I haven't got a full latency trace -- they are difficult to reproduce and sometimes just show up in dmesg of a bug report when the system is having other issues. But it does seem like there are some improvements that can be made to the hvc console and powerpc opal driver. I'm not sure how this series should be merged yet, but we can cross that if/when it comes. Possibly all can go via the tty tree with acks from powerpc maintainers. Comments appreciated. Thanks, Nick -- Nicholas Piggin (15): powerpc/powernv: opal_put_chars partial write fix powerpc/powernv: Fix OPAL console driver OPAL_BUSY loops powerpc/powernv: opal-kmsg standardise OPAL_BUSY handling powerpc/powernv: opal-kmsg use flush fallback from console code powerpc/powernv: Implement and use opal_flush_console powerpc/powernv: Remove OPALv1 support from opal console driver powerpc/powernv: move opal console flushing to udbg powerpc/powernv: implement opal_put_chars_atomic tty: hvc: remove unexplained "just in case" spin delay tty: hvc: use mutex instead of spinlock for hvc_structs lock tty: hvc: hvc_poll break hv read loop tty: hvc: hvc_poll may sleep tty: hvc: hvc_write may sleep tty: hvc: introduce the hv_ops.flush operation for hvc drivers powerpc/powernv: provide a console flush operation for opal hvc driver arch/powerpc/include/asm/opal.h | 3 + arch/powerpc/platforms/powernv/opal-kmsg.c | 30 +--- arch/powerpc/platforms/powernv/opal.c | 176 +++++++++++++------ drivers/tty/hvc/hvc_console.c | 194 +++++++++++++-------- drivers/tty/hvc/hvc_console.h | 1 + drivers/tty/hvc/hvc_opal.c | 33 ++-- 6 files changed, 276 insertions(+), 161 deletions(-) -- 2.17.0