Project

General

Profile

Bug #1873

crush_rule type is inconsistent

Added by Josh Durgin almost 12 years ago. Updated over 11 years ago.

Status:
Won't Fix
Priority:
Normal
Assignee:
-
Category:
-
Target version:
-
% Done:

0%

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

Description

Here's a table of crush_rule's type in various places:

Location   | Type
-----------+-----
pg_pool_t  | __u8
MPoolOp    | __s16
OSDMonitor | int
Objecter   | int *and* __u8
librados   | __u8

I'd suggest moving everything to __u8, or if we don't want to change the message encoding, doing bounds checking on the monitor and changing to __u8 everywhere other than MPoolOp.

History

#1 Updated by Sage Weil over 11 years ago

It's __s16 or int so that a negative value can mean undefined/not specified. I'm inclined to just leave this as is...

#2 Updated by Sage Weil over 11 years ago

  • Status changed from New to Won't Fix

Also available in: Atom PDF