[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH 15/16] x86: don't need "changed" parameter for set_io_bitmap()
From: Jeremy Fitzhardinge <jeremy.fitzhardinge@xxxxxxxxxx> Impact: cleanup The "changed" parameter isn't really used, so don't bother passing it. (xen_set_io_bitmap can keep track of it for itself, if it wants.) Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@xxxxxxxxxx> --- arch/x86/include/asm/paravirt.h | 6 +++--- arch/x86/include/asm/processor.h | 2 +- arch/x86/kernel/ioport.c | 9 +++------ arch/x86/kernel/process.c | 4 ++-- arch/x86/xen/enlighten.c | 5 +---- 5 files changed, 10 insertions(+), 16 deletions(-) diff --git a/arch/x86/include/asm/paravirt.h b/arch/x86/include/asm/paravirt.h index fd2c31b..56acbe8 100644 --- a/arch/x86/include/asm/paravirt.h +++ b/arch/x86/include/asm/paravirt.h @@ -157,7 +157,7 @@ struct pv_cpu_ops { void (*set_iopl_mask)(unsigned mask); void (*set_io_bitmap)(struct thread_struct *thread, - int changed, unsigned long bytes_updated); + unsigned long bytes_updated); void (*wbinvd)(void); void (*io_delay)(void); @@ -1005,9 +1005,9 @@ static inline void set_iopl_mask(unsigned mask) } static inline void set_io_bitmap(struct thread_struct *thread, - int changed, unsigned long bytes_updated) + unsigned long bytes_updated) { - PVOP_VCALL3(pv_cpu_ops.set_io_bitmap, thread, changed, bytes_updated); + PVOP_VCALL2(pv_cpu_ops.set_io_bitmap, thread, bytes_updated); } /* The paravirtualized I/O functions */ diff --git a/arch/x86/include/asm/processor.h b/arch/x86/include/asm/processor.h index 0ed4cba..15d0769 100644 --- a/arch/x86/include/asm/processor.h +++ b/arch/x86/include/asm/processor.h @@ -539,7 +539,7 @@ static inline void native_set_iopl_mask(unsigned mask) } extern void native_set_io_bitmap(struct thread_struct *thread, - int changed, unsigned long updated_bytes); + unsigned long updated_bytes); static inline void native_load_sp0(struct tss_struct *tss, struct thread_struct *thread) diff --git a/arch/x86/kernel/ioport.c b/arch/x86/kernel/ioport.c index 5a12c9f..642660f 100644 --- a/arch/x86/kernel/ioport.c +++ b/arch/x86/kernel/ioport.c @@ -31,7 +31,7 @@ static void set_bitmap(unsigned long *bitmap, unsigned int base, } void native_set_io_bitmap(struct thread_struct *t, - int changed, unsigned long bytes_updated) + unsigned long bytes_updated) { struct tss_struct *tss; @@ -54,7 +54,6 @@ asmlinkage long sys_ioperm(unsigned long from, unsigned long num, int turn_on) { struct thread_struct *t = ¤t->thread; unsigned int i, max_long, bytes, bytes_updated; - int changed; if ((from + num <= from) || (from + num > IO_BITMAP_BITS)) return -EINVAL; @@ -75,9 +74,7 @@ asmlinkage long sys_ioperm(unsigned long from, unsigned long num, int turn_on) memset(bitmap, 0xff, IO_BITMAP_BYTES); t->io_bitmap_ptr = bitmap; set_thread_flag(TIF_IO_BITMAP); - changed = 1; - } else - changed = 0; + } /* * do it in the per-thread copy @@ -104,7 +101,7 @@ asmlinkage long sys_ioperm(unsigned long from, unsigned long num, int turn_on) t->io_bitmap_max = bytes; - set_io_bitmap(t, changed, bytes_updated); + set_io_bitmap(t, bytes_updated); preempt_enable(); diff --git a/arch/x86/kernel/process.c b/arch/x86/kernel/process.c index a0d9544..ef9b919 100644 --- a/arch/x86/kernel/process.c +++ b/arch/x86/kernel/process.c @@ -74,7 +74,7 @@ void exit_thread(void) preempt_disable(); t->io_bitmap_ptr = NULL; clear_thread_flag(TIF_IO_BITMAP); - set_io_bitmap(t, 1, t->io_bitmap_max); + set_io_bitmap(t, t->io_bitmap_max); t->io_bitmap_max = 0; preempt_enable(); kfree(bp); @@ -209,7 +209,7 @@ void __switch_to_xtra(struct task_struct *prev_p, struct task_struct *next_p, if (test_tsk_thread_flag(next_p, TIF_IO_BITMAP) || test_tsk_thread_flag(prev_p, TIF_IO_BITMAP)) - set_io_bitmap(next, 1, + set_io_bitmap(next, max(prev->io_bitmap_max, next->io_bitmap_max)); } diff --git a/arch/x86/xen/enlighten.c b/arch/x86/xen/enlighten.c index 0cc5a3b..e231cb7 100644 --- a/arch/x86/xen/enlighten.c +++ b/arch/x86/xen/enlighten.c @@ -570,13 +570,10 @@ static void xen_set_iopl_mask(unsigned mask) } static void xen_set_io_bitmap(struct thread_struct *thread, - int changed, unsigned long bytes_updated) + unsigned long bytes_updated) { struct physdev_set_iobitmap set_iobitmap; - if (!changed) - return; - set_xen_guest_handle(set_iobitmap.bitmap, (char *)thread->io_bitmap_ptr); set_iobitmap.nr_ports = thread->io_bitmap_ptr ? IO_BITMAP_BITS : 0; -- 1.6.0.6 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |