Messages in this thread | | | Date | Mon, 30 Mar 1998 15:18:28 +0200 | From | Harald Koenig <> | Subject | Re: GGI and cli/sti in X |
| |
On Mar 29, Pavel Machek wrote:
> > > I get 5 or 6 ughs everytime somone runs X onmy system so I'd say your > > > correct, the ughs are allways in do_page_fault. The ughs are normal on > > > any system I've seen with < 16 megs ram. The every once and a while > > > > The "Ugh" is logging the fact someone attempted to handle a page fault while > > having interrupts disabled. This is an extremely bad thing. There are two causes > > > > 1. Incorrect kernel code (I think most of these are now dead) > > 2. Some user process as root which has the misguided idea it can disable > > interrupts after using the iopl() syscall. Well it can't. Not unless > > its prepaged everything it needs and mlock()'d those pages > > XF86 3.1.2 (latest I have convient access to) does *not* do *any* > cli()/sti()'s. At least in os-dependend section disable_interrupts() > is empty function. > > > so its either a kernel or an X bug. > > ...so I doubt this is X bug. It would be nice if some X hacker joined > this debate...
more recent XFree86 sources have non-empty xf86DisableInterrupts() (don't know when this has changed). but if you check XFree86 sources for S3 and S3/SVGA (that's what I'm falmilar with;) you'll find that interrupts are _only_ disabled for ICD2061A clock setting (in s3_init_clock()) and for probing clock values for non-programmable clocks (in xf86GetClocks(), and the latter you can avoid at runtime by specifying clock values in config file; and ICD2061A clockchips aren't used anymore). using
disas xf86GetClocks disas s3_init_clock
in gdb will show that both routines lay pretty well in one page (if they don't, we'd get many reports for sure;). while this isn't perfect, it can be improved using mlock() for that routines and it's for sure not something which can _only_ be done using GGI.
Harald -- All SCSI disks will from now on ___ _____ be required to send an email notice 0--,| /OOOOOOO\ 24 hours prior to complete hardware failure! <_/ / /OOOOOOOOOOO\ \ \/OOOOOOOOOOOOOOO\ \ OOOOOOOOOOOOOOOOO|// Harald Koenig, \/\/\/\/\/\/\/\/\/ Inst.f.Theoret.Astrophysik // / \\ \ koenig@tat.physik.uni-tuebingen.de ^^^^^ ^^^^^
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu
| |