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 Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 8947CC282EC for ; Fri, 7 Mar 2025 01:59:02 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id A9EA4280002; Thu, 6 Mar 2025 20:59:00 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id A29CD280001; Thu, 6 Mar 2025 20:59:00 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 8C874280002; Thu, 6 Mar 2025 20:59:00 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id 6DA9F280001 for ; Thu, 6 Mar 2025 20:59:00 -0500 (EST) Received: from smtpin27.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id 55AA3B052F for ; Fri, 7 Mar 2025 01:59:01 +0000 (UTC) X-FDA: 83193096882.27.B3AB63D Received: from mail-pl1-f182.google.com (mail-pl1-f182.google.com [209.85.214.182]) by imf24.hostedemail.com (Postfix) with ESMTP id 621A4180009 for ; Fri, 7 Mar 2025 01:58:59 +0000 (UTC) Authentication-Results: imf24.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=ms+3ZurL; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf24.hostedemail.com: domain of nifan.cxl@gmail.com designates 209.85.214.182 as permitted sender) smtp.mailfrom=nifan.cxl@gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1741312739; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=ECoNV4kHAT50hvGTY86CJfgCjEmWaFi+qU8bYOh0B0Q=; b=L8GlSxLqGzAbPB+MgmO42cqaJfKBUgy1KTzmk7gyMTwiKRMIgZ6zxArF6/Cv903QH6RI8A yHVWKIJg2BFH96K7ORaOCoAyCzoJ9DrhcCC0rFXqSwgmRmnkN+4CxwFQpg9NbUU8RIzb54 PkSHjCIgRrDOo8/zSrLSg4mmMULL1Ek= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1741312739; a=rsa-sha256; cv=none; b=su2M+AYRoOLVX/cx3tLLiu0wqZGincaCA38j2O/jZ3fDWyN7XpJinuTWajeRgONsjZlLoO 1WjYix/VJFPDuwK3p4r2dxmI2dsjDtAKBVLAQk0rNChJbgscvwUO/rZifMvLAwyiB8co46 dqyi053M3gxk9Ss9OqFrS9HoKGQrMtM= ARC-Authentication-Results: i=1; imf24.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=ms+3ZurL; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf24.hostedemail.com: domain of nifan.cxl@gmail.com designates 209.85.214.182 as permitted sender) smtp.mailfrom=nifan.cxl@gmail.com Received: by mail-pl1-f182.google.com with SMTP id d9443c01a7336-223959039f4so27028155ad.3 for ; Thu, 06 Mar 2025 17:58:59 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1741312738; x=1741917538; darn=kvack.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:date:from:from:to:cc:subject:date:message-id:reply-to; bh=ECoNV4kHAT50hvGTY86CJfgCjEmWaFi+qU8bYOh0B0Q=; b=ms+3ZurLHsTuAO8XHd1pk2ynkYAs2oLHxTQHhbWf5DJuTETV92KeEzqkJ8NcEUCpTc BIQN+mZun3wjtb7kNA3cXvlX5tAC8Tc3FlPVrzxohtlv1wFOX0+c5fZUxlLhbGtvUrrK q6BebaRwGttW0r+yhzW75yj01rTRuXcU1TLVxDvmqTqDsWnLoKW0QoXNATa0f9gVfmXX URvlkAJYVebnsE+Ss2EJ43OK6fxplNt46yU2Sm1K0HR9DHZEtaQ1shlFYZmsPzZKT1d6 jZJ1sPYPxO/xxLIb/nyGHs0ZzbgDCaqGZIEGHywGq6C5D9S42a97TyPJasZxs/N8fay0 UGmg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741312738; x=1741917538; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:date:from:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=ECoNV4kHAT50hvGTY86CJfgCjEmWaFi+qU8bYOh0B0Q=; b=c0nYiloOmdEmZoczulbG1DxidWHLq/9ZtIXtpnlb8DBxte76lcLBUHCpeIsbuAZLxg RxIZ2jXxDC+ZzszqqKycR/Xaomrw9MrkEn4W8u4aQAzlKcfnfu4TGhjDS8XztIz1YUbP BsBw4qSDm/0t2NaeaRHwn2Xz8JGxc4Fj/z1eEGwBYKYmeulbr4zIPzblQssL1/dHlsyo n8WXV7S4EXmPNVpmtcB6OsJjx0mhZIXZOUH6/GW41KzlQxeRCg4ups83HUrQYU7ecGQU bPAEtTRjtTmz+L2hHvbVs7XiKGbvCrhXiSuMXyfcISFdZeTAlGYptO9I0s4YYG3mvZG3 Z30w== X-Forwarded-Encrypted: i=1; AJvYcCUKbW58FapFNuqDjhjwdjWa9Cu+wMBzMfqT4eCK8zd319M58GUFsWE67Kw055dgPT1uDY2pwCeu3A==@kvack.org X-Gm-Message-State: AOJu0YxoQhd5JL0xNqboDqb4sBru8zwePHQYRBgjiDMGOv3vP5BfGqiM gqAmx45XE8hZVUbCll6YmKxZI7gSmVgGOlEGyVSQXSrfFR46lg+H X-Gm-Gg: ASbGncvEC9WGkTrprRXbKxLB0k1KeO8C12P9iOGVE4WWeMSYEwjy87cL/ldzV4Iv7Al Wbk4EV1+uuXBW2VIKDSRAeOMFW6rIpsDrpuyZR5De8muFVCFIgGbEeD2dlHWUHJYAPD5DLBLyXh tkmQFEtRDa2hCLSTtE3MFyNKAtU0hclRGr2BrdKu+baQvcJQ5FRooVb7ue8zSGbseAijTSJv1EK Dhseg1Ln+JQD3xj0IlLQgvmD1nzKnRCbiWpMeAUCNow5Fz+dFMHc9POiJeu13iCiGKfYsrXLB1Y l1q09CAwZNBWlMHGI6KdfzFV1j0f2K9fKq6RsSI= X-Google-Smtp-Source: AGHT+IEjw6rCh3qXzIOYCz6LrbC5tDDItMPSnIX6vQ3xn2TeukYDLpMq4pY2PvjifGCV+mnZTC2cGA== X-Received: by 2002:a17:903:283:b0:216:2bd7:1c2f with SMTP id d9443c01a7336-2242888d06amr21833985ad.18.1741312738064; Thu, 06 Mar 2025 17:58:58 -0800 (PST) Received: from debian ([2601:646:8f03:9fee:e44d:748a:50ed:471f]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-22410ab9e39sm19138105ad.252.2025.03.06.17.58.41 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 06 Mar 2025 17:58:57 -0800 (PST) From: Fan Ni X-Google-Original-From: Fan Ni Date: Thu, 6 Mar 2025 17:58:38 -0800 To: shiju.jose@huawei.com Cc: linux-cxl@vger.kernel.org, dan.j.williams@intel.com, dave@stgolabs.net, jonathan.cameron@huawei.com, dave.jiang@intel.com, alison.schofield@intel.com, vishal.l.verma@intel.com, ira.weiny@intel.com, david@redhat.com, Vilas.Sridharan@amd.com, linux-edac@vger.kernel.org, linux-acpi@vger.kernel.org, linux-mm@kvack.org, linux-kernel@vger.kernel.org, bp@alien8.de, tony.luck@intel.com, rafael@kernel.org, lenb@kernel.org, mchehab@kernel.org, leo.duran@amd.com, Yazen.Ghannam@amd.com, rientjes@google.com, jiaqiyan@google.com, Jon.Grimm@amd.com, dave.hansen@linux.intel.com, naoya.horiguchi@nec.com, james.morse@arm.com, jthoughton@google.com, somasundaram.a@hpe.com, erdemaktas@google.com, pgonda@google.com, duenwen@google.com, gthelen@google.com, wschwartz@amperecomputing.com, dferguson@amperecomputing.com, wbs@os.amperecomputing.com, nifan.cxl@gmail.com, tanxiaofei@huawei.com, prime.zeng@hisilicon.com, roberto.sassu@huawei.com, kangkang.shen@futurewei.com, wanghuiqiang@huawei.com, linuxarm@huawei.com Subject: Re: [PATCH 1/8] cxl: Add helper function to retrieve a feature entry Message-ID: References: <20250227223816.2036-1-shiju.jose@huawei.com> <20250227223816.2036-2-shiju.jose@huawei.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20250227223816.2036-2-shiju.jose@huawei.com> X-Rspam-User: X-Rspamd-Server: rspam12 X-Rspamd-Queue-Id: 621A4180009 X-Stat-Signature: 8ur3fd3ab8qd3wq9wtzmt7nctgpmcn6b X-HE-Tag: 1741312739-263554 X-HE-Meta: U2FsdGVkX19WB/IAFjp+Q0LO2wRGScA4k0IYlPgtwUbgJYK8cy60Lftnk/PJ15D9eVXOLZE9ID8FJCrQyzivaNfkeWJDRUKZrclPGHlNLcUGB9Cf/L/hQxI55H57dZZMVoveH+J6FiT4MYL4FI0VGDaThMjZ3Hmfzsra0632DafgDNasudxRU2okcrFLurlHxRX6iekI1FYgvHZcSNSYhQAezgauOCUYJsHxTd2S8xeAPlD8xptV2Gj7T/zg8eUkM0BhErPIVtkPCQkPb9WRiTANvOInM3QVLNqYRdKmzg1Z+EROiEmx0RS6ptfTmEmUcnpLh5MvYCI7tWNDlfMAJ4kl+c/wqt/ZDrmEjzsb3ZfxIgUicNyIfRAjZq34vEtAal6Z6lHi0zWSIUA22FiJPuJSYEZQP40XIDryg4WBoQZ2YryOPDK3JwvL1Somoj0Bc7T/X4y7JgvvPwNE6v6wGVHJG9peaSnrk+lXntSuuT5QSyIow8Mv6HIFoKWDcTcjGLcW25hSn/gFSAYcwBUNed4eEobMxjyFokwYbGpofSxpDBeLRyUtU69ADKiwqJDhdaW2E8SisQoMNiOle++t1oiU56+h8L74JvRorxZKV7+sWdW8lTyrvQbsOjVexwQ5g+Vol0V86yhqXxx2x9yy+KTq6VMFHORBwWcStkbQaPp0/9gICf+cLDatya5fygNr1x6N0pdhdRhCK2onMtyNUMEBkovOYfIeruqESjVIGaRFuXxms242tOFPGaWYNFN1NG6+jU2cDNuC7J0rUpdCOsx2vJIhS7Ngt6sgTlkpQy0KVU+Dz6v+ENJMhQ73OZQyAVfX6bsMhWtFs98/37ke/JvrYUOoxzXjoUkafthmFO+b89ojlqyhvRKGKBcVhm3JSOYkt/xN/TtbxX1SgQpn1dBlSGYZQmmADYKxcRRMoruJp+/lR1qLCCaOoivE0UDLxysJh/2yFrV7xTp/Z98 pqtfWSQv QbLVmBmN9MfwIZ/ZJuOiqtZHFCAjlOctAhLmwfqQqiaudN45zY88xYsWj2MJqUU8kAo2z1pSOr28lazbRgxpKcuyJ5nft3HSrkbUhyrxM2ikVfyn3R/BlyS6U3d8ofb60kWzQxfMJXa/Hm7Rod1HVwEPvRkts42UwB/mkETST/X66pxhgEuj2CDXzQONf7ZLEacWch4aDKHxBfAa2j7cKuzEw/ssxOrz3po6j5OzdSObNPNczWz2OzzhBG9b0R5KP+w4oh/vyRRCzO8QL3CiQeDmODXhOQFqoefzR0LcTRZ8smw/x1tYdFmG+spgrO9jr1qjPTLAPtQAkpfXhHCAFV2MI2/njxUvOhnE4dMpJiVN5Ga2UxLD98ZngKPTifSI1IAv97w28yKX1MPfANsHQW3YQDw/a6jE1/1idMyNLXoji/XN9ytL+HoxAPaf3KNEUVvrq12vZ+REPtLshQ8IWnqRmDnN5HqjtQBudwwwAqv3EOSnYnF+j1bjR/IywYo2p/WvIJs0feDStTKSLd9rt+/IXhRGRIW1piRtG56GuN9IA1FGQ4iR8f7XZ3/PTXxIRFfAnPks+Q8N3cJka++FKrz887g== X-Bogosity: Ham, tests=bogofilter, spamicity=0.000002, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: On Thu, Feb 27, 2025 at 10:38:08PM +0000, shiju.jose@huawei.com wrote: > From: Shiju Jose > > Add helper function to retrieve a feature entry from the supported > features list, if supported. > > Signed-off-by: Shiju Jose Reviewed-by: Fan Ni > --- > drivers/cxl/core/core.h | 2 ++ > drivers/cxl/core/features.c | 20 ++++++++++++++++++++ > 2 files changed, 22 insertions(+) > > diff --git a/drivers/cxl/core/core.h b/drivers/cxl/core/core.h > index 3d3b00835446..6c83f6f18122 100644 > --- a/drivers/cxl/core/core.h > +++ b/drivers/cxl/core/core.h > @@ -120,6 +120,8 @@ int cxl_port_get_switch_dport_bandwidth(struct cxl_port *port, > int cxl_gpf_port_setup(struct device *dport_dev, struct cxl_port *port); > > #ifdef CONFIG_CXL_FEATURES > +struct cxl_feat_entry *cxl_get_feature_entry(struct cxl_dev_state *cxlds, > + const uuid_t *feat_uuid); > size_t cxl_get_feature(struct cxl_mailbox *cxl_mbox, const uuid_t *feat_uuid, > enum cxl_get_feat_selection selection, > void *feat_out, size_t feat_out_size, u16 offset, > diff --git a/drivers/cxl/core/features.c b/drivers/cxl/core/features.c > index 048ba4fc3538..c822fb4a8c33 100644 > --- a/drivers/cxl/core/features.c > +++ b/drivers/cxl/core/features.c > @@ -203,6 +203,26 @@ int devm_cxl_setup_features(struct cxl_dev_state *cxlds) > } > EXPORT_SYMBOL_NS_GPL(devm_cxl_setup_features, "CXL"); > > +struct cxl_feat_entry *cxl_get_feature_entry(struct cxl_dev_state *cxlds, > + const uuid_t *feat_uuid) > +{ > + struct cxl_features_state *cxlfs = to_cxlfs(cxlds); > + struct cxl_feat_entry *feat_entry; > + int count; > + > + /* > + * Retrieve the feature entry from the supported features list, > + * if the feature is supported. > + */ > + feat_entry = cxlfs->entries->ent; > + for (count = 0; count < cxlfs->entries->num_features; count++, feat_entry++) { > + if (uuid_equal(&feat_entry->uuid, feat_uuid)) > + return feat_entry; > + } > + > + return ERR_PTR(-ENOENT); > +} > + > size_t cxl_get_feature(struct cxl_mailbox *cxl_mbox, const uuid_t *feat_uuid, > enum cxl_get_feat_selection selection, > void *feat_out, size_t feat_out_size, u16 offset, > -- > 2.43.0 >