ACIL FM
Dark
Refresh
Current DIR:
/usr/src/kernels/5.14.0-427.31.1.el9_4.x86_64/include/vdso
/
usr
src
kernels
5.14.0-427.31.1.el9_4.x86_64
include
vdso
Upload
Zip Selected
Delete Selected
Pilih semua
Nama
Ukuran
Permission
Aksi
bits.h
171 B
chmod
View
DL
Edit
Rename
Delete
clocksource.h
479 B
chmod
View
DL
Edit
Rename
Delete
const.h
196 B
chmod
View
DL
Edit
Rename
Delete
datapage.h
4.12 MB
chmod
View
DL
Edit
Rename
Delete
helpers.h
1.27 MB
chmod
View
DL
Edit
Rename
Delete
jiffies.h
298 B
chmod
View
DL
Edit
Rename
Delete
ktime.h
454 B
chmod
View
DL
Edit
Rename
Delete
limits.h
564 B
chmod
View
DL
Edit
Rename
Delete
math64.h
468 B
chmod
View
DL
Edit
Rename
Delete
processor.h
251 B
chmod
View
DL
Edit
Rename
Delete
time.h
190 B
chmod
View
DL
Edit
Rename
Delete
time32.h
274 B
chmod
View
DL
Edit
Rename
Delete
time64.h
426 B
chmod
View
DL
Edit
Rename
Delete
vsyscall.h
288 B
chmod
View
DL
Edit
Rename
Delete
Edit file: /usr/src/kernels/5.14.0-427.31.1.el9_4.x86_64/include/vdso/helpers.h
/* SPDX-License-Identifier: GPL-2.0 */ #ifndef __VDSO_HELPERS_H #define __VDSO_HELPERS_H #ifndef __ASSEMBLY__ #include <vdso/datapage.h> static __always_inline u32 vdso_read_begin(const struct vdso_data *vd) { u32 seq; while (unlikely((seq = READ_ONCE(vd->seq)) & 1)) cpu_relax(); smp_rmb(); return seq; } static __always_inline u32 vdso_read_retry(const struct vdso_data *vd, u32 start) { u32 seq; smp_rmb(); seq = READ_ONCE(vd->seq); return seq != start; } static __always_inline void vdso_write_begin(struct vdso_data *vd) { /* * WRITE_ONCE it is required otherwise the compiler can validly tear * updates to vd[x].seq and it is possible that the value seen by the * reader it is inconsistent. */ WRITE_ONCE(vd[CS_HRES_COARSE].seq, vd[CS_HRES_COARSE].seq + 1); WRITE_ONCE(vd[CS_RAW].seq, vd[CS_RAW].seq + 1); smp_wmb(); } static __always_inline void vdso_write_end(struct vdso_data *vd) { smp_wmb(); /* * WRITE_ONCE it is required otherwise the compiler can validly tear * updates to vd[x].seq and it is possible that the value seen by the * reader it is inconsistent. */ WRITE_ONCE(vd[CS_HRES_COARSE].seq, vd[CS_HRES_COARSE].seq + 1); WRITE_ONCE(vd[CS_RAW].seq, vd[CS_RAW].seq + 1); } #endif /* !__ASSEMBLY__ */ #endif /* __VDSO_HELPERS_H */
Simpan
Batal
Isi Zip:
Unzip
Create
Buat Folder
Buat File
Terminal / Execute
Run
Chmod Bulk
All File
All Folder
All File dan Folder
Apply