lkml.org 
[lkml]   [2002]   [Dec]   [26]   [last100]   RSS Feed
Views: [more markup]  [less markup]  [headers]  [forward] 
 
Messages in this thread
/
DateThu, 26 Dec 2002 16:51:18 -0800 (PST)
FromAnomalous Force <>
Subjectholy grail
a hot swap kernel would be something like the holy grail of kernel
hacking. it would logically go something like this:

void kexec_hot_swap()
{
        void *kern = load_kernel_into_mem();
        syscall_queue(ENABLE); /* queue all sys calls */
        irq_queue(ENABLE); /* queue all irqs */
        /* bring new kernel's state inline with current one's.
           this includes all data structures, module hooks, etc.
           this needs to be very fast as irqs will be pending... */
        synch_kernel(kern);
        kernel_start(kern); /* fire in the hole... */
}
at this point the new kernel would know it is being started as a
hot swap throught a flag or something, and dequeue the irq's
that are pending, followed by the sys calls that are waiting.
if this goes how i think it should, a user running on the system
wont even know the kernel was swapped.

what do you think? is it do-able?

=====
Main Entry: anom
\
 
 \ /
  Last update: 2005-03-22 12:31    [from the cache]
©2003-2008