Skip to content
Snippets Groups Projects
  • Jeff Sharkey's avatar
    dd57e698
    Allow installd to delete files via sdcardfs. · dd57e698
    Jeff Sharkey authored
    When installd clears cached files on external storage, the sdcardfs
    kernel filesystem needs to be kept in the loop to release any cached
    dentries that it's holding onto.  (Otherwise the underlying disk
    space isn't actually released.)
    
    installd can already delete the underlying files directly (via the
    media_rw_data_file rules), so this technically isn't expanding its
    capabilities.
    
    avc: granted { search } for name="/" dev="tmpfs" ino=6897 scontext=u:r:installd:s0 tcontext=u:object_r:tmpfs:s0 tclass=dir
    avc: denied { open } for path="/mnt/runtime/default/emulated/0/Android/data" dev="sdcardfs" ino=589830 scontext=u:r:installd:s0 tcontext=u:object_r:sdcardfs:s0 tclass=dir permissive=1
    avc: denied { write } for name="com.google.android.inputmethod.japanese" dev="sdcardfs" ino=590040 scontext=u:r:installd:s0 tcontext=u:object_r:sdcardfs:s0 tclass=dir permissive=0
    avc: denied { remove_name } for name="cache_r.m" dev="sdcardfs" ino=589868 scontext=u:r:installd:s0 tcontext=u:object_r:sdcardfs:s0 tclass=dir permissive=0
    avc: denied { getattr } for path="/mnt/runtime/default/emulated/0/Android/data/.nomedia" dev="sdcardfs" ino=589831 scontext=u:r:installd:s0 tcontext=u:object_r:sdcardfs:s0 tclass=file permissive=1
    
    Test: cts-tradefed run commandAndExit cts-dev -m CtsAppSecurityHostTestCases -t android.appsecurity.cts.StorageHostTest
    Bug: 37486230
    Change-Id: Icfd00a9ba379b1f50c48fe85849304cf9859bcb2
    (cherry picked from commit 72f4c619)
    dd57e698
    History
    Allow installd to delete files via sdcardfs.
    Jeff Sharkey authored
    When installd clears cached files on external storage, the sdcardfs
    kernel filesystem needs to be kept in the loop to release any cached
    dentries that it's holding onto.  (Otherwise the underlying disk
    space isn't actually released.)
    
    installd can already delete the underlying files directly (via the
    media_rw_data_file rules), so this technically isn't expanding its
    capabilities.
    
    avc: granted { search } for name="/" dev="tmpfs" ino=6897 scontext=u:r:installd:s0 tcontext=u:object_r:tmpfs:s0 tclass=dir
    avc: denied { open } for path="/mnt/runtime/default/emulated/0/Android/data" dev="sdcardfs" ino=589830 scontext=u:r:installd:s0 tcontext=u:object_r:sdcardfs:s0 tclass=dir permissive=1
    avc: denied { write } for name="com.google.android.inputmethod.japanese" dev="sdcardfs" ino=590040 scontext=u:r:installd:s0 tcontext=u:object_r:sdcardfs:s0 tclass=dir permissive=0
    avc: denied { remove_name } for name="cache_r.m" dev="sdcardfs" ino=589868 scontext=u:r:installd:s0 tcontext=u:object_r:sdcardfs:s0 tclass=dir permissive=0
    avc: denied { getattr } for path="/mnt/runtime/default/emulated/0/Android/data/.nomedia" dev="sdcardfs" ino=589831 scontext=u:r:installd:s0 tcontext=u:object_r:sdcardfs:s0 tclass=file permissive=1
    
    Test: cts-tradefed run commandAndExit cts-dev -m CtsAppSecurityHostTestCases -t android.appsecurity.cts.StorageHostTest
    Bug: 37486230
    Change-Id: Icfd00a9ba379b1f50c48fe85849304cf9859bcb2
    (cherry picked from commit 72f4c619)