[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] RE: [Xen-devel] [PATCH 1/5 TAKE 2] xenoprof: split xen x86 xenoprof code
> -----Original Message----- > From: Isaku Yamahata [mailto:yamahata@xxxxxxxxxxxxx] > Sent: Wednesday, November 15, 2006 9:54 PM > To: Santos, Jose Renato G > Cc: Keir Fraser; xen-devel@xxxxxxxxxxxxxxxxxxx; > xen-ia64-devel@xxxxxxxxxxxxxxxxxxx > Subject: Re: [Xen-devel] [PATCH 1/5 TAKE 2] xenoprof: split > xen x86 xenoprof code > > On Wed, Nov 15, 2006 at 09:58:40PM -0600, Santos, Jose Renato G wrote: > > > Mostly, the patches look good. > > I have a few questions though , mostly for clarification > > Thank you for your review. > > > > QUESTIONS for Isaku: > > > > patch 4/5: > > ========== > > > > > +struct xenoprof_shared_buffer { > > > + char *buffer; > > > + struct xenoprof_arch_shared_buffer arch; > > > +}; > > > > The arch field has no extra info for x86. Why do you need this? > > On IA64 it is defined as > struct xenoprof_arch_shared_buffer { > struct resource* res; > }; > > On IA64, auto translated mode feature is enabled. > It means that page mapping from xen is based on pseudo > physical address, not virtual address. Pseudo physical > address used to map pages must be recorded somewhere in order > to unmap. > I guess, if xenoprof/x86 supported auto translated guest mode > something similar structure would be necessary. > > Isaku I am still not convinced that we need this. Since this in the kernel you can always get the pseudo physical address from the virtual address, right? Am I missing something? I applied your patches to changeset 12446 but they are failing to compile. I have attached the make output below Could you please fix this and resend? Thanks Renato ======================================================================== ============ CC [M] arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.o arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:45: error: array type has incomplete element type arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c: In function "unmap_passive_list": arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:242: warning: implicit declaration of function "xenoprof_arch_unmap_shared_buffer" arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c: In function "map_xenoprof_buffer": arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:253: error: invalid use of undefined type "struct xenoprof_shared_buffer" arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:257: warning: implicit declaration of function "xenoprof_arch_map_shared_buffer" arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:264: error: invalid use of undefined type "struct xenoprof_shared_buffer" arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c: In function "xenoprof_setup": arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:300: warning: implicit declaration of function "xenoprof_arch_counter" arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c: In function "xenoprof_start": arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:345: warning: implicit declaration of function "xenoprof_arch_start" arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c: In function "xenoprof_stop": arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:354: warning: implicit declaration of function "xenoprof_arch_stop" arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c: In function "xenoprof_set_passive": arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:422: warning: implicit declaration of function "xenoprof_arch_set_passive" arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c: At top level: arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:460: error: syntax error before "do" arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:465: warning: type defaults to "int" in declaration of "ret" arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:465: error: "init" undeclared here (not in a function) arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:465: error: initializer element is not constant arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:465: warning: data definition has no type or storage class arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:466: error: syntax error before "if" arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:468: warning: type defaults to "int" in declaration of "xenoprof_is_primary" arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:468: error: redefinition of "xenoprof_is_primary" arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:51: error: previous definition of "xenoprof_is_primary" was here arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:468: warning: data definition has no type or storage class arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:471: warning: type defaults to "int" in declaration of "cpu_type" arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:471: error: conflicting types for "cpu_type" arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:59: error: previous declaration of "cpu_type" was here arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:471: error: invalid initializer arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:471: warning: data definition has no type or storage class arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:472: error: syntax error before "." token arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:472: warning: type defaults to "int" in declaration of "strncpy" arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:472: warning: function declaration isn"t a prototype arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:472: error: conflicting types for "strncpy" include/asm/string.h:45: error: previous definition of "strncpy" was here arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:472: warning: data definition has no type or storage class arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:473: error: syntax error before "." token arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:475: warning: type defaults to "int" in declaration of "init_driverfs" arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:475: warning: function declaration isn"t a prototype arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:475: warning: data definition has no type or storage class arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:476: warning: type defaults to "int" in declaration of "using_xenoprof" arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:476: error: non-static declaration of "using_xenoprof" follows static declaration arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:458: error: previous declaration of "using_xenoprof" was here arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:476: warning: data definition has no type or storage class arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:477: warning: type defaults to "int" in declaration of "ops" arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:477: error: incompatible types in initialization arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:477: warning: data definition has no type or storage class arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:479: error: syntax error before "for" arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:482: warning: type defaults to "int" in declaration of "active_defined" arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:482: error: non-static declaration of "active_defined" follows static declaration arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:52: error: previous declaration of "active_defined" was here arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:482: warning: data definition has no type or storage class arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:483: error: syntax error before "}" token arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:484: error: syntax error before string constant arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:485: warning: type defaults to "int" in declaration of "printk" arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:485: warning: function declaration isn"t a prototype arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:485: error: conflicting types for "printk" arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:485: note: a parameter list with an ellipsis can't match an empty parameter name list declaration include/linux/kernel.h:134: error: previous declaration of "printk" was here arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:485: warning: data definition has no type or storage class arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:490:27: error: macro "xenoprofile_exit" passed 1 arguments, but takes just 0 arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:491: error: syntax error before "{" token arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:495: error: syntax error before "&" token arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:495: warning: type defaults to "int" in declaration of "xenoprof_arch_unmap_shared_buffer" arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:495: warning: function declaration isn't a prototype arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:495: warning: data definition has no type or storage class arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.c:498: error: syntax error before numeric constant {standard input}: Assembler messages: {standard input}:72: Error: symbol `xenoprof_is_primary' is already defined make[4]: *** [arch/i386/oprofile/../../../drivers/xen/xenoprof/xenoprofile.o] Error 1 make[3]: *** [arch/i386/oprofile] Error 2 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |