[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Upgrading the minimum required s390x CPU to z10?



On Tue, May 31, 2016, at 18:25, Aurelien Jarno wrote:
> 
> That's indeed the right way to do it (and to fix the issue), but the
> point is that developers using GCC defaulting to z10 or higher don't
> realize they can't use the corresponding instructions, so that has to
> be fixed later.  Latest example is openssl.
> 

Hmm.  I see two possibilities here.

(1) The source code package uses a GCC option that specifies that the
compiled object code is to run on a z10 processor.  The fix here is
rather simple and straightforward: change the GCC option to specify a
z800/z900, then re-build the package.  The compiler will now generate
object code that is compatible with all z/Architecture processors.

(2) The so-called "C" source code bails out to assembly language in places,
and some instructions are used which aren't supported on a z800/z900.
(I've mainly seen this in s390-specific kernel modules.)  In this case, the
fix is more involved.  You have to find the offending code, insert a
facility check to make sure the instruction is supported first, then
decide how to handle the case where it isn't.  This is much more labor
intensive.

Which case are you talking about?  (I must confess that I haven't looked
at the source code for openssl.)

-- 
  .''`.     Stephen Powell    <zlinuxman@fastmail.com>
 : :'  :
 `. `'`
   `-


Reply to: