Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:kernel\locking\lockdep.c Create Date:2022-07-28 09:49:58
Last Modify:2020-03-17 14:16:01 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:print_unlock_imbalance_bug

Proto:static void print_unlock_imbalance_bug(struct task_struct *curr, struct lockdep_map *lock, unsigned long ip)

Type:void

Parameter:

TypeParameterName
struct task_struct *curr
struct lockdep_map *lock
unsigned longip
3987  If Not Generic 'turn off all lock debugging' function: Then Return
3989  If The locking-testsuite uses to get a 'silent failure': nothing is printed to the console when a locking bug is detected Then Return
3992  pr_warn("\n")
3993  pr_warn("=====================================\n")
3994  pr_warn("WARNING: bad unlock balance detected!\n")
3995  print_kernel_ident()
3996  pr_warn("-------------------------------------\n")
3997  pr_warn("%s/%d is trying to release lock (", * executable name, excluding path. * - normally initialized setup_new_exec() * - access it with [gs]et_task_comm() * - lock it with task_lock(), task_pid_nr(curr))
3999  print_lockdep_cache(lock)
4000  Like KERN_CONT, pr_cont() should only be used when continuing* a line with no newline ('\n') enclosed. Otherwise it defaults* back to KERN_DEFAULT.(") at:\n")
4001  print_ip_sym(ip)
4002  pr_warn("but there are no more locks to release!\n")
4003  pr_warn("\nother info that might help us debug this:\n")
4004  lockdep_print_held_locks(curr)
4006  pr_warn("\nstack backtrace:\n")
4007  dump_stack()
Caller
NameDescribe
__lock_set_class
__lock_downgrade
__lock_releaseRemove the lock from the list of currently held locks - this gets* called on mutex_unlock()/spin_unlock*() (or on a failed* mutex_lock_interruptible()).