From patchwork Thu Jul 23 21:47:00 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: "Cabiddu, Giovanni" X-Patchwork-Id: 11681659 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 74941722 for ; Thu, 23 Jul 2020 21:47:26 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 5BD662086A for ; Thu, 23 Jul 2020 21:47:26 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726390AbgGWVrZ (ORCPT ); Thu, 23 Jul 2020 17:47:25 -0400 Received: from mga04.intel.com ([192.55.52.120]:44370 "EHLO mga04.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726173AbgGWVrZ (ORCPT ); Thu, 23 Jul 2020 17:47:25 -0400 IronPort-SDR: IHiOQUigsowuovwF9++LoAbHkFLEviz8Ueu8V+fucqfxakLRBFcc4mh+cItJlfNLDfdPwfAvJe sTWaVTzFJH6Q== X-IronPort-AV: E=McAfee;i="6000,8403,9691"; a="148119970" X-IronPort-AV: E=Sophos;i="5.75,388,1589266800"; d="scan'208";a="148119970" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga004.fm.intel.com ([10.253.24.48]) by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 23 Jul 2020 14:47:25 -0700 IronPort-SDR: DR3gv6LNQVyX5Ww+GFh6oO5u5AZ/6kZgXFBP/+g4YSvs7wxsWPKWKERIyDixI8ngadk6lYYImp JN37i6bEyAvw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.75,388,1589266800"; d="scan'208";a="311183940" Received: from silpixa00400314.ir.intel.com (HELO silpixa00400314.ger.corp.intel.com) ([10.237.222.51]) by fmsmga004.fm.intel.com with ESMTP; 23 Jul 2020 14:47:22 -0700 From: Giovanni Cabiddu To: alex.williamson@redhat.com, herbert@gondor.apana.org.au Cc: cohuck@redhat.com, nhorman@redhat.com, vdronov@redhat.com, bhelgaas@google.com, mark.a.chambers@intel.com, gordon.mcfadden@intel.com, ahsan.atta@intel.com, fiona.trahe@intel.com, qat-linux@intel.com, kvm@vger.kernel.org, linux-crypto@vger.kernel.org, linux-pci@vger.kernel.org, linux-kernel@vger.kernel.org, Giovanni Cabiddu Subject: [PATCH v3 0/5] vfio/pci: add denylist and disable qat Date: Thu, 23 Jul 2020 22:47:00 +0100 Message-Id: <20200723214705.5399-1-giovanni.cabiddu@intel.com> X-Mailer: git-send-email 2.26.2 MIME-Version: 1.0 Sender: linux-crypto-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-crypto@vger.kernel.org This patchset defines a denylist of devices in the vfio-pci module and adds the current generation of Intel(R) QuickAssist devices to it as they are not designed to run in an untrusted environment. By default, if a device is in the denylist, the probe of vfio-pci fails. If a user wants to use a device in the denylist, he needs to disable the full denylist providing the option disable_denylist=1 at the load of vfio-pci or specifying that parameter in a config file in /etc/modprobe.d. This series also moves the device ids definitions present in the qat driver to linux/pci_ids.h since they will be shared between the vfio-pci and the qat drivers and replaces the custom ADF_SYSTEM_DEVICE macro with PCI_VDEVICE. The series is applicable to Herbert's tree. Patches 1 to 3 apply also to Alex's tree (next). Patches 4 and 5 are optional and can be applied at a later stage. Changes from v2: - Renamed blocklist in denylist - Patch #2: reworded module parameter description to clarify why a device is in the denylist - Patch #2: reworded warning that occurs when denylist is enabled and device is present in that list Changes from v1: - Reworked commit messages: Patches #1, #2 and #3: capitalized first character after column to comply to subject line convention Patch #3: Capitalized QAT acronym and added link and doc number for document "IntelĀ® QuickAssist Technology (IntelĀ® QAT) Software for Linux" Giovanni Cabiddu (5): PCI: Add Intel QuickAssist device IDs vfio/pci: Add device denylist vfio/pci: Add QAT devices to denylist crypto: qat - replace device ids defines crypto: qat - use PCI_VDEVICE drivers/crypto/qat/qat_c3xxx/adf_drv.c | 11 ++--- drivers/crypto/qat/qat_c3xxxvf/adf_drv.c | 11 ++--- drivers/crypto/qat/qat_c62x/adf_drv.c | 11 ++--- drivers/crypto/qat/qat_c62xvf/adf_drv.c | 11 ++--- .../crypto/qat/qat_common/adf_accel_devices.h | 6 --- drivers/crypto/qat/qat_common/qat_hal.c | 7 +-- drivers/crypto/qat/qat_common/qat_uclo.c | 9 ++-- drivers/crypto/qat/qat_dh895xcc/adf_drv.c | 11 ++--- drivers/crypto/qat/qat_dh895xccvf/adf_drv.c | 11 ++--- drivers/vfio/pci/vfio_pci.c | 48 +++++++++++++++++++ include/linux/pci_ids.h | 6 +++ 11 files changed, 87 insertions(+), 55 deletions(-)