summaryrefslogtreecommitdiffstats
path: root/drivers/mtd/ubi/ubi.h
diff options
context:
space:
mode:
authorArtem Bityutskiy <Artem.Bityutskiy@nokia.com>2007-12-18 14:54:35 +0100
committerArtem Bityutskiy <Artem.Bityutskiy@nokia.com>2007-12-26 18:15:16 +0100
commit593dd33c92c6529443d5df1350dc5cc76511232d (patch)
treedda360da5a5f66eb36b55a4c2e8eb985e997ffd6 /drivers/mtd/ubi/ubi.h
parentUBI: fix printk (diff)
downloadlinux-593dd33c92c6529443d5df1350dc5cc76511232d.tar.xz
linux-593dd33c92c6529443d5df1350dc5cc76511232d.zip
UBI: fix ubi_wl_flush
The flush function should finish all the pending jobs. But if somebody else is doing a work, this function should wait and let it finish. This patche uses rw semaphore for synchronization purpose - it just looks quite convinient. Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
Diffstat (limited to 'drivers/mtd/ubi/ubi.h')
-rw-r--r--drivers/mtd/ubi/ubi.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/mtd/ubi/ubi.h b/drivers/mtd/ubi/ubi.h
index ea9a6990a4dc..994233d6e1e3 100644
--- a/drivers/mtd/ubi/ubi.h
+++ b/drivers/mtd/ubi/ubi.h
@@ -355,6 +355,7 @@ struct ubi_device {
} prot;
spinlock_t wl_lock;
struct mutex move_mutex;
+ struct rw_semaphore work_sem;
int wl_scheduled;
struct ubi_wl_entry **lookuptbl;
unsigned long long abs_ec;