Whamcloud - gitweb
Branch HEAD
[fs/lustre-release.git] / lnet / tests / ut.h
1 #define DEBUG_SUBSYSTEM S_PINGER
2
3 #include <libcfs/kp30.h>
4 #include <lnet/lnet.h>
5
6 #define UT_PORTAL       42
7
8 #define PJK_UT_MSG(fmt...) do{printk("<1>" UT_MSG_MODULE_NAME ":%-30s:",__FUNCTION__);printk(fmt);}while(0)
9
10 #define DO_TYPE(x) case x: return #x;
11
12 const char *get_ev_type_string(int evtype)
13 {
14         switch(evtype)
15         {
16                 DO_TYPE(LNET_EVENT_GET);
17                 DO_TYPE(LNET_EVENT_PUT);
18                 DO_TYPE(LNET_EVENT_REPLY);
19                 DO_TYPE(LNET_EVENT_ACK);
20                 DO_TYPE(LNET_EVENT_SEND);
21                 DO_TYPE(LNET_EVENT_UNLINK);
22         default:
23                 return "";
24         }
25 }
26
27 static volatile int seen = 0;
28 static volatile int seen_unlink = 0;
29
30 static inline void handler(lnet_event_t *ev)
31 {
32         PJK_UT_MSG("-------- EVENT START ------------\n");
33         PJK_UT_MSG("type=%d %s\n",ev->type,get_ev_type_string(ev->type));
34         PJK_UT_MSG("portal=%d\n",ev->pt_index);
35         PJK_UT_MSG("matchbits="LPX64"\n",ev->match_bits);
36         PJK_UT_MSG("request length=%d\n",ev->rlength);
37         PJK_UT_MSG("manipulated length=%d\n",ev->mlength);
38         PJK_UT_MSG("offset=%d\n",ev->offset);
39         PJK_UT_MSG("status=%d\n",ev->status);
40         PJK_UT_MSG("unlinked=%d\n",ev->unlinked);
41         PJK_UT_MSG("md.user_ptr=%p\n",ev->md.user_ptr);
42         PJK_UT_MSG("-------- EVENT END --------------\n");
43         ++seen;
44         if(ev->unlinked)++seen_unlink;
45 }