summaryrefslogtreecommitdiffstats
path: root/sys
Commit message (Collapse)AuthorAgeFilesLines
* Remove 'device mem' from GENERIC, which markm@ mistakingly added.ssouhlal2004-08-021-1/+0
| | | | | | We don't have mem/kmem yet. Approved by: grehan (mentor)
* Unbreak DEVICE_POLLING build / LINT. Sorry!mlaier2004-08-022-2/+2
| | | | Submitted by: roam
* Eliminate the acquisition and release of Giant around the call toalc2004-08-021-2/+0
| | | | | pmap_mincore() in mincore(2). Either pmap locking exists (alpha, amd64, i386, ia64) or pmap_mincore() is unimplemented (arm, powerpc, sparc64).
* Add PowerPC bridge instruction flag to the assembler to help outgrehan2004-08-022-0/+6
| | | | with test code written in the loader.
* G5 support: handle the case where the OpenFirmware memory array usesgrehan2004-08-023-29/+90
| | | | 64 bits for the phys address, but only 32 for the virtual address.
* Kernel traps were not being passed to trap_fatal in somegrehan2004-08-022-2/+4
| | | | | | circumstances. Spotted by: gallatin
* Document machdep.enable_panic_key.scottl2004-08-021-1/+1
| | | | Submitted by: Craig Rodrigues
* Fix the build by providing 'PHYS_TO_DMAP' and 'M_MEMDESC'.obrien2004-08-021-0/+6
|
* Bump __FreeBSD_version to designate uma_zone functions changing type.green2004-08-021-1/+1
|
* Add what appears to be a missing '*/' at the end of a comment.rwatson2004-08-021-0/+1
|
* - Fix unloading by the same way it is done in my other classes:pjd2004-08-021-3/+5
| | | | | | | | set gp->softc to NULL and return ENXIO when it is NULL, so GEOM will not panic or hang, but unload one device on every 'unload'. This make 'unload' command usable, but it have to be executed <number of devices> + 1 times. - Made use of 'pp' variable.
* * Add a "how" argument to uma_zone constructors and initialization functionsgreen2004-08-0213-170/+243
| | | | | | | | | | | | | | | | | so that they know whether the allocation is supposed to be able to sleep or not. * Allow uma_zone constructors and initialation functions to return either success or error. Almost all of the ones in the tree currently return success unconditionally, but mbuf is a notable exception: the packet zone constructor wants to be able to fail if it cannot suballocate an mbuf cluster, and the mbuf allocators want to be able to fail in general in a MAC kernel if the MAC mbuf initializer fails. This fixes the panics people are seeing when they run out of memory for mbuf clusters. * Allow debug.nosleepwithlocks on WITNESS to be disabled, without changing the default. Both bmilekic and jeff have reviewed the changes made to make failable zone allocations work.
* Second part of ALTQ driver modifications, covering:mlaier2004-08-017-31/+56
| | | | | | | | | | an(4), ath(4), hme(4), ndis(4), vr(4) and wi(4) Please help testing: http://people.freebsd.org/~mlaier/ALTQ_driver/ Tested by: Vaidas Damosevicius (an, ath, wi) Roman Divacky (vr) Submitted by: yongari (hme)
* Comment kse_create() and make a few minor code cleanupsjulian2004-08-011-47/+121
| | | | Reviewed by: davidxu
* The watchdog callout executes with the (non-sleepable) ifnet lock heldwpaul2004-08-011-1/+1
| | | | | | | now, but it's possible for ndis_reset_nic() to sleep (sometimes the MiniportReset() method returns NDIS_STATUS_PENDING and we have to wait for completion). To get around this, execute the ndis_reset_nic() routine in the NDIS_TASKQUEUE thread.
* In ndis_alloc_bufpool() and ndis_alloc_packetpool(), the test to see ifwpaul2004-08-011-2/+2
| | | | | allocating pool memory succeeded was checking the wrong pointer (should have been looking at *pool, not pool). Corrected this.
* Typo.pjd2004-08-011-1/+1
|
* Another stupid error from my side. PPPOE_NONSTANDARD was first definedglebius2004-08-011-9/+9
| | | | | | | | in enum {}, and then redefined with #define. No warnings from compiler, though. Submitted by: bz Pointy hat to: glebius
* Big mess 'o changes:wpaul2004-08-018-146/+246
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Give ndiscvt(8) the ability to process a .SYS file directly into a .o file so that we don't have to emit big messy char arrays into the ndis_driver_data.h file. This behavior is currently optional, but may become the default some day. - Give ndiscvt(8) the ability to turn arbitrary files into .ko files so that they can be pre-loaded or kldloaded. (Both this and the previous change involve using objcopy(1)). - Give NdisOpenFile() the ability to 'read' files out of kernel memory that have been kldloaded or pre-loaded, and disallow the use of the normal vn_open() file opening method during bootstrap (when no filesystems have been mounted yet). Some people have reported that kldloading if_ndis.ko works fine when the system is running multiuser but causes a panic when the modile is pre-loaded by /boot/loader. This happens with drivers that need to use NdisOpenFile() to access external files (i.e. firmware images). NdisOpenFile() won't work during kernel bootstrapping because no filesystems have been mounted. To get around this, you can now do the following: o Say you have a firmware file called firmware.img o Do: ndiscvt -f firmware.img -- this creates firmware.img.ko o Put the firmware.img.ko in /boot/kernel o add firmware.img_load="YES" in /boot/loader.conf o add if_ndis_load="YES" and ndis_load="YES" as well Now the loader will suck the additional file into memory as a .ko. The phony .ko has two symbols in it: filename_start and filename_end, which are generated by objcopy(1). ndis_open_file() will traverse each module in the module list looking for these symbols and, if it finds them, it'll use them to generate the file mapping address and length values that the caller of NdisOpenFile() wants. As a bonus, this will even work if the file has been statically linked into the kernel itself, since the "kernel" module is searched too. (ndiscvt(8) will generate both filename.o and filename.ko for you). - Modify the mechanism used to provide make-pretend FASTCALL support. Rather than using inline assembly to yank the first two arguments out of %ecx and %edx, we now use the __regparm__(3) attribute (and the __stdcall__ attribute) and use some macro magic to re-order the arguments and provide dummy arguments as needed so that the arguments passed in registers end up in the right place. Change taken from DragonflyBSD version of the NDISulator.
* Add the I/O device for those architectures that have it.markm2004-08-012-0/+2
|
* Remove extraneous ';'.markm2004-08-012-2/+2
|
* Implement basic support for EHCI interrupt pipes. This is unlikelyiedowse2004-08-012-11/+283
| | | | | | | | to be particularly correct or optimal, but it seems to be enough to allow the attachment of USB2 hubs and USB2 devices connected via USB2 hubs. None of the split transaction support is implemented in our USB stack, so USB1 peripherals will definitely not work when connected via USB2 hubs.
* YA oops. Remove code that was being tested locally.markm2004-08-011-21/+0
|
* Remove local hack that was not supposed to be committed.markm2004-08-011-1/+1
| | | | Spotted by: Antoine Brodin - antoine dot brodin at laposte dot net
* Turn off PREEMPTION by default while it gets debugged. It's been causingscottl2004-08-013-0/+9
| | | | | 4 weeks of problems including deadlocks and instant panics. Note that the real bugs are likely in the scheduler.
* MFi386: revision 1.1167nyan2004-08-011-0/+4
|
* MFi386: revision 1.501.nyan2004-08-011-2/+4
|
* Change the default to switch on DMA on ATAPI devices if they cansos2004-08-011-3/+5
| | | | do UDMA2 (ATA33) mode and beyond.
* Break out the MI part of the /dev/[k]mem and /dev/io drivers intomarkm2004-08-0137-692/+833
| | | | | | | | their own directory and module, leaving the MD parts in the MD area (the MD parts _are_ part of the modules). /dev/mem and /dev/io are now loadable modules, thus taking us one step further towards a kernel created entirely out of modules. Of course, there is nothing preventing the kernel from having these statically compiled.
* - Launch main provider when there are no more disks in NEW state.pjd2004-08-011-1/+4
| | | | - Log syncid bump at debug level 1.
* Add some minor changes related to PCMCIA attribute memory mappingwpaul2004-08-011-2/+18
| | | | | | (which I apparently forgot to commit earlier). Acquire NDIS_LOCK() in ndis_linksts_done().
* Specify the locking for some proc fieldsjulian2004-07-311-3/+3
|
* If there are no valid components after the timeout, just destroy device.pjd2004-07-311-7/+2
| | | | There is probably nothing to wait for.
* Propagate size changes upwards.le2004-07-313-0/+25
|
* Fix a stupid error in my previous commit, which broke operationglebius2004-07-311-1/+2
| | | | | | of many nodes. Pointy hat to: glebius
* Handle spoil event in dedicated function: g_mirror_spoiled().pjd2004-07-311-2/+17
| | | | | | | | The different between the new function and g_mirror_orphan() (which was used previously) is that syncid is bumped immediately, instead of on first write, because when consumer was spoiled, it means, that its provider was opened for writing, so we can't trust that its data will be valid when it will be connected again.
* Add copyright notices.fjoe2004-07-313-3/+78
| | | | Prodded by: imp
* Turn on PCB_FULLCTX for set_mcontext, functions like kse_switchindavidxu2004-07-311-0/+1
| | | | | needs to fully restore asynchronous context which did not come from fast syscall.
* Remove unused field.pjd2004-07-311-1/+0
|
* Destroy synchronization geom immediately. This should fix unloading withoutpjd2004-07-311-1/+11
| | | | stopping all mirrors.
* Fix the panic (""memory modified after free") when ata_getparam() failssos2004-07-311-0/+1
| | | | | | and retries. Found by: Nate Lawson
* Add pmap locking to pmap_object_init_pt().alc2004-07-312-2/+12
|
* Bump __FreeBSD_version to reflect the removal of kmem_alloc_pageable().alc2004-07-311-1/+1
| | | | Requested by: pjd@
* Allow slice creation on providers from MIRROR class.pjd2004-07-311-0/+1
| | | | This should allow mounting root file system from a mirror.
* Add '-p' option for 'insert' command which allows to specify prioritypjd2004-07-311-0/+7
| | | | | | of the new component. Version number wasn't bumped (it should be), because I think there are no geom_mirror users yet.
* - Check if 'slice' argument was given.pjd2004-07-311-0/+8
| | | | - Check if disk isn't already the mirror component.
* Dump correct field.pjd2004-07-311-1/+1
|
* Set the access counts of a subdisk correctly when attaching itle2004-07-301-2/+21
| | | | to a plex that already has subdisks.
* Connect GEOM_MIRROR class to the build.pjd2004-07-304-0/+5
|
* Add GEOM_MIRROR class which provide RAID1 functionality and has many usefulpjd2004-07-304-0/+3567
| | | | | | | | features. The gmirror(8) utility should be used for control of this class. There is no manual page yet, but I'm working on it with keramida@. Many useful tests provided by: simon (thank you!) Some ideas from: scottl, simon, phk
OpenPOWER on IntegriCloud