From nobody Sun Feb 8 04:34:06 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) client-ip=192.237.175.120; envelope-from=xen-devel-bounces@lists.xenproject.org; helo=lists.xenproject.org; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; dmarc=pass(p=reject dis=none) header.from=citrix.com ARC-Seal: i=1; a=rsa-sha256; t=1671215729; cv=none; d=zohomail.com; s=zohoarc; b=J6LRFqO3sdan4Qc0DkaZkT4F53mkCU09gd+LB6BEHbryxq9FTCiFl8x0j1Mo8iuhTsAYfKweihwwNSsYz0hcye0e9jTdTP1cHTL56iwGX4yFkHLDd++UJNOT7bBWJBmeCqz5uqLyUz9YMI164Ow6jEsKZotWJfJhGS8AeaaUVHE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1671215729; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=L2pBj5sB+2VWON3cBoOPwD2gh5LLMvN/UUne10wsw9o=; b=C+MPlXqAtbwUDI0qU8bkc35naUrvzQAGvyOTYEIy4pjHpYTQNLw8WI78LvNfqaz650cSL4pSZR3QoiBvkys+t7955Km6vfYGDtbyZZYGlERjyD4TG3LJV6waRpa8kAUlH87TXl/3YNXCLzanRE02qa0aowlhsOOum/jBlX98yss= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 167121572979892.38343985220092; Fri, 16 Dec 2022 10:35:29 -0800 (PST) Received: from list by lists.xenproject.org with outflank-mailman.464943.723518 (Exim 4.92) (envelope-from ) id 1p6FYA-00046I-Ds; Fri, 16 Dec 2022 18:35:14 +0000 Received: by outflank-mailman (output) from mailman id 464943.723518; Fri, 16 Dec 2022 18:35:14 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1p6FYA-00045z-Ah; Fri, 16 Dec 2022 18:35:14 +0000 Received: by outflank-mailman (input) for mailman id 464943; Fri, 16 Dec 2022 18:35:13 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1p6FPv-0008JE-R8 for xen-devel@lists.xenproject.org; Fri, 16 Dec 2022 18:26:43 +0000 Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com [216.71.145.142]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 2faf6d38-7d6f-11ed-91b6-6bf2151ebd3b; Fri, 16 Dec 2022 19:26:42 +0100 (CET) X-Outflank-Mailman: Message body and most headers restored to incoming version X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 2faf6d38-7d6f-11ed-91b6-6bf2151ebd3b DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1671215202; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=CG01Ym3JdeGOajBJXCwb2DSCwADHqYLVBH4PspSY8t4=; b=PumSt9ei+qFPWVzDw35nxAlZ6t7V5CXNURLdHtyGOTd7COgtN4uFVuLH vuJ/Hkn1AtrbXnMbiCxaOQ+sYpJ6bRJ2useHR1h6z1u3w0JvcrYz8Lrkr N0oclHfF17ce6QrBx107H6d8zSUzLQ9ov8E95tF+pZBMv2GUQUU1YCkRs c=; Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 89196238 X-Ironport-Server: esa1.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.83 X-Policy: $RELAYED IronPort-Data: A9a23:eOu/0qsLfcxAOp4K2gFheW1dIufnVFheMUV32f8akzHdYApBsoF/q tZmKWyFOq7bYWTxf9l/YInnpkNVvMeAmIBhTFY4qS40FyJB+JbJXdiXEBz9bniYRiHhoOCLz O1FM4Wdc5pkJpP4jk3wWlQ0hSAkjclkfpKlVKiffHg0HVU/IMsYoUoLs/YjhYJ1isSODQqIu Nfjy+XSI1bg0DNvWo4uw/vrRChH4bKj5lv0gnRkPaoR5QWHySFPZH4iDfrZw0XQE9E88tGSH 44v/JnhlkvF8hEkDM+Sk7qTWiXmlZaLYGBiIlIPM0STqkAqSh4ai87XB9JFAatjsB2bnsgZ9 Tl4ncfYpTHFnEH7sL91vxFwS0mSNEDdkVPNCSDXXce7lyUqf5ZwqhnH4Y5f0YAwo45K7W9yG fMwNDQdXDq9rOWP8om2Fe5+q55zPvTXBdZK0p1g5Wmx4fcORJnCR+PB5MNC3Sd2jcdLdRrcT 5NHM3w1Nk2GOkARfAdMYH49tL7Aan3XfjFGqVTTua0t5Gv7xw1tyrn9dtHSf7RmQO0Fzx/J+ DidrwwVBDlHLdGd8R/d0E6woeXUxyW4Ut0+KIeRo6sCbFq7mTVIVUx+uUGAiea9ol6zXZRYM UN80iYns6Ua7kGgSdj5GRqirxasrhMaHtZdDeA+wAWM0bbPpRaUAHAeSTxMY8Bgs9U5LQHGz XfQwYmvX2Y29uTIFzTNrd94sA9eJwAJKX8wTxEvSjI32NS8p5Me1ELdc+paRfvdYsLOJRn8x DWDrS4bjroVjNIW26jTwW0rkw5AtbCSEFdru1y/snaNq1ogOdX7P9DABU3zt64oEWqPcrWWU JHoceC65ftGM5yCnTflrA4lTODwvKbt3NExbDdS83gdG9aFoSbLkWN4umsWyKJV3iEsJ1fUj Lf741852XOqFCLCgVVLS4ywEd826qPrCM7oUPvZBvIXPMcoLVXWpXA+PRLOt4wIrKTLufhvU ap3jO72VSpKYUiZ5GTeqxghPU8DmXllmDK7qWHTxBW7y7uODEN5up9cWGZimtsRtfveyC2Mq oY3Cid/40kHOAEISnWNoNF7wJFjBSRTOK0aXOQLLr/ef1Y7Rj5xYxITqJt4E7FYc21uvr+g1 hmAtoVwmTITWVWvxd22V01e IronPort-HdrOrdr: A9a23:c7rWG6wBgPE0eKs+LT7gKrPwy71zdoMgy1knxilNoEpuA6qlfq GV88jzsCWftN9/Yh0dcLy7SdK9qDbnhOZICOoqU4tKPjOW31dAd7sSj7cKqgeIcxEWtNQttp uIFZIObeEYZmIK9PoSjjPUL/8QhPGb9eSRmevDw1dBJDsaEZ1I3kNQFwOSCFd3TA4DIZI4Ed 656tBcrzStPVQbB/7bOlA1G8DfotXQjpLvZlojDx4jrDSUhTSz4LTmEx6emjcSOgku/V8tmV K19zARtp/Jj82G X-IronPort-AV: E=Sophos;i="5.96,249,1665460800"; d="scan'208";a="89196238" From: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= To: CC: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= , "Christian Lindig" , David Scott , Wei Liu , Anthony PERARD Subject: [PATCH v4 11/11] tools/ocaml/libs/xb: drop Xs_ring.write Date: Fri, 16 Dec 2022 18:25:20 +0000 Message-ID: X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @citrix.com) X-ZM-MESSAGEID: 1671215730492100001 Unused, only Xs_ring.write_substring is used. Also the bytes/string conversion here is backwards: the C stub implements t= he bytes version and then we use a Bytes.unsafe_of_string to convert a string = into bytes. However the operation here really is read-only: we read from the string and write it to the ring, so the C stub should implement the read-only string version, and if needed we could use Bytes.unsafe_to_string to be able to se= nd 'bytes'. However that is not necessary as the 'bytes' version is dropped ab= ove. Signed-off-by: Edwin T=C3=B6r=C3=B6k --- Changes: * new patch --- tools/ocaml/libs/xb/xs_ring.ml | 5 +---- tools/ocaml/libs/xb/xs_ring_stubs.c | 2 +- 2 files changed, 2 insertions(+), 5 deletions(-) diff --git a/tools/ocaml/libs/xb/xs_ring.ml b/tools/ocaml/libs/xb/xs_ring.ml index 2a27aa56c2..87c6b243e4 100644 --- a/tools/ocaml/libs/xb/xs_ring.ml +++ b/tools/ocaml/libs/xb/xs_ring.ml @@ -25,14 +25,11 @@ module Server_features =3D Set.Make(struct end) =20 external read: Xenmmap.mmap_interface -> bytes -> int -> int =3D "ml_inter= face_read" -external write: Xenmmap.mmap_interface -> bytes -> int -> int =3D "ml_inte= rface_write" +external write_substring: Xenmmap.mmap_interface -> string -> int -> int = =3D "ml_interface_write" =20 external _internal_set_server_features: Xenmmap.mmap_interface -> int -> u= nit =3D "ml_interface_set_server_features" [@@noalloc] external _internal_get_server_features: Xenmmap.mmap_interface -> int =3D = "ml_interface_get_server_features" [@@noalloc] =20 -let write_substring mmap buff len =3D - write mmap (Bytes.unsafe_of_string buff) len - let get_server_features mmap =3D (* NB only one feature currently defined above *) let x =3D _internal_get_server_features mmap in diff --git a/tools/ocaml/libs/xb/xs_ring_stubs.c b/tools/ocaml/libs/xb/xs_r= ing_stubs.c index 28c79ee139..dca6059b0d 100644 --- a/tools/ocaml/libs/xb/xs_ring_stubs.c +++ b/tools/ocaml/libs/xb/xs_ring_stubs.c @@ -119,7 +119,7 @@ CAMLprim value ml_interface_write(value ml_interface, CAMLlocal1(ml_result); =20 struct mmap_interface *interface =3D GET_C_STRUCT(ml_interface); - const unsigned char *buffer =3D Bytes_val(ml_buffer); + const char *buffer =3D String_val(ml_buffer); int len =3D Int_val(ml_len); int result; =20 --=20 2.34.1