svn commit: r223356 - head/sbin/geom/class/part
Xin LI
delphij at delphij.net
Tue Jun 21 06:04:45 UTC 2011
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
On 06/20/11 22:03, Andrey V. Elsukov wrote:
> On 21.06.2011 8:46, Xin LI wrote:
>> Author: delphij
>> Date: Tue Jun 21 04:46:00 2011
>> New Revision: 223356
>> URL: http://svn.freebsd.org/changeset/base/223356
>>
>> Log:
>> Mod the offset padding by alignment. Without this change we may
>> pad too much when underlying GEOM object have a zero stripesize.
>
> No. In any way offset value could not be greater than mediasize.
I don't think this changeset do anything with mediasize?
> And it do nothing when alignment value is 1.
No, an alignment value of 1 makes offset = 0, which is the intended
behavior.
Or did I misunderstood the code?
Thanks in advance!
>> MFC after: 1 month
>
> I did not MFC'd these changes yet.
>
>> Modified:
>> head/sbin/geom/class/part/geom_part.c
>>
>> Modified: head/sbin/geom/class/part/geom_part.c
>> ==============================================================================
>> --- head/sbin/geom/class/part/geom_part.c Tue Jun 21 04:06:39 2011 (r223355)
>> +++ head/sbin/geom/class/part/geom_part.c Tue Jun 21 04:46:00 2011 (r223356)
>> @@ -362,7 +362,7 @@ gpart_autofill_resize(struct gctl_req *r
>> goto done;
>> }
>>
>> - offset = pp->lg_stripeoffset / pp->lg_sectorsize;
>> + offset = (pp->lg_stripeoffset / pp->lg_sectorsize) % alignment;
>> last = (off_t)strtoimax(find_geomcfg(gp, "last"), NULL, 0);
>> LIST_FOREACH(pp, &gp->lg_provider, lg_provider) {
>> s = find_provcfg(pp, "index");
>> @@ -497,7 +497,7 @@ gpart_autofill(struct gctl_req *req)
>> alignment = len;
>>
>> /* Adjust parameters to stripeoffset */
>> - offset = pp->lg_stripeoffset / pp->lg_sectorsize;
>> + offset = (pp->lg_stripeoffset / pp->lg_sectorsize) % alignment;
>> start = ALIGNUP(start + offset, alignment);
>> if (size > alignment)
>> size = ALIGNDOWN(size, alignment);
>>
>>
>
>
- --
Xin LI <delphij at delphij.net> https://www.delphij.net/
FreeBSD - The Power to Serve! Live free or die
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.17 (FreeBSD)
iQEcBAEBCAAGBQJOADR6AAoJEATO+BI/yjfBG5gH/2AFDv/cyvUXM16C5GBKjj8m
XOqqRziAPz8VsICXjFLBdx0wxguYAB7Dr4U8krUgH0rOMIUXuew6lNmjQxfW2TQd
66o8XMTe9WdV28SZcJDJWpU5vAD2lQcGs88AjJt4fbtndHte3XN1kjBdZ6DpmMLw
gdbn1iU836DFTE4kMdOhNb+h4RRbGNNx8QJ0jJO0RNrIUMy+w/dbgGUTqjYm6hTj
vbZlA41QxSEx/cTDH7puje3/E9j9cIaOo3sCNpk1YrnVF7Syzn7arBruCmpDEVsN
NIGVbD+WMvS4VxLK1Vwb6C1G6nYmf74fHDmkcwV4sg5iUw8V2SS6AO73ml9I/7U=
=nfFW
-----END PGP SIGNATURE-----
More information about the svn-src-all
mailing list