Revision tags: release/7.0.0_cvs, release/7.0.0, release/6.3.0_cvs, release/6.3.0 |
|
#
cfe127f5 |
| 26-Oct-2007 |
Julian Elischer <julian@FreeBSD.org> |
Aparrently MACXOCOMLEN exisrts only on my machine
|
#
7ab24ea3 |
| 26-Oct-2007 |
Julian Elischer <julian@FreeBSD.org> |
Introduce a way to make pure kernal threads. kthread_add() takes the same parameters as the old kthread_create() plus a pointer to a process structure, and adds a kernel thread to that process.
kpro
Introduce a way to make pure kernal threads. kthread_add() takes the same parameters as the old kthread_create() plus a pointer to a process structure, and adds a kernel thread to that process.
kproc_kthread_add() takes the parameters for kthread_add, plus a process name and a pointer to a pointer to a process instead of just a pointer, and if the proc * is NULL, it creates the process to the specifications required, before adding the thread to it.
All other old kthread_xxx() calls return, but act on (struct thread *) instead of (struct proc *). One reason to change the name is so that any old kernel modules that are lying around and expect kthread_create() to make a process will not just accidentally link.
fix top to show kernel threads by their thread name in -SH mode add a tdnam formatting option to ps to show thread names.
make all idle threads actual kthreads and put them into their own idled process. make all interrupt threads kthreads and put them in an interd process (mainly for aesthetic and accounting reasons) rename proc 0 to be 'kernel' and it's swapper thread is now 'swapper'
man page fixes to follow.
show more ...
|
#
84a0b303 |
| 21-Sep-2007 |
Jeff Roberson <jeff@FreeBSD.org> |
- When using kvm use the new conversion method to derive swtime.
Approved by: re
|
#
b61ce5b0 |
| 17-Sep-2007 |
Jeff Roberson <jeff@FreeBSD.org> |
- Move all of the PS_ flags into either p_flag or td_flags. - p_sflag was mostly protected by PROC_LOCK rather than the PROC_SLOCK or previously the sched_lock. These bugs have existed for some
- Move all of the PS_ flags into either p_flag or td_flags. - p_sflag was mostly protected by PROC_LOCK rather than the PROC_SLOCK or previously the sched_lock. These bugs have existed for some time. - Allow swapout to try each thread in a process individually and then swapin the whole process if any of these fail. This allows us to move most scheduler related swap flags into td_flags. - Keep ki_sflag for backwards compat but change all in source tools to use the new and more correct location of P_INMEM.
Reported by: pho Reviewed by: attilio, kib Approved by: re (kensmith)
show more ...
|
#
8ef6b142 |
| 01-Jun-2007 |
Jeff Roberson <jeff@FreeBSD.org> |
- Work-around the already partially broken rusage support in kvm by completely disabling it until a full solution is agreed upon.
Pointy hat to: me
|
Revision tags: release/6.2.0_cvs, release/6.2.0 |
|
#
67e40531 |
| 08-Jan-2007 |
Warner Losh <imp@FreeBSD.org> |
Remove the advertising clause. UCB did this some time ago, but these files were never updated to reflect that.
MFC After: 2 days
|
#
2d2f0b92 |
| 06-Dec-2006 |
Julian Elischer <julian@FreeBSD.org> |
remove already commented out code
|
#
8460a577 |
| 26-Oct-2006 |
John Birrell <jb@FreeBSD.org> |
Make KSE a kernel option, turned on by default in all GENERIC kernel configs except sun4v (which doesn't process signals properly with KSE).
Reviewed by: davidxu@
|
#
42e43591 |
| 26-Jul-2006 |
Yaroslav Tykhiy <ytykhiy@gmail.com> |
Rev. 1.44 of this file didn't introduce a right solution, but we don't seem to have one yet, so just add an XXX comment on passing rux_runtime to bintime2timeval() wrongly.
Spotted by: gcc(1) (warni
Rev. 1.44 of this file didn't introduce a right solution, but we don't seem to have one yet, so just add an XXX comment on passing rux_runtime to bintime2timeval() wrongly.
Spotted by: gcc(1) (warning)
show more ...
|
Revision tags: release/5.5.0_cvs, release/5.5.0, release/6.1.0_cvs, release/6.1.0, release/6.0.0_cvs, release/6.0.0 |
|
#
2cfe3fda |
| 24-Jun-2005 |
Peter Wemm <peter@FreeBSD.org> |
Set ki_tdev to NODEV rather than NULL.
Approved by: re
|
Revision tags: release/5.4.0_cvs, release/5.4.0 |
|
#
f8197bf0 |
| 20-Mar-2005 |
Pawel Jakub Dawidek <pjd@FreeBSD.org> |
Make kvm(3) aware of ki_jid field.
Reviewed by: gad MFC after: 3 days
|
#
9c4fb661 |
| 15-Mar-2005 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Dike out unwarranted reference to si_udev.
|
Revision tags: release/4.11.0_cvs, release/4.11.0 |
|
#
7a62aa8a |
| 20-Nov-2004 |
David Schultz <das@FreeBSD.org> |
In preparation to remove U areas, don't refer to p_uarea in libkvm.
Reviewed by: arch@
|
#
668e800b |
| 13-Nov-2004 |
Christian S.J. Peron <csjp@FreeBSD.org> |
Remove un-needed call to close(2). The fd that close is being called on is invalid and has no use.
Reviewed by: smkelly
|
Revision tags: release/5.3.0_cvs, release/5.3.0 |
|
#
2bdd5609 |
| 11-Oct-2004 |
Peter Wemm <peter@FreeBSD.org> |
Belatedly catch up with the dev_t/cdev changes from a few months back. Extract the struct cdev pointer and the tty device from inside rather than incorrectly casting the 'struct cdev *' pointer to a
Belatedly catch up with the dev_t/cdev changes from a few months back. Extract the struct cdev pointer and the tty device from inside rather than incorrectly casting the 'struct cdev *' pointer to a 'dev_t' int. Not that this was particularly important since it was only used for reading vmcore files.
show more ...
|
#
09ff687c |
| 06-Oct-2004 |
John Baldwin <jhb@FreeBSD.org> |
- Fix the compile to chase the p_rux changes. - Add a comment noting that the ru_[us]times values being read aren't actually valid and need to be computed from the raw values.
Submitted by: many (
- Fix the compile to chase the p_rux changes. - Add a comment noting that the ru_[us]times values being read aren't actually valid and need to be computed from the raw values.
Submitted by: many (1)
show more ...
|
#
ed062c8d |
| 05-Sep-2004 |
Julian Elischer <julian@FreeBSD.org> |
Refactor a bunch of scheduler code to give basically the same behaviour but with slightly cleaned up interfaces.
The KSE structure has become the same as the "per thread scheduler private data" stru
Refactor a bunch of scheduler code to give basically the same behaviour but with slightly cleaned up interfaces.
The KSE structure has become the same as the "per thread scheduler private data" structure. In order to not make the diffs too great one is #defined as the other at this time.
The KSE (or td_sched) structure is now allocated per thread and has no allocation code of its own.
Concurrency for a KSEGRP is now kept track of via a simple pair of counters rather than using KSE structures as tokens.
Since the KSE structure is different in each scheduler, kern_switch.c is now included at the end of each scheduler. Nothing outside the scheduler knows the contents of the KSE (aka td_sched) structure.
The fields in the ksegrp structure that are to do with the scheduler's queueing mechanisms are now moved to the kg_sched structure. (per ksegrp scheduler private data structure). In other words how the scheduler queues and keeps track of threads is no-one's business except the scheduler's. This should allow people to write experimental schedulers with completely different internal structuring.
A scheduler call sched_set_concurrency(kg, N) has been added that notifies teh scheduler that no more than N threads from that ksegrp should be allowed to be on concurrently scheduled. This is also used to enforce 'fainess' at this time so that a ksegrp with 10000 threads can not swamp a the run queue and force out a process with 1 thread, since the current code will not set the concurrency above NCPU, and both schedulers will not allow more than that many onto the system run queue at a time. Each scheduler should eventualy develop their own methods to do this now that they are effectively separated.
Rejig libthr's kernel interface to follow the same code paths as linkse for scope system threads. This has slightly hurt libthr's performance but I will work to recover as much of it as I can.
Thread exit code has been cleaned up greatly. exit and exec code now transitions a process back to 'standard non-threaded mode' before taking the next step. Reviewed by: scottl, peter MFC after: 1 week
show more ...
|
#
e1f91dbd |
| 28-Jul-2004 |
Alexander Kabaev <kan@FreeBSD.org> |
Remove stale code protected by #ifdef sparc. GCC 3.4.x adds sparc to predefined symbols on all SPARC platforms and FreeBSD follows the crowd.
|
#
1566329b |
| 23-Jun-2004 |
Garance A Drosehn <gad@FreeBSD.org> |
Fix a test of bit-flag "P_SA" by adding parenthesis around the expression.
Submitted by: Cyrille Lefevre
|
#
b7e7c21a |
| 23-Jun-2004 |
Garance A Drosehn <gad@FreeBSD.org> |
Replace a call to strncpy() with a call to strlcpy()
Submitted by: Cyrille Lefevre
|
#
276de18c |
| 19-Jun-2004 |
Garance A Drosehn <gad@FreeBSD.org> |
Fill in the some new fields 'struct kinfo_proc', namely ki_childstime, ki_childutime, and ki_emul. Also uses the timeradd() macro to correct the calculation of ki_childtime. That will correct the v
Fill in the some new fields 'struct kinfo_proc', namely ki_childstime, ki_childutime, and ki_emul. Also uses the timeradd() macro to correct the calculation of ki_childtime. That will correct the value returned when ki_childtime.tv_usec > 1,000,000.
This also implements a new KERN_PROC_GID option for kvm_getprocs(). It also implements the KERN_PROC_RGID and KERN_PROC_SESSION options which were added to sys/kern/kern_proc.c revision 1.203.
PR: bin/65803 (a very tiny piece of the PR) Submitted by: Cyrille Lefevre
show more ...
|
#
f3732fd1 |
| 17-Jun-2004 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Second half of the dev_t cleanup.
The big lines are: NODEV -> NULL NOUDEV -> NODEV udev_t -> dev_t udev2dev() -> findcdev()
Various minor adjustments including handling of userland access to ke
Second half of the dev_t cleanup.
The big lines are: NODEV -> NULL NOUDEV -> NODEV udev_t -> dev_t udev2dev() -> findcdev()
Various minor adjustments including handling of userland access to kernel space struct cdev etc.
show more ...
|
#
30105366 |
| 16-Jun-2004 |
Julian Elischer <julian@FreeBSD.org> |
This library has to change whenever the kernel process structure changes.
|
Revision tags: release/4.10.0_cvs, release/4.10.0 |
|
#
5aaa432d |
| 28-Mar-2004 |
Jens Schweikhardt <schweikh@FreeBSD.org> |
Fix a warning: compare u_long ps_strings to 0 instead of NULL.
|
Revision tags: release/5.2.1_cvs, release/5.2.1 |
|
#
694127f8 |
| 22-Feb-2004 |
Daniel Eischen <deischen@FreeBSD.org> |
Teach kvm_getprocs() to recognize a sysctl flag for including threads.
|