aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTakashi Sakamoto <o-takashi@sakamocchi.jp>2022-05-25 16:29:36 +0900
committerTakashi Sakamoto <o-takashi@sakamocchi.jp>2022-05-25 16:29:36 +0900
commit8d15109b123d593b9ec25be9c670479ae411356d (patch)
treed131032ad7c7e1c345d2c8da570d32e5547c86b6
parentbc39183432b529f98616e2f6490dcc8d67e6bc2a (diff)
downloadlibhinoko-8d15109b123d593b9ec25be9c670479ae411356d.tar.gz
fw_iso_resource_private: code refactoring for ioctl error generator
Signed-off-by: Takashi Sakamoto <o-takashi@sakamocchi.jp>
-rw-r--r--src/fw_iso_resource_auto.c6
-rw-r--r--src/fw_iso_resource_once.c4
-rw-r--r--src/fw_iso_resource_private.c2
-rw-r--r--src/fw_iso_resource_private.h5
4 files changed, 10 insertions, 7 deletions
diff --git a/src/fw_iso_resource_auto.c b/src/fw_iso_resource_auto.c
index 1f593b2..e93c379 100644
--- a/src/fw_iso_resource_auto.c
+++ b/src/fw_iso_resource_auto.c
@@ -230,7 +230,8 @@ static gboolean fw_iso_resource_auto_allocate_async(HinokoFwIsoResource *inst,
res.bandwidth = bandwidth;
if (ioctl(priv->state.fd, FW_CDEV_IOC_ALLOCATE_ISO_RESOURCE, &res) < 0) {
- generate_ioctl_error(error, errno, FW_CDEV_IOC_ALLOCATE_ISO_RESOURCE);
+ generate_fw_iso_resource_error_ioctl(error, errno,
+ FW_CDEV_IOC_ALLOCATE_ISO_RESOURCE);
result = FALSE;
} else {
priv->handle = res.handle;
@@ -398,7 +399,8 @@ gboolean hinoko_fw_iso_resource_auto_deallocate_async(HinokoFwIsoResourceAuto *s
dealloc.handle = priv->handle;
if (ioctl(priv->state.fd, FW_CDEV_IOC_DEALLOCATE_ISO_RESOURCE, &dealloc) < 0) {
- generate_ioctl_error(error, errno, FW_CDEV_IOC_DEALLOCATE_ISO_RESOURCE);
+ generate_fw_iso_resource_error_ioctl(error, errno,
+ FW_CDEV_IOC_DEALLOCATE_ISO_RESOURCE);
result = FALSE;
} else {
result = TRUE;
diff --git a/src/fw_iso_resource_once.c b/src/fw_iso_resource_once.c
index f1c472e..8fa02d8 100644
--- a/src/fw_iso_resource_once.c
+++ b/src/fw_iso_resource_once.c
@@ -102,7 +102,7 @@ static gboolean fw_iso_resource_once_allocate_async(HinokoFwIsoResource *inst,
res.bandwidth = bandwidth;
if (ioctl(priv->state.fd, FW_CDEV_IOC_ALLOCATE_ISO_RESOURCE_ONCE, &res) < 0) {
- generate_ioctl_error(error, errno, FW_CDEV_IOC_ALLOCATE_ISO_RESOURCE_ONCE);
+ generate_fw_iso_resource_error_ioctl(error, errno, FW_CDEV_IOC_ALLOCATE_ISO_RESOURCE_ONCE);
return FALSE;
}
@@ -240,7 +240,7 @@ gboolean hinoko_fw_iso_resource_once_deallocate_async(HinokoFwIsoResourceOnce *s
res.bandwidth = bandwidth;
if (ioctl(priv->state.fd, FW_CDEV_IOC_DEALLOCATE_ISO_RESOURCE_ONCE, &res) < 0) {
- generate_ioctl_error(error, errno, FW_CDEV_IOC_DEALLOCATE_ISO_RESOURCE_ONCE);
+ generate_fw_iso_resource_error_ioctl(error, errno, FW_CDEV_IOC_DEALLOCATE_ISO_RESOURCE_ONCE);
return FALSE;
}
diff --git a/src/fw_iso_resource_private.c b/src/fw_iso_resource_private.c
index 41df287..257526a 100644
--- a/src/fw_iso_resource_private.c
+++ b/src/fw_iso_resource_private.c
@@ -193,7 +193,7 @@ gboolean fw_iso_resource_state_cache_bus_state(struct fw_iso_resource_state *sta
get_info.bus_reset = (__u64)&state->bus_state;
if (ioctl(state->fd, FW_CDEV_IOC_GET_INFO, &get_info) < 0) {
- generate_ioctl_error(error, errno, FW_CDEV_IOC_GET_INFO);
+ generate_fw_iso_resource_error_ioctl(error, errno, FW_CDEV_IOC_GET_INFO);
return FALSE;
}
diff --git a/src/fw_iso_resource_private.h b/src/fw_iso_resource_private.h
index aa40505..3f28d7b 100644
--- a/src/fw_iso_resource_private.h
+++ b/src/fw_iso_resource_private.h
@@ -29,8 +29,9 @@ static inline void generate_fw_iso_resource_error_coded(GError **error, HinokoFw
HINOKO_FW_ISO_RESOURCE_ERROR_FAILED, \
format " %d(%s)", arg, errno, strerror(errno))
-#define generate_ioctl_error(error, errno, request) \
- generate_syscall_error(error, errno, "ioctl(%s)", #request)
+#define generate_fw_iso_resource_error_ioctl(error, errno, request) \
+ g_set_error(error, HINOKO_FW_ISO_RESOURCE_ERROR, HINOKO_FW_ISO_RESOURCE_ERROR_FAILED, \
+ "ioctl(" #request ") %d(%s)", errno, strerror(errno))
struct fw_iso_resource_state {
int fd;