summaryrefslogtreecommitdiffstats
path: root/sys/geom
Commit message (Collapse)AuthorAgeFilesLines
...
* o Add the "PART::scheme" attribute that returns the name of themarcel2009-02-081-0/+7
| | | | | | | | | | | | | | | underlying partitioning scheme. o Put the start and end of the partition in the XML configuration. The start and end are the LBAs of the first and last sector (resp.) of the partition. They are currently identical to the offset and size attributes, which describe the partition as an offset and size in bytes, but may not in the future. The start and end will be used for the logical partition boundaries and may include metadata. The offset and size will always represent the useful storage space within the partition. Typically these two notions are the same, but for logical partitions in an extended partition, the EBR is more naturally treated as being part of the partition.
* Fix g_part_*dumpconf to return void to match kobj definition.imp2009-02-082-10/+8
| | | | Fix g_part_*name to return a const char * rather than a char *.
* In g_handleattr(), set bp->bio_completed also for the casemarcel2009-02-031-1/+2
| | | | | where len is 0. Otherwise g_getattr() will never succeed when it is handled by g_handleattr_str().
* Constify val in g_handleattr() and str in g_handleattr_str().marcel2009-02-012-4/+5
| | | | This allows passing string constants to g_handleattr_str().
* Remove unused unrhdr from GEOM character device module.ed2009-01-241-17/+1
| | | | | | Now that make_dev() doesn't require unit numbers to be unique, there is no need to use an unrhdr here to generate the numbers. Remove the entire init-routine, because it is optional.
* Prevent a panic that happens on SMP machines when removing a disk withtrasz2009-01-111-1/+11
| | | | | | | | many writes queued up. Reviewed by: phk, scottl Approved by: rwatson (mentor) Sponsored by: FreeBSD Foundation
* - Don't enforce an upper-bound to the number of sectors or heads,marius2009-01-061-7/+15
| | | | | | | | | | | | | | | | | | | | | allowing the full 16-bit width of the corresponding fields in the VTOC8 label to be used. The removed limits basically only held true for providers labeled using the synthetic geometry provided by cam_calc_geometry(9) but neither SCSI disks labeled with Solaris nor sufficiently large ATA disks. - Given that providers (originally) labeled with Solaris typically use the native geometry as reported by the target while FreeBSD typically uses a synthetic one put the message complaining about mismatching geometries between what the label indicates and what GEOM thinks the provider has, which we generally can't help, under bootverbose in order to not unnecessarily scare users. - For informational purposes add the non-matching values to the message complaining about them, similar to what r186501 did for g_part_bsd_read() except also indicating the origin of the values. - Make it clear that the messages emitted by this code refer to the VTOC8 support rather than to another existing scheme or to VTOC32.
* Don't enforce an upper-bound to the number of sectors or headsmarcel2009-01-061-4/+2
| | | | | that that the provider has. The limits we imposed were PC BIOS specific and not always applicable.
* Improve probing.marcel2009-01-041-5/+9
| | | | | | | | | o Don't check the dummy fields. o The entry is unused if either dp_mid is 0 or dp_sid is 0. o The start or end cylinder cannot be 0. o The start CHS cannot be equal to the end CHS. Submitted by: nyan
* - Fix an issue with access permissions to underlying disks used by a gvinumlulf2008-12-271-0/+10
| | | | | | | | plex. If the plex is a raid5 plex, and is being written to, parity data might have to be read from the underlying disks, requiring them to be opened for reading as well as writing. MFC after: 1 week
* When the geometry does not match the label, print out the values.obrien2008-12-261-3/+4
|
* Implement g_vfs_orphan(). Without it, the filesystem never closestrasz2008-12-161-10/+25
| | | | | | | | | | | the device, which means refcount on periph drivers never drops, which means cam_sim_free() never returns, which results in umass sleeping there ad infinitum. Submitted by: pjd Reviewed by: scottl, pjd Approved by: rwatson (mentor) Sponsored by: FreeBSD Foundation
* - Add missing word in comment.lulf2008-12-081-1/+1
|
* Make it possible to use gjournal for the root filesystem. Previously,trasz2008-12-062-0/+18
| | | | | | | | | an unclean shutdown would make it impossible to mount rootfs at boot. PR: kern/128529 Reviewed by: pjd Approved by: rwatson (mentor) Sponsored by: FreeBSD Foundation
* Trivial patch to show on which geom has the error been detected.ivoras2008-12-011-1/+2
| | | | | | Submitted by: Rick C. Petty Approved by: gnn (mentor) MFC after: 1 month
* Allow boot code to be smaller than what the scheme expects.marcel2008-12-014-5/+20
| | | | | This effectively changes the boot code size to be an upper bound and makes the interface more flexible.
* Allow dumpon to a partition of type FS_UNUSED as well.marcel2008-11-261-2/+3
|
* - Fix a potential NULL pointer reference. Note that this should not happen inlulf2008-11-251-1/+17
| | | | | | | | | practice, but it is a good programming practice and allows the kernel to not depend on userland correctness. - While there, make sizeof usage match the rest of the code. Found with: Coverity Prevent(tm) CID: 660, 662
* - Fix a potential NULL pointer reference. Note that this cannot happen inlulf2008-11-255-6/+51
| | | | | | | | practice, but it is a good programming practice nontheless and it allows the kernel to not depend on userland correctness. Found with: Coverity Prevent(tm) CID: 655-659, 664-667
* Partition type FS_UNUSED does not mean the partition entrymarcel2008-11-181-3/+1
| | | | | | | is unused. Unused partition entries have a partition size of zero. Therefore, partitions can have type FS_UNUSED. MFC after: 3 days
* Fix a panic caused by a corrupted table when the header ismarcel2008-11-061-4/+7
| | | | | | | | | still valid. We were checking the state of the header and not the table. PR: 119868 Based on a patch from: Jaakko Heinonen <jh@saunalahti.fi> MFC after: 1 week
* Improve VFS locking:attilio2008-11-021-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Implement real draining for vfs consumers by not relying on the mnt_lock and using instead a refcount in order to keep track of lock requesters. - Due to the change above, remove the mnt_lock lockmgr because it is now useless. - Due to the change above, vfs_busy() is no more linked to a lockmgr. Change so its KPI by removing the interlock argument and defining 2 new flags for it: MBF_NOWAIT which basically replaces the LK_NOWAIT of the old version (which was unlinked from the lockmgr alredy) and MBF_MNTLSTLOCK which provides the ability to drop the mountlist_mtx once the mnt interlock is held (ability still desired by most consumers). - The stub used into vfs_mount_destroy(), that allows to override the mnt_ref if running for more than 3 seconds, make it totally useless. Remove it as it was thought to work into older versions. If a problem of "refcount held never going away" should appear, we will need to fix properly instead than trust on such hackish solution. - Fix a bug where returning (with an error) from dounmount() was still leaving the MNTK_MWAIT flag on even if it the waiters were actually woken up. Just a place in vfs_mount_destroy() is left because it is going to recycle the structure in any case, so it doesn't matter. - Remove the markercnt refcount as it is useless. This patch modifies VFS ABI and breaks KPI for vfs_busy() so manpages and __FreeBSD_version will be modified accordingly. Discussed with: kib Tested by: pho
* Add support for reading Tivo Series 1 partitioning. This likely needsimp2008-11-021-12/+52
| | | | | | | | | a little refinement, but is good enough to commit as is. # Should look to see if I should move swab(3) into the kernel or just # provide the unoptimized routine here. Reviewed by: marcel@
* Revert r184136. Instead, push the check for crashdumpmap overflow into thekib2008-10-311-1/+1
| | | | | | | | MD i386 and amd64 dump code. Requested by: jhb Retested by: pho MFC after: 3 days (+ 176304 + 184136)
* - Import macros used in gmirror for printing gvinum debug messages and makinglulf2008-10-2610-72/+94
| | | | | | the output more standardized. - Add a sysctl to set the verbosity of the debug messages. - While there, fixup typos and wording in the messages.
* Invalid BSD disklabels have been created by sysinstall andmarcel2008-10-251-1/+6
| | | | | | | | | | | | | | | are possibly still being created. The d_secperunit field contains the number of sectors of the disk and not of the slice/partition to which the disklabel applies. Rather than reject the disklabel, we now silently adjust the field. Existing code, like bslabel(8), does not seem to check the label that extensively and seems to adjust fields as a side-effect as well. In other words, it's not that important apparently, so gpart should not be too strict about it. Reported by: nyan@ Reported by: Andriy Gapon <avg@icyb.net.ua>
* Allow dumps to partitions with a tag of 0. The legacymarcel2008-10-221-2/+5
| | | | | sunlabel implementation in FreeBSD does not use VTOC information and as such as no partition types.
* Do not overflow crashdumpmap.kib2008-10-211-1/+1
| | | | | | Reported and tested by: pho Reviewed by: jhb MFC after: 1 week
* The active and bootable flags are not part of the type.marcel2008-10-201-11/+82
| | | | | | | | | | Export the active and bootable flags as attributes in the configuration XML and allow them to be manipulated with the set/unset commands. Since libdisk treats the flags as part of the partition type, preserve behavior by keeping them included in the configuration text.
* Remove the struct thread unuseful argument from bufobj interface.attilio2008-10-102-3/+3
| | | | | | | | | | | | | | | | | | | | | In particular following functions KPI results modified: - bufobj_invalbuf() - bufsync() and BO_SYNC() "virtual method" of the buffer objects set. Main consumers of bufobj functions are affected by this change too and, in particular, functions which changed their KPI are: - vinvalbuf() - g_vfs_close() Due to the KPI breakage, __FreeBSD_version will be bumped in a later commit. As a side note, please consider just temporary the 'curthread' argument passing to VOP_SYNC() (in bufsync()) as it will be axed out ASAP Reviewed by: kib Tested by: Giovanni Trematerra <giovanni dot trematerra at gmail dot com>
* - Use the new gv_write_header function to write out the header when removing alulf2008-10-021-1/+1
| | | | drive to make sure that the header is in the correct format.
* - Remove unneeded macro since the config_length field in the header was changedlulf2008-10-021-5/+0
| | | | to 64 bit in the new format.
* - Make gvinum header on-disk structure consistent on all platforms by storinglulf2008-10-013-8/+232
| | | | | | | | | | | the gvinum header in fields of fixed size and in a big endian byte order rather than the size and byte order of the actual platform. Note that the change is backwards compatible with the old gvinum configuration format, but will save the configuration in the new format when the 'saveconfig' command is executed. Submitted by: Rick C. Petty <rick-freebsd -at- kiwi-computer.com>
* Return G_PART_PROBE_PRI_HIGH instead of G_PART_PROBE_PRI_NORMmarcel2008-09-291-1/+1
| | | | | | | | | if the probe succeeds. This guarantees that the BSD scheme wins over the MBR scheme when MBR gets to probe first. Build- or link-time conditions can cause schemes to end up in the linker set in a different order. Normally BSD is before MBR in the linker set and as such get to probe first. But typically when the kernel gets rebuild or relinked, this can change.
* Insert the null scheme at the head. This does not change anymarcel2008-09-291-1/+1
| | | | | functionality, but creates an invariant: the first element on the list is always the null scheme.
* Export the partition name in the conftxt and confxml output.marcel2008-09-271-6/+12
| | | | | | | The conftxt output is used by libdisk, and the confxml output is used by gpart itself (gpart show -l). Submitted by: nyan@
* Hold the root mount while we're tasting. It is possiblemarcel2008-09-271-0/+4
| | | | | | that a nested partition (typically the BSD disklabel) is not done tasting while the root file system is being mounted. While this is rare, it's still possible.
* Allow 255 sectors/track for the BSD disklabel. The previous limitmarcel2008-09-271-1/+1
| | | | | | | of 63 sectors/track is too PC BIOS specific. On pc98, where the BSD disklabel is used as well, 255 sectors/track is not uncommon. Submitted by: nyan@
* Remove unit2minor() use from kernel code.ed2008-09-261-1/+1
| | | | | | | | | | | | | | | When I changed kern_conf.c three months ago I made device unit numbers equal to (unneeded) device minor numbers. We used to require bitshifting, because there were eight bits in the middle that were reserved for a device major number. Not very long after I turned dev2unit(), minor(), unit2minor() and minor2unit() into macro's. The unit2minor() and minor2unit() macro's were no-ops. We'd better not remove these four macro's from the kernel, because there is a lot of (external) code that may still depend on them. For now it's harmless to remove all invocations of unit2minor() and minor2unit(). Reviewed by: kib
* Just a fixup for a KTRACE message I stumbled upon many moons ago.sbruno2008-09-181-1/+1
| | | | | Reviewed by: Scott Long MFC after: 2 days
* - Add a new ioctl for getting the provider name of a geom provider.lulf2008-09-071-0/+7
| | | | | | | | - Add a routine for looking up a device and checking if it is a valid geom provider given a partial or full path to its device node. Reviewed by: phk Approved by: pjd (mentor)
* Fix build.rpaulo2008-09-051-2/+2
|
* Keep entries sorted.rpaulo2008-09-053-3/+3
|
* Include the vendor in the partition name.rpaulo2008-09-051-1/+1
|
* Detect Apple HFS GPT slices.rpaulo2008-09-053-1/+9
|
* Decontextualize vfs_busy(), vfs_unbusy() and vfs_mount_alloc() functions.attilio2008-08-311-5/+4
| | | | | | Manpages are updated accordingly. Tested by: Diego Sardina <siarodx at gmail dot com>
* Commit step 1 of the vimage project, (network stack)bz2008-08-171-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | virtualization work done by Marko Zec (zec@). This is the first in a series of commits over the course of the next few weeks. Mark all uses of global variables to be virtualized with a V_ prefix. Use macros to map them back to their global names for now, so this is a NOP change only. We hope to have caught at least 85-90% of what is needed so we do not invalidate a lot of outstanding patches again. Obtained from: //depot/projects/vimage-commit2/... Reviewed by: brooks, des, ed, mav, julian, jamie, kris, rwatson, zec, ... (various people I forgot, different versions) md5 (with a bit of help) Sponsored by: NLnet Foundation, The FreeBSD Foundation X-MFC after: never V_Commit_Message_Reviewed_By: more people than the patch
* Style(9).pjd2008-08-121-3/+4
|
* Add sbuf_new_auto as a shortcut for the very common case of creating ades2008-08-099-19/+19
| | | | | | | completely dynamic sbuf. Obtained from: Varnish MFC after: 2 weeks
* Trivial commit to attempt to diagnose a svn problem. Addpeter2008-07-221-0/+1
| | | | comment that Tivo disks are APM, but do not have a DDR record.
OpenPOWER on IntegriCloud