#ifndef __LIBCFS_CURPROC_H__
#define __LIBCFS_CURPROC_H__
-/* check if task is running in compat mode.*/
-#define current_pid() (current->pid)
-#define current_comm() (current->comm)
-
typedef __u32 cfs_cap_t;
#define CFS_CAP_CHOWN 0
*/
reinit_completion(&debug_complete);
dumper = kthread_run(libcfs_debug_dumplog_thread,
- (void *)(long)current_pid(),
+ (void *)(long)current->pid,
"libcfs_debug_dumper");
if (IS_ERR(dumper))
pr_err("LustreError: cannot start log dump thread: rc = %ld\n",
if (in_interrupt()) {
cfs_trace_debug_print();
} else {
- libcfs_debug_dumplog_internal((void *)(long)current_pid());
+ libcfs_debug_dumplog_internal((void *)(long)current->pid);
}
#endif
return 0;
continue;
}
- LASSERT(trd->trd_processing_task == current_pid());
+ LASSERT(trd->trd_processing_task == current->pid);
DEBUG_REQ(D_HA, req, "processing x%llu t%lld from %s",
req->rq_xid,
lustre_msg_get_transno(req->rq_reqmsg),
tgt_io_thread_init(thread); /* init thread_big_cache for IO requests */
CDEBUG(D_HA, "%s: started recovery thread pid %d\n", obd->obd_name,
- current_pid());
- trd->trd_processing_task = current_pid();
+ current->pid);
+ trd->trd_processing_task = current->pid;
spin_lock(&obd->obd_dev_lock);
obd->obd_recovering = 1;
CDEBUG(D_INFO, "2: lock replay stage - %d clients\n",
atomic_read(&obd->obd_lock_replay_clients));
while ((req = target_next_replay_lock(lut))) {
- LASSERT(trd->trd_processing_task == current_pid());
+ LASSERT(trd->trd_processing_task == current->pid);
DEBUG_REQ(D_HA, req, "processing lock from %s:",
libcfs_nid2str(req->rq_peer.nid));
handle_recovery_req(thread, req,
target_cancel_recovery_timer(obd);
spin_unlock(&obd->obd_recovery_task_lock);
while ((req = target_next_final_ping(obd))) {
- LASSERT(trd->trd_processing_task == current_pid());
+ LASSERT(trd->trd_processing_task == current->pid);
DEBUG_REQ(D_HA, req, "processing final ping from %s:",
libcfs_nid2str(req->rq_peer.nid));
handle_recovery_req(thread, req,
ENTRY;
- if (obd->obd_recovery_data.trd_processing_task == current_pid()) {
+ if (obd->obd_recovery_data.trd_processing_task == current->pid) {
/* Processing the queue right now, don't re-add. */
RETURN(1);
}
lock->l_req_mode = mode;
lock->l_ast_data = data;
- lock->l_pid = current_pid();
+ lock->l_pid = current->pid;
if (ns_is_server(ns))
ldlm_set_ns_srv(lock);
if (cbs) {
lfsck->li_pos_checkpoint.lp_oit_cookie,
lfsck->li_pos_checkpoint.lp_dir_cookie,
PFID(&lfsck->li_pos_checkpoint.lp_dir_parent),
- current_pid());
+ current->pid);
spin_lock(&lfsck->li_lock);
if (unlikely(!thread_is_starting(thread))) {
lfsck->li_pos_checkpoint.lp_oit_cookie,
lfsck->li_pos_checkpoint.lp_dir_cookie,
PFID(&lfsck->li_pos_checkpoint.lp_dir_parent),
- current_pid(), rc);
+ current->pid, rc);
if (!OBD_FAIL_CHECK(OBD_FAIL_LFSCK_CRASH))
rc = lfsck_post(env, lfsck, rc);
return false;
/* not the same process, don't statahead */
- if (lli->lli_opendir_pid != current_pid())
+ if (lli->lli_opendir_pid != current->pid)
return false;
/*
"statahead thread: pid %d\n",
PFID(&lli->lli_fid), sai->sai_hit,
sai->sai_miss, sai->sai_sent,
- sai->sai_replied, current_pid());
+ sai->sai_replied, current->pid);
break;
}
}
*/
LASSERT(lli->lli_opendir_pid == 0);
lli->lli_opendir_key = key;
- lli->lli_opendir_pid = current_pid();
+ lli->lli_opendir_pid = current->pid;
lli->lli_sa_enabled = 1;
}
spin_unlock(&lli->lli_sa_lock);
spin_unlock(&lli->lli_sa_lock);
CDEBUG(D_READA, "start statahead thread: [pid %d] [parent %.*s]\n",
- current_pid(), parent->d_name.len, parent->d_name.name);
+ current->pid, parent->d_name.len, parent->d_name.name);
task = kthread_create(ll_statahead_thread, parent, "ll_sa_%u",
lli->lli_opendir_pid);
int rc = 0;
assert_spin_locked(&lsm->lsm_lock);
- LASSERT(lsm->lsm_lock_owner == current_pid());
+ LASSERT(lsm->lsm_lock_owner == current->pid);
CDEBUG(D_INODE, "MDT ID "DOSTID" initial value: s=%llu m=%llu"
" a=%llu c=%llu b=%llu\n", POSTID(&lsm->lsm_oi),
void lov_stripe_lock(struct lov_stripe_md *md)
__acquires(&md->lsm_lock)
{
- LASSERT(md->lsm_lock_owner != current_pid());
+ LASSERT(md->lsm_lock_owner != current->pid);
spin_lock(&md->lsm_lock);
LASSERT(md->lsm_lock_owner == 0);
- md->lsm_lock_owner = current_pid();
+ md->lsm_lock_owner = current->pid;
}
void lov_stripe_unlock(struct lov_stripe_md *md)
__releases(&md->lsm_lock)
{
- LASSERT(md->lsm_lock_owner == current_pid());
+ LASSERT(md->lsm_lock_owner == current->pid);
md->lsm_lock_owner = 0;
spin_unlock(&md->lsm_lock);
}
ENTRY;
CDEBUG(D_HSM, "%s: coordinator thread starting, pid=%d\n",
- mdt_obd_name(mdt), current_pid());
+ mdt_obd_name(mdt), current->pid);
hsd.hsd_mti = mti;
obd_uuid2fsname(hsd.hsd_fsname, mdt_obd_name(mdt),
if (rc != 0)
CERROR("%s: coordinator thread exiting, process=%d, rc=%d\n",
- mdt_obd_name(mdt), current_pid(), rc);
+ mdt_obd_name(mdt), current->pid, rc);
else
CDEBUG(D_HSM, "%s: coordinator thread exiting, process=%d,"
" no error\n",
- mdt_obd_name(mdt), current_pid());
+ mdt_obd_name(mdt), current->pid);
RETURN(rc);
}
{
static time64_t last_expire;
bool expire_cache = false;
- pid_t pid = current_pid();
+ pid_t pid = current->pid;
struct jobid_pid_map *pidmap = NULL;
time64_t now = ktime_get_real_seconds();
int rc = 0;
switch ((f = *jobfmt++)) {
case 'e': /* executable name */
- l = snprintf(jobid, joblen, "%s", current_comm());
+ l = snprintf(jobid, joblen, "%s", current->comm);
break;
case 'g': /* group ID */
l = snprintf(jobid, joblen, "%u",
l = 0;
break;
case 'p': /* process ID */
- l = snprintf(jobid, joblen, "%u", current_pid());
+ l = snprintf(jobid, joblen, "%u", current->pid);
break;
case 'u': /* user ID */
l = snprintf(jobid, joblen, "%u",
if (jid)
strlcpy(jobid, jid, sizeof(jobid));
rcu_read_unlock();
- } else if (jobid_name_is_valid(current_comm())) {
+ } else if (jobid_name_is_valid(current->comm)) {
/*
* obd_jobid_var holds the jobid environment variable name.
* Skip initial check if obd_jobid_name already uses "%j",
default:
rc = -ENOTTY;
CDEBUG(D_INODE, "%s: unrecognised ioctl %#x by %s: rc = %d\n",
- obd->obd_name, cmd, current_comm(), rc);
+ obd->obd_name, cmd, current->comm, rc);
break;
}
break;
default:
CERROR("%s: unrecognized ioctl %#x by %s\n", obd->obd_name,
- cmd, current_comm());
+ cmd, current->comm);
rc = -ENOTTY;
}
module_put(THIS_MODULE);
lustre_msg_set_last_xid(req->rq_reqmsg, min_xid);
- lustre_msg_set_status(req->rq_reqmsg, current_pid());
+ lustre_msg_set_status(req->rq_reqmsg, current->pid);
rc = sptlrpc_req_refresh_ctx(req, -1);
if (rc) {
CDEBUG(D_RPCTRACE,
"Sending RPC req@%p pname:cluuid:pid:xid:nid:opc:job %s:%s:%d:%llu:%s:%d:%s\n",
- req, current_comm(),
+ req, current->comm,
imp->imp_obd->obd_uuid.uuid,
lustre_msg_get_status(req->rq_reqmsg), req->rq_xid,
obd_import_nid2str(imp), lustre_msg_get_opc(req->rq_reqmsg),
if (req->rq_reqmsg)
CDEBUG(D_RPCTRACE,
"Completed RPC req@%p pname:cluuid:pid:xid:nid:opc:job %s:%s:%d:%llu:%s:%d:%s\n",
- req, current_comm(),
+ req, current->comm,
imp->imp_obd->obd_uuid.uuid,
lustre_msg_get_status(req->rq_reqmsg),
req->rq_xid,
}
/* for distributed debugging */
- lustre_msg_set_status(req->rq_reqmsg, current_pid());
+ lustre_msg_set_status(req->rq_reqmsg, current->pid);
/* add a ref for the set (see comment in ptlrpc_set_add_req) */
ptlrpc_request_addref(req);
imp->imp_connection->c_peer.nid, imp->imp_obd->obd_name,
imp->imp_connection->c_self,
sec_part_flags[0] == '\0' ?
- current_pid() : imp->imp_sec_refpid);
+ current->pid : imp->imp_sec_refpid);
CDEBUG(D_SEC, "requesting key for %s\n", desc);
CDEBUG(D_RPCTRACE,
"Handling RPC req@%p pname:cluuid+ref:pid:xid:nid:opc:job %s:%s+%d:%d:x%llu:%s:%d:%s\n",
- request, current_comm(),
+ request, current->comm,
(request->rq_export ?
(char *)request->rq_export->exp_client_uuid.uuid : "0"),
(request->rq_export ?
arrived_usecs = ktime_us_delta(work_end, arrived);
CDEBUG(D_RPCTRACE,
"Handled RPC req@%p pname:cluuid+ref:pid:xid:nid:opc:job %s:%s+%d:%d:x%llu:%s:%d:%s Request processed in %lldus (%lldus total) trans %llu rc %d/%d\n",
- request, current_comm(),
+ request, current->comm,
(request->rq_export ?
(char *)request->rq_export->exp_client_uuid.uuid : "0"),
(request->rq_export ?
ENTRY;
thread->t_task = current;
- thread->t_pid = current_pid();
+ thread->t_pid = current->pid;
unshare_fs_struct();
if (svc->srv_cpt_bind) {
/* reset the exp_last_xid on each connection. */
req->rq_export->exp_last_xid = 0;
} else if (obd->obd_recovery_data.trd_processing_task !=
- current_pid()) {
+ current->pid) {
rc = process_req_last_xid(req);
if (rc) {
req->rq_status = rc;