summaryrefslogtreecommitdiffstats
path: root/cpukit/libfs/src/jffs2/src/fs-rtems.c
diff options
context:
space:
mode:
authorKinsey Moore <kinsey.moore@oarcorp.com>2023-10-04 12:26:57 -0500
committerJoel Sherrill <joel@rtems.org>2023-10-12 18:56:43 -0500
commitd7aa1ab86fc06799286eb5a648eeb488446c4bbc (patch)
treeb0b1e07f4fe8d5001407852ad7db8ac07a06b960 /cpukit/libfs/src/jffs2/src/fs-rtems.c
parentbsps/xilinx-zynqmp: Unify JFFS2 OOB write locking (diff)
downloadrtems-d7aa1ab86fc06799286eb5a648eeb488446c4bbc.tar.bz2
cpukit/jffs2: Implement JFFS2 spinlocks
This provides a non-noop implementation of spinlocks for JFFS2 in terms of RTEMS mutexes. POSIX spinlocks are not appropriate for the types of actions that occur during a held JFFS2 spinlock and can cause bad dispatch level conditions.
Diffstat (limited to '')
-rw-r--r--cpukit/libfs/src/jffs2/src/fs-rtems.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/cpukit/libfs/src/jffs2/src/fs-rtems.c b/cpukit/libfs/src/jffs2/src/fs-rtems.c
index e47f2e7fd2..0d97e7a6fb 100644
--- a/cpukit/libfs/src/jffs2/src/fs-rtems.c
+++ b/cpukit/libfs/src/jffs2/src/fs-rtems.c
@@ -1384,6 +1384,8 @@ int rtems_jffs2_initialize(
#ifdef CONFIG_JFFS2_FS_WRITEBUFFER
add_delayed_work_to_chain(&c->wbuf_dwork);
#endif
+ spin_lock_init(&c->erase_completion_lock);
+ spin_lock_init(&c->inocache_lock);
c->mtd = NULL;
rtems_recursive_mutex_init(&sb->s_mutex, RTEMS_FILESYSTEM_TYPE_JFFS2);
}