From: "Winkler, Tomas" <tomas.winkler@intel.com>
To: Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>
Subject: RE: [PATCH v1] mei: Don't encourage to use kernel internal types in user code
Date: Sat, 29 Feb 2020 16:28:11 +0000 [thread overview]
Message-ID: <3bb5abe91919458aa6166eb60d9451ff@intel.com> (raw)
In-Reply-To: <20200228151328.45062-1-andriy.shevchenko@linux.intel.com>
>
> uuid_le is internal kernel type which shall not be exposed to the user in the first
> place.
Why, these types are exported via include/uapi/linux/uuid.h
In order to mitigate the (wrong) distribution of the use of that type,
> switch MEI AMT sample to plain unsigned char array.
There was a change to guid_t from uuild_le, anyhow there is much more code
except this sample that uses those types.
Nack so far.
Tomas
>
> Note, there is no ABI change involved.
>
> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
> ---
> samples/mei/mei-amt-version.c | 15 +++++++++------
> 1 file changed, 9 insertions(+), 6 deletions(-)
>
> diff --git a/samples/mei/mei-amt-version.c b/samples/mei/mei-amt-version.c
> index 32234481ad7d..458cb6db57c6 100644
> --- a/samples/mei/mei-amt-version.c
> +++ b/samples/mei/mei-amt-version.c
> @@ -90,7 +90,7 @@
> } while (0)
>
> struct mei {
> - uuid_le guid;
> + unsigned char guid[16];
> bool initialized;
> bool verbose;
> unsigned int buf_size;
> @@ -108,7 +108,7 @@ static void mei_deinit(struct mei *cl)
> cl->initialized = false;
> }
>
> -static bool mei_init(struct mei *me, const uuid_le *guid,
> +static bool mei_init(struct mei *me, const unsigned char *guid,
> unsigned char req_protocol_version, bool verbose) {
> int result;
> @@ -126,7 +126,7 @@ static bool mei_init(struct mei *me, const uuid_le
> *guid,
> memset(&data, 0, sizeof(data));
> me->initialized = true;
>
> - memcpy(&data.in_client_uuid, &me->guid, sizeof(me->guid));
> + memcpy(&data.in_client_uuid, me->guid, sizeof(me->guid));
> result = ioctl(me->fd, IOCTL_MEI_CONNECT_CLIENT, &data);
> if (result) {
> mei_err(me, "IOCTL_MEI_CONNECT_CLIENT receive message.
> err=%d\n", result); @@ -270,8 +270,11 @@ struct amt_host_if_resp_header {
> unsigned char data[0];
> } __attribute__((packed));
>
> -const uuid_le MEI_IAMTHIF = UUID_LE(0x12f80028, 0xb4b7, 0x4b2d, \
> - 0xac, 0xa8, 0x46, 0xe0, 0xff, 0x65, 0x81,
> 0x4c);
> +/* MEI AMT Interface GUID: 12f80028-b4b7-4b2d-aca8-46e0ff65814c */
> +const unsigned char mei_iamthif[16] = {
> + 0x28, 0x00, 0xf8, 0x12, 0xb7, 0xb4, 0x2d, 0x4b,
> + 0xac, 0xa8, 0x46, 0xe0, 0xff, 0x65, 0x81, 0x4c, };
>
> #define AMT_HOST_IF_CODE_VERSIONS_REQUEST 0x0400001A #define
> AMT_HOST_IF_CODE_VERSIONS_RESPONSE 0x0480001A @@ -295,7 +298,7
> @@ static bool amt_host_if_init(struct amt_host_if *acmd,
> unsigned long send_timeout, bool verbose) {
> acmd->send_timeout = (send_timeout) ? send_timeout : 20000;
> - acmd->initialized = mei_init(&acmd->mei_cl, &MEI_IAMTHIF, 0,
> verbose);
> + acmd->initialized = mei_init(&acmd->mei_cl, mei_iamthif, 0, verbose);
> return acmd->initialized;
> }
>
> --
> 2.25.0
next prev parent reply other threads:[~2020-02-29 16:28 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-02-28 15:13 [PATCH v1] mei: Don't encourage to use kernel internal types in user code Andy Shevchenko
2020-02-29 16:28 ` Winkler, Tomas [this message]
2020-03-02 15:58 ` Andy Shevchenko
2020-03-02 18:05 ` Winkler, Tomas
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=3bb5abe91919458aa6166eb60d9451ff@intel.com \
--to=tomas.winkler@intel.com \
--cc=andriy.shevchenko@linux.intel.com \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.