NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

install/55381: sysinst wrong size check on moving partitions forward



>Number:         55381
>Category:       install
>Synopsis:       sysinst wrong size check on moving partitions forward
>Confidential:   no
>Severity:       serious
>Priority:       high
>Responsible:    install-manager
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Fri Jun 12 18:35:00 +0000 2020
>Originator:     Izumi Tsutsui
>Release:        NetBSD 9.0
>Organization:
>Environment:
System: all
Architecture: all
Machine: all
>Description:
On a partition editor of sysinst, there is something wrong
in partition size check when users tries to move partitions forward.

If users change a value of "start" to move it forward
(i.e. set a smaller value than before), available
size should be "previous size + extra size by moving start"
but sysinst seems to use a size "from moved start to previous start".

>How-To-Repeat:

---

 We now have your disklabel partitions for wd0 below.  This is your last   
 chance to change them.
 
 Flags: (I)nstall, (N)ewfs.  Total size: 512M, free: 0B

     Start (sec)    End (sec)   Size (sec)  FS type Flag Filesystem
    ------------ ------------ ------------ -------- ---- ----------------
>a:        20546       983793       963248   4.2BSD      /
 b:       983795      1049327        65533     swap
 c:            0      1049327      1049328 Whole disk
    ------------ ------------ ------------ -------- ---- ----------------
 e: Change input units (sectors/cylinders/MB/GB)
 f: Edit name of the disk
 g: Clone external partition(s)
 h: Cancel
 x: Partition sizes ok

---

Select "a:" to change partition size:

---

 We now have your disklabel partitions for wd0 below.  This is your last   
 chance to chan+------------------------------------------------------------+
               | The current values for this partition are                  |
 Flags: (I)nsta| displayed below.                                           |
               |                                                            |
     Start (sec| Select the field you wish to change:                       |
    -----------|                                                            |
>a:        2054| a:             type : FFS                                  |
 b:       98379|>b:            start : 20546 sec                            |
 c:            | c:             size : 963248 sec                           |
    -----------| d:              end : 983794 sec                           |
 e: Change inpu| e:          install : No                                   |
 f: Edit name o| f:            newfs : No                                   |
 g: Clone exter| g:            mount : Yes                                  |
 h: Cancel     | h:    mount options :                                      |
 x: Partition s| i:      mount point : /                                    |
               | j: Change input units (sectors/cylinders/MB/GB)            |
               | k: Restore original values                                 |
               | l: Delete partition                                        |
               | m: Cancel                                                  |
               | x: OK                                                      |
               +------------------------------------------------------------+

---

Change "start" from "20546" to "0":

---

 We now have your disklabel partitions for wd0 below.  This is your last   
 chance to chan+------------------------------------------------------------+
               | The current values for this partition are                  |
 Flags: (I)nsta| displayed below.                                           |
               |                                                            |
     Start (sec| Select the field you wish to change:                       |
    -----------|                                                            |
>a:        2054| a:             type : FFS                                  |
 b:       98379|>b:            start : 20546 sec                            |
 c:            | c:             size : 963248 sec                           |
    -----------| d:              end : 983794 sec                           |
 e: C+--------------------------------------------------------------------+ |
 f: E|Special values that can be entered for the offset value:            | |
 g: C|    -1:   start at the beginning                                    | |
 h: C|   a-c:   start at the end of given partition                       | |
 x: P|     d:   start at the beginning of given free space                | |
     |                                                                    | |
     |d: Space at 0..983795 sec (size 983795 sec)                         | |
     |                                                                    | |
     |Start (sec) [20546]: 0                                              | |
     +--------------------------------------------------------------------+ |
               +------------------------------------------------------------+

---

Next change "size":

---

 We now have your disklabel partitions for wd0 below.  This is your last   
 chance to chan+------------------------------------------------------------+
               | The current values for this partition are                  |
 Flags: (I)nsta| displayed below.                                           |
               |                                                            |
     Start (sec| Select the field you wish to change:                       |
    -----------|                                                            |
>a:        2054| a:             type : FFS                                  |
 b:       98379| b:            start : 0 sec                                |
 c:            |>c:             size : 983794 sec                           |
    -----------| d:              end : 983794 sec                           |
 e: Change inpu| e:          install : Yes                                  |
 f: Edit name o| f:            newfs : No                                   |
 g: Clone exter| g:            mount : Yes                                  |
 h: Cancel     | h:    mount options :                                      |
 x: Partition s| i:      mount point : /                                    |
               | j: Change input units (sectors/cylinders/MB/GB)            |
               | k: Restore original values                                 |
               | l: Delete partition                                        |
               | m: Cancel                                                  |
               | x: OK                                                      |
               +------------------------------------------------------------+

---

 We now have your disklabel partitions for wd0 below.  This is your last   
 chance to chan+------------------------------------------------------------+
               | The current values for this partition are                  |
 Flags: (I)nsta| displayed below.                                           |
               |                                                            |
     Start (sec| Select the field you wish to change:                       |
    -----------|                                                            |
>a:        2054| a:             type : FFS                                  |
 b:       98379| b:            start : 0 sec                                |
 c:            |>c:             size : 983794 sec                           |
    -----------| d:              end : 983794 sec                           |
 e: C+--------------------------------------------------------------------+ |
 f: E|Special values that can be entered for the size value:              | |
 g: C|    -1:   use until the end                                         | |
 h: C|   a-c:   use until the given partition                             | |
 x: P|                                                                    | |
     |Size (max 20546 sec) [20546]:                                       | |
     +--------------------------------------------------------------------+ |
               | l: Delete partition                                        |
               | m: Cancel                                                  |
               | x: OK                                                      |
               +------------------------------------------------------------+

---

sysinst shows "(max 20546 sec)" but it should be "(20546 + 983794)"
in this case.

>Fix:
Check boundaries correctly even in "moving forward" case?

---
Izumi Tsutsui



Home | Main Index | Thread Index | Old Index