Unverified Commit 4e1f5fef authored by openeuler-ci-bot's avatar openeuler-ci-bot Committed by Gitee
Browse files
parents e9ea4ec6 187356da
Loading
Loading
Loading
Loading
+0 −29
Original line number Diff line number Diff line
@@ -186,7 +186,6 @@ struct erofs_workgroup {

#define EROFS_LOCKED_MAGIC     (INT_MIN | 0xE0F510CCL)

#if defined(CONFIG_SMP)
static inline bool erofs_workgroup_try_to_freeze(struct erofs_workgroup *grp,
						 int val)
{
@@ -215,34 +214,6 @@ static inline int erofs_wait_on_workgroup_freezed(struct erofs_workgroup *grp)
	return atomic_cond_read_relaxed(&grp->refcount,
					VAL != EROFS_LOCKED_MAGIC);
}
#else
static inline bool erofs_workgroup_try_to_freeze(struct erofs_workgroup *grp,
						 int val)
{
	preempt_disable();
	/* no need to spin on UP platforms, let's just disable preemption. */
	if (val != atomic_read(&grp->refcount)) {
		preempt_enable();
		return false;
	}
	return true;
}

static inline void erofs_workgroup_unfreeze(struct erofs_workgroup *grp,
					    int orig_val)
{
	preempt_enable();
}

static inline int erofs_wait_on_workgroup_freezed(struct erofs_workgroup *grp)
{
	int v = atomic_read(&grp->refcount);

	/* workgroup is never freezed on uniprocessor systems */
	DBG_BUGON(v == EROFS_LOCKED_MAGIC);
	return v;
}
#endif

static inline bool erofs_workgroup_get(struct erofs_workgroup *grp, int *ocnt)
{