From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) by c5ff346549e7 (Postfix) with ESMTPS id 581145D5 for ; Mon, 21 Dec 2020 22:33:10 +0000 (UTC) X-IronPort-AV: E=Sophos;i="5.78,437,1599516000"; d="scan'208";a="484117849" Received: from prod-listesu18.inria.fr (HELO sympa.inria.fr) ([128.93.162.160]) by mail2-relais-roc.national.inria.fr with ESMTP; 21 Dec 2020 23:33:06 +0100 Received: by sympa.inria.fr (Postfix, from userid 20132) id 90DDEE02D6; Mon, 21 Dec 2020 23:33:04 +0100 (CET) Received: from mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) by sympa.inria.fr (Postfix) with ESMTPS id CB234E020B for ; Mon, 21 Dec 2020 23:33:01 +0100 (CET) Authentication-Results: mail2-smtp-roc.national.inria.fr; spf=None smtp.pra=ygrek@autistici.org; spf=Pass smtp.mailfrom=ygrek@autistici.org; spf=Pass smtp.helo=postmaster@confino.investici.org IronPort-PHdr: =?us-ascii?q?9a23=3A7lGl6hDVayvk1Vdx3LviUyQJP3N1i/DPJgcQr6Af?= =?us-ascii?q?oPdwSPX7o8bcNUDSrc9gkEXOFd2Cra4d1KyM6/qrADRaqb+681k6OKRWUBEEjc?= =?us-ascii?q?hE1ycBO+WiTXPBEfjxciYhF95DXlI2t1uyMExSBdqsLwaK+i764jEdAAjwOhRo?= =?us-ascii?q?LerpBIHSk9631+ev8JHPfglEnjWwba5wIRmsswndqtcajYR/Jqot1BfCv2dFdf?= =?us-ascii?q?lRyW50P1yYggzy5t23/J5t8iRQv+wu+stdWqjkfKo2UKJVAi0+P286+MPkux/D?= =?us-ascii?q?TRCS5nQHSWUZjgBIAwne4x7kWJr6rzb3ufB82CmeOs32UKw0VDG/5KplVBPklC?= =?us-ascii?q?EKPCMi/WrJlsJ/kr5UoBO5pxx+3YHUZp2VNOFjda/ZZN8WWHZNUtpUWyFHH4iy?= =?us-ascii?q?bZYAD/AZMOhWr4fzuUYAoxi8CgmiA+3gxSNHiHDt0K0m0eksCx3K0RY8E94Qtn?= =?us-ascii?q?nfsdX7NL0VUeCw1KTJzTrDb+lI1jf+9YPFdRAgof6WXb1ucsrc0lMgFx7ZjlWR?= =?us-ascii?q?sozlIzKV2fgMs2SB6OpgT+2vhnchpgpsrTeh2t0ihZPVhoIJ1F/E7yN5zZ4pKd?= =?us-ascii?q?C8VkJ1bt+pHZlOuyyVNIZ4Td0vTmFrtSs+17ELpIC2cDYUxJkoxBPRZeGLf5aI?= =?us-ascii?q?7B79UOucPyl0iW54db+8gRu57EuuyvXkW8WqzVpGsDBJnsTQun0DzRDe6NaLRu?= =?us-ascii?q?Fj8kqhxTqC0R3Y5PteLkAuj6XbLoYswr4umZoXtkTOBjP5mELwjK+Yd0Uk/O+o?= =?us-ascii?q?5/7mYrXguJ+TKZR0ih3/Mqsym8yzG+M4MhIBX2SD+OS80qPs/VHhTblUk/E6jL?= =?us-ascii?q?PVvI3GKckVvKK0ARFZ3pw95xu/EzuqyNEYkmMGLFJBdhKHlY/pO1TWLfH4Ave/?= =?us-ascii?q?mUqjkDRwyv/cI73hHpTNLmPfkLfgYbl96lRQyA0pzdBQ/55UEK0OIOrvWk/ts9?= =?us-ascii?q?zVFhA4MwiqzOb9D9V81pgTWGOOAq+cK6zSq0WH6vguI+mKfo8VuSzyJ+Ir5/70?= =?us-ascii?q?lXU5g0MSfbG13ZsLb3C1BuhpLF+cYXrom9sBFWYKvhEiTOHxk12DUTtTZ26oUK?= =?us-ascii?q?4m5zE7DpimDYbZSYy3jryBxnTzIpoDTWBcC0uQFm/oes2+UvkCYSaWI4c1mTwe?= =?us-ascii?q?VKO9TJch2Dm0vQH0wr5jL6zZ53tLm4jk0Y1k6Pfelllm5DNuAse12nyRTnpon2?= =?us-ascii?q?gJATgs0/Ys8gRG1l6f3P0g0LRjHttJ6qYMC19ibMOO/6lBE9n3Hzn5UJKJRVKh?= =?us-ascii?q?GI70CjY3QNM3xJkPZVhwAMmjhRGF2DClUeZMxu67Qacs+6eZ5EDfYsN0ynLIzq?= =?us-ascii?q?4k1gR0S9ZTNHa6h6V+sQ/JCNyQyhnLp+ORba0ZmRX12iKb12PX4RNRTRJxSrnE?= =?us-ascii?q?VnFZYVHZ/4z0?= X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0AeAABIIuFfffpIZ9RiGgEBAQEBAQEBA?= =?us-ascii?q?QEDAQEBARIBAQEBAgIBAQEBQIFPg3gBMS6VZ5w2CwEDAQ0sAQIEAQGESgKBdQI?= =?us-ascii?q?eBgEENBMCEAEBBQEBAQIBAwMEARMBAQ8UCIYRDII4KQGDEgEEAToGAQE3AQQLC?= =?us-ascii?q?wk9VwYThg0kAa8mgTSDBAEBBoJMg02BOQmBOIwweSYODYFAQIQqPoo1hRycA4E?= =?us-ascii?q?dVpseMIJ+gSaBMJhnMZMAj0axGIRIgW2Ben0IO4JpUBkNjiEMF4hihWQhATI3A?= =?us-ascii?q?gYKAQEDCVkBAYomAQE?= X-IPAS-Result: =?us-ascii?q?A0AeAABIIuFfffpIZ9RiGgEBAQEBAQEBAQEDAQEBARIBAQE?= =?us-ascii?q?BAgIBAQEBQIFPg3gBMS6VZ5w2CwEDAQ0sAQIEAQGESgKBdQIeBgEENBMCEAEBB?= =?us-ascii?q?QEBAQIBAwMEARMBAQ8UCIYRDII4KQGDEgEEAToGAQE3AQQLCwk9VwYThg0kAa8?= =?us-ascii?q?mgTSDBAEBBoJMg02BOQmBOIwweSYODYFAQIQqPoo1hRycA4EdVpseMIJ+gSaBM?= =?us-ascii?q?JhnMZMAj0axGIRIgW2Ben0IO4JpUBkNjiEMF4hihWQhATI3AgYKAQEDCVkBAYo?= =?us-ascii?q?mAQE?= X-IronPort-AV: E=Sophos;i="5.78,437,1599516000"; d="scan'208";a="484117805" X-MGA-submission: =?us-ascii?q?MDEvYGao/RVGcO3N+Vc7yoGyS138DNWJWJuOjK?= =?us-ascii?q?yPyHCw7nOnF+pbgwXMg9pwAlwtiKPMkInrctAFUtTNTGiG28DjQcYurF?= =?us-ascii?q?zNpgzhfA2koqNvDjRooCRMGIKuYVIe0ABcHeR7Qg5q57iZNNL4RZYfVb?= =?us-ascii?q?dOFqnfcPxubUqtO6y4E/hQ5w=3D=3D?= Received: from confino.investici.org ([212.103.72.250]) by mail2-smtp-roc.national.inria.fr with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 21 Dec 2020 23:32:19 +0100 Received: from mx1.investici.org (unknown [127.0.0.1]) by confino.investici.org (Postfix) with ESMTP id 4D0Djt2R1fz13jL; Mon, 21 Dec 2020 22:32:18 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=autistici.org; s=stigmate; t=1608589938; bh=mYPFIlhQbLIau4//LrlKRnQ5kdJGSk/W5ycvH9D1EQ8=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=mWCSLFnCmTgbTF/VnN71QtTbw7CTS/0ak6zwR8Wak1YnKVoggxGKSEewyxQOYskTJ UxrAXi4oF4cYH1BIS8xd64Ye85riNPgYm//6ab2VKpUVMbm7gFtFvG8A8If6af4U5q ImadKFhLvEhSDUwuKJf9M+H1zE/zU632mptUzsdY= Received: from [212.103.72.250] (mx1.investici.org [212.103.72.250]) (Authenticated sender: ygrek@autistici.org) by localhost (Postfix) with ESMTPSA id 4D0Djs50jDz13Pn; Mon, 21 Dec 2020 22:32:17 +0000 (UTC) Date: Mon, 21 Dec 2020 15:32:13 -0700 From: ygrek To: Christophe Raffalli Cc: Xavier Leroy , caml users Message-ID: <20201221153213.1844759e@autistici.org> In-Reply-To: References: <9AB7B536-D8D5-4473-8692-110F0053F2EE@raffalli.eu> X-Mailer: Claws Mail 3.17.3 (GTK+ 2.24.32; x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Subject: Re: [Caml-list] Global roots Reply-To: ygrek X-Loop: caml-list@inria.fr X-Sequence: 18320 Errors-To: caml-list-owner@inria.fr Precedence: list Precedence: bulk Sender: caml-list-request@inria.fr X-no-archive: yes List-Id: List-Help: List-Subscribe: List-Unsubscribe: List-Post: List-Owner: List-Archive: Archived-At: On Mon, 21 Dec 2020 22:03:32 +0100 Christophe Raffalli wrote: > static void protect_callback(char *name, value f, value v1) > { > caml_acquire_runtime_system(); > { > CAMLparam2(f,v1); > CAMLlocal1(res); > res = caml_callback_exn(f, v1); > if(Is_exception_result(res)) > fprintf(stderr, "Egl.main_loop: " > "WARNING: %s raised an exception\n", name) ; > CAMLdrop; > } > caml_release_runtime_system(); > } Values pointed by f and v1 may be moved by gc prior to caml_acquire_runtime_system call, but the values passed to the function (in registers or via stack) will be pointing to old locations still. IOW need to pass ocaml values here by-reference (where the reference itself is registered with gc somehow), not by-value. --