diff -r 3fb343e3fac0 -r f77a1182b6f4 master/cdev.c --- a/master/cdev.c Mon Jun 29 14:27:06 2009 +0000 +++ b/master/cdev.c Tue Jun 30 11:11:56 2009 +0000 @@ -1645,9 +1645,9 @@ if (unlikely(!priv->requested)) return -EPERM; - spin_lock_bh(&master->internal_lock); + down(&master->io_sem); ecrt_master_send(master); - spin_unlock_bh(&master->internal_lock); + up(&master->io_sem); return 0; } @@ -1664,9 +1664,9 @@ if (unlikely(!priv->requested)) return -EPERM; - spin_lock_bh(&master->internal_lock); + down(&master->io_sem); ecrt_master_receive(master); - spin_unlock_bh(&master->internal_lock); + up(&master->io_sem); return 0; } @@ -1729,9 +1729,9 @@ if (unlikely(!priv->requested)) return -EPERM; - spin_lock_bh(&master->internal_lock); + down(&master->io_sem); ecrt_master_sync_reference_clock(master); - spin_unlock_bh(&master->internal_lock); + up(&master->io_sem); return 0; } @@ -1748,9 +1748,9 @@ if (unlikely(!priv->requested)) return -EPERM; - spin_lock_bh(&master->internal_lock); + down(&master->io_sem); ecrt_master_sync_slave_clocks(master); - spin_unlock_bh(&master->internal_lock); + up(&master->io_sem); return 0; }