summaryrefslogtreecommitdiffstats
path: root/sys
Commit message (Collapse)AuthorAgeFilesLines
* Move CPU_ABSENT() macro to smp.h, where it belongs anyway. It will bebmilekic2001-08-012-16/+13
| | | | | | | | | | | defined to 0 in the non-SMP case, which very much makes sense as it permits its usage in per-CPU initialization loops (for an example, check out subr_mbuf.c). Further, on a UP system, make mb_alloc always use the first per-CPU container, regardless of cpuid (i.e. remove reliability on cpuid in the UP case). Requested by: alfred
* Update our bpf.h with tcpdump.org's new DLT_ types.fenner2001-07-311-2/+82
| | | | Use our bpf.h instead of tcpdump.org's to build libpcap.
* Apply the cluebat to myself and undo the await() -> mawait() rename. Thejhb2001-07-312-33/+16
| | | | | | | | | | | | | | | | | | | | asleep() and await() functions split the functionality of msleep() up into two halves. Only the asleep() half (which is what puts the process on the sleep queue) actually needs the lock usually passed to msleep() held to prevent lost wakeups. await() does not need the lock held, so the lock can be released prior to calling await() and does not need to be passed in to the await() function. Typical usage of these functions would be as follows: mtx_lock(&foo_mtx); ... do stuff ... asleep(&foo_cond, PRIxx, "foowt", hz); ... mtx_unlock&foo_mtx); ... await(-1, -1); Inspired by: dillon on the couch at Usenix
* Add a safety belt to mawait() for the (cold || panicstr) case identical tojhb2001-07-311-0/+12
| | | | | | | the one in msleep() such that we return immediately rather than blocking. Submitted by: peter Prodded by: sheldonh
* Add in a hack to support IBM "El Torito" CD-ROM booting BIOS's which expectjhb2001-07-316-6/+92
| | | | | | | | | | | | | the first sector of the emulated floppy to contain a valid MS-DOS BPB that it can modify. Since boot1 is the first sector of boot.flp, this resulted in the BIOS overwriting part of boot1: specifically the function used to read in sectors from the disk. Submitted by: Mark Peek <mark@whistle.com> Submitted by: Doug Ambrisko <ambrisko@ambrisko.com> PR: i386/26382 Obtained from: NetBSD, OpenBSD (the example BPB) MFC after: 1 month
* If we have already panic'd then don't bother enforcing mutex asserts asjhb2001-07-312-0/+6
| | | | | | | things are pretty much shot already and all panic'ing does is hurt our chances of getting a dump. Inspired by: sheldonh
* - Fix panicstr checks to explicitly check against NULL.jhb2001-07-311-8/+8
| | | | | | - Add a few more panicstr checks so that we don't panic recursively. Requested by: sheldonh (2)
* o Modify p_candebug() such that there is no longer automatic acceptancerwatson2001-07-311-3/+0
| | | | | | | | | | of debugging the current process when that is in conflict with other restrictions (such as jail, unprivileged_procdebug_permitted, etc). o This corrects anomolies in the behavior of kern.security.unprivileged_procdebug_permitted when using truss and ktrace. The theory goes that this is now safe to use. Obtained from: TrustedBSD Project
* Re-order things slightly in the RX handler for VLAN support: we needwpaul2001-07-311-5/+4
| | | | | | | call vlan_input_tag() after stripping the ether header from the frame with m_adj(), not before. Noticed by: Brooks Davis <brooks@one-eyed-alien.net>
* bsh and bst are unused in softc, except for setting them. We do use theimp2001-07-312-6/+4
| | | | bsh and bst in the pcic_slot structures.
* o Introduce new kern.security sysctl tree for kernel security policyrwatson2001-07-311-3/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | MIB entries. o Relocate kern.suser_permitted to kern.security.suser_permitted. o Introduce new kern.security.unprivileged_procdebug_permitted, which (when set to 0) prevents processes without privilege from performing a variety of inter-process debugging activities. The default is 1, to provide current behavior. This feature allows "hardened" systems to disable access to debugging facilities, which have been associated with a number of past security vulnerabilities. Previously, while procfs could be unmounted, other in-kernel facilities (such as ptrace()) were still available. This setting should not be modified on normal development systems, as it will result in frustration. Some utilities respond poorly to failing to get the debugging access they require, and error response by these utilities may be improved in the future in the name of beautification. Note that there are currently some odd interactions with some facilities, which will need to be resolved before this should be used in production, including odd interactions with truss and ktrace. Note also that currently, tracing is permitted on the current process regardless of this flag, for compatibility with previous authorization code in various facilities, but that will probably change (and resolve the odd interactions). Obtained from: TrustedBSD Project
* Fix typo where I assigned the bus tag and not the bus handled. Itimp2001-07-311-1/+1
| | | | | | appears that this may be unused, but I'll keep it for the moment. Noticed by: Shizuka Kudo <shizukakudo_99@yahoo.com>
* GC some obsolete alpha code.jhb2001-07-311-390/+1
|
* If LCP proto-rej is received, drop the protocol mentioned by the message.ume2001-07-311-1/+59
| | | | | | | | This is to be friendly with non-IPv6 peer (If the peer complains due to lack of IPv6CP, drop IPv6CP). This basically implements "RXJ+" state transition in the RFC. Obtained from: NetBSD
* A bunch of interrupt related cleanup.imp2001-07-313-67/+98
| | | | | | | | | | | | | o Move PIOCSRESOURCE from pccard to pcic so the kernel can give pccardd better hints as to what resources to use. o Implement an undocumented hw.pcic.interrupt_route to allow people that need to do so to route their interrupts in a non-standard way. o Only preallocate a resource in probe if we're routing via pci. o If we aren't routing via pci, then set the irq to use explicitly to defeat the automatic IRQ routing of the pci layer. This, with the pccardd code should be close to what can be committed to -stable.
* Move pcic_override_irq from pcic_isa, to pcic.imp2001-07-313-9/+8
|
* Add CLPD6832_BCR_ISA_IRQ definition for ISA routing of interrupts.imp2001-07-311-3/+3
| | | | Minor commentary tweaking.
* Flesh out the sparc64 port considerably. This contains:jake2001-07-3146-453/+6905
| | | | | | | | | - mostly complete kernel pmap support, and tested but currently turned off userland pmap support - low level assembly language trap, context switching and support code - fully implemented atomic.h and supporting cpufunc.h - some support for kernel debugging with ddb - various header tweaks and filling out of machine dependent structures
* Add skeleton machine dependent headers and c files for a port of freebsdjake2001-07-3140-0/+3068
| | | | | | | | | | | | | | | | | | | | to a new architecture. This is the base of the sparc64 port, but contains limited machine dependent code, and can be used a base for ports. Included are: - standard machine dependent headers, tweaked for a 64 bit, big endian architecture, including empty versions of all the machine dependent structures - a machine independent atomic.h, which can be used until a port has support for interrupts and the operations really need to be atomic - stub versions of all the machine dependent functions, which panic when called and print out the name of the function that needs to be implemented. functions which are normally in assembly files are not included, but this should reduce the number of different undefined references on the first few compiles from hundreds to 5 or 6 Given minimal startup code and console support it should be trivial to make this compile and run the first few sysinits on almost any architecture. Requested by: alfred, imp, jhb
* Machine dependent ifdefs for sparc64.jake2001-07-313-2/+5
|
* Oops. Last commit to vm_object.c should have got these files too.jake2001-07-313-8/+4
| | | | | | | Remove the use of atomic ops to manipulate vm_object and vm_page flags. Giant is required here, so they are superfluous. Discussed with: dillon
* Remove the use of atomic ops to manipulate vm_object and vm_page flags.jake2001-07-311-11/+6
| | | | | | Giant is required here, so they are superfluous. Discussed with: dillon
* Don't try to find an eventhandler list if the list of lists hasn'tjake2001-07-311-0/+3
| | | | been initialized yet.
* Don't try to print a field that doesn't exist; in usually commentedjake2001-07-311-2/+2
| | | | out debugging code.
* Use a machine dependent type, Elf_Hashelt, for the elements of the elfjake2001-07-317-10/+65
| | | | | | | | dynamic symbol table buckets and chains. The sparc64 toolchain uses 32 bit .hash entries, unlike other 64 bits architectures (alpha), which use 64 bit entries. Discussed with: dfr, jdp
* Removed PLIP support.nyan2001-07-312-1312/+0
|
* Make the openfirmware functions work on 64 bit architectures by usingjake2001-07-312-237/+241
| | | | | | | a standard cell_t type for the fields of all argument structs. Also make ihandle_t and phandle_t unsigned to avoid sign extension problems. Approved by: benno
* Quiet uninitialized variable warning (also a bug).jake2001-07-311-0/+2
|
* Check the filehandle size when mounting.peter2001-07-302-0/+4
| | | | Obtained from: Constantine Sapuntzakis <csapuntz@openbsd.org>
* Fix obsolete code.asmodai2001-07-301-5/+0
| | | | | | | | FreeBSD _does_ define ENOMSG, so no need for checking if we support it. Inspired by PR: 22470 Which was submitted by: Bjorn Tornqvist <bjorn@west.se> MFC after: 1 week
* fix import/merge related code problemsdarrenr2001-07-301-6/+3
|
* The current resource buffer returned from an interrupt link devicemsmith2001-07-302-14/+40
| | | | | | | in the case where there are no interrupts routed for it does not contain enough space to use it to route an interrupt. In the case where we need to route an interrupt, throw away the returned buffer and create a new one containing the interrupt we want.
* - Prevent the ACPI code from being loaded as a module other than atmsmith2001-07-302-11/+123
| | | | | | | | | | | boot time. Loading as a module once the system is up and running doesn't make any sense. - Fix acpi_FindIndexedResource (it would only check the first resource), changes the calling interface. - Add a new helper function (acpi_AppendBufferResource) to help building buffers containing resources.
* Minor updates (no functional changes)msmith2001-07-301-86/+82
| | | | | | | | - Remove the beer-ware license (reqested by phk) - Reorganise so that the PIIX4 workaround code is kept together, and switch the workaround function via the timecounter struct, saving a compare in the read-timecounter codepath. Also indicate that the workaround is active by changing the timecounter hardware string.
* Don't use a buffer for the state info from the TI chips. Just printimp2001-07-301-14/+13
| | | | | it directly. Also, minor style(9) nits near one or two of these sites.
* Redo how we manage SCSI device settings- have a 3rd flags (nvram) that recordsmjacob2001-07-301-52/+47
| | | | | | | | | | | either what's in NVRAM or what the safe defaults would be if we lack NVRAM. Then we rename cur_XXXX to actv_XXXX (these are the currently active settings) and the dev_XXX settings to goal_XXXX (these are the settings which we want cur_XXXX to converge to). This probably isn't entirely final as yet- but it's a lot closer to now being what it should be, including allowing camcontrol to actually set specific settings.
* Redo how we manage SCSI device settings- have a 3rd flags (nvram) that recordsmjacob2001-07-301-9/+13
| | | | | | | | | either what's in NVRAM or what the safe defaults would be if we lack NVRAM. Then we rename cur_XXXX to actv_XXXX (these are the currently active settings) and the dev_XXX settings to goal_XXXX (these are the settings which we want cur_XXXX to converge to). Roll core minor.
* Redo how we manage SCSI device settings- have a 3rd flags (nvram) that recordsmjacob2001-07-301-157/+143
| | | | | | | either what's in NVRAM or what the safe defaults would be if we lack NVRAM. Then we rename cur_XXXX to actv_XXXX (these are the currently active settings) and the dev_XXX settings to goal_XXXX (these are the settings which we want cur_XXXX to converge to).
* Kill the command (don't rerun it) if we had an AUTOSENSE failure.mjacob2001-07-301-3/+5
| | | | | | If we had an AUTOSENSE failure, we don't know what SENSE DATA we had for a CHECK CONDITION. It's far better to assume failure in this case.
* (Forced commit- last one missed the comments)mjacob2001-07-301-2/+2
| | | | | | | Handle both old and new TARGIOALLOCUNIT/TARGIOFREEUNIT cases- the new one allows us to specify inquiry data we want to use. Handle more of the CAM_DIS_DISCONNECT case.
* (Forced commit- last commit was inadvertant in that it missed the comments)mjacob2001-07-301-0/+1
| | | | | | | | | | Move TARGCTLIOALLOCUNIT to OTARGCTLIOALLOCUNIT, TARGCTLIOFREEUNIT to OTARGCTLIOFREEUNIT and redefine old associated structure to be old_ioc_alloc_unit- deprecation but preservation of binaries. Add new structure for same- but this one contains a pointer to user defined INQUIRY data so you can define what the target device looks like to the outside world.
* backout last commit- inadvertantmjacob2001-07-301-70/+47
|
* scsi_targetio.hmjacob2001-07-303-103/+198
|
* Propagate CAM_DIS_DISCONNECT on through:mjacob2001-07-301-5/+54
| | | | | | | | | 1. If we get frozen, unfreeze for disable disconnects. 2. Put CAM_DIS_DISCONNECT commands at the head of the work queue (we have a target still connected and we can't run anything else until this command completes). If we had an error sending the last CTIO, unfreeze the queue anyway.
* When booted -v (eg bootverbose is non-zero), have pccard report whatimp2001-07-301-0/+7
| | | | | | | | | resources it is attempting to assign to a child object. This should help people track down mysterious resource allocation problems more easily. # Unfortunately, it is harder to do the conflict check and report which # resource failed if the driver itself doesn't.
* Two recent commits in sys/ufs/ufs interacted badly with ext2fsiedowse2001-07-292-2/+5
| | | | | | | | | | | | | | because it shares ufs code. In ufs_fhtovp(), the test on i_effnlink is invalid because ext2fs does not maintain this field. In ufs_close(), i_effnlink is also tested, to determines whether or not to call vn_start_write(). The ufs_fhtovp issue breaks NFS exporting of ext2fs filesystems; I believe the other is harmless. Fix both cases by checking um_i_effnlink_valid in the ufsmount struct, and use i_nlink if necessary. Noticed by: bde Reviewed by: mckusick, bde
* Disallow ATAPI CD transfers that are not a multiple of the device blocktmm2001-07-291-1/+5
| | | | | | | | | size (previously, the transfer size would be rounded up to a multiple of the block size, which would overflow the buffer). This fixes panics when doing things like trying to mount audio CD's. PR: kern/21946 Review Timeout: sos
* Convert the olpt driver to using new-bus stuff.nyan2001-07-294-136/+208
|
* Merged from sys/dev/syscons/syscons.c revisions 1.367 and 1.368.nyan2001-07-291-70/+64
|
* Make symlink $S/$M/include -> compile/FOO/machine at kernel-dependkato2001-07-291-1/+1
| | | | instead of geneassym.o.
OpenPOWER on IntegriCloud