Solaris: Workaround for incorrect LUN size issue

Today i have faced this issue, i hope it will help you to resolve incorrect LUN size issue.

You created a logical drive of capacity x GB, and mapped it so there is a LUN (Logical Unit Number) with size x GB. When you run format command, Solaris shows incorrect size for the logical drive.

eg.,
Partition table showing only 500 GB, where it is supposed to show 816 GB.

partition> p
Current partition table (original):
Total disk cylinders available: 53233 + 2 (reserved cylinders)

Part Tag Flag Cylinders Size Blocks
0 root wm 0 - 16 135.88MB (17/0/0) 274193
1 swap wu 17 - 33 135.88MB (17/0/0) 274193
2 backup wu 0 - 53232 500.41GB (53233/0/0) 858595057
3 unassigned wm 0 0 (0/0/0) 0
4 unassigned wm 0 0 (0/0/0) 0
5 unassigned wm 0 0 (0/0/0) 0
6 usr wm 34 - 53232 500.15GB (53199/0/0) 858046671
7 unassigned wm 0 0 (0/0/0) 0

It could be a Solaris bug. However the following steps may fix the issue and show the real size of the LUN.

Note:
I’m no storage expert – just outlining the steps that helped me resolving the issue. May be there are better/simpler ways to resolve this issue which I do not know yet.

Steps:

Run the following commands as root user:

# touch /reconfigure
# reboot

# format

Select the disk and check the partition table. Do you see the configured size? If yes, you are done – stop here. If not, go to the next step.

eg., continued ..

# format
Searching for disks...done


AVAILABLE DISK SELECTIONS:
0. c1t0d0
/pci@7c0/pci@0/pci@1/pci@0,2/LSILogic,sas@2/sd@0,0
1. c1t1d0
/pci@7c0/pci@0/pci@1/pci@0,2/LSILogic,sas@2/sd@1,0
2. c0t40d0 <SUN-StorEdge3510-415I cyl 65533 alt 2 hd 64 sec 408>
/pci@7c0/pci@0/pci@1/pci@0,2/SUNW,qlc@1/fp@0,0/ssd@w216000c0ffd7e5fb,0
3. c2t216000C0FFD7E5FBd1 <SUN-StorEdge3510-415I cyl 47588 alt 2 hd 64 sec 255>
/pci@7c0/pci@0/pci@1/pci@0,2/SUNW,qlc@1/fp@0,0/ssd@w216000c0ffd7e5fb,1

Specify disk (enter its number): 2
selecting c0t40d0
[disk formatted]
Warning: Current Disk has mounted partitions.


FORMAT MENU:
disk - select a disk
type - select (define) a disk type
partition - select (define) a partition table
current - describe the current disk
format - format and analyze the disk
repair - repair a defective sector
label - write label to the disk
analyze - surface analysis
defect - defect list management
backup - search for backup labels
verify - read and display labels
save - save new disk/partition definitions
inquiry - show vendor, product and revision
volname - set 8-character volume name
! - execute , then return
quit

format> p

PARTITION MENU:
0 - change `0' partition
1 - change `1' partition
2 - change `2' partition
3 - change `3' partition
4 - change `4' partition
5 - change `5' partition
6 - change `6' partition
7 - change `7' partition
select - select a predefined table
modify - modify a predefined partition table
name - name the current table
print - display the current table
label - write partition map and label to the disk
! - execute , then return
quit

partition> p
Current partition table (original):
Total disk cylinders available: 53233 + 2 (reserved cylinders)

Part Tag Flag Cylinders Size Blocks
0 root wm 0 - 16 135.88MB (17/0/0) 274193
1 swap wu 17 - 33 135.88MB (17/0/0) 274193
2 backup wu 0 - 53232 500.41GB (53233/0/0) 858595057
3 unassigned wm 0 0 (0/0/0) 0
4 unassigned wm 0 0 (0/0/0) 0
5 unassigned wm 0 0 (0/0/0) 0
6 usr wm 34 - 53232 500.15GB (53199/0/0) 858046671
7 unassigned wm 0 0 (0/0/0) 0

In this example the issue wasn’t resolved just by rebooting the server with /reconfigure file in root file system.

Now go back one level by quitting the partition table screen; and then type in the word ‘type‘. When you are shown the available drive types, select ‘0. Auto configure‘ option by typing 0. Usually this step would fix the issue and show the right LUN size. Just label the disk by selecting ‘label‘ option and verify the partition table one more time to see if it is showing the right size.

eg., continued ..

partition> q

format> type

AVAILABLE DRIVE TYPES:
0. Auto configure
1. Quantum ProDrive 80S
2. Quantum ProDrive 105S
3. CDC Wren IV 94171-344
4. SUN0104
5. SUN0207
6. SUN0327
7. SUN0340
8. SUN0424
9. SUN0535
10. SUN0669
11. SUN1.0G
12. SUN1.05
13. SUN1.3G
14. SUN2.1G
15. SUN2.9G
16. Zip 100
17. Zip 250
18. Peerless 10GB
19. SUN72G
20. SUN-StorEdge3510-415I
21. SUN-StorEdge3510-415I
22. SUN-StorEdge3510-415I
23. other

Specify disk type (enter its number)[21]: 0
c0t40d0: configured with capacity of 815.96GB
<SUN-StorEdge3510-415I cyl 65533 alt 2 hd 64 sec 408>
selecting c0t40d0
[disk formatted]

format> current
Current Disk = c0t40d0
<SUN-StorEdge3510-415I cyl 65533 alt 2 hd 64 sec 408>
/pci@7c0/pci@0/pci@1/pci@0,2/SUNW,qlc@1/fp@0,0/ssd@w216000c0ffd7e5fb,0

format> label
Ready to label disk, continue? y

format> p

PARTITION MENU:
0 - change `0' partition
1 - change `1' partition
2 - change `2' partition
3 - change `3' partition
4 - change `4' partition
5 - change `5' partition
6 - change `6' partition
7 - change `7' partition
select - select a predefined table
modify - modify a predefined partition table
name - name the current table
print - display the current table
label - write partition map and label to the disk
! - execute , then return
quit

partition> p
Current partition table (default):
Total disk cylinders available: 65533 + 2 (reserved cylinders)

Part Tag Flag Cylinders Size Blocks
0 root wm 0 - 10 140.25MB (11/0/0) 287232
1 swap wu 11 - 21 140.25MB (11/0/0) 287232
2 backup wu 0 - 65532 815.96GB (65533/0/0) 1711197696
3 unassigned wm 0 0 (0/0/0) 0
4 unassigned wm 0 0 (0/0/0) 0
5 unassigned wm 0 0 (0/0/0) 0
6 usr wm 22 - 65532 815.69GB (65511/0/0) 1710623232
7 unassigned wm 0 0 (0/0/0) 0

partition> q

In this particular example, we can see that the issue is resolved.

Leave a Reply

Your email address will not be published. Required fields are marked *

CAPTCHA * Time limit is exhausted. Please reload the CAPTCHA.

This site uses Akismet to reduce spam. Learn how your comment data is processed.