| 
    
 [Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] Re: [Xen-changelog] [xen-unstable] Spinlock profiling (enable in buildwith lock_profile=y)
 Masaki Kanno wrote: > Hi, > > I got the following error. > > gcc -O1 -fno-omit-frame-pointer -fno-optimize-sibling-calls -m32 -march > =i686 -g -fno-strict-aliasing -std=gnu99 -Wall -Wstrict-prototypes -Wno- > unused-value -Wdeclaration-after-statement -D__XEN_TOOLS__ -MMD -MF . > xenlockprof.o.d -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 - > D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -mno-tls-direct-seg-refs - > Werror -I ../../tools/python/xen/lowlevel/xc -I ../../tools/libxc -I ../.. > /tools/include -c -o xenlockprof.o xenlockprof.c > cc1: warnings being treated as errors > xenlockprof.c: In function ‘main’: > xenlockprof.c:128: warning: format ‘%12ld’ expects type ‘long int’, > but argument 3 has type ‘uint64_t’ > xenlockprof.c:128: warning: format ‘%12ld’ expects type ‘long int’, > but argument 5 has type ‘uint64_t’ > make[4]: *** [xenlockprof.o] Error 1 > make[4]: Leaving directory `/xen/xen-unstable.hg/tools/misc' > make[3]: *** [subdir-install-misc] Error 2 > make[3]: Leaving directory `/xen/xen-unstable.hg/tools' > make[2]: *** [subdirs-install] Error 2 > make[2]: Leaving directory `/xen/xen-unstable.hg/tools' > make[1]: *** [install-tools] Error 2 > make[1]: Leaving directory `/xen/xen-unstable.hg' > make: *** [world] Error 2 Sorry, I've got no 32 bit machine to test. Attached patch should correct this. Juergen -- Juergen Gross Principal Developer Operating Systems TSP ES&S SWE OS6 Telephone: +49 (0) 89 636 47950 Fujitsu Technolgy Solutions e-mail: juergen.gross@xxxxxxxxxxxxxx Otto-Hahn-Ring 6 Internet: ts.fujitsu.com D-81739 Muenchen Company details: ts.fujitsu.com/imprint.html Signed-off-by: juergen.gross@xxxxxxxxxxxxxx
diff -r 18758847bf31 tools/misc/xenlockprof.c
--- a/tools/misc/xenlockprof.c  Wed Oct 14 09:09:23 2009 +0100
+++ b/tools/misc/xenlockprof.c  Thu Oct 15 06:53:27 2009 +0200
@@ -39,6 +39,7 @@
     uint32_t           i, j, n;
     uint64_t           time;
     double             l, b, sl, sb;
+    long long int      lc, bc;
     char               name[60];
     xc_lockprof_data_t *data;
 
@@ -124,8 +125,10 @@
         b = (double)(data[j].block_time) / 1E+09;
         sl += l;
         sb += b;
-        printf("%-50s: lock:%12ld(%20.9fs), block:%12ld(%20.9fs)\n",
-            name, data[j].lock_cnt, l, data[j].block_cnt, b);
+       lc = data[j].lock_cnt;
+       bc = data[j].block_cnt;
+        printf("%-50s: lock:%12lld(%20.9fs), block:%12lld(%20.9fs)\n",
+            name, lc, l, bc, b);
     }
     l = (double)time / 1E+09;
     printf("total profiling time: %20.9fs\n", l);
diff -r 18758847bf31 xen/common/spinlock.c
--- a/xen/common/spinlock.c     Wed Oct 14 09:09:23 2009 +0100
+++ b/xen/common/spinlock.c     Thu Oct 15 07:02:46 2009 +0200
@@ -354,13 +354,17 @@
 static void spinlock_profile_print_elem(struct lock_profile *data,
     int32_t type, int32_t idx, void *par)
 {
+    long long int lc, bc;
+
     if (type == LOCKPROF_TYPE_GLOBAL)
         printk("%s %s:\n", lock_profile_ancs[idx].name, data->name);
     else
         printk("%s %d %s:\n", lock_profile_ancs[idx].name, idx, data->name);
-    printk("  lock:%12ld(%08X:%08X), block:%12ld(%08X:%08X)\n",
-        data->lock_cnt, (u32)(data->time_hold >> 32), (u32)data->time_hold,
-        data->block_cnt, (u32)(data->time_block >> 32), (u32)data->time_block);
+    lc = data->lock_cnt;
+    bc = data->block_cnt;
+    printk("  lock:%12lld(%08X:%08X), block:%12lld(%08X:%08X)\n",
+        lc, (u32)(data->time_hold >> 32), (u32)data->time_hold,
+        bc, (u32)(data->time_block >> 32), (u32)data->time_block);
     return;
 }
 
_______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel 
 
 
  | 
  
![]()  | 
            
         Lists.xenproject.org is hosted with RackSpace, monitoring our  |