From owner-freebsd-current@FreeBSD.ORG Sun Sep 20 05:03:33 2009 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 675CF106566C; Sun, 20 Sep 2009 05:03:33 +0000 (UTC) (envelope-from peter@wemm.org) Received: from mail-pz0-f172.google.com (mail-pz0-f172.google.com [209.85.222.172]) by mx1.freebsd.org (Postfix) with ESMTP id 440A88FC1B; Sun, 20 Sep 2009 05:03:33 +0000 (UTC) Received: by pzk2 with SMTP id 2so1546894pzk.28 for ; Sat, 19 Sep 2009 22:03:32 -0700 (PDT) MIME-Version: 1.0 Received: by 10.115.101.25 with SMTP id d25mr5783791wam.46.1253421662391; Sat, 19 Sep 2009 21:41:02 -0700 (PDT) In-Reply-To: <507613.41733.qm@web63907.mail.re1.yahoo.com> References: <507613.41733.qm@web63907.mail.re1.yahoo.com> Date: Sat, 19 Sep 2009 21:41:02 -0700 Message-ID: From: Peter Wemm To: Barney Cordoba Content-Type: text/plain; charset=ISO-8859-1 Cc: freebsd-current@freebsd.org, Ivan Voras Subject: Re: SSE register return with SSE disabled on AMD64 X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Sep 2009 05:03:33 -0000 On Sat, Sep 19, 2009 at 3:19 PM, Barney Cordoba wrote: > > > --- On Sat, 9/19/09, Ivan Voras wrote: > >> From: Ivan Voras >> Subject: Re: SSE register return with SSE disabled on AMD64 >> To: freebsd-current@freebsd.org >> Date: Saturday, September 19, 2009, 4:52 PM >> Barney Cordoba wrote: >> > What causes the error: >> > >> > "SSE register return with SSE disabled" >> > >> > Im getting it with seemingly simple math. Its in a >> module so I can >> > change the switches. >> >> Module, as in "kernel module"? Floating point math, and I >> believe by >> extension SSE and others, are not allowed in the kernel. >> > Yes, Kernel Module > > It only seems to affect division, and it works fine in 32 bit mode, > so I don't think its floating point in general. Is there an emulator > function or something? > > Barney The error suggests you've got a function returning a double or a float or an SSE data type. You cannot do that, either in the kernel or in a module. You will cause corruption to user processes. We compile with -mno-sse etc for a reason on amd64 kernels. It isn't allowed on i386 either, but I don't think we have explicit safeguards therem. -- Peter Wemm - peter@wemm.org; peter@FreeBSD.org; peter@yahoo-inc.com; KI6FJV "All of this is for nothing if we don't go to the stars" - JMS/B5 "If Java had true garbage collection, most programs would delete themselves upon execution." -- Robert Sewell