On Wed, 2006-05-24 at 18:58 -0400, Vivek Goyal wrote:
> On Wed, May 24, 2006 at 01:40:41PM +0900, Magnus Damm wrote:
> >  
> > @@ -170,45 +151,16 @@ void machine_kexec_cleanup(struct kimage
> >  NORET_TYPE void machine_kexec(struct kimage *image)
> >  {
> >     unsigned long page_list;
> > -   unsigned long reboot_code_buffer;
> > -
> > +   unsigned long control_code;
> > +   unsigned long page_table_a;
> >     relocate_new_kernel_t rnk;
> >  
> > -   /* Interrupts aren't acceptable while we reboot */
> > -   local_irq_disable();
> 
> Why are you getting rid of this call? Looks sane to disable interrupts
> early.

It made sense to disable interrupts early because we used to setup the
segments and overwrite the page tables from the c code. My patch moves
the segment handling and page table switching code into the assembly
routine, and one of the first things the assembly code does is:

        /* zero out flags, and disable interrupts */
        pushl $0
        popfl

So I think we should be safe. Thanks for checking!

/ magnus

_______________________________________________
fastboot mailing list
[email protected]
https://lists.osdl.org/mailman/listinfo/fastboot

Reply via email to