---
title: 解决htcondor在鲲鹏920上启动服务失败
description: "HTCondor在鲲鹏920上启动服务失败。"
url: https://www.hikunpeng.com/document/detail/zh/kunpenghpcs/hpcindapp/trouble/bootkit_hpc_troublecase_0100.html
sourcePath: /source/zh/kunpenghpcs/hpcindapp/trouble/bootkit_hpc_troublecase_0100.html
indexId: 6be059a64dc48bb6e0718a49f4a9e94e2a2f06f5a405893207f365a8754c450774
---
# 解决htcondor在鲲鹏920上启动服务失败

#### 问题现象描述

HTCondor在鲲鹏920上启动服务失败。


#### 关键过程、根本原因分析

无。


#### 结论、解决方案及效果

1. 执行以下命令编辑“daemon_core.cpp”文件。

  a. 打开“daemon_core.cpp”文件。
    vi condor-8.9.2/src/condor_daemon_core.V6/daemon_core.cpp

  b. 按“i”进入编辑模式，编辑第5856-5880行内容。

```
if( daemonCore->UseCloneToCreateProcesses() ) {
dprintf(D_FULLDEBUG,"Create_Process: using fast clone() "
"to create child process.\n");
// The stack size must be big enough for everything that
// happens in CreateProcessForkit::clone_fn().  In some
// environments, some extra steps may need to be taken to
// make a stack on the heap (to mark it as executable), so
// we just do it using the parent's stack space and we use
// CLONE_VFORK to ensure the child is done with the stack
// before the parent throws it away.
//const int stack_size = 16384;
const int stack_size = 64*1024*2;
//const int stack_size = 64*1024*16;
char child_stack[stack_size]  ;
// Beginning of stack is at end on all processors that run
// Linux, except for HP PA.  Here we just detect at run-time
// which way it goes.
char *child_stack_ptr = child_stack;
if( stack_direction() == STACK_GROWS_DOWN ) {
child_stack_ptr += stack_size;
}
child_stack_ptr = (char *)((std::uintptr_t)child_stack_ptr &
~
(std::uintptr_t)0<<4);
```


  c. 按“Esc”键，输入:wq!，按“Enter”保存并退出编辑。
