New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

os/bluestore/KernelDevice: helpful warning when aio limit exhausted #15116

Merged
merged 1 commit into from May 18, 2017

Conversation

Projects
None yet
3 participants
@liewegas
Member

liewegas commented May 16, 2017

Suggested-by: Dan Van Der Ster daniel.vanderster@cern.ch
Signed-off-by: Sage Weil sage@redhat.com

@liewegas

This comment has been minimized.

Show comment
Hide comment
@liewegas
Member

liewegas commented May 16, 2017

@dvanders

This comment has been minimized.

Show comment
Hide comment
@dvanders

dvanders May 17, 2017

Contributor

@liewegas I'm confused. Per man io_setup we should check errno, not the return code.

Contributor

dvanders commented May 17, 2017

@liewegas I'm confused. Per man io_setup we should check errno, not the return code.

os/bluestore/KernelDevice: helpful warning when aio limit exhausted
Suggested-by: Dan Van Der Ster <daniel.vanderster@cern.ch>
Signed-off-by: Sage Weil <sage@redhat.com>
@liewegas

This comment has been minimized.

Show comment
Hide comment
@liewegas

liewegas May 17, 2017

Member
Member

liewegas commented May 17, 2017

@liewegas

This comment has been minimized.

Show comment
Hide comment
@liewegas

liewegas May 17, 2017

Member
       Note that the libaio wrapper function uses a different type (io_context_t *) for the ctx_idp argument.  Note also that the libaio wrapper does not follow the usual C library  conventions  for  indicating
       errors: on error it returns a negated error number (the negative of one of the values listed in ERRORS).  If the system call is invoked via syscall(2), then the return value follows the usual conventions
       for indicating an error: -1, with errno set to a (positive) value that indicates the error.

@dvanders libaio is weird.

Member

liewegas commented May 17, 2017

       Note that the libaio wrapper function uses a different type (io_context_t *) for the ctx_idp argument.  Note also that the libaio wrapper does not follow the usual C library  conventions  for  indicating
       errors: on error it returns a negated error number (the negative of one of the values listed in ERRORS).  If the system call is invoked via syscall(2), then the return value follows the usual conventions
       for indicating an error: -1, with errno set to a (positive) value that indicates the error.

@dvanders libaio is weird.

if (r < 0) {
goto out_fail;
}
fs = FS::create_by_fd(fd_direct);

This comment has been minimized.

@ifed01

ifed01 May 17, 2017

Contributor

Wondering if we need that at all, don't see any use of fs

@ifed01

ifed01 May 17, 2017

Contributor

Wondering if we need that at all, don't see any use of fs

@ifed01

ifed01 approved these changes May 17, 2017

@liewegas liewegas merged commit e581511 into ceph:master May 18, 2017

3 checks passed

Signed-off-by all commits in this PR are signed
Details
Unmodifed Submodules submodules for project are unmodified
Details
default Build finished.
Details

@liewegas liewegas deleted the liewegas:wip-bluestore-aio-warning branch May 18, 2017

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment