← Documents Documentation/arch/s390/zfcpdump.rst GitHub 원문 ↗

Linux 6.18.37 · Architecture

s390 SCSI 덤프 도구(zfcpdump)

System z 하드웨어가 보호한 저위 메모리와 CPU register를 Linux dump kernel 및 user space 도구가 회수해 SCSI 디스크로 저장하는 절차를 설명합니다.

Source pathDocumentation/arch/s390/zfcpdump.rst
Source versionLinux v6.18.37
TranslationDUJINLABS 전문 번역 + 해설

요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.

1. 요약·해설

원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.

요약과 해설

zfcpdump.rst:1-50

`zfcpdump`는 충돌한 Linux의 메모리를 덤프 도구가 덮어쓰지 않도록 System z 하드웨어가 먼저 32 MB 아래 영역과 boot CPU register를 보존하는 기능을 이용합니다. 작은 dump kernel과 user space application을 이 보호 영역에서 부팅한 뒤, SCLP와 `/proc/vmcore`를 통해 원래 시스템의 메모리를 ELF core dump로 읽습니다.

운영자는 `s390-tools`의 `zipl`로 `zfcpdump.image`와 선택적 `zfcpdump.rd`를 SCSI 장치에 설치합니다. 커널에는 `CONFIG_CRASH_DUMP`가 필요하며, `make zfcpdump_defconfig`로 기준 설정을 만들 수 있습니다. 실제 dump application은 initramfs/initrd에서 실행되어 `/proc/vmcore` 또는 `zcore/mem`을 SCSI partition에 기록합니다.

2. 영어 원문 전체

번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.

원문 전체 펼치기
1 ==================================
2 The s390 SCSI dump tool (zfcpdump)
3 ==================================
4
5 System z machines (z900 or higher) provide hardware support for creating system
6 dumps on SCSI disks. The dump process is initiated by booting a dump tool, which
7 has to create a dump of the current (probably crashed) Linux image. In order to
8 not overwrite memory of the crashed Linux with data of the dump tool, the
9 hardware saves some memory plus the register sets of the boot CPU before the
10 dump tool is loaded. There exists an SCLP hardware interface to obtain the saved
11 memory afterwards. Currently 32 MB are saved.
12
13 This zfcpdump implementation consists of a Linux dump kernel together with
14 a user space dump tool, which are loaded together into the saved memory region
15 below 32 MB. zfcpdump is installed on a SCSI disk using zipl (as contained in
16 the s390-tools package) to make the device bootable. The operator of a Linux
17 system can then trigger a SCSI dump by booting the SCSI disk, where zfcpdump
18 resides on.
19
20 The user space dump tool accesses the memory of the crashed system by means
21 of the /proc/vmcore interface. This interface exports the crashed system's
22 memory and registers in ELF core dump format. To access the memory which has
23 been saved by the hardware SCLP requests will be created at the time the data
24 is needed by /proc/vmcore. The tail part of the crashed systems memory which
25 has not been stashed by hardware can just be copied from real memory.
26
27 To build a dump enabled kernel the kernel config option CONFIG_CRASH_DUMP
28 has to be set.
29
30 To get a valid zfcpdump kernel configuration use "make zfcpdump_defconfig".
31
32 The s390 zipl tool looks for the zfcpdump kernel and optional initrd/initramfs
33 under the following locations:
34
35 * kernel: <zfcpdump directory>/zfcpdump.image
36 * ramdisk: <zfcpdump directory>/zfcpdump.rd
37
38 The zfcpdump directory is defined in the s390-tools package.
39
40 The user space application of zfcpdump can reside in an intitramfs or an
41 initrd. It can also be included in a built-in kernel initramfs. The application
42 reads from /proc/vmcore or zcore/mem and writes the system dump to a SCSI disk.
43
44 The s390-tools package version 1.24.0 and above builds an external zfcpdump
45 initramfs with a user space application that writes the dump to a SCSI
46 partition.
47
48 For more information on how to use zfcpdump refer to the s390 'Using the Dump
49 Tools' book, which is available from IBM Knowledge Center:
50 https://www.ibm.com/support/knowledgecenter/linuxonibm/liaaf/lnz_r_dt.html
51

