box86 icon indicating copy to clipboard operation
box86 copied to clipboard

Illegal Opcode in docker + Perforce server

Open yurivieira opened this issue 3 years ago • 2 comments

Hello guys! First I want to congratulate you for the great work being done with box86. It's an amazing tool.

I'm not a programmer. Just one trying to get the most out of my Raspberry Pi 4.

I made a docker image of box86 and it includes the Perforce version control server, but I'm getting Opcode errors

Illegal Opcode 0xb6ef552e: FF 3F 00 20 08 BD Illegal Opcode 0xb6e6552e: FF 3F 00 20 08 BD Illegal Opcode 0xb6e9b52e: FF 3F 00 20 08 BD Illegal Opcode 0xb6e6752e: FF 3F 00 20 08 BD Illegal Opcode 0xb6f2352e: FF 3F 00 20 08 BD Illegal Opcode 0xb6f1352e: FF 3F 00 20 08 BD Illegal Opcode 0xb6f2252e: FF 3F 00 20 08 BD Illegal Opcode 0xb6e6152e: FF 3F 00 20 08 BD Illegal Opcode 0xb6ec352e: FF 3F 00 20 08 BD Illegal Opcode 0xb6e7d52e: FF 3F 00 20 08 BD

Here's the build of my image


FROM debian SUPPORTER Yuri Vieira LABEL version="latest" description="Build Box86 and Perforce Server for RPI4"

RUN apt-get update && apt-get upgrade -y RUN apt-get install --yes --no-install-recommends git python3 build-essential cmake ca-certificates gcc-arm-linux-gnueabihf RUN apt-get clean RUN git clone https://github.com/ptitSeb/box86

RUN mkdir /box86/build WORKDIR /box86/build RUN cmake .. -DRPI4=1 -DCMAKE_BUILD_TYPE=RelWithDebInfo RUN make -j$(nproc) RUN does the installation

WORKDIR / ADD http://ftp.perforce.com/perforce/r18.1/bin.linux26x86/p4d /usr/local/bin/p4d RUN chmod +x /usr/local/bin/p4d

RUN mkdir /perforce_depot RUN mkdir /var/log/perforce

RUN export P4JOURNAL=/var/log/perforce/journal RUN export P4LOG=/var/log/perforce/p4err RUN export P4ROOT=/perforce_depot RUN export P4PORT=1666

EXPOSE 1666 WORKDIR /perforce_depot VOLUME /perforce_depot

ENTRYPOINT ["/box86/build/box86", "/usr/local/bin/p4d"] ENV P4CLIENT P4CONFIG P4PASSWD P4PORT P4USER


This is the perforce service with multiple versions

http://ftp.perforce.com/perforce/

As versions r21.2 and r22.1 the application runs, I can create users, create my workspace, but as soon as I try a file the server crashes and Opcode errors reappear. Other versions Opcode occurs at application startup. The r18.1 version that is like this is for a special reason I have this version on another x86 machine.

Is there anything I can do on my side?

Thanks

yurivieira avatar Sep 22 '22 13:09 yurivieira

This is an illegal opcode. I need to reproduce the issue to analyse. can you try with BOX86_DYNAREC=0 to see if you have the same behaviour without the dynarec?

ptitSeb avatar Oct 12 '22 20:10 ptitSeb

Thank's for your time.

Tried it with BOX86_DYNAREC=0 and got the same Illegal Opcode on perforce server version r18.1.

In versions r22.1 and r21.2 the server starts with DYNAREC on or off. I can create my user and workspace, but as soon as I try to sync any file the server goes down and the log shows this:

0077|0x82ed72d: Unimplemented Opcode (C7) 65 F3 0F 7E 04 FD 80 E6

yurivieira avatar Oct 14 '22 03:10 yurivieira