Update to v5.9 kernel headers.
Kernel headers coming from:
Git: https://android.googlesource.com/kernel/common/
Branch: android-mainline
Tag: android-mainline-5.9
Test: Boots cuttlefish 64bit, passes 32 bit and 64 bit bionic unit tests.
Change-Id: Ib5503355b238ea75595538e63eb000c867d06ef7
diff --git a/libc/kernel/uapi/linux/incrementalfs.h b/libc/kernel/uapi/linux/incrementalfs.h
index cfaee52..3dea328 100644
--- a/libc/kernel/uapi/linux/incrementalfs.h
+++ b/libc/kernel/uapi/linux/incrementalfs.h
@@ -23,13 +23,14 @@
#include <linux/types.h>
#include <linux/xattr.h>
#define INCFS_NAME "incremental-fs"
-#define INCFS_MAGIC_NUMBER (0x5346434e49ul)
+#define INCFS_MAGIC_NUMBER (unsigned long) (0x5346434e49ul)
#define INCFS_DATA_FILE_BLOCK_SIZE 4096
#define INCFS_HEADER_VER 1
#define INCFS_MAX_HASH_SIZE 32
#define INCFS_MAX_FILE_ATTR_SIZE 512
#define INCFS_PENDING_READS_FILENAME ".pending_reads"
#define INCFS_LOG_FILENAME ".log"
+#define INCFS_BLOCKS_WRITTEN_FILENAME ".blocks_written"
#define INCFS_XATTR_ID_NAME (XATTR_USER_PREFIX "incfs.id")
#define INCFS_XATTR_SIZE_NAME (XATTR_USER_PREFIX "incfs.size")
#define INCFS_XATTR_METADATA_NAME (XATTR_USER_PREFIX "incfs.metadata")
@@ -42,6 +43,12 @@
#define INCFS_IOC_FILL_BLOCKS _IOR(INCFS_IOCTL_BASE_CODE, 32, struct incfs_fill_blocks)
#define INCFS_IOC_PERMIT_FILL _IOW(INCFS_IOCTL_BASE_CODE, 33, struct incfs_permit_fill)
#define INCFS_IOC_GET_FILLED_BLOCKS _IOR(INCFS_IOCTL_BASE_CODE, 34, struct incfs_get_filled_blocks_args)
+#define INCFS_IOC_CREATE_MAPPED_FILE _IOWR(INCFS_IOCTL_BASE_CODE, 35, struct incfs_create_mapped_file_args)
+#define INCFS_IOC_GET_BLOCK_COUNT _IOR(INCFS_IOCTL_BASE_CODE, 36, struct incfs_get_block_count_args)
+#define INCFS_IOC_GET_READ_TIMEOUTS _IOR(INCFS_IOCTL_BASE_CODE, 37, struct incfs_get_read_timeouts_args)
+#define INCFS_IOC_SET_READ_TIMEOUTS _IOW(INCFS_IOCTL_BASE_CODE, 38, struct incfs_set_read_timeouts_args)
+#define INCFS_FEATURE_FLAG_COREFS "corefs"
+#define INCFS_FEATURE_FLAG_REPORT_UID "report_uid"
enum incfs_compression_alg {
COMPRESSION_NONE = 0,
COMPRESSION_LZ4 = 1
@@ -59,6 +66,14 @@
__u32 block_index;
__u32 serial_number;
};
+struct incfs_pending_read_info2 {
+ incfs_uuid_t file_id;
+ __aligned_u64 timestamp_us;
+ __u32 block_index;
+ __u32 serial_number;
+ __u32 uid;
+ __u32 reserved;
+};
struct incfs_fill_block {
__u32 block_index;
__u32 data_len;
@@ -114,4 +129,35 @@
__u32 range_buffer_size_out;
__u32 index_out;
};
+struct incfs_create_mapped_file_args {
+ __aligned_u64 size;
+ __u16 mode;
+ __u16 reserved1;
+ __u32 reserved2;
+ __aligned_u64 directory_path;
+ __aligned_u64 file_name;
+ incfs_uuid_t source_file_id;
+ __aligned_u64 source_offset;
+};
+struct incfs_get_block_count_args {
+ __u32 total_data_blocks_out;
+ __u32 filled_data_blocks_out;
+ __u32 total_hash_blocks_out;
+ __u32 filled_hash_blocks_out;
+};
+struct incfs_per_uid_read_timeouts {
+ __u32 uid;
+ __u32 min_time_ms;
+ __u32 min_pending_time_ms;
+ __u32 max_pending_time_ms;
+};
+struct incfs_get_read_timeouts_args {
+ __aligned_u64 timeouts_array;
+ __u32 timeouts_array_size;
+ __u32 timeouts_array_size_out;
+};
+struct incfs_set_read_timeouts_args {
+ __aligned_u64 timeouts_array;
+ __u32 timeouts_array_size;
+};
#endif