THREAD

THREAD

THREAD 로그

worker, sender, receiver와 플랫폼 thread의 시작·정지·대기에 해당하는 로그를 현재 코드 기준으로 정리합니다.

분류 상수: BSR_LC_THREAD

이 카테고리에서 확인할 사항

  • 출력 맥락: worker, sender, receiver와 플랫폼 thread의 시작·정지·대기

  • 우선 점검: thread 이름과 상태, stop 신호, wait 조건, outstanding work와 종료 순서

  • 플랫폼 분기: 같은 인덱스가 여러 행이면 Linux/Windows, 호환성 또는 실행 조건에 따른 메시지 변형입니다.

로그 목록

로그 인덱스

로그 수준

현재 코드 메시지

상세 의미 및 영향

비고

코드 위치

로그 인덱스

로그 수준

현재 코드 메시지

상세 의미 및 영향

비고

코드 위치

1

err

Failed to create %s thread. status(0x%08x)

thread 생성을 실패했습니다. 생성 thread에 따라 볼륨 생성이 실패하거나 연결이 되지 않을 수 있습니다.

로그에 출력 된 thread 이름과 status 확인이 필요합니다.

bsr/bsr-kernel-compat/windows/bsr_windows.c:1042

2

err

Failed to get handle for thread. name(%s) status(0x%08x)

thread 핸들은 얻는데 실패했습니다. 생성 thread에 따라 볼륨 생성이 실패하거나 연결이 되지 않을 수 있습니다.

로그에 출력 된 thread 이름과 status 확인이 필요합니다.

bsr/bsr-kernel-compat/windows/bsr_windows.c:1050

3

err

BSR_PANIC: unexpected number of threads in operation has been set. number(%d)

로직 버그로 실행 중인 theead의 등록 수 보다 많은 thread를 제거했습니다.

  •  

bsr/bsr-kernel-compat/windows/bsr_windows.c:1676

4

err

PsCreateSystemThread for adjust_changes_to_volume failed, status : 0x%x

  •  

  •  

bsr/bsr-kernel-compat/windows/bsr_windows.c:2378

5

err

PsCreateSystemThread for monitor_mnt_change failed with status 0x%08X

  •  

  •  

bsr/bsr-kernel-compat/windows/bsr_windows.c:2409

6

err

Failed to create %s thread.

메모리 할당 실패로 실행 중인 thread 등록을 실패했습니다.

사용 가능한 메모리가 있는지 확인이 필요 합니다.

bsr/bsr_main.c:795

7

info

Restarting %s thread

thread가 재시작됩니다. 연결 객체가 생성 된 상태입니다.

  •  

bsr/bsr_main.c:824

8

info

Restarting %s thread

thread가 재시작됩니다.

  •  

bsr/bsr_main.c:826

9

info

Terminating %s thread

thread가 종료됩니다. 연결 객체가 생성 된 상태입니다.

  •  

bsr/bsr_main.c:843

10

info

Terminating %s thread

thread가 종료됩니다.

  •  

bsr/bsr_main.c:845

11

info

Starting %s thread (from %s [%d])

thread가 시작됩니다. 연결 객체가 생성 된 상태입니다.

  •  

bsr/bsr_main.c:886

12

info

Starting %s thread (from %s [%d])

thread가 시작됩니다.

  •  

bsr/bsr_main.c:889

13

err

Couldn't start thread

thread 생성을 실패했습니다. 연결 객체가 생성 된 상태입니다.

  •  

bsr/bsr_main.c:924

14

err

Couldn't start thread

thread 생성을 실패했습니다.

  •  

bsr/bsr_main.c:926

15

info

Restarting %s thread (from %s [%d])

thread가 종료 된 상태입니다. thread가 재시작됩니다. 연결 객체가 생성 된 상태입니다.

  •  

bsr/bsr_main.c:949

16

info

Restarting %s thread (from %s [%d])

thread가 종료 된 상태입니다. thread가 재시작됩니다.

  •  

bsr/bsr_main.c:952

17

err

Failed to connect due to failure to create thread for work queue of ack sender

ack sender thread 생성을 실패했습니다. 피어 노드와 연결을 종료합니다.

  •  

bsr/bsr_receiver.c:1031

18

err

Failed to initialize thread due to failure to create client security, err=0x%x

thread를 client보안 설정을 실패로 thread를 초기화하지 못했습니다. resource 생성 시 실패했다면 복제가 정상 동작 하지 않습니다.

로그에 출력 된 err 확인이 필요합니다.

bsr-platform/windows/bsrvflt/thread.c:59

19

err

Failed to initialize thread due to failure to create thread, err(0x%x)

thread 생성 실패로 초기화를 실패했습니다. resource 생성 시 실패했다면 복제가 정상 동작 하지 않습니다.

로그에 출력 된 err 확인이 필요합니다.

bsr-platform/windows/bsrvflt/thread.c:71

20

info

Terminating mvolWorkThread

로컬 IRP 처리를 위한 thread가 종료됩니다.

  •  

bsr-platform/windows/bsrvflt/thread.c:142

21

err

Failed to work thread due to invalid IRP major function (0x%x)

지원하지 않는 IRP major function 을 수신했습니다. IRP를 실패로 처리합니다.

로그에 출력 된 major function 확인이 필요합니다.

bsr-platform/windows/bsrvflt/thread.c:194

22

info

hooker[%ws]: irp processing peek(%d)

로컬 IRP 처리를 위한 thread 에서 연속으로 처리되는 최대 요청 수 가 갱신되었습니다.

  •  

bsr-platform/windows/bsrvflt/thread.c:208

23

err

Rejected lower OS-volume write because OOS persistence failed. volume(%ws) minor(%u) sector(%llu-%llu) nr-sectors(%llu) result(%d)

Primary 전환 전 OS 볼륨 WRITE의 OOS bitmap 영속화에 실패하여 하위 디스크 WRITE를 거부했습니다.

Windows 전용. result 오류와 메타디스크 및 bitmap 상태를 확인합니다. 이 WRITE는 하위 디스크로 전달되지 않습니다.

bsr-platform/windows/bsrvflt/thread.c:97

24

warn

thread:%p spinlock recursion is happened! function:%s line:%d

동일한 thread에서 lock 획득에 대한 재귀호출이 발생했습니다.

로그에 출력 된 function, line 확인이 필요합니다.

bsr/bsr-kernel-compat/windows/bsr_windows.c:1256

25

warn

thread:%p spinlock recursion is happened! function:%s line:%d

동일한 thread에서 lock 획득에 대한 재귀호출이 발생했습니다.

로그에 출력 된 function, line 확인이 필요합니다.

bsr/bsr-kernel-compat/windows/bsr_windows.c:1282

26

warn

thread:%p spinlock recursion is happened! function:%s line:%d

동일한 thread에서 lock 획득에 대한 재귀호출이 발생했습니다.

로그에 출력 된 function, line 확인이 필요합니다.

bsr/bsr-kernel-compat/windows/bsr_windows.c:1319

27

warn

too many ct_threads (name:%s, thread_num:%d)

예상 thread 수보다 많은 thread가 생성되었습니다. 시스템 성능이 부족하거나 다중 resource 운영 시 발생 할 수 있습니다.

  •  

bsr/bsr-kernel-compat/windows/bsr_windows.c:1698

28

warn

Could not retry connection since receiver is restarting

연결 후 수신을 위한 thread가 재시작 중 입니다. thread 재시작 후 연결을 재시도합니다.

  •  

bsr/bsr_receiver.c:1077

29

warn

Sender got an unexpected signal

전송을 위한 thread에서 예상하지 못한 신호를 수신했습니다. thread가 동작 중인 상태면 무시합니다.

  •  

bsr/bsr_sender.c:4607

30

warn

Worker got an unexpected signal

작업을 위한 thread에서 예상하지 못한 신호를 수신했습니다. thread가 동작 중인 상태면 무시합니다.

  •  

bsr/bsr_sender.c:4701

31

warn

worker got an null-callback list. resource name (%s), twopc_work(%p) : w(%p)

작업을 위한 thread에서 할당되지 않은 callback 호출을 발견했습니다.

  •  

bsr/bsr_sender.c:4726

32

debug

WorkThread [%ws]: handle 0x%x start

  •  

  •  

bsr-platform/windows/bsrvflt/thread.c:133

33

debug

WorkThread [%ws]: Terminate Thread

  •  

  •  

bsr-platform/windows/bsrvflt/thread.c:144

34

debug

I/O Thread:IRQL(%d) start I/O(%s) loop(%d) .......................!

  •  

  •  

bsr-platform/windows/bsrvflt/thread.c:163

35

err

unable to create retry workqueue during bsr initialization

재시도를 위한 thread 생성을 실패했습니다. bsr초기화를 실패합니다.

  •  

bsr/bsr_main.c:6493

36

err

Failed to add device due to failure to create thread. status(0x%08X)

netlink thread 생성 실패로 볼륨 추가를 실패했습니다.

로그에 출력 된 status 확인이 필요합니다.

bsr-platform/windows/bsrvflt/disp.c:310

37

err

PsCreateSystemThread(_try_outdate_peer_async) failed with status 0x%08X

피어 디스크 상태를 outdate로 설정하기 위한 thread 샐성을 실패했습니다.

로그에 출력 된 status 확인이 필요합니다

bsr/bsr_nl.c:1109

공통 진단 순서

  1. 로그 수준과 최초 발생 시점을 기준으로 오류·경고 이전의 정상 상태를 확인합니다.

  2. 메시지의 객체, node/minor, sector/size, state와 오류 코드를 같은 시각의 로그와 연결합니다.

  3. thread 이름과 상태, stop 신호, wait 조건, outstanding work와 종료 순서를 대조해 직접 실패 지점과 후속 영향 범위를 구분합니다.

  4. 후속 성공·완료·상태 전이 로그가 없거나 같은 인덱스가 반복되면 관련 코드 위치와 플랫폼 분기를 확인합니다.