1. 15 11月, 2009 5 次提交
  2. 13 11月, 2009 9 次提交
    • C
      [S390] s390: fix single stepping on svc0 · bcc6525f
      Christian Borntraeger 提交于
      On s390 there are two ways of specifying the system call number for
      the svc instruction. The standard way is to use the immediate field
      in the instruction (or to use EXecute for values unknown during
      assemble time). This can encode 256 system calls.
      The kernel ABI also allows to put the system call number in r1 and
      then execute svc 0 to enable system call numbers > 255.
      
      It turns out that single stepping svc 0 is broken, since the PER
      program check handler uses r1. We have to use a different register.
      Signed-off-by: NChristian Borntraeger <borntraeger@de.ibm.com>
      Signed-off-by: NMartin Schwidefsky <schwidefsky@de.ibm.com>
      bcc6525f
    • M
      [S390] sclp: undo quiesce handler override on resume · 8b94c1ed
      Martin Schwidefsky 提交于
      In a system where the ctrl-alt-del init action initiated by signal
      quiesce suspends the machine the quiesce handler override for
      _machine_restart, _machine_halt and _machine_power_off needs to be
      undone, otherwise the override is still present in the resumed
      system. The next shutdown would then load the quiesce state psw
      instead of performing the correct shutdown action.
      Signed-off-by: NMartin Schwidefsky <schwidefsky@de.ibm.com>
      8b94c1ed
    • M
      [S390] reset cputime accounting after IPL from NSS · b89031e0
      Martin Schwidefsky 提交于
      After an IPL from NSS the uptime of the system is incorrect. The reason
      is that the startup code in head.S is not executed in case of an IPL
      from NSS. Due to that sched_clock_base_cc which is used to initialze
      wall_to_monotonic contains the time stamp when the NSS has been created
      instead of the time stamp of the system start.
      
      Reinitialize the cputime accounting values in create_kernel_nss after
      the SAVESYS CP command that created the NSS segment.
      Signed-off-by: NMartin Schwidefsky <schwidefsky@de.ibm.com>
      b89031e0
    • G
      [S390] monreader: fix use after free bug with suspend/resume · ccaf6553
      Gerald Schaefer 提交于
      The monreader device driver doesn't set dev->driver_data to NULL after
      freeing the corresponding data structure. This leads to a use after
      free bug in the freeze/thaw suspend/resume functions after the device
      has been opened and closed once. Fix this by clearing dev->driver_data
      in the close() function.
      Signed-off-by: NGerald Schaefer <gerald.schaefer@de.ibm.com>
      Signed-off-by: NMartin Schwidefsky <schwidefsky@de.ibm.com>
      ccaf6553
    • N
      md/raid5: Allow dirty-degraded arrays to be assembled when only party is degraded. · c148ffdc
      NeilBrown 提交于
      Normally is it not safe to allow a raid5 that is both dirty and
      degraded to be assembled without explicit request from that admin, as
      it can cause hidden data corruption.
      This is because 'dirty' means that the parity cannot be trusted, and
      'degraded' means that the parity needs to be used.
      
      However, if the device that is missing contains only parity, then
      there is no issue and assembly can continue.
      This particularly applies when a RAID5 is being converted to a RAID6
      and there is an unclean shutdown while the conversion is happening.
      
      So check for whether the degraded space only contains parity, and
      in that case, allow the assembly.
      Signed-off-by: NNeilBrown <neilb@suse.de>
      c148ffdc
    • N
      Don't unconditionally set in_sync on newly added device in raid5_reshape · 7ef90146
      NeilBrown 提交于
      When a reshape finds that it can add spare devices into the array,
      those devices might already be 'in_sync' if they are beyond the old
      size of the array, or they might not if they are within the array.
      
      The first case happens when we change an N-drive RAID5 to an
      N+1-drive RAID5.
      The second happens when we convert an N-drive RAID5 to an
      N+1-drive RAID6.
      
      So set the flag more carefully.
      Also, ->recovery_offset is only meaningful when the flag is clear,
      so only set it in that case.
      
      This change needs the preceding two to ensure that the non-in_sync
      device doesn't get evicted from the array when it is stopped, in the
      case where v0.90 metadata is used.
      Signed-off-by: NNeilBrown <neilb@suse.de>
      7ef90146
    • N
      md: allow v0.91 metadata to record devices as being active but not in-sync. · 0261cd9f
      NeilBrown 提交于
      This is a combination that didn't really make sense before.
      However when a reshape is converting e.g. raid5 -> raid6, the extra
      device is not fully in-sync, but is certainly active and contains
      important data.
      So allow that start to be meaningful and in particular get
      the 'recovery_offset' value (which is needed for any non-in-sync
      active device) from the reshape_position.
      Signed-off-by: NNeilBrown <neilb@suse.de>
      0261cd9f
    • L
      Linux 2.6.32-rc7 · 156171c7
      Linus Torvalds 提交于
      156171c7
    • L
      Merge branch 'omap-fixes-for-linus' of... · 031fc8f3
      Linus Torvalds 提交于
      Merge branch 'omap-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6
      
      * 'omap-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6:
        omap3: Decrease cpufreq transition latency
        omap3: update Pandora defconfig
        omap3: 3430sdp: Enable Linux Regulator framework
        omap3: beagle: Fix USB host port power control
        omap3: pandora: Fix keypad keymap
        omap1: Amstrad Delta defconfig fixes
        omap: Fix omapfb/lcdc on OMAP1510 broken when PM set
        omap: Use resource_size
        omap: Fix race condition in omap dma driver
      031fc8f3
  3. 12 11月, 2009 26 次提交