Jump to content

VMware Horizon Client 2303 and later - Illegal Instruction (Linux only)


cparke2

Recommended Posts

I've been asked by my organization to update my VMware Horizon Client to version 2306 or later, or I will soon become unable to connect; I am currently using Horizon Client version 2212.1 on Linux/Ubuntu 22.04.4 LTS (64-bit).  However, when I upgrade and try to connect with this new version, the application crashes with an ILLEGAL INSTRUCTION exception.  This does not happen using the Windows version of Horizon Client 2306 on the same machine, however!

Further analysis reveals the illegal instruction that is causing this error is an SSE4.1 instruction (PINSRQ) which my processor does not support! It is happening in the VMware shared library /usr/lib/vmware/libudpProxyLib.so for the PCoIP component.  However, the processor requirements for Linux 64-bit version of VMware Horizon Client 2303 and later is only SSE2, which my processor does support.

This particular shared library does not seem very large or complicated, and does not appear to need to use the newer instructions.  So this looks like a build flag error/bug in VMware Horizon Client Linux version for x64 systems that should be fixed or patched by VMware so that I and others can upgrade the software.

VMware Horizon Client 2303 Crash Dump Info.txt

Edited by cparke2
Highlighting
  • Thanks 1
Link to comment
Share on other sites

  • cparke2 changed the title to VMware Horizon Client 2303 and later - Illegal Instruction (Linux only)

Thanks for the post, I've been struggling with this issue for a few months and been unable to update due to issues on older hardware that I couldn't quite make sense of till now.

Sadly the issue is still present on the latest version, so a new version that doesn't need SSE4.1 would be great or if not confirmation that SSE4.1 is actually required now so we can start swapping hardware.

Link to comment
Share on other sites

  • Employee

I've reached out to a dev team that ran into this once before, a while back. The solution back then was to disable SSE4.1. They are in China so I except an answer on Monday (or tomorrow). I'm hardly a Linux person so not going to advice you anything at this point... 

  • Thanks 1
Link to comment
Share on other sites

  • 2 weeks later...
Posted (edited)

Well I'm glad to see that I'm not the only person facing this issue!

You don't need to be a "Linux person" to understand that programs using newer processor instructions than they are supposed to under the minimum system requirements are not going to work on machines at those minimum requirements!

Frankly, this is likely a compiler flag issue with your build needed to disable the generation of these machine instructions beyond SSE2.  I do wish your dev team would look into it and fix the Makefile in the next version, if not issue a patch release.  In the meantime, I am now doing stupid things like X-forwarding this client app. from another computer on the network, or using QEMU to emulate the unsupported instructions.  It's a great hassle for an end-user application that should be lightweight and support a wide range of low-end hardware!

Edited by cparke2
Link to comment
Share on other sites

  • 2 weeks later...
  • Employee

I have the question outstanding and am trying to reach the right person.. I totally understand what it is about but I'm not going to pretend to be a Linux expert or users even. I was talking to someone about this (subject matter expert) but he was on PTO so I just reached out again (Yes, I forgot to do that earlier) to get this solved...

This is far from my job, I'm in tech marketing... just trying to help you as the devs won't see this question otherwise

  • Like 1
Link to comment
Share on other sites

20 hours ago, Rob Beekmans said:

I have the question outstanding and am trying to reach the right person.. I totally understand what it is about but I'm not going to pretend to be a Linux expert or users even. I was talking to someone about this (subject matter expert) but he was on PTO so I just reached out again (Yes, I forgot to do that earlier) to get this solved...

This is far from my job, I'm in tech marketing... just trying to help you as the devs won't see this question otherwise

Understood, thank you very much for the context. 

Very much appreciate your (continued) efforts to inform the devs of this compatibility issue that we're facing.

Thank you!

Link to comment
Share on other sites

  • Employee

It sadly is a step by step process as I don't know those teams. I know the library it is part of and which team does own it. I just send the team lead a slack message to see if he can help.

The good thing is that I get to know the Linux team and next time I know who to contact.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...