On Mar 05, 2007  14:22 +0100, Donadini Thibault wrote:
> Since the last documentation, OST_IO_PORTAL has been created and has 
> replaced OST_REQUEST_PORTAL 6, which became OST_REQUEST_PORTAL 28.
> 
> What is the purpose of OST_IO_PORTAL ?
> How does it work ? ( opcodes associated, ...., how many buffers.. with 
> which information, etc..)
> 
> What is the new purpose of OST_REQUEST_PORTAL ?

The reason for this change is that small/fast RPC requests like getattr
were being blocked behind many GB of IO RPCs and this was causing
responsiveness problems.

For reasons of compatibility, the service threads running on portal #6
were kept for doing the large IO requests (because they have pre-allocated
1MB buffers for doing IO without allocations).  The small request RPCs
were moved to a new portal (#28) if both the client and server understand
the OBD_CONNECT_REQPORTAL feature.  Both services handle the same RPC
requests over the wire.

The same is true for the MDS_*_PORTAL - the format of the requests and
the back-end handling code is exactly the same, but they are split into
different portals because of latency or deadlock-avoidance issues.

Cheers, Andreas
--
Andreas Dilger
Principal Software Engineer
Cluster File Systems, Inc.

_______________________________________________
Lustre-discuss mailing list
[email protected]
https://mail.clusterfs.com/mailman/listinfo/lustre-discuss

Reply via email to