Parallels Tools fails to install with Linux kernel 6.12.1-2-aarch64-ARCH

JohannesE2

Bit poster
This is Parallels Desktop running on an Apple M1 MacBook Pro and an Arch Linux VM.
This VM used to work.
Now, if I attempt to re-install Parallels tools with the latest Arch update I get
```
% cd ~/Parallels\ Tools
% ./install-gui
modprobe: FATAL: Module prl_tg not found in directory /lib/modules/6.12.1-2-aarch64-ARCH
```
(Repeated often)
This apparently comes from `modprobe`. I would copy-paste the log, but I don't have tools ...
 
Hello,

We have created a new ticket for you to better investigate the issue and assist you. We will be in touch by email.

Kind Regards
 
^ I also have the same issue on Fedora 6.12.4-200.fc41.aarch64, even after upgrading to Version 20.1.3 (55743) yesterday.
 
Same on Fedora 40 6.12.5-100.fc40.aarch64

from log

/usr/lib/parallels-tools/kmods/prl_fs/SharedFolders/Guest/Linux/prl_fs/inode.c:856:5: warning: no previous prototype for 'prlfs_writepage' [-Wmissing-prototypes]
856 | int prlfs_writepage(struct page *page, struct writeback_control *wbc) {
| ^~~~~~~~~~~~~~~
/usr/lib/parallels-tools/kmods/prl_fs/SharedFolders/Guest/Linux/prl_fs/inode.c: In function 'prlfs_writepage':
/usr/lib/parallels-tools/kmods/prl_fs/SharedFolders/Guest/Linux/prl_fs/inode.c:875:17: error: implicit declaration of function 'SetPageError'; did you mean 'SetPageDirty'? [-Wimplicit-function-declaration]
875 | SetPageError(page);
| ^~~~~~~~~~~~
| SetPageDirty
/usr/lib/parallels-tools/kmods/prl_fs/SharedFolders/Guest/Linux/prl_fs/inode.c: At top level:
/usr/lib/parallels-tools/kmods/prl_fs/SharedFolders/Guest/Linux/prl_fs/inode.c:930:27: error: initialization of 'int (*)(struct file *, struct address_space *, loff_t, unsigned int, unsigned int, struct folio *, void *)' {aka 'int (*)(struct file *, struct address_space *, long long int, unsigned int, unsigned int, struct folio *, void *)'} from incompatible pointer type 'int (*)(struct file *, struct address_space *, loff_t, unsigned int, unsigned int, struct page *, void *)' {aka 'int (*)(struct file *, struct address_space *, long long int, unsigned int, unsigned int, struct page *, void *)'} [-Wincompatible-pointer-types]
930 | .write_end = prlfs_write_end,
| ^~~~~~~~~~~~~~~
/usr/lib/parallels-tools/kmods/prl_fs/SharedFolders/Guest/Linux/prl_fs/inode.c:930:27: note: (near initialization for 'prlfs_aops.write_end')
make[4]: *** [scripts/Makefile.build:229: /usr/lib/parallels-tools/kmods/prl_fs/SharedFolders/Guest/Linux/prl_fs/inode.o] Error 1
make[3]: *** [/usr/src/kernels/6.12.5-100.fc40.aarch64/Makefile:1977: /usr/lib/parallels-tools/kmods/prl_fs/SharedFolders/Guest/Linux/prl_fs] Error 2
make[2]: *** [Makefile:236: __sub-make] Error 2
make[2]: Leaving directory '/usr/src/kernels/6.12.5-100.fc40.aarch64'
make[1]: *** [Makefile:36: all] Error 2
make[1]: Leaving directory '/usr/lib/parallels-tools/kmods/prl_fs/SharedFolders/Guest/Linux/prl_fs'
 
Same issue. Will not install on kernel 6.12 on Fedora. If one installs under 6.11 and then updates the system, the system will not boot.
 
This is Parallels Desktop running on an Apple M1 MacBook Pro and an Arch Linux VM.
This VM used to work.
Now, if I attempt to re-install Parallels tools with the latest Arch update I get
```
% cd ~/Parallels\ Tools
% ./install-gui
modprobe: FATAL: Module prl_tg not found in directory /lib/modules/6.12.1-2-aarch64-ARCH
```
(Repeated often)
This apparently comes from `modprobe`. I would copy-paste the log, but I don't have tools ...
I am also seeing this error when trying to install Parallels Tools to my Arch VM on my M1 Mac:
macOS15.2 Parallels 20.1.3 (55743).
 
I am also seeing this error when trying to install Parallels Tools to my Arch VM on my M1 Mac:
macOS15.2 Parallels 20.1.3 (55743).

I have the same problem. Same Mac OS and Parallels versions.

Mon Jan 6 11:09:03 AEST 2025
Start installation or upgrade of Guest Tools
warning: the compiler differs from the one used to build the kernel
The kernel was built by: aarch64-unknown-linux-gnu-gcc (GCC) 14.1.1 20240507
You are using: cc (GCC) 14.1.1 20240507
In file included from ./include/linux/mm_types.h:19,
from ./include/linux/mmzone.h:22,
from ./include/linux/gfp.h:7,
from ./include/linux/umh.h:4,
from ./include/linux/kmod.h:9,
from ./include/linux/module.h:17,
from /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c:6:
/usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c: In function 'prl_tg_deinitialize':
./include/linux/workqueue.h:765:9: warning: call to '__warn_flushing_systemwide_wq' declared with attribute warning: Please avoid flushing system-wide workqueues. [-Wattribute-warning]
765 | __warn_flushing_systemwide_wq(); \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c:573:9: note: in expansion of macro 'flush_scheduled_work'
573 | flush_scheduled_work();
| ^~~~~~~~~~~~~~~~~~~~
warning: the compiler differs from the one used to build the kernel
The kernel was built by: aarch64-unknown-linux-gnu-gcc (GCC) 14.1.1 20240507
You are using: cc (GCC) 14.1.1 20240507
/usr/lib/parallels-tools/kmods/prl_fs/SharedFolders/Guest/Linux/prl_fs/super.c:135:15: warning: no previous prototype for 'prlfs_iget' [-Wmissing-prototypes]
135 | struct inode *prlfs_iget(struct super_block *sb, ino_t ino)
| ^~~~~~~~~~
/usr/lib/parallels-tools/kmods/prl_fs/SharedFolders/Guest/Linux/prl_fs/super.c:151:5: warning: no previous prototype for 'prlfs_statfs' [-Wmissing-prototypes]
151 | int prlfs_statfs(struct dentry *de, struct kstatfs *buf)
| ^~~~~~~~~~~~
/usr/lib/parallels-tools/kmods/prl_fs/SharedFolders/Guest/Linux/prl_fs/super.c:181:5: warning: no previous prototype for 'prlfs_show_options' [-Wmissing-prototypes]
181 | int prlfs_show_options(struct seq_file *seq, struct dentry *root) {
| ^~~~~~~~~~~~~~~~~~
/usr/lib/parallels-tools/kmods/prl_fs/SharedFolders/Guest/Linux/prl_fs/inode.c: In function 'do_read_symlink':
/usr/lib/parallels-tools/kmods/prl_fs/SharedFolders/Guest/Linux/prl_fs/inode.c:714:48: warning: suggest braces around empty body in an 'else' statement [-Wempty-body]
714 | DPRINTK("tgt '%s'\n", tgt_path);
| ^
/usr/lib/parallels-tools/kmods/prl_fs/SharedFolders/Guest/Linux/prl_fs/inode.c: At top level:
/usr/lib/parallels-tools/kmods/prl_fs/SharedFolders/Guest/Linux/prl_fs/inode.c:819:5: warning: no previous prototype for 'prlfs_readpage' [-Wmissing-prototypes]
819 | int prlfs_readpage(struct file *file, struct page *page) {
| ^~~~~~~~~~~~~~
/usr/lib/parallels-tools/kmods/prl_fs/SharedFolders/Guest/Linux/prl_fs/inode.c:856:5: warning: no previous prototype for 'prlfs_writepage' [-Wmissing-prototypes]
856 | int prlfs_writepage(struct page *page, struct writeback_control *wbc) {
| ^~~~~~~~~~~~~~~
/usr/lib/parallels-tools/kmods/prl_fs/SharedFolders/Guest/Linux/prl_fs/inode.c: In function 'prlfs_writepage':
/usr/lib/parallels-tools/kmods/prl_fs/SharedFolders/Guest/Linux/prl_fs/inode.c:875:17: error: implicit declaration of function 'SetPageError'; did you mean 'SetPageDirty'? [-Wimplicit-function-declaration]
875 | SetPageError(page);
| ^~~~~~~~~~~~
| SetPageDirty
/usr/lib/parallels-tools/kmods/prl_fs/SharedFolders/Guest/Linux/prl_fs/inode.c: At top level:
/usr/lib/parallels-tools/kmods/prl_fs/SharedFolders/Guest/Linux/prl_fs/inode.c:930:27: error: initialization of 'imake[4]: *** [scripts/Makefile.build:229: /usr/lib/parallels-tools/kmods/prl_fs/SharedFolders/Guest/Linux/prl_fs/inode.o] Error 1
make[3]: *** [/usr/lib/modules/6.12.1-2-aarch64-ARCH/build/Makefile:1936: /usr/lib/parallels-tools/kmods/prl_fs/SharedFolders/Guest/Linux/prl_fs] Error 2
make[2]: Leaving directory '/usr/lib/modules/6.12.1-2-aarch64-ARCH/build'
make[2]: *** [Makefile:224: __sub-make] Error 2
make[1]: Leaving directory '/usr/lib/parallels-tools/kmods/prl_fs/SharedFolders/Guest/Linux/prl_fs'
make[1]: *** [Makefile:36: all] Error 2
make: Leaving directory '/usr/lib/parallels-tools/kmods'
make: *** [Makefile.kmods:70: compile] Error 2
Error: could not build kernel modules
modprobe: FATAL: Module prl_tg not found in directory /lib/modules/6.12.1-2-aarch64-ARCH
modprobe: FATAL: Module prl_tg not found in directory /lib/modules/6.12.1-2-aarch64-ARCH
Error: failed to install Parallels Guest Tools!
2025-01-06T11:09:06+1000: nt (*)(struct file *, struct address_space *, loff_t, unsigned int, unsigned int, struct folio *, void *)' {aka 'int (*)(struct file *, struct address_space *, long long int, unsigned int, unsigned int, struct folio *, void *)'} from incompatible pointer type 'int (*)(struct file *, struct address_space *, loff_t, unsigned int, unsigned int, struct page *, void *)' {aka 'int (*)(struct file *, struct address_space *, long long int, unsigned int, unsigned int, struct page *, void *)'} [-Wincompatible-pointer-types]
930 | .write_end = prlfs_write_end,
| ^~~~~~~~~~~~~~~
/usr/lib/parallels-tools/kmods/prl_fs/SharedFolders/Guest/Linux/prl_fs/inode.c:930:27: note: (near initialization for 'prlfs_aops.write_end')
make[4]: *** [scripts/Makefile.build:229: /usr/lib/parallels-tools/kmods/prl_fs/SharedFolders/Guest/Linux/prl_fs/inode.o] Error 1
make[3]: *** [/usr/lib/modules/6.12.1-2-aarch64-ARCH/build/Makefile:1936: /usr/lib/parallels-tools/kmods/prl_fs/SharedFolders/Guest/Linux/prl_fs] Error 2
make[2]: *** [Makefile:224: __sub-make] Error 2
make[1]: *** [Makefile:36: all] Error 2
make: *** [Makefile.kmods:70: compile] Error 2
Error: could not build kernel modules
modprobe: FATAL: Module prl_tg not found in directory /lib/modules/6.12.1-2-aarch64-ARCH
modprobe: FATAL: Module prl_tg not found in directory /lib/modules/6.12.1-2-aarch64-ARCH
Error: failed to install Parallels Guest Tools!
2025-01-06T11:09:06+1000: execCmd: ./install --install [167]
2025-01-06T11:09:06+1000: Error: An error occurred when installing Parallels Tools. Please go to /var/log/parallels-tools-install.log for more information.​
 
Same error here when trying to install Parallels Tools on Fedora 41 on my M1 Mac running macOS 15.2 with Parallels 20.1.3 (55743).
 
I'm running the latest version of Parallels 20.2.0 on a brand new M4 Macbook Pro. I need this resolved ASAP. Any updates Parallels or anyone else that has gotten this to work?
 
@JoshP10 This has been fixed for me for quite some time now on my M1 Macbook Pro. Currently working with no apparent issues on Parallels 20.2.2 & Fedora 41 6.13.8-200.fc41.aarch64
 
Are you on the latest kernel version for the Oracle Linux 8.10 distro? Maybe upgrade to that if you aren't already there and are in a position to do so?
 
Is there any news for this? As of now parallels tools won't install for the latest version of Oracle Linux 8 and for Oracle Linux 9 and 10...
 
Hi, sorry to hear you're still having difficulties with this, it must be extremely frustrating. I can only speak for Fedora not Oracle Linux, Parallels tools have continued woking consistently since I last replied to you... Fedora has moved on to v42 ... and every update to the kernel up to the current version 6.15.9 has worked without incident and so has every update to Parallels (and tools) up to the current version 20.4 .
It might be time to reach out to Parallels Tech support if you haven't already. Sorry I can't be more help.
 
Back
Top