[Linux-ha-dev] ipcsocket.c, ipctest.c: advice, please

David Lee t.d.lee at durham.ac.uk
Fri Mar 9 06:19:36 MST 2007


Background: I've never had BSC successfully pass on any flavour of
Solaris.  (Anyone else had success?)

About a year ago, I did some work on 'ipcsocket.c' to try to get it
working, not only on various different flavours of Solaris, but also
adding the option to use 'streams' rather than 'sockets' (necessary on
Solaris before release 10) on OSes where that is more appopriate.

This definitely improved things, and I supplemented this with some
additional flexibility in its 'ipctest.c' exerciser.  But the magic target
of passing the BSC test was still elusive.

Anyway, I'm re-visiting that area.  I suspect the BSC problem might lie
in 'ipcsocket.c', and I'd like your advice in pursuing it, please.

By far the major portion of 'ipcsocket.c' seems to be about chopping up
and big outgoing data messages into smaller chunks, so as to avoid
blocking on 'send()'.  (And, of course, in re-assembling these chunks on
the 'recv()' side.)

But 'ipctest' seems only to use small data messages "String-%d".  (Is that
correct?  Calls to 'ops->new_ipcmsg' seem to grab just 32 bytes.)  So I
guess that the packet fragmentation/re-assembly parts of 'ipcsocket.c' are
not being exercised as fully as they might.  Thus on Solaris, the code
might pass 'ipctest', whilst failing the more strenuous BSC workout.
Does that sound plausible so far?

So what I would like to do is extend 'ipctest' to be closer to 'real life'
(e.g. using BSC-like data).  What sort of data sizes would you regard as
'real life'?  (Also any hints about content-like issues that might affect
things, that could be used in the 'ipctest' exerciser, would be welcome.)

Thanks in advance.

-- 

:  David Lee                                I.T. Service          :
:  Senior Systems Programmer                Computer Centre       :
:  UNIX Team Leader                         Durham University     :
:                                           South Road            :
:  http://www.dur.ac.uk/t.d.lee/            Durham DH1 3LE        :
:  Phone: +44 191 334 2752                  U.K.                  :


More information about the Linux-HA-Dev mailing list