3. 한국어 전문 번역

영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.

System z의 하드웨어 덤프 지원

1-12

System z 시스템(z900 이상)은 SCSI 디스크에 시스템 덤프를 만드는 하드웨어 기능을 제공합니다. 덤프 절차는 덤프 도구를 부팅하는 것으로 시작하며, 이 도구는 현재 실행 중이었거나 충돌했을 가능성이 있는 Linux image의 덤프를 생성해야 합니다.

덤프 도구의 데이터가 충돌한 Linux의 메모리를 덮어쓰지 않도록, 하드웨어는 덤프 도구를 적재하기 전에 일부 메모리와 boot CPU의 register set을 저장합니다. 이후 저장된 메모리는 SCLP hardware interface로 가져올 수 있습니다. 현재 저장되는 크기는 32 MB입니다.

덤프 커널과 SCSI 디스크 설치

13-19

이 `zfcpdump` 구현은 Linux dump kernel과 user space dump tool로 이루어지며, 둘은 32 MB 아래에 마련된 저장 메모리 영역으로 함께 적재됩니다.

`zfcpdump`는 `s390-tools` package에 포함된 `zipl`을 사용해 SCSI 디스크에 설치하며, 해당 장치를 부팅할 수 있게 만듭니다. Linux system operator는 `zfcpdump`가 있는 SCSI 디스크를 부팅해 SCSI dump를 시작할 수 있습니다.

충돌 메모리와 register 접근

20-26

user space dump tool은 `/proc/vmcore` interface를 통해 충돌한 시스템의 메모리에 접근합니다. 이 interface는 충돌한 시스템의 메모리와 register를 ELF core dump 형식으로 내보냅니다.

하드웨어가 저장한 메모리에 접근할 때는 `/proc/vmcore`가 실제 데이터를 필요로 하는 시점에 SCLP request를 만듭니다. 하드웨어가 별도로 보관하지 않은 충돌 시스템 메모리의 뒷부분은 real memory에서 그대로 복사할 수 있습니다.

덤프 커널 설정

27-31

덤프 기능이 있는 kernel을 빌드하려면 kernel config option `CONFIG_CRASH_DUMP`를 설정해야 합니다.

유효한 `zfcpdump` kernel configuration은 `make zfcpdump_defconfig` 명령으로 만들 수 있습니다.

zipl이 찾는 kernel과 ramdisk 위치

32-38

s390의 `zipl` 도구는 다음 위치에서 `zfcpdump` kernel과 선택 사항인 initrd/initramfs를 찾습니다.

  • kernel: `<zfcpdump directory>/zfcpdump.image`
  • ramdisk: `<zfcpdump directory>/zfcpdump.rd`

`<zfcpdump directory>`의 실제 위치는 `s390-tools` package에서 정의합니다.

user space application과 dump 저장

39-46

`zfcpdump`의 user space application은 initramfs 또는 initrd에 둘 수 있고, kernel에 내장된 initramfs에 포함할 수도 있습니다. 원문의 `intitramfs` 표기는 문맥상 `initramfs`를 뜻합니다.

application은 `/proc/vmcore` 또는 `zcore/mem`에서 데이터를 읽어 SCSI 디스크에 시스템 덤프를 기록합니다. `s390-tools` package 1.24.0 이상은 SCSI partition에 덤프를 기록하는 user space application을 포함한 외부 `zfcpdump` initramfs를 빌드합니다.

사용법 참고 자료

47-50

`zfcpdump` 사용법에 관한 자세한 내용은 IBM Knowledge Center에서 제공하는 s390 문서 `Using the Dump Tools`를 참고하십시오.