TARGET - SERVER

linux-4dtq:~ #uname -r
2.6.27.12-except_export+readahead

linux-4dtq:~ # free
             total       used       free     shared    buffers     cached
Mem:        508168     111160     397008          0       4308      62648
-/+ buffers/cache:      44204     463964
Swap:            0          0          0

linux-4dtq:~ # cat /sys/block/sda/queue/scheduler
noop anticipatory deadline [cfq]
linux-4dtq:~ # cat /sys/block/sdb/queue/scheduler
noop anticipatory deadline [cfq]

linux-4dtq:~ # cat /sys/block/sda/queue/context_readahead
0
linux-4dtq:~ # cat /sys/block/sdb/queue/context_readahead
0

linux-4dtq:~ # echo 1 > /sys/block/sda/queue/context_readahead
linux-4dtq:~ # echo 1 > /sys/block/sdb/queue/context_readahead
linux-4dtq:~ # cat /sys/block/sdb/queue/context_readahead
1
linux-4dtq:~ # cat /sys/block/sda/queue/context_readahead
1

linux-4dtq:~ # blockdev --setra 4096 /dev/sda
linux-4dtq:~ # blockdev --setra 4096 /dev/sdb

linux-4dtq:~ # mdadm --assemble /dev/md0 /dev/sd[ab]
mdadm: /dev/md/0 has been started with 2 drives.
linux-4dtq:~ # vgchange -a y
  3 logical volume(s) in volume group "raid" now active
linux-4dtq:~ # lvs
  LV   VG   Attr   LSize   Origin Snap%  Move Log Copy%  Convert
  1st  raid -wi-a-  46.00G
  2nd  raid -wi-a- 374.00G
  3rd  raid -wi-a-  46.00G

 
linux-4dtq:~ # mount -t debugfs none /sys/kernel/debug/
mount: none already mounted or /sys/kernel/debug/ busy

linux-4dtq:~ # mount
/dev/sdc1 on / type ext3 (rw,acl,user_xattr)
/proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
debugfs on /sys/kernel/debug type debugfs (rw)
udev on /dev type tmpfs (rw)
devpts on /dev/pts type devpts (rw,mode=0620,gid=5)
/dev/sdc2 on /.scst type ext3 (rw,acl,user_xattr)
fusectl on /sys/fs/fuse/connections type fusectl (rw)
securityfs on /sys/kernel/security type securityfs (rw)

linux-4dtq:~ # umount debugfs

linux-4dtq:~ # mount
/dev/sdc1 on / type ext3 (rw,acl,user_xattr)
/proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
udev on /dev type tmpfs (rw)
devpts on /dev/pts type devpts (rw,mode=0620,gid=5)
/dev/sdc2 on /.scst type ext3 (rw,acl,user_xattr)
fusectl on /sys/fs/fuse/connections type fusectl (rw)
securityfs on /sys/kernel/security type securityfs (rw)

linux-4dtq:~ # mount -t debugfs none /sys/kernel/debug/

linux-4dtq:~ # mount
/dev/sdc1 on / type ext3 (rw,acl,user_xattr)
/proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
udev on /dev type tmpfs (rw)
devpts on /dev/pts type devpts (rw,mode=0620,gid=5)
/dev/sdc2 on /.scst type ext3 (rw,acl,user_xattr)
fusectl on /sys/fs/fuse/connections type fusectl (rw)
securityfs on /sys/kernel/security type securityfs (rw)
none on /sys/kernel/debug type debugfs (rw)

linux-4dtq:~ # echo > /sys/kernel/debug/readahead/stats
linux-4dtq:~ # cat /sys/kernel/debug/readahead/stats
pattern         count sync_count  eof_count       size async_size     actual
none                0          0          0          0          0          0
initial0            0          0          0          0          0          0
initial             0          0          0          0          0          0
subsequent          0          0          0          0          0          0
marker              0          0          0          0          0          0
trail               0          0          0          0          0          0
oversize            0          0          0          0          0          0
reverse             0          0          0          0          0          0
stride              0          0          0          0          0          0
thrash              0          0          0          0          0          0
mmap                0          0          0          0          0          0
fadvise             1          1          1          0          0          0
random              0          0          0          0          0          0
all                 1          1          1          0          0          0



NOW ON INITIATOR
1) Connect and run:
dd if=/dev/sdb of=/dev/null bs=64K count=8000 (result 50,9)
dd if=/dev/sdc of=/dev/null bs=64K count=8000 (result 48,7)



ON TARGET - SERVER
linux-4dtq:/ # cat /sys/kernel/debug/readahead/stats
pattern         count sync_count  eof_count       size async_size     actual
none                0          0          0          0          0          0
initial0           71         71         41          4          3          2
initial            23         23          0          4          3          4
subsequent       3845          4         21         31         31         31
marker           4222          0          1         31         31         31
trail               0          0          0          0          0          0
oversize            0          0          0          0          0          0
reverse             0          0          0          0          0          0
stride              0          0          0          0          0          0
thrash              0          0          0          0          0          0
mmap              135        135         15         32          0         17
fadvise           180        180        180          0          0          1
random             23         23          2          1          0          1
all              8499        436        260         30         30         30


linux-4dtq:/ # echo 1 > /sys/kernel/debug/readahead/trace_enable


NOW ON INITIATOR
1) Run: (i reduce count parameter)
dd if=/dev/sdc of=/dev/null bs=64K count=800 (result 46,8)
dd if=/dev/sdb of=/dev/null bs=64K count=800 (result 47,2)


NOW ON TARGET
linux-4dtq:/ # echo 0 > /sys/kernel/debug/readahead/trace_enable
linux-4dtq:/ # dmesg (check file dmesg)



