On Wed, May 02, 2012 at 11:23:48AM -0400, Matt Turner wrote:
> Jim?

Sorry, I am behind on my gentoo-dev reading, thanks Matt for bringing
this thread to my attention.  Here are the two main concerns I've
gathered from the rest of the thread:

On Wed, Apr 25, 2012 at 11:04:08PM -0600, Ryan Hill wrote:
> Arg, no.  Please just print the warning if the host doesn't do SSE2.
> There's no reason to have a USE flag here (and _really_ no reason to
> make it fatal), especially for an instruction set that every system
> has supported for over a decade.

It's true that probably "most" people have sse2.  And this change won't
affect all those people that have sse2.  It only affects people that
don't have sse2.

The run-time failure case (flash just doesn't work) is tricky to
diagnose, so I want the user to be aware of this at install time.  Thus
I feel the check should (1) be fatal and (2) provide instructions that
10.3 can still be used.

The reason there's a USE flag is so that binary packagers can forcibly
skip the 'die' if they know they're building for an sse2 SYSTEM.  This
is only needed if you're running on a machine without sse2, packaging for
a machine with sse2.

On Thu, Apr 26, 2012 at 05:06:45PM -0300, Alexis Ballier wrote:
> wouldnt adding a sse2 useflag and putting it in REQUIRED_USE solve the
> problem ?
> 
> afaik portage wont even try to upgrade if people have -sse2

This is an interesting idea, as it could automatically downgrade users to
10.3 without requiring any masking.  I like that.

However, the problem I have with this approach is that it doesn't
address people who do have sse2 instructions available but have not set
the USE flag.  I noticed that our amd64 profile does set USE=sse2
automatically.  That's good.  But x86 users would still have to set this
manually.  And people without the flag will be forcibly downgraded to
10.3 for no good reason.  And as Ryan accurately points out, most people
*do* have sse2 instructions available.

I prefer checking /proc/cpuinfo because that way I'm *sure* that the
user's system has the required instruction set.

The only way I think that this decision can really be made would be to
have some sort of usage statistics on how many x86 setups there are
where the CPU has sse2 available but the user has not set USE=sse2.  Any
idea how we can know how many this is?

Hmmm... I suppose the other thing I could do is put the /proc/cpuinfo
check into the 10.3 ebuild, and warn users if they're installing 10.3
and *should* be setting USE=sse2 to get 11.2 instead.... Maybe that's the
best solution!

Thanks for the suggestions, I'll try to get at this change soon.

-- 
Jim Ramsay

Reply via email to