Devctl and maximum message size to/from a network driver

Hi!

Can anyone tell me the maximum message size that can be sent between a
network driver and an application using a devctl?

I have an application that needs to interact with a driver, the result
of this interaction is around 7K of data. I’d initially intended to
return this information via the devctl, but I have discovered that I can
only send around 2048 bytes of information.

Setting the size of the message to anything larger than this results in
an error when devctl is called.

a) Is there such a limit on devctl transfers and if so what is it?

b) can any one suggest a better mechanism to retrieve information from a
network driver

Thanks in advance for comments/suggestions

Dave

Dave Edwards <dave.edwards@abicom-international.com> wrote:

Hi!

Can anyone tell me the maximum message size that can be sent between a
network driver and an application using a devctl?

Around 2K. The reason is that this is the size of the receive
context in io-net. To get the rest of the data, a MsgRead() would
be required; however, the devctl() callout doesn’t pass the rcvid.

I have an application that needs to interact with a driver, the result
of this interaction is around 7K of data. I’d initially intended to
return this information via the devctl, but I have discovered that I can
only send around 2048 bytes of information.

Setting the size of the message to anything larger than this results in
an error when devctl is called.

a) Is there such a limit on devctl transfers and if so what is it?

b) can any one suggest a better mechanism to retrieve information from a
network driver

The cleanest way would probably be to create your own namespace
entry and handle io requests on it directly: ie. use resmgr_attach()
and become a resource manager.

-seanb

Sean,

Thanks for the info. I now know what I have to do in the future, however
it turns out that the 7K message was mostly junk!

After examining the code, most responses are only a few hundred bytes.
Thus I don’t need to worry about the maximum message size.


Regards

Dave



Sean Boudreau wrote:

Dave Edwards <> dave.edwards@abicom-international.com> > wrote:

Hi!


Can anyone tell me the maximum message size that can be sent between a
network driver and an application using a devctl?


Around 2K. The reason is that this is the size of the receive
context in io-net. To get the rest of the data, a MsgRead() would
be required; however, the devctl() callout doesn’t pass the rcvid.


I have an application that needs to interact with a driver, the result
of this interaction is around 7K of data. I’d initially intended to
return this information via the devctl, but I have discovered that I can
only send around 2048 bytes of information.


Setting the size of the message to anything larger than this results in
an error when devctl is called.


a) Is there such a limit on devctl transfers and if so what is it?


b) can any one suggest a better mechanism to retrieve information from a
network driver


The cleanest way would probably be to create your own namespace
entry and handle io requests on it directly: ie. use resmgr_attach()
and become a resource manager.

-seanb