2017-06-08 10:04:03

by Binoy Jayan

[permalink] [raw]
Subject: [PATCH] net: ethernet: micrel: ksz884x: Replace semaphore proc_sem with mutex

The semaphore 'proc_sem' is used as a simple mutex, so
it should be written as one. Semaphores are going away in the future.

Signed-off-by: Binoy Jayan <[email protected]>
---

This patch is part of a bigger effort to eliminate unwanted
semaphores from the linux kernel.

drivers/net/ethernet/micrel/ksz884x.c | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/drivers/net/ethernet/micrel/ksz884x.c b/drivers/net/ethernet/micrel/ksz884x.c
index ee1c78a..9664666 100644
--- a/drivers/net/ethernet/micrel/ksz884x.c
+++ b/drivers/net/ethernet/micrel/ksz884x.c
@@ -1456,7 +1456,7 @@ struct dev_info {
* @adapter: Adapter device information.
* @port: Port information.
* @monitor_time_info: Timer to monitor ports.
- * @proc_sem: Semaphore for proc accessing.
+ * @proc_mutex: Mutex for proc accessing.
* @id: Device ID.
* @mii_if: MII interface information.
* @advertising: Temporary variable to store advertised settings.
@@ -1470,7 +1470,7 @@ struct dev_priv {
struct ksz_port port;
struct ksz_timer_info monitor_timer_info;

- struct semaphore proc_sem;
+ struct mutex proc_mutex;
int id;

struct mii_if_info mii_if;
@@ -5842,7 +5842,7 @@ static int netdev_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd)
int result = 0;
struct mii_ioctl_data *data = if_mii(ifr);

- if (down_interruptible(&priv->proc_sem))
+ if (mutex_lock_interruptible(&priv->proc_mutex))
return -ERESTARTSYS;

switch (cmd) {
@@ -5876,7 +5876,7 @@ static int netdev_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd)
result = -EOPNOTSUPP;
}

- up(&priv->proc_sem);
+ mutex_unlock(&priv->proc_mutex);

return result;
}
@@ -6805,7 +6805,7 @@ static int __init netdev_init(struct net_device *dev)

dev->features |= dev->hw_features;

- sema_init(&priv->proc_sem, 1);
+ mutex_init(&priv->proc_mutex);

priv->mii_if.phy_id_mask = 0x1;
priv->mii_if.reg_num_mask = 0x7;
--
Binoy Jayan


2017-06-08 14:59:49

by Arnd Bergmann

[permalink] [raw]
Subject: Re: [PATCH] net: ethernet: micrel: ksz884x: Replace semaphore proc_sem with mutex

On Thu, Jun 8, 2017 at 12:03 PM, Binoy Jayan <[email protected]> wrote:
> The semaphore 'proc_sem' is used as a simple mutex, so
> it should be written as one. Semaphores are going away in the future.
>
> Signed-off-by: Binoy Jayan <[email protected]>
> ---
>
> This patch is part of a bigger effort to eliminate unwanted
> semaphores from the linux kernel.

Looks good,

Reviewed-by: Arnd Bergmann <[email protected]>