Package Details: winesync 5.16-4

Git Clone URL: https://aur.archlinux.org/winesync.git (read-only, click to copy)
Package Base: winesync
Description: Wine synchronization primitive driver - out-of-tree module
Upstream URL: https://repo.or.cz/linux/zf.git/shortlog/refs/heads/winesync4
Licenses: GPL2
Provides: WINESYNC-MODULE
Submitter: openglfreak
Maintainer: openglfreak
Last Packager: openglfreak
Votes: 3
Popularity: 0.000000
First Submitted: 2021-03-22 19:50 (UTC)
Last Updated: 2022-08-16 19:40 (UTC)

Pinned Comments

openglfreak commented on 2021-03-22 19:50 (UTC)

Explanation: Winesync is yet another reimplementation of the NT synchronization primitives for Wine, this time using a new kernel module instead of using existing kernel features or a new syscall. This implementation mimics the original from Windows perfectly (bar any bugs), in contrast to esync and fsync which had some hackily implemented operations. Performance shouldn't be much different from esync and fsync.

Latest Comments

1 2 Next › Last »

unknown78 commented on 2024-11-24 00:51 (UTC) (edited on 2024-11-24 00:53 (UTC) by unknown78)

  CC [M]  /var/lib/dkms/winesync/5.16/build/src/drivers/misc/winesync.o
/var/lib/dkms/winesync/5.16/build/src/drivers/misc/winesync.c:1186:13: error: use of undeclared identifier 'no_llseek'; did you mean 'noop_llseek'?
 1186 |         .llseek         = no_llseek,
      |                           ^~~~~~~~~
      |                           noop_llseek
./include/linux/fs.h:3241:15: note: 'noop_llseek' declared here
 3241 | extern loff_t noop_llseek(struct file *file, loff_t offset, int whence);

I wouldn't report this if ntsync was ready for both proton and wine-tkg but it isn't yet.

Also today there was a update to kernel 6.12 which breaks winesync-dkms. I haven't found an patch for 6.12 but it would be amazing if the package would be available for 6.12 too.

detian commented on 2024-03-22 17:48 (UTC)

Why this package depends on linux-headers instead of dkms?

rlees85 commented on 2024-01-28 21:57 (UTC) (edited on 2024-01-28 21:57 (UTC) by rlees85)

For those who haven't found out themselves yet I think everyones moving to this instead now:

https://aur.archlinux.org/packages/ntsync-header

https://aur.archlinux.org/packages/ntsync-dkms

https://aur.archlinux.org/packages/ntsync-common

I think

rabcor commented on 2023-11-02 09:52 (UTC)

I can't seem to get this to work, I'm guessing I need a patched version of wine or proton to use this? And I read somewhere TKG doesn't include it anymore?

Does Proton GE support it?

Information about how to use this is extremely scarce...

patlefort commented on 2023-05-04 03:18 (UTC)

Looks like the site is back online.

patlefort commented on 2023-05-01 19:39 (UTC)

Same issue here, source URL is inaccessible (https://repo.or.cz/).

rlees85 commented on 2023-04-05 18:32 (UTC) (edited on 2023-04-06 21:33 (UTC) by rlees85)

Thanks again for this and making it (much!) easier to get working on Arch Linux. I finally got bit further with this. I started using wine-tkg (self-built) instead of wine-ge-custom which has enabled me to enable winesync in wine.

Everything works great with the module but not the udev rule for some reason? Its installed but I still have to manually chmod /dev/winesync before launching wine.

I am wondering if the winesync module is coming up later than when udev runs or something odd...

More details:

$ sudo udevadm test /dev/winesync
This program is for debugging only, it does not run any program
specified by a RUN key. It may show incorrect results, because
some values may be different, or not available at a simulation run.

Trying to open "/etc/systemd/hwdb/hwdb.bin"...
Trying to open "/etc/udev/hwdb.bin"...
Trying to open "/usr/lib/systemd/hwdb/hwdb.bin"...
Trying to open "/usr/lib/udev/hwdb.bin"...
=== trie on-disk ===
tool version:          253
file size:        12343334 bytes
header size             80 bytes
strings            2504246 bytes
nodes              9839008 bytes
Loading kernel module index.
Found cgroup2 on /sys/fs/cgroup/, full unified hierarchy
Found container virtualization none.
Using default interface naming scheme 'v253'.
Parsed configuration file "/usr/lib/systemd/network/99-default.link"
Created link configuration context.
Reading rules file: /usr/lib/udev/rules.d/01-md-raid-creating.rules
Reading rules file: /usr/lib/udev/rules.d/10-dm.rules

.. blahblahblah ..

Reading rules file: /usr/lib/udev/rules.d/99-fuse.rules
Reading rules file: /usr/lib/udev/rules.d/99-fuse3.rules
Reading rules file: /usr/lib/udev/rules.d/99-razer.rules
Reading rules file: /usr/lib/udev/rules.d/99-systemd.rules
Reading rules file: /usr/lib/udev/rules.d/99-winesync.rules
sd-device: Failed to chase symlinks in "/sys/dev/char/10:243".
sd-device: Failed to chase symlinks in "/sys/dev/winesync".
Failed to open device '/dev/winesync': No such device
Unload kernel module index.
Unloaded link configuration context.
$ ls -lah /dev/winesync 
crw------- 1 root root 10, 243 Apr  5 21:16 /dev/winesync

Edit: Running:

modprobe winesync

makes everything just work.... could the solution be to add a file to '/etc/modules-load.d/' or ideally '/usr/lib/modules-load.d/' in the package? or should wine be starting this module when it launches? (it doesn't).

rlees85 commented on 2023-02-26 18:29 (UTC)

Yeah you are right - something weird happened. I've not even heard of winesync for two years but I think I cloned 'winesync-dkms' last time although I'm not sure why it would cause that since it looks like a clone.

Weird...

I've re-cloned and its built fine with the correct version. Apologies for the noise

openglfreak commented on 2023-02-25 18:03 (UTC)

@rlees85 You haven't updated your clone of this package in almost two years, please build an up-to-date version of the package.

rlees85 commented on 2023-02-22 22:53 (UTC) (edited on 2023-02-22 22:56 (UTC) by rlees85)

Seems broken...

$ makepkg -s
==> Making package: winesync-dkms 5.11-6 (Wed 22 Feb 2023 22:49:03 GMT)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> Retrieving sources...
  -> Downloading winesync.c-e97dfb6b3ee6792cd1fe8242df4dafd8f10cca99...
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
curl: (22) The requested URL returned error: 404
==> ERROR: Failure while downloading https://repo.or.cz/linux/zf.git/blob_plain/e97dfb6b3ee6792cd1fe8242df4dafd8f10cca99:/drivers/misc/winesync.c
    Aborting...

Wondering if it works with wine-ge but I am happy to find that out myself once it is possible to build it

@Hakkaten: You will need a version of wine that actually supports it and I don't think many actually do. Infact I'm finding little conclusive information online - you'd probably need to build wine yourself to take advantage of it. If you read this though you can see if or not your version of Wine is actually using it: https://github.com/Cat-Lady/winesync-dkms