Commit f1729c28 authored by Don Mullis's avatar Don Mullis Committed by Linus Torvalds
Browse files

[PATCH] fault-injection: optimize and simplify should_fail()



Trivial optimization and simplification of should_fail().

Do cheaper disqualification tests first (performance gain not quantified).
Simplify logic; eliminate goto.

Signed-off-by: default avatarDon Mullis <dwm@meer.net>
Cc: Akinobu Mita <akinobu.mita@gmail.com>
Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent a124c28e
Loading
Loading
Loading
Loading
+4 −7
Original line number Diff line number Diff line
@@ -142,9 +142,6 @@ bool should_fail(struct fault_attr *attr, ssize_t size)
	if (attr->task_filter && !fail_task(attr, current))
		return false;

	if (!fail_stacktrace(attr))
		return false;

	if (atomic_read(&attr->times) == 0)
		return false;

@@ -159,12 +156,12 @@ bool should_fail(struct fault_attr *attr, ssize_t size)
			return false;
	}

	if (attr->probability > random32() % 100)
		goto fail;
	if (attr->probability <= random32() % 100)
		return false;

	if (!fail_stacktrace(attr))
		return false;

fail:
	fail_dump(attr);

	if (atomic_read(&attr->times) != -1)