1. 20 7月, 2012 1 次提交
    • H
      s390/comments: unify copyright messages and remove file names · a53c8fab
      Heiko Carstens 提交于
      Remove the file name from the comment at top of many files. In most
      cases the file name was wrong anyway, so it's rather pointless.
      
      Also unify the IBM copyright statement. We did have a lot of sightly
      different statements and wanted to change them one after another
      whenever a file gets touched. However that never happened. Instead
      people start to take the old/"wrong" statements to use as a template
      for new files.
      So unify all of them in one go.
      Signed-off-by: NHeiko Carstens <heiko.carstens@de.ibm.com>
      a53c8fab
  2. 16 5月, 2012 1 次提交
  3. 11 3月, 2012 1 次提交
    • M
      [S390] rework idle code · 4c1051e3
      Martin Schwidefsky 提交于
      Whenever the cpu loads an enabled wait PSW it will appear as idle to the
      underlying host system. The code in default_idle calls vtime_stop_cpu
      which does the necessary voodoo to get the cpu time accounting right.
      The udelay code just loads an enabled wait PSW. To correct this rework
      the vtime_stop_cpu/vtime_start_cpu logic and move the difficult parts
      to entry[64].S, vtime_stop_cpu can now be called from anywhere and
      vtime_start_cpu is gone. The correction of the cpu time during wakeup
      from an enabled wait PSW is done with a critical section in entry[64].S.
      As vtime_start_cpu is gone, s390_idle_check can be removed as well.
      Signed-off-by: NMartin Schwidefsky <schwidefsky@de.ibm.com>
      4c1051e3
  4. 30 10月, 2011 2 次提交
  5. 26 9月, 2011 1 次提交
  6. 16 3月, 2011 2 次提交
  7. 17 12月, 2010 1 次提交
    • C
      drivers: Replace __get_cpu_var with __this_cpu_read if not used for an address. · 4a6f4fe8
      Christoph Lameter 提交于
      __get_cpu_var() can be replaced with this_cpu_read and will then use a single
      read instruction with implied address calculation to access the correct per cpu
      instance.
      
      However, the address of a per cpu variable passed to __this_cpu_read() cannot be
      determed (since its an implied address conversion through segment prefixes).
      Therefore apply this only to uses of __get_cpu_var where the addres of the
      variable is not used.
      
      V3->V4:
      	- Move one instance of this_cpu_inc_return to a later patch
      	  so that this one can go in without percpu infrastructrure
      	  changes.
      
      Sedat: fixed compile failure caused by an extra ')'.
      
      Cc: Neil Horman <nhorman@tuxdriver.com>
      Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
      Cc: Sedat Dilek <sedat.dilek@gmail.com>
      Acked-by: NH. Peter Anvin <hpa@zytor.com>
      Signed-off-by: NChristoph Lameter <cl@linux.com>
      Signed-off-by: NTejun Heo <tj@kernel.org>
      4a6f4fe8
  8. 17 5月, 2010 1 次提交
    • M
      [S390] idle time accounting vs. machine checks · 6377981f
      Martin Schwidefsky 提交于
      A machine check can interrupt the i/o and external interrupt handler
      anytime. If the machine check occurs while the interrupt handler is
      waking up from idle vtime_start_cpu can get executed a second time
      and the int_clock / async_enter_timer values in the lowcore get
      clobbered. This can confuse the cpu time accounting.
      To fix this problem two changes are needed. First the machine check
      handler has to use its own copies of int_clock and async_enter_timer,
      named mcck_clock and mcck_enter_timer. Second the nested execution
      of vtime_start_cpu has to be prevented. This is done in s390_idle_check
      by checking the wait bit in the program status word.
      Signed-off-by: NMartin Schwidefsky <schwidefsky@de.ibm.com>
      6377981f
  9. 22 4月, 2010 1 次提交
  10. 27 2月, 2010 2 次提交
  11. 05 11月, 2009 1 次提交
    • M
      nohz: Introduce arch_needs_cpu · 3c5d92a0
      Martin Schwidefsky 提交于
      Allow the architecture to request a normal jiffy tick when the system
      goes idle and tick_nohz_stop_sched_tick is called . On s390 the hook is
      used to prevent the system going fully idle if there has been an
      interrupt other than a clock comparator interrupt since the last wakeup.
      
      On s390 the HiperSockets response time for 1 connection ping-pong goes
      down from 42 to 34 microseconds. The CPU cost decreases by 27%.
      Signed-off-by: NMartin Schwidefsky <schwidefsky@de.ibm.com>
      LKML-Reference: <20090929122533.402715150@de.ibm.com>
      Signed-off-by: NThomas Gleixner <tglx@linutronix.de>
      3c5d92a0
  12. 11 9月, 2009 3 次提交
  13. 12 6月, 2009 2 次提交
  14. 26 3月, 2009 2 次提交
  15. 09 1月, 2009 1 次提交
  16. 31 12月, 2008 1 次提交
  17. 25 12月, 2008 4 次提交
  18. 11 10月, 2008 5 次提交
    • H
      [S390] Move private simple udelay function to arch/s390/lib/delay.c. · 5a0d0e65
      Heiko Carstens 提交于
      Move cio's private simple udelay function to lib/delay.c and turn it
      into something much more readable. So we have all implementations
      at one place.
      Signed-off-by: NHeiko Carstens <heiko.carstens@de.ibm.com>
      Signed-off-by: NMartin Schwidefsky <schwidefsky@de.ibm.com>
      5a0d0e65
    • H
      [S390] cio: fix cio_tpi. · b1e76613
      Heiko Carstens 提交于
      In cio_tpi only disable bottom halves when not in interrupt context.
      Otherwise a WARN_ON gets triggered. Besides that, when we are in
      interrupt context bottom halves are disabled anyway.
      Fixes this one:
      
      Badness at kernel/softirq.c:77
      Modules linked in:
      CPU: 2 Not tainted 2.6.26 #4
      Process swapper (pid: 0, task: 000000003fe83db0, ksp: 000000003fea7d28)
      Krnl PSW : 0404c00180000000 0000000000053f4e (__local_bh_disable+0xbe/0xcc)
                 R:0 T:1 IO:0 EX:0 Key:0 M:1 W:0 P:0 AS:3 CC:0 PM:0 EA:3
      Krnl GPRS: 0000000000008ee0 00000000005f95e0 0000000000000000 0000000000000001
                 000000000020be92 0000000000000000 0000000000000210 00000000005d36c0
                 000000003fb5f4d8 0000000000000000 000000000020bed0 000000003fb5f3c8
                 00000000009be920 0000000000364898 000000003fb5f408 000000003fb5f3c8
      Krnl Code: 0000000000053f42: bf2f1000           icm     %r2,15,0(%r1)
                 0000000000053f46: a774ffc5           brc     7,53ed0
                 0000000000053f4a: a7f40001           brc     15,53f4c
                >0000000000053f4e: a7280001           lhi     %r2,1
                 0000000000053f52: 50201000           st      %r2,0(%r1)
                 0000000000053f56: a7f4ffbd           brc     15,53ed0
                 0000000000053f5a: 0707               bcr     0,%r7
                 0000000000053f5c: a7f13fc0           tmll    %r15,16320
      Call Trace:
      ([<0000000000000210>] 0x210)
       [<0000000000053f86>] local_bh_disable+0x2a/0x38
       [<000000000020bed0>] wait_cons_dev+0xd4/0x154
       [<0000000000247cb2>] raw3215_make_room+0x6a/0x1a8
       [<000000000024861a>] raw3215_write+0x86/0x28c
       [<00000000002488a0>] con3215_write+0x80/0x110
       [<000000000004c3e0>] __call_console_drivers+0xc8/0xe4
       [<000000000004c47e>] _call_console_drivers+0x82/0xc4
       [<000000000004c744>] release_console_sem+0x218/0x2c0
       [<000000000004cf64>] vprintk+0x3c0/0x504
       [<0000000000354a4a>] printk+0x52/0x64
       [<0000000000088004>] __print_symbol+0x40/0x50
       [<0000000000071dbc>] print_stack_trace+0x78/0xac
       [<0000000000079e78>] print_lock_dependencies+0x148/0x208
       [<000000000007a050>] print_irq_inversion_bug+0x118/0x15c
       [<000000000007a106>] check_usage_forwards+0x72/0x84
       [<000000000007a36e>] mark_lock+0x1d2/0x594
       [<000000000007baca>] __lock_acquire+0x886/0xf48
       [<000000000007c234>] lock_acquire+0xa8/0xe0
       [<0000000000350316>] _write_lock+0x56/0x98
       [<000000000026cd92>] zfcp_erp_adapter_reopen+0x4e/0x8c
       [<000000000026f1e8>] zfcp_qdio_int_resp+0x2e4/0x2f4
       [<00000000002210f4>] qdio_int_handler+0x274/0x888
       [<00000000002177b6>] ccw_device_call_handler+0x6e/0xd8
       [<0000000000215336>] ccw_device_irq+0xd6/0x160
       [<0000000000212f88>] io_subchannel_irq+0x8c/0x118
       [<000000000020c120>] do_IRQ+0x1d0/0x1fc
       [<00000000000270b2>] io_return+0x0/0x8
       [<000000000001c8a4>] cpu_idle+0x178/0x21c
      ([<000000000001c884>] cpu_idle+0x158/0x21c)
       [<00000000003483a2>] start_secondary+0xb6/0xc8
      INFO: lockdep is turned off.
      Last Breaking-Event-Address:
       [<0000000000053f4a>] __local_bh_disable+0xba/0xcc
      Signed-off-by: NHeiko Carstens <heiko.carstens@de.ibm.com>
      Signed-off-by: NMartin Schwidefsky <schwidefsky@de.ibm.com>
      b1e76613
    • P
      [S390] cio: inline assembly cleanup · f9c9fe3e
      Peter Oberparleiter 提交于
      Fix incorrect in- and output constraints, remove volatile declaration
      of inline assembly parameters and reformat constraint declarations to
      be more consistent.
      Signed-off-by: NPeter Oberparleiter <peter.oberparleiter@de.ibm.com>
      Signed-off-by: NMartin Schwidefsky <schwidefsky@de.ibm.com>
      f9c9fe3e
    • C
      [S390] bus_id -> dev_set_name() for css and ccw busses · 1f4e7eda
      Cornelia Huck 提交于
      Convert remaining s390 users setting bus_id to dev_set_name()
      or init_name.
      Signed-off-by: NCornelia Huck <cornelia.huck@de.ibm.com>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      Signed-off-by: NMartin Schwidefsky <schwidefsky@de.ibm.com>
      1f4e7eda
    • K
      [S390] bus_id -> dev_name conversions · 2a0217d5
      Kay Sievers 提交于
      bus_id -> dev_name() conversions in s390 code.
      
      [cornelia.huck@de.ibm.com: minor adaptions]
      Signed-off-by: NKay Sievers <kay.sievers@vrfy.org>
      Cc: Cornelia Huck <cornelia.huck@de.ibm.com>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      Signed-off-by: NMartin Schwidefsky <schwidefsky@de.ibm.com>
      2a0217d5
  19. 17 9月, 2008 1 次提交
  20. 09 9月, 2008 1 次提交
  21. 14 7月, 2008 6 次提交