Date: Tue, 24 Oct 2000 22:23:17 -0700 (PDT) From: John Baldwin <jhb@FreeBSD.org> To: John Baldwin <jhb@FreeBSD.org> Cc: cvs-all@FreeBSD.org, cvs-committers@FreeBSD.org Subject: RE: cvs commit: src/sys/alpha/alpha busdma_machdep.c clock.c int Message-ID: <XFMail.001024222317.jhb@FreeBSD.org> In-Reply-To: <200010250519.WAA59551@freefall.freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On 25-Oct-00 John Baldwin wrote: > jhb 2000/10/24 22:19:40 PDT > > Modified files: > sys/alpha/alpha busdma_machdep.c clock.c interrupt.c > ipl_funcs.c mem.c vm_machdep.c > sys/alpha/include ipl.h md_var.h > sys/cam cam_xpt.c > sys/i386/i386 busdma_machdep.c vm_machdep.c > sys/i386/include ipl.h md_var.h > sys/i386/isa clock.c cy.c intr_machdep.c > intr_machdep.h ipl.s ipl_funcs.c > ithread.c rc.c > sys/ia64/ia64 busdma_machdep.c ipl_funcs.c mem.c > vm_machdep.c > sys/ia64/include ipl.h md_var.h > sys/isa sio.c > sys/kern kern_clock.c kern_intr.c kern_timeout.c > subr_taskqueue.c > sys/net netisr.h > sys/pc98/pc98 clock.c sio.c > sys/sys interrupt.h proc.h systm.h > Log: > - Overhaul the software interrupt code to use interrupt threads for each > type of software interrupt. Roughly, what used to be a bit in spending > now maps to a swi thread. Each thread can have multiple handlers, just > like a hardware interrupt thread. > - Instead of using a bitmask of pending interrupts, we schedule the > specific > software interrupt thread to run, so spending, NSWI, and the shandlers > array are no longer needed. We can now have an arbitrary number of > software interrupt threads. When you register a software interrupt > thread via sinthand_add(), you get back a struct intrhand that you pass > to sched_swi() when you wish to schedule your swi thread to run. > - Convert the name of 'struct intrec' to 'struct intrhand' as it is a bit > more intuitive. Also, prefix all the members of struct intrhand with > 'ih_'. > - Make swi_net() a MI function since there is now no point in it being > MD. > > Submitted by: cp This has been tested and run succesfully on both x86 SMP and alpha. I don't presently have an ia64 simulator environment or a kernel build environment set up yet, so I'm not entirely sure that I haven't broken ia64. Chuck would be extremely glad to field any bug reports that you may have with this. *duck* :-P -- John Baldwin <jhb@FreeBSD.org> -- http://www.FreeBSD.org/~jhb/ PGP Key: http://www.baldwin.cx/~john/pgpkey.asc "Power Users Use the Power to Serve!" - http://www.FreeBSD.org/ To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?XFMail.001024222317.jhb>