summaryrefslogtreecommitdiffstats
path: root/sys/geom
Commit message (Collapse)AuthorAgeFilesLines
* One more white space fix.pjd2006-09-301-1/+1
|
* Remove trailing spaces.pjd2006-09-305-7/+7
|
* Remove trailing spaces.pjd2006-09-301-16/+16
|
* Fix detecting of UFS1 label when mediasize%fragsize != 0.pjd2006-09-161-2/+2
| | | | | | Submitted by: Stanislav Sedov PR: kern/84637 MFC after: 1 week
* Add 'configure' subcommand which for now only allows setting and removingpjd2006-09-162-3/+116
| | | | | | | | of the BOOT flag. It can be performed on both attached and detached providers. Requested by: Matthias Lederhofer <matled@gmx.net> MFC after: 1 week
* Add __printflike() to gctl_error().pjd2006-09-161-1/+1
| | | | | Approved by: phk MFC after: 1 week
* Small fixes after adding __printflike() to gctl_error().pjd2006-09-161-4/+4
| | | | | Approved by: phk MFC after: 3 days
* Remove extra arguments.pjd2006-09-161-2/+1
| | | | MFC after: 3 days
* Add 'show geom [addr]' ddb(4) command, which prints entire GEOM topology ifpjd2006-09-152-2/+215
| | | | | | | no additional argument is given or details about the given GEOM object (class, geom, provider or consumer). Approved by: phk
* Fix synchronization in gmirror and graid3 which I broken. Synchronizationpjd2006-09-132-6/+12
| | | | | | | | request can still have bio_to set to sc_provider (this is READ part of a synchronization request) and in this case g_{mirror,raid3}_sync() wasn't called as it should be. MFC after: 1 week
* Delay an orphan event if provider has still in-flight I/O requests.pjd2006-09-101-1/+4
| | | | | | | | | | | This way GEOM classes can safely detach from provider when an orphan event is received. This fixes 'detach with active requests' panic for gstripe/gconcat under load. PR: kern/102766 Submitted by: mjacob OK'ed by: phk MFC after: 1 week
* move created/detected/activated under debug level 1 to quiet the common case..jmg2006-09-092-10/+13
| | | | | | | | | | add count of active and total components to the launched line so you can see at a glance if your mirror/raid3 is complete... now: GEOM_MIRROR: Device mirror/sam launched (2/2). Reviewed by: pjd
* Fix format character.pjd2006-09-081-1/+1
| | | | Reported by: andre
* Bump copyright year.pjd2006-09-082-2/+2
|
* Use __FBSDID in .c files.pjd2006-09-081-2/+3
|
* - Split failure probability configuration into read failure probability andpjd2006-09-082-26/+74
| | | | | | | write failure probability. - Allow to specify an error number to return of failure. MFC after: 3 days
* Fix problems with destroy and forcible destroy functionality:pjd2006-09-052-75/+47
| | | | | | | | | | - hold/release device in start/done routines, this will probably slow down things a bit, but previous code was racy; - only release device if g_gate_destroy() failed - if it succeeded device is dead and there is nothing to release; - various other changes which makes forcible destruction reliable. MFC after: 3 days
* while (0); -> while (0) in multi-line macrosimp2006-08-171-1/+1
|
* Handle MSDOS file systems properly. Before the change file systemspjd2006-08-122-34/+295
| | | | | | | | created on Windows XP (and others maybe) were not detected. We detected only those created with newfs_msdos(8). Submitted by: Tobias Reifenberger <treif@mayn.de> style(9)ified by: pjd
* Verify if a label doesn't point to the parent directory.pjd2006-08-121-0/+24
|
* Before using byte offset for IV creation, covert it to little endian.pjd2006-08-112-11/+21
| | | | | | | | | | This way one will be able to use provider encrypted on eg. i386 on eg. sparc64. This doesn't really buy us much today, because UFS isn't endian agnostic. We retain backward compatibility by setting G_ELI_FLAG_NATIVE_BYTE_ORDER flag on devices with version number less than 2 and not converting the offset.
* Forgot to bump version number after G_ELI_FLAG_READONLY flag addition.pjd2006-08-111-3/+5
|
* Strengthen the check for a PMBR:marcel2006-08-091-18/+35
| | | | | | | | | | | | | | | | | o PMBR partitions count to the number of partitions on the disk, which means that if a PMBR entry is invalid we will not treat the MBR as a PMBR by virtue of it not describing any partitions. Previously the checks were inconsistent in that an invalid PMBR entry would be harmless when no other partitions exist (we would treat the MBR as a PMBR by virtue of it being empty), but it would be fatal when there is at least one other partition. o The partition size of a PMBR partition is one less than the media size because the GPT starts at the second sector (LBA 1) and extends to the end of the media. For backward bug-compatibility we accept a size that's exactly the media size (FreeBSD bug). Also, when the partition size can not be represented in a 32-bit integral, the partition size in the MBR is to be set to 0xFFFFFFFF. Accept this as a valid size, even if the size can be represented.
* Allow geli to operate on read-only providers.pjd2006-08-093-24/+67
| | | | | Initial patch from: vd MFC after: 2 weeks
* Not only a request from us can be passed to g_{mirror,raid3}_worker()pjd2006-08-092-10/+23
| | | | | | | function, but also a request to us, in which case checking bio_cflags is wrong, because the class above us is controling it, not we. MFC after: 1 week
* Fix a phase-ordering bug: check the mediasize and sectorsize aftermarcel2006-08-081-20/+21
| | | | | | | | | | we obtained access. It is possible that GPT gets to taste a disk first, which means the disk has not been opened before and it will not get opened until after we checked the mediasize and sectorsize. However, since the mediasize and sectorsize are determined at open and that happens when access is optained, checking the mediasize and sectorsize before obtaining access may result in GPT rejecting the disk.
* Commit the results of the typo hunt by Darren Pilgrim.yar2006-08-043-3/+3
| | | | | | | | | | This change affects documentation and comments only, no real code involved. PR: misc/101245 Submitted by: Darren Pilgrim <darren pilgrim bitfreak org> Tested by: md5(1) MFC after: 1 week
* Don't use f-word in comments. We are gentlemans.pjd2006-08-012-2/+2
| | | | Pointed out by: Maciej Sobczak
* Fix what looks like a typo: MODULE_DEPEND() takes module names,yar2006-07-271-1/+1
| | | | | | | not KLD file names; and GELI module's name is g_eli, not geom_eli. Approved by: pjd (silence) MFC after: 5 days
* Don't forget to initialize crp_olen field, which is used to calculatepjd2006-07-221-0/+1
| | | | bio_completed value.
* Always allow to specify components with /dev/ prefix.pjd2006-07-132-2/+8
| | | | MFC after: 3 days
* Only check if we're freeing a valid object if we hold the topology lock.pjd2006-07-121-4/+7
| | | | This prevents panic under heavy load with DIAGNOSTIC compiled in.
* Use proper defines instead of magic values.pjd2006-07-102-4/+4
| | | | MFC after: 1 week
* When kern.geom.raid3.use_malloc tunnable is set to 1, malloc(9) instead ofpjd2006-07-091-43/+88
| | | | | | | | uma(9) will be used for memory allocation. In case of problems or tracking bugs, there are more useful tools for malloc(9) debugging than for uma(9) debugging, like memguard(9) and redzone(9). MFC after: 1 week
* Remove bogus assertion.pjd2006-07-071-1/+0
| | | | | Reported by: Bradley W. Dutton <brad-fbsd-stable@duttonbros.com> MFC after: 3 days
* Allow to close access even if device is already destroyed.pjd2006-07-032-6/+10
| | | | | | Reported by: Ulrich Spoerlein <uspoerlein@gmail.com> PR: kern/98093 MFC after: 1 week
* Improve check for protective MBR. Instead of assiming that protectivesobomax2006-06-261-5/+24
| | | | | | | | | | MBR should have only one entry of type 0xEE, consider protective MBR to be one, that has at least one entry of type 0xEE covering the whole unit. This makes GEOM_GPT compatible with disks partitioned by the Apple's BootCamp. Approved in principle by: marcel MFC After: 1 month
* In g_dev_strategy(), when failing an IO request with EINVAL due tosimon2006-06-181-0/+1
| | | | | | | | | | | | | | offset or request size which is not a multiple of the sector size, make sure that the bio is set to indicate that no data has actually been transferred. The result of this is that the file offset is no longer incremented for these requests. The fact that the file offset was incremented broke fdisk(8)'s probing of sector size for non-512 byte sector sizes. Reviewed by: phk, cperciva Submitted by: mdodd MFC after: 2 weeks
* Allow to use the old -a option to specify an encryption algorithm to usepjd2006-06-061-13/+31
| | | | | (for backward compatibility), but print a warning to inform about the change.
* - Unbreak the build when geli is compiled into the kernel (on as module),pjd2006-06-061-2/+2
| | | | | | by silencing unfounded compiler warning. Reported by:
* Implement data integrity verification (data authentication) for geli(8).pjd2006-06-056-275/+1101
| | | | Supported by: Wheel Sp. z o.o. (http://www.wheel.pl)
* Make kern.geom.eli.overwrites sysctl a tunable as well.pjd2006-06-051-0/+1
|
* Add g_duplicate_bio() function which does the same thing what g_clone_bio()pjd2006-06-052-0/+26
| | | | is doing, but g_duplicate_bio() allocates new bio with M_WAITOK flag.
* Fix unaligned memory accesses on Alpha and possible other platforms.marcel2006-06-041-3/+4
| | | | | | | | | | | | | | | | | By using a pointer to struct dos_partition, we implicitly tell the compiler that the pointer is 4-bytes aligned, even though we know that's not the case. The fact that we only dereference the pointer to access a byte-wide field (field dp_ptyp) is not a guarantee that the compiler will in fact use a byte-wide load. On some platforms it's more efficient to use long word or quad word loads and use bit-shifting and bit-masking to get the intended byte. On those platforms an misaligned load will be the result. The fix is to use byte-wide pointer arithmetic based on sizeof() and offsetof() to avoid invalid casts which avoids that the compiler makes invalid assumptions. Backtrace provided by: wilko@ MFC after: 1 week
* Remove the trailing half of a sentence which was clearly supercededceri2006-05-241-2/+0
| | | | by the preceding one some time during editing.
* Use G_RAID3_FOREACH_SAFE_BIO() macro instead of G_RAID3_FOREACH_BIO() inpjd2006-05-041-6/+4
| | | | | | | | | two places where g_io_request() is called. g_io_request() can free bio structure so we can't reference it after and G_RAID3_FOREACH_BIO() macro was doing this. Found by: Coverity Prevent analysis tool (with my new models) MFC after: 1 day
* We shouldn't lock the topology here - we will panic on assertion insidepjd2006-04-301-2/+0
| | | | | | | g_raid3_bump_syncid(). Reported by: Bradley W. Dutton <brad-fbsd-stable@duttonbros.com> MFC after: 1 day
* - Don't hold the device sx lock when going to sleep.pjd2006-04-281-6/+23
| | | | | | | | - Prevent possible live-lock in case of memory problems by freeing already completed requests first. Reported and tested by: markus, Bradley W. Dutton <brad-fbsd-stable@duttonbros.com> MFC after: 1 day
* - Remove dead code.pjd2006-04-282-17/+18
| | | | | | | - Comment possible event miss, which isn't critical, but probably can be fixed by replacing the event lock usage with the queue lock. MFC after: 2 weeks
* Be sure to not destroy device twice. This is not possible in theory, butpjd2006-04-281-2/+13
| | | | | | with this change there is even no theoretical race. MFC after: 2 weeks
OpenPOWER on IntegriCloud