Jerry Hoemann <jerry.hoem...@hpe.com> writes:

> Add IOCTL type 'P' to denote NVDIMM_TYPE_PASSTHRU.

Can't you just make passthrough a separate command?  If you actually add
the ioctl definition for passthrough (which you didn't do for some
reason?), it looks odd:

#define ND_IOCTL_PASSTHRU        _IOWR(NVDIMM_TYPE_PASSTHRU,, ND_CMD_PASSTHRU, \
                                 struct ndn_package)

Care to comment on why you chose a different type instead of specifying
a new command?

> +struct ndn_pkg {
> +     struct {
> +             __u8    dsm_uuid[16];
> +             __u32   dsm_in;                 /* size of _DSM input    */
> +             __u32   dsm_out;                /* size of user buffer   */
> +             __u32   dsm_rev;                /* revision of dsm call  */
> +             __u32   res[8];                 /* reserved must be zero */
> +             __u32   dsm_size;               /* size _DSM would write */
> +     } h;
> +     unsigned char buf[];

Please change that to:
        __u8 *buf;
since acpi_object.buffer.pointer is a u8 *.

Note that the size of this structure will be different for 32 vs. 64
bit, but I don't think it matters since offsets won't change (the
pointer is at the end of the structure).
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to