Date: Thu, 18 Mar 2004 16:23:58 +0100 From: Alexander Leidinger <Alexander@Leidinger.net> To: obrien@freebsd.org Cc: cvs-src@freebsd.org Subject: Re: cvs commit: src/share/mk bsd.cpu.mk bsd.dep.mk bsd.lib.mk bsd.sys.mk src/sys/conf files kern.mk kern.pre.mk kmod.mk src/sys/dev/aic7xxx/aicasm Makefile Message-ID: <20040318162358.3f57aef3@Magellan.Leidinger.net> In-Reply-To: <20040318002208.GC2541@dragon.nuxi.com> References: <200403122136.i2CLaCm9096276@repoman.freebsd.org> <20040315033213.GA40858@dragon.nuxi.com> <20040315180324.0fa39609@Magellan.Leidinger.net> <20040318002208.GC2541@dragon.nuxi.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, 17 Mar 2004 16:22:08 -0800 "David O'Brien" <obrien@freebsd.org> wrote: > On Mon, Mar 15, 2004 at 06:03:24PM +0100, Alexander Leidinger wrote: > > > > Problems with icc v8: > > > > - panic: npx0 cannot be emulated on an SMP system > > > > - UP: first start of /bin/sh results in a FP exception > > > > > > You forgot the other problems with icc v8 -- Intel's preditorial > > > behavior. Note that some parts of the Intel compilers support libs do a > > > CPUID call and if it notes an AMD CPU either segfaults or dumbs down the > > > capabilities of the CPU to that of the original i386. > > > > AFAIK: > > - only if the compiled binary contains the main function > > (the kernel doesn't) > > - only if you use a specific compiler option, which I don't use here > > It happens in several circumstances, not just when using one particular > compiler option. It seems I'm talking about a different part of the behavior than you do. > > BTW.: AFAIK it doesn't segfault, it exit()s. > > BTW, icc v8 produced binaries will sometimes segfault on AMD processors. > Trust me, AMD has tested this issue more than you have. Then the check I mentioned is buggy in the sense of "it does not protect all cases from segfaulting". It seems Intel identified some issues regarding icc when used on AMD processors. I don't know if there is malicious intend to use some specific instructions or not. I don't know if there exist instructions which perform the same action with the same efficiency (I don't define what "efficient" means in this case) without resulting in a segfault on AMD processors. It would be nice, if icc would produce code which also runs without flaws on AMD processors, but I can't influence such decisions, as I don't have any relationship with Intel (I just got the commercial license of icc for FreeBSD because I asked for it). If you are able to provide access to a similar good compiler for (a subset of) the ia32 architecture, I'm willing to give it a try too. ATM I'm working with Tom Rhodes and Bruce Evans to change the compiler tests to feature tests. Support for another compiler should be very easy to add then. > > Any manufacturer is free to limit the use of his programs as he wants. I > > agree, this behavior isn't nice, but life isn't nice either (sometimes). > > Then I'd like to take the stance of reanble the blind use of EFER.NXE in > the FreeBSD/amd64 loader -- Intel ia32e can just add that feature. It seems you're aware that this causes problems on Intel processors. Enabling the use of it is questionable then. Intel at least seems to be aware of some issues and protects the user from misbehavior. The test may be not strict enough in some cases, and maybe too strict in other cases, but as long as you can't proof they do this with malicious intend, you should try to calm down. Bye, Alexander. -- I will be available to get hired in April 2004. http://www.Leidinger.net Alexander @ Leidinger.net GPG fingerprint = C518 BC70 E67F 143F BE91 3365 79E2 9C60 B006 3FE7
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20040318162358.3f57aef3>