mirror of
https://github.com/rd-stuffs/msm-4.14.git
synced 2025-02-20 11:45:48 +08:00
[PATCH] ppc64: Don't count number of events processed for caller
Currently we count the number of lpevents processed in 3 seperate places. One of these counters is never read, so just remove it. This means hvlpevent_queue_process() no longer needs to return the number of events processed. Signed-off-by: Michael Ellerman <michael@ellerman.id.au> Acked-by: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: Paul Mackerras <paulus@samba.org>
This commit is contained in:
parent
937b31b114
commit
74889802a1
@ -127,14 +127,14 @@ static void hvlpevent_clear_valid( struct HvLpEvent * event )
|
|||||||
event->xFlags.xValid = 0;
|
event->xFlags.xValid = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
unsigned process_hvlpevents(struct pt_regs *regs)
|
void process_hvlpevents(struct pt_regs *regs)
|
||||||
{
|
{
|
||||||
unsigned numIntsProcessed = 0;
|
unsigned numIntsProcessed = 0;
|
||||||
struct HvLpEvent * nextLpEvent;
|
struct HvLpEvent * nextLpEvent;
|
||||||
|
|
||||||
/* If we have recursed, just return */
|
/* If we have recursed, just return */
|
||||||
if ( !set_inUse() )
|
if ( !set_inUse() )
|
||||||
return 0;
|
return;
|
||||||
|
|
||||||
if (ItLpQueueInProcess == 0)
|
if (ItLpQueueInProcess == 0)
|
||||||
ItLpQueueInProcess = 1;
|
ItLpQueueInProcess = 1;
|
||||||
@ -144,9 +144,6 @@ unsigned process_hvlpevents(struct pt_regs *regs)
|
|||||||
for (;;) {
|
for (;;) {
|
||||||
nextLpEvent = get_next_hvlpevent();
|
nextLpEvent = get_next_hvlpevent();
|
||||||
if ( nextLpEvent ) {
|
if ( nextLpEvent ) {
|
||||||
/* Count events to return to caller
|
|
||||||
* and count processed events in hvlpevent_queue
|
|
||||||
*/
|
|
||||||
++numIntsProcessed;
|
++numIntsProcessed;
|
||||||
hvlpevent_queue.xLpIntCount++;
|
hvlpevent_queue.xLpIntCount++;
|
||||||
/* Call appropriate handler here, passing
|
/* Call appropriate handler here, passing
|
||||||
@ -186,8 +183,6 @@ unsigned process_hvlpevents(struct pt_regs *regs)
|
|||||||
clear_inUse();
|
clear_inUse();
|
||||||
|
|
||||||
get_paca()->lpevent_count += numIntsProcessed;
|
get_paca()->lpevent_count += numIntsProcessed;
|
||||||
|
|
||||||
return numIntsProcessed;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static int set_spread_lpevents(char *str)
|
static int set_spread_lpevents(char *str)
|
||||||
|
@ -66,7 +66,6 @@ EXPORT_SYMBOL(irq_desc);
|
|||||||
int distribute_irqs = 1;
|
int distribute_irqs = 1;
|
||||||
int __irq_offset_value;
|
int __irq_offset_value;
|
||||||
int ppc_spurious_interrupts;
|
int ppc_spurious_interrupts;
|
||||||
unsigned long lpevent_count;
|
|
||||||
u64 ppc64_interrupt_controller;
|
u64 ppc64_interrupt_controller;
|
||||||
|
|
||||||
int show_interrupts(struct seq_file *p, void *v)
|
int show_interrupts(struct seq_file *p, void *v)
|
||||||
@ -295,7 +294,7 @@ void do_IRQ(struct pt_regs *regs)
|
|||||||
}
|
}
|
||||||
#endif /* CONFIG_SMP */
|
#endif /* CONFIG_SMP */
|
||||||
if (hvlpevent_is_pending())
|
if (hvlpevent_is_pending())
|
||||||
lpevent_count += process_hvlpevents(regs);
|
process_hvlpevents(regs);
|
||||||
|
|
||||||
irq_exit();
|
irq_exit();
|
||||||
|
|
||||||
|
@ -801,9 +801,8 @@ int mf_get_boot_rtc(struct rtc_time *tm)
|
|||||||
return rc;
|
return rc;
|
||||||
/* We need to poll here as we are not yet taking interrupts */
|
/* We need to poll here as we are not yet taking interrupts */
|
||||||
while (rtc_data.busy) {
|
while (rtc_data.busy) {
|
||||||
extern unsigned long lpevent_count;
|
|
||||||
if (hvlpevent_is_pending())
|
if (hvlpevent_is_pending())
|
||||||
lpevent_count += process_hvlpevents(NULL);
|
process_hvlpevents(NULL);
|
||||||
}
|
}
|
||||||
return rtc_set_tm(rtc_data.rc, rtc_data.ce_msg.ce_msg, tm);
|
return rtc_set_tm(rtc_data.rc, rtc_data.ce_msg.ce_msg, tm);
|
||||||
}
|
}
|
||||||
|
@ -99,7 +99,6 @@ unsigned long tb_to_ns_shift;
|
|||||||
struct gettimeofday_struct do_gtod;
|
struct gettimeofday_struct do_gtod;
|
||||||
|
|
||||||
extern unsigned long wall_jiffies;
|
extern unsigned long wall_jiffies;
|
||||||
extern unsigned long lpevent_count;
|
|
||||||
extern int smp_tb_synchronized;
|
extern int smp_tb_synchronized;
|
||||||
|
|
||||||
extern struct timezone sys_tz;
|
extern struct timezone sys_tz;
|
||||||
@ -368,7 +367,7 @@ int timer_interrupt(struct pt_regs * regs)
|
|||||||
|
|
||||||
#ifdef CONFIG_PPC_ISERIES
|
#ifdef CONFIG_PPC_ISERIES
|
||||||
if (hvlpevent_is_pending())
|
if (hvlpevent_is_pending())
|
||||||
lpevent_count += process_hvlpevents(regs);
|
process_hvlpevents(regs);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* collect purr register values often, for accurate calculations */
|
/* collect purr register values often, for accurate calculations */
|
||||||
|
@ -77,7 +77,7 @@ struct hvlpevent_queue {
|
|||||||
extern struct hvlpevent_queue hvlpevent_queue;
|
extern struct hvlpevent_queue hvlpevent_queue;
|
||||||
|
|
||||||
extern int hvlpevent_is_pending(void);
|
extern int hvlpevent_is_pending(void);
|
||||||
extern unsigned process_hvlpevents(struct pt_regs *);
|
extern void process_hvlpevents(struct pt_regs *);
|
||||||
extern void setup_hvlpevent_queue(void);
|
extern void setup_hvlpevent_queue(void);
|
||||||
|
|
||||||
#endif /* _ITLPQUEUE_H */
|
#endif /* _ITLPQUEUE_H */
|
||||||
|
Loading…
x
Reference in New Issue
Block a user