block: Rearrange block_init and block_exit sequence. 46/161046/4 accepted/tizen/unified/20171123.065824 submit/tizen/20171122.101525
authorpr.jung <pr.jung@samsung.com>
Tue, 21 Nov 2017 07:14:43 +0000 (16:14 +0900)
committerHyotaek Shim <hyotaek.shim@samsung.com>
Wed, 22 Nov 2017 08:51:56 +0000 (08:51 +0000)
- Get internal storage number on block_init().
- Call pipe_exit() after threads stop.

Change-Id: I2bbcc296448a907052d96a2486700be37a92087f
Signed-off-by: pr.jung <pr.jung@samsung.com>
(cherry picked from commit bb0d0846aecf8c021fd704d79f577a2d20d890b6)

src/block/block.c

index 79a4af4..4df4812 100644 (file)
@@ -2505,13 +2505,6 @@ static int block_init_from_udev_enumerate(void)
                return -EPERM;
        }
 
-       if ((dev_internal < 0 && !is_emulator() && dev_internal_scsi == '\0') ||
-               (is_emulator() && dev_internal_emul == '\0')) {
-               r = get_internal_storage_number();
-               if (r < 0)
-                       return -EPERM;
-       }
-
        udev_enumerate_add_match_subsystem(enumerate, BLOCK_SUBSYSTEM);
        udev_enumerate_add_match_property(enumerate,
                        UDEV_DEVTYPE, BLOCK_DEVTYPE_DISK);
@@ -3719,6 +3712,10 @@ static void block_init(void *data)
                if (ret < 0)
                        _E("Fail to change permissions of a file");
        }
+
+       ret = get_internal_storage_number();
+       if (ret < 0)
+               _E("Failed to get internal storage number");
 }
 
 static void block_exit(void *data)
@@ -3739,9 +3736,6 @@ static void block_exit(void *data)
                        DEVICED_INTERFACE_POWEROFF,
                        SIGNAL_POWEROFF_STATE, block_poweroff);
 
-       /* exit pipe */
-       pipe_exit();
-
        /* unregister mmc uevent control routine */
        ret = unregister_udev_uevent_control(&uh);
        if (ret < 0)
@@ -3759,6 +3753,9 @@ static void block_exit(void *data)
                }
        }
 
+       /* exit pipe */
+       pipe_exit();
+
        block_control = false;
 }