> > > 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