1/**************************************************************************** 2 **************************************************************************** 3 *** 4 *** This header was automatically generated from a Linux kernel header 5 *** of the same name, to make information necessary for userspace to 6 *** call into the kernel available to libc. It contains only constants, 7 *** structures, and macros generated from the original header, and thus, 8 *** contains no copyrightable information. 9 *** 10 *** To edit the content of this header, modify the corresponding 11 *** source file (e.g. under external/kernel-headers/original/) then 12 *** run bionic/libc/kernel/tools/update_all.py 13 *** 14 *** Any manual change here will be lost the next time this script will 15 *** be run. You've been warned! 16 *** 17 **************************************************************************** 18 ****************************************************************************/ 19#ifndef _UAPI_MD_U_H 20#define _UAPI_MD_U_H 21#define MD_MAJOR_VERSION 0 22#define MD_MINOR_VERSION 90 23/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 24#define MD_PATCHLEVEL_VERSION 3 25#define RAID_VERSION _IOR (MD_MAJOR, 0x10, mdu_version_t) 26#define GET_ARRAY_INFO _IOR (MD_MAJOR, 0x11, mdu_array_info_t) 27#define GET_DISK_INFO _IOR (MD_MAJOR, 0x12, mdu_disk_info_t) 28/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 29#define PRINT_RAID_DEBUG _IO (MD_MAJOR, 0x13) 30#define RAID_AUTORUN _IO (MD_MAJOR, 0x14) 31#define GET_BITMAP_FILE _IOR (MD_MAJOR, 0x15, mdu_bitmap_file_t) 32#define CLEAR_ARRAY _IO (MD_MAJOR, 0x20) 33/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 34#define ADD_NEW_DISK _IOW (MD_MAJOR, 0x21, mdu_disk_info_t) 35#define HOT_REMOVE_DISK _IO (MD_MAJOR, 0x22) 36#define SET_ARRAY_INFO _IOW (MD_MAJOR, 0x23, mdu_array_info_t) 37#define SET_DISK_INFO _IO (MD_MAJOR, 0x24) 38/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 39#define WRITE_RAID_INFO _IO (MD_MAJOR, 0x25) 40#define UNPROTECT_ARRAY _IO (MD_MAJOR, 0x26) 41#define PROTECT_ARRAY _IO (MD_MAJOR, 0x27) 42#define HOT_ADD_DISK _IO (MD_MAJOR, 0x28) 43/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 44#define SET_DISK_FAULTY _IO (MD_MAJOR, 0x29) 45#define HOT_GENERATE_ERROR _IO (MD_MAJOR, 0x2a) 46#define SET_BITMAP_FILE _IOW (MD_MAJOR, 0x2b, int) 47#define RUN_ARRAY _IOW (MD_MAJOR, 0x30, mdu_param_t) 48/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 49#define STOP_ARRAY _IO (MD_MAJOR, 0x32) 50#define STOP_ARRAY_RO _IO (MD_MAJOR, 0x33) 51#define RESTART_ARRAY_RW _IO (MD_MAJOR, 0x34) 52#define MdpMinorShift 6 53/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 54typedef struct mdu_version_s { 55 int major; 56 int minor; 57 int patchlevel; 58/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 59} mdu_version_t; 60typedef struct mdu_array_info_s { 61 int major_version; 62 int minor_version; 63/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 64 int patch_version; 65 int ctime; 66 int level; 67 int size; 68/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 69 int nr_disks; 70 int raid_disks; 71 int md_minor; 72 int not_persistent; 73/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 74 int utime; 75 int state; 76 int active_disks; 77 int working_disks; 78/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 79 int failed_disks; 80 int spare_disks; 81 int layout; 82 int chunk_size; 83/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 84} mdu_array_info_t; 85#define LEVEL_MULTIPATH (-4) 86#define LEVEL_LINEAR (-1) 87#define LEVEL_FAULTY (-5) 88/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 89#define LEVEL_NONE (-1000000) 90typedef struct mdu_disk_info_s { 91 int number; 92 int major; 93/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 94 int minor; 95 int raid_disk; 96 int state; 97} mdu_disk_info_t; 98/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 99typedef struct mdu_start_info_s { 100 int major; 101 int minor; 102 int raid_disk; 103/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 104 int state; 105} mdu_start_info_t; 106typedef struct mdu_bitmap_file_s 107{ 108/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 109 char pathname[4096]; 110} mdu_bitmap_file_t; 111typedef struct mdu_param_s 112{ 113/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 114 int personality; 115 int chunk_size; 116 int max_fault; 117} mdu_param_t; 118/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 119#endif 120