Hi Corey,
 
For handling the SEL full condition, I was
trying the below method, but it is not working. Could you please tell if the
process is incorrect?
1.       using ipmi_domain_iterate_mcs() function
check each MC
2.       The callback function provided to the above
function, will be called for each of the MCs.
3.       Inside this callback function check if SEL
entries of the MC is more than some percentage of the SEL.
4.       If yes then get the first event in that MC using:
ipmi_mc_first_event() and then start a loop for 100 times to clear the old 100
events form SEL.
5.       Inside the loop call ipmi_event_delete()
passing the event. Then call ipmi_mc_next_event() with the event
 
The function ipmi_event_delete() is
successfully running but the events are not getting deleted. I have tried to
use ipmi_event_free() along with ipmi_event_delete(), but then also same
result. 
The SEL is still full after successfully
executing above functions.
 
When looking into these function definitions,
internally they are calling sel_del_event() with last parameter “do clear” as
0. And they are only marking the events as deleted and  not clearing them. 
Whereas looking at the
function ipmi_mc_sel_clear () which calls ipmi_sel_clear(), which calls 
sel_del_event()
with “do clear” parameter as 1, and this function does actual clearing the
events from the SEL. 
 
Are the functions ipmi_event_delete()  not working as expected? Or do we need 
to call
any other function to clear the events marked as ‘deleted’?

Please suggest.
 
Thanks and regards
S Sarath
On Wednesday, July 9, 2014 12:22 AM, Corey Minyard <[email protected]> wrote:
 


On 07/08/2014 11:14 AM, sarath azad wrote:
> Hi Corey,
>  
> On my system SEL is full with 100%. And the sensor SEL_FULLNESS's
> value is 100.00. I think this is showing SEL is 100% full.
>  
> Also can we add a function in domain.c to clear the SEL?
> Like:
>    Similar to function: ipmi_domain_get_event_rcvr() where we are
> calling ipmi_domain_iterate_mcs() and passing a callback function
> which will be called for each of the MCs in the domain. Now in that
> call back function can we call ipmi_mc_sel_clear() function to clear
> the SEL of that MC. In this way we may clear the whole SEL of the system.
>  
> Please suggest if the approach is ok.

That approach is ok, but you risk losing events if not done carefully. 
If an event comes in right before you clear the SEL, it could be lost if
you are just blindly clearing it.  IIRC, you can pass in a "last event"
to the delete function and it will
 only delete the SEL if that is the
last event in the SEL.

Of course, if the SEL is full you will lose events anyway, so it doesn't
matter for that case, but that's why I suggest the approach I talked about.

-corey

>  
> Thanks and regards
> S Sarath 
>
>
> On Tuesday, July 8, 2014 1:12 AM, Corey Minyard <[email protected]> wrote:
>
>
> On 07/07/2014 05:48 AM, sarath azad wrote:
> > Hi Corey,
> >
> > I could find the a function: ipmi_sel_clear() inside ipmi_sel.h.
>
> Oops, that may not be the best way to do it, although it still will
> work.  That's sort of an internal function.
>
> > Also I could see a sensor SEL_FULLNESS which could tell if the SEL is
> > full or not.
>
> I've never seen that implemented.  Getting the fullness of the SEL is a
> little
 tricky.  OpenIPMI maintains events on a domain basis (collecting
> all the events in a domain, which can contain multiple SELs if more than
> one controller has an SEL) and on a per-MC basis.  You can get the
> number of entries in the domain with ipmi_domain_sel_entries_used(), but
> it makes little sense to get the number of unused entries in a domain,
> since that could be misleading (one SEL could be full and the other
> not).  You can get the number of entries available with
> ipmi_mc_sel_get_num_entries() and the current count used with
> ipmi_mc_sel_entries_used().
>
>
 However, IMHO that's not the best way to manage the SEL.  I think the
> best way is to keep the SEL clear.  When an event comes in, store it in
> local store, handle it, and delete it immediately.  That way the SEL is
> always fairly empty and ready for events all the time.
>
> >
> > So can we use the above function and event handler on the above sensor
> > to handle clearing the SEL when it gets full?
> > Also is there any way to take a backup of the SEL into a file, before
> > clearing it?
>
> The best way to do this is to
 go through all the events with
> ipmi_domain_first_event() and ipmi_domain_next_event(), save them, and
> delete them with ipmi_event_delete().  There's not a function in
> openipmi to save a copy of the SEL.
>
> -corey
>
> >
> > thanks and regards
> > S Sarath
> >
> >
> > On Monday, July 7, 2014 1:06 PM, sarath azad <[email protected]
>
 <mailto:[email protected]>>
> > wrote:
> >
> >
> > Hi Corey,
> >
> > Could you please help in resolving this problem of handling the SEL
> > entries?
> >
> > thanks and regards
> > S Sarath
> >
> >
> > On Thursday, July 3, 2014 1:16 PM, sarath azad
> > <[email protected] <mailto:[email protected]>> wrote:
> >
> >
> > Hi Corey,
> >
> > Is there any event which gets generated when SEL is nearing its
> > maximum capacity?
> > Can we handled that event by clearing the SEL?
> >
> > thanks and regards
> > S Sarath
> >
> >
> >
> >
> ------------------------------------------------------------------------------
> > Open source business process management suite built on Java and Eclipse
> > Turn processes into business applications with Bonita BPM Community
> > Edition
> > Quickly connect people, data, and systems into organized workflows
> > Winner of BOSSIE, CODIE, OW2 and Gartner awards
> > http://p.sf.net/sfu/Bonitasoft
> >
 _______________________________________________
> > Openipmi-developer mailing list
> > [email protected]
> <mailto:[email protected]>
> > <mailto:[email protected]
> <mailto:[email protected]>>
> > https://lists.sourceforge.net/lists/listinfo/openipmi-developer
> >
> >
> >
> >
> >
> ------------------------------------------------------------------------------
> > Open source business process management suite built on Java and Eclipse
> > Turn processes into business applications with
 Bonita BPM Community
> > Edition
> > Quickly connect people, data, and systems into organized workflows
> > Winner of BOSSIE, CODIE, OW2 and Gartner awards
> > http://p.sf.net/sfu/Bonitasoft
> >
> > _______________________________________________
> > Openipmi-developer mailing list
> > [email protected]
> <mailto:[email protected]>

> > <mailto:[email protected]
> <mailto:[email protected]>>
>
> > https://lists.sourceforge.net/lists/listinfo/openipmi-developer
> >
> >
>
>
>
------------------------------------------------------------------------------
Open source business process management suite built on Java and Eclipse
Turn processes into business applications with Bonita BPM Community Edition
Quickly connect people, data, and systems into organized workflows
Winner of BOSSIE, CODIE, OW2 and Gartner awards
http://p.sf.net/sfu/Bonitasoft
_______________________________________________
Openipmi-developer mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openipmi-developer

Reply via email to