From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-3.1 required=3.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,MAILING_LIST_MULTI,SPF_PASS,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 4AB79C43381 for ; Sun, 31 Mar 2019 16:44:58 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 1068720882 for ; Sun, 31 Mar 2019 16:44:57 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1554050698; bh=y34uIS6p+UjWeYsjUMtTut3qErkWWYJmMxEjEz0ueF4=; h=From:To:Cc:Subject:Date:List-ID:From; b=KkIqYF6H8GIG9kufv8i654833UIwBJizIkRlv1RQjmmTzd/sm1mnWVus5P1s25YB1 pvG1U24e5KsZZ/vKEPpcgJbI0ptXqvlJbC1UYvhtFOV4zREnQOrutRRKgr8EnJuQGI wsY0TjvqKdQY5C34L5EXJSh64kWdPmiDS+VShf8I= Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1731331AbfCaQo4 (ORCPT ); Sun, 31 Mar 2019 12:44:56 -0400 Received: from mail.kernel.org ([198.145.29.99]:41204 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1731291AbfCaQo4 (ORCPT ); Sun, 31 Mar 2019 12:44:56 -0400 Received: from localhost (unknown [77.138.135.184]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id E524F20856; Sun, 31 Mar 2019 16:44:54 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1554050695; bh=y34uIS6p+UjWeYsjUMtTut3qErkWWYJmMxEjEz0ueF4=; h=From:To:Cc:Subject:Date:From; b=0SfyZh6VKzIzMoJZFjolQXP7yhPWmaEA6kf8jqktMdN5EqzMXh4qKMHfve6fHbp3K 31pwWxtPh0aydmzXBkttR8xRAGy5boOPGbE7lseeb+tHpA1cVxWvR6moa+nQ5zq6Rr 64aQt5P15Sg7OrqFl9msSAvgmSeBovf8hIquuIJU= From: Leon Romanovsky To: Doug Ledford , Jason Gunthorpe Cc: Leon Romanovsky , RDMA mailing list , Ariel Levkovich , Eli Cohen , Mark Bloch , Saeed Mahameed , linux-netdev Subject: [PATCH rdma-next 0/8] User space steering Date: Sun, 31 Mar 2019 19:44:42 +0300 Message-Id: <20190331164450.23618-1-leon@kernel.org> X-Mailer: git-send-email 2.20.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org From: Leon Romanovsky >From Ariel, This series of patches adds user space managed steering infrastructure to the mlx5_ib driver. User space managed steering requires the means to access a dedicated memory space that is used by the device to store the packet steering and header modification tables and rules in order to manage them directly without the device's firmware involvement. This dedicated memory is part of the ICM memory space. The changes are introducing the mlx5_ib API to allocate, deallocate and register this dedicated SW ICM memory via the existing device memory API using a private attribute which specifies the memory type. The allocated memory itself is not IO mapped and user can only access it using remote RDMA operations. In addition, the series exposed the ICM address of the receive transport interface (TIR) of Raw Packet and RSS QPs to user since they are required to properly create and insert steering rules that direct flows to these QPs. Thanks Ariel Levkovich (8): net/mlx5: Expose SW ICM related device memory capabilities IB/mlx5: Support device memory type attribute IB/mlx5: Warn on allocated MEMIC buffers during cleanup IB/mlx5: Add steering SW ICM device memory type IB/mlx5: Device resource control for privileged DEVX user net/mlx5: Expose TIR ICM address in command outbox net/mlx5: Introduce new TIR creation core API IB/mlx5: Expose TIR ICM address to user space drivers/infiniband/hw/mlx5/Kconfig | 2 +- drivers/infiniband/hw/mlx5/cmd.c | 155 +++++++++- drivers/infiniband/hw/mlx5/cmd.h | 8 +- drivers/infiniband/hw/mlx5/devx.c | 4 + drivers/infiniband/hw/mlx5/main.c | 264 +++++++++++++++--- drivers/infiniband/hw/mlx5/mlx5_ib.h | 40 ++- drivers/infiniband/hw/mlx5/mr.c | 40 ++- drivers/infiniband/hw/mlx5/qp.c | 46 ++- .../ethernet/mellanox/mlx5/core/transobj.c | 18 +- include/linux/mlx5/mlx5_ifc.h | 51 +++- include/linux/mlx5/transobj.h | 3 + include/uapi/rdma/mlx5-abi.h | 2 + include/uapi/rdma/mlx5_user_ioctl_cmds.h | 1 + include/uapi/rdma/mlx5_user_ioctl_verbs.h | 6 + 14 files changed, 541 insertions(+), 99 deletions(-) -- 2.20.1