summaryrefslogtreecommitdiffstats
path: root/sys
Commit message (Collapse)AuthorAgeFilesLines
* fixed to support pc98nyan2001-10-281-0/+5
|
* Remove duplicate apm entry for pc98nyan2001-10-281-2/+1
|
* Removed pmc_isa_identify function. It is not needed.nyan2001-10-282-26/+0
| | | | Submitted by: takawata
* sc_lasttime and sc_starttime are time_t's, not long's.dillon2001-10-271-2/+2
|
* Only provide function information in compile environments that supportmike2001-10-271-0/+5
| | | | | | | the C99 variable __func__ and never for C++. Provide a more meaningful example in the assert(3) manual. Reviewed by: asmodai, bde
* syncdelay, filedelay, dirdelay, metadelay are ints, not time_t's,dillon2001-10-272-8/+4
| | | | and can also be made static.
* Nudge the axe a bit closer to cdevsw[]:phk2001-10-272-2/+66
| | | | | | | | | | | | Make it a panic to repeat make_dev() or destroy_dev(), this check should maybe be neutered when -current goes -stable. Whine if devsw() is called on anon dev_t's in a devfs system. Make a hack to avoid our lazy-eval disk code triggering the above whine. Fix the multiple make_dev() in disk code by making ${disk}${unit}s${slice} an alias/symlink to ${disk}${unit}s${slice}c
* Eliminate the prefix parameter to linux_emul_find(), which was alwaysdes2001-10-274-11/+9
| | | | | | | | linux_emul_path anyway. Linux_emul_find() has interesting bugs in its prefix handling (which luckily are not currently exploitable); this commit is preliminary to an attempt at cleaning it up. Approved by: marcel
* Add a P_INEXEC flag that indicates that the process has called execve() anddes2001-10-273-15/+30
| | | | | | | | it has not yet returned. Use this flag to deny debugging requests while the process is execve()ing, and close once and for all any race conditions that might occur between execve() and various debugging interfaces. Reviewed by: jhb, rwatson
* Implement elf_reloc. This makes klds work.jake2001-10-272-13/+259
| | | | Obtained from: netbsd
* Handle instruction access mmu miss faults in kernel mode. These can onlyjake2001-10-273-2/+95
| | | | be generated by non-preloaded klds.
* o Modify copyright date format for improved consistency: use '-' forrwatson2001-10-272-2/+2
| | | | year ranges, rather than a comma-delimited list of years.
* o Update copyright dates.rwatson2001-10-274-4/+4
| | | | Obtained from: TrustedBSD Project
* o Improve style(9) compliance following KSE modifications. In particular,rwatson2001-10-273-54/+57
| | | | | | | | | strip the space from '( struct thread *...', wrap long lines. o Remove an unneeded comment on the topic of no lock being required as part of the NDINIT() in __acl_get_file(), as it's really not required there. Obtained from: TrustedBSD Project
* o Althought this is not specified in POSIX.1e, the UFS ACL implementationrwatson2001-10-271-1/+6
| | | | | | | | | | | | | | | | coerces the deletion of a default ACL on a directory when no default ACL EA is present to success. Because the UFS EA implementation doesn't disinguish the EA failure modes "that EA name has not been administratively enabled" from "that EA name has no defined data", there's a potential conflict in error return values. Normally, the lack of administratively configured EA support is coerced to EOPNOTSUPP to indicate that ACLs are not available; in this case, it is possible to get a successful return, even if ACLs are not available because EA support for them has not been enabled. Expand the comment in ufs_setacl() to identify this case. Obtained from: TrustedBSD Project
* o Clarify a comment about the locking condition of the vnode upon exitrwatson2001-10-271-9/+15
| | | | | | | | | | from ufs_extattr_enable_with_open(). o Print auto-start notifications if (bootverbose). This was previously commented out since it didn't know how to check for bootverbose. o Drop in comments throughout indicating where ENOENT should be replaced with ENOATTR once that is available. Obtained from: TrustedBSD Project
* o The comment about ordering the destruction of the lock and the removal ofrwatson2001-10-271-1/+1
| | | | | | | the flag indicating that the structure was initialized didn't need an XXX, since it didn't need fixing. Obtained from: TrustedBSD Project
* o Wrap a number of long lines of code, many of which were introducedrwatson2001-10-271-9/+16
| | | | | | due to KSE-related (p) expansions. Obtained from: TrustedBSD Project
* Since namespace support was added to the UFS extended attributerwatson2001-10-271-9/+7
| | | | | | | | | | | | | | | implementation to replace single-character namespace prefixes, '$' is no longer an invalid attribute name, and the namespace is relevant to validity determination. o Remove '$' case from ufs_extattr_valid_attrname() o Add attrnamespace argument to ufs_extattr_valid_attrname(), and fill out appropriately. Currently no decisions are made based on the namespace argument, but may be in the future. Obtained from: TrustedBSD Project
* Enable round-robin arbitration between transmit and receive unitluigi2001-10-272-0/+10
| | | | | | | | in the 21143, instead of giving priority to the receive unit. This gives a 10-15% performance improvement in the forwarding rate under heavy load. Reviewed-by: Bill Paul
* Support the "install.debug" and "reinstall.debug" targets for kernel modules.des2001-10-277-18/+22
| | | | | | | | | Small tweaks to kldxref may be necessary to avoid the surprising (but harm- less) behaviour of 'kldload foo' loading foo.ko.debug instead of foo.ko if it is present in the kernel directory. Approved by: a week of silence on -arch MFC after: 2 weeks
* Force the length of the sockaddr to be correct for AF_INET and AF_INET6fenner2001-10-261-2/+23
| | | | | | in bind() and connect(). Linux doesn't care if the length of the sockaddr matches its address family; FreeBSD does. This fixes the known issues with the resolver in linux_base-7.
* Add 'ciss'.msmith2001-10-261-0/+1
|
* Add mtx_lock_giant() and mtx_unlock_giant() wrappers for sysctl managementdillon2001-10-264-6/+101
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | of Giant during the Giant unwinding phase, and start work on instrumenting Giant for the file and proc mutexes. These wrappers allow developers to turn on and off Giant around various subsystems. DEVELOPERS SHOULD NEVER TURN OFF GIANT AROUND A SUBSYSTEM JUST BECAUSE THE SYSCTL EXISTS! General developers should only considering turning on Giant for a subsystem whos default is off (to help track down bugs). Only developers working on particular subsystems who know what they are doing should consider turning off Giant. These wrappers will greatly improve our ability to unwind Giant and test the kernel on a (mostly) subsystem by subsystem basis. They allow Giant unwinding developers (GUDs) to emplace appropriate subsystem and structural mutexes in the main tree and then request that the larger community test the work by turning off Giant around the subsystem(s), without the larger community having to mess around with patches. These wrappers also allow GUDs to boot into a (more likely to be) working system in the midst of their unwinding work and to test that work under more controlled circumstances. There is a master sysctl, kern.giant.all, which defaults to 0 (off). If turned on it overrides *ALL* other kern.giant sysctls and forces Giant to be turned on for all wrapped subsystems. If turned off then Giant around individual subsystems are controlled by various other kern.giant.XXX sysctls. Code which overlaps multiple subsystems must have all related subsystem Giant sysctls turned off in order to run without Giant.
* minor commenting based on syscall environmentdillon2001-10-261-0/+6
|
* Add VOP_IOCTL support, and fix a bug that would cause a panic if a file ordes2001-10-262-4/+58
| | | | symlink lacked a filler function.
* - Change the taskqueue locking to protect the necessary parts of a taskjhb2001-10-266-62/+13
| | | | | | | | while it is on a queue with the queue lock and remove the per-task locks. - Remove TASK_DESTROY now that it is no longer needed. - Go back to inlining TASK_INIT now that it is short again. Inspired by: dfr
* Add APM compatibility feature to ACPI.iwasaki2001-10-2610-11/+776
| | | | | | | | | | | | | | | | | This emulates APM device node interface APIs (mainly ioctl) and provides APM services for the applications. The goal is to support most of APM applications without any changes. Implemented ioctls in this commit are: - APMIO_SUSPEND (mapped ACPI S3 as default but changable by sysctl) - APMIO_STANDBY (mapped ACPI S1 as default but changable by sysctl) - APMIO_GETINFO and APMIO_GETINFO_OLD - APMIO_GETPWSTATUS With above, many APM applications which get batteries, ac-line info. and transition the system into suspend/standby mode (such as wmapm, xbatt) should work with ACPI enabled kernel (if ACPI works well :-) Reviewed by: arch@, audit@ and some guys
* Move recently added procedure which was incorrectly placed within andillon2001-10-261-17/+16
| | | | #ifdef DDB block.
* Detach the prom console when platform.cons_init is called. This seemsmjacob2001-10-263-2/+15
| | | | | | | | | to avoid most of the double character kernel goop we've been having by having both a prom console && a normal console. Was not able to test with graphics head. Hope this doesn't break anything. Reviewed by: silence on alpha
* Make cdevsw[] static.phk2001-10-261-1/+1
|
* Reporting device drivers by traversing cdevsw[] is at best a hackphk2001-10-261-2/+6
| | | | | | | | | | | which may or may not return something which is partially right. Disable the "devices" file until we find out what this is needed for, and what exactly those apps need. This will allow cdevsw to become static again. Approved by: DES
* Finish the asbestos suited move of $mach/conf/*.$mach to conf/*.$mach.ru2001-10-266-6/+8
| | | | Fix some more typos.
* Add a per-thread ucred reference for syscalls and synchronous traps fromjhb2001-10-2610-61/+164
| | | | | | | | | userland. The per thread ucred reference is immutable and thus needs no locks to be read. However, until all the proc locking associated with writes to p_ucred are completed, it is still not safe to use the per-thread reference. Tested on: x86 (SMP), alpha, sparc64
* Add locking to taskqueues. There is one mutex per task, one mutex perjhb2001-10-266-44/+110
| | | | | | | | queue, and a mutex to protect the global list of taskqueues. The only visible change is that a TASK_DESTROY() macro has been added to mirror the TASK_INIT() macro to destroy a task before it is free'd. Submitted by: Andrew Reiter <awr@watson.org>
* Use msleep() to avoid lost wakeup's instead of doing an ineffectivejhb2001-10-261-15/+5
| | | | | | | | splhigh() before the mtx_unlock and tsleep(). The splhigh() was probably correct in the original code using simplelocks but is not correct in 5.0-current. Noticed by: Andrew Reiter <awr@FreeBSD.org>
* Implement kern.maxvnodes. adjusting kern.maxvnodes now actually has adillon2001-10-267-57/+145
| | | | | | | | | | | | | | | | real effect. Optimize vfs_msync(). Avoid having to continually drop and re-obtain mutexes when scanning the vnode list. Improves looping case by 500%. Optimize ffs_sync(). Avoid having to continually drop and re-obtain mutexes when scanning the vnode list. This makes a couple of assumptions, which I believe are ok, in regards to vnode stability when the mount list mutex is held. Improves looping case by 500%. (more optimization work is needed on top of these fixes) MFC after: 1 week
* Add missing TAILQ_INSERT_TAIL's which somehow didn't get comitted withdillon2001-10-251-0/+2
| | | | the recent vnode cleanup.
* Default to not performing ufs_dirhash's extensive directory-blockiedowse2001-10-251-1/+1
| | | | | | | | | | | | | sanity check after every directory modification. This check can be re-enabled at any time by setting the sysctl "vfs.ufs.dirhash_docheck" to 1. This group of sanity tests was there to ensure that any UFS_DIRHASH bugs could be caught by a panic before a potentially corrupted directory block would be written to disk. It has served its main purpose now, so disable it in the interest of performance. MFC after: 1 week
* In cluster_rbuild(), 'size' had better match buf->b_bcount and buf->b_bufsizedillon2001-10-251-2/+14
| | | | | | | or the cluster will not be properly merged. Dup the code from cluster_wbuild() and add some printf()s to see if bad cases are present. MFC after: 2 weeks
* Use TASK_INIT to initialize taskqueue task instead of violating thejhb2001-10-251-6/+6
| | | | | | abstraction. Submitted by: Andrew Reiter <arr@watson.org>
* Remove wx driver, which got recently removed.asmodai2001-10-251-1/+0
| | | | Submitted by: revamped kernincludes.sh
* Unbreak NEWCARD by removing options NFS and replacing it with theasmodai2001-10-251-1/+2
| | | | | | new NFSCLIENT and NFSSERVER options. Submitted by: revamped kernincludes.sh
* Aargh. I really shouldn't do late night commits. Remove a floating pointjlemon2001-10-251-1/+1
| | | | multiply, and replace it with a close equivalent. 1.488 =~ 1.5
* Now that nfsm_reply() does not usually set 'error' to 0, we neediedowse2001-10-251-0/+1
| | | | | | | | | | | | to do it explicitly in nfsrv_noop so that the reply gets sent back to the client. This fixes the generation of a selection of RPC error replies (RPC_PROGMISMATCH, RPC_PROGUNAVAIL, RPC_PROCUNAVAIL etc.) that are used by some clients to detect support for optional protocols and features. Reviewed by: peter Reported by: Thomas Quinot <quinot@inf.enst.fr> PR: kern/31479
* Defs for three (unused so far) bits in PCI command/status registerluigi2001-10-252-6/+6
| | | | were off by one bit.
* Fix an inverted test csae. Success of getenv() is determined by a returnjhb2001-10-251-1/+1
| | | | | | | value of !NUL rather than NUL. Submitted by: luigi Pointy hat to: jhb
* Currently no code does a CROSSJUMP() to sw1a, so we don't need ajhb2001-10-253-6/+0
| | | | | | CROSSJUMPTARGET() for it. Submitted by: bde
* Use %ecx instead of %ebx for the scratch register while updating %dr7 sincejhb2001-10-253-15/+9
| | | | | | | %ecx isn't a call safe register and thus we don't have to save and restore it. Submitted by: bde
* - Fix typo in comment from previous revision.jhb2001-10-253-9/+12
| | | | | | | | - Fix a bug in the LDT changes where the wrong argument was passed to set_user_ldt() from cpu_switch(). The bug was passing a pointer to the ldt, but set_user_ldt() takes a pointer to the process' mdproc structure. Submitted by: bde
OpenPOWER on IntegriCloud