aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/vinum
Commit message (Collapse)AuthorAgeFilesLines
* Remove unused vinum files.Poul-Henning Kamp2004-11-0426-12139/+0
| | | | Notes: svn path=/head/; revision=137198
* Fix compilation of vinum(4) when VINUMDEBUG is not defined.Marius Strobl2004-09-202-2/+2
| | | | | | | | | PR: 71341 Submitted by: Phil Budne <phil@tripadvisor.com> MT5 candidate. Notes: svn path=/head/; revision=135487
* Do a pass over all modules in the kernel and make them return EOPNOTSUPPPoul-Henning Kamp2004-07-151-0/+1
| | | | | | | | | | | for unknown events. A number of modules return EINVAL in this instance, and I have left those alone for now and instead taught MOD_QUIESCE to accept this as "didn't do anything". Notes: svn path=/head/; revision=132199
* Update for the KDB framework:Marcel Moolenaar2004-07-104-4/+5
| | | | | | | o Call kdb_enter() instead of Debugger(). Notes: svn path=/head/; revision=131924
* Catch up with g_dev_open() changes and pass over the current threadLukas Ertl2004-06-221-1/+1
| | | | | | | | | pointer. Submitted by: cperciva Notes: svn path=/head/; revision=130913
* Second half of the dev_t cleanup.Poul-Henning Kamp2004-06-173-4/+4
| | | | | | | | | | | | | | The big lines are: NODEV -> NULL NOUDEV -> NODEV udev_t -> dev_t udev2dev() -> findcdev() Various minor adjustments including handling of userland access to kernel space struct cdev etc. Notes: svn path=/head/; revision=130640
* Do the dreaded s/dev_t/struct cdev */Poul-Henning Kamp2004-06-165-20/+25
| | | | | | | Bump __FreeBSD_version accordingly. Notes: svn path=/head/; revision=130585
* Plug a mem leak in vinum_scandisk().Lukas Ertl2004-04-241-0/+1
| | | | | | | Approved by: grog (mentor) Notes: svn path=/head/; revision=128623
* When doing round-robin reads from a multi-plex volume, only switch to theLukas Ertl2004-03-193-4/+20
| | | | | | | | | | next plex if the sector to be read isn't nearby the last read sector. Submitted by: Vsevolod Lobko <seva@ip.net.ua> via ru@ Approved by: grog (mentor) Notes: svn path=/head/; revision=127199
* Properly count references of our dev_t to avoid triggering a KASSERT inLukas Ertl2004-03-112-0/+4
| | | | | | | | | | dev_strategy(). Submitted by: dwmalone Approved by: grog (mentor) Notes: svn path=/head/; revision=126850
* Fix an integer overflow when dealing with very large volumes. This bugLukas Ertl2004-03-091-1/+1
| | | | | | | | | | | prevented newfs to work on volumes that are larger than 1TB. PR: 63577 Submitted by: Masaki Takakashi <mtakahashi@se.gtd.cosmo.co.jp> Approved by: grog (mentor), bde Notes: svn path=/head/; revision=126776
* Since vinum doesn't fake disklabels anymore, remove get_volume_label().Lukas Ertl2004-03-092-62/+0
| | | | | | | | | | Also, remove stale write_volume_label() declaration; the write_volume_label() function was deleted 8 months ago. Approved by: grog (mentor) Notes: svn path=/head/; revision=126769
* Fix vinums cdevsw{} to initialize d_version.Poul-Henning Kamp2004-02-232-13/+10
| | | | | | | | | | | The nonstandard formatting made my mega-patch scripts miss it. Retire the static major number while we're here anyway. Reported by: Niels Chr. Bank-Pedersen <ncbp@bank-pedersen.dk> Notes: svn path=/head/; revision=126157
* Remove some more 'makedev' related macros.Lukas Ertl2004-02-161-10/+0
| | | | | | | Approved by: grog (mentor) Notes: svn path=/head/; revision=125897
* Don't free ressources that haven't been allocated. This should fixLukas Ertl2004-02-081-2/+9
| | | | | | | | | | | | | the "disappearing subdisks" problem when new subdisks can't be created due to some errors. This is in fact an ugly hack, but a more elegant solution would probably require a redesign of vinum in several places. Approved by: joerg (mentor) Notes: svn path=/head/; revision=125593
* When creating raid5 or striped plexes, avoid falling out of boundsLukas Ertl2004-02-041-24/+27
| | | | | | | | | | | when checking the given stripe size. Also move the code a bit around to avoid duplication. Approved by: joerg (mentor) Notes: svn path=/head/; revision=125458
* initsd: For striped and RAID-[45] plexes, don't restrict the I/OGreg Lehey2003-12-151-5/+1
| | | | | | | | | | | transfer size to the stripe size. This is a different situation from reviving, where this limitation is necessary. In initsd we're simply writing binary zeroes to the entire disk, so the only effect of limiting the transfer is to slow things down. Notes: svn path=/head/; revision=123540
* free_plex, free_volume: Don't try to destroy the underlying device ifGreg Lehey2003-12-151-2/+4
| | | | | | | | it doesn't exist. This can occur under certain failure situations. Notes: svn path=/head/; revision=123539
* vinumclose: Fix day-one bug. Subdisks and plexes were not beingGreg Lehey2003-12-151-2/+11
| | | | | | | | marked closed. This made it impossible to stop Vinum after explicitly opening a plex or subdisk. Notes: svn path=/head/; revision=123538
* Initalize buffer headers correctly for current version of bio subsystem.Greg Lehey2003-11-243-1/+6
| | | | | | | | | | Not mentioned by: phk Approved by: re (scottl) This makes Vinum work again, at least in my testing. Notes: svn path=/head/; revision=122972
* Fix vinum by correctly setting the b_offset bio filed when doing I/O.Scott Long2003-11-233-2/+7
| | | | | | | Submitted by: grog Notes: svn path=/head/; revision=122964
* Do not initialize bp->b_pblkno, it is going away.Poul-Henning Kamp2003-10-181-1/+0
| | | | Notes: svn path=/head/; revision=121217
* If we fail to complete configuring a subdisk because of some error,Greg Lehey2003-09-291-9/+15
| | | | | | | | | make sure we return any allocated space to the drive. This should get rid of a number of inconsistencies (hopefully all) that have been seen after configuration errors. Notes: svn path=/head/; revision=120574
* Revert last commit. It built the kernel module just fine, but brokeGreg Lehey2003-09-291-0/+10
| | | | | | | | | | world in /sbin. Reported by: erwin Pointy hat to: grog Notes: svn path=/head/; revision=120573
* Remove calls to makedev. They were never needed.Greg Lehey2003-09-292-22/+12
| | | | | | | | Requested by: phk Explained by: rwatson Notes: svn path=/head/; revision=120566
* Use __FBSDID().David E. O'Brien2003-08-2413-13/+39
| | | | | | | Also some minor style cleanups. Notes: svn path=/head/; revision=119418
* #ifdef __i386__ the "int slice" definition that became i386-only withRobert Watson2003-08-151-0/+2
| | | | | | | | | | recent Vinum changes. Fixes non-i386 build on vinumio.c. Accidental oversight of: grog Fix hopefully not minded by: grog Notes: svn path=/head/; revision=118963
* vinum_scandisk:Greg Lehey2003-08-151-1/+5
| | | | | | | | | | | | | Correctly handle additional disks without BIOS partition tables. Previously, vinum_scandisk stopped scanning additional disks for native partitions after any good partition was found. This applies to all platforms, but was a particular problem on systems without BIOS partition tables. Submitted by: harti Notes: svn path=/head/; revision=118930
* Drop Giant when calling the disk drivers directly, and reacquireGreg Lehey2003-08-151-4/+13
| | | | | | | | | afterwards. This fixes the Vinum breakage in -CURRENT. Breakage explained by: phk Notes: svn path=/head/; revision=118928
* free_drive: Free the drive even if it's referenced. I don't know whatGreg Lehey2003-07-011-12/+7
| | | | | | | | I was smoking when I wrote this stuff, but another fix resulted in every partition in the system being entered as a "referenced" drive. Notes: svn path=/head/; revision=117095
* Check compatibility partitions on all archs. This makes vinumHartmut Brandt2003-06-231-2/+0
| | | | | | | | | | work on sparc64 again, because on sparc i386-compatibility partitions just happen to have the same name as sparc native partitions. Okay-ed by: grog@ Notes: svn path=/head/; revision=116736
* check_drive: If the partition isn't a Vinum drive, release it againGreg Lehey2003-06-151-35/+35
| | | | | | | | | | | | | | | | | | and return NULL. vinum_scandisk: Don't handle NULL device pointers. Only look at compatibility partition for i386. This is a kludge which should go away once I have adequate documentation for the New World Order. Together, these fixes remove occasional error messages about non-existent drives. They may also fix a number of problems that have been reported without a PR. PRs: None Notes: svn path=/head/; revision=116363
* Silence a warning.Greg Lehey2003-06-122-0/+2
| | | | Notes: svn path=/head/; revision=116250
* Remove "raw" and "label" keywords.Greg Lehey2003-06-122-6/+2
| | | | Notes: svn path=/head/; revision=116245
* vinum_bounds_check: Don't check the label sector if the architectureGreg Lehey2003-06-121-12/+13
| | | | | | | | | | | | doesn't have one. The test was bogus on these architectures, but recent changes broke it altogether. Prompted by: phk This should fix the recent SPARC 64 build problems. Notes: svn path=/head/; revision=116243
* Remove VINUM_LABEL ioctl. It has been deprecated since December 1998,Greg Lehey2003-06-122-8/+2
| | | | | | | | | and recent changes broke it altogether. Prompted by: phk Notes: svn path=/head/; revision=116242
* Remove write_volume_label, the implementation of VINUM_LABEL ioctl.Greg Lehey2003-06-121-50/+1
| | | | | | | | | | It has been deprecated since December 1998, and recent changes broke it altogether. Prompted by: phk Notes: svn path=/head/; revision=116241
* Remove kw_raw. I've forgotten what it was intended for, and it wasGreg Lehey2003-06-121-5/+1
| | | | | | | probably obsoleted by some changes a couple of months ago. Notes: svn path=/head/; revision=116239
* Don't deregister the kld on resetconfig, only when we're really readyGreg Lehey2003-06-031-3/+3
| | | | | | | | | | | | | to unload. This would cause a panic on the second resetconfig. Start Vinum at boot time at SI_SUB_RAID, not SI_SUB_VINUM. SI_SUB_VINUM was there first, but there's no real distinction, and SI_SUB_RAID is a more neutral name. Submitted by: hmp Notes: svn path=/head/; revision=115764
* Change the way the plex lock mutexes work. Previously they were partGreg Lehey2003-05-231-16/+29
| | | | | | | | | | | | | | of the struct plex, which tore apart the mutex linked lists when the plex table was expanded. Now we maintain a pool of mutexes (currently 32) to be shared by all plexes. This is still a lot better than the splhigh() method used in other architectures. expand_table: Add parameters file and line if we're debugging. Approved by: re (jhb) Notes: svn path=/head/; revision=115250
* Change the way the plex lock mutexes work. Previously they were partGreg Lehey2003-05-231-3/+9
| | | | | | | | | | | | | | of the struct plex, which tore apart the mutex linked lists when the plex table was expanded. Now we maintain a pool of mutexes (currently 32) to be shared by all plexes. This is still a lot better than the splhigh() method used in other architectures. Add and clarify comments. Approved by: re (jhb) Notes: svn path=/head/; revision=115249
* expand_table: Add parameters file and line if we're debugging.Greg Lehey2003-05-231-7/+18
| | | | | | | | | MMalloc, vinum_meminfo: Use strlcpy to copy file name. Approved by: re (jhb) Notes: svn path=/head/; revision=115248
* Change the way the plex lock mutexes work. Previously they were partGreg Lehey2003-05-232-8/+31
| | | | | | | | | | | | of the struct plex, which tore apart the mutex linked lists when the plex table was expanded. Now we maintain a pool of mutexes (currently 32) to be shared by all plexes. This is still a lot better than the splhigh() method used in other architectures. Approved by: re (jhb) Notes: svn path=/head/; revision=115247
* detachobject: Update volume config after detaching a plex.Greg Lehey2003-05-231-3/+5
| | | | | | | | | update_volume_config: Remove redundant diskconfig parameter. Approved by: re (jhb) Notes: svn path=/head/; revision=115246
* Change the way the plex lock mutexes work. Previously they were partGreg Lehey2003-05-231-2/+7
| | | | | | | | | | | | | | | | of the struct plex, which tore apart the mutex linked lists when the plex table was expanded. Now we maintain a pool of mutexes (currently 32) to be shared by all plexes. This is still a lot better than the splhigh() method used in other architectures. update_volume_config: Remove redundant diskconfig parameter. expand_table: Add parameters file and line if we're debugging. Approved by: re (jhb) Notes: svn path=/head/; revision=115245
* Change many strcpys to strlcpys, etc.Greg Lehey2003-05-231-20/+24
| | | | | | | | | | | | | | | | | | | | | | | Submitted by: Ted Unangst <tedu@stanford.edu> Correct some inaccurate and badly formatted comments. config_subdisk: If our drive is down, ensure that the subdisk is crashed. Previously it was possible for the subdisk to be up when the drive was down. Change the way the plex lock mutexes work. Previously they were part of the struct plex, which tore apart the mutex linked lists when the plex table was expanded. Now we maintain a pool of mutexes (currently 32) to be shared by all plexes. This is still a lot better than the splhigh() method used in other architectures. update_volume_config: Remove redundant diskconfig parameter. Approved by: re (jhb) Notes: svn path=/head/; revision=115244
* print_config:Greg Lehey2003-05-191-6/+14
| | | | | | | | | | | | Change config format slightly to save plex preferences correctly. vinum_scandisk: reinitialise volatile pointer after function call. This is the "deafc0de" bug. Approved by: re (scottl) Notes: svn path=/head/; revision=115147
* ioctl VINUM_READCONFIG: Don't lock configuration here. vinum_scandiskGreg Lehey2003-05-081-5/+1
| | | | | | | | | | needs to do it anyway to handle the startup case. This is part of a fix for the recently reported hangs. Approved by: re (scottl) Notes: svn path=/head/; revision=114825
* Fix usages of %ll[dx] with typedef'ed created types.David E. O'Brien2003-05-052-19/+19
| | | | | | | | In the kernel it is wrong 99.9 times out of 100 to use %ll rather than cast to intmax_t and use %j. Notes: svn path=/head/; revision=114741
* Add sector size member to subdisk, plex and volume objects.Greg Lehey2003-05-051-0/+3
| | | | Notes: svn path=/head/; revision=114718