re: acpi_memhotplug.c: don't allow to eject the memory device if it is being used

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello Wen Congyang,

The patch 306859f13dc1: "acpi_memhotplug.c: don't allow to eject the
memory device if it is being used" from Nov 3, 2012, leads to the
following Smatch warning:
drivers/acpi/acpi_memhotplug.c:367 acpi_memory_remove_memory()
	 warn: inconsistent returns mutex:&mem_device->list_lock:
	locked (357,361) unlocked (367)

   341  static int acpi_memory_remove_memory(struct acpi_memory_device *mem_device)
   342  {
   343          int result;
   344          struct acpi_memory_info *info, *n;
   345  
   346          mutex_lock(&mem_device->list_lock);
   347          list_for_each_entry_safe(info, n, &mem_device->res_list, list) {
   348                  if (info->failed)
   349                          /* The kernel does not use this memory block */
   350                          continue;
   351  
   352                  if (!info->enabled)
   353                          /*
   354                           * The kernel uses this memory block, but it may be not
   355                           * managed by us.
   356                           */
   357                          return -EBUSY;
                                ^^^^^^^^^^^^^
   358  
   359                  result = remove_memory(info->start_addr, info->length);
   360                  if (result)
   361                          return result;
                                ^^^^^^^^^^^^^^
Unlock before returning?

   362                  list_del(&info->list);
   363                  kfree(info);
   364          }
   365          mutex_unlock(&mem_device->list_lock);
   366  
   367          return 0;
   368  }




regards,
dan carpenter

--
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux IBM ACPI]     [Linux Power Management]     [Linux Kernel]     [Linux Laptop]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]

  Powered by Linux