Received: by 2002:a05:6a10:206:0:0:0:0 with SMTP id 6csp2926618pxj; Sun, 23 May 2021 15:59:16 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyqQURCAH4FF8imqlfRjermGBc2H2jhihpw/VfEZk5l0s4l5+EWpNqpKSVmGqK7OcK0BHDv X-Received: by 2002:a05:6638:2728:: with SMTP id m40mr21532344jav.55.1621810756469; Sun, 23 May 2021 15:59:16 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1621810756; cv=pass; d=google.com; s=arc-20160816; b=WAO7F5asFeGQ59+cDxojmTrKQoNylbnSK1fHZYhXAiYQQIqgYmxFCdeNEJ8mPewel6 PfbRyBONfgbf6aM3zmdoWOUqD7muu++aOzrv2yuDXB3OvEZcaI8CllDbG7BK4+FEbobd Np4/ECgEhu34m5sJat9scARf0xm8oYg/r95A4VgIbK1Ul+LDCLgA6ze38q9uMNmrtwM/ U7T5ClJR8U1Fitujhq7TH67PVL0rW9YgJS7wxkpolqWdRraXkp+9h85KT4b+HnmsYJhO +hkHqOOFYgvmMVHP5j3k7PrJ9KljnU/41CnuMg3QczQ/ukXZzUkAKfT832UWj7S3SjmF enWQ== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:mime-version:in-reply-to:content-disposition :references:message-id:subject:cc:to:from:date:dkim-signature; bh=SvbFARpe/oVnQDDWiJWX59t+yNcvVXxvISmRzPXsdJg=; b=KLA9YAnlIzZabqGzCoe/w7ZwMUkTWM1iN0J+I7u6fG3EzgPh5jblANezEtEGGU917t D0bQqvjOw/hEA8W/XAuzm4b75VNl+UZjz21qJab+yQx8dy3T+1FjV9/6hxh/ncoRxCfn RrxCtOhV7G00i45WldD96dFQP0xu5qzQc9+Oil9Ws/P1E2G/41aFIXxb0mgYLmv7Q5pw 54N8xlItVyoQxAgCQL+YV6DVtU0VYTRiCXDY6zLB2HbYw8aRf1mx3zIX+9lk9+knqZic WmqBWXFLRjVdziLy/oK7DeeEpPxbGmJ89dPTwUVDBvJ+lR17F3/9OMmWtCC0SFSvsjRZ fk8A== ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@Nvidia.com header.s=selector2 header.b="I3rs3/HT"; arc=pass (i=1 spf=pass spfdomain=nvidia.com dkim=pass dkdomain=nvidia.com dmarc=pass fromdomain=nvidia.com); spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=nvidia.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id p8si12818618ioj.46.2021.05.23.15.59.03; Sun, 23 May 2021 15:59:16 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@Nvidia.com header.s=selector2 header.b="I3rs3/HT"; arc=pass (i=1 spf=pass spfdomain=nvidia.com dkim=pass dkdomain=nvidia.com dmarc=pass fromdomain=nvidia.com); spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=nvidia.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232035AbhEWW7S (ORCPT + 99 others); Sun, 23 May 2021 18:59:18 -0400 Received: from mail-co1nam11on2044.outbound.protection.outlook.com ([40.107.220.44]:48289 "EHLO NAM11-CO1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S231980AbhEWW7Q (ORCPT ); Sun, 23 May 2021 18:59:16 -0400 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Cj+XqEfpB8Ph/CZ1MYox6pm1l5BupoIVfM6KZysLlZzeSX6AbWjOdXf3mfGmUah+KZte7Oe4cxgXpcpvkBfWFK9QgVUaaVOQ7ymgKEhsD3n/7ROrBYB+42NWeepcXWNo3B1R4LsBNBsxEgBefmOFj/qOjxtu4sjeszi7Gwgl7Atc/HO2tZCtK6QpjoSUK0UE+WZbuCEkLWgTRDpsDZSEicvqaN5FqCA3TJGbJOtiAHy3nIKD51g3R10ecNe6JJVIWhMFzsdsEWRrKqHGQ5OF45HvrWgn6pYL951MV7XENaqbKM8y/qYd/3mAuLp45GwLoVsijp1L7qbnPtV1t7Cv/A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=SvbFARpe/oVnQDDWiJWX59t+yNcvVXxvISmRzPXsdJg=; b=f0wi1TO34wT7xkveoaDjU0L44VtXXmGavKbKIMLI16EgYw+r1ONv0z3hfbQI+x/RkAnDqeGD5BXb/sLKSP/UoORXgu2ckXlyPi9Kqx17i5PTyfwGZGq2SQt+0z23ylu38Wfj08tzyjAYyOFtoZ7zoAjW7JZo2c5EooB7LqQ6apqAKGNsGyB7Gms5d1VAuGu56JTBPsXQ3P+GQvkGpp9cVumveSQnaNnqsyOUOeqgDBIkLSWNGdyO2URiUw3/OKbt3ldxCMeoKawdPTT7bLLKTY0BYQAyo0l/pqd53xwu42dYatzErt/Uokery7bKR2E3edyeX6+updA4YxX2Fi/NYA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=SvbFARpe/oVnQDDWiJWX59t+yNcvVXxvISmRzPXsdJg=; b=I3rs3/HT3CDkoPMT8XSVuFljov2/tHNnAFT3ZH3D0u7Dp+ndzksu5DU86j1mvPBGrL3AaoD6SMDQsi0MoPhRIlmdnPS4D1NLCuTJluqGqlv97E0fRFivjgB4Rv0UzNb5rYlmAxvucUHWe/VcWCvoC4NMAqzMJZclDImy5nF+dyACeA4qqWCNfgx4txpcfEELvSssvcmY+3bA48V6XdadZNXtIJnLRQbCnv5Xe+Rk/tWQMCreJ3vUg4nYfpvi5UTq6FQKsStUQd503J894r8BUbrPms0n3bknd6WrcFhjEULQ+Sv+Ivicb5ql7rFQF353uf53gpkDam/4en2Hxr5Ycw== Authentication-Results: linux.ibm.com; dkim=none (message not signed) header.d=none;linux.ibm.com; dmarc=none action=none header.from=nvidia.com; Received: from BL0PR12MB5506.namprd12.prod.outlook.com (2603:10b6:208:1cb::22) by BL1PR12MB5079.namprd12.prod.outlook.com (2603:10b6:208:31a::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4150.26; Sun, 23 May 2021 22:57:48 +0000 Received: from BL0PR12MB5506.namprd12.prod.outlook.com ([fe80::3d51:a3b9:8611:684e]) by BL0PR12MB5506.namprd12.prod.outlook.com ([fe80::3d51:a3b9:8611:684e%7]) with mapi id 15.20.4150.027; Sun, 23 May 2021 22:57:48 +0000 Date: Sun, 23 May 2021 19:57:46 -0300 From: Jason Gunthorpe To: Tony Krowiak Cc: linux-s390@vger.kernel.org, linux-kernel@vger.kernel.org, borntraeger@de.ibm.com, cohuck@redhat.com, pasic@linux.vnet.ibm.com, jjherne@linux.ibm.com, alex.williamson@redhat.com, kwankhede@nvidia.com, frankja@linux.ibm.com, david@redhat.com, imbrenda@linux.ibm.com, hca@linux.ibm.com Subject: Re: [PATCH v4 2/2] s390/vfio-ap: control access to PQAP(AQIC) interception handler Message-ID: <20210523225746.GF1002214@nvidia.com> References: <20210521193648.940864-1-akrowiak@linux.ibm.com> <20210521193648.940864-3-akrowiak@linux.ibm.com> Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20210521193648.940864-3-akrowiak@linux.ibm.com> X-Originating-IP: [206.223.160.26] X-ClientProxiedBy: YT1PR01CA0065.CANPRD01.PROD.OUTLOOK.COM (2603:10b6:b01:2e::34) To BL0PR12MB5506.namprd12.prod.outlook.com (2603:10b6:208:1cb::22) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from mlx.ziepe.ca (206.223.160.26) by YT1PR01CA0065.CANPRD01.PROD.OUTLOOK.COM (2603:10b6:b01:2e::34) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4150.27 via Frontend Transport; Sun, 23 May 2021 22:57:48 +0000 Received: from jgg by mlx with local (Exim 4.94) (envelope-from ) id 1lkx2Y-00DU88-Pi; Sun, 23 May 2021 19:57:46 -0300 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: f38c5ca6-0003-4bf6-6edf-08d91e3e2f6a X-MS-TrafficTypeDiagnostic: BL1PR12MB5079: X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:8882; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: HL0E1E7CQ4udseMLEbiQeTf+bu4ocawY7UHzlRutvBtuEXVg/uKODNuvOD2wuuFJrswhtRWXjO8ANHMiss38XkNylnHXg622CdB75EpiAPasHkNLHGMoGHXXR3luxGPx3e4ByFsqDUVKH653YB0A6Yy0UgnS8l8TJqMlM/m8D6pA5nlQkwyEsRhqyf6zZI7nJODO4MYln9WRKlEBtsLevQ2fhCpic70mtYl8Wsxw8vjAYMSPFkqRAad9KZHizj7XvknpjMW0NHwipBor/kxGJkUxrBiL/5IiaRkoPn6kK+NcWIjw05XmGtMwgWVVjhhBbjyr2GhLC7C4y0tYyZsnMWymFxT5DMZ/SQjRhKoRXaKR0VeGl7F3NxI0ITYbeWKE4u/aRgFF1w/+N/RiPa8hdXSFSZrrhin3sOKL2EqG+BvgN8K6eboY3wVGu8VwCcgP9nsB4b8kulnbY7Mhph6B5f8n56GZUDwqaonLl+v40YH8X7QIiY1gOzqElk/b5FbADdIzjeMFa0DEhpjHgqxBbTGfN5qhMsKCmgIlcUX48ET7sxzL4ruGyQlc1GlzDfH+3CzxK26pDH5AOg0tw21oce49Xf1e840dVXT75hgQYgY= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BL0PR12MB5506.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(39860400002)(136003)(366004)(376002)(346002)(396003)(4326008)(26005)(38100700002)(1076003)(186003)(4744005)(426003)(8936002)(36756003)(316002)(66476007)(9746002)(478600001)(9786002)(66556008)(83380400001)(2616005)(7416002)(5660300002)(8676002)(33656002)(86362001)(66946007)(2906002)(6916009);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData: =?us-ascii?Q?LaJHq1xDIL/QF96NYmKGz+9u3+B2+7tfzqYBal2dh6wxEC803W3L8850Zti5?= =?us-ascii?Q?VqC5ZImHFGXifsG+FPzsE5FMeM29eE7jdHQ/2qMIasYUhCE/HT34nCf+sIcX?= =?us-ascii?Q?NqPdROGII2dEalCguUbFfMp3t4AG6gC0nfrc2+sieGhIA8OncCDiagqQp8bp?= =?us-ascii?Q?nHoVCNTcYqt+JEI4yKvFKjiyUyXkUqV5kF+STKdkGBX2nfW5PdbsGnSSw8mL?= =?us-ascii?Q?+3ByUg574tlxbfH2XGKg0tud8ai4IAa6B3wCA3hUYqsWW+o9BdPxT9ZdctkI?= =?us-ascii?Q?8RtPFTCW2Pfir/6k0spr+1Fvq/iZT+h091e+3bBjmagkEVnMKGMPDOa+OO+Y?= =?us-ascii?Q?hUBnzUo6bopFztDNzOltXCiaa41ROHazarcRn/UyYgEgpSau7V3g7xMphVNT?= =?us-ascii?Q?+k/+AEjWn3rMVDqp/RUSRL6h80Mk1Ph+//xgyzQX6pa1eNp4mANKf1eKkNW1?= =?us-ascii?Q?QEUuNRMhbX/6JLihvdZe946do+b06R4DAyGpKCaU8dpyA7LGdNfEo4lg82cL?= =?us-ascii?Q?DBmXApSywczYd2NA/7dD2rSQDdxCpW7GI0IR6NOdcIHq8ZGEBa3EGR/gIJ1G?= =?us-ascii?Q?MsdnxLOEW3sSMxt6jk7EihCH/DMUifm2Lze7YmT3Wl8/Dmnuq78YeB9pBCNq?= =?us-ascii?Q?lntTomK054c0otwYTfMeaztZ7zQrNzGfxvIn+OVgCda8f2fcAvI2qILto0rA?= =?us-ascii?Q?26GtNRfyKvRqkNL4FYoO+AJT4UHYJnJW8y9mBl6UG6PgYJ5CNhgEmG4JK1De?= =?us-ascii?Q?Ak+bKSjCitSHQ2MJNamzSvavLmgo0ucwgHW/NeJzQS5320tSOUCTFHKAXO4M?= =?us-ascii?Q?R2F+K5VPcYkpzxdw83Z/0qLj8nKO3hJ5XPO561WUc8yb3l08R7AGqJJuGhrG?= =?us-ascii?Q?ArUasrkP0mLerntNcI3SWQcpLDlEYn5XcgoSP1lbgrIb7U68QGXyjVuxkLjG?= =?us-ascii?Q?pkJ0M/n/RPlawrftoFQeOysomaXvN9q6kPyqz78sB3besrcvCZi1mWbSqye7?= =?us-ascii?Q?Ytycp2xodsBy2LhR65HWbvpcmId67WWvCsZxqFvMLv9qirTkS+aF13EVljdI?= =?us-ascii?Q?aIWGY2b/Qr/DHOL3yz1ycA8xDdk5ACS5vFAaI0qWloymW33zjnPgAuE1aK4M?= =?us-ascii?Q?22RcTjNVoit0GcDXQ6OEuNkklS8ZJEmLl3PoyIV7h3Rm/8O44mXwBJJ/rDjB?= =?us-ascii?Q?Xk6FKhfElq+MjeCtGp7PFUElaIzN43BnVAB8c6vr6YPRkqRa3L/XWDbdx8ht?= =?us-ascii?Q?XwzYQ8rq2e+sW6f2ya7LuqwXCIAN1ZTvo8d5p3Toy9KLZ4ArhiTQE8vrqm4U?= =?us-ascii?Q?ZWgfhC/PXL+J6Jhs4R3QKLhT?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: f38c5ca6-0003-4bf6-6edf-08d91e3e2f6a X-MS-Exchange-CrossTenant-AuthSource: BL0PR12MB5506.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 May 2021 22:57:48.3100 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: Zfc2G/Afk3sgz3XnrX2SHZLrCCCmnfU8eyN9pAPQNx76Q2m9y5wGqfAxiJv2Ucn0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL1PR12MB5079 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, May 21, 2021 at 03:36:48PM -0400, Tony Krowiak wrote: > +static struct kvm_s390_crypto_hook > +*kvm_arch_crypto_find_hook(enum kvm_s390_crypto_hook_type type) > +{ > + struct kvm_s390_crypto_hook *crypto_hook; > + > + list_for_each_entry(crypto_hook, &crypto_hooks, node) { > + if (crypto_hook->type == type) > + return crypto_hook; > + } > + > + return NULL; > +} > + > +int kvm_arch_crypto_register_hook(struct kvm_s390_crypto_hook *hook) > +{ > + struct kvm_s390_crypto_hook *crypto_hook; > + > + mutex_lock(&crypto_hooks_lock); > + crypto_hook = kvm_arch_crypto_find_hook(hook->type); > + if (crypto_hook) { > + if (crypto_hook->owner != hook->owner) > + return -EACCES; > + list_replace(&crypto_hook->node, &hook->node); This is all dead code right? This is only called from a module init function so it can't be called twice. Just always fail if the hook is already used and delete the owner stuff. But this is alot of complicated and unused code to solve a lock ordering problem.. Jason