From: James Simmons <jsimmons@infradead.org>
To: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
devel@driverdev.osuosl.org,
Andreas Dilger <andreas.dilger@intel.com>,
Oleg Drokin <oleg.drokin@intel.com>
Cc: Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
Lustre Development List <lustre-devel@lists.lustre.org>,
James Simmons <jsimmons@infradead.org>,
James Simmons <uja.ornl@yahoo.com>
Subject: [PATCH 07/64] staging: lustre: uapi: remove userland version of obd_ioctl_*()
Date: Mon, 14 Aug 2017 11:46:35 -0400 [thread overview]
Message-ID: <1502725652-26280-8-git-send-email-jsimmons@infradead.org> (raw)
In-Reply-To: <1502725652-26280-1-git-send-email-jsimmons@infradead.org>
The header lustre_ioctl.h has both kernel and user space versions
of obd_ioctl_*() functions. Lets remove the user land version
which have been integrated into the lustre tools.
Signed-off-by: James Simmons <uja.ornl@yahoo.com>
Intel-bug-id: https://jira.hpdd.intel.com/browse/LU-6401
Reviewed-on: https://review.whamcloud.com/24568
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Ben Evans <bevans@cray.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
Signed-off-by: James Simmons <jsimmons@infradead.org>
---
.../lustre/lustre/include/lustre/lustre_ioctl.h | 87 ----------------------
1 file changed, 87 deletions(-)
diff --git a/drivers/staging/lustre/lustre/include/lustre/lustre_ioctl.h b/drivers/staging/lustre/lustre/include/lustre/lustre_ioctl.h
index eb08df3..84654af 100644
--- a/drivers/staging/lustre/lustre/include/lustre/lustre_ioctl.h
+++ b/drivers/staging/lustre/lustre/include/lustre/lustre_ioctl.h
@@ -208,8 +208,6 @@ static inline int obd_ioctl_is_invalid(struct obd_ioctl_data *data)
return 0;
}
-#ifdef __KERNEL__
-
int obd_ioctl_getdata(char **buf, int *len, void __user *arg);
int obd_ioctl_popdata(void __user *arg, void *data, int len);
@@ -218,91 +216,6 @@ static inline void obd_ioctl_freedata(char *buf, size_t len)
kvfree(buf);
}
-#else /* __KERNEL__ */
-
-static inline int obd_ioctl_pack(struct obd_ioctl_data *data, char **pbuf,
- int max_len)
-{
- char *ptr;
- struct obd_ioctl_data *overlay;
-
- data->ioc_len = obd_ioctl_packlen(data);
- data->ioc_version = OBD_IOCTL_VERSION;
-
- if (*pbuf && data->ioc_len > max_len) {
- fprintf(stderr, "pbuf = %p, ioc_len = %u, max_len = %d\n",
- *pbuf, data->ioc_len, max_len);
- return -EINVAL;
- }
-
- if (!*pbuf)
- *pbuf = malloc(data->ioc_len);
-
- if (!*pbuf)
- return -ENOMEM;
-
- overlay = (struct obd_ioctl_data *)*pbuf;
- memcpy(*pbuf, data, sizeof(*data));
-
- ptr = overlay->ioc_bulk;
- if (data->ioc_inlbuf1)
- LOGL(data->ioc_inlbuf1, data->ioc_inllen1, ptr);
-
- if (data->ioc_inlbuf2)
- LOGL(data->ioc_inlbuf2, data->ioc_inllen2, ptr);
-
- if (data->ioc_inlbuf3)
- LOGL(data->ioc_inlbuf3, data->ioc_inllen3, ptr);
-
- if (data->ioc_inlbuf4)
- LOGL(data->ioc_inlbuf4, data->ioc_inllen4, ptr);
-
- if (obd_ioctl_is_invalid(overlay)) {
- fprintf(stderr, "invalid ioctl data: ioc_len = %u, max_len = %d\n",
- data->ioc_len, max_len);
- return -EINVAL;
- }
-
- return 0;
-}
-
-static inline int
-obd_ioctl_unpack(struct obd_ioctl_data *data, char *pbuf, int max_len)
-{
- char *ptr;
- struct obd_ioctl_data *overlay;
-
- if (!pbuf)
- return 1;
-
- overlay = (struct obd_ioctl_data *)pbuf;
-
- /* Preserve the caller's buffer pointers */
- overlay->ioc_inlbuf1 = data->ioc_inlbuf1;
- overlay->ioc_inlbuf2 = data->ioc_inlbuf2;
- overlay->ioc_inlbuf3 = data->ioc_inlbuf3;
- overlay->ioc_inlbuf4 = data->ioc_inlbuf4;
-
- memcpy(data, pbuf, sizeof(*data));
-
- ptr = overlay->ioc_bulk;
- if (data->ioc_inlbuf1)
- LOGU(data->ioc_inlbuf1, data->ioc_inllen1, ptr);
-
- if (data->ioc_inlbuf2)
- LOGU(data->ioc_inlbuf2, data->ioc_inllen2, ptr);
-
- if (data->ioc_inlbuf3)
- LOGU(data->ioc_inlbuf3, data->ioc_inllen3, ptr);
-
- if (data->ioc_inlbuf4)
- LOGU(data->ioc_inlbuf4, data->ioc_inllen4, ptr);
-
- return 0;
-}
-
-#endif /* !__KERNEL__ */
-
/*
* OBD_IOC_DATA_TYPE is only for compatibility reasons with older
* Linux Lustre user tools. New ioctls should NOT use this macro as
--
1.8.3.1
next prev parent reply other threads:[~2017-08-14 15:47 UTC|newest]
Thread overview: 66+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-08-14 15:46 [PATCH 00/64] staging: lustre: uapi: normalize the lustre headers James Simmons
2017-08-14 15:46 ` [PATCH 01/64] staging: lustre: uapi: Move functions out of lustre_idl.h James Simmons
2017-08-14 15:46 ` [PATCH 02/64] staging: lustre: uapi: remove unused functions for lustre_fid.h James Simmons
2017-08-14 15:46 ` [PATCH 03/64] staging: lustre: uapi: return error code for ostid_set_id James Simmons
2017-08-14 15:46 ` [PATCH 04/64] staging: lustre: uapi: update URL doc link in lustre_fid.h James Simmons
2017-08-14 15:46 ` [PATCH 05/64] staging: lustre: uapi: move lu_fid, ost_id funcs out of lustre_idl.h James Simmons
2017-08-14 15:46 ` [PATCH 06/64] staging: lustre: uapi: remove unused function in lustre_disk.h James Simmons
2017-08-14 15:46 ` James Simmons [this message]
2017-08-14 15:46 ` [PATCH 08/64] staging: lustre: uapi: remove obd_ioctl_freedata() wrapper James Simmons
2017-08-14 15:46 ` [PATCH 09/64] staging: lustre: uapi: remove obd_ioctl_popdata() wrapper James Simmons
2017-08-14 15:46 ` [PATCH 10/64] staging: lustre: uapi: move obd_ioctl_getdata() declaration James Simmons
2017-08-14 15:46 ` [PATCH 11/64] staging: lustre: uapi: move obd_ioctl_is_invalid() to linux-module.c James Simmons
2017-08-14 15:46 ` [PATCH 12/64] staging: lustre: uapi: move lustre_ioctl.h to uapi directory James Simmons
2017-08-14 15:46 ` [PATCH 13/64] staging: lustre: uapi: use __ALIGN_KERNEL for lustre_ioctl.h James Simmons
2017-08-14 15:46 ` [PATCH 14/64] staging: lustre: uapi: cleanup headers " James Simmons
2017-08-14 15:46 ` [PATCH 15/64] staging: lustre: uapi: label lustre_ioctl.h as a UAPI header James Simmons
2017-08-14 15:46 ` [PATCH 16/64] staging: lustre: uapi: move kernel only prototypes out of lustre_param.h James Simmons
2017-08-14 15:46 ` [PATCH 17/64] staging: lustre: uapi: remove included headers " James Simmons
2017-08-14 15:46 ` [PATCH 18/64] staging: lustre: uapi: move lustre_param.h to uapi directory James Simmons
2017-08-14 15:46 ` [PATCH 19/64] staging: lustre: uapi: label lustre_param.h as an uapi header James Simmons
2017-08-14 15:46 ` [PATCH 20/64] staging: lustre: uapi: style cleanups for lustre_param.h James Simmons
2017-08-14 15:46 ` [PATCH 21/64] staging: lustre: uapi: remove lustre_cfg_free wrapper James Simmons
2017-08-14 15:46 ` [PATCH 22/64] staging: lustre: uapi: don't memory allocate in UAPI header James Simmons
2017-08-14 15:46 ` [PATCH 23/64] staging: lustre: uapi: move lustre_cfg_string() to obd_config.c James Simmons
2017-08-14 15:46 ` [PATCH 24/64] staging: lustre: obdclass: no need to check for kfree James Simmons
2017-08-14 15:46 ` [PATCH 25/64] staging: lustre: uapi: move lustre_cfg.h to uapi directory James Simmons
2017-08-14 15:46 ` [PATCH 26/64] staging: lustre: uapi: remove need for libcfs.h from lustre_cfg.h James Simmons
2017-08-14 15:46 ` [PATCH 27/64] staging: lustre: uapi: change variable type to match James Simmons
2017-08-14 15:46 ` [PATCH 28/64] staging: lustre: uapi: check if argument for lustre_cfg_buf() is NULL James Simmons
2017-08-14 15:46 ` [PATCH 29/64] staging: lustre: uapi: style cleanup of lustre_cfg.h James Simmons
2017-08-14 15:46 ` [PATCH 30/64] staging: lustre: uapi: label lustre_cfg.h as an uapi header James Simmons
2017-08-14 15:46 ` [PATCH 31/64] staging: lustre: libcfs: remove htonl hack in libcfs.h James Simmons
2017-08-14 15:47 ` [PATCH 32/64] staging: lustre: libcfs: remove LOGL and LOGU macros James Simmons
2017-08-14 15:47 ` [PATCH 33/64] staging: lustre: libcfs: create libcfs_debug.h UAPI header James Simmons
2017-08-14 15:47 ` [PATCH 34/64] staging: lustre: socklnd: create socklnd.h " James Simmons
2017-08-14 15:47 ` [PATCH 35/64] staging: lustre: lnet: delete lnet.h James Simmons
2017-08-14 15:47 ` [PATCH 36/64] staging: lustre: lnet: migrate headers to lnet uapi directory James Simmons
2017-08-14 15:47 ` [PATCH 37/64] staging: lustre: libcfs: sort headers in libcfs.h James Simmons
2017-08-14 15:47 ` [PATCH 38/64] staging: lustre: lnet: remove userland function prototype in lnetctl.h James Simmons
2017-08-14 15:47 ` [PATCH 39/64] staging: lustre: lnet: remove BIT macro from lnetctl.h James Simmons
2017-08-14 15:47 ` [PATCH 40/64] staging: lustre: uapi: remove libcfs.h from lustre_id.h/lustre_user.h James Simmons
2017-08-14 15:47 ` [PATCH 41/64] staging: lustre: uapi: migrate remaining uapi headers to uapi directory James Simmons
2017-08-14 15:47 ` [PATCH 42/64] staging: lustre: uapi: remove CONFIG_LUSTRE_OBD_MAX_IOCTL James Simmons
2017-08-14 15:47 ` [PATCH 43/64] staging: lustre: uapi: use proper byteorder functions in lustre_idl.h James Simmons
2017-08-14 15:47 ` [PATCH 44/64] staging: lustre: uapi: remove BIT macro from UAPI headers James Simmons
2017-08-14 15:47 ` [PATCH 45/64] staging: lustre: fid: add include path to Makefile James Simmons
2017-08-14 15:47 ` [PATCH 46/64] staging: lustre: fld: " James Simmons
2017-08-14 15:47 ` [PATCH 47/64] staging: lustre: ptlrpc: " James Simmons
2017-08-14 15:47 ` [PATCH 48/64] staging: lustre: llite: " James Simmons
2017-08-14 15:47 ` [PATCH 49/64] staging: lustre: lmv: " James Simmons
2017-08-14 15:47 ` [PATCH 50/64] staging: lustre: lov: " James Simmons
2017-08-14 15:47 ` [PATCH 51/64] staging: lustre: mdc: " James Simmons
2017-08-14 15:47 ` [PATCH 52/64] staging: lustre: mgc: " James Simmons
2017-08-14 15:47 ` [PATCH 53/64] staging: lustre: obdclass: " James Simmons
2017-08-14 15:47 ` [PATCH 54/64] staging: lustre: obdecho: " James Simmons
2017-08-14 15:47 ` [PATCH 55/64] staging: lustre: osc: " James Simmons
2017-08-14 15:47 ` [PATCH 56/64] staging: lustre: lustre: cleanup paths for lustre internal headers James Simmons
2017-08-14 15:47 ` [PATCH 57/64] staging: lustre: lustre: cleanup paths for lustre UAPI headers James Simmons
2017-08-14 15:47 ` [PATCH 58/64] staging: lustre: lnet: selftest: add include path to Makefile James Simmons
2017-08-14 15:47 ` [PATCH 59/64] staging: lustre: lnet: " James Simmons
2017-08-14 15:47 ` [PATCH 60/64] staging: lustre: ko2iblnd: " James Simmons
2017-08-14 15:47 ` [PATCH 61/64] staging: lustre: ksocklnd: " James Simmons
2017-08-14 15:47 ` [PATCH 62/64] staging: lustre: libcfs: " James Simmons
2017-08-14 15:47 ` [PATCH 63/64] staging: lustre: libcfs: cleanup paths for libcfs headers James Simmons
2017-08-14 15:47 ` [PATCH 64/64] staging: lustre: lnet: cleanup paths for all LNet headers James Simmons
2017-08-17 16:22 ` [PATCH 00/64] staging: lustre: uapi: normalize the lustre headers Greg Kroah-Hartman
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=1502725652-26280-8-git-send-email-jsimmons@infradead.org \
--to=jsimmons@infradead.org \
--cc=andreas.dilger@intel.com \
--cc=devel@driverdev.osuosl.org \
--cc=gregkh@linuxfoundation.org \
--cc=linux-kernel@vger.kernel.org \
--cc=lustre-devel@lists.lustre.org \
--cc=oleg.drokin@intel.com \
--cc=uja.ornl@yahoo.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®