Re: [PATCH 05/37] kdb: core for kgdb back end
From: Andi Kleen
Date: Wed Dec 23 2009 - 20:28:16 EST
Jason Wessel <jason.wessel@xxxxxxxxxxxxx> writes:
I remember going with kaos through all the code
outside kdb/ in his own patch and for nearly all hooks
outside we found some way to eliminate them.
I think a lot of this is here too.
>
> +#ifdef CONFIG_KGDB_KDB
> +/* Like meminfo_proc_show() but without the locks and using kdb_printf() */
> +void kdb_meminfo_proc_show(void)
Are there even any locks in meminfo_proc_show()? I don't see any on a quick look.
Ah or is that only for swap_info? That could be a flag or perhaps that
access can be even made lockless (it looks like it could)
I guess a better way would be to have a kdb specific seq file implementation
and then just use the normal function, instead of copying everything.
> void get_vmalloc_info(struct vmalloc_info *vmi)
> {
> struct vm_struct *vma;
> unsigned long free_area_size;
> unsigned long prev_end;
> +#ifdef CONFIG_KGDB_KDB
> + int get_lock = !KDB_IS_RUNNING();
> +#else
> +#define get_lock 1
> +#endif
> +
A standard way to do such would be a __get_vmalloc_info with the
lock in the caller
Didn't read everything in this gigantic patch.
-Andi
--
ak@xxxxxxxxxxxxxxx -- Speaking for myself only.
--
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/