Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

libnvdimm: clean up command definitions

Remove the command payloads that do not have an associated libnvdimm
ioctl. I.e. remove the payloads that would only ever be carried in the
ND_CMD_CALL envelope. This prevents userspace from growing unnecessary
dependencies on this kernel header when userspace already has everything
it needs to craft and send these commands.

Cc: Jerry Hoemann <jerry.hoemann@hpe.com>
Reported-by: Yasunori Goto <y-goto@jp.fujitsu.com>
Signed-off-by: Dan Williams <dan.j.williams@intel.com>

-37
-37
include/uapi/linux/ndctl.h
··· 145 145 __u64 cleared; 146 146 } __packed; 147 147 148 - struct nd_cmd_trans_spa { 149 - __u64 spa; 150 - __u32 status; 151 - __u8 flags; 152 - __u8 _reserved[3]; 153 - __u64 trans_length; 154 - __u32 num_nvdimms; 155 - struct nd_nvdimm_device { 156 - __u32 nfit_device_handle; 157 - __u32 _reserved; 158 - __u64 dpa; 159 - } __packed devices[0]; 160 - 161 - } __packed; 162 - 163 - struct nd_cmd_ars_err_inj { 164 - __u64 err_inj_spa_range_base; 165 - __u64 err_inj_spa_range_length; 166 - __u8 err_inj_options; 167 - __u32 status; 168 - } __packed; 169 - 170 - struct nd_cmd_ars_err_inj_clr { 171 - __u64 err_inj_clr_spa_range_base; 172 - __u64 err_inj_clr_spa_range_length; 173 - __u32 status; 174 - } __packed; 175 - 176 - struct nd_cmd_ars_err_inj_stat { 177 - __u32 status; 178 - __u32 inj_err_rec_count; 179 - struct nd_error_stat_query_record { 180 - __u64 err_inj_stat_spa_range_base; 181 - __u64 err_inj_stat_spa_range_length; 182 - } __packed record[0]; 183 - } __packed; 184 - 185 148 enum { 186 149 ND_CMD_IMPLEMENTED = 0, 187 150