summaryrefslogtreecommitdiffstats
path: root/sys
Commit message (Collapse)AuthorAgeFilesLines
* o Acquire and release the vm_map lock instead of Giant in obreak().alc2002-06-201-11/+7
| | | | | | Consequently, use vm_map_insert() and vm_map_delete(), which expect the vm_map to be locked, instead of vm_map_find() and vm_map_remove(), which do not.
* Solve the 'unregistered netisr 18' information notice with a sledgehammer.peter2002-06-201-4/+7
| | | | | | Register the ISR early, but do not actually kick off the timer until we see some activity. This still saves us from running the arp timers on a system with no network cards.
* - Move the computation of pflags out of the page allocation loop injeff2002-06-191-17/+21
| | | | | | | kmem_malloc() - zero fill pages if PG_ZERO bit is not set after allocation in kmem_malloc() Suggested by: alc, jake
* - Remove the lock(9) protecting the kernel linker system.arr2002-06-191-14/+46
| | | | | | | | | | | - Added a mutex, kld_mtx, to protect the kernel_linker system. Note that while ``classes'' is global (to that file), it is only read only after SI_SUB_KLD, SI_ORDER_ANY. - Add a SYSINIT to flip a flag that disallows class registration after SI_SUB_KLD, SI_ORDER_ANY. Idea for ``classes'' read only by: jake Reviewed by: jake
* - Remove bogus use of kmem_alloc that was inherited from the old zonejeff2002-06-192-17/+18
| | | | | | | | | allocator. - Properly set M_ZERO when talking to the back end page allocators for non malloc zones. This forces us to zero fill pages when they are first brought into a cache. - Properly handle M_ZERO in uma_zalloc_internal. This fixes a problem where per cpu buckets weren't always getting zeroed.
* Teach kmem_malloc about M_ZERO.jeff2002-06-191-4/+10
|
* Correct spelling of 'supplied'.robert2002-06-191-1/+1
| | | | PR: misc/39528
* Change spelling of `u_char' to `unsigned char' to avoid requiringmike2002-06-191-1/+1
| | | | <sys/types.h> as a prerequisite.
* Add better mediaopt support for ibss and friends.imp2002-06-193-39/+171
| | | | | | Now the driver is closer to matching the wi man page. Submitted by: jhay (who obtained it from OpenBSD).
* MFi386: revisions from 1.342 to 1.344nyan2002-06-191-0/+2
|
* Backout previous change and merge from sys/dev/sio/sio.c revision 1.375.nyan2002-06-192-12/+46
|
* Merged from sys/isa/fd.c revision 1.233.nyan2002-06-192-86/+58
|
* Use si_iosize_max to tell the upper layers not to use moresos2002-06-192-44/+18
| | | | | than 32K chunks on ZIP drives instead of deblocking it in the driver.
* Add yet another (older) Promise chipsos2002-06-192-5/+10
|
* In rev 1.72 a situation related to write/mmap was fixed which could resultdillon2002-06-191-7/+11
| | | | | | | | | | | | | | | | | | | | | | in a user process gaining visibility into the 'old' contents of a filesystem block. There were two cases: (1) when uiomove() fails (user process issues illegal write), and (2) when uiomove() overlaps a mmap() of the same file at the same offset (fault -> recursive buffer I/O reads contents of old block). Unfortunately 1.72 also had the unintended effect of forcing the filesystem to do a read-before-write in the case of a full-block-write (non append case), e.g. 'dd if=/dev/zero of=test.dat bs=1m count=256 conv=notrunc'. This destroys performance.. not only is a read forced for every write, but clustering breaks as well. The solution is to clear the buffer manually in the full-block case rather then asking BALLOC to do it (BALLOC issues the read-before-write). In the partial-block case we want BALLOC to do it because the read-before-write is necessary. This patch should greatly improve database and news-feed server performance. Found by: MKI <mki@mozone.net> MFC after: 3 days
* Remove the compat bits for the mis-aligned struct disklabel on alpha,phk2002-06-194-64/+0
| | | | | | people got three times longer than I promised. Sponsored by: DARPA & NAI Labs.
* Squish the "could sleep with process lock" messages caused by callingalfred2002-06-194-19/+52
| | | | | | | | | | | | | | | | | | | | uifind() with a proc lock held. change_ruid() and change_euid() have been modified to take a uidinfo structure which will be pre-allocated by callers, they will then call uihold() on the uidinfo structure so that the caller's logic is simplified. This allows one to call uifind() before locking the proc struct and thereby avoid a potential blocking allocation with the proc lock held. This may need revisiting, perhaps keeping a spare uidinfo allocated per process to handle this situation or re-examining if the proc lock needs to be held over the entire operation of changing real or effective user id. Submitted by: Don Lewis <dl-freebsd@catspoiler.org>
* o Replace GIANT_REQUIRED in vm_object_coalesce() by the acquisition andalc2002-06-192-8/+10
| | | | | | | | release of Giant. o Reduce the scope of GIANT_REQUIRED in vm_map_insert(). These changes will enable us to remove the acquisition and release of Giant from obreak().
* fix whitespace botch in previous commit.billf2002-06-191-1/+1
|
* Removed unneeded files.pdeuskar2002-06-184-5322/+0
| | | | | | | if_em_fxhw.[c,h] and if_em_phy.[c,h] have been merged into one [c,h] file. MFC after: 3 days
* setsugid() touches p->p_flag so assert that the proc is locked.alfred2002-06-181-0/+2
|
* A node that creates a device entry in /dev (yay devfs)julian2002-06-184-0/+689
| | | | | | | | | | so that /dev/mumble can be the entrypoint to some networking graph, e.g. a tunnel or a remote tape drive or whatever... Not fully tested (by me) yet. Submitted by: Mark Santcroos <marks@ripe.net> MFC after: 3 weeks
* Make the speed used by gdb over serial settable in the kernel configuration.n_hibma2002-06-188-55/+108
| | | | | | This facilitates the use in circumstances where you are using a serial console as well. GDB doesn't support anything higher than 9600 baud (19k2 if you are lucky), but the console does.
* o Remove LK_CANRECURSE from the vm_map lock.alc2002-06-181-2/+2
|
* Remove so*_locked(), which were backed out by mistake.tanimura2002-06-189-128/+38
|
* Add support for Comtrol RocketPort 550 PCi models: 4 RJ45, 4 Quadcable,obrien2002-06-181-0/+87
| | | | | | 8 RJ11, 8 Octacable, and 8 (used with RocketPort I/F box). Note: untested due to lack of hardware
* Support the Comtrol RocketPort 550 PCi 16 (used with RocketPort I/F box).obrien2002-06-182-1/+29
| | | | Sponsored by: Feral Software
* ebus sio(4) attachment.obrien2002-06-181-0/+113
| | | | Submitted by: tmm
* Allow one to configure `sio'.obrien2002-06-181-0/+6
|
* Sync with i386.obrien2002-06-181-8/+10
|
* Honor the BUCKETCACHE flag on free as well.jeff2002-06-171-4/+9
|
* - Introduce the new M_NOVM option which tells uma to only check the currentlyjeff2002-06-177-6/+24
| | | | | | | | | | | | | | | | allocated slabs and bucket caches for free items. It will not go ask the vm for pages. This differs from M_NOWAIT in that it not only doesn't block, it doesn't even ask. - Add a new zcreate option ZONE_VM, that sets the BUCKETCACHE zflag. This tells uma that it should only allocate buckets out of the bucket cache, and not from the VM. It does this by using the M_NOVM option to zalloc when getting a new bucket. This is so that the VM doesn't recursively enter itself while trying to allocate buckets for vm_map_entry zones. If there are already allocated buckets when we get here we'll still use them but otherwise we'll skip it. - Use the ZONE_VM flag on vm map entries and pv entries on x86.
* Avoid reprobing on loading a driver. This does not work as the ivars setn_hibma2002-06-171-0/+15
| | | | | | | | | during the previous probe are stale. What really should be done is route the probe through device_probe_and_attach bit this is one of those ICBBATIASS (I can't be bothered as there is a simpler solution). The user can easily replug the device after kldloading a new device driver.
* Set the ivars _after_ checking that the bdev was correctly created insteadn_hibma2002-06-171-2/+2
| | | | of before.
* clean up some KASSERTS.n_hibma2002-06-171-13/+18
|
* Use OBJDIR instead of CURDIR. This unbreaks loading modules throughn_hibma2002-06-171-1/+1
| | | | | | | | | | | | | 'make load' if an object dir was, like it is used in /sys/modules. I.e. cd /sys/modules/umass make obj make make load works again without having to install the module. If no objdir was used the module in the current directory is used.
* Add constants for the min and max prom addresses. Use these instead ofjake2002-06-172-3/+6
| | | | | | magic numbers. Use stxa_sync instead of stxa; membar #Sync; to ensure that no instruction is placed between the two. This can cause random corruption even though interrupts are already disabled.
* o Acquire and release Giant in vm_map_wakeup() to preventalc2002-06-171-0/+7
| | | | | | a lost wakeup(). Reviewed by: tegge
* remove bogus comment, select/poll do NOT need to fhold as they hold thealfred2002-06-171-1/+4
| | | | | filedesc lock. style(9) fixes, add blank line at start of functions with no local variables.
* - Turn a DIAGNOSTIC check into a KASSERT(9).arr2002-06-171-4/+1
|
* - Turn a DIAGNOSTIC check into a KASSERT(9) macro.arr2002-06-171-6/+2
|
* - Explicitly pass M_WAITOK in a few calls to uma_zalloc(9).arr2002-06-171-7/+7
|
* sppp needs slcompress.c nowadays.jhay2002-06-172-1/+2
| | | | PR: 39369
* Remove <sys/select.h> to unbreak the build. I'm not sure if this affectsdes2002-06-161-1/+0
| | | | | the functionality of the drm module, but hopefully it will tide us over until Eric can take a look at it.
* Fix two syntax errors and add declarations of statvfs() and fstatvfs().wollman2002-06-161-2/+6
|
* Rewrite the probe routine. This makes adding drives and quirks more easy.n_hibma2002-06-161-267/+251
| | | | While there change a few names to less confusing ones.
* o Remove GIANT_REQUIRED from vm_fault_user_wire().alc2002-06-162-7/+1
| | | | | | o Move pmap_pageable() outside of Giant in vm_fault_unwire(). (pmap_pageable() is a no-op on all supported architectures.) o Remove the acquisition and release of Giant from mlock().
* Now that we have a separate header file for sigset_t, use it and avoidwollman2002-06-161-4/+8
| | | | the full pollution of <signal.h>.
* Use <sys/_sigset.h> to get declaration of sigset_t, which has been movedwollman2002-06-161-16/+3
| | | | | to a separate header to facilitate its declaration in more than one place. Namespace issues not fixed.
* Delete everything except the sigset_t definitions (subsequent towollman2002-06-161-252/+3
| | | | repo-copy).
OpenPOWER on IntegriCloud