mirror of
				https://github.com/torvalds/linux.git
				synced 2025-11-04 10:40:15 +02:00 
			
		
		
		
	Time for a sync with ABI/uapi headers with the upcoming v4.14 kernel.
None of the ABI changes require any source code level changes to our
existing in-kernel tooling code:
  - tools/arch/s390/include/uapi/asm/kvm.h:
      New KVM_S390_VM_TOD_EXT ABI, not used by in-kernel tooling.
  - tools/arch/x86/include/asm/cpufeatures.h:
    tools/arch/x86/include/asm/disabled-features.h:
      New PCID, SME and VGIF x86 CPU feature bits defined.
  - tools/include/asm-generic/hugetlb_encode.h:
    tools/include/uapi/asm-generic/mman-common.h:
    tools/include/uapi/linux/mman.h:
      Two new madvise() flags, plus a hugetlb system call mmap flags
      restructuring/extension changes.
  - tools/include/uapi/drm/drm.h:
    tools/include/uapi/drm/i915_drm.h:
      New drm_syncobj_create flags definitions, new drm_syncobj_wait
      and drm_syncobj_array ABIs. DRM_I915_PERF_* calls and a new
      I915_PARAM_HAS_EXEC_FENCE_ARRAY ABI for the Intel driver.
  - tools/include/uapi/linux/bpf.h:
      New bpf_sock fields (::mark and ::priority), new XDP_REDIRECT
      action, new kvm_ppc_smmu_info fields (::data_keys, instr_keys)
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: David Ahern <dsahern@gmail.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Milian Wolff <milian.wolff@kdab.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Taeung Song <treeze.taeung@gmail.com>
Cc: Wang Nan <wangnan0@huawei.com>
Cc: Yao Jin <yao.jin@linux.intel.com>
Link: http://lkml.kernel.org/r/20170913073823.lxmi4c7ejqlfabjx@gmail.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
		
	
			
		
			
				
	
	
		
			34 lines
		
	
	
	
		
			1.6 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			34 lines
		
	
	
	
		
			1.6 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
#ifndef _ASM_GENERIC_HUGETLB_ENCODE_H_
 | 
						|
#define _ASM_GENERIC_HUGETLB_ENCODE_H_
 | 
						|
 | 
						|
/*
 | 
						|
 * Several system calls take a flag to request "hugetlb" huge pages.
 | 
						|
 * Without further specification, these system calls will use the
 | 
						|
 * system's default huge page size.  If a system supports multiple
 | 
						|
 * huge page sizes, the desired huge page size can be specified in
 | 
						|
 * bits [26:31] of the flag arguments.  The value in these 6 bits
 | 
						|
 * will encode the log2 of the huge page size.
 | 
						|
 *
 | 
						|
 * The following definitions are associated with this huge page size
 | 
						|
 * encoding in flag arguments.  System call specific header files
 | 
						|
 * that use this encoding should include this file.  They can then
 | 
						|
 * provide definitions based on these with their own specific prefix.
 | 
						|
 * for example:
 | 
						|
 * #define MAP_HUGE_SHIFT HUGETLB_FLAG_ENCODE_SHIFT
 | 
						|
 */
 | 
						|
 | 
						|
#define HUGETLB_FLAG_ENCODE_SHIFT	26
 | 
						|
#define HUGETLB_FLAG_ENCODE_MASK	0x3f
 | 
						|
 | 
						|
#define HUGETLB_FLAG_ENCODE_64KB	(16 << HUGETLB_FLAG_ENCODE_SHIFT)
 | 
						|
#define HUGETLB_FLAG_ENCODE_512KB	(19 << HUGETLB_FLAG_ENCODE_SHIFT)
 | 
						|
#define HUGETLB_FLAG_ENCODE_1MB		(20 << HUGETLB_FLAG_ENCODE_SHIFT)
 | 
						|
#define HUGETLB_FLAG_ENCODE_2MB		(21 << HUGETLB_FLAG_ENCODE_SHIFT)
 | 
						|
#define HUGETLB_FLAG_ENCODE_8MB		(23 << HUGETLB_FLAG_ENCODE_SHIFT)
 | 
						|
#define HUGETLB_FLAG_ENCODE_16MB	(24 << HUGETLB_FLAG_ENCODE_SHIFT)
 | 
						|
#define HUGETLB_FLAG_ENCODE_256MB	(28 << HUGETLB_FLAG_ENCODE_SHIFT)
 | 
						|
#define HUGETLB_FLAG_ENCODE_1GB		(30 << HUGETLB_FLAG_ENCODE_SHIFT)
 | 
						|
#define HUGETLB_FLAG_ENCODE_2GB		(31 << HUGETLB_FLAG_ENCODE_SHIFT)
 | 
						|
#define HUGETLB_FLAG_ENCODE_16GB	(34 << HUGETLB_FLAG_ENCODE_SHIFT)
 | 
						|
 | 
						|
#endif /* _ASM_GENERIC_HUGETLB_ENCODE_H_ */
 |