지금 집에서 혼자 디버깅중인데...


기현상을 발견해서 조언좀...


코드 딱 두줄이야....


...

write_pos = write_pos_rs % BUFF_SIZE_RS;

printk("[BV]bv_write_RS %d = %d %d\n", write_pos, write_pos_rs, BUFF_SIZE_RS);

...



결과가 어떻냐면....



[   95.983985] [BV]bv_write_RS 0 = 127 6350

[   95.998984] [BV]bv_write_RS 0 = 254 6350

[   96.013985] [BV]bv_write_RS 0 = 381 6350

[   96.028980] [BV]bv_write_RS 0 = 508 6350

[   96.043985] [BV]bv_write_RS 0 = 635 6350

[   96.058980] [BV]bv_write_RS 0 = 762 6350

[   96.073810] [BV]bv_write_RS 0 = 889 6350

[   96.088811] [BV]bv_write_RS 0 = 1016 6350



127을 6350으로 나눈 나머지가 왜 0이 나오지?


127이 안나오고?



변수들은 전부 unsigned int 구...


linux kernel 3.10 이야...



이게 무슨일인지 당최...ㅜ


썸바리 헬미..ㅠㅜㅜ