From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Christoph Egger" Subject: [PATCH] Cleanup for xen/common/kexec.c Date: Mon, 22 Jan 2007 10:48:53 +0100 Message-ID: <200701221048.53313.Christoph.Egger@amd.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="Boundary-00=_FiItFPdDs2c78+P" Return-path: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: xen-devel@lists.xensource.com List-Id: xen-devel@lists.xenproject.org --Boundary-00=_FiItFPdDs2c78+P Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Content-Disposition: inline Hi! Attached patch avoids void * arithmetic in xen/common/kexec.c Christoph --Boundary-00=_FiItFPdDs2c78+P Content-Type: text/x-diff; charset=us-ascii; name=xen_kexec.diff Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=xen_kexec.diff diff -r 7e28a8c150ed xen/common/kexec.c --- a/xen/common/kexec.c Sat Jan 20 14:33:43 2007 +0000 +++ b/xen/common/kexec.c Mon Jan 22 10:28:22 2007 +0100 @@ -27,7 +27,7 @@ typedef long ret_t; typedef long ret_t; #define ELFNOTE_ALIGN(_n_) (((_n_)+3)&~3) -#define ELFNOTE_NAME(_n_) ((void*)(_n_) + sizeof(*(_n_))) +#define ELFNOTE_NAME(_n_) ((char*)(_n_) + sizeof(*(_n_))) #define ELFNOTE_DESC(_n_) (ELFNOTE_NAME(_n_) + ELFNOTE_ALIGN((_n_)->namesz)) #define ELFNOTE_NEXT(_n_) (ELFNOTE_DESC(_n_) + ELFNOTE_ALIGN((_n_)->descsz)) @@ -75,10 +75,10 @@ void kexec_crash_save_cpu(void) if ( cpu_test_and_set(cpu, crash_saved_cpus) ) return; - prstatus = ELFNOTE_DESC(note); - - note = ELFNOTE_NEXT(note); - xencore = ELFNOTE_DESC(note); + prstatus = (ELF_Prstatus *)ELFNOTE_DESC(note); + + note = (Elf_Note *)ELFNOTE_NEXT(note); + xencore = (crash_xen_core_t *)ELFNOTE_DESC(note); elf_core_save_regs(&prstatus->pr_reg, xencore); } @@ -87,7 +87,7 @@ crash_xen_info_t *kexec_crash_save_info( crash_xen_info_t *kexec_crash_save_info(void) { int cpu = smp_processor_id(); - crash_xen_info_t *info = ELFNOTE_DESC(xen_crash_note); + crash_xen_info_t *info = (crash_xen_info_t *)ELFNOTE_DESC(xen_crash_note); BUG_ON(!cpu_test_and_set(cpu, crash_saved_cpus)); @@ -191,13 +191,13 @@ static int kexec_get(cpu)(xen_kexec_rang setup_note(note, "CORE", NT_PRSTATUS, sizeof(ELF_Prstatus)); /* Setup Xen CORE note. */ - note = ELFNOTE_NEXT(note); + note = (Elf_Note *)ELFNOTE_NEXT(note); setup_note(note, "Xen", XEN_ELFNOTE_CRASH_REGS, sizeof(crash_xen_core_t)); if (nr == 0) { /* Setup system wide Xen info note. */ - xen_crash_note = note = ELFNOTE_NEXT(note); + xen_crash_note = note = (Elf_Note *)ELFNOTE_NEXT(note); setup_note(note, "Xen", XEN_ELFNOTE_CRASH_INFO, sizeof(crash_xen_info_t)); } } --Boundary-00=_FiItFPdDs2c78+P Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel --Boundary-00=_FiItFPdDs2c78+P--