Project

General

Profile

Actions

Bug #3744

closed

librbd: need to handle older OSDs that don't have cls_lock

Added by Dan Mick over 11 years ago. Updated over 11 years ago.

Status:
Resolved
Priority:
Urgent
Assignee:
Category:
OSD
Target version:
-
% Done:

0%

Source:
Development
Tags:
Backport:
bobtail
Regression:
Severity:
Reviewed:
Affected Versions:
ceph-qa-suite:
Pull request ID:
Crash signature (v1):
Crash signature (v2):

Description

Older OSDs didn't have libcls_lock, and will fail lock operations; this means
virtually all rbd operations and rados lock list will fail on older/mixed clusters.

Treat "unsupported" lock failure as non-fatal. Ideally we'd use
EOPNOTSUPP, but that error code was added relatively recently (eed28daaf8927339c2ecae1b1b06c1b63678ab03 in v0.55); before that it was EIO.
Fix by treating either error as ignorable.

Actions #1

Updated by Dan Mick over 11 years ago

  • Subject changed from librbd, rados: need to handle older OSDs that don't have cls_lock to librbd: need to handle older OSDs that don't have cls_lock

Actually, rados lock list should continue to fail.

Actions #2

Updated by Dan Mick over 11 years ago

  • Status changed from New to Resolved
Actions

Also available in: Atom PDF