Received: by 2002:ac0:da4c:0:0:0:0:0 with SMTP id a12csp536057imi; Fri, 22 Jul 2022 04:31:23 -0700 (PDT) X-Google-Smtp-Source: AGRyM1sRxRvW4bSCRZ+aaQJ70Vw8x/yQO81j93udJrzs7XKclqRenZFMSpLcRuj5ei4jNP0t/VfU X-Received: by 2002:a9d:7d09:0:b0:61c:78c4:3986 with SMTP id v9-20020a9d7d09000000b0061c78c43986mr15151otn.297.1658489482264; Fri, 22 Jul 2022 04:31:22 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1658489482; cv=none; d=google.com; s=arc-20160816; b=kCNyGhmelpoMW2ulOLHcBLaaQ4qy9rmpZ5IImAigObPkSq2+sVcHt2tW2XBB3Cj/Pu BZ6FTLk9GfKo+tXW55P0Ofag/lcCnqFwf02bjSuncMPe3YXuCYrpnZBx7ARgIlyBnY6i bHb1gfUNfimZnwkmxai0CJI/jKdq8BGmc8tUc0yaqokUEm1T1JVG0W0942kUuQE9P0zK Tzacmip3Ith78v/jdO7fs90SJYma+s8h6WBZqQzlxjesMGjL+SFbS9xrRkVmQjI+qN/v qhTHTt1QM9Amcjs4F+LThiYxMpwiVu0aWKUA6/pIHSNyVwnJp0e5W3XFNM9b68d7vwYJ iSVw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:mime-version:message-id:date:subject:cc:to:from; bh=x+YgML80LPuJfpolZ/njNKpJUDyvVzN0SFrzmDoIH1E=; b=m/pLOk5R7QsqiXoNc3kISTpNNfLBpCivc9YZ5fG+z0ujBnqSQZY7GBewwrVZuwbAx1 dANpDPKu2CQZBhWhnxM2pYXkpHSJT7glaFnDexqtCZNyEJRshvSWGQPoH/4R3+jh6U+x tpJ40D1ocXPf7NpW2FWs+rlTCqqIjmuodmKN49wNymLnokJO9wO8WBof9ogR1dbwpEXV b1jGtXiDwKTFqDfQSxY6pbeNn8yvg8Ab7dLt51qzIO5gN57maiashlQNZIYIHfcS/oY+ j/7qSq3BEd2pHeSJyxqApkUOA5zEDvTuQ1KaS2kimJOtdMSI486cAnhHwNB7Sx5i+i2C j4Gw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=huawei.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id bp21-20020a056820199500b00435ba714001si3412573oob.24.2022.07.22.04.31.08; Fri, 22 Jul 2022 04:31:22 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=huawei.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234485AbiGVLaa (ORCPT + 99 others); Fri, 22 Jul 2022 07:30:30 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:59906 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230134AbiGVLa2 (ORCPT ); Fri, 22 Jul 2022 07:30:28 -0400 Received: from frasgout.his.huawei.com (frasgout.his.huawei.com [185.176.79.56]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id E090A743F5; Fri, 22 Jul 2022 04:30:26 -0700 (PDT) Received: from fraeml702-chm.china.huawei.com (unknown [172.18.147.207]) by frasgout.his.huawei.com (SkyGuard) with ESMTP id 4Lq6Z42k6Wz686wT; Fri, 22 Jul 2022 19:25:48 +0800 (CST) Received: from lhreml724-chm.china.huawei.com (10.201.108.75) by fraeml702-chm.china.huawei.com (10.206.15.51) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.2375.24; Fri, 22 Jul 2022 13:30:23 +0200 Received: from localhost.localdomain (10.69.192.58) by lhreml724-chm.china.huawei.com (10.201.108.75) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.24; Fri, 22 Jul 2022 12:30:20 +0100 From: John Garry To: , , , , , , CC: , , John Garry Subject: [PATCH 0/6] libsas and drivers: NCQ error handling Date: Fri, 22 Jul 2022 19:24:03 +0800 Message-ID: <1658489049-232850-1-git-send-email-john.garry@huawei.com> X-Mailer: git-send-email 2.8.1 MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [10.69.192.58] X-ClientProxiedBy: dggems702-chm.china.huawei.com (10.3.19.179) To lhreml724-chm.china.huawei.com (10.201.108.75) X-CFilter-Loop: Reflected X-Spam-Status: No, score=-4.2 required=5.0 tests=BAYES_00,RCVD_IN_DNSWL_MED, RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org As reported in [0], the pm8001 driver NCQ error handling more or less duplicates what libata does in link error handling, as follows: - abort all commands - do autopsy with read log ext 10 command - reset the target to recover Indeed for the hisi_sas driver we want to add similar handling for NCQ errors. This series add a new libsas API - sas_ata_link_abort() - to handle host NCQ errors, and fixes up pm8001 and hisi_sas drivers to use it. As mentioned in the pm8001 changeover patch, I would prefer a better place to locate the SATA ABORT command (rather that nexus reset callback). I would appreciate some testing of the pm8001 change as the read log ext10 command mostly hangs on my arm64 machine - these arm64 hangs are a known issue. Finally with these changes we can make the libsas task alloc/free APIs private, which they should always have been. Based on v5.19-rc6 [0] https://lore.kernel.org/linux-scsi/8fb3b093-55f0-1fab-81f4-e8519810a978@huawei.com/ John Garry (5): scsi: pm8001: Modify task abort handling for SATA task scsi: libsas: Add sas_ata_link_abort() scsi: pm8001: Use sas_ata_link_abort() to handle NCQ errors scsi: hisi_sas: Don't issue ATA softreset in hisi_sas_abort_task() scsi: libsas: Make sas_{alloc, alloc_slow, free}_task() private Xingui Yang (1): scsi: hisi_sas: Add SATA_DISK_ERR bit handling for v3 hw drivers/scsi/hisi_sas/hisi_sas_main.c | 5 +- drivers/scsi/hisi_sas/hisi_sas_v3_hw.c | 22 ++- drivers/scsi/libsas/sas_ata.c | 10 ++ drivers/scsi/libsas/sas_init.c | 3 - drivers/scsi/libsas/sas_internal.h | 4 + drivers/scsi/pm8001/pm8001_hwi.c | 194 +++++++------------------ drivers/scsi/pm8001/pm8001_sas.c | 13 ++ drivers/scsi/pm8001/pm8001_sas.h | 8 +- drivers/scsi/pm8001/pm80xx_hwi.c | 177 ++-------------------- include/scsi/libsas.h | 4 - include/scsi/sas_ata.h | 5 + 11 files changed, 132 insertions(+), 313 deletions(-) -- 2.35.3