Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d99d5917 authored by Linus Torvalds's avatar Linus Torvalds
Browse files

Merge branch 'core-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull locking fixes from Ingo Molnar:
 "liblockdep fixes and mutex debugging fixes"

* 'core-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  locking/mutex: Fix debug_mutexes
  tools/liblockdep: Add proper versioning to the shared obj
  tools/liblockdep: Ignore asmlinkage and visible
parents 498f9620 65063ced
Loading
Loading
Loading
Loading
+9 −10
Original line number Diff line number Diff line
@@ -71,9 +71,7 @@ void mutex_remove_waiter(struct mutex *lock, struct mutex_waiter *waiter,

void debug_mutex_unlock(struct mutex *lock)
{
	if (unlikely(!debug_locks))
		return;

	if (likely(debug_locks)) {
		DEBUG_LOCKS_WARN_ON(lock->magic != lock);

		if (!lock->owner)
@@ -83,6 +81,7 @@ void debug_mutex_unlock(struct mutex *lock)

		DEBUG_LOCKS_WARN_ON(!lock->wait_list.prev && !lock->wait_list.next);
		mutex_clear_owner(lock);
	}

	/*
	 * __mutex_slowpath_needs_to_unlock() is explicitly 0 for debug
+4 −11
Original line number Diff line number Diff line
# liblockdep version
LL_VERSION = 0
LL_PATCHLEVEL = 0
LL_EXTRAVERSION = 1

# file format version
FILE_VERSION = 1

MAKEFLAGS += --no-print-directory

LIBLOCKDEP_VERSION=$(shell make -sC ../../.. kernelversion)

# Makefiles suck: This macro sets a default value of $(2) for the
# variable named by $(1), unless the variable has been set by
@@ -98,7 +93,7 @@ export prefix libdir bindir src obj
libdir_SQ = $(subst ','\'',$(libdir))
bindir_SQ = $(subst ','\'',$(bindir))

LIB_FILE = liblockdep.a liblockdep.so
LIB_FILE = liblockdep.a liblockdep.so.$(LIBLOCKDEP_VERSION)
BIN_FILE = lockdep

CONFIG_INCLUDES =
@@ -110,8 +105,6 @@ N =

export Q VERBOSE

LIBLOCKDEP_VERSION = $(LL_VERSION).$(LL_PATCHLEVEL).$(LL_EXTRAVERSION)

INCLUDES = -I. -I/usr/local/include -I./uinclude -I./include $(CONFIG_INCLUDES)

# Set compile option CFLAGS if not set elsewhere
@@ -146,7 +139,7 @@ do_app_build = \

do_compile_shared_library =			\
	($(print_shared_lib_compile)		\
	$(CC) --shared $^ -o $@ -lpthread -ldl)
	$(CC) --shared $^ -o $@ -lpthread -ldl -Wl,-soname='"$@"';$(shell ln -s $@ liblockdep.so))

do_build_static_lib =				\
	($(print_static_lib_build)		\
@@ -177,7 +170,7 @@ all: all_cmd

all_cmd: $(CMD_TARGETS)

liblockdep.so: $(PEVENT_LIB_OBJS)
liblockdep.so.$(LIBLOCKDEP_VERSION): $(PEVENT_LIB_OBJS)
	$(Q)$(do_compile_shared_library)

liblockdep.a: $(PEVENT_LIB_OBJS)
+3 −0
Original line number Diff line number Diff line
@@ -10,6 +10,9 @@

#define MAX_LOCK_DEPTH 2000UL

#define asmlinkage
#define __visible

#include "../../../include/linux/lockdep.h"

struct task_struct {