From 624872fcdb3725953645e27ee7e408bb1380c2ab Mon Sep 17 00:00:00 2001 From: Rasmus Villemoes Date: Wed, 31 Aug 2022 10:51:30 +0200 Subject: [PATCH] fix direct uses of up()/down() When converting to the ec_lock_t abstraction, these were missed, making building with --enable-rtmutex broken. Fixes: 9955855f7e (Applied 0016-If-enable-rtmutex-use-rtmutexes-instead-of-semaphore.patch) --- master/ioctl.c | 14 +++++++------- master/slave_config.c | 4 ++-- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/master/ioctl.c b/master/ioctl.c index 04c1ee28..0f3cfd50 100755 --- a/master/ioctl.c +++ b/master/ioctl.c @@ -1531,14 +1531,14 @@ static ATTRIBUTES int ec_ioctl_config_flag( return -EFAULT; } - if (down_interruptible(&master->master_sem)) { + if (ec_lock_down_interruptible(&master->master_sem)) { kfree(ioctl); return -EINTR; } if (!(sc = ec_master_get_config_const( master, ioctl->config_index))) { - up(&master->master_sem); + ec_lock_up(&master->master_sem); EC_MASTER_ERR(master, "Slave config %u does not exist!\n", ioctl->config_index); kfree(ioctl); @@ -1547,7 +1547,7 @@ static ATTRIBUTES int ec_ioctl_config_flag( if (!(flag = ec_slave_config_get_flag_by_pos_const( sc, ioctl->flag_pos))) { - up(&master->master_sem); + ec_lock_up(&master->master_sem); EC_MASTER_ERR(master, "Invalid flag position!\n"); kfree(ioctl); return -EINVAL; @@ -1558,7 +1558,7 @@ static ATTRIBUTES int ec_ioctl_config_flag( ioctl->key[size] = 0x00; ioctl->value = flag->value; - up(&master->master_sem); + ec_lock_up(&master->master_sem); if (copy_to_user((void __user *) arg, ioctl, sizeof(*ioctl))) { kfree(ioctl); @@ -3369,18 +3369,18 @@ static ATTRIBUTES int ec_ioctl_sc_flag( return -EFAULT; } - if (down_interruptible(&master->master_sem)) { + if (ec_lock_down_interruptible(&master->master_sem)) { kfree(key); return -EINTR; } if (!(sc = ec_master_get_config(master, ioctl.config_index))) { - up(&master->master_sem); + ec_lock_up(&master->master_sem); kfree(key); return -ENOENT; } - up(&master->master_sem); /** \todo sc could be invalidated */ + ec_lock_up(&master->master_sem); /** \todo sc could be invalidated */ ret = ecrt_slave_config_flag(sc, key, ioctl.value); kfree(key); diff --git a/master/slave_config.c b/master/slave_config.c index 35bb951c..37005c34 100755 --- a/master/slave_config.c +++ b/master/slave_config.c @@ -1423,9 +1423,9 @@ int ecrt_slave_config_flag(ec_slave_config_t *sc, const char *key, return ret; } - down(&sc->master->master_sem); + ec_lock_down(&sc->master->master_sem); list_add_tail(&flag->list, &sc->flags); - up(&sc->master->master_sem); + ec_lock_up(&sc->master->master_sem); } return 0; }