Hi Hoang,
Apply these change test and provide sys log at the time issue occurred.
====================================================================================
diff --git a/osaf/libs/core/leap/os_defs.c b/osaf/libs/core/leap/os_defs.c
--- a/osaf/libs/core/leap/os_defs.c
+++ b/osaf/libs/core/leap/os_defs.c
@@ -865,11 +865,15 @@ uint32_t ncs_os_posix_shm(NCS_OS_POSIX_S
}
/* Checking whether sufficient shared memory is
available to write the data, to be safer side ffree reduced to 1 block
size */
- if (req->info.write.i_write_size >
(statsvfs.f_bfree * statsvfs.f_frsize)) {
+ if (req->info.write.i_write_size >
((statsvfs.f_bfree - 1) * statsvfs.f_frsize)) {
syslog(LOG_ERR, "Insufficient shared
memory space (%ld) available to write the data of size: %ld \n",
(statsvfs.f_bfree *
statsvfs.f_frsize), req->info.write.i_write_size);
return NCSCC_RC_FAILURE;
+ } else {
+ syslog(LOG_ERR, "Sufficient shared
memory space (%ld) available to write the data of size: %ld \n",
+ (statsvfs.f_bfree *
statsvfs.f_frsize), req->info.write.i_write_size);
}
+
}
memcpy((void *)((char *)req->info.write.i_addr +
req->info.write.i_offset), req->info.write.i_from_buff,
req->info.write.i_write_size);
====================================================================================
-AVM
On 11/30/2016 11:56 AM, A V Mahesh wrote:
> Hi Hoang,
>
> Thansk for the test .
>
> Then it looks issue is not related to SHM deficiency ( 100 % used by
> other application )
> can you please re-test with below changes and that will confirm us it
> is completely not related to SHM free size.
>
> replacing:
>
> `if (req->info.write.i_write_size > (statsvfs.f_bfree *
> statsvfs.f_frsize)) {`
>
> with below, to be safer side ffree reduced to 1 block size :
>
> `if (req->info.write.i_write_size > ((statsvfs.f_bfree - 1) *
> statsvfs.f_frsize)) {
>
>
> -AVM
>
>
> On 11/30/2016 11:37 AM, Vo Minh Hoang wrote:
>> Dear Mahesh,
>>
>> Unfortunately, I have just receive information that the same core
>> dump still
>> occur after applying patch.
>>
>> Here is dump information in short, please tell me if I can do
>> anything in
>> support:
>>
>> Program terminated with signal SIGSEGV, Segmentation fault.
>> #0 0x00007fe314aa0109 in __memcpy_sse2_unaligned () from
>> /lib64/libc.so.6
>> Missing separate debuginfos, use: zypper install
>> opensaf-ckpt-nodedirector-debuginfo-5.1.0-9999.0.4997518.sle12.x86_64
>> (gdb) where
>> #0 0x00007fe314aa0109 in __memcpy_sse2_unaligned () from
>> /lib64/libc.so.6
>> #1 0x00007fe315c26082 in memcpy (__len=<optimized out>,
>> __src=<optimized
>> out>, __dest=<optimized out>)
>> at /usr/include/x86_64-linux-gnu/bits/string3.h:51
>> #2 ncs_os_posix_shm (req=req@entry=0x7ffecb80adb0) at os_defs.c:874
>> #3 0x0000000000415a80 in cpnd_sec_hdr_update (cb=cb@entry=0x9e57f0,
>> sec_info=sec_info@entry=0xb8ff60,
>> cp_node=cp_node@entry=0xb8e8c0) at cpnd_proc.c:1880
>> #4 0x0000000000406047 in cpnd_ckpt_sec_add (cb=cb@entry=0x9e57f0,
>> cp_node=0xb8e8c0, id=0x7fe30c002390,
>> exp_time=1480480471343486000, gen_flag=gen_flag@entry=0) at
>> cpnd_db.c:457
>> #5 0x000000000040d17c in cpnd_evt_proc_ckpt_sect_create
>> (cb=cb@entry=0x9e57f0,
>> evt=evt@entry=0x7fe30c01e1d0, sinfo=sinfo@entry=0x7fe30c01e828) at
>> cpnd_evt.c:2267
>> #6 0x000000000040eaf4 in cpnd_process_evt (evt=0x7fe30c01e1c0) at
>> cpnd_evt.c:227
>> #7 0x00000000004106cd in cpnd_main_process (cb=cb@entry=0x9e57f0) at
>> cpnd_init.c:579
>> #8 0x0000000000405383 in main (argc=<optimized out>, argv=<optimized
>> out>)
>> at cpnd_main.c:79
>>
>> Sincerely,
>> Hoang
>>
>> -----Original Message-----
>> From: [email protected] [mailto:[email protected]]
>> Sent: Tuesday, November 29, 2016 5:37 PM
>> To: [email protected]; [email protected]
>> Cc: [email protected]
>> Subject: [PATCH 0 of 3] Review Request for leap : now leap library
>> ensure
>> shm availability before writing [#2202]
>>
>> Summary:leap : now leap library ensure shm availability before writing
>> [#2202] Review request for Trac Ticket(s): #2202 Peer Reviewer(s):
>> Hoang /
>> Ramesh Pull request to: <<LIST THE PERSON WITH PUSH ACCESS HERE>>
>> Affected
>> branch(es): <<LIST ALL AFFECTED BRANCH(ES)>> Development branch: <<IF
>> ANY
>> GIVE THE REPO URL>>
>>
>> --------------------------------
>> Impacted area Impact y/n
>> --------------------------------
>> Docs n
>> Build system n
>> RPM/packaging n
>> Configuration files n
>> Startup scripts n
>> SAF services n
>> OpenSAF services y
>> Core libraries y
>> Samples n
>> Tests n
>> Other n
>>
>>
>> Comments (indicate scope for each "y" above):
>> ---------------------------------------------
>>
>> changeset 7b53e1b3754622fe90c22c801adeb7df6d808c30
>> Author: A V Mahesh <[email protected]>
>> Date: Tue, 29 Nov 2016 15:59:21 +0530
>>
>> leap : now leap library ensure shm availability before writing
>> [#2202]
>> Issue :
>>
>> If OSAF_CKPT_SHM_ALLOC_GUARANTEE is NOT set and SHM is 100% used in
>> system
>> , pnd Segmentation fault (core dumped) at LEAP memcpy().
>>
>> Fix :
>>
>> Now LEAP library ensures shm free space before writing This may
>> degrade
>> some performance of cpsv , if OSAF_CKPT_SHM_ALLOC_GUARANTEE is set,
>> cpsv
>> give natural performance.
>>
>> changeset 083114e13c00c9c4267ffe65a86c1a97a951b876
>> Author: A V Mahesh <[email protected]>
>> Date: Tue, 29 Nov 2016 16:02:06 +0530
>>
>> cpsv : update cpsv error handing based on leap changes [#2202]
>>
>> changeset fb509abb1d1583315f585663fd75bf73e35211a6
>> Author: A V Mahesh <[email protected]>
>> Date: Tue, 29 Nov 2016 16:02:58 +0530
>>
>> mqsv : update mqsv error handing based on leap changes [#2202]
>>
>>
>> Complete diffstat:
>> ------------------
>> osaf/libs/common/cpsv/include/cpnd_cb.h | 4 ++--
>> osaf/libs/common/cpsv/include/cpnd_init.h | 8 ++++----
>> osaf/libs/common/cpsv/include/cpnd_sec.h | 2 +-
>> osaf/libs/core/include/ncs_osprm.h | 2 +-
>> osaf/libs/core/leap/os_defs.c | 20 ++++++++++++++++++--
>> osaf/services/saf/cpsv/cpnd/cpnd_db.c | 12 ++++++------
>> osaf/services/saf/cpsv/cpnd/cpnd_evt.c | 82
>> +++++++++++++++++++++++++++++++++++++++++++++++++++++++++-------------------
>>
>> ------
>> osaf/services/saf/cpsv/cpnd/cpnd_proc.c | 31
>> ++++++++++++++++++-------------
>> osaf/services/saf/cpsv/cpnd/cpnd_res.c | 24
>> ++++++++----------------
>> osaf/services/saf/cpsv/cpnd/cpnd_sec.cc | 12 ++++++------
>> osaf/services/saf/glsv/glnd/glnd_shm.c | 2 +-
>> osaf/services/saf/mqsv/mqnd/mqnd_shm.c | 2 +-
>> 12 files changed, 123 insertions(+), 78 deletions(-)
>>
>>
>> Testing Commands:
>> -----------------
>> Create situation that node SHM reaches 100% usage and then perform
>> any CPSV
>> operation which writes to SHM
>>
>> Testing, Expected Results:
>> --------------------------
>> <<PASTE COMMAND OUTPUTS / TEST RESULTS>>
>>
>>
>> Conditions of Submission:
>> -------------------------
>> <<HOW MANY DAYS BEFORE PUSHING, CONSENSUS ETC>>
>>
>>
>> Arch Built Started Linux distro
>> -------------------------------------------
>> mips n n
>> mips64 n n
>> x86 n n
>> x86_64 y y
>> powerpc n n
>> powerpc64 n n
>>
>>
>> Reviewer Checklist:
>> -------------------
>> [Submitters: make sure that your review doesn't trigger any checkmarks!]
>>
>>
>> Your checkin has not passed review because (see checked entries):
>>
>> ___ Your RR template is generally incomplete; it has too many blank
>> entries
>> that need proper data filled in.
>>
>> ___ You have failed to nominate the proper persons for review and push.
>>
>> ___ Your patches do not have proper short+long header
>>
>> ___ You have grammar/spelling in your header that is unacceptable.
>>
>> ___ You have exceeded a sensible line length in your
>> headers/comments/text.
>>
>> ___ You have failed to put in a proper Trac Ticket # into your commits.
>>
>> ___ You have incorrectly put/left internal data in your comments/files
>> (i.e. internal bug tracking tool IDs, product names etc)
>>
>> ___ You have not given any evidence of testing beyond basic build tests.
>> Demonstrate some level of runtime or other sanity testing.
>>
>> ___ You have ^M present in some of your files. These have to be removed.
>>
>> ___ You have needlessly changed whitespace or added whitespace crimes
>> like trailing spaces, or spaces before tabs.
>>
>> ___ You have mixed real technical changes with whitespace and other
>> cosmetic code cleanup changes. These have to be separate commits.
>>
>> ___ You need to refactor your submission into logical chunks; there is
>> too much content into a single commit.
>>
>> ___ You have extraneous garbage in your review (merge commits etc)
>>
>> ___ You have giant attachments which should never have been sent;
>> Instead you should place your content in a public tree to be
>> pulled.
>>
>> ___ You have too many commits attached to an e-mail; resend as threaded
>> commits, or place in a public tree for a pull.
>>
>> ___ You have resent this content multiple times without a clear
>> indication
>> of what has changed between each re-send.
>>
>> ___ You have failed to adequately and individually address all of the
>> comments and change requests that were proposed in the initial
>> review.
>>
>> ___ You have a misconfigured ~/.hgrc file (i.e. username, email etc)
>>
>> ___ Your computer have a badly configured date and time; confusing the
>> the threaded patch review.
>>
>> ___ Your changes affect IPC mechanism, and you don't present any results
>> for in-service upgradability test.
>>
>> ___ Your changes affect user manual and documentation, your patch series
>> do not contain the patch that updates the Doxygen manual.
>>
>>
>
------------------------------------------------------------------------------
_______________________________________________
Opensaf-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensaf-devel