Project

General

Profile

Bug #44288

MDSMap encoder "ev" (extended version) is not checked for validity when decoding

Added by Greg Farnum about 1 month ago. Updated about 1 month ago.

Status:
Triaged
Priority:
Normal
Assignee:
Category:
Correctness/Safety
Target version:
% Done:

0%

Source:
Development
Tags:
Backport:
Regression:
No
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
Component(FS):
MDS, MDSMonitor
Labels (FS):
task(easy), task(intern)
Pull request ID:
Crash signature:

Description

This is going to be a necessity as we try and enable rolling upgrades! We encode an extended version and use it to decide how much to decode, but for some reason we don't have any kind of compatibility check to see if we're allowed to look at the enclosed data or not. Compare this to OSDMap which actually nests ENCODE_START/DECODE_FINISH blocks. (we could totally do this; it's nice!)

I ran into this working on https://github.com/ceph/ceph/pull/33522 when I wanted to disallow any non-custom MDSes from looking at the data...


Related issues

Blocks fs - Feature #41566: mds: support rolling upgrades In Progress

History

#1 Updated by Patrick Donnelly about 1 month ago

  • Status changed from New to Triaged
  • Assignee set to Jos Collin
  • Target version set to v16.0.0
  • Source set to Development

#3 Updated by Jos Collin about 1 month ago

Also available in: Atom PDF