Parallels Tools do not install on RHEL9

Discussion in 'Linux Guest OS Discussion' started by DariusS1, May 27, 2022.

  1. SantoshC

    SantoshC Bit Poster

    Messages:
    3
    Anyone found the solution to this problem?
     
    GuillermoS2 likes this.
  2. lasse@christiansens.net

    lasse@christiansens.net Bit Poster

    Messages:
    42
    Also waiting for a solution. It happens on both RHEL9, Rocky9 and Alma9 (for pretty obvious reasons) :)
     
    LokalerA and GuillermoS2 like this.
  3. LokalerA

    LokalerA Bit Poster

    Messages:
    3
    We are having the same problem here. Alma Linux 9, Parallels 18.0.2, running on Mac OS Big Sur 11.6.7, Intel Mac
     
  4. RobertE18

    RobertE18 Bit Poster

    Messages:
    1
    We are also having the same problem. Alma Linux 9, Parallels 18.0.2, Running Mac OS Monterey 12.6, Intel Mac
     
  5. MaximM3

    MaximM3 Bit Poster

    Messages:
    1
    Hello everyone. Have the same problem with Parallels Tools installation on RHEL-9.0 (Kernel: Linux 5.14.0-70.26.1.el9_0.x86_64)
     

    Attached Files:

  6. maumbo

    maumbo Bit Poster

    Messages:
    3
    Same problem for me on Rocky Linux 9
     
  7. AlanS18

    AlanS18 Bit Poster

    Messages:
    5
    Same problem here, with the latest version of Parallels installed. This seems unacceptable as the issue has been around for a long time. Can someone from Parallels fix this please?
     
  8. PaulM64

    PaulM64 Bit Poster

    Messages:
    1
    I'm also having this issue when using Bento to generate a AlmaLinux 9 parallels vagrant box:

    Code:
    parallels-iso: Provisioning with shell script: ~/Documents/Code/bento/packer_templates/almalinux/../_common/parallels.sh
    ==> parallels-iso: + HOME_DIR=/home/vagrant
    ==> parallels-iso: + case "$PACKER_BUILDER_TYPE" in
    ==> parallels-iso: ++ awk -F. '{print $1}'
    ==> parallels-iso: ++ sed 's/^.\+ release \([.0-9]\+\).*/\1/' /etc/redhat-release
    ==> parallels-iso: + major_version=9
    ==> parallels-iso: + '[' 9 -ge 10 ']'
    ==> parallels-iso: + mkdir -p /tmp/parallels
    ==> parallels-iso: ++ uname -m
    ==> parallels-iso: + '[' aarch64 = aarch64 ']'
    ==> parallels-iso: + mount -o loop /home/vagrant/prl-tools-lin-arm.iso /tmp/parallels
    ==> parallels-iso: mount: /tmp/parallels: WARNING: source write-protected, mounted read-only.
    ==> parallels-iso: ++ cat /tmp/parallels/version
    ==> parallels-iso: + VER=18.1.0.53311
        parallels-iso: Parallels Tools Version: 18.1.0.53311
    ==> parallels-iso: + echo 'Parallels Tools Version: 18.1.0.53311'
    ==> parallels-iso: + /tmp/parallels/install --install-unattended-with-deps
        parallels-iso: Started installation of Parallels Guest Tools version '18.1.0.53311'
        parallels-iso: modprobe: FATAL: Module prl_tg not found in directory /lib/modules/5.14.0-70.30.1.el9_0.aarch64
        parallels-iso:
        parallels-iso: Tue Nov 15 22:16:39 UTC 2022
        parallels-iso: Start installation or upgrade of Guest Tools
        parallels-iso: Skipping BTF generation for /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prl_tg.ko due to unavailability of vmlinux
        parallels-iso: Skipping BTF generation for /usr/lib/parallels-tools/kmods/prl_fs/SharedFolders/Guest/Linux/prl_fs/prl_fs.ko due to unavailability of vmlinux
        parallels-iso: Skipping BTF generation for /usr/lib/parallels-tools/kmods/prl_notifier/Installation/lnx/prl_notifier/prl_notifier.ko due to unavailability of vmlinux
        parallels-iso: Skipping BTF generation for /usr/lib/parallels-tools/kmods/prl_fs_freeze/Snapshot/Guest/Linux/prl_freeze/prl_fs_freeze.ko due to unavailability of vmlinux
        parallels-iso: Start installation of prl_tg kernel module
        parallels-iso: Start installation of prl_fs kernel module
        parallels-iso: Start installation of prl_fs_freeze kernel module
        parallels-iso: Start installation of prl_notifier kernel module
        parallels-iso: Failed to resolve typeattributeset statement at /var/lib/selinux/targeted/tmp/modules/400/prltimesync/cil:35
        parallels-iso: Failed to resolve AST
        parallels-iso: semodule:  Failed!
        parallels-iso: Failed to resolve typeattributeset statement at /var/lib/selinux/targeted/tmp/modules/400/prltoolsd/cil:51
        parallels-iso: Failed to resolve AST
        parallels-iso: semodule:  Failed!
        parallels-iso: cp: cannot create regular file '/usr/share/icons/hicolor/48x48/apps/parallels-tools.png': No such file or directory
        parallels-iso: Parallels Guest Tools were installed successfully!
    I think the main issue may be this one: FATAL: Module prl_tg not found in directory /lib/modules/5.14.0-70.30.1.el9_0.aarch64
     
  9. 刘一谦

    刘一谦 Bit Poster

    Messages:
    2
    Same issue here with CentOS Stream 9 on an M1 Pro macOS 13.0 host with PD 18.1.0(53311)
     

    Attached Files:

  10. sbarnea

    sbarnea Bit Poster

    Messages:
    13
    I find it hilarious that Parallels claims via https://www.parallels.com/blogs/parallels-desktop-18-1/ that in 18.1.0 they fixed installation on M1 for CentOS 9 Stream, when everyone around here knows that that is not the case. The code still fails to compile with parallel tools 18.1.0.53311

    I opened a support ticket but got a reply with links about how to install parallel tools on Windows! Reopened the ticket and linked to this thread, hopefully we would have it fixed.
     
  11. WaldemarJ

    WaldemarJ Bit Poster

    Messages:
    2
    18.1.53311 the problem persists with CentOS 9 Stream. Any suggestion?
     
  12. Chappy84

    Chappy84 Bit Poster

    Messages:
    2
    Tried running on the latest Rocky Linux 9.1, with kernel 5.14.0-162.6.1.el9_1.0.1.x86_64, and it's not compiling, same prl_tg errors as usual:
    Code:
    2022-12-28T20:49:35+0000: 
    
    Parallels Tools 17.1.6-51584 Installer started.
    2022-12-28T20:49:35+0000: Failed to setup console printk level.
    2022-12-28T20:49:37+0000: execCmd: ./install --check [0]
    2022-12-28T20:49:37+0000: execCmd: ./installer/detect-xserver.sh -v >/dev/null 2>&1 [163]
    2022-12-28T20:49:37+0000: execCmd: ./installer/pm.sh --check gtools [0]
    Started installation of Parallels Guest Tools version '17.1.6.51584'
    modprobe: FATAL: Module prl_tg not found in directory /lib/modules/5.14.0-162.6.1.el9_1.0.1.x86_64
    
    Wed Dec 28 20:49:37 GMT 2022
    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'
    awk: cmd. line:1: warning: regexp escape sequence `\#' is not a known regexp operator
    Will use compiler CC="cc".
    Compiler version "cc (GCC) 11.3.1 20220421 (Red Hat 11.3.1-2)"
    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/5.14.0-162.6.1.el9_1.0.1.x86_64/build
    2: /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg
    3: 20221228
    4: 1.10.0
    Start compile prl_tg...
    make -C /lib/modules/5.14.0-162.6.1.el9_1.0.1.x86_64/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/5.14.0-162.6.1.el9_1.0.1.x86_64'
    1: /lib/modules/5.14.0-162.6.1.el9_1.0.1.x86_64/build
    2: /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg
    3: 20221228
    4: 1.10.0
      CC [M]  /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.o
    In file included from /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c:23:
    /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_common.h: In function 'tg_in32':
    /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_common.h:154:32: warning: passing argument 1 of 'inl' makes integer from pointer without a cast [-Wint-conversion]
      154 |         x = inl(dev->base_addr + port);
          |                 ~~~~~~~~~~~~~~~^~~~~~
          |                                |
          |                                void *
    In file included from ./include/linux/io.h:13,
                     from ./include/linux/pci.h:39,
                     from /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c:7:
    ./arch/x86/include/asm/io.h:267:41: note: expected 'int' but argument is of type 'void *'
      267 | static inline unsigned type in##bwl(int port)                           \
          |                                     ~~~~^~~~
    ./arch/x86/include/asm/io.h:322:1: note: in expansion of macro 'BUILDIO'
      322 | BUILDIO(l, , int)
          | ^~~~~~~
    In file included from /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c:23:
    /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_common.h: In function 'tg_out32':
    /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_common.h:169:34: warning: passing argument 2 of 'outl' makes integer from pointer without a cast [-Wint-conversion]
      169 |         outl(val, dev->base_addr + port);
          |                   ~~~~~~~~~~~~~~~^~~~~~
          |                                  |
          |                                  void *
    In file included from ./include/linux/io.h:13,
                     from ./include/linux/pci.h:39,
                     from /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c:7:
    ./arch/x86/include/asm/io.h:261:54: note: expected 'int' but argument is of type 'void *'
      261 | static inline void out##bwl(unsigned type value, int port)              \
          |                                                  ~~~~^~~~
    ./arch/x86/include/asm/io.h:322:1: note: in expansion of macro 'BUILDIO'
      322 | BUILDIO(l, , int)
          | ^~~~~~~
    In file included from /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c:23:
    /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_common.h: In function 'tg_out':
    /usr/lib/parallels-tools/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;
          |              ^~
    /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c: In function 'prl_tg_write':
    /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c:255:30: error: implicit declaration of function 'PDE_DATA'; did you mean 'NODE_DATA'? [-Werror=implicit-function-declaration]
      255 |         struct tg_dev *dev = PDE_DATA(FILE_DENTRY(filp)->d_inode);
          |                              ^~~~~~~~
          |                              NODE_DATA
    /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c:255:30: warning: initialization of 'struct tg_dev *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
    In file included from ./include/linux/printk.h:7,
                     from ./include/linux/kernel.h:20,
                     from ./include/linux/list.h:9,
                     from ./include/linux/module.h:12,
                     from /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c:5:
    /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c: In function 'prl_tg_probe_common':
    2022-12-28T20:49:38+0000: Started installation of Parallels Guest Tools version '17.1.6.51584'
    modprobe: FATAL: Module prl_tg not found in directory /lib/modules/5.14.0-162.6.1.el9_1.0.1.x86_64
    
    Wed Dec 28 20:49:37 GMT 2022
    Start installation or upgrade of Guest Tools
    awk: cmd. line:1: warning: regexp escape sequence `\#' is not a known regexp operator
    In file included from /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c:23:
    /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_common.h: In function 'tg_in32':
    /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_common.h:154:32: warning: passing argument 1 of 'inl' makes integer from pointer without a cast [-Wint-conversion]
      154 |         x = inl(dev->base_addr + port);
          |                 ~~~~~~~~~~~~~~~^~~~~~
          |                                |
          |                                void *
    In file included from ./include/linux/io.h:13,
                     from ./include/linux/pci.h:39,
                     from /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c:7:
    ./arch/x86/include/asm/io.h:267:41: note: expected 'int' but argument is of type 'void *'
      267 | static inline unsigned type in##bwl(int port)                           \
          |                                     ~~~~^~~~
    ./arch/x86/include/asm/io.h:322:1: note: in expansion of macro 'BUILDIO'
      322 | BUILDIO(l, , int)
          | ^~~~~~~
    In file included from /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c:23:
    /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_common.h: In function 'tg_out32':
    /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_common.h:169:34: warning: passing argument 2 of 'outl' makes integer from pointer without a cast [-Wint-conversion]
      169 |         outl(val, dev->base_addr + port);
          |                   ~~~~~~~~~~~~~~~^~~~~~
          |                                  |
          |                                  void *
    In file included from ./include/linux/io.h:13,
                     from ./include/linux/pci.h:39,
                     from /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c:7:
    ./arch/x86/include/asm/io.h:261:54: note: expected 'int' but argument is of type 'void *'
      261 | static inline void out##bwl(unsigned type value, int port)              \
          |                                                  ~~~~^~~~
    ./arch/x86/include/asm/io.h:322:1: note: in expansion of macro 'BUILDIO'
      322 | BUILDIO(l, , int)
          | ^~~~~~~
    In file included from /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c:23:
    /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_common.h: In function 'tg_out':
    /usr/lib/parallels-tools/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;
          |              ^~
    /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c: In function 'prl_tg_write':
    /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c:255:30: error: implicit declaration of function 'PDE_DATA'; did you mean 'NODE_DATA'? [-Werror=implicit-function-declaration]
      255 |         struct tg_dev *dev = PDE_DATA(FILE_DENTRY(filp)->d_inode);
          |                              ^~~~~~~~
          |                              NODE_DATA
    /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c:255:30: warning: initialization of 'struct tg_dev *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
    In file included from ./include/linux/printk.h:7,
                     from ./include/linux/kernel.h:20,
                     from ./include/linux/list.h:9,
                     from ./include/linux/module.h:12,
                     from /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c:5:
    /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c: In functio./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/kern_levels.h:14:25: note: in expansion of macro 'KERN_SOH'
       14 | #define KERN_INFO       KERN_SOH "6"    /* informational */
          |                         ^~~~~~~~
    /usr/lib/parallels-tools/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",
          |                ^~~~~~~~~
    /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c:520:54: note: format string is defined here
      520 |         printk(KERN_INFO "detected %s, base addr %08lx, IRQ %d\n",
          |                                                  ~~~~^
          |                                                      |
          |                                                      long unsigned int
          |                                                  %08p
    /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c: In function 'prl_tg_init_module':
    /usr/lib/parallels-tools/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:295: /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.o] Error 1
    make[2]: Leaving directory '/usr/src/kernels/5.14.0-162.6.1.el9_1.0.1.x86_64'
    make[2]: *** [Makefile:1915: /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg] Error 2
    make[1]: Leaving directory '/usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg'
    make[1]: *** [Makefile:43: prl_tg] Error 2
    make: Leaving directory '/usr/lib/parallels-tools/kmods'
    make: *** [Makefile.kmods:47: compile] Error 2
    Error: could not build kernel modules
    modprobe: FATAL: Module prl_tg not found in directory /lib/modules/5.14.0-162.6.1.el9_1.0.1.x86_64
    modprobe: FATAL: Module prl_tg not found in directory /lib/modules/5.14.0-162.6.1.el9_1.0.1.x86_64
    Error: failed to install Parallels Guest Tools!
    2022-12-28T20:49:38+0000: n '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/kern_levels.h:14:25: note: in expansion of macro 'KERN_SOH'
       14 | #define KERN_INFO       KERN_SOH "6"    /* informational */
          |                         ^~~~~~~~
    /usr/lib/parallels-tools/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",
          |                ^~~~~~~~~
    /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c:520:54: note: format string is defined here
      520 |         printk(KERN_INFO "detected %s, base addr %08lx, IRQ %d\n",
          |                                                  ~~~~^
          |                                                      |
          |                                                      long unsigned int
          |                                                  %08p
    /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c: In function 'prl_tg_init_module':
    /usr/lib/parallels-tools/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:295: /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.o] Error 1
    make[2]: *** [Makefile:1915: /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg] Error 2
    make[1]: *** [Makefile:43: prl_tg] Error 2
    make: *** [Makefile.kmods:47: compile] Error 2
    Error: could not build kernel modules
    modprobe: FATAL: Module prl_tg not found in directory /lib/modules/5.14.0-162.6.1.el9_1.0.1.x86_64
    modprobe: FATAL: Module prl_tg not found in directory /lib/modules/5.14.0-162.6.1.el9_1.0.1.x86_64
    Error: failed to install Parallels Guest Tools!
    2022-12-28T20:49:38+0000: execCmd: ./install --install [167]
    2022-12-28T20:49:39+0000: Exiting with code 1
    
    
    I'm Using Parallels Tools 17.1.6.51584.
    Have tried previous patches, but not working unfortunately. Anyone been able to get it working?
    I'm on an old Mac that didn't get MacOS 13, so no point me buying Parallels Desktop 18, as it's only partially supported on MacOS 12, but would be great if someone had a fix for 17.1.6 working with the latest RHEL release & derivatives
     
  13. Chappy84

    Chappy84 Bit Poster

    Messages:
    2
    I played around running make with the Makefile.kmods file, and this diff got 17.1.6.51584 compiling, installing, and the OS booting for me.

    Code:
    diff -u -r parallels-tools-17.1.6.51584.orig/kmods/prl_eth/pvmnet/pvmnet.c parallels-tools-17.1.6.51584/kmods/prl_eth/pvmnet/pvmnet.c
    --- parallels-tools-17.1.6.51584.orig/kmods/prl_eth/pvmnet/pvmnet.c    2022-12-01 09:23:05.000000000 +0000
    +++ parallels-tools-17.1.6.51584/kmods/prl_eth/pvmnet/pvmnet.c    2022-12-28 22:03:33.620305885 +0000
    @@ -418,6 +418,8 @@
     #if RHEL_RELEASE_CODE >= RHEL_RELEASE_VERSION(7, 5) && \
         RHEL_RELEASE_CODE < RHEL_RELEASE_VERSION(8, 0)
        .extended.ndo_change_mtu = eth_change_mtu,
    +#elif RHEL_RELEASE_CODE >= RHEL_RELEASE_VERSION(9, 0)
    +        .ndo_change_mtu = dev_set_mtu,
     #else
        .ndo_change_mtu = eth_change_mtu,
     #endif
    diff -u -r parallels-tools-17.1.6.51584.orig/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c parallels-tools-17.1.6.51584/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c
    --- parallels-tools-17.1.6.51584.orig/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c    2022-12-01 09:23:09.000000000 +0000
    +++ parallels-tools-17.1.6.51584/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c    2022-12-28 21:51:27.640987278 +0000
    @@ -249,7 +249,7 @@
        size_t nbytes, loff_t *ppos)
     {
        int ret = 0;
    -#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,17,0)
    +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,14,0)
        struct tg_dev *dev = pde_data(FILE_DENTRY(filp)->d_inode);
     #else
        struct tg_dev *dev = PDE_DATA(FILE_DENTRY(filp)->d_inode);
    
    I'm not a C programmer, I can't guarantee all functionality will work, and I know for a fact that the patch for prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c will break some installs using kernel 5.14.0, as obviously RHEL 9.0 used 5.14.0-70, and the old PDE_DATA worked with that. I unfortunately can't quickly with a search online find a function to compare to that low a linux kernel version to make it work for both. Having said that it works with the kernel version I'm running with (5.14.0-162.6.1.el9_1.0.1.x86_64), so I'm sticking with it for now. If anyone else has a better fix, please do update it to sort this out for both versions. :)
     
    (GalaxyMaster) likes this.
  14. AltitudeDashboard

    AltitudeDashboard Bit Poster

    Messages:
    12
    Can you please detail how to apply the fix? I am hitting the same issue with RHEL 9.1 5.14.0-162.6.1.el9_1.aarch64
     
  15. AltitudeDashboard

    AltitudeDashboard Bit Poster

    Messages:
    12
    Today I reinstalled RHEL 9.1 and I was able to install Parallel Tools using the GUI installer. So it seems they fixed it.
     

Share This Page