summaryrefslogtreecommitdiff
path: root/sys/dev/raidframe
AgeCommit message (Collapse)Author
2004-11-28don't hide the process context in rf_close_component(), since we mayPedro Martelletto
need it later on to do locking stuff. fixes the problem with raid reconstruction, as described in pr 3968. ok mickey@ tedu@ tdeval@
2004-09-20addres -> addressMiod Vallat
2004-06-24This moves access to wall and uptime variables in MI code,Thorsten Lockert
encapsulating all such access into wall-defined functions that makes sure locking is done as needed. It also cleans up some uses of wall time vs. uptime some places, but there is sure to be more of these needed as well, particularily in MD code. Also, many current calls to microtime() should probably be changed to getmicrotime(), or to the {,get}microuptime() versions. ok art@ deraadt@ aaron@ matthieu@ beck@ sturm@ millert@ others "Oh, that is not your problem!" from miod@
2004-02-15new arg to disk_unbusy, to record separate read/write statistics.Ted Unangst
looked at by various, testing henning@ mcbride@ dan weeks mostly from netbsd via Pedro Martelletto <pbastos@rdc.puc-rio.br>
2004-02-08Remove unused files.Alexander Yurchenko
ok tdeval@ millert@ drahn@
2004-01-14Do not fill more than the first three fields of cfdriver structures unlessMiod Vallat
necessary. No functional change.
2003-11-27on behalf of tdeval@:Henning Brauer
fix several errnous error messages (hah) partitially from PR3566
2003-10-26typos from Jared Yanovich;Jason McIntyre
2003-06-02Remove the advertising clause in the UCB license which BerkeleyTodd C. Miller
rescinded 22 July 1999. Proofed by myself and Theo.
2003-04-27strcpy/sprintf cleanup of sys/dev. miod@, deraadt@ says to commit.Hakan Olsson
2003-01-19Temporary fix for PR#3069 (thanks for the report, Alex Cichowski), untilThierry Deval
I find time to really follow all cases. At least it works here, and doesn't add new problems, it seems.
2003-01-19Wording.Thierry Deval
2002-12-16Major KNF. Incentive from TeduThierry Deval
2002-12-03Missing initialization.Thierry Deval
thanks Greg Oster
2002-10-12Remove more '\n's from panic() statements. Both trailing and leading.Kenneth R Westerback
Last bits of diff generated by Chris Kuethe.
2002-10-12Remove more '\n's from panic() statements. Both trailing and leading.Kenneth R Westerback
Diff generated by Chris Kuethe.
2002-08-09Remove those noisy informational messages from dmesg.Thierry Deval
Use the option RAIDDEBUG to get these. Theo, thanks for suggesting.
2002-08-05Clean up hook cookies from shutdown hook.Thierry Deval
2002-07-15No need to disestablish the startuphook.Artur Grabowski
It's done automatically now.
2002-06-14spelling; from Brian Poole <raj@cerias.purdue.edu>Todd T. Fries
2002-05-28splbio protection for biodone()Thierry Deval
ok art@
2002-05-22max length of debug variablesThierry Deval
2002-04-24Introduce a new file, machine/internal_types.h, to hold that specific archMarc Espie
type characteristics. internal_types.h will contain only settings invisible from standard C, e.g., in the __* or _[A-Z]* namespace, and be reused by files like limits.h. This allows us to shorten machine/limits.h greatly, as all the common defines are now in sys/limits.h, plus a small stub in internal_types.h. Tested on all arches as far as I know. Approved after discussion with art, millert, deraadt, and others.
2002-03-14Final __P removal plus some cosmetic fixupsTodd C. Miller
2002-03-14First round of __P removal in sysTodd C. Miller
2002-03-08numraid is needed, always.Thierry Deval
2002-03-06Implement a shutdown hook.Thierry Deval
We now can safely swap on raid.
2002-02-16Cope with the new pid allocation semantic from nordin@Thierry Deval
ok nordin@, deraadt@
2002-01-23Pool deals fairly well with physical memory shortage, but it doesn't dealArtur Grabowski
well (not at all) with shortages of the vm_map where the pages are mapped (usually kmem_map). Try to deal with it: - group all information the backend allocator for a pool in a separate struct. The pool will only have a pointer to that struct. - change the pool_init API to reflect that. - link all pools allocating from the same allocator on a linked list. - Since an allocator is responsible to wait for physical memory it will only fail (waitok) when it runs out of its backing vm_map, carefully drain pools using the same allocator so that va space is freed. (see comments in code for caveats and details). - change pool_reclaim to return if it actually succeeded to free some memory, use that information to make draining easier and more efficient. - get rid of PR_URGENT, noone uses it.
2001-12-29Enable the RAIDFrame auto-configuration feature.Thierry Deval
This permits one to setup a kernel able to automatically retrieve, during boot, the raid configuration from disks previously used in a RAIDFrame set. Moreover, one can define a raid set to contain a bootable partition that will be mounted on / before the system has started. A new RAID_AUTOCONFIG kernel option is used, in conjunction with the raid pseudo-device, to activate the feature. ok drahn@, deraadt@
2001-12-08Fix compilation error when building a raid enabled kernel.Thierry Deval
OK deraadt@
2001-09-20occured->occurredMike Pechkin
idea from deraadt@ via NetBSD millert@ ok
2001-07-09More lame OpenBSD tags.Federico G. Schwindt
2001-01-02Fix PR/1489 - apply patch supplied - thanks Michael Joosten <joost@c-lab.de>Peter Galbavy
The whole issue of processes and threads need looking at, as NetBSD and OpenBSD do things slightly differently - think extra arg to VOP_XXX calls for one.
2000-08-08sync RAIDframe with Gre Oster's work for NetBSD.Peter Galbavy
This update incorporates changes since January 2000. RAID1 and RAID5 tested for functionality matching the 2.7 code. A number of bug fixes (including stopping a parity rebuild when unconfiguring) have been included. See Greg's RAIDframe info page: http://www.cs.usask.ca/staff/oster/raid.html The RAID_AUTOCONFIG feature set does *NOT* yet work. These features require more work throughout the boot system and as such are a big task. IMPORTANT: As with anything that is this near live data on your systems, please test carefully with existing configurations before deploying in a live system. Feedback via sendbug or mail direct to peter@wonderland.org is appreciated.
2000-01-11sync with NetBSDPeter Galbavy
- removed threadid stuff - removed unused files - general tidyup - you can no longer configure the same unit twice (without de-configuring first of course). Again, this has only been tested locally on IDE disks. Further testing and feedback would be appreciated.
2000-01-11remove 'INTEGRATE' macro that did static __inline__ in advance of doingPeter Galbavy
more work on the whole code base
2000-01-11sync with NetBSD - remove an unused prototype.Peter Galbavy
2000-01-08sync with NetBSDPeter Galbavy
- remove unused are from IO_BUF_ERR in rf_driver.c - remove unused define in rf_stripelocks.c
2000-01-07sync with work by Greg Oster on NetBSDPeter Galbavy
Please note: This update has *only* been tested on i386 with IDE disks. Could someone with a spare box please make sure all is OK with SCSI and maybe other arches ? sparc testing will follow locally. * remove rf_sys.h * many changes to make it more stable * some performance increases * All raid threads now get their own kernel process and the calling raidctl(8) program will show status progress through a meter. * In theory FFS_SOFTUPDATES and RAIDframe will now work together - NOT TESTED YET See http://www.cs.usask.ca/staff/oster/raid.html This updates include Greg's changes to Jan 4th 2000. TODO: * some odd behaviour when running raictl -c on an already config'ed raid set - problem founf, fix being done * progress meter is in raidctl(8) - seperate commit, but could do with sync'ing with OpenBSD ftp version
1999-12-03Init b_dep so that soft updates work.Artur Grabowski
1999-10-29writen->writtenTodd T. Fries
1999-08-04* remove redundant rf_ccmn.hPeter Galbavy
* remove init call to rf_ConfigureEtimer() and rf_sys.c in which it is the only function. update conf/files to reflect this. * update sources to make sure _KERNEL is used not KERNEL * change rf_etimer.h to protect macros an include of sys/kernel.h with a check for _KERNEL - let raidctl compile again.
1999-08-03* rf_reconstruct.c: adopt nilkas' suggestion regard statics andPeter Galbavy
__inline__ - this is a proof of concept and will cover the raidframe source as a whole over coming updates. Update namespace of function to prefix with rf_ - comments again welcome. * overall: rework the macros in rf_etimer.h and the resultant changes to their use to count microseconds and not clock ticks. Restore the code in rf_revent.c to a similar strcuture to before the previous commit, and use the system timers to govern resource usage. Tested with local i386/IDE and the reconstruction of a disk in my array - performance has improved for reconstruction at no noticable CPU cost.
1999-08-02revert from using static functions, as per niklas@openbsd.org advice.Peter Galbavy
1999-08-02fix reconstruction performance. the old code used home-grown timersPeter Galbavy
based upon hardcoded CPU speed values and an assumtion that the number of clock cycles was available. This is/was silly. redone rf_GetNextReconEvent so that is now runs for 1/10th second before sleeping for a short time (1/50th sec). Locally, this is using about 25% of the CPU while rebuilding a disk in a four disk IDE RAID5 array. It was 22% of the way through when I last looked... much much faster. An even better way is sought - suggestions welcome. Lots of code that the old routines relied on canm be harvested later. Patches also being sent to Greg Oster @ NetBSD group.
1999-08-02minor style nitPeter Galbavy
1999-08-02* make some function static, copied from rf_netbsdkintf.cPeter Galbavy
* move composition og openmask in raidclose to before where it is tested.
1999-08-02restore the NetBSD specific files to their -current state fromPeter Galbavy
NetBSD. There is no reason to mess with these; they are just being carried around as a reference at the moment.
1999-07-30Update RAIDframe from NetBSD-current as of 1999/07/26.Peter Galbavy
Please note that you *must* follow the upgrade instructions at http://www.cs.usask.ca/staff/oster/clabel_upgrade.html before installing the new raidctl and new kernel using this code.