Direct Ethernet

Direct Ethernet

I am trying to build the DET software on a Fedora Box and found a problem that prevents the kernel driver from compiling. I made a small change and was able to fix the problem.

In det_debug.h it attempts to define an 'assert' macro. Inside the definition of the macro is uses another macro 'BREAK()' which is suppose to call 'breakpoint()'. However, on my system the compiler flags this as an error. To get it to build, I just removed the 'BREAK()' in the macro and all the files build fine.

What I had to do.

mv det-1.1.0 det-1.1.1

edit det_debug.hpp as above

edit version string inside det.spec

tar czvf det-1.1.1.tar.gz det-1.1.1

rpmbuild -tb det-1.1.1.tar.gz

4 posts / novo 0
Último post
Para obter mais informações sobre otimizações de compiladores, consulte Aviso sobre otimizações.

I was able to get the det driver and example program built and running. However, when the det_perf program exits I get the message below. I'm wondering what this means and it is something to be concerned about?
/JMB

Message from syslogd@arturo at Nov 22 16:00:46 ...
kernel: Oops: 0000 [1] SMP

Message from syslogd@arturo at Nov 22 16:00:46 ...
kernel: Code: 41 56 49 89 fe 48 89 f7 41 55 41 54 49 89 f4 53 e8 bf ee f7 ff 48 c1 e8 0c 48 ba 00 00 00 00 00 e2 ff ff 48 6b c0 38 48 8d 34 10 <48> 8b 06 25 00 40 00 00 48 85 c0 74 04 48 8b 76 10 4c 8b 6d 08

Message from syslogd@arturo at Nov 22 16:00:46 ...
kernel: CR2: ffffe3bc80000000

Message from syslogd@arturo at Nov 22 16:00:46 ...
kernel: Oops: 0000 [2] SMP

Message from syslogd@arturo at Nov 22 16:00:46 ...
kernel: Code: 41 56 49 89 fe 48 89 f7 41 55 41 54 49 89 f4 53 e8 bf ee f7 ff 48 c1 e8 0c 48 ba 00 00 00 00 00 e2 ff ff 48 6b c0 38 48 8d 34 10 <48> 8b 06 25 00 40 00 00 48 85 c0 74 04 48 8b 76 10 4c 8b 6d 08

Message from syslogd@arturo at Nov 22 16:00:46 ...
kernel: CR2: ffffe3bc80000000

imagem de Roy Larsen (Intel)

Fedora was not one of the Linux distributions we did development and testing with so I appreciate your feedback on the build/install issues. If you'll provide the Fedora release and kernel version, we'll get a system loaded and will make it part of the test process.

The oops doesn't provide enough information for me to venture a guess on what might be happening. When we get the Fedora system up I'll be able to ge a better look.

Roy

I am also found DET interesting and trying to build on Fedora.

[root@s4 det]# cat /etc/fedora-release
Fedora release 11 (Leonidas)
[root@s4 det]# uname -a
Linux s4.cluster.univ.kiev.ua 2.6.31.2 #2 SMP Mon Oct 12 07:52:47 EDT 2009 x86_64 x86_64 x86_64 GNU/Linux

I didn't have any problems with det_debug.h but due to changes in kernelproc_dir_entry struct I have fixed det_procfs.c commenting all lines like:

if (likely(entry))
entry->owner = THIS_MODULE;

--- proc_fs.h.23 2009-10-16 09:38:37.000000000 +0300

+++ proc_fs.h.31 2009-10-16 09:38:23.000000000 +0300
- get_info_t *get_info;
- struct module *owner;
- int deleted; /* delete flag */
+ struct list_head pde_openers; /* who did ->open, but not ->release */

After this changes kernel module successfully compiled and modprobed. But when running det_perf tests I have allready get oops:

[root@s4 bin]# det_perf
Running as server on eth0
CONNECTED
RDMA write start.... ERROR Timer expired

Message from syslogd@s4 at Oct 16 09:06:28 ...
kernel:Oops: 0000 [#4] SMP

Message from syslogd@s4 at Oct 16 09:06:28 ...
kernel:last sysfs file: /sys/devices/system/cpu/cpu3/cache/index1/shared_cpu_map

Message from syslogd@s4 at Oct 16 09:06:28 ...
kernel:Stack:

Message from syslogd@s4 at Oct 16 09:06:28 ...
kernel:Call Trace:

Message from syslogd@s4 at Oct 16 09:06:28 ...
kernel:Code: 65 d8 5b 41 5c 41 5d 41 5e 41 5f c9 c3 55 48 89 e5 e8 31 1a f8 ff 48 c1 e8 0c 48 ba 00 00 00 00 00 ea ff ff 48 6b c0 38 48 01 d0 <66> 83 38 00 79 04 48 8b 40 10 c9 c3 55 48 89 e5 41 54 49 89 f4

Message from syslogd@s4 at Oct 16 09:06:28 ...
kernel:CR2: ffffeba400000000

Any suggestions?

Faça login para deixar um comentário.