On 4/22/20 11:24 AM, Christoph Hellwig wrote: > > I don't think we can just change FD_RAW_CMD_SIZE or cmd as that could > break userspace. The second patch adds these defines FD_RAW_CMD_SIZE, FD_RAW_REPLY_SIZE. Currently they are not in the uapi. Ok, I will send v2. But otherwise, yes something very much like that: > >> #define FD_RAW_CMD_SIZE 16 >> #define FD_RAW_REPLY_SIZE 16 >> +#define FD_RAW_FULL_CMD_SIZE (FD_RAW_CMD_SIZE + 1 + FD_RAW_CMD_SIZE) >> >> unsigned char cmd_count; >> - unsigned char cmd[FD_RAW_CMD_SIZE]; >> - unsigned char reply_count; >> - unsigned char reply[FD_RAW_REPLY_SIZE]; >> + union { >> + struct { >> + unsigned char cmd[FD_RAW_CMD_SIZE]; >> + unsigned char reply_count; >> + unsigned char reply[FD_RAW_REPLY_SIZE]; >> + }; >> + unsigned char full_cmd[FD_RAW_FULL_CMD_SIZE]; >> + }; > >> int track; >> >> Denis > ---end quoted text--- >