osaf/libs/core/include/mds_papi.h   |  7 +++++--
 osaf/libs/core/include/ncsusrbuf.h  |  2 +-
 osaf/libs/core/mds/include/mds_dt.h |  2 +-
 osaf/libs/core/mds/mds_dt_tipc.c    |  4 ++--
 4 files changed, 9 insertions(+), 6 deletions(-)


Adjust some MDS related constants.

MDS_DIRECT_BUF_MAXSIZE defines the max size sending an unencoded message. This
is changed to reflect the new fragmentation limit.

MDTM_NORMAL_MSG_FRAG_SIZE defines the fragmentation limit supported by old MDS
cores. Since the receive buffer was 8000 bytes, we change it to that.

PAYLOAD_BUF_SIZE is a core constant that defines buffer size of each usrbuf.
By increasing this value to 8000, less processing overhead for chaining buffers
is needed. In the normal case all messages will fit into one usrbuf.

diff --git a/osaf/libs/core/include/mds_papi.h 
b/osaf/libs/core/include/mds_papi.h
--- a/osaf/libs/core/include/mds_papi.h
+++ b/osaf/libs/core/include/mds_papi.h
@@ -208,8 +208,11 @@ extern "C" {
 #define NCSMDS_MAX_VDEST    32767
 #define NCSMDS_MAX_SVCS     1023
 
-#define MDS_DIRECT_BUF_MAXSIZE 8000
-       typedef uint8_t *MDS_DIRECT_BUFF;
+/* Maximum size of the buffer used with MDS_DIRECT_SEND (no encoding) */
+#define MDS_DIRECT_BUF_MAXSIZE  (65535 - 56)
+
+typedef uint8_t *MDS_DIRECT_BUFF;
+
 #define m_MDS_ALLOC_DIRECT_BUFF(size) mds_alloc_direct_buff(size)
 #define m_MDS_FREE_DIRECT_BUFF(x) mds_free_direct_buff(x)
        MDS_DIRECT_BUFF mds_alloc_direct_buff(uint16_t size);
diff --git a/osaf/libs/core/include/ncsusrbuf.h 
b/osaf/libs/core/include/ncsusrbuf.h
--- a/osaf/libs/core/include/ncsusrbuf.h
+++ b/osaf/libs/core/include/ncsusrbuf.h
@@ -48,7 +48,7 @@
 extern "C" {
 #endif
 
-#define PAYLOAD_BUF_SIZE 1400  /* default size of packet_data bufrs */
+#define PAYLOAD_BUF_SIZE 8000  /* default size of packet_data bufrs */
 
 /*****************************************************************************
 
diff --git a/osaf/libs/core/mds/include/mds_dt.h 
b/osaf/libs/core/mds/include/mds_dt.h
--- a/osaf/libs/core/mds/include/mds_dt.h
+++ b/osaf/libs/core/mds/include/mds_dt.h
@@ -109,7 +109,7 @@ typedef struct mdtm_reassembly_queue {
 
 #define MDTM_MAX_DIRECT_BUFF_SIZE  MDTM_MAX_SEGMENT_SIZE
 
-#define MDTM_NORMAL_MSG_FRAG_SIZE   1400
+#define MDTM_NORMAL_MSG_FRAG_SIZE   8000
 
 /* Prefixes and defines regarding to the MDS_TIPC*/
 
diff --git a/osaf/libs/core/mds/mds_dt_tipc.c b/osaf/libs/core/mds/mds_dt_tipc.c
--- a/osaf/libs/core/mds/mds_dt_tipc.c
+++ b/osaf/libs/core/mds/mds_dt_tipc.c
@@ -2040,9 +2040,9 @@ uint32_t mds_mdtm_send_tipc(MDTM_SEND_RE
                                int version = req->msg_arch_word & 0x7;
                                if (version > 0) {
                                        // normal mode, use TIPC fragmentation
-                                       frag_size = TIPC_MAX_USER_MSG_SIZE;
+                                       frag_size = MDS_DIRECT_BUF_MAXSIZE;
                                } else {
-                                       // old mode, completely skip TIPC 
fragmentation
+                                       // old mode, use some TIPC 
fragmentation but not full capabilities
                                        frag_size = MDTM_NORMAL_MSG_FRAG_SIZE;
                                }
 

------------------------------------------------------------------------------
"Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE
Instantly run your Selenium tests across 300+ browser/OS combos.  Get 
unparalleled scalability from the best Selenium testing platform available.
Simple to use. Nothing to install. Get started now for free."
http://p.sf.net/sfu/SauceLabs
_______________________________________________
Opensaf-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensaf-devel

Reply via email to