Failed to install Parallels Tools on Ubuntu 20.04 ARM

Discussion in 'Linux Virtual Machine' started by ThomasS93, Jun 29, 2023.

  1. ThomasS93

    ThomasS93 Bit poster

    Messages:
    2
    Hello,
    suddenly my Ubuntu and its Parallels Tools didnt work so i decided to reinstall the Tools again. But this ended up with errors like
    modprobe: FATAL: Module prl_tg not found in directory /lib/modules/5.19.0-46-generic
    Means the Kernel Module isnt present, i guess. So i tried to compile the Kernel Modules by myself. Unpack the prl_mod.tar.gz to a folder in downloads, and in it i did a make -f Makefile.kmods
    This ended up in this:
    awk: Kommandozeile:1: Warnung: Die Escapesequenz »\#« ist kein bekannter Operator für reguläre Ausdrücke
    Will use compiler CC="cc".
    Compiler version "cc (Ubuntu 11.3.0-1ubuntu1~22.04.1) 11.3.0"
    cd prl_tg/Toolgate/Guest/Linux/prl_tg && make CC=cc
    make[1]: Verzeichnis „/home/thomas/Downloads/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg" wird betreten
    1: /lib/modules/5.19.0-46-generic/build
    2: /home/thomas/Downloads/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg
    3: 20230629
    4: 1.10.0
    Start compile prl_tg...
    make -C /lib/modules/5.19.0-46-generic/build M=/home/thomas/Downloads/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg SRCROOT=/home/thomas/Downloads/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg CC=cc modules
    make[2]: Verzeichnis „/usr/src/linux-headers-5.19.0-46-generic" wird betreten
    warning: the compiler differs from the one used to build the kernel
    The kernel was built by: aarch64-linux-gnu-gcc (Ubuntu 11.3.0-1ubuntu1~22.04.1) 11.3.0
    You are using: cc (Ubuntu 11.3.0-1ubuntu1~22.04.1) 11.3.0
    1: /lib/modules/5.19.0-46-generic/build
    2: /home/thomas/Downloads/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg
    3: 20230629
    4: 1.10.0
    CC [M] /home/thomas/Downloads/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.o
    In file included from /home/thomas/Downloads/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c:23:
    /home/thomas/Downloads/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_common.h: In function 'tg_out':
    /home/thomas/Downloads/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_common.h:179:14: warning: assignment to 'long unsigned int' from 'void *' makes integer from pointer without a cast [-Wint-conversion]
    179 | port += dev->base_addr;
    | ^~
    /home/thomas/Downloads/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_common.h:183:24:
    warning: passing argument 2 of 'iowrite64' makes pointer from integer without a cast -Wint-conversion]
    183 | iowrite64(val, port);

    | ^~~~

    | |

    | long unsigned int

    In file included from ./arch/arm64/include/asm/io.h:185,
    from ./include/linux/io.h:13,
    from ./include/linux/irq.h:20,
    from ./include/asm-generic/hardirq.h:17,
    from ./arch/arm64/include/asm/hardirq.h:17,
    from ./include/linux/hardirq.h:11,
    from ./include/linux/interrupt.h:11,
    from ./include/linux/pci.h:38,
    from /home/thomas/Downloads/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c:7:
    ./include/asm-generic/io.h:769:64: note: expected 'volatile void *' but argument is of type 'long unsigned int'
    769 | static inline void iowrite64(u64 value, volatile void __iomem *addr)
    | ~~~~~~~~~~~~~~~~~~~~~~~^~~~
    /home/thomas/Downloads/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c:
    In function 'prl_tg_initialize':
    /home/thomas/Downloads/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c:385:14: error: implicit declaration of function 'pci_set_dma_mask' [-Werror=implicit-function-declaration]
    385 | rc = pci_set_dma_mask(pdev, DMA_BIT_MASK(64));
    | ^~~~~~~~~~~~~~~~
    In file included from ./include/asm-generic/bug.h:22,
    from ./arch/arm64/include/asm/bug.h:26,
    from ./include/linux/bug.h:5,
    from ./arch/arm64/include/asm/cpufeature.h:19,
    from ./arch/arm64/include/asm/hwcap.h:9,
    from ./arch/arm64/include/asm/arch_timer.h:12,
    from ./arch/arm64/include/asm/timex.h:8,
    from ./include/linux/timex.h:67,
    from ./include/linux/time32.h:13,
    from ./include/linux/time.h:60,
    from ./arch/arm64/include/asm/stat.h:12,
    from ./include/linux/stat.h:6,
    from ./include/linux/module.h:13,
    from /home/thomas/Downloads/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c:5:
    /home/thomas/Downloads/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c: In function 'prl_tg_probe_common':
    ./include/linux/kern_levels.h:5:25: warning: format '%lx' expects argument of type 'long unsigned int', but argument 3 has type 'void *' [-Wformat=]
    5 | #define KERN_SOH "\001" /* ASCII Start Of Header */
    | ^~~~~~
    ./include/linux/printk.h:436:25:
    note: in definition of macro 'printk_index_wrap'
    436 | _p_func(_fmt, ##__VA_ARGS__); \
    | ^~~~
    /home/thomas/Downloads/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c:520:9:
    note: in expansion of macro 'printk'
    520 | printk(KERN_INFO "detected %s, base addr %08lx, IRQ %d\n",
    | ^~~~~~
    ./include/linux/kern_levels.h:14:25:
    note: in expansion of macro 'KERN_SOH'
    14 | #define KERN_INFO KERN_SOH "6" /* informational */
    | ^~~~~~~~
    /home/thomas/Downloads/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c:520:16:
    note: in expansion of macro 'KERN_INFO'
    520 | printk(KERN_INFO "detected %s, base addr %08lx, IRQ %d\n",
    | ^~~~~~~~~
    /home/thomas/Downloads/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c:
    In function 'prl_tg_init_module':
    /home/thomas/Downloads/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c:646:13: warning: unused variable 'rc' [-Wunused-variable]
    646 | int rc;
    | ^~
    cc1: some warnings being treated as errors
    make[3]: *** [scripts/Makefile.build:257: /home/thomas/Downloads/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.o] Fehler 1
    make[2]: *** [Makefile:1857: /home/thomas/Downloads/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg] Fehler 2
    make[2]: Verzeichnis „/usr/src/linux-headers-5.19.0-46-generic" wird verlassen
    make[1]: *** [Makefile:43: prl_tg] Fehler 2
    make[1]: Verzeichnis „/home/thomas/Downloads/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg" wird verlassen
    make: *** [Makefile.kmods:47: compile] Fehler 2


    Running Parallels 17.1.6 on a Mac Mini M1
    Kernel in Ubuntu is:
    Linux ubuntu-linux-20-04-desktop 5.19.0-46-generic #47~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Wed Jun 21 15:35:58 UTC 2 aarch64 aarch64 aarch64 GNU/Linux

    Why i cant install the Tools?
    Regards
    Thomas
     
  2. MerricksMan

    MerricksMan Bit poster

    Messages:
    2
    Best Answer
    I also confirm: Installation of Parallels tools for Ubuntu 22.04.3 guest VM with Kernel 6.5.x and higher only work properly when installing certain deb-packages in the first place and link onto the right gnu compiler library (Version 12 gcc).

    https://kb.parallels.com/en/113394 is misleading because gcc-12 and dkms are missing in that KB. That should be taken into account by Parallels Support.

    So far my steps to succeed:
    1. Make sure to install the following missing packages first in the Ubuntu VM via Terminal
    sudo apt get install dkms libelf-dev build-essential linux-headers$(uname -r) gcc-12
    2. Relink to gcc Version 12
    sudo ln -sf /usr/bin/gcc-12 /usr/bin/gcc
    check gcc version with: gcc --version
    It should be version 12.x
    3. Start to install/mount Parallels Tools and run install using a terminal
    Menu -> Action -> Install Parallels Tools
    sudo "/media/$USER/Parallels Tools"/install
    Optional: Check install, compile log in another terminal session
    tail -f /var/log/parallels-tools-install.log
    If everythings works out nicely just reboot the VM. Compile errors or missing libraries will be prompted either in the log file or installer.
    sudo reboot
    and you're done.
     
    Mikhail Ushakov and KeyvanE like this.
  3. Pramesh Boodadoo

    Pramesh Boodadoo Staff Member

    Messages:
    539
    Hello Thomas,
    As a possible solution, kindly follow the below steps:
    1. In your Ubuntu virtual machine, open the Terminal application.
    2. Execute the following command to eject any CD/DVD images:

    for dev in /dev/sr0 /dev/cdrom /dev/dvd; do sudo eject $dev; done 2>/dev/null
    


You will be prompted to enter your Linux password to run the command. Please enter your password (no symbols will be shown) and press Return/Enter.
    3. Now, let's proceed to the Mac side to mount the Parallels Tools image into the virtual machine:
    * Ensure that the Linux virtual machine in question is the only one running.
    * Execute the following command in the Terminal:

    VM_ID=$(prlctl list -a | grep running | awk '{print $1}' | head -n 1) && ISO_PATH=$(if [[ $(uname -m) == "x86_64" ]]; then echo "/Applications/Parallels Desktop.app/Contents/Resources/Tools/prl-tools-lin.iso"; elif [[ $(uname -m) == "arm64" ]]; then echo "/Applications/Parallels Desktop.app/Contents/Resources/Tools/prl-tools-lin-arm.iso"; fi) && prlctl set $VM_ID --device-set cdrom0 --image "$ISO_PATH" --connect

    4. After executing the command, you should see the message, "The VM has been successfully configured."
    On the Linux virtual machine side, you will notice that Parallels Tools are mounted.
    5. Switch back to the Terminal of your Linux virtual machine and execute the following command to update dependencies, correctly mount the image, and run the Parallels Tools installation:

    sudo mkdir -p /media/cdrom0; if [[ -f /etc/fedora-release ]]; then sudo dnf install -y gcc kernel-devel-$(uname -r) kernel-headers-$(uname -r) make checkpolicy selinux-policy-devel; sudo mount -o exec /dev/sr0 /media/cdrom0; cd /media/cdrom0; sudo ./install; elif [[ -f /etc/debian_version ]] || [[ -f /etc/kali_version ]] || [[ -f /etc/os-release && $(grep -Ei "NAME=\"Debian|NAME=\"Ubuntu" /etc/os-release) ]]; then sudo apt-get install -y dkms libelf-dev linux-headers-$(uname -r) build-essential; sudo mount -o exec /dev/sr0 /media/cdrom0; cd /media/cdrom0; sudo ./install; fi

    You will be prompted to enter your password to run the command. Please enter your password (no symbols will be shown) and press Return/Enter.
    6. As a result, the Parallels Tools Installer window will appear. Please proceed with the installation.
    7. Once the installation is complete, it is necessary to reboot your Linux virtual machine to apply the changes.

    Kindly refer to this article for more details: https://kb.parallels.com/en/129740

    Let us know if the above steps, helped to resolve the issue.
    If the issue persists, kindly reproduce the issue and collect a technical report (right-click Parallels icon in Dock > Help > Send technical data > check "Attach screenshots..." > press Send Report) and provide us with the report's 9-digit ID in reply to this post.

    Thank you.
     
  4. ThomasS93

    ThomasS93 Bit poster

    Messages:
    2
    Hello Pramesh,

    thanks for your reply, but this command
    VM_ID=$(prlctl list -a | grep running | awk '{print $1}' | head -n 1) && ISO_PATH=$(if [[ $(uname -m) == "x86_64" ]]; then echo "/Applications/Parallels Desktop.app/Contents/Resources/Tools/prl-tools-lin.iso"; elif [[ $(uname -m) == "arm64" ]]; then echo "/Applications/Parallels Desktop.app/Contents/Resources/Tools/prl-tools-lin-arm.iso"; fi) && prlctl set $VM_ID --device-set cdrom0 --image "$ISO_PATH" --connect

    ends up in

    The command is available only in Parallels Desktop for Mac Pro or Business Edition.

    I have Parallels 17.1.6 (51584) Standard Edition

    Regards
    Thomas
     
  5. VincentH13

    VincentH13 Bit poster

    Messages:
    5
    I am having the same problem on M2 Macbook Pro running 13.4, with a Fedora 38 VM running 6.5.5-200.fc38.aarch64. It seems that all that was done above was eject and then reconnect the Parallels tools CD, and then manually install from the CD directory. Manually installing failed for me, and the Linux ARM RPM is not available for download at Parallels. Posting this from my Mac, so I cannot copy/paste the logs. I will have to log in from the VM to do so if necessary.
     
  6. VincentH13

    VincentH13 Bit poster

    Messages:
    5
    Last metadata expiration check: 0:12:38 ago on Mon 02 Oct 2023 08:55:44 AM EDT.
    Package elfutils-libelf-devel-0.189-3.fc38.aarch64 is already installed.
    Dependencies resolved.
    ================================================================================
    Package Architecture Version Repository Size
    ================================================================================
    Installing:
    dkms noarch 3.0.11-1.fc38 updates 90 k
    Installing weak dependencies:
    openssl aarch64 1:3.0.9-2.fc38 updates 1.0 M

    Transaction Summary
    ================================================================================
    Install 2 Packages

    Total download size: 1.1 M
    Installed size: 1.8 M
    Downloading Packages:
    (1/2): dkms-3.0.11-1.fc38.noarch.rpm 438 kB/s | 90 kB 00:00
    (2/2): openssl-3.0.9-2.fc38.aarch64.rpm 2.7 MB/s | 1.0 MB 00:00
    --------------------------------------------------------------------------------
    Total 2.5 MB/s | 1.1 MB 00:00
    Running transaction check
    Transaction check succeeded.
    Running transaction test
    Transaction test succeeded.
    Running transaction
    Preparing : 1/1
    Installing : openssl-1:3.0.9-2.fc38.aarch64 1/2
    Installing : dkms-3.0.11-1.fc38.noarch 2/2
    Running scriptlet: dkms-3.0.11-1.fc38.noarch 2/2
    Created symlink /etc/systemd/system/multi-user.target.wants/dkms.service → /usr/lib/systemd/system/dkms.service.

    Verifying : dkms-3.0.11-1.fc38.noarch 1/2
    Verifying : openssl-1:3.0.9-2.fc38.aarch64 2/2

    Installed:
    dkms-3.0.11-1.fc38.noarch openssl-1:3.0.9-2.fc38.aarch64

    Complete!
    2023-10-02T09:08:24-0400: execCmd: ./installer/pm.sh --install gtools --logfile /var/log/parallels-tools-install.log [0]
    Started installation of Parallels Guest Tools version '19.0.0.54570'
    modprobe: FATAL: Module prl_tg not found in directory /lib/modules/6.5.5-200.fc38.aarch64

    Mon Oct 2 09:08:25 EDT 2023
    Start installation or upgrade of Guest Tools
    Installed Guest Tools were not found
    Register service to install new Guest Tools
    Perform installation into the /usr/lib/parallels-tools directory
    make: Entering directory '/usr/lib/parallels-tools/kmods'
    Will use compiler CC="cc".
    Compiler version "cc (GCC) 13.2.1 20230728 (Red Hat 13.2.1-1)"
    cd prl_tg/Toolgate/Guest/Linux/prl_tg && make CC=cc
    make[1]: Entering directory '/usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg'
    1: /lib/modules/6.5.5-200.fc38.aarch64/build
    2: /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg
    3: 20231002
    4: 1.10.2
    Start compile prl_tg...
    make -C /lib/modules/6.5.5-200.fc38.aarch64/build M=/usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg SRCROOT=/usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg CC=cc modules
    make[2]: Entering directory '/usr/src/kernels/6.5.5-200.fc38.aarch64'
    warning: the compiler differs from the one used to build the kernel
    The kernel was built by: gcc (GCC) 13.2.1 20230728 (Red Hat 13.2.1-1)
    You are using: cc (GCC) 13.2.1 20230728 (Red Hat 13.2.1-1)
    1: /lib/modules/6.5.5-200.fc38.aarch64/build
    2: /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg
    3: 20231002
    4: 1.10.2
    CC [M] /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.o
    CC [M] /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_call.o
    In file included from /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_common.h:25,
    from /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_call.c:11:
    /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_call.c: In function 'tg_req_map_user_pages':
    /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_compat.h:63:17: error: too many arguments to function 'get_user_pages'
    63 | get_user_pages(_1, _2, (_3) ? FOLL_WRITE : 0, _4, _5)
    | ^~~~~~~~~~~~~~
    /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_call.c:126:15: note: in expansion of macro 'prl_get_user_pages'
    126 | got = prl_get_user_pages(
    | ^~~~~~~~~~~~~~~~~~
    In file included from ./include/linux/scatterlist.h:8,
    from ./include/linux/dmapool.h:14,
    from ./include/linux/pci.h:1621,
    from /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_call.c:7:
    ./include/linux/mm.h:2430:6: note: declared here
    2430 | long get_user_pages(unsigned long start, unsigned long nr_pages,
    | ^~~~~~~~~~~~~~
    make[4]: *** [scripts/Makefile.build:243: /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_call.o] Error 1
    make[3]: *** [/usr/src/kernels/6.5.5-200.fc38.aarch64/Makefile:2046: /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg] Error 2
    make[2]: Leaving directory '/usr/src/kernels/6.5.5-200.fc38.aarch64'
    make[2]: *** [Makefile:246: __sub-make] Error 2
    make[1]: Leaving directory '/usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg'
    make[1]: *** [Makefile:44: prl_tg] Error 2
    make: Leaving directory '/usr/lib/parallels-tools/kmods'
    make: *** [Makefile.kmods:48: compile] Error 2
    Error: could not build kernel modules
    modprobe: FATAL: Module prl_tg not found in directory /lib/modules/6.5.5-200.fc38.aarch64
    modprobe: FATAL: Module prl_tg not found in directory /lib/modules/6.5.5-200.fc38.aarch64
    Error: failed to install Parallels Guest Tools!
    2023-10-02T09:08:26-0400: Started installation of Parallels Guest Tools version '19.0.0.54570'
    modprobe: FATAL: Module prl_tg not found in directory /lib/modules/6.5.5-200.fc38.aarch64

    Mon Oct 2 09:08:25 EDT 2023
    Start installation or upgrade of Guest Tools
    warning: the compiler differs from the one used to build the kernel
    The kernel was built by: gcc (GCC) 13.2.1 20230728 (Red Hat 13.2.1-1)
    You are using: cc (GCC) 13.2.1 20230728 (Red Hat 13.2.1-1)
    In file included from /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_common.h:25,
    from /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_call.c:11:
    /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_call.c: In function 'tg_req_map_user_pages':
    /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_compat.h:63:17: error: too many arguments to function 'get_user_pages'
    63 | get_user_pages(_1, _2, (_3) ? FOLL_WRITE : 0, _4, _5)
    | ^~~~~~~~~~~~~~
    /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_call.c:126:15: note: in expansion of macro 'prl_get_user_pages'
    126 | got = prl_get_user_pages(
    | ^~~~~~~~~~~~~~~~~~
    In file included from ./include/linux/scatterlist.h:8,
    from ./include/linux/dmapool.h:14,
    from ./include/linux/pci.h:1621,
    from /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_call.c:7:
    ./include/linux/mm.h:2430:6: note: declared here
    2430 | long get_user_pages(unsigned long start, unsigned long nr_pages,
    | ^~~~~~~~~~~~~~
    make[4]: *** [scripts/Makefile.build:243: /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_call.o] Error 1
    make[3]: *** [/usr/src/kernels/6.5.5-200.fc38.aarch64/Makefile:2046: /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg] Error 2
    make[2]: *** [Makefile:246: __sub-make] Error 2
    make[1]: *** [Makefile:44: prl_tg] Error 2
    make: *** [Makefile.kmods:48: compile] Error 2
    Error: could not build kernel modules
    modprobe: FATAL: Module prl_tg not found in directory /lib/modules/6.5.5-200.fc38.aarch64
    modprobe: FATAL: Module prl_tg not found in directory /lib/modules/6.5.5-200.fc38.aarch64
    Error: failed to install Parallels Guest Tools!
    2023-10-02T09:08:26-0400: execCmd: ./install --install [167]
    2023-10-02T09:08:26-0400: Error: An error occurred when installing Parallels Tools. Please go to /var/log/parallels-tools-install.log for more information.
    2023-10-02T11:54:42-0400: Exiting with code 1
    Started installation of Parallels Guest Tools version '19.0.0.54570'
    Previous version was not found. Nothing to backup.
    installer:%0.000000
    modprobe: FATAL: Module prl_tg not found in directory /lib/modules/6.5.5-200.fc38.aarch64

    Mon Oct 2 12:08:36 EDT 2023
    Start installation or upgrade of Guest Tools
    installer:%10.000000
    installer:%20.000000
    Installed Guest Tools were not found
    Register service to install new Guest Tools
    installer:%30.000000
    Perform installation into the /usr/lib/parallels-tools directory
    installer:%40.000000
    make: Entering directory '/usr/lib/parallels-tools/kmods'
    Will use compiler CC="cc".
    Compiler version "cc (GCC) 13.2.1 20230728 (Red Hat 13.2.1-1)"
    cd prl_tg/Toolgate/Guest/Linux/prl_tg && make CC=cc
    make[1]: Entering directory '/usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg'
    1: /lib/modules/6.5.5-200.fc38.aarch64/build
    2: /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg
    3: 20231002
    4: 1.10.2
    Start compile prl_tg...
    make -C /lib/modules/6.5.5-200.fc38.aarch64/build M=/usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg SRCROOT=/usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg CC=cc modules
    make[2]: Entering directory '/usr/src/kernels/6.5.5-200.fc38.aarch64'
    warning: the compiler differs from the one used to build the kernel
    The kernel was built by: gcc (GCC) 13.2.1 20230728 (Red Hat 13.2.1-1)
    You are using: cc (GCC) 13.2.1 20230728 (Red Hat 13.2.1-1)
    1: /lib/modules/6.5.5-200.fc38.aarch64/build
    2: /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg
    3: 20231002
    4: 1.10.2
    CC [M] /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.o
    CC [M] /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_call.o
    In file included from /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_common.h:25,
    from /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_call.c:11:
    /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_call.c: In function 'tg_req_map_user_pages':
    /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_compat.h:63:17: error: too many arguments to function 'get_user_pages'
    63 | get_user_pages(_1, _2, (_3) ? FOLL_WRITE : 0, _4, _5)
    | ^~~~~~~~~~~~~~
    /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_call.c:126:15: note: in expansion of macro 'prl_get_user_pages'
    126 | got = prl_get_user_pages(
    | ^~~~~~~~~~~~~~~~~~
    In file included from ./include/linux/scatterlist.h:8,
    from ./include/linux/dmapool.h:14,
    from ./include/linux/pci.h:1621,
    from /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_call.c:7:
    ./include/linux/mm.h:2430:6: note: declared here
    2430 | long get_user_pages(unsigned long start, unsigned long nr_pages,
    | ^~~~~~~~~~~~~~
    make[4]: *** [scripts/Makefile.build:243: /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_call.o] Error 1
    make[3]: *** [/usr/src/kernels/6.5.5-200.fc38.aarch64/Makefile:2046: /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg] Error 2
    make[2]: *** [Makefile:246: __sub-make] Error 2
    make[2]: Leaving directory '/usr/src/kernels/6.5.5-200.fc38.aarch64'
    make[1]: *** [Makefile:44: prl_tg] Error 2
    make[1]: Leaving directory '/usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg'
    make: *** [Makefile.kmods:48: compile] Error 2
    make: Leaving directory '/usr/lib/parallels-tools/kmods'
    Error: could not build kernel modules
    modprobe: FATAL: Module prl_tg not found in directory /lib/modules/6.5.5-200.fc38.aarch64
    modprobe: FATAL: Module prl_tg not found in directory /lib/modules/6.5.5-200.fc38.aarch64
    Error: failed to install Parallels Guest Tools!
    Trying to restore previous Parallels Guest Tools installation...
    2023-10-02T12:19:13-0400:

    Parallels Tools 19.0.0-54570 Installer started.
    2023-10-02T12:19:13-0400: Failed to setup console printk level.
    2023-10-02T12:19:20-0400: execCmd: ./install --check [0]
    2023-10-02T12:19:20-0400: execCmd: ./installer/detect-xserver.sh -v >/dev/null 2>&1 [0]
    2023-10-02T12:19:24-0400: execCmd: ./installer/pm.sh --check gtools [0]
    Started installation of Parallels Guest Tools version '19.0.0.54570'
    modprobe: FATAL: Module prl_tg not found in directory /lib/modules/6.5.5-200.fc38.aarch64

    Mon Oct 2 12:19:26 EDT 2023
    Start installation or upgrade of Guest Tools
    Installed Guest Tools were not found
    Register service to install new Guest Tools
    Perform installation into the /usr/lib/parallels-tools directory
    make: Entering directory '/usr/lib/parallels-tools/kmods'
    Will use compiler CC="cc".
    Compiler version "cc (GCC) 13.2.1 20230728 (Red Hat 13.2.1-1)"
    cd prl_tg/Toolgate/Guest/Linux/prl_tg && make CC=cc
    make[1]: Entering directory '/usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg'
    1: /lib/modules/6.5.5-200.fc38.aarch64/build
    2: /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg
    3: 20231002
    4: 1.10.2
    Start compile prl_tg...
    make -C /lib/modules/6.5.5-200.fc38.aarch64/build M=/usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg SRCROOT=/usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg CC=cc modules
    make[2]: Entering directory '/usr/src/kernels/6.5.5-200.fc38.aarch64'
    warning: the compiler differs from the one used to build the kernel
    The kernel was built by: gcc (GCC) 13.2.1 20230728 (Red Hat 13.2.1-1)
    You are using: cc (GCC) 13.2.1 20230728 (Red Hat 13.2.1-1)
    1: /lib/modules/6.5.5-200.fc38.aarch64/build
    2: /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg
    3: 20231002
    4: 1.10.2
    CC [M] /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.o
    CC [M] /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_call.o
    In file included from /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_common.h:25,
    from /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_call.c:11:
    /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_call.c: In function 'tg_req_map_user_pages':
    /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_compat.h:63:17: error: too many arguments to function 'get_user_pages'
    63 | get_user_pages(_1, _2, (_3) ? FOLL_WRITE : 0, _4, _5)
    | ^~~~~~~~~~~~~~
    /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_call.c:126:15: note: in expansion of macro 'prl_get_user_pages'
    126 | got = prl_get_user_pages(
    | ^~~~~~~~~~~~~~~~~~
    In file included from ./include/linux/scatterlist.h:8,
    from ./include/linux/dmapool.h:14,
    from ./include/linux/pci.h:1621,
    from /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_call.c:7:
    ./include/linux/mm.h:2430:6: note: declared here
    2430 | long get_user_pages(unsigned long start, unsigned long nr_pages,
    | ^~~~~~~~~~~~~~
    make[4]: *** [scripts/Makefile.build:243: /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_call.o] Error 1
    make[3]: *** [/usr/src/kernels/6.5.5-200.fc38.aarch64/Makefile:2046: /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg] Error 2
    make[2]: Leaving directory '/usr/src/kernels/6.5.5-200.fc38.aarch64'
    make[2]: *** [Makefile:246: __sub-make] Error 2
    make[1]: Leaving directory '/usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg'
    make[1]: *** [Makefile:44: prl_tg] Error 2
    make: Leaving directory '/usr/lib/parallels-tools/kmods'
    make: *** [Makefile.kmods:48: compile] Error 2
    Error: could not build kernel modules
    modprobe: FATAL: Module prl_tg not found in directory /lib/modules/6.5.5-200.fc38.aarch64
    modprobe: FATAL: Module prl_tg not found in directory /lib/modules/6.5.5-200.fc38.aarch64
    Error: failed to install Parallels Guest Tools!
    2023-10-02T12:19:27-0400: Started installation of Parallels Guest Tools version '19.0.0.54570'
    modprobe: FATAL: Module prl_tg not found in directory /lib/modules/6.5.5-200.fc38.aarch64

    Mon Oct 2 12:19:26 EDT 2023
    Start installation or upgrade of Guest Tools
    warning: the compiler differs from the one used to build the kernel
    The kernel was built by: gcc (GCC) 13.2.1 20230728 (Red Hat 13.2.1-1)
    You are using: cc (GCC) 13.2.1 20230728 (Red Hat 13.2.1-1)
    In file included from /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_common.h:25,
    from /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_call.c:11:
    /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_call.c: In function 'tg_req_map_user_pages':
    /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_compat.h:63:17: error: too many arguments to function 'get_user_pages'
    63 | get_user_pages(_1, _2, (_3) ? FOLL_WRITE : 0, _4, _5)
    | ^~~~~~~~~~~~~~
    /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_call.c:126:15: note: in expansion of macro 'prl_get_user_pages'
    126 | got = prl_get_user_pages(
    | ^~~~~~~~~~~~~~~~~~
    In file included from ./include/linux/scatterlist.h:8,
    from ./include/linux/dmapool.h:14,
    from ./include/linux/pci.h:1621,
    from /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_call.c:7:
    ./include/linux/mm.h:2430:6: note: declared here
    2430 | long get_user_pages(unsigned long start, unsigned long nr_pages,
    | ^~~~~~~~~~~~~~
    make[4]: *** [scripts/Makefile.build:243: /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_call.o] Error 1
    make[3]: *** [/usr/src/kernels/6.5.5-200.fc38.aarch64/Makefile:2046: /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg] Error 2
    make[2]: *** [Makefile:246: __sub-make] Error 2
    make[1]: *** [Makefile:44: prl_tg] Error 2
    make: *** [Makefile.kmods:48: compile] Error 2
    Error: could not build kernel modules
    modprobe: FATAL: Module prl_tg not found in directory /lib/modules/6.5.5-200.fc38.aarch64
    modprobe: FATAL: Module prl_tg not found in directory /lib/modules/6.5.5-200.fc38.aarch64
    Error: failed to install Parallels Guest Tools!
    2023-10-02T12:19:27-0400: execCmd: ./install --install [167]
    2023-10-02T12:19:27-0400: Error: An error occurred when installing Parallels Tools. Please go to /var/log/parallels-tools-install.log for more information.
    2023-10-02T12:19:30-0400: Exiting with code 1
    2023-10-02T12:31:04-0400:

    Parallels Tools 19.0.0-54570 Installer started.
    2023-10-02T12:31:04-0400: Failed to setup console printk level.
    2023-10-02T12:31:07-0400: execCmd: ./install --check [0]
    2023-10-02T12:31:07-0400: execCmd: ./installer/detect-xserver.sh -v >/dev/null 2>&1 [0]
    2023-10-02T12:31:09-0400: execCmd: ./installer/pm.sh --check gtools [0]
    Started installation of Parallels Guest Tools version '19.0.0.54570'
    modprobe: FATAL: Module prl_tg not found in directory /lib/modules/6.5.5-200.fc38.aarch64

    Mon Oct 2 12:31:12 EDT 2023
    Start installation or upgrade of Guest Tools
    Installed Guest Tools were not found
    Register service to install new Guest Tools
    Perform installation into the /usr/lib/parallels-tools directory
    make: Entering directory '/usr/lib/parallels-tools/kmods'
    Will use compiler CC="cc".
    Compiler version "cc (GCC) 13.2.1 20230728 (Red Hat 13.2.1-1)"
    cd prl_tg/Toolgate/Guest/Linux/prl_tg && make CC=cc
    make[1]: Entering directory '/usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg'
    1: /lib/modules/6.5.5-200.fc38.aarch64/build
    2: /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg
    3: 20231002
    4: 1.10.2
    Start compile prl_tg...
    make -C /lib/modules/6.5.5-200.fc38.aarch64/build M=/usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg SRCROOT=/usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg CC=cc modules
    make[2]: Entering directory '/usr/src/kernels/6.5.5-200.fc38.aarch64'
    warning: the compiler differs from the one used to build the kernel
    The kernel was built by: gcc (GCC) 13.2.1 20230728 (Red Hat 13.2.1-1)
    You are using: cc (GCC) 13.2.1 20230728 (Red Hat 13.2.1-1)
    1: /lib/modules/6.5.5-200.fc38.aarch64/build
    2: /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg
    3: 20231002
    4: 1.10.2
    CC [M] /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.o
    CC [M] /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_call.o
    In file included from /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_common.h:25,
    from /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_call.c:11:
    /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_call.c: In function 'tg_req_map_user_pages':
    /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_compat.h:63:17: error: too many arguments to function 'get_user_pages'
    63 | get_user_pages(_1, _2, (_3) ? FOLL_WRITE : 0, _4, _5)
    | ^~~~~~~~~~~~~~
    /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_call.c:126:15: note: in expansion of macro 'prl_get_user_pages'
    126 | got = prl_get_user_pages(
    | ^~~~~~~~~~~~~~~~~~
    In file included from ./include/linux/scatterlist.h:8,
    from ./include/linux/dmapool.h:14,
    from ./include/linux/pci.h:1621,
    from /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_call.c:7:
    ./include/linux/mm.h:2430:6: note: declared here
    2430 | long get_user_pages(unsigned long start, unsigned long nr_pages,
    | ^~~~~~~~~~~~~~
    make[4]: *** [scripts/Makefile.build:243: /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_call.o] Error 1
    make[3]: *** [/usr/src/kernels/6.5.5-200.fc38.aarch64/Makefile:2046: /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg] Error 2
    make[2]: Leaving directory '/usr/src/kernels/6.5.5-200.fc38.aarch64'
    make[2]: *** [Makefile:246: __sub-make] Error 2
    make[1]: Leaving directory '/usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg'
    make[1]: *** [Makefile:44: prl_tg] Error 2
    make: Leaving directory '/usr/lib/parallels-tools/kmods'
    make: *** [Makefile.kmods:48: compile] Error 2
    Error: could not build kernel modules
    modprobe: FATAL: Module prl_tg not found in directory /lib/modules/6.5.5-200.fc38.aarch64
    modprobe: FATAL: Module prl_tg not found in directory /lib/modules/6.5.5-200.fc38.aarch64
    Error: failed to install Parallels Guest Tools!
    2023-10-02T12:31:12-0400: Started installation of Parallels Guest Tools version '19.0.0.54570'
    modprobe: FATAL: Module prl_tg not found in directory /lib/modules/6.5.5-200.fc38.aarch64

    Mon Oct 2 12:31:12 EDT 2023
    Start installation or upgrade of Guest Tools
    warning: the compiler differs from the one used to build the kernel
    The kernel was built by: gcc (GCC) 13.2.1 20230728 (Red Hat 13.2.1-1)
    You are using: cc (GCC) 13.2.1 20230728 (Red Hat 13.2.1-1)
    In file included from /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_common.h:25,
    from /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_call.c:11:
    /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_call.c: In function 'tg_req_map_user_pages':
    /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_compat.h:63:17: error: too many arguments to function 'get_user_pages'
    63 | get_user_pages(_1, _2, (_3) ? FOLL_WRITE : 0, _4, _5)
    | ^~~~~~~~~~~~~~
    /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_call.c:126:15: note: in expansion of macro 'prl_get_user_pages'
    126 | got = prl_get_user_pages(
    | ^~~~~~~~~~~~~~~~~~
    In file included from ./include/linux/scatterlist.h:8,
    from ./include/linux/dmapool.h:14,
    from ./include/linux/pci.h:1621,
    from /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_call.c:7:
    ./include/linux/mm.h:2430:6: note: declared here
    2430 | long get_user_pages(unsigned long start, unsigned long nr_pages,
    | ^~~~~~~~~~~~~~
    make[4]: *** [scripts/Makefile.build:243: /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_call.o] Error 1
    make[3]: *** [/usr/src/kernels/6.5.5-200.fc38.aarch64/Makefile:2046: /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg] Error 2
    make[2]: *** [Makefile:246: __sub-make] Error 2
    make[1]: *** [Makefile:44: prl_tg] Error 2
    make: *** [Makefile.kmods:48: compile] Error 2
    Error: could not build kernel modules
    modprobe: FATAL: Module prl_tg not found in directory /lib/modules/6.5.5-200.fc38.aarch64
    modprobe: FATAL: Module prl_tg not found in directory /lib/modules/6.5.5-200.fc38.aarch64
    Error: failed to install Parallels Guest Tools!
    2023-10-02T12:31:12-0400: execCmd: ./install --install [167]
    2023-10-02T12:31:12-0400: Error: An error occurred when installing Parallels Tools. Please go to /var/log/parallels-tools-install.log for more information.
    2023-10-02T12:31:13-0400: Exiting with code 1
     
  7. VincentH13

    VincentH13 Bit poster

    Messages:
    5
    Sorry. Didn't mean to paste every iteration of the install attempts!
     
  8. aremmell

    aremmell Junior Member

    Messages:
    14
    I've got the same exact problem as @VincentH13 -- getting irritated. Should not have upgraded the kernel I guess; now we wait for Parallels to publish a patch?
     
  9. aremmell

    aremmell Junior Member

    Messages:
    14
    I forgot to mention: I'm running Arch Linux (whatever the newest is; I reverted to an old snapshot so I can use Parallels Tools for now). It was definitely the upgrade that broke it for me, and I am getting the same compiler errors as you. I'm on an x64 machine to boot.
     
  10. VincentH13

    VincentH13 Bit poster

    Messages:
    5
    I had just created the VM, so I deleted it and started again. For the second VM, I did not upgrade the kernel and had no problems this time, so the problem seems to be based on certain kernels. While searching for solutions, I ran across one page that mentioned that kernel headers are not generated if there is no change in them. If this is the case, then maybe a symlink from the previous kernel headers to a directory for the new kernel will satisfy the Parallel scripts? At this point, I don't want to try in case I am wrong. :(
     
  11. aremmell

    aremmell Junior Member

    Messages:
    14
    I can be the guinea pig. No matter what happens I can roll back to a snapshot before the upgrade. The problem is I'm not exactly an Arch wizard. It's difficult to use if you're not a regular. The pacman package manager's syntax is ass-backwards. Searching for a package is -S, but installing one is -Ss. Okay.
     
  12. aremmell

    aremmell Junior Member

    Messages:
    14
    OK, I upgraded and it's broken again. Here's the error from the log:

    Code:
    In file included from /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_common.h:25,
                     from /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_call.c:11:
    /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_call.c: In function 'tg_req_map_user_pages':
    /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_compat.h:63:17: error: too many arguments to function 'get_user_pages'
       63 |                 get_user_pages(_1, _2, (_3) ? FOLL_WRITE : 0, _4, _5)
          |                 ^~~~~~~~~~~~~~
    /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_call.c:126:15: note: in expansion of macro 'prl_get_user_pages'
      126 |         got = prl_get_user_pages(
          |               ^~~~~~~~~~~~~~~~~~
    In file included from ./include/linux/scatterlist.h:8,
                     from ./include/linux/dmapool.h:14,
                     from ./include/linux/pci.h:1621,
                     from /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_call.c:7:
    ./include/linux/mm.h:2430:6: note: declared here
     2430 | long get_user_pages(unsigned long start, unsigned long nr_pages,
          |      ^~~~~~~~~~~~~~
    make[4]: *** [scripts/Makefile.build:243: /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_call.o] Error 1
    make[3]: *** [/usr/lib/modules/6.5.5-arch1-1/build/Makefile:2034: /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg] Error 2
    make[2]: *** [Makefile:234: __sub-make] Error 2
    make[1]: *** [Makefile:44: prl_tg] Error 2
    make: *** [Makefile.kmods:48: compile] Error 2
    The first time I ran Parallels Tools installer as root, it gave me the option to upgrade or remove. I chose upgrade. Now it won't give me any option, and I can only do the broken upgrade again.

    Please help, parallels. Arch linux 6.5.5
     
  13. aremmell

    aremmell Junior Member

    Messages:
    14
    OK, now I know it's not just my machine. I just realized my network drives weren't showing up on my Debian 12 system either, so I tried installing Parallels Tools-same exact error.
    So this is related to the new kernel and incompatibility. I don't know why it hasn't been addressed yet...
     
  14. MaryellenJ

    MaryellenJ Bit poster

    Messages:
    2
    Running on Kali Linux here, same problem when I upgraded to `linux-headers-6.5.0-kali2`. Seems like Parallels Tools `
    get_user_pages()` has a signature change. No update?
     
  15. StevenB26

    StevenB26 Bit poster

    Messages:
    3
    Similar issue on Fedora 38 image. I needed to pin my kernel version to the latest 6.4 image. 6.5 has a different get_user_pages() signature; I tried to fix it, but then ran into another changed signature further down the line. Had Parallels been a free-of-charge, GPL project, I'd have investigated further. However, I paid for this, so I don't think it's up to me to solve this. :p
     
  16. MaksimK4

    MaksimK4 Bit poster

    Messages:
    1
    The similar issue on Fedora 38 and kernel 6.5.6
     
  17. aremmell

    aremmell Junior Member

    Messages:
    14
    Guys, I went through the ordeal of contacting Parallels support and they confirmed that they just don't support the new kernel yet, and they're working on it. No further information to report.
     
  18. Mikhail Ushakov

    Mikhail Ushakov Parallels Team

    Messages:
    499
    Hello!
    We've added support for Linux kernel 6.5 in Parallels Desktop 19.1.0 that should be released within a few hours. Please install the latest version of Parallels Desktop and check if the issue is addressed.
     
    MatthewR20, StevenB26 and MaksimK4 like this.
  19. aremmell

    aremmell Junior Member

    Messages:
    14
    I can confirm this issue is resolved in the new version.
     
    Mikhail Ushakov likes this.
  20. LuisS8

    LuisS8

    Messages:
    3
    Mac Book Pro M1 - Ubuntu 22.04.3 ARM64 - Parallels 19.2.1 - Mac OS X Sonoma 14.2


    Preparing to unpack .../zlib1g-dev_1%3a1.2.11.dfsg-2ubuntu9.2_arm64.deb ...
    Unpacking zlib1g-dev:arm64 (1:1.2.11.dfsg-2ubuntu9.2) ...
    Selecting previously unselected package libelf-dev:arm64.
    Preparing to unpack .../libelf-dev_0.186-1build1_arm64.deb ...
    Unpacking libelf-dev:arm64 (0.186-1build1) ...
    Setting up zlib1g-dev:arm64 (1:1.2.11.dfsg-2ubuntu9.2) ...
    Setting up libelf-dev:arm64 (0.186-1build1) ...
    Processing triggers for man-db (2.10.2-1) ...
    2024-01-12T17:21:58-0500: execCmd: ./installer/pm.sh --install gtools --logfile /var/log/parallels-tools-install.log [0]
    Started installation of Parallels Guest Tools version '19.2.1.54832'
    modprobe: FATAL: Module prl_tg not found in directory /lib/modules/6.5.0-14-generic

    Anyone else having this issue?
     
  21. LuisS8

    LuisS8

    Messages:
    3
    I guess this is also important....

    Start installation or upgrade of Guest Tools
    Installed Guest Tools were not found
    Register service to install new Guest Tools
    Perform installation into the /usr/lib/parallels-tools directory
    make: Entering directory '/usr/lib/parallels-tools/kmods'
    Kernel version file: CC="/lib/modules/6.5.0-14-generic/build/include/generated/uapi/linux/version.h".
    Raw kernel version: "#define LINUX_VERSION_CODE 394499"
    Kernel version code: CC="394499".
    Will use compiler CC="cc".
    Compiler version "cc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0"
    cd prl_tg/Toolgate/Guest/Linux/prl_tg && make CC=cc
    make[1]: Entering directory '/usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg'
    1: /lib/modules/6.5.0-14-generic/build
    2: /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg
    3: 20240112
    4: 1.10.2
    Start compile prl_tg...
    make -C /lib/modules/6.5.0-14-generic/build M=/usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg SRCROOT=/usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg
    CC=cc modules
    make[2]: Entering directory '/usr/src/linux-headers-6.5.0-14-generic'
    warning: the compiler differs from the one used to build the kernel
    The kernel was built by: aarch64-linux-gnu-gcc-12 (Ubuntu 12.3.0-1ubuntu1~22.04) 12.3.0
    You are using: cc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0
    1: /lib/modules/6.5.0-14-generic/build
    2: /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg
    3: 20240112
    4: 1.10.2
    CC [M] /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.o

    cc: error: unrecognized argument to '-fsanitize=' option: 'shadow-call-stack'
    cc: error: unrecognized command-line option '-ftrivial-auto-var-init=zero'

    make[4]: *** [scripts/Makefile.build:251: /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.o] Error 1
    make[3]: *** [/usr/src/linux-headers-6.5.0-14-generic/Makefile:2037: /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg] Error 2
    make[2]: Leaving directory '/usr/src/linux-headers-6.5.0-14-generic'
    make[2]: *** [Makefile:234: __sub-make] Error 2
    make[1]: Leaving directory '/usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg'
    make[1]: *** [Makefile:44: prl_tg] Error 2
    make: Leaving directory '/usr/lib/parallels-tools/kmods'
    make: *** [Makefile.kmods:54: compile] Error 2
    Error: could not build kernel modules
    modprobe: FATAL: Module prl_tg not found in directory /lib/modules/6.5.0-14-generic
    modprobe: FATAL: Module prl_tg not found in directory /lib/modules/6.5.0-14-generic
    Error: failed to install Parallels Guest Tools!
    2024-01-12T17:22:00-0500: Started installation of Parallels Guest Tools version '19.2.1.54832'
    modprobe: FATAL: Module prl_tg not found in directory /lib/modules/6.5.0-14-generic
     

Share This Page