From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752915AbeDQXfh (ORCPT ); Tue, 17 Apr 2018 19:35:37 -0400 Received: from victor.provo.novell.com ([137.65.250.26]:41021 "EHLO prv3-mh.provo.novell.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751882AbeDQXfg (ORCPT ); Tue, 17 Apr 2018 19:35:36 -0400 From: Martin Wilck To: "Martin K. Petersen" Cc: linux-scsi@vger.kernel.org, linux-kernel@vger.kernel.org, Hannes Reinecke , James Bottomley , Xose Vazquez Perez , Bart Van Assche Subject: [PATCH v3 0/6] scsi: handle special return codes for ABORTED COMMAND Date: Wed, 18 Apr 2018 01:35:05 +0200 Message-Id: <20180417233511.6573-1-mwilck@suse.com> X-Mailer: git-send-email 2.16.1 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Here is another attempt to handle the special return codes for ABORTED COMMAND for certain SCSI devices. Following MKP's recommendation, I've created two new BLIST flags, simplifying the code in scsi_error.c compared to the previous versions. Rather than using "free" bits, I increased the length of blist_flag_t to 64 bit, and used previously unused bits. I also added checking for obsolete and unused bits. For the blist_flag_t size increase, I used sparse to try and avoid regressions; that necessitated fixing sparse's errors for the current code first. Martin Wilck (6): ilog2: create truly constant version for sparse scsi: use const_ilog2 for array indices scsi: devinfo: change blist_flag_t to 64bit scsi: devinfo: warn on undefined blist flags scsi: devinfo: add BLIST_RETRY_ITF for EMC Symmetrix scsi: devinfo: BLIST_RETRY_ASC_C1 for Fujitsu ETERNUS drivers/scsi/Makefile | 2 +- drivers/scsi/scsi_debugfs.c | 2 +- drivers/scsi/scsi_devinfo.c | 28 +++++++++++++---- drivers/scsi/scsi_error.c | 7 +++++ drivers/scsi/scsi_sysfs.c | 2 +- include/linux/log2.h | 35 ++++++++++++++------- include/scsi/scsi_device.h | 2 +- include/scsi/scsi_devinfo.h | 75 ++++++++++++++++++++++++++++++--------------- 8 files changed, 107 insertions(+), 46 deletions(-) -- 2.16.1