From nobody@FreeBSD.org  Fri Nov  4 14:33:58 2011
Return-Path: <nobody@FreeBSD.org>
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
	by hub.freebsd.org (Postfix) with ESMTP id 26E721065674
	for <freebsd-gnats-submit@FreeBSD.org>; Fri,  4 Nov 2011 14:33:58 +0000 (UTC)
	(envelope-from nobody@FreeBSD.org)
Received: from red.freebsd.org (red.freebsd.org [IPv6:2001:4f8:fff6::22])
	by mx1.freebsd.org (Postfix) with ESMTP id 17B548FC14
	for <freebsd-gnats-submit@FreeBSD.org>; Fri,  4 Nov 2011 14:33:57 +0000 (UTC)
Received: from red.freebsd.org (localhost [127.0.0.1])
	by red.freebsd.org (8.14.4/8.14.4) with ESMTP id pA4EXv93059315
	for <freebsd-gnats-submit@FreeBSD.org>; Fri, 4 Nov 2011 14:33:57 GMT
	(envelope-from nobody@red.freebsd.org)
Received: (from nobody@localhost)
	by red.freebsd.org (8.14.4/8.14.4/Submit) id pA4EXvCY059284;
	Fri, 4 Nov 2011 14:33:57 GMT
	(envelope-from nobody)
Message-Id: <201111041433.pA4EXvCY059284@red.freebsd.org>
Date: Fri, 4 Nov 2011 14:33:57 GMT
From: Sylvain Galliano <sg@efficientip.com>
To: freebsd-gnats-submit@FreeBSD.org
Subject: Reading DMI memory parts using mmap freeze the system
X-Send-Pr-Version: www-3.1
X-GNATS-Notify:

>Number:         162294
>Category:       kern
>Synopsis:       Reading DMI memory parts using mmap freeze the system
>Confidential:   no
>Severity:       serious
>Priority:       low
>Responsible:    freebsd-bugs
>State:          open
>Quarter:
>Keywords:
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Fri Nov 04 14:40:08 UTC 2011
>Closed-Date:
>Last-Modified:
>Originator:     Sylvain Galliano
>Release:        8.2-RELEASE
>Organization:
EfficientIP
>Environment:
FreeBSD solid.intranet 8.2-RELEASE-p3 FreeBSD 8.2-RELEASE-p3 #17: Thu Sep 29 19:28:07 UTC 2011     root@masterappliance-402.intranet:/usr/src/sys/i386/compile/SOLIDSERVER  i386
>Description:
When several processes simultaneously read DMI datas (using dmidecode), the system freeze.

There is no issue in 8.1-RELEASE.



>How-To-Repeat:
Execute the following script:

#!/bin/sh

/usr/local/sbin/dmidecode -s system-serial-number &
/usr/local/sbin/dmidecode -s system-serial-number &
/usr/local/sbin/dmidecode -s system-serial-number &
/usr/local/sbin/dmidecode -s system-serial-number &
. hundreds of lines


after few execution (sometime the first one), the system freeze

>Fix:
This issue seems to be related to mmap use in dmidecode.
In fact, if we change config.h in dmidecode port to disable mmap usage, all works fine. (In this case, dmidecode just open/read/close /dev/mem instead of mmap)


>Release-Note:
>Audit-Trail:
>Unformatted:
