mirror of
https://gitlab.com/nonguix/nonguix.git
synced 2024-12-26 00:34:53 +01:00
23 lines
786 B
Diff
23 lines
786 B
Diff
|
Since Linux 4.3, rdtscl() is no longer available and native_read_tsc()
|
||
|
is renamed to rdtsc(). Move the macro contents in-line and call the
|
||
|
new function. References:
|
||
|
|
||
|
https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit?id=fe47ae6e1a5005b2e82f7eab57b5c3820453293a
|
||
|
https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit?id=4ea1636b04dbd66536fa387bae2eea463efc705b
|
||
|
|
||
|
diff -ru a/src/shared/linux_osl.c b/src/shared/linux_osl.c
|
||
|
--- a/src/shared/linux_osl.c 2015-09-19 01:47:15.000000000 +0300
|
||
|
+++ b/src/shared/linux_osl.c 2015-11-21 15:20:30.585902518 +0200
|
||
|
@@ -932,7 +932,11 @@
|
||
|
uint cycles;
|
||
|
|
||
|
#if defined(__i386__)
|
||
|
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 3, 0)
|
||
|
+ cycles = (u32)rdtsc();
|
||
|
+#else
|
||
|
rdtscl(cycles);
|
||
|
+#endif
|
||
|
#else
|
||
|
cycles = 0;
|
||
|
#endif
|