1. 07 9月, 2013 1 次提交
  2. 15 4月, 2013 1 次提交
    • M
      s390/kdump: Add PM notifier for kdump · b66ac63e
      Michael Holzheu 提交于
      For s390 the page table mapping for the crashkernel memory is removed to
      protect the pre-loaded kdump kernel and ramdisk. Because the crashkernel
      memory is not included in the page tables for suspend/resume it is not
      included in the suspend image. Therefore after resume the resumed system
      does no longer contain the pre-loaded kdump kernel and when kdump is
      triggered it fails.
      
      This patch adds a PM notifier that creates the page tables before suspend
      is done and removes them for resume. This ensures that the kdump kernel
      is included in the suspend image.
      Signed-off-by: NMichael Holzheu <holzheu@linux.vnet.ibm.com>
      Signed-off-by: NMartin Schwidefsky <schwidefsky@de.ibm.com>
      b66ac63e
  3. 26 9月, 2012 3 次提交
  4. 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
  5. 23 5月, 2012 2 次提交
  6. 29 3月, 2012 1 次提交
  7. 11 3月, 2012 2 次提交
    • M
      [S390] kernel: Add z/VM LGR detection · 3ab121ab
      Michael Holzheu 提交于
      Currently the following mechanisms are available to move active
      Linux on System z instances between machines:
      * z/VM 6.2 SSI (Single System Image)
      * Suspend/resume
      For moving Linux instances in this patch the term LGR (Linux Guest
      Relocation) is used. Because such an operation is critical, it
      should be detectable from Linux. With this patch for both, a live
      system and a kernel dump, the information about LGRs is accessible.
      To identify a guest, stsi and stfle data is used. A new function
      lgr_info_log() compares the current data (lgr_info_cur) with the
      last recorded one (lgr_info_last). In case the two data sets differ,
      lgr_info_cur is logged to the "lgr" s390dbf.
      
      The following trigger points call lgr_info_log():
      * panic
      * die
      * kdump
      * LGR timer
      * PSW restart
      * QDIO recovery
      * resume
      
      This patch also changes the s390dbf hex_ascii view. Now only printable ASCII
      characters are shown.
      Reviewed-by: NHeiko Carstens <heiko.carstens@de.ibm.com>
      Signed-off-by: NMichael Holzheu <holzheu@linux.vnet.ibm.com>
      Signed-off-by: NMartin Schwidefsky <schwidefsky@de.ibm.com>
      3ab121ab
    • M
      [S390] rework smp code · 8b646bd7
      Martin Schwidefsky 提交于
      Define struct pcpu and merge some of the NR_CPUS arrays into it, including
      __cpu_logical_map, current_set and smp_cpu_state. Split smp related
      functions to those operating on physical cpus and the functions operating
      on a logical cpu number. Make the functions for physical cpus use a
      pointer to a struct pcpu. This hides the knowledge about cpu addresses in
      smp.c, entry[64].S and swsusp_asm64.S, thus remove the sigp.h header.
      
      The PSW restart mechanism is used to start secondary cpus, calling a
      function on an online cpu, calling a function on the ipl cpu, and for
      the nmi signal. Replace the different assembler functions with a
      single function restart_int_handler. The new entry point calls a function
      whose pointer is stored in the lowcore of the target cpu and it can wait
      for the source cpu to stop. This covers all existing use cases.
      
      Overall the code is now simpler and there are ~380 lines less code.
      Reviewed-by: NHeiko Carstens <heiko.carstens@de.ibm.com>
      Signed-off-by: NMartin Schwidefsky <schwidefsky@de.ibm.com>
      8b646bd7
  8. 27 12月, 2011 1 次提交
  9. 30 10月, 2011 3 次提交
  10. 16 3月, 2011 1 次提交
  11. 27 2月, 2010 1 次提交
  12. 14 7月, 2008 1 次提交
  13. 06 3月, 2007 1 次提交
  14. 06 2月, 2007 1 次提交
  15. 04 12月, 2006 3 次提交
    • H
      [S390] pfault code cleanup. · 29b08d2b
      Heiko Carstens 提交于
      Signed-off-by: NHeiko Carstens <heiko.carstens@de.ibm.com>
      Signed-off-by: NMartin Schwidefsky <schwidefsky@de.ibm.com>
      29b08d2b
    • H
      [S390] cpu shutdown rework · c6b5b847
      Heiko Carstens 提交于
      Let one master cpu kill all other cpus instead of sending an external
      interrupt to all other cpus so they can kill themselves.
      Simplifies reipl/shutdown functions a lot.
      Signed-off-by: NHeiko Carstens <heiko.carstens@de.ibm.com>
      Signed-off-by: NMartin Schwidefsky <schwidefsky@de.ibm.com>
      c6b5b847
    • H
      [S390] Reset infrastructure for re-IPL. · 15e9b586
      Heiko Carstens 提交于
      In case of re-IPL and diag308 doesn't work we have to reset all devices
      manually and wait synchronously that each reset finished.
      This patch adds the necessary infrastucture and the first exploiter of it.
      
      Subsystems that need to add a function that needs to be called at re-IPL
      may register/unregister this function via
      
      struct reset_call {
      	struct reset_call *next;
      	void (*fn)(void);
      };
      
      void register_reset_call(struct reset_call *reset);
      void unregister_reset_call(struct reset_call *reset);
      
      When the registered function get called the context is:
      
      - all cpus beside the current one are stopped
      - all machine checks and interrupts are disabled
      - prefixing is disabled
      - a default machine check handler is available for use
      
      The registered functions may not take any locks are sleep.
      
      For the common I/O layer part of this patch:
      
      Introduce a reset_call css_reset that does the following:
      - clear all subchannels
      - perform a rchp on all channel paths and wait for the resulting
        machine checks
      This replaces the calls to clear_all_subchannels() and
      cio_reset_channel_paths() for kexec and ccw reipl. reipl_ccw_dev() now
      uses reipl_find_schid() to determine the subchannel id for a given
      device id.
      Also remove cio_reset_channel_paths() and friends since they are not
      needed anymore.
      Signed-off-by: NHeiko Carstens <heiko.carstens@de.ibm.com>
      Signed-off-by: NCornelia Huck <cornelia.huck@de.ibm.com>
      Signed-off-by: NMartin Schwidefsky <schwidefsky@de.ibm.com>
      15e9b586
  16. 12 7月, 2006 1 次提交
    • C
      [S390] path grouping and path verifications fixes. · 7e560814
      Cornelia Huck 提交于
      1. Multipath devices for which SetPGID is not supported are not handled well.
         Use NOP ccws for path verification (sans path grouping) when SetPGID is not
         supported.
      2. Check for PGIDs already set with SensePGID on _all_ paths (not just the
         first one) and try to find a common one. Moan if no common PGID can be
         found (and use NOP verification). If no PGIDs have been set, use the css
         global PGID (as before). (Rationale: SetPGID will get a command reject if
         the PGID it tries to set does not match the already set PGID.)
      3. Immediately before reboot, issue RESET CHANNEL PATH (rcp) on all chpids. This
         will remove the old PGIDs. rcp will generate solicited CRWs which can be
         savely ignored by the machine check handler (all other actions create
         unsolicited CRWs).
      Signed-off-by: NCornelia Huck <cornelia.huck@de.ibm.com>
      Signed-off-by: NMartin Schwidefsky <schwidefsky@de.ibm.com>
      7e560814
  17. 27 6月, 2006 1 次提交
  18. 12 2月, 2006 1 次提交
  19. 07 1月, 2006 1 次提交
  20. 02 8月, 2005 1 次提交
  21. 26 6月, 2005 2 次提交