I'm trying to get this working properly.  It functions, but I'm getting 
copy-modify-write messages.

Here's my sd.conf and sections of console log.
Can anyone suggest what's wrong?

Note that mdb reports the physical block size as 512 w/ the others as 4096.  
But prtvtoc reports 4096 block size The other three drives (sd1,sd2,sd3) are 
the system SATA drives (Seagate ST2000DM001).

Thanks,
Reg

--------------------------- sd.conf------------------------------------------

name="sd" class="scsi" target=0 lun=0;
name="sd" class="scsi" target=1 lun=0;
name="sd" class="scsi" target=2 lun=0;
name="sd" class="scsi" target=3 lun=0;
name="sd" class="scsi" target=4 lun=0;
name="sd" class="scsi" target=5 lun=0;
name="sd" class="scsi" target=6 lun=0;
name="sd" class="scsi" target=7 lun=0;
name="sd" class="scsi" target=8 lun=0;
name="sd" class="scsi" target=9 lun=0;
name="sd" class="scsi" target=10 lun=0;
name="sd" class="scsi" target=11 lun=0;
name="sd" class="scsi" target=12 lun=0;
name="sd" class="scsi" target=13 lun=0;
name="sd" class="scsi" target=14 lun=0;
name="sd" class="scsi" target=15 lun=0;

#
# The following stub node is needed for pathological bottom-up
# devid resolution on a self-identifying transport. 
#
name="sd" class="scsi-self-identifying";

#
# Associate the driver with devid resolution.
#
ddi-devid-registrant=1;

sd-config-list=
   "Toshiba External USB 3.0" ,"physical-block-size:4096"
;

--------------------------- console log -------------------------------------
root@N40L:/kernel/drv# update_drv -vf sd
Cannot unload module: sd
Will be unloaded upon reboot.
Forcing update of sd.conf.
sd.conf updated in the kernel.
root@N40L:~# echo ::sd_state | mdb -k | egrep '^un|blocksize'
un 0: ffffff01c998f940
    un_sys_blocksize = 0x1000
    un_tgt_blocksize = 0x1000
    un_phy_blocksize = 0x200
    un_f_tgt_blocksize_is_valid = 0x1
un 1: ffffff01c5db2340
    un_sys_blocksize = 0x200
    un_tgt_blocksize = 0x200
    un_phy_blocksize = 0x1000
    un_f_tgt_blocksize_is_valid = 0x1
un 2: ffffff01c5db1d00
    un_sys_blocksize = 0x200
    un_tgt_blocksize = 0x200
    un_phy_blocksize = 0x1000
    un_f_tgt_blocksize_is_valid = 0x1
un 3: ffffff01c5db16c0
    un_sys_blocksize = 0x200
    un_tgt_blocksize = 0x200
    un_phy_blocksize = 0x1000
    un_f_tgt_blocksize_is_valid = 0x1

root@N40L:/dpool# zpool create tpool c5t0d0s0
root@N40L:/dpool# /usr/bin/time dd if=/dev/zero of=/tpool/zero.dat bs=64k 
count=1000
1000+0 records in
1000+0 records out
65536000 bytes (66 MB) copied, 7.80568 s, 8.4 MB/s

real        7.8
user        0.0
sys         0.1
root@N40L:/dpool# dmesg

[snip]

age@3/disk@0,0 (sd0):
Feb  4 13:17:59 N40L    I/O request is not aligned with 4096 disk sector size. 
It is handled through Read Modify Write but the performance is very low.
Feb  4 13:18:09 N40L scsi: [ID 107833 kern.warning] WARNING: 
/pci@0,0/pci103c,1609@12,2/storage@3/disk@0,0 (sd0):
Feb  4 13:18:09 N40L    812 I/O requests are not aligned with 4096 disk sector 
size in 10 seconds. They are handled through Read Modify Write but the 
performance is very low!
root@N40L:/dpool# prtvtoc /dev/rdsk/c5t0d0s0
* /dev/rdsk/c5t0d0s0 partition map
*
* Dimensions:
*    4096 bytes/sector
* 732566646 sectors
* 732566635 accessible sectors
*
* Flags:
*   1: unmountable
*  10: read-only
*
* Unallocated space:
*       First     Sector    Last
*       Sector     Count    Sector 
*           6       250       255
*
*                          First     Sector    Last
* Partition  Tag  Flags    Sector     Count    Sector  Mount Directory
       0      4    00        256 732550001 732550256
       8     11    00  732550257     16384 732566640
root@N40L:/dpool# 


_______________________________________________
OpenIndiana-discuss mailing list
OpenIndiana-discuss@openindiana.org
http://openindiana.org/mailman/listinfo/openindiana-discuss

Reply via email to