On a CentOS 6 64bit system, I added a couple prototype SAS SSDs on a HP P411 raid controller (I believe this is a rebranded LSI megaraid with HP firmware) and am trying to format them for best random IO performance with something like postgresql.
so, I used the raid command tool to build a raid0 with 2 SAS SSDs
# hpacucli ctrl slot=1 logicaldrive 3 show detail
Smart Array P410 in Slot 1
array C
Logical Drive: 3 Size: 186.3 GB Fault Tolerance: RAID 0 Heads: 255 Sectors Per Track: 32 Cylinders: 47869 Strip Size: 256 KB Status: OK Array Accelerator: Enabled Unique Identifier: 600508B1001C2EDB6026F9ADF9F88A09 Disk Name: /dev/sdc Mount Points: /ssd 186.3 GB Logical Drive Label: AF36B716PACCRCN810E1R9J646A
# hpacucli ctrl slot=1 show config
Smart Array P410 in Slot 1 (sn: PACCRCN810E1R9J) .... array C (Solid State SAS, Unused Space: 0 MB)
logicaldrive 3 (186.3 GB, RAID 0, OK)
physicaldrive 1I:1:23 (port 1I:box 1:bay 23, Solid State SAS, 100 GB, OK) physicaldrive 1I:1:24 (port 1I:box 1:bay 24, Solid State SAS, 100 GB, OK)
# hpacucli ctrl slot=1 show ssdinfo detail
Smart Array P410 in Slot 1 Total Solid State Drives with Wearout Status: 0 Total Smart Array Solid State Drives: 2 Total Solid State SAS Drives: 2 Total Solid State Drives: 2
array C
physicaldrive 1I:1:23 Port: 1I Box: 1 Bay: 23 Status: OK Drive Type: Data Drive Interface Type: Solid State SAS Size: 100 GB Firmware Revision: 1234 Serial Number: 999999999999999999 Model: XYZZY M2011 Current Temperature (C): 30 Maximum Temperature (C): 37 SSD Smart Trip Wearout: Not Supported PHY Count: 2 PHY Transfer Rate: 6.0GBPS, Unknown
physicaldrive 1I:1:24 Port: 1I Box: 1 Bay: 24 Status: OK Drive Type: Data Drive Interface Type: Solid State SAS Size: 100 GB Firmware Revision: 1234 Serial Number: 999999999999999999 Model: XYZZY M2011 Current Temperature (C): 29 Maximum Temperature (C): 36 SSD Smart Trip Wearout: Not Supported PHY Count: 2 PHY Transfer Rate: 6.0GBPS, Unknown
# tail /var/log/messages Oct 22 22:56:24 svfis-dl180b kernel: sd 0:0:0:3: Attached scsi generic sg3 type 0 Oct 22 22:56:24 svfis-dl180b kernel: sd 0:0:0:3: [sdc] 390611040 512-byte logical blocks: (199 GB/186 GiB) Oct 22 22:56:24 svfis-dl180b kernel: sd 0:0:0:3: [sdc] 8192-byte physical blocks Oct 22 22:56:24 svfis-dl180b kernel: sd 0:0:0:3: [sdc] Write Protect is off Oct 22 22:56:24 svfis-dl180b kernel: sd 0:0:0:3: [sdc] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA Oct 22 22:56:24 svfis-dl180b kernel: sdc: unknown partition table Oct 22 22:56:24 svfis-dl180b kernel: sd 0:0:0:3: [sdc] Attached SCSI disk Oct 22 22:56:36 svfis-dl180b cmaeventd[2540]: Logical drive 3 of Array Controller in slot 1, has changed from status Unconfigured to OK
# mkfs.ext4 /dev/sdc mke2fs 1.41.12 (17-May-2010) /dev/sdc is entire device, not just one partition! Proceed anyway? (y,n) y Filesystem label= OS type: Linux Block size=8192 (log=3) Fragment size=8192 (log=3) Stride=1 blocks, Stripe width=0 blocks 12210528 inodes, 24413190 blocks 1220659 blocks (5.00%) reserved for the super user First data block=0 Maximum filesystem blocks=4311218176 373 block groups 65528 blocks per group, 65528 fragments per group 32736 inodes per group Superblock backups stored on blocks: 65528, 196584, 327640, 458696, 589752, 1638200, 1769256, 3210872, 5307768, 8191000, 15923304, 22476104
Writing inode tables: done Creating journal (32768 blocks): done Writing superblocks and filesystem accounting information: done
# mount -t ext4 /dev/sdc /ssd mount: wrong fs type, bad option, bad superblock on /dev/sdc, missing codepage or helper program, or other error In some cases useful info is found in syslog - try dmesg | tail or so
# tail /var/log/messages ... Oct 22 23:54:36 svfis-dl180b kernel: EXT4-fs (sdc): bad block size 8192
ok, so lets try 4K blocks?
# mkfs.ext4 -b 4096 /dev/sdc mke2fs 1.41.12 (17-May-2010) /dev/sdc is entire device, not just one partition! Proceed anyway? (y,n) y mkfs.ext4: Invalid argument while setting blocksize; too small for device
hmmm. can't do that either?
can I configure this 64bit system for large pages or something so it will support 8K blocks?