On 07/11/2014 07:12 AM, sarath azad wrote:
> 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.

If the SEL has more than 100 events in it, then the above may or may not
work.  Some SELs can only be bulk cleared; you cannot delete individual
events from the SEL.  OpenIPMI makes it look like you are deleting them
locally, but it will wait until all the events are deleted before it
attempts to clear the SEL.

This is, as you have found, a major inconvenience.  You will need to
iterate until the local SEL count is zero; then the library will issue
the clear.

-corey

>  
> 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]
> <mailto:[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]>
> > <mailto:[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]>
> <mailto:[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]>>
> > > <mailto:[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]>>
>
> > > <mailto:[email protected]
> <mailto:[email protected]>
> > <mailto:[email protected]
> <mailto:[email protected]>>>
> >
> > > https://lists.sourceforge.net/lists/listinfo/openipmi-developer
> > >
> > >
> >
> >
> >
>
>
>


------------------------------------------------------------------------------
_______________________________________________
Openipmi-developer mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openipmi-developer

Reply via email to