Преглед изворни кода

[DM/FIXUP] Fixup block value init

Signed-off-by: GuEe-GUI <2991707448@qq.com>
GuEe-GUI пре 4 месеци
родитељ
комит
1c54ff4de6
1 измењених фајлова са 6 додато и 2 уклоњено
  1. 6 2
      components/drivers/block/blk.c

+ 6 - 2
components/drivers/block/blk.c

@@ -195,6 +195,10 @@ static rt_err_t blk_control(rt_device_t dev, int cmd, void *args)
         {
             err = disk->ops->control(disk, RT_NULL, cmd, args);
         }
+        else
+        {
+            err = -RT_ENOSYS;
+        }
         break;
     }
 
@@ -344,7 +348,7 @@ rt_err_t rt_hw_blk_disk_unregister(struct rt_blk_disk *disk)
 
     spin_lock(&disk->lock);
 
-    if (disk->parent.ref_count != 1)
+    if (disk->parent.ref_count > 0)
     {
         err = -RT_EBUSY;
         goto _unlock;
@@ -470,7 +474,7 @@ INIT_ENV_EXPORT(blk_dfs_mnt_table);
 const char *convert_size(struct rt_device_blk_geometry *geome,
         rt_size_t sector_count, rt_size_t *out_cap, rt_size_t *out_minor)
 {
-    rt_size_t cap, minor;
+    rt_size_t cap, minor = 0;
     int size_index = 0;
     const char *size_name[] = { "B", "K", "M", "G", "T", "P", "E" };