RHEL6: dm-multipath issues separate flush request, leading to incorrect /proc/diskstats and iostat output for writes with open("DSYNC") flag
Issue
- Single write to raw device using 'dd' with 'oflag=dsync' results in multiple block requests
- iostat output shows incorrect avgrq-sz for direct writes
- RHEL5 does not exhibit this behavior
Environment
- Red Hat Enterprise Linux 6
- 2.6.32-131.4.1.el6.x86_64
- device-mapper-multipath-0.4.9-41.el6.x86_64
-
Storage configuration
-
Single raw device -> dm-mp -> 2 paths to iSCSI LUN
# raw -qa /dev/raw/raw1: bound to major 253, minor 2 # dmsetup ls --tree | grep -A 3 '253:2' mpathj (253:2) ├─ (8:16) └─ (8:0) # multipath -ll | grep -A 4 'dm-2' mpathj (360a980006e424b626d3464766a784f65) dm-2 NETAPP,LUN size=1.0G features='1 queue_if_no_path' hwhandler='0' wp=rw `-+- policy='round-robin 0' prio=2 status=active |- 2:0:0:0 sda 8:0 active ready running `- 3:0:0:0 sdb 8:16 active ready running
-
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase of over 48,000 articles and solutions.
Welcome! Check out the Getting Started with Red Hat page for quick tours and guides for common tasks.
