Re: [PATCH v4 2/9] liblockdep: Wrap kernel/lockdep.c to allow usagefrom userspace

From: Peter Zijlstra
Date: Wed May 22 2013 - 05:17:28 EST


On Wed, May 15, 2013 at 11:15:34PM -0400, Sasha Levin wrote:
> --- /dev/null
> +++ b/tools/lib/lockdep/uinclude/linux/lockdep.h
> @@ -0,0 +1,55 @@
> +#ifndef _LIBLOCKDEP_LOCKDEP_H_
> +#define _LIBLOCKDEP_LOCKDEP_H_
> +
> +#include <sys/prctl.h>
> +#include <sys/syscall.h>
> +#include <string.h>
> +#include <limits.h>
> +#include <linux/utsname.h>
> +
> +
> +#define MAX_LOCK_DEPTH 2000UL
> +
> +#include "../../../include/linux/lockdep.h"
> +
> +struct task_struct {
> + u64 curr_chain_key;
> + int lockdep_depth;
> + unsigned int lockdep_recursion;
> + struct held_lock held_locks[MAX_LOCK_DEPTH];
> + gfp_t lockdep_reclaim_gfp;
> + int pid;
> + char comm[17];
> +};

Whee that's a totally awesome MAX_LOCK_DEPTH.. :-)

Should we not also extend the other static allocations, or have you not
yet ran into them? I would suspect that without proper classes we're
bound to run out of class and link storage quite quickly.


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/