DDB and SMP causes Unaligned Reference
Alan Robinson
alan.robinson at fujitsu-siemens.com
Tue Jun 10 01:53:12 PDT 2003
On Fri, Jun 06, 2003 at 11:20:15AM -0700, Marcel Moolenaar wrote:
> On Fri, Jun 06, 2003 at 06:31:30PM +0200, Alan Robinson wrote:
> >
> > The cr.iip points into swapctx (or savectx) which was called from
> > from interrupt() as follows....
> >
> > } else if (vector == ipi_vector[IPI_STOP]) {
> > u_int32_t mybit = PCPU_GET(cpumask);
> >
> > CTR1(KTR_SMP, "IPI_STOP, cpuid=%d", PCPU_GET(cpuid));
> > savectx(PCPU_GET(pcb));
>
> We don't set pc_pcb on ia64. The line above should read:
> savectx(curthread->td_pcb);
>
Tried it.
>
> Try it and let me know if it works. I'll commit it then.
>
Works.
Works.
(It still causes the strange double entry into DDB)
It would also be a good idea to remove the unneeded pc_pcb line with its
incorrect comment from src/sys/ia64/include/pcpu.h
Alan
More information about the freebsd-ia64
mailing list