make menuconfig中的 [ ] Wait/wound mutex debugging: Slowpath testing 介 绍
时间: 2024-06-07 16:09:42 浏览: 64
在 Linux 内核中,mutex 是一种用于同步多个进程/线程访问共享资源的机制。当多个线程/进程尝试同时访问同一共享资源时,mutex 可以确保只有一个线程/进程能够访问该资源。当一个线程/进程在使用共享资源时,它可以通过获取 mutex 对象来锁定该资源,其他线程/进程在尝试访问该资源时会被阻塞,直到该线程/进程释放了 mutex 对象。
Wait/wound mutex debugging 是用于调试 mutex 相关问题的一个功能。在开启该选项后,系统会在每次获取 mutex 对象时,都会向内核打印一条调试信息。这些信息可以帮助开发人员快速诊断 mutex 相关问题,如死锁等。但是,由于每次获取 mutex 对象都需要打印调试信息,因此会降低系统的性能,特别是在高并发的场景下,会导致系统的响应变慢。因此,这个选项默认是关闭的。
相关问题
[root@localhost linux-2.6.32]# make menuconfig HOSTCC scripts/basic/fixdep /bin/sh: gcc: 未找到命令 make[1]: *** [scripts/basic/fixdep] 错误 127 make: *** [scripts_basic] 错误 2
这个错误提示是由于缺少 gcc 编译器导致的,您需要安装 gcc 编译器才能编译 Linux 内核。
您可以尝试在命令行中输入以下命令安装 gcc:
```
sudo yum install gcc
```
如果您已经安装了 gcc,但仍然出现该错误,可以尝试安装其他依赖库,例如 kernel-devel 和 kernel-headers:
```
sudo yum install kernel-devel kernel-headers
```
安装完成后,再次运行 make menuconfig 命令即可。
arsight@ubuntu:~/farsight/linux-5.4.31$ make menuconfig HOSTCC scripts/basic/fixdep /bin/sh: 1: gcc: not found scripts/Makefile.host:107: recipe for target 'scripts/basic/fixdep' failed make[1]: *** [scripts/basic/fixdep] Error 127 Makefile:500: recipe for target 'scripts_basic' failed make: *** [scripts_basic] Error 2,如何解决以上问题
这个错误提示是说找不到 `gcc`,可能是你的环境没有安装 `gcc` 或者 `gcc` 的路径没有加入到 `PATH` 环境变量中。
你可以尝试运行以下命令安装 `gcc`:
```
sudo apt-get install gcc
```
如果已经安装了 `gcc`,则需要将 `gcc` 的路径添加到 `PATH` 环境变量中。你可以运行以下命令查看 `gcc` 的路径:
```
which gcc
```
然后将输出的路径添加到 `PATH` 环境变量中,比如:
```
export PATH=$PATH:/usr/bin/gcc
```
添加完毕后,再次运行 `make menuconfig` 命令即可。