[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] LTTng Xen port



On Tue, Dec 12, 2006 at 05:14:02PM -0500, Mathieu Desnoyers wrote:
 
> As from the current mercurial tree :
> http://lxr.xensource.com/lxr/source/tools/xentrace/xentrace.c
> 
> int monitor_tbufs(FILE *logfile)
> 310     /* now, scan buffers for events */
> 311     while ( !interrupted )
> 312     {
> 313         for ( i = 0; (i < num) && !interrupted; i++ )
> 314         {
> 315             while ( meta[i]->cons != meta[i]->prod )
> 316             {
> 317                 rmb(); /* read prod, then read item. */
> 318                 write_rec(i, data[i] + meta[i]->cons % size_in_recs, 
> logfile);
> 319                 mb(); /* read item, then update cons. */
> 320                 meta[i]->cons++;
> 321             }
> 322         }
> 323 
> 324         nanosleep(&opts.poll_sleep, NULL);
> 325     }
> 
> So it seems like the implementation must be hiding either in someone's head or
> in his mercurial tree. :)

I suspect that xenbaked uses it,
http://lxr.xensource.com/lxr/source/tools/xenmon/xenbaked.c
---
262 int eventchn_init(void)
263 {
264   int rc;
265   
266   // to revert to old way:
267   if (0)
268     return -1;
269   
270   xce_handle = xc_evtchn_open();
271 
272   if (xce_handle < 0)
273     perror("Failed to open evtchn device");
274   
275   if ((rc = xc_evtchn_bind_virq(xce_handle, VIRQ_TBUF)) == -1)
276     perror("Failed to bind to domain exception virq port");
277   virq_port = rc;
278   
279   return xce_handle;
280 }
---

With appropriate triggering, in xen/common/trace.c

Yours Tony

   linux.conf.au       http://linux.conf.au/ || http://lca2007.linux.org.au/
   Jan 15-20 2007      The Australian Linux Technical Conference!


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.