2017-11-03 11:28:30 +01:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2016-12-24 11:46:01 -08:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-13 10:13:19 +01:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
2017-02-08 18:51:30 +01:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2008-02-11 15:26:09 +03:00
|
|
|
|
2011-06-16 14:12:47 +02:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
2012-09-13 11:21:12 -07:00
|
|
|
|
2010-06-09 20:43:03 +02:00
|
|
|
|
2012-05-01 21:33:26 -07:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2017-07-19 14:17:36 +02:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-04-28 18:52:16 +02:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
2006-04-28 18:52:16 +02:00
|
|
|
|
|
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-13 10:52:38 +01:00
|
|
|
|
|
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-13 10:52:38 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
2006-01-13 10:52:38 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-04-28 18:52:16 +02:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-17 11:15:13 +01:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
2013-12-05 22:59:23 -05:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
2013-12-05 22:59:23 -05:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
2017-08-09 15:08:56 +05:30
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-13 10:13:19 +01:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-14 13:20:43 -08:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-14 13:20:43 -08:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2012-09-13 11:21:12 -07:00
|
|
|
|
|
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-17 11:15:13 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
IRQ: Maintain regs pointer globally rather than passing to IRQ handlers
Maintain a per-CPU global "struct pt_regs *" variable which can be used instead
of passing regs around manually through all ~1800 interrupt handlers in the
Linux kernel.
The regs pointer is used in few places, but it potentially costs both stack
space and code to pass it around. On the FRV arch, removing the regs parameter
from all the genirq function results in a 20% speed up of the IRQ exit path
(ie: from leaving timer_interrupt() to leaving do_IRQ()).
Where appropriate, an arch may override the generic storage facility and do
something different with the variable. On FRV, for instance, the address is
maintained in GR28 at all times inside the kernel as part of general exception
handling.
Having looked over the code, it appears that the parameter may be handed down
through up to twenty or so layers of functions. Consider a USB character
device attached to a USB hub, attached to a USB controller that posts its
interrupts through a cascaded auxiliary interrupt controller. A character
device driver may want to pass regs to the sysrq handler through the input
layer which adds another few layers of parameter passing.
I've build this code with allyesconfig for x86_64 and i386. I've runtested the
main part of the code on FRV and i386, though I can't test most of the drivers.
I've also done partial conversion for powerpc and MIPS - these at least compile
with minimal configurations.
This will affect all archs. Mostly the changes should be relatively easy.
Take do_IRQ(), store the regs pointer at the beginning, saving the old one:
struct pt_regs *old_regs = set_irq_regs(regs);
And put the old one back at the end:
set_irq_regs(old_regs);
Don't pass regs through to generic_handle_irq() or __do_IRQ().
In timer_interrupt(), this sort of change will be necessary:
- update_process_times(user_mode(regs));
- profile_tick(CPU_PROFILING, regs);
+ update_process_times(user_mode(get_irq_regs()));
+ profile_tick(CPU_PROFILING);
I'd like to move update_process_times()'s use of get_irq_regs() into itself,
except that i386, alone of the archs, uses something other than user_mode().
Some notes on the interrupt handling in the drivers:
(*) input_dev() is now gone entirely. The regs pointer is no longer stored in
the input_dev struct.
(*) finish_unlinks() in drivers/usb/host/ohci-q.c needs checking. It does
something different depending on whether it's been supplied with a regs
pointer or not.
(*) Various IRQ handler function pointers have been moved to type
irq_handler_t.
Signed-Off-By: David Howells <dhowells@redhat.com>
(cherry picked from 1b16e7ac850969f38b375e511e3fa2f474a33867 commit)
2006-10-05 14:55:46 +01:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2007-07-18 10:58:02 -07:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
2012-09-13 11:21:12 -07:00
|
|
|
|
|
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
2020-10-19 12:06:42 +02:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2007-07-18 10:58:02 -07:00
|
|
|
|
2006-01-13 11:12:58 +01:00
|
|
|
|
2010-06-09 20:43:03 +02:00
|
|
|
|
2007-07-18 10:58:02 -07:00
|
|
|
|
2007-04-26 00:38:04 -07:00
|
|
|
|
|
|
|
|
|
2006-01-17 11:15:13 +01:00
|
|
|
|
|
|
|
|
|
2007-07-18 10:58:02 -07:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
2006-01-17 11:15:13 +01:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-17 11:15:13 +01:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
2006-01-17 11:15:13 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-13 11:06:46 +01:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-13 11:06:46 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
2006-01-13 11:06:46 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
2006-01-13 11:06:46 +01:00
|
|
|
|
2005-05-26 14:32:51 +02:00
|
|
|
|
2006-01-13 11:06:46 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2005-05-26 14:32:51 +02:00
|
|
|
|
2006-01-13 11:06:46 +01:00
|
|
|
|
|
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
2006-01-13 11:06:46 +01:00
|
|
|
|
2005-05-26 14:32:51 +02:00
|
|
|
|
2006-01-13 11:06:46 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
2006-01-13 11:06:46 +01:00
|
|
|
|
|
|
|
|
|
2007-04-19 20:43:29 -07:00
|
|
|
|
2006-01-13 11:06:46 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2007-04-19 20:29:13 -07:00
|
|
|
|
2006-01-13 11:06:46 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
2006-01-13 11:06:46 +01:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
2006-01-13 11:06:46 +01:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
2006-01-13 11:06:46 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
2007-04-19 20:29:13 -07:00
|
|
|
|
2006-01-13 11:06:46 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
2006-01-13 11:06:46 +01:00
|
|
|
|
2012-09-13 11:21:12 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-13 11:06:46 +01:00
|
|
|
|
2015-04-30 11:33:05 +02:00
|
|
|
|
|
|
|
|
|
2006-01-13 11:06:46 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2012-09-13 11:21:12 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-13 11:06:46 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2007-03-31 11:55:19 -03:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-13 11:06:46 +01:00
|
|
|
|
|
|
|
|
|
2012-09-13 11:21:12 -07:00
|
|
|
|
|
|
|
|
|
2006-01-13 11:06:46 +01:00
|
|
|
|
|
|
|
|
|
2012-09-13 11:21:12 -07:00
|
|
|
|
2006-01-13 11:06:46 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-13 10:52:38 +01:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
2006-01-13 10:52:38 +01:00
|
|
|
|
|
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2007-03-27 18:55:52 -03:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2010-06-09 20:43:03 +02:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2010-06-09 20:43:03 +02:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2010-06-09 20:22:03 +02:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-13 10:52:38 +01:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2020-08-17 14:32:03 +05:30
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
2020-08-17 14:32:03 +05:30
|
|
|
|
|
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2012-09-13 11:21:12 -07:00
|
|
|
|
|
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
2006-01-13 11:06:46 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
2006-01-13 11:06:46 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
2006-01-13 11:06:46 +01:00
|
|
|
|
|
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2020-08-17 14:32:03 +05:30
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
2020-08-17 14:32:03 +05:30
|
|
|
|
|
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-13 10:52:38 +01:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-13 10:52:38 +01:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-13 10:52:38 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
2012-09-13 11:21:12 -07:00
|
|
|
|
|
|
|
|
|
2006-01-13 10:52:38 +01:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-13 10:52:38 +01:00
|
|
|
|
|
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2008-09-23 00:27:47 -07:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2008-09-23 00:27:47 -07:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-13 10:05:15 +01:00
|
|
|
|
|
|
|
|
|
2013-06-28 11:32:54 -07:00
|
|
|
|
2011-06-16 14:12:47 +02:00
|
|
|
|
2006-01-13 10:05:15 +01:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-17 11:15:13 +01:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-17 11:15:13 +01:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2012-09-13 11:21:12 -07:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2005-11-20 23:56:11 +01:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2005-11-20 23:56:11 +01:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-17 11:15:13 +01:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
2006-01-17 11:15:13 +01:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-17 11:15:13 +01:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2013-12-05 22:59:23 -05:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2012-05-01 21:33:26 -07:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2008-10-27 17:47:26 -07:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-13 10:05:15 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2012-05-01 21:33:26 -07:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-17 11:15:13 +01:00
|
|
|
|
|
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-17 11:15:13 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-13 15:52:55 +01:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
2006-01-13 10:05:15 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2026-02-21 16:37:42 -08:00
|
|
|
|
2015-04-30 11:33:05 +02:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-17 11:15:13 +01:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-13 11:06:46 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-13 15:52:55 +01:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-13 15:52:55 +01:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2012-05-01 21:33:26 -07:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-13 15:52:55 +01:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
2006-01-13 11:06:46 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-13 15:52:55 +01:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
2006-01-17 11:15:13 +01:00
|
|
|
|
2013-12-05 22:59:23 -05:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
2006-01-13 10:05:15 +01:00
|
|
|
|
|
|
|
|
|
2012-05-01 21:33:26 -07:00
|
|
|
|
2006-01-13 10:05:15 +01:00
|
|
|
|
|
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-17 11:15:13 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2010-12-08 19:40:47 +00:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
2006-01-17 11:15:13 +01:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-17 11:15:13 +01:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-17 11:15:13 +01:00
|
|
|
|
|
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2005-11-29 16:16:41 -08:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-13 15:52:55 +01:00
|
|
|
|
2008-02-11 15:26:09 +03:00
|
|
|
|
2006-01-13 15:52:55 +01:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
2021-11-22 11:15:19 -06:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2008-02-11 15:26:09 +03:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
2013-07-03 15:04:58 -07:00
|
|
|
|
2008-02-11 15:26:09 +03:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
2008-02-11 15:26:09 +03:00
|
|
|
|
|
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2017-10-21 00:12:34 -07:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
2025-05-09 07:51:14 +02:00
|
|
|
|
2017-10-21 00:12:34 -07:00
|
|
|
|
|
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
2006-04-28 18:53:45 +02:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2017-10-21 00:12:34 -07:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-13 10:52:38 +01:00
|
|
|
|
2021-09-28 18:39:35 -05:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
2023-09-15 13:20:14 -06:00
|
|
|
|
|
|
|
|
|
2021-09-28 18:39:35 -05:00
|
|
|
|
2016-08-25 19:38:56 +02:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2022-08-18 23:01:15 +02:00
|
|
|
|
2013-07-03 15:04:58 -07:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-17 11:16:13 +01:00
|
|
|
|
2006-01-17 11:15:13 +01:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-13 15:52:55 +01:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
2008-02-11 15:26:09 +03:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-13 10:59:23 +01:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2020-08-17 14:32:03 +05:30
|
|
|
|
|
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-13 10:59:23 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-13 10:52:38 +01:00
|
|
|
|
2010-06-09 20:43:03 +02:00
|
|
|
|
2006-01-13 10:52:38 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2022-03-17 12:55:11 +09:00
|
|
|
|
2006-01-13 10:52:38 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2010-06-09 20:43:03 +02:00
|
|
|
|
2006-01-13 10:52:38 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-13 10:59:23 +01:00
|
|
|
|
2006-01-13 10:52:38 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2013-06-28 11:32:54 -07:00
|
|
|
|
|
|
|
|
|
2006-01-13 10:52:38 +01:00
|
|
|
|
|
|
|
|
|
2006-01-13 10:59:23 +01:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-13 10:59:23 +01:00
|
|
|
|
|
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-13 10:07:08 +01:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2005-05-27 10:00:08 +02:00
|
|
|
|
|
|
|
|
|
2006-01-13 09:38:22 +01:00
|
|
|
|
|
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
2006-01-13 10:07:08 +01:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-13 10:59:23 +01:00
|
|
|
|
|
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2024-09-26 15:59:55 +08:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-13 11:06:46 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-17 11:16:13 +01:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-13 11:06:46 +01:00
|
|
|
|
|
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2010-06-09 20:43:03 +02:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-13 10:05:15 +01:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-13 15:52:55 +01:00
|
|
|
|
2006-01-13 10:05:15 +01:00
|
|
|
|
2008-02-11 15:26:09 +03:00
|
|
|
|
|
|
|
|
|
2006-01-13 15:52:55 +01:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-13 15:52:55 +01:00
|
|
|
|
2006-01-13 10:05:15 +01:00
|
|
|
|
|
|
|
|
|
2006-01-13 15:52:55 +01:00
|
|
|
|
2006-01-13 10:05:15 +01:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2025-04-05 10:17:26 +02:00
|
|
|
|
|
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
2006-01-13 10:05:15 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-13 11:06:46 +01:00
|
|
|
|
|
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
2007-03-06 02:47:43 -08:00
|
|
|
|
2005-11-29 16:16:41 -08:00
|
|
|
|
2009-11-21 15:33:51 +00:00
|
|
|
|
2007-03-06 02:47:43 -08:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2019-12-09 10:31:43 -08:00
|
|
|
|
2020-12-08 10:32:06 +01:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-01-13 10:52:38 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2012-09-13 11:21:12 -07:00
|
|
|
|
|
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2010-06-09 20:22:03 +02:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
2012-09-13 11:21:12 -07:00
|
|
|
|
2005-05-11 20:24:03 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|