From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S965813AbbKESXr (ORCPT ); Thu, 5 Nov 2015 13:23:47 -0500 Received: from forward11m.cmail.yandex.net ([5.255.216.137]:40825 "EHLO forward11m.cmail.yandex.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S965383AbbKESXp (ORCPT ); Thu, 5 Nov 2015 13:23:45 -0500 X-Greylist: delayed 506 seconds by postgrey-1.27 at vger.kernel.org; Thu, 05 Nov 2015 13:23:45 EST Authentication-Results: smtp13.mail.yandex.net; dkim=pass header.i=@yandex.ru To: LKML From: Evgenii Shatokhin Subject: [ANNOUNCE] RaceHound 1.1 Message-ID: <563B9CAC.4080500@yandex.ru> Date: Thu, 5 Nov 2015 21:15:08 +0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.2.0 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org RaceHound 1.1 has been released. This is a data race detector for the Linux kernel 3.14 or newer, on x86. It checks the kernel code in runtime and although it may miss some races, it produces no false alarms. It can be used to confirm the potential races found by other tools, or can be used standalone to "sweep" through a given area of code looking if data races happen there. RaceHound relies on Kprobes and hardware breakpoints to detect the conflicting memory accesses. Changes since v.1.0 Enhancements: * The kernel-mode part of RaceHound now reports the events ("breakpoint hit", "race found") to the user space via a file in debugfs that can be polled. The following two new scripts use this. * examples/events.py Python script simply outputs the current events to stdout. * examples/check_apps.py script allows to monitor a number of locations in the code, it adjusts the set of monitored locations depending on how often they are executed, to keep the overhead lower. Bug fixes: * lines2insns did not show all instructions in some cases (https://github.com/winnukem/racehound/issues/7) * A race between removal of a BP and processing of that BP was fixed - yes, RaceHound had races too ;-) * a few smaller fixes. Downloads: https://github.com/winnukem/racehound/releases/tag/1.1 Details, build instructions, etc: https://github.com/winnukem/racehound. Regards, Evgenii