Age | Commit message (Collapse) | Author | |
---|---|---|---|
1999-08-15 | Please give us dmesg from a GENERIC kernel only, if possible. | Ian Darwin | |
1999-08-15 | Adopt NetBSD fix for scheduler problems (nice was broken). From the NetBSD | Paul Janzen | |
commit messages: Scheduler bug fixes and reorganization * fix the ancient nice(1) bug, where nice +20 processes incorrectly steal 10 - 20% of the CPU, (or even more depending on load average) * provide a new schedclock() mechanism at a new clock at schedhz, so high platform hz values don't cause nice +0 processes to look like they are niced * change the algorithm slightly, and reorganize the code a lot * fix percent-CPU calculation bugs, and eliminate some no-op code === nice bug === Correctly divide the scheduler queues between niced and compute-bound processes. The current nice weight of two (sort of, see `algorithm change' below) neatly divides the USRPRI queues in half; this should have been used to clip p_estcpu, instead of UCHAR_MAX. Besides being the wrong amount, clipping an unsigned char to UCHAR_MAX is a no-op, and it was done after decay_cpu() which can only _reduce_ the value. It has to be kept <= NICE_WEIGHT * PRIO_MAX - PPQ or processes can scheduler-penalize themselves onto the same queue as nice +20 processes. (Or even a higher one.) === New schedclock() mechanism === Some platforms should be cutting down stathz before hitting the scheduler, since the scheduler algorithm only works right in the vicinity of 64 Hz. Rather than prescale hz, then scale back and forth by 4 every time p_estcpu is touched (each occurance an abstraction violation), use p_estcpu without scaling and require schedhz to be generated directly at the right frequency. Use a default stathz (well, actually, profhz) / 4, so nothing changes unless a platform defines schedhz and a new clock. [ To do: Define these for alpha, where hz==1024, and nice was totally broke.] === Algorithm change === The nice value used to be added to the exponentially-decayed scheduler history value p_estcpu, in _addition_ to be incorporated directly (with greater weight) into the priority calculation. At first glance, it appears to be a pointless increase of 1/8 the nice effect (pri = p_estcpu/4 + nice*2), but it's actually at least 3x that because it will ramp up linearly but be decayed only exponentially, thus converging to an additional .75 nice for a loadaverage of one. I killed this: it makes the behavior hard to control, almost impossible to analyze, and the effect (~~nothing at for the first second, then somewhat increased niceness after three seconds or more, depending on load average) pointless. === Other bugs === hz -> profhz in the p_pctcpu = f(p_cpticks) calcuation. Collect scheduler functionality. Try to put each abstraction in just one place. | |||
1999-08-15 | pciide & atapiscsi | kstailey | |
1999-08-14 | Missing -I/usr/include/ssl, evanc@concer.to | Angelos D. Keromytis | |
1999-08-14 | note support for ASIX 88140A/88141-based PCI Ethernet adapters | Aaron Campbell | |
1999-08-14 | regen | Aaron Campbell | |
1999-08-14 | add ASIX88141 | Aaron Campbell | |
1999-08-14 | Driver for ASIX88140A/88141 Ethernet; from FreeBSD | Aaron Campbell | |
1999-08-14 | Add -c flag that uses DIOCRLDINFO to clear (and update) the in-core label. | Todd C. Miller | |
1999-08-14 | Typo fix. | Hakan Olsson | |
1999-08-14 | sync | Federico G. Schwindt | |
1999-08-14 | Support for 3CXEM556B-INT. | Federico G. Schwindt | |
1999-08-14 | dynamic chunks, snake style | Todd T. Fries | |
1999-08-14 | debugging off by default. ok mickey@ | Todd T. Fries | |
1999-08-14 | update | Michael Shalayeff | |
1999-08-14 | update | Michael Shalayeff | |
1999-08-14 | fix debug printfs, ipl name | Michael Shalayeff | |
1999-08-14 | this work, smirk, rock, sock (rhymes by fries@ ;) | Michael Shalayeff | |
1999-08-14 | cpu has interrupt | Michael Shalayeff | |
1999-08-14 | next try to print cpu model number. | Michael Shalayeff | |
attach clock interrupt. | |||
1999-08-14 | clock_intr() | Michael Shalayeff | |
1999-08-14 | s/STACK_GROWS_UP/MACHINE_STACK_GROWS_UP/ | Michael Shalayeff | |
1999-08-14 | proper ipl values. | Michael Shalayeff | |
spl's do not mask Ibit anymore, prevent int lossage. | |||
1999-08-14 | littel perfomance rearngement, also cr23 and cr28 for ddb | Michael Shalayeff | |
1999-08-14 | proper breakpoint instruction | Michael Shalayeff | |
1999-08-14 | better CLKF_BASEPRI | Michael Shalayeff | |
1999-08-14 | clock_intr() proto | Michael Shalayeff | |
1999-08-14 | bigger stack frame size | Michael Shalayeff | |
1999-08-14 | proper debugging ifdefs | Michael Shalayeff | |
1999-08-14 | more registers to print and play | Michael Shalayeff | |
1999-08-14 | enable interrupts after device configuration, provide cold_hook() for things ↵ | Michael Shalayeff | |
like lasi to enable power management | |||
1999-08-14 | export cr23 | Michael Shalayeff | |
1999-08-14 | rework interruptions framewrok a little to use that space in the IV table. | Michael Shalayeff | |
cpu_switch, setrunqueu, remrunqueu now tested and seem working. trapall needs some more work for user mode. optimizations here and there. | |||
1999-08-14 | do the clock interrupt the narrow way. | Michael Shalayeff | |
fix soft interrupts. some more debugs and other fixes. | |||
1999-08-13 | Work with newest version of OpenSSL. | Angelos D. Keromytis | |
1999-08-13 | Correct ssl include file(s) path. | Angelos D. Keromytis | |
1999-08-13 | Oops, missed updating distfile version. | Angelos D. Keromytis | |
1999-08-13 | Update the include paths. | Angelos D. Keromytis | |
1999-08-13 | sync | Theo de Raadt | |
1999-08-13 | AmbiCom AMB8002T | Theo de Raadt | |
1999-08-13 | well of course it is Ethernet... | Theo de Raadt | |
1999-08-13 | Use macros defined in pcmciavar.h. | Federico G. Schwindt | |
1999-08-13 | Xircom NetWave support. Donations welcomed. | Federico G. Schwindt | |
1999-08-13 | shutdown hook exists for the wrong reasons | Theo de Raadt | |
1999-08-13 | some repairs | Aaron Campbell | |
1999-08-13 | Missing comma | Todd C. Miller | |
1999-08-13 | shorten dmesg output. | Federico G. Schwindt | |
1999-08-13 | Display the correct name. Thanks niklas@. | Federico G. Schwindt | |
1999-08-13 | Remove unncessary printfs as well as NetBSD ifdefs. | Federico G. Schwindt | |
Make dmesg output shorter. | |||
1999-08-13 | Better fix for fdesc/procfs panic. | Constantine Sapuntzakis | |