Hi Ankur,
I think we could clean up this path some. Just to clarify what you are
looking for though, are you planning to send a response all the way back
to the client? The server does not normally send a response back for a
failed unexpected message. In the case you describe, you would need to
propagate a specific error code out of testunexpected(), and then add
server state machine code to have it identify that particular error code
and send a response.
Assuming that sounds like a reasonable approach, I'll look into cleaning
up the BMI part of that equation.
-Phil
Pai, Ankur G wrote:
Guys, I need some help. I am trying to change the function
tcp_accept_init() inside src/io/bmi/bmi_tcp/bmi-tcp.c. This function
has the accept() call (ie. it is the first point of contact by the
pvfs client to the server). At this point I need to make some
immediate checks and decide if I want to allow this client any
further access to the server. If I find out that I do NOT want to
allow access I need to cleanly return an error to the client. If I do
a return (-1) from this function, however, the server's bmi thread
simply crashes giving me the foll output:
====================================================================================
[E 11/15 17:24] src/io/bmi/bmi.c line 957: Error: critical
BMI_testcontext failure. [E 11/15 17:24] [bt]
pvfs2-server(BMI_testcontext+0x274) [0x807a344] [E 11/15 17:24]
[bt] pvfs2-server [0x8072971] [E 11/15 17:24] [bt]
/lib/libpthread.so.0 [0xd4340b] [E 11/15 17:24] [bt]
/lib/libc.so.6(__clone+0x5e) [0xa03b7e] [E 11/15 17:24] Warning: non
PVFS2 error code (1): [E 11/15 17:24] critical BMI failure. :
Operation not permitted [E 11/15 17:24] bmi_thread_function thread
terminating [E 11/15 17:24] PVFS2 server got signal 2
(server_status_flag: 262143)
======================================================================================
I am using pvfs-2.6.3. At this point in the code, i see a comment
which says:
======================================================================================
/* FIXME: * BIG KLUDGE * if we return an error, pvfs2-server's bmi
thread simply terminates. * hence I am returning 0 here. Need to ask
Phil or RobR about this... */
=======================================================================================
Is there any fix for this problem yet?
_______________________________________________
Pvfs2-developers mailing list
Pvfs2-developers@beowulf-underground.org
http://www.beowulf-underground.org/mailman/listinfo/pvfs2-developers