From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by mx.groups.io with SMTP id smtpd.web11.10153.1675430573846621433 for ; Fri, 03 Feb 2023 05:22:54 -0800 Authentication-Results: mx.groups.io; dkim=fail reason="unable to parse pub key" header.i=@intel.com header.s=intel header.b=GkV8mnBs; spf=pass (domain: intel.com, ip: 134.134.136.31, mailfrom: jiaxin.wu@intel.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1675430573; x=1706966573; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=5WfQjSZx7Ofzv7qezuxeU40+eO+PRUML5r2q/bn3Ph0=; b=GkV8mnBs0xmFmSXtVLmmEnhPV25r4PDGmthlSS3WKgsSTfkkqpdwVsjz lGHvsHBqUMmBjkekjQUD7aNR9WmPd73k/6pZNjQ8lCo1zrgGky1yQTl+o /A47n89cVywiR8m9d7p4FFE27he8NvAMDITu5qfGRrSvqArUnCEbeM8zY 6syzUCdNOx5fn4pwr/Y97aNKffM4VFu8O1fEV9Fzu3jC1DsXaAx/I1yJC XUk47OgeQU1N0jvqMT+V2hwhw/sI0TTssp3Fvh1iRGy1mL7xc2Q0IF7ox N/5HQciK6M0iTCCHshAP/Ab50z1wGgXU1BMmHZlxyFvvKVH5tASDeG6vv g==; X-IronPort-AV: E=McAfee;i="6500,9779,10609"; a="391140832" X-IronPort-AV: E=Sophos;i="5.97,270,1669104000"; d="scan'208";a="391140832" Received: from fmsmga006.fm.intel.com ([10.253.24.20]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 03 Feb 2023 05:22:52 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10609"; a="911149887" X-IronPort-AV: E=Sophos;i="5.97,270,1669104000"; d="scan'208";a="911149887" Received: from fmsmsx601.amr.corp.intel.com ([10.18.126.81]) by fmsmga006.fm.intel.com with ESMTP; 03 Feb 2023 05:22:52 -0800 Received: from fmsmsx611.amr.corp.intel.com (10.18.126.91) by fmsmsx601.amr.corp.intel.com (10.18.126.81) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.16; Fri, 3 Feb 2023 05:22:52 -0800 Received: from fmsmsx611.amr.corp.intel.com (10.18.126.91) by fmsmsx611.amr.corp.intel.com (10.18.126.91) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.16; Fri, 3 Feb 2023 05:22:52 -0800 Received: from fmsedg602.ED.cps.intel.com (10.1.192.136) by fmsmsx611.amr.corp.intel.com (10.18.126.91) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.16 via Frontend Transport; Fri, 3 Feb 2023 05:22:52 -0800 Received: from NAM12-DM6-obe.outbound.protection.outlook.com (104.47.59.169) by edgegateway.intel.com (192.55.55.71) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.16; Fri, 3 Feb 2023 05:22:51 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=LfJ5sppUG5ToNGFIx3Ko0/syqM8mx3x/kUXL7A2pGAaSv+Z33VT+oODLkCeIIMOWQUxUBCJjvsjyRu1mAH2O2OgKXYnsPZx8s6eSQh52xh8ldS4uAx6wpBo0iwBtoo026ic6xQ2syUGgqC2PYgkq0fY3V7HbVm9g3tKVY4WV1UTJQumhOOfdAOG/SihM3RVxEYQbq7ch0wSXSeHbu+LCUqsoMXOprHSSexm8+dO7d+x9TY+5JGJkx/wXkHP9Jty/AOcqtqhXjZYMcqAfIHaKXPuiwaKPitXAYPizV02z6Qo6R3c5Sd91zKA8U7UxkC+sn7PYj48JJF7SNTciiyXVlA== 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-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=/t9vvFFduwjWZS2JGd6PBd98vqQUAHJHTd+/BK6qsvI=; b=Us4zUVaWjIom6sCPksb4I/1pMz+I1WiqzVJ7VScWUbjDQMzJwfWMl0wz/I5XnN4VwTNtPoFuAZSWHQ7Oo3IzHxaR2HXp146TWeys8DgyMPTFAblPmpTLWBnab0dQUnXzEinKwvmo2hHES+Uxmxg3QoXZ3yM8c4jhufiv17lzOIAmZAypB15VOIPB4TjPOHbv1xjnJkA/Nkv7OnDDVtaF7+ueCRDu4pQWLZO1kjMQcQD5cep6YvU7S8k1d9wFq2S7BP+t0h8ZF+G+46BGVmNYJDXpRdhrZ/wjHHjq+A9tXd2Qpw9XMndG4E4A51+jSWr4z5c3jRa6KLib6JDDiAT7YA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none Received: from MN0PR11MB6158.namprd11.prod.outlook.com (2603:10b6:208:3ca::18) by IA1PR11MB7678.namprd11.prod.outlook.com (2603:10b6:208:3f4::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6064.27; Fri, 3 Feb 2023 13:22:49 +0000 Received: from MN0PR11MB6158.namprd11.prod.outlook.com ([fe80::e5d9:d16e:172b:aa01]) by MN0PR11MB6158.namprd11.prod.outlook.com ([fe80::e5d9:d16e:172b:aa01%3]) with mapi id 15.20.6064.027; Fri, 3 Feb 2023 13:22:49 +0000 From: "Wu, Jiaxin" To: "kraxel@redhat.com" , "Ni, Ray" CC: "Johnson, Brian" , "devel@edk2.groups.io" , Laszlo Ersek , "Dong, Eric" , "Zeng, Star" , "Kumar, Rahul R" , "Kinney, Michael D" , "Zimmer, Vincent" Subject: Re: [edk2-devel] [PATCH v3 1/5] UefiCpuPkg/SmmBaseHob.h: Add SMM Base HOB Data Thread-Topic: [edk2-devel] [PATCH v3 1/5] UefiCpuPkg/SmmBaseHob.h: Add SMM Base HOB Data Thread-Index: AQHZK05nsd04206oLkSe/mEyxrQqIa6m+b4AgBQjMoCAAJa4AIAAoUUAgABPxwCAAE41gIAAUK9g Date: Fri, 3 Feb 2023 13:22:48 +0000 Message-ID: References: <20230118095620.9860-1-jiaxin.wu@intel.com> <20230118095620.9860-2-jiaxin.wu@intel.com> <20230118111913.xgjlxdhngzwhvf76@sirius.home.kraxel.org> <8142cc40-ca21-2748-a3de-d0432ccbdc07@redhat.com> <20230202125158.bx7amq2nfibhimvf@sirius.home.kraxel.org> <525d8100-b306-d1fb-08c4-e5e2cc6204e2@hpe.com> <20230203075437.fkp3mwri4jg7rn4q@sirius.home.kraxel.org> In-Reply-To: <20230203075437.fkp3mwri4jg7rn4q@sirius.home.kraxel.org> Accept-Language: zh-CN, en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: MN0PR11MB6158:EE_|IA1PR11MB7678:EE_ x-ms-office365-filtering-correlation-id: 6ec8a861-a69f-45cc-3f87-08db05e9be97 x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: Hqs6BiXFdrf2+B0qotMzJanrqQ4qtY0uDJzWwPJLwiUyt+GltEGyEYw3B5V3HxUXbR2aqIynwp6myJz8pCNoUCULkNxBlhcRM1GJnityYzpyygxb5iHLCVLiK9S61v3XlE9TQqGL7uXq/F01jgn1HqcHK9rY+DOGUx43eG7HQrgoP3VMtwuZ5FMUAm3Ly/opO6jIExm2fR6XhvRYS1V+fqm4+Wm5c5BetOrtb87t1TgdM8RCuqjaYZx0GX9JcRbTNYxugL5rbg1HU9DQtDC7EWDV02taZnniMHDiM/q3D/zeI9Z09Ze9cdY+pL8uqO+bAdHoV4XQam9wfnhw/FtU7mQVHEl3kiejxl3dr8Csa+i9KXZFtXSkxCeelK8d/2hF9yNIkdTNHLyt5iX0UUtUHTbwUIXgqKk8pEcfR5BY05ZbJFvgfxXebNXSJnlPX+SA6c+YbLqvZWTAMmBWVVWwqE3mZD6hpz4sa6I2dq0uxXX4boqeleFU1H0Kc7MDUflrbkQ0t8UIOGiWx/DJhzxubkIBASyC9nLlKc4uWbXQhuN4P/XyDvkKB1QvKfGIOJKbEtTtW+HRBbrDbRq9iIuEbjg/4PpkS46dA+5L2qCRqwDc975FntoLjjZkVSobKP9hSxVzExmRs+05BnujdK99Sid68Mop87md4A2RbcBVeJSjA75A0x1PBDLn4gGrCSto1wNPXEY4RxPD/VTdId6EJQ== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MN0PR11MB6158.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230025)(396003)(39860400002)(376002)(366004)(136003)(346002)(451199018)(2906002)(66946007)(41300700001)(478600001)(33656002)(9686003)(186003)(5660300002)(26005)(71200400001)(53546011)(107886003)(55016003)(38070700005)(8936002)(7696005)(6506007)(86362001)(52536014)(8676002)(83380400001)(66476007)(82960400001)(66556008)(76116006)(4326008)(38100700002)(122000001)(110136005)(316002)(66446008)(64756008)(54906003)(6636002);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?7El40hyXP9kcAU2ccG6jZCHVfUXWbYJzqYgSXJjiIiBwEidO2Vz9wGalUjCi?= =?us-ascii?Q?YOuzUBMpGu2alJ3dr8EV+Ud0jAWysTH8/bH+uxEtrzPXgvaWD72s/xOr9M9l?= =?us-ascii?Q?4I1LyJ7iWhW2nCAEnRsZS2i85MwOEEB8yLX3BQ4Xc/Z7zIoPMcuETpMrAOox?= =?us-ascii?Q?lSr9TVeCOnezTjdwmZCokuqCtl0qydAwT60UvI0eAgboKSfb9YOcXmFbGhbf?= =?us-ascii?Q?cFCTWDsB3EQkOTJRnJkUmy6BKyMjbAUE5cXDsG2kIYlzrasiS5Rnx09ooTXZ?= =?us-ascii?Q?QtzTjZCflPT5g+g9/79uNuj1/YEOqjemcUXha9DLtfP6l+26GFWdDuJi8kly?= =?us-ascii?Q?NogQswGALfOc2Y8UiDoFRLQOlsuuPUl0XZ75/a2AWwVoXUZrI6ZElSsVKHv8?= =?us-ascii?Q?sDv7YMjjiZx0c/FLFdO4ts8b6YfBmLWOBNlVkjDho+OMeCBps6ehXbnXx4ee?= =?us-ascii?Q?k80rRT+J9wt3yb8SLsp5e4IyLU4nQrRZxI116EdCvOk5LThcLgNJ+xp0UOoH?= =?us-ascii?Q?rex3KDRGiKGnNwpwsNBtd77XM1rUPbiv8+mXC5MzcwkPUDDWwFkGH9wdqnu4?= =?us-ascii?Q?otaalzG+pbdSc6D4ArEl8OiJroF4tGcw2BuDa+ySD1OBwvIlFvvjXjwM/7KB?= =?us-ascii?Q?7jRGGvtoVfiJEPg9/PthxB6CUYq3W6C0qSfhIMi8uxVGfVzTO3YWSxyKTuXa?= =?us-ascii?Q?tBMmFWSAgyBLd5T4QHg8y3ofT5Ah+8vIuveTyj5si8d+PcdzQvYmc6BaewAh?= =?us-ascii?Q?LQu+2arHO3wJhK1qG7sDFuSZYB/VuVsF39fqeZ7Ci7Ks6w8pWzl6rxCHSFGY?= =?us-ascii?Q?CbcUfpU8pDFGZGR/4AYZgR3lGZs4rg5dxX6IYg+C3bi2KPuwPpDeFxdujRe6?= =?us-ascii?Q?kpSl7BRy6Sr/GWlLqtqe2NGKPDDUTCzCblXCLrok1E4+CuFAleC+ZPqVPjwt?= =?us-ascii?Q?a8QHH7eA//LQ6KeG3QZGcl562QKyr1qRsnE5e+s7qdzoFlqJZXHaXaOCM2+h?= =?us-ascii?Q?s5pSyY4PIqNlOmhKEt25ev2/VExgz4I4qR/OEtY5jSq6BYUk4Yy5Ky5JKyku?= =?us-ascii?Q?ht1wGP/Y2Q4KqxVanXJfaczb1SbrxFwEsqi5cyVpgvyScuPf20HqUKg048IL?= =?us-ascii?Q?q5mWXPi6CtpFr4oeQk4xZMUJB7jw+XofyEqL6fFMJmfFJvQ57i1sZLACnPE9?= =?us-ascii?Q?Tpre13/B+0OucRkMSOcQxThaonpN46Pkwb1ikb4/S6JF3Qv8HT+FnIKA7wcr?= =?us-ascii?Q?0mb29Bwn689EGRwIq0EDh4ZhjTDc1+b8Wauad25TyhH+1ThJj3mBjNgeLAhf?= =?us-ascii?Q?Jytm2LUDlNR5xLwlOA0PbIS1UT4Inj/tn3Id0Fu86e46wxTaXyJwVyqsKHWN?= =?us-ascii?Q?6PmOeIofKvBezcqn3Dm0qMBH+AJyvu+je5lRVq/eyJXbdWs/hKPhY0D2GINg?= =?us-ascii?Q?jf+7Pgn58Wght9dALU+php+kVzWYrXPByzN1A+n+jbx+WqXvFKCA1lpcIrlt?= =?us-ascii?Q?D1RzmMPdySwzVBfTmoSoeCtrI+QWSFP8YaqgCyx1TNtGRtEI35mEaGu/dk7b?= =?us-ascii?Q?VmryOIr2GaRvVPzGvD07+XN/HW0GKnhneQD44AWi?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MN0PR11MB6158.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 6ec8a861-a69f-45cc-3f87-08db05e9be97 X-MS-Exchange-CrossTenant-originalarrivaltime: 03 Feb 2023 13:22:48.5847 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: lOVxL4mqwJVvtdp7rVWcK46DT7Vv8GsHGCQdaftFg3UqDLE3ej5WqI9Sa4e4qPeMdIt2OFzqePVhhO4zHUdryQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA1PR11MB7678 Return-Path: jiaxin.wu@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Hi Gerd, Is it still the solution with multiple hobs created for big data but you wa= nt the hob splitting and reassembling can be encapsulated in the Hoblib? Does it need define the new hob type for chunk? Thanks, Jiaxin > -----Original Message----- > From: kraxel@redhat.com > Sent: Friday, February 3, 2023 3:55 PM > To: Ni, Ray > Cc: Johnson, Brian ; devel@edk2.groups.io; Laszlo > Ersek ; Wu, Jiaxin ; Dong, Eric > ; Zeng, Star ; Kumar, Rahul R > ; Kinney, Michael D = ; > Zimmer, Vincent > Subject: Re: [edk2-devel] [PATCH v3 1/5] UefiCpuPkg/SmmBaseHob.h: Add > SMM Base HOB Data >=20 > On Fri, Feb 03, 2023 at 03:14:42AM +0000, Ni, Ray wrote: > > Gerd, > > Can you please explain a bit more on the chunk idea? >=20 > > > > to introduce a generic and reusable concept of chunked HOBs, so you= can > > > > add helper functions to HobLib for splitting and reassembling, with= a > > > > struct along the lines of: > > > > > > > > typedef struct { > > > > // offset and size of this particular chunk > > > > UINT32 ChunkOffset; > > > > UINT32 ChunkSize; > > > > > > > > // number of chunks and size of all chunks combined. > > > > UINT32 ChunkCount; > > > > UINT32 TotalSize; > > > > > > > > // chunk data > > > > UINT8 Data[0]; > > > > } EFI_HOB_CHUNK; >=20 > Reassembling would work like this: >=20 > // once > AssembledHob =3D malloc(HobChunk->TotalSize); >=20 > // for each chunk > memcpy(AssembledHob + HobChunk->ChunkOffset, HobChunk->Data, > HobChunk->ChunkSize); >=20 > Possible shortcut: >=20 > if (HobChunk->ChunkSize =3D=3D HobChunk->TotalSize) > // data is not splitted into multiple chunks > AssembledHob =3D HobChunk->Data >=20 > Advantage: you avoid the allocation in case the data fits into a single > HOB. Disadvantage: you need to track whenever AssembledHob is allocated > (and must eventually be freed) or not. >=20 > HobChunk->ChunkCount is not really needed but might be useful for sanity > checking. >=20 > take care, > Gerd