Hi all, I found a fatal bug in Redhat Enterprise Server 3 Update 9 <2.4.21-50.EL> on x86_64 when I used "wait_queue_head_t" data structure, the same program works very well on i386, but porting it to x86_64 will bring Linux kernel crash, who can help to take a look at it, thanks. all source code are as follows: ghe.c - kernel module source file mk.sh - command lines to compile all source files read.c - read operation write.c - write operation rhel3u9-64bit.txt - oops output Reproduce bug: 1) run "./mk.sh" to compile all source files 2) run "insmod ghe.o" to insert kernel module to kernel 3) run "mknod /dev/ghe xxx" to create char device file 4) run "./devread" to read data from /dev/ghe 5) run "./devwrite" to write data to /dev/ghe, bug will take place.
Created attachment 302190 [details] bug source code
Any engineer can take a look at it, thanks!
From all appearances, this is most likely a bug in your driver, not in the kernel, and hence probably not appropriate to file it as a bug against the RHEL3 kernel.