Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fsync support #150

Closed
shoober420 opened this issue Jul 31, 2019 · 6 comments

Comments

@shoober420
Copy link

commented Jul 31, 2019

Valve’s Proton has recently added support for fsync. It’s said to reduce CPU overhead, and improve performance.

https://steamcommunity.com/games/221410/announcements/detail/2957094910196249305

Can this option be added to the zen kernel, or is it being added upstream in the mainline kernel down the line?

@damentz

This comment has been minimized.

Copy link
Member

commented Aug 1, 2019

I'm interested in this patch set as well, but I think it's wise to wait till it's past RFC before we merge it into zen-kernel. There's still on-going discussion so what's that complete and a second revision is up that gets more praise, we can merge it early before it's upstreamed.

@damentz damentz self-assigned this Aug 1, 2019

@damentz

This comment has been minimized.

Copy link
Member

commented Aug 1, 2019

Assigned to myself so I can keep an eye on the updates to this patch.

https://lkml.org/lkml/2019/7/30/1398

@shoober420

This comment has been minimized.

Copy link
Author

commented Aug 1, 2019

Cool, this is pretty exciting for Wine/Proton emulation. I honestly think with this and Vulkan, we will see close to matching native Windows performance. Great times indeed in the Linux world.

Thanks @damentz for the info on the getting merged into mainline. It would be a big plus if you merge it earlier like you said.

@damentz

This comment has been minimized.

Copy link
Member

commented Aug 25, 2019

Well, it seems like discussion died down and there hasn't been any more versions. The patches in the LKML link have been merged to 5.2/master through 5.2/misc. If a new version comes out I'll refresh the patches.

@damentz damentz closed this Aug 25, 2019

@damentz

This comment has been minimized.

Copy link
Member

commented Aug 25, 2019

Nevermind, re-opening. Kernel fails to build for:

  CC      kernel/futex.o
kernel/futex.c: In function ‘do_futex_wait_multiple’:
kernel/futex.c:2708:7: error: implicit declaration of function ‘futex_setup_timer’ [-Werror=implicit-function-declaration]
 2708 |  to = futex_setup_timer(abs_time, &timeout, flags,
      |       ^~~~~~~~~~~~~~~~~
kernel/futex.c:2708:5: warning: assignment to ‘struct hrtimer_sleeper *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
 2708 |  to = futex_setup_timer(abs_time, &timeout, flags,
      |     ^
cc1: some warnings being treated as errors
make[1]: *** [scripts/Makefile.build:279: kernel/futex.o] Error 1
make: *** [Makefile:1081: kernel] Error 2

Looks like we need to backport futex patches from 5.3 WIP.

@damentz damentz reopened this Aug 25, 2019

@damentz

This comment has been minimized.

Copy link
Member

commented Aug 25, 2019

Resolved with f39367f, kernel builds successfully. Refactored patches into branch, 5.2/futex-backports

@damentz damentz closed this Aug 25, 2019

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
2 participants
You can’t perform that action at this time.