From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Original-To: caml-list@sympa.inria.fr Delivered-To: caml-list@sympa.inria.fr Received: from mail3-relais-sop.national.inria.fr (mail3-relais-sop.national.inria.fr [192.134.164.104]) by sympa.inria.fr (Postfix) with ESMTPS id 20B9080191 for ; Fri, 30 Jun 2017 15:51:14 +0200 (CEST) X-IronPort-AV: E=Sophos;i="5.40,286,1496095200"; d="scan'208";a="230150785" Received: from estephe.paris.inria.fr (HELO [128.93.64.229]) ([128.93.64.229]) by mail3-relais-sop.national.inria.fr with ESMTP; 30 Jun 2017 15:51:12 +0200 To: OCaml Mailing List From: Xavier Leroy Message-ID: <0ea087b1-7267-eee6-3dd5-55a760d8f4cd@inria.fr> Date: Fri, 30 Jun 2017 15:51:11 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.1.1 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit Subject: [Caml-list] [IMPORTANT] Intel Skylake / Kaby Lake hardware bug affects OCaml programs Dear OCaml users, It was recently made public that Intel processors of the Skylake and Kaby Lake families have a nasty hardware bug concerning hyperthreading. See, for example https://arstechnica.com/information-technology/2017/06/skylake-kaby-lake-chips-have-a-crash-bug-with-hyperthreading-enabled/ I wanted to draw the attention of all OCaml users to this issue, because this hardware bug is triggered by the OCaml runtime under fairly common conditions. Random crashes caused by this bug were observed at Ahrefs and another industrial user of OCaml, and also by users of Coccinelle and of Coq. (*) Your OCaml installation may be affected if the following three conditions are met: 1- You're using an Intel processor of the Skylake or Kaby Lake family. (AMD processors and older Intel processors are not affected.) 2- The processor support hyperthreading (HT) and hyperthreading is enabled in the BIOS. 3- The OCaml runtime system was compiled with certain versions of GCC. (We don't know exactly which versions of GCC triggers the issue, but it seems that it is never triggered by clang-generated code. In particular, this means that Mac OS X users should be safe.) See https://lists.debian.org/debian-devel/2017/06/msg00308.html for help in determining if your processor is vulnerable, and for instructions on how to address the issue. Possible fixes include: - Apply the microcode update recently released by Intel for Skylake processors. (No such update exists yet for Kaby Lake processors.) - Disable hyperthreading in the BIOS. - Reinstall OCaml using clang instead of GCC. Kind regards, - Xavier Leroy (*) It is likely that we OCaml folks were the first to pinpoint this Intel bug. For more information, see the narratives at https://caml.inria.fr/mantis/view.php?id=7452 https://medium.com/ahrefs/skylake-bug-a-detective-story-ab1ad2beddcd