]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commit
os/bluestore: fix aio pwritev lost data problem.
authorkungf <yang.wang@easystack.cn>
Tue, 16 Apr 2019 11:21:41 +0000 (19:21 +0800)
committerSage Weil <sage@redhat.com>
Mon, 29 Apr 2019 17:46:30 +0000 (12:46 -0500)
commit4d33114a40d5ae0d541c36175977ca22789a3b88
treed06dd252c9b59484578d0863b41deb932459d9c6
parent3bc3433508593bb4f0f70f00588e3d105852db00
os/bluestore: fix aio pwritev lost data problem.

On Linux, write() (and similar system calls) will transfer at most
0x7ffff000 (2,147,479,552) bytes, it will cap data if aio pwritev
more than 0x7ffff000, so we have the split the data to more aio submit.

Signed-off-by: kungf <yang.wang@easystack.cn>
src/os/bluestore/KernelDevice.cc
src/os/bluestore/KernelDevice.h