[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <563B3A3B.8020804@suse.com>
Date: Thu, 5 Nov 2015 12:15:07 +0100
From: Juergen Gross <jgross@...e.com>
To: Borislav Petkov <bp@...en8.de>, LKML <linux-kernel@...r.kernel.org>
Cc: Andrew Morton <akpm@...ux-foundation.org>,
Andy Lutomirski <luto@...nel.org>,
Chris Wright <chrisw@...s-sol.org>,
"H. Peter Anvin" <hpa@...or.com>, Ingo Molnar <mingo@...hat.com>,
Jeremy Fitzhardinge <jeremy@...p.org>,
"Peter Zijlstra (Intel)" <peterz@...radead.org>,
Rusty Russell <rusty@...tcorp.com.au>,
Thomas Gleixner <tglx@...utronix.de>,
virtualization@...ts.linux-foundation.org,
xen-devel@...ts.xenproject.org
Subject: Re: [RFC PATCH] x86/paravirt: Kill some unused patching functions
On 11/03/2015 10:18 AM, Borislav Petkov wrote:
> From: Borislav Petkov <bp@...e.de>
>
> paravirt_patch_ignore() is completely unused and paravirt_patch_nop()
> doesn't do a whole lot. Remove them both.
>
> Signed-off-by: Borislav Petkov <bp@...e.de>
Reviewed-by: Juergen Gross <jgross@...e.com>
> Cc: Andrew Morton <akpm@...ux-foundation.org>
> Cc: Andy Lutomirski <luto@...nel.org>
> Cc: Chris Wright <chrisw@...s-sol.org>
> Cc: "H. Peter Anvin" <hpa@...or.com>
> Cc: Ingo Molnar <mingo@...hat.com>
> Cc: Jeremy Fitzhardinge <jeremy@...p.org>
> Cc: Juergen Gross <jgross@...e.com>
> Cc: "Peter Zijlstra (Intel)" <peterz@...radead.org>
> Cc: Rusty Russell <rusty@...tcorp.com.au>
> Cc: Thomas Gleixner <tglx@...utronix.de>
> Cc: virtualization@...ts.linux-foundation.org
> Cc: xen-devel@...ts.xenproject.org
> ---
> arch/x86/include/asm/paravirt_types.h | 2 --
> arch/x86/kernel/paravirt.c | 13 +------------
> 2 files changed, 1 insertion(+), 14 deletions(-)
>
> diff --git a/arch/x86/include/asm/paravirt_types.h b/arch/x86/include/asm/paravirt_types.h
> index 31247b5bff7c..e1f31dfc3b31 100644
> --- a/arch/x86/include/asm/paravirt_types.h
> +++ b/arch/x86/include/asm/paravirt_types.h
> @@ -402,10 +402,8 @@ extern struct pv_lock_ops pv_lock_ops;
> __visible extern const char start_##ops##_##name[], end_##ops##_##name[]; \
> asm(NATIVE_LABEL("start_", ops, name) code NATIVE_LABEL("end_", ops, name))
>
> -unsigned paravirt_patch_nop(void);
> unsigned paravirt_patch_ident_32(void *insnbuf, unsigned len);
> unsigned paravirt_patch_ident_64(void *insnbuf, unsigned len);
> -unsigned paravirt_patch_ignore(unsigned len);
> unsigned paravirt_patch_call(void *insnbuf,
> const void *target, u16 tgt_clobbers,
> unsigned long addr, u16 site_clobbers,
> diff --git a/arch/x86/kernel/paravirt.c b/arch/x86/kernel/paravirt.c
> index c2130aef3f9d..4f32a10979db 100644
> --- a/arch/x86/kernel/paravirt.c
> +++ b/arch/x86/kernel/paravirt.c
> @@ -74,16 +74,6 @@ void __init default_banner(void)
> /* Undefined instruction for dealing with missing ops pointers. */
> static const unsigned char ud2a[] = { 0x0f, 0x0b };
>
> -unsigned paravirt_patch_nop(void)
> -{
> - return 0;
> -}
> -
> -unsigned paravirt_patch_ignore(unsigned len)
> -{
> - return len;
> -}
> -
> struct branch {
> unsigned char opcode;
> u32 delta;
> @@ -152,8 +142,7 @@ unsigned paravirt_patch_default(u8 type, u16 clobbers, void *insnbuf,
> /* If there's no function, patch it with a ud2a (BUG) */
> ret = paravirt_patch_insns(insnbuf, len, ud2a, ud2a+sizeof(ud2a));
> else if (opfunc == _paravirt_nop)
> - /* If the operation is a nop, then nop the callsite */
> - ret = paravirt_patch_nop();
> + ret = 0;
>
> /* identity functions just return their single argument */
> else if (opfunc == _paravirt_ident_32)
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists