ptlrpc_link_svc_me(rqbd);
}
- CDEBUG(D_NET, "Starting service listening on portal %d (eq: %p)\n",
+ CDEBUG(D_NET, "Starting service listening on portal %d (eq: %lu)\n",
service->srv_req_portal, service->srv_eq_h.handle_idx);
RETURN(service);
goto out;
}
- CDEBUG(D_RPCTRACE, "Handling RPC pid:xid:nid:opc %d:"
- LPX64":%x:%d\n",
+ CDEBUG(D_RPCTRACE, "Handling RPC pid:xid:nid:opc %d:"LPX64":"LPX64":%d\n",
NTOH__u32(request->rq_reqmsg->status),
request->rq_xid,
event->initiator.nid,
struct ptlrpc_request *request;
ptl_event_t *event;
int rc = 0;
-
+ unsigned long flags;
ENTRY;
lock_kernel();
sigfillset(¤t->blocked);
recalc_sigpending();
#else
- spin_lock_irq(¤t->sigmask_lock);
+ spin_lock_irqsave(¤t->sigmask_lock, flags);
sigfillset(¤t->blocked);
recalc_sigpending(current);
- spin_unlock_irq(¤t->sigmask_lock);
+ spin_unlock_irqrestore(¤t->sigmask_lock, flags);
#endif
#ifdef __arch_um__
list_add(&thread->t_link, &svc->srv_threads);
spin_unlock(&svc->srv_lock);
+ /* CLONE_VM and CLONE_FILES just avoid a needless copy, because we
+ * just drop the VM and FILES in ptlrpc_daemonize() right away.
+ */
rc = kernel_thread(ptlrpc_main, (void *) &d, CLONE_VM | CLONE_FILES);
if (rc < 0) {
CERROR("cannot start thread\n");