Re: [patch 2/16] list_head debugging

Arnaldo Carvalho de Melo (acme@conectiva.com.br)
Sat, 1 Jun 2002 14:19:02 -0300


Em Sat, Jun 01, 2002 at 01:40:03AM -0700, Andrew Morton escreveu:
> A common and very subtle bug is to use list_heads which aren't on any
> lists. It causes kernel memory corruption which is observed long after
> the offending code has executed.

> The patch nulls out the dangling pointers so we get a nice oops at the
> site of the buggy code.

> =====================================
>
> --- 2.5.19/include/linux/list.h~list-debug Sat Jun 1 01:18:05 2002
> +++ 2.5.19-akpm/include/linux/list.h Sat Jun 1 01:18:05 2002
> @@ -94,6 +94,11 @@ static __inline__ void __list_del(struct
> static __inline__ void list_del(struct list_head *entry)
> {
> __list_del(entry->prev, entry->next);

#ifdef CONFIG_DEBUG_LIST_DEL_NULLIFY

> + entry->next = 0;
> + entry->prev = 0;

#endif

> }

8) And get this configured in the Debug section of make *config

The kernel will always have bugs ;)

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