1

주제: 드디어 SP 프로젝트 버그 잡다!!!! ㅠㅠㅠㅠㅠ

역시 언제나 그렇듯 모든 건 다 제 탓이죠, 암 그렇고 말구요. -_-

결론은........ 단 한 글자 때문에 발생한 문제였다는 사실과 함께 그것이 포인터 삽질이었다는 것...... OTL
알고나서 그 허탈감에 한 시간 정도 아무것도 못하고 헤헤거리면서 뛰어다녔다는...;;

사실 pthread_create 함수 자체는 마지막 인자를 쓰레드 함수에 넘겨주는 것 말고는 아무런 관여를 하지 않는다고 생각했는데, 그 인자가 잘못 지정된 포인터였을 경우 내부적으로 세그폴트를 내는 건지 하여간 그냥 block되어 버립니다. -_-

gdb + valgrind를 총동원해도 못 알아냈었다가 결국 어느 선배의 도움으로 찾아내고 말았습니다. -_- (그분한테는 이미 야식 쏘기로 약속을..=3)
컴파일러의 type checking에 잘못 속아넘어간 제가 잘못이었던 거죠. ㅠㅠ

어쨌든 이제 파일 보내기는 잘 됩니다만 받는 쪽에 전혀 못 받는군요. 조만간 완성할 수 있을 듯합니다.
가능하면 오늘 내로 완성해서 데모까지 끝마치고 주말에 집에 갈 수 있도록 해야겠습니다.

문제의 답은 우리 안에 있다.
내면에 귀를 기울여 보자.

2

답글: 드디어 SP 프로젝트 버그 잡다!!!! ㅠㅠㅠㅠㅠ

다시 패닉 상태 돌입!
-_-

At SPARCS 작성:

:: :: server_thread_xget[1]: starting for loop... (num_blocks = 15742)
:: :: server_thread_xget[1]: got the lock

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 1083894704 (unknown thread_db state 1)]
0x0827fedc in ?? ()
(gdb) bt
#0  0x0827fedc in ?? ()
Cannot access memory at address 0x0

At Daybreakin 작성:

:: Accepted 1, (sockfd = 9)
:: Making thread... (0x805350c, 0x804e515, 0x805bef8)
:: Calling pthread_create(0x805350c, 0x80522e0, 0x804e515, 0x805bef8)
세그멘테이션 오류
daybreaker@daybreakin:~/cs230-sp/assign5
$ :: :: server_thread_xget[1]: got the lock
:: :: data->start = 3072, data->length = 1024 at [1]
:: :: [1] sleep...

;민오히;ㅁㅇ나러;ㅣㄴ아ㅗㅎ;미나호;ㅣㅏㄴ어리;마홈니아홈ㄴ이ㅏ럼;호밍나ㅓㅎㄻ;ㅣㅏ롬ㄴ이ㅏ;홈ㄴㅇ;ㅣ라ㅓㅁㅇㄴ;ㅣ홍ㄴㅁ;ㅣㅏ허이;ㄴㅀ;ㅣ마오

daybreaker (2006-06-29 16:59:49)에 의해 마지막으로 수정

문제의 답은 우리 안에 있다.
내면에 귀를 기울여 보자.

3

답글: 드디어 SP 프로젝트 버그 잡다!!!! ㅠㅠㅠㅠㅠ

전 말이에요... repository log에서 daybreaker님 좀 보고 싶어요. 아주 아주 많이 보고 싶어요.(나 이뻐?)