Whamcloud - gitweb
git://git.whamcloud.com
/
fs
/
lustre-release.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
LU-7434 ptlrpc: lost bulk leads to a hang
[fs/lustre-release.git]
/
libcfs
/
libcfs
/
watchdog.c
diff --git
a/libcfs/libcfs/watchdog.c
b/libcfs/libcfs/watchdog.c
index
0bbe5c9
..
95a0177
100644
(file)
--- a/
libcfs/libcfs/watchdog.c
+++ b/
libcfs/libcfs/watchdog.c
@@
-27,7
+27,7
@@
* Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved.
* Use is subject to license terms.
*
* Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved.
* Use is subject to license terms.
*
- * Copyright (c) 2012, Intel Corporation.
+ * Copyright (c) 2012,
2014,
Intel Corporation.
*/
/*
* This file is part of Lustre, http://www.lustre.org/
*/
/*
* This file is part of Lustre, http://www.lustre.org/
@@
-40,6
+40,7
@@
#define DEBUG_SUBSYSTEM S_LNET
#define DEBUG_SUBSYSTEM S_LNET
+#include <linux/kthread.h>
#include <libcfs/libcfs.h>
#include "tracefile.h"
#include <libcfs/libcfs.h>
#include "tracefile.h"
@@
-106,7
+107,7
@@
lcw_dump(struct lc_watchdog *lcw)
ENTRY;
rcu_read_lock();
if (lcw->lcw_task == NULL) {
ENTRY;
rcu_read_lock();
if (lcw->lcw_task == NULL) {
-
LCONSOLE_WARN("Process " LPPID "
was not found in the task "
+
LCONSOLE_WARN("Process %d
was not found in the task "
"list; watchdog callback may be incomplete\n",
(int)lcw->lcw_pid);
} else {
"list; watchdog callback may be incomplete\n",
(int)lcw->lcw_pid);
} else {
@@
-117,7
+118,7
@@
lcw_dump(struct lc_watchdog *lcw)
EXIT;
}
EXIT;
}
-static void lcw_cb(u
long_
ptr_t data)
+static void lcw_cb(u
int
ptr_t data)
{
struct lc_watchdog *lcw = (struct lc_watchdog *)data;
ENTRY;
{
struct lc_watchdog *lcw = (struct lc_watchdog *)data;
ENTRY;
@@
-202,6
+203,15
@@
static void lcw_dump_stack(struct lc_watchdog *lcw)
}
}
}
}
+/*
+ * Provided watchdog handlers
+ */
+
+static void lc_watchdog_dumplog(pid_t pid, void *data)
+{
+ libcfs_debug_dumplog_internal((void *)((uintptr_t)pid));
+}
+
static int lcw_dispatch_main(void *data)
{
int rc = 0;
static int lcw_dispatch_main(void *data)
{
int rc = 0;
@@
-262,7
+272,7
@@
static int lcw_dispatch_main(void *data)
spin_unlock_bh(&lcw_pending_timers_lock);
spin_unlock_bh(&lcw->lcw_lock);
spin_unlock_bh(&lcw_pending_timers_lock);
spin_unlock_bh(&lcw->lcw_lock);
-
CDEBUG(D_INFO, "found lcw for pid " LPPID "
\n",
+
CDEBUG(D_INFO, "found lcw for pid %d
\n",
lcw->lcw_pid);
lcw_dump_stack(lcw);
lcw->lcw_pid);
lcw_dump_stack(lcw);
@@
-477,16
+487,6
@@
void lc_watchdog_delete(struct lc_watchdog *lcw)
}
EXPORT_SYMBOL(lc_watchdog_delete);
}
EXPORT_SYMBOL(lc_watchdog_delete);
-/*
- * Provided watchdog handlers
- */
-
-void lc_watchdog_dumplog(pid_t pid, void *data)
-{
- libcfs_debug_dumplog_internal((void *)((long_ptr_t)pid));
-}
-EXPORT_SYMBOL(lc_watchdog_dumplog);
-
#else /* !defined(WITH_WATCHDOG) */
struct lc_watchdog *lc_watchdog_add(int timeout,
#else /* !defined(WITH_WATCHDOG) */
struct lc_watchdog *lc_watchdog_add(int timeout,