mv64x60 use mutex instead of semaphore
PATCH 1/1 mv64x60 use mutex instead of semaphore
Signed-off-by Christoph Hellwig <[email protected]>
arch/ppc/syslib/mv64x60.c +8 -7
@@ -14,6 +14,7 @@#include <linux/pci.h> #include <linux/slab.h> #include <linux/module.h> +#include <linux/mutex.h> #include <linux/string.h> #include <linux/spinlock.h> #include <linux/mv643xx.h>
@@ -2359,7 +2360,7 @@ mv64460_chip_specific_init(struct mv64x6/* Export the hotswap register via sysfs for enum event monitoring */ #define VAL_LEN_MAX 11/* 32-bit hex or dec stringified number + '\n' */ -DECLARE_MUTEX (mv64xxx_hs_lock); +static DEFINE_MUTEX (mv64xxx_hs_lock);static ssize_t mv64xxx_hs_reg_read (struct kobject *kobj,char *buf,loff_t off,size_t count)
@@ -2372,14 +2373,14 @@ mv64xxx_hs_reg_read(struct kobject *kobjif (count <VAL_LEN_MAX )return -EINVAL ; -if (down_interruptible (&mv64xxx_hs_lock)) +if (mutex_lock_interruptible (&mv64xxx_hs_lock))return -ERESTARTSYS ; save_exclude = mv64x60_pci_exclude_bridge; mv64x60_pci_exclude_bridge =0 ;early_read_config_dword (&sysfs_hose_a,0 ,PCI_DEVFN (0 ,0 ),MV64360_PCICFG_CPCI_HOTSWAP , &v); mv64x60_pci_exclude_bridge = save_exclude; -up (&mv64xxx_hs_lock); +mutex_unlock (&mv64xxx_hs_lock);return sprintf (buf,"0x%08x\n" , v); }
@@ -2396,14 +2397,14 @@ mv64xxx_hs_reg_write(struct kobject *kobreturn -EINVAL ;if (sscanf (buf,"%i" , &v) ==1 ) { -if (down_interruptible (&mv64xxx_hs_lock)) +if (mutex_lock_interruptible (&mv64xxx_hs_lock))return -ERESTARTSYS ; save_exclude = mv64x60_pci_exclude_bridge; mv64x60_pci_exclude_bridge =0 ;early_write_config_dword (&sysfs_hose_a,0 ,PCI_DEVFN (0 ,0 ),MV64360_PCICFG_CPCI_HOTSWAP , v); mv64x60_pci_exclude_bridge = save_exclude; -up (&mv64xxx_hs_lock); +mutex_unlock (&mv64xxx_hs_lock); }else count = -EINVAL ;
@@ -2433,10 +2434,10 @@ mv64xxx_hs_reg_valid_show(struct device pdev = container_of(dev, struct platform_device, dev); pdp = (struct mv64xxx_pdata *)pdev->dev.platform_data; -if (down_interruptible (&mv64xxx_hs_lock)) +if (mutex_lock_interruptible (&mv64xxx_hs_lock))return -ERESTARTSYS ; v = pdp->hs_reg_valid; -up (&mv64xxx_hs_lock); +mutex_unlock (&mv64xxx_hs_lock);return sprintf (buf,"%i\n" , v); }
Quoted 2 lines · Christoph Hellwig
Signed-off-by Christoph Hellwig <[email protected]>
Acked-by Mark A. Greer <[email protected]>