blob: dec8c0fb1f4a930f406b0412c893acabd9a0c018 [file] [log] [blame]
Arnaldo Carvalho de Melo12500902019-08-22 16:58:29 -03001/* SPDX-License-Identifier: GPL-2.0 */
2#ifndef PERF_CACHELINE_H
3#define PERF_CACHELINE_H
4
5#include <linux/compiler.h>
6
7int __pure cacheline_size(void);
8
9static inline u64 cl_address(u64 address)
10{
11 /* return the cacheline of the address */
12 return (address & ~(cacheline_size() - 1));
13}
14
15static inline u64 cl_offset(u64 address)
16{
17 /* return the cacheline of the address */
18 return (address & (cacheline_size() - 1));
19}
20
21#endif // PERF_CACHELINE_H