Add aconfig flag  to control release of unmounting changes

Bug: 402367661
Bug: 318335297
Test: Manual by checking installed flags
Flag: EXEMPT adding flag android.vold.flags.enhance_fuse_unmount
Change-Id: I86847c091d9b08de395e1e6944350b2313004a76
diff --git a/Android.bp b/Android.bp
index f1221eb..bef6471 100644
--- a/Android.bp
+++ b/Android.bp
@@ -158,6 +158,12 @@
         "model/VolumeBase.cpp",
         "model/VolumeEncryption.cpp",
     ],
+    shared_libs: [
+        "server_configurable_flags",
+    ],
+    static_libs: [
+        "vold_flags_c_lib",
+    ],
     product_variables: {
         arc: {
             exclude_srcs: [
@@ -271,3 +277,15 @@
     ],
     path: "binder",
 }
+
+aconfig_declarations {
+    name: "vold_flags",
+    package: "android.vold.flags",
+    srcs: ["aconfig/flags.aconfig"],
+    container: "system",
+}
+
+cc_aconfig_library {
+    name: "vold_flags_c_lib",
+    aconfig_declarations: "vold_flags",
+}
\ No newline at end of file
diff --git a/aconfig/flags.aconfig b/aconfig/flags.aconfig
new file mode 100644
index 0000000..d9c8fe2
--- /dev/null
+++ b/aconfig/flags.aconfig
@@ -0,0 +1,10 @@
+package: "android.vold.flags"
+container: "system"
+
+flag {
+  name: "enhance_fuse_unmount"
+  namespace: "mediaprovider"
+  description: "This flag controls whether enhancements to unmounting is enabled"
+  bug: "402367661"
+  is_fixed_read_only: true
+}