Handle devices that already exist when disk manager starts.

Disk manager does not receive any udev add event for devices that
exist before it starts. This CL addresses this issue by enumerating
auto-mountable devices and including them to the detected device list
during the initialization of disk manager.

BUG=chrome-os-partner:12404
TEST=Tested the follwoing:
1. Build and run cros-disks unit tests.
2. Run platform_CrosDisksDBus and platform_CrosDisksFilesystem.
3. Test media insertion/removal with internal and external CD-ROM
   drives, and Android USB storage.

Change-Id: I5a3fdd5ab7f5470f1f9382eba55a26633253d2c2
Reviewed-on: https://gerrit.chromium.org/gerrit/30385
Tested-by: Ben Chan <benchan@chromium.org>
Reviewed-by: Darin Petkov <petkov@chromium.org>
Commit-Ready: Ben Chan <benchan@chromium.org>
1 file changed
tree: e6401503922160bfd73ed0635b826ec0dbd1ae05
  1. .gitignore
  2. archive-manager.cc
  3. archive-manager.h
  4. archive-manager_unittest.cc
  5. avfsd-seccomp-amd64.policy
  6. avfsd-seccomp-arm.policy
  7. avfsd-seccomp-x86.policy
  8. common.mk
  9. cros-disks-server-impl.cc
  10. cros-disks-server-impl.h
  11. cros-disks.conf
  12. cros-disks.xml
  13. daemon.cc
  14. daemon.h
  15. device-ejector.cc
  16. device-ejector.h
  17. device-event-dispatcher-interface.h
  18. device-event-moderator.cc
  19. device-event-moderator.h
  20. device-event-moderator_unittest.cc
  21. device-event-queue.cc
  22. device-event-queue.h
  23. device-event-queue_unittest.cc
  24. device-event-source-interface.h
  25. device-event.cc
  26. device-event.h
  27. disk-manager.cc
  28. disk-manager.h
  29. disk-manager_unittest.cc
  30. disk.cc
  31. disk.h
  32. disk_unittest.cc
  33. disks_testrunner.cc
  34. external-mounter.cc
  35. external-mounter.h
  36. external-mounter_unittest.cc
  37. file-reader.cc
  38. file-reader.h
  39. file-reader_unittest.cc
  40. filesystem.cc
  41. filesystem.h
  42. format-manager-observer-interface.h
  43. format-manager.cc
  44. format-manager.h
  45. format-manager_unittest.cc
  46. glib-process.cc
  47. glib-process.h
  48. glib-process_unittest.cc
  49. inherit-review-settings-ok
  50. LICENSE
  51. main.cc
  52. Makefile
  53. metrics.cc
  54. metrics.h
  55. metrics_unittest.cc
  56. mount-info.cc
  57. mount-info.h
  58. mount-info_unittest.cc
  59. mount-manager.cc
  60. mount-manager.h
  61. mount-manager_unittest.cc
  62. mount-options.cc
  63. mount-options.h
  64. mount-options_unittest.cc
  65. mounter.cc
  66. mounter.h
  67. mounter_unittest.cc
  68. ntfs-mounter.cc
  69. ntfs-mounter.h
  70. org.chromium.CrosDisks.conf
  71. OWNERS
  72. platform.cc
  73. platform.h
  74. platform_unittest.cc
  75. power-manager-observer-interface.h
  76. power-manager-proxy.cc
  77. power-manager-proxy.h
  78. process.cc
  79. process.h
  80. process_unittest.cc
  81. sandboxed-process.cc
  82. sandboxed-process.h
  83. session-manager-observer-interface.h
  84. session-manager-proxy.cc
  85. session-manager-proxy.h
  86. system-mounter.cc
  87. system-mounter.h
  88. system-mounter_unittest.cc
  89. udev-device.cc
  90. udev-device.h
  91. udev-device_unittest.cc
  92. usb-device-info
  93. usb-device-info.cc
  94. usb-device-info.h
  95. usb-device-info_unittest.cc