Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Illegal Instruction when using dotnet commands on 2.1.300-rc1 SDK with Ubuntu 18.04 ARM64 on WSL #1561

Closed
snickler opened this issue May 15, 2018 · 17 comments

Comments

@snickler
Copy link

snickler commented May 15, 2018

Illegal Instruction when using dotnet commands on 2.1.300-rc1 SDK with Ubuntu 18.04 ARM64 on WSL

Binary Information:

Downloaded Ubuntu 18.04 from here https://www.microsoft.com/store/productId/9N9TNGVNDL3Q

Downloaded Linux ARM (glibc) 64-bit from https://github.com/dotnet/core/blob/master/release-notes/download-archives/2.1.0-rc1-download.md

System Information:

msinfo32 output:


OS Name	Microsoft Windows 10 Pro Insider Preview
Version	10.0.17666 Build 17666
Other OS Description 	Not Available
OS Manufacturer	Microsoft Corporation
System Manufacturer	ASUSTeK COMPUTER INC.
System Model	NovaGo TP370QL
System Type	ARM64-based PC
System SKU	6
Processor	Snapdragon(TM) 835, 2208 Mhz, 8 Core(s), 8 Logical Processor(s)
BIOS Version/Date	Qualcomm Inc. TP370QL.253, 3/30/2018
SMBIOS Version	3.0
Embedded Controller Version	255.255
BIOS Mode	UEFI
BaseBoard Manufacturer	ASUSTeK COMPUTER INC.
BaseBoard Product	NovaGo TP370QL
BaseBoard Version	1.0

lsb_release output from Ubuntu 18.04:


Architecture:        aarch64
Byte Order:          Little Endian
CPU(s):              8
On-line CPU(s) list: 0-7
Thread(s) per core:  1
Core(s) per socket:  8
Socket(s):           1
Vendor ID:           ARM
Model:               0
Model name:          Cortex-A57
Stepping:            r1p0
CPU max MHz:         2208.0000
BogoMIPS:            1900
Hypervisor vendor:   Windows Subsystem for Linux
Virtualization type: container
Flags:               fp asimd evtstrm aes pmull sha1 sha2 crc32

The following commands throw this error:

dotnet new

dotnet --info

dotnet --version

Output:

snickler@WOATARGET:~/dotnet-2.1-rc1$ ./dotnet new
Illegal instruction (core dumped)
snickler@WOATARGET:~/dotnet-2.1-rc1$ ./dotnet --info
Illegal instruction (core dumped)
snickler@WOATARGET:~/dotnet-2.1-rc1$ ./dotnet --version
Illegal instruction (core dumped)

@bitcrazed
Copy link

Hey @benhillis @terrajobst - any thoughts on what's causing these Illegal Instruction errors?

@benhillis
Copy link

I'm not sure, I know @Brian-Perkins has been looking at some arm64 issues recently.

@snickler
Copy link
Author

One thing I didn't add - the --list-runtimes and --list-sdks switches are the only ones that don't return Illegal Instruction

snickler@WOATARGET:~/dotnet-2.1-rc1$ ./dotnet --list-sdks
2.1.300-rc1-008673 [/home/snickler/dotnet-2.1-rc1/sdk]
snickler@WOATARGET:~/dotnet-2.1-rc1$ ./dotnet --list-runtimes
Microsoft.NETCore.App 2.1.0-rc1 [/home/snickler/dotnet-2.1-rc1/shared/Microsoft.NETCore.App]

@Brian-Perkins
Copy link

I attempted to install from the instructions linked in the OP and it doesn't appear ARM64 versions are present. If someone can provide a set of commands I can run from a clean Ubuntu 18 install in order to repro this, it would be very helpful.

@snickler
Copy link
Author

@Brian-Perkins I updated the main post with the link to the Ubuntu 18.04 download that works for ARM64.

Also, it seems that the dotnet-sdk-latest-Linux-arm64.tar.gz from https://github.com/dotnet/cli/blob/master/README.md (which is currently 2.1.400-preview-008858 at the time of this post) also doesn't work properly.

@Brian-Perkins
Copy link

I am still having trouble locating ARM64 dotnet binaries.

@snickler
Copy link
Author

@Brian-Perkins
Copy link

Thank you. I thought I had tried that link, but on attempt number two it looks good. I ended up here which wasn't as useful.

@snickler
Copy link
Author

@Brian-Perkins - Have you been able to reproduce?

@Brian-Perkins
Copy link

I was able to reproduce. It is complaining about a cache flush instruction -- I am looking into it.

@snickler
Copy link
Author

snickler commented May 17, 2018 via email

@Brian-Perkins
Copy link

We are working on a WSL fix for this. I will add another update when it makes it out in an Insiders Build.

@snickler
Copy link
Author

This is great to hear. Thanks so much @bitcrazed @Brian-Perkins

@Brian-Perkins
Copy link

This should be resolved in Insider Build 17692 - WSL specific release notes here if you are on the Insider track. There is no fix yet for the RS4 release -- I will update when that changes.

@snickler
Copy link
Author

snickler commented Jun 14, 2018 via email

@snickler
Copy link
Author

I will mark this issue as fixed, but I'm opening another issue that I've discovered while trying to use it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants