Remove unnecessary routines
authorJunghyun Yeon <jungh.yeon@samsung.com>
Fri, 18 Jun 2021 09:14:09 +0000 (18:14 +0900)
committer연정현/Tizen Platform Lab(SR)/Staff Engineer/삼성전자 <jungh.yeon@samsung.com>
Wed, 23 Jun 2021 03:31:11 +0000 (12:31 +0900)
Checking database lock routine is unnecessary.

Signed-off-by: Junghyun Yeon <jungh.yeon@samsung.com>
src/server/database/abstract_db_handler.cc

index 2c4306a..f73c8bb 100644 (file)
@@ -71,107 +71,10 @@ constexpr const char RESOURCED_PROC_PATH[] = "/Org/Tizen/ResourceD/Process";
 constexpr const char RESOURCED_PROC_INTERFACE[] = "org.tizen.resourced.process";
 constexpr const char RESOURCED_PROC_METHOD[] = "ProcExclude";
 
-// This should be removed when the client server structure is complete
-void __send_wakeup_signal_to_resourced(pid_t pid) {
-  GError *error = NULL;
-  GDBusConnection *conn;
-  GDBusProxy *proxy;
-  GVariant *reply;
-
-  conn = g_bus_get_sync(G_BUS_TYPE_SYSTEM, NULL, &error);
-  if (conn == NULL) {
-    _LOGE("Failed to connect to dbus: %s", error->message);
-    g_error_free(error);
-    return;
-  }
-
-  proxy = g_dbus_proxy_new_sync(conn,
-      G_DBUS_PROXY_FLAGS_DO_NOT_LOAD_PROPERTIES,
-      NULL, RESOURCED_BUS_NAME,
-      RESOURCED_PROC_PATH, RESOURCED_PROC_INTERFACE,
-      NULL, &error);
-  if (proxy == NULL) {
-    _LOGE("failed to get proxy object: %s", error->message);
-    g_error_free(error);
-    g_object_unref(conn);
-    return;
-  }
-
-  reply = g_dbus_proxy_call_sync(proxy, RESOURCED_PROC_METHOD,
-      g_variant_new("(si)", "wakeup", pid),
-      G_DBUS_CALL_FLAGS_NONE, -1, NULL, &error);
-  if (reply == NULL)
-    _LOGE("failed to get reply from resourced");
-  if (error) {
-    _LOGE("failed to send request: %s", error->message);
-    g_error_free(error);
-  }
-
-  g_object_unref(proxy);
-  g_object_unref(conn);
-}
-
-void __check_db_lock(const char *dbpath) {
-  FILE *fp;
-  FILE *fp_cmdline;
-  struct stat sb;
-  char type[BUFSIZE];
-  int pid;
-  unsigned int maj;
-  unsigned int min;
-  unsigned long long ino;
-  char cmdline[BUFSIZE];
-  char name[BUFSIZE];
-  size_t len;
-
-  if (stat(dbpath, &sb) == -1) {
-    _LOGE("get db file(%s) status failed: %d", dbpath, errno);
-    return;
-  }
-
-  fp = fopen("/proc/locks", "r");
-  if (fp == NULL) {
-    _LOGE("Failed to open lock info: %d", errno);
-    return;
-  }
-
-  while (fscanf(fp, "%*s %*s %*s %5s %d %x:%x:%llu %*s %*s",
-        type, &pid, &maj, &min, &ino) != EOF) {
-    if (maj != major(sb.st_dev) || min != minor(sb.st_dev) ||
-        ino != sb.st_ino || pid == getpid() ||
-        strcasecmp(type, "WRITE"))
-      continue;
-
-    snprintf(cmdline, sizeof(cmdline), "/proc/%d/cmdline", pid);
-    fp_cmdline = fopen(cmdline, "r");
-    name[0] = '\0';
-    if (fp_cmdline != NULL) {
-      len = fread(name, sizeof(char), sizeof(name) - 1,
-          fp_cmdline);
-      if (len > 0) {
-        if (name[len - 1] == '\n')
-          name[len - 1] = '\0';
-        else
-          name[len] = '\0';
-      }
-      fclose(fp_cmdline);
-    }
-
-    _LOGE("%s (%d) has lock on pkgmgr db(%s)!", name, pid, dbpath);
-    __send_wakeup_signal_to_resourced(pid);
-  }
-
-  fclose(fp);
-}
-
 int __writedb_busy_handler(void *data, int count) {
   if (count < (BUSY_WAITING_MAX / 2)) {
     usleep(BUSY_WAITING_USEC);
     return 1;
-  } else if (count == (BUSY_WAITING_MAX / 2)) {
-    __check_db_lock((const char *)data);
-    usleep(BUSY_WAITING_USEC);
-    return 1;
   } else if (count < BUSY_WAITING_MAX) {
     usleep(BUSY_WAITING_USEC);
     return 1;