From 3d62acf0adbceadeac472db22619a389027ec4cf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=BD=D0=B0=D0=B1?= Date: Fri, 2 Apr 2021 20:47:00 +0200 Subject: [PATCH] zed: merge all _NOT_IMPLEMENTED_ events MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit These events should currently never be generated. Also untag _zed_event_add_nvpair() from merge with zpool_do_events_nvprint() ‒ they serve different purposes (machine, usually script vs human consumption) and format the output differently as it stands Reviewed-by: Brian Behlendorf Signed-off-by: Ahelenia Ziemiańska Closes #11834 --- cmd/zed/zed_event.c | 22 +++++----------------- man/man8/zed.8.in | 3 --- 2 files changed, 5 insertions(+), 20 deletions(-) diff --git a/cmd/zed/zed_event.c b/cmd/zed/zed_event.c index a2753ced0..5e28bb22c 100644 --- a/cmd/zed/zed_event.c +++ b/cmd/zed/zed_event.c @@ -249,7 +249,7 @@ _zed_event_value_is_hex(const char *name) * * All environment variables in [zsp] should be added through this function. */ -static int +static __attribute__((format(printf, 5, 6))) int _zed_event_add_var(uint64_t eid, zed_strings_t *zsp, const char *prefix, const char *name, const char *fmt, ...) { @@ -624,8 +624,6 @@ _zed_event_add_string_array(uint64_t eid, zed_strings_t *zsp, * Convert the nvpair [nvp] to a string which is added to the environment * of the child process. * Return 0 on success, -1 on error. - * - * FIXME: Refactor with cmd/zpool/zpool_main.c:zpool_do_events_nvprint()? */ static void _zed_event_add_nvpair(uint64_t eid, zed_strings_t *zsp, nvpair_t *nvp) @@ -724,23 +722,11 @@ _zed_event_add_nvpair(uint64_t eid, zed_strings_t *zsp, nvpair_t *nvp) _zed_event_add_var(eid, zsp, prefix, name, "%llu", (u_longlong_t)i64); break; - case DATA_TYPE_NVLIST: - _zed_event_add_var(eid, zsp, prefix, name, - "%s", "_NOT_IMPLEMENTED_"); /* FIXME */ - break; case DATA_TYPE_STRING: (void) nvpair_value_string(nvp, &str); _zed_event_add_var(eid, zsp, prefix, name, "%s", (str ? str : "")); break; - case DATA_TYPE_BOOLEAN_ARRAY: - _zed_event_add_var(eid, zsp, prefix, name, - "%s", "_NOT_IMPLEMENTED_"); /* FIXME */ - break; - case DATA_TYPE_BYTE_ARRAY: - _zed_event_add_var(eid, zsp, prefix, name, - "%s", "_NOT_IMPLEMENTED_"); /* FIXME */ - break; case DATA_TYPE_INT8_ARRAY: _zed_event_add_int8_array(eid, zsp, prefix, nvp); break; @@ -768,9 +754,11 @@ _zed_event_add_nvpair(uint64_t eid, zed_strings_t *zsp, nvpair_t *nvp) case DATA_TYPE_STRING_ARRAY: _zed_event_add_string_array(eid, zsp, prefix, nvp); break; + case DATA_TYPE_NVLIST: + case DATA_TYPE_BOOLEAN_ARRAY: + case DATA_TYPE_BYTE_ARRAY: case DATA_TYPE_NVLIST_ARRAY: - _zed_event_add_var(eid, zsp, prefix, name, - "%s", "_NOT_IMPLEMENTED_"); /* FIXME */ + _zed_event_add_var(eid, zsp, prefix, name, "_NOT_IMPLEMENTED_"); break; default: errno = EINVAL; diff --git a/man/man8/zed.8.in b/man/man8/zed.8.in index eb3b9e015..ce12d8746 100644 --- a/man/man8/zed.8.in +++ b/man/man8/zed.8.in @@ -234,9 +234,6 @@ Terminate the daemon. .PP ZEDLETs are unable to return state/status information to the kernel. .PP -Some zevent nvpair types are not handled. These are denoted by zevent -environment variables having a "_NOT_IMPLEMENTED_" value. -.PP Internationalization support via gettext has not been added. .PP The diagnosis engine is not yet implemented.