Skip to content

Commit d401b31

Browse files
sutes-workCommit Bot
authored andcommitted
[fxfs] Make fshost launch fxfs as a component
This involved removing the fs_switch option and changing the binary path option into a format option instead. Bug: 99591 Change-Id: I34a2e4a27bbbe2df1a0cf9fcaec3787f46cd020a Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/678383 Commit-Queue: Auto-Submit <auto-submit@fuchsia-infra.iam.gserviceaccount.com> Reviewed-by: Stephen Demos <sdemos@google.com> Fuchsia-Auto-Submit: Chris Suter <csuter@google.com>
1 parent 3e7f195 commit d401b31

2 files changed

Lines changed: 19 additions & 0 deletions

File tree

src/lib/storage/fs_management/cpp/format.cc

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -222,6 +222,24 @@ __EXPORT std::string_view DiskFormatString(DiskFormat fs_type) {
222222
return format->name().c_str();
223223
}
224224

225+
__EXPORT DiskFormat DiskFormatFromString(std::string_view str) {
226+
static auto* formats = [] {
227+
auto* formats = new std::unordered_map<std::string_view, DiskFormat>();
228+
for (auto format : {kDiskFormatGpt, kDiskFormatMbr, kDiskFormatMinfs, kDiskFormatFat,
229+
kDiskFormatBlobfs, kDiskFormatFvm, kDiskFormatZxcrypt, kDiskFormatFactoryfs,
230+
kDiskFormatBlockVerity, kDiskFormatVbmeta, kDiskFormatBootpart,
231+
kDiskFormatFxfs, kDiskFormatF2fs, kDiskFormatNandBroker}) {
232+
formats->emplace(DiskFormatString(format), format);
233+
}
234+
return formats;
235+
}();
236+
if (auto iter = formats->find(str); iter == formats->end()) {
237+
return kDiskFormatUnknown;
238+
} else {
239+
return iter->second;
240+
}
241+
}
242+
225243
__EXPORT std::string_view DiskFormatComponentUrl(DiskFormat fs_type) {
226244
switch (fs_type) {
227245
case kDiskFormatBlobfs:

src/lib/storage/fs_management/cpp/format.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ enum DiskFormat {
3636
};
3737

3838
std::string_view DiskFormatString(DiskFormat fs_type);
39+
DiskFormat DiskFormatFromString(std::string_view str);
3940

4041
// Get the component url for the disk format, if it's known. If it's not known, this returns an
4142
// empty string.

0 commit comments

Comments
 (0)