Starting with kdb v2.0 there is a common patch against each kernel which
contains all the architecture independent code plus separate architecture
dependent patches.  Apply the common patch for your kernel plus at least
one architecture dependent patch, the architecture patches activate kdb.

The naming convention for kdb patches is :-

 vx.y    The version of kdb.  x.y is updated as new features are added to kdb.
 -v.p.s  The kernel version that the patch applies to.  's' may include -pre,
         -rc or whatever numbering system the kernel keepers have thought up this
         week.
 -common The common kdb code.  Everybody needs this.
 -i386   Architecture dependent code for i386.
 -ia64   Architecture dependent code for ia64, etc.
 -n      If there are multiple kdb patches against the same kernel version then
         the last number is incremented.

To build kdb for your kernel, apply the common kdb patch which is less
than or equal to the kernel v.p.s, taking the highest value of '-n'
if there is more than one.  Apply the relevant arch dependent patch
with the same value of 'vx.y-v.p.s-', taking the highest value of '-n'
if there is more than one.

For example, to use kdb for i386 on kernel 2.4.20, apply
  kdb-v4.3-2.4.20-common-<n>            (use highest value of <n>)
  kdb-v4.3-2.4.20-i386-<n>              (use highest value of <n>)
in that order.  To use kdb for ia64-021210 on kernel 2.4.20, apply
  kdb-v4.3-2.4.20-common-<n>            (use highest value of <n>)
  kdb-v4.3-2.4.20-ia64-021210-<n>       (use highest value of <n>)
in that order.

Use patch -p1 for all patches.

I do not have any time to work on 2.5, so there are no patches available
for 2.5 kernels.  If somebody wants to port the latest kdb patches to
2.5 kernels and send patches to kaos@sgi.com then I will put them up in
this directory.  Jim Houston has some kdb patches against 2.5.69 in
http://www.ccur.com/realtime/oss/.

The kdb-smphdr* patches in the v4.0 directory are Sonic Zhang's changes
to improve hardware breakpoint handling on i386 and ia64.  They are
not official kdb patches yet, they are available for review.

If you have applied the O(1) scheduler patch to your 2.4 kernel then the
kdb changes to kernel/sched.c will not fit.  For O(1), the code should
look like this

switch_tasks:
#ifdef  CONFIG_KDB
	{
		extern struct task_struct *kdb_active_task[];
		kdb_active_task[smp_processor_id()] = next;
	}
#endif
	prefetch(next);
	clear_tsk_need_resched(prev);

