| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
o BSD uses 32-bit block numbers. Limit the scheme to 2^32-1
blocks when the media is larger.
|
|
|
|
|
|
|
| |
o Don't create an APM scheme underneath another scheme when
the probe doesn't allow it.
o APM uses 32-bit block numbers. Limit the scheme to 2^32-1
blocks when the media is larger.
|
|
|
|
| |
the BSD or GPT schemes can take precedence as appropriate.
|
|
|
|
|
|
|
| |
partition types. This is to help users used to the old behaviour.
Reviewed by: marcel
Approved by: gnn (mentor)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
"raw" names. While there, change the formatting of extended MSDOS partitions
so that the dot (".") is not used to separate two numbers (which kind of
looks like the whole is a decimal number). Use "+" instead, which also
hints that the second part of the name is the offset from the start of
the partition in the first part of the name. Also change the offset from
decimal to hexadecimal notation, simply for aesthetic reasons and future
compatibility.
GEOM_PART is the default in 8-CURRENT but not yet in 7-STABLE so this
changeset can be MFC-ed without causing major problems from the second
part.
Reviewed by: marcel
Approved by: gnn (mentor)
MFC after: 2 weeks
|
|
|
|
| |
Reviewed by: marcel
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
properly. Otherwise the minimum of 1 is used and you can
only insert a single partition/slice and only at sector
0 (index 1).
o When adding a partition/slice, recalculate the index after
the start and size of the partition/slice are adjusted to
make them a multiple of the track size. Since the precheck
method sets the index based on the start of the partition
as provided by the user, we know that we're off by at most
1 and adjusting the index is safe.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
1. Extend geom_dev by having it create the symlink (i.e. call
make_dev_alias) based on the DIOCGPROVIDERALIAS ioctl.
In this way the functionaility is generic and thus usable
by any geom/provider.
2. Have g_part handle said ioctl through the devalias method,
so that it's under control of the scheme itself. By design
the alias will not be created for newly added partitions.
|
|
|
|
| |
removed.
|
|
|
|
|
|
| |
always succeed if not implemented.
Pointy hat: marcel
|
|
|
|
|
| |
by the BSD scheme, ended up not to be needed. Remove to avoid
abuse and to keep the bloat to a minimum.
|
|
|
|
|
| |
as to create and destroy the extended partitioning scheme. In
other words: full support.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
method allows schemes to reject the ctl request, pre-check
the parameters and/or modify/set parameters. There are 2
use cases that triggered the addition:
1. When implementing a R/O scheme, deletes will still
happen to the in-memory representation. The scheme is
not involved in that operation. The pre-check method
can be used to fail the delete up-front. Without this
the write to disk will typically fail, but at that
time the delete already happened.
2. The EBR scheme uses a linked list to record slices.
There's no index. The EBR scheme defines the index
as a function of the start LBA of the partition. The
add verb picks an index for the range and then invokes
the add method of the scheme to fill in the blanks. It
is too late for the add method to change the index.
The pre-check is used to set the index up-front. This
also (silently) overrides/nullifies any (pointless)
user-specified index value.
|
|
|
|
| |
Submitted by: marcel@
|
|
|
|
|
|
|
|
| |
found inside extended partitions and used to create logical partitions.
At this time write/modify support is not (yet) present.
The EBR and MBR schemes both check the parent scheme. The MBR will
back-off when nested under another MBR, whereas the EBR only nests
under a MBR.
|
|
|
|
|
| |
or invalid, initialize it to the start of the partition. Adjust
the mediasize when the offset lies somewhere inside the partition.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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_*name to return a const char * rather than a char *.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
that that the provider has. The limits we imposed were PC BIOS
specific and not always applicable.
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
| |
This effectively changes the boot code size to be an upper
bound and makes the interface more flexible.
|
| |
|
|
|
|
|
|
|
| |
is unused. Unused partition entries have a partition size
of zero. Therefore, partitions can have type FS_UNUSED.
MFC after: 3 days
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
| |
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@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
| |
sunlabel implementation in FreeBSD does not use VTOC
information and as such as no partition types.
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
functionality, but creates an invariant: the first element
on the list is always the null scheme.
|
|
|
|
|
|
|
| |
The conftxt output is used by libdisk, and the confxml
output is used by gpart itself (gpart show -l).
Submitted by: nyan@
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
| |
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@
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
completely dynamic sbuf.
Obtained from: Varnish
MFC after: 2 weeks
|
|
|
|
| |
comment that Tivo disks are APM, but do not have a DDR record.
|
|
|
|
|
| |
partition entries. Implement the setunset method for the MBR
scheme to control the active flag.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|