1. 14 Sep, 2012 5 commits
    • Laxman Dewangan's avatar
      ARM: dt: tegra: harmony: add regulators · 3cc404de
      Laxman Dewangan authored
      Harmony uses a TPS6586x regulator. Instantiate this, and hook up a
      couple of fixed GPIO-controlled regulators too.
      
      Based on Ventana regulator patch by Stephen Warren <swarren@nvidia.com>
      and converted to Harmony.
      
      swarren made the following changes:
      * Added ldo0 regulator configuration to device tree, and updated
        board-harmony-pcie.c for the new regulator name.
      * Fixed vdd_1v05's voltage from 10.5V to 1.05V.
      * Modified board-harmony-pcie.c to obtain the en_vdd_1v05 GPIO number at
        run-time from device tree instead of hard-coding it.
      * Removed board-harmony{-power.c,.h} now that they're unused.
      * Disabled vdd_1v05 regulator; the code in board-harmony-pcie.c hijacks
        this GPIO for now. This will be fixed when the PCIe driver is re-
        written as a driver. The code can't regulator_get("vdd_1v05") right
        now, because the vdd_1v05 regulator's probe gets deferred due to its
        supply being the PMIC, which gets probed after the regulator the first
        time around, and this dependency is only resolved by repeated probing,
        which happens when deferred_probe_initcall() is called, which happens
        in a late initcall, whose runtime order relative to harmony_pcie_init()
        is undefined, since that's also called from a late initcall.
      * Removed unused harmony_pcie_initcall().
      Signed-off-by: default avatarLaxman Dewangan <ldewangan@nvidia.com>
      Signed-off-by: default avatarStephen Warren <swarren@nvidia.com>
      3cc404de
    • Stephen Warren's avatar
      ARM: tegra: remove board (but not DT) support for Harmony · bb25af81
      Stephen Warren authored
      Harmony can be booted using device tree with equal functionality as when
      booted using a board file. Remove as much of the board file as is
      possible, since it's no longer needed.
      
      Two special-cases are still left in board-dt-tegra20.c, since the Tegra
      PCIe driver doesn't support device tree yet, and the Harmony .dts file
      doesn't yet describe regulators which are needed for PCIe. This logic is
      now enabled unconditionally rather than via CONFIG_MACH_HARMONY. While
      this is more code than other boards, it's still unlikely to be much of a
      problem, and both regulators and PCIe should be supported via device tree
      in the near future, allowing the remaining code to be removed.
      Signed-off-by: default avatarStephen Warren <swarren@nvidia.com>
      bb25af81
    • Stephen Warren's avatar
      ARM: tegra: remove board (but not DT) support for Paz00 · cff1dfbf
      Stephen Warren authored
      Paz00 (Toshiba AC100) can be booted using device tree with equal
      functionality as when booted using a board file. Remove as much of the
      board file as is possible, since it's no longer needed.
      
      One special-case is still left in board-dt-tegra20.c, since there is no
      way to create a WiFi rfkill device from device tree yet. This logic is
      now enabled unconditionally rather than via CONFIG_MACH_PAZ00. The extra
      cases where it's enabled (.configs which did not enable Paz00 support)
      shouldn't impact much since the amount of code is tiny.
      Signed-off-by: default avatarStephen Warren <swarren@nvidia.com>
      Acked-By: default avatarMarc Dietrich <marvin24@gmx.de>
      cff1dfbf
    • Stephen Warren's avatar
      ARM: tegra: remove board (but not DT) support for TrimSlice · be6a9194
      Stephen Warren authored
      TrimSlice can be booted using device tree with equal functionality as
      when booted using a board file. Remove the board file since it's no
      longer needed.
      
      One special-case is still left in board-dt-tegra20.c, since the Tegra
      PCIe driver doesn't support device tree yet. This logic is now enabled
      by CONFIG_TEGRA_PCI rather than via CONFIG_MACH_TRIMSLICE. The extra
      cases where it's enabled (.configs which did not enable TrimSlice
      support) shouldn't impact much since the amount of code is tiny.
      Signed-off-by: default avatarStephen Warren <swarren@nvidia.com>
      be6a9194
    • Stephen Warren's avatar
      1ab710fe
  2. 05 Sep, 2012 1 commit
  3. 01 Sep, 2012 5 commits
  4. 30 Aug, 2012 5 commits
  5. 29 Aug, 2012 18 commits
  6. 28 Aug, 2012 6 commits
    • Stefan Behrens's avatar
      Btrfs: fix that repair code is spuriously executed for transid failures · 256dd1bb
      Stefan Behrens authored
      If verify_parent_transid() fails for all mirrors, the current code
      calls repair_io_failure() anyway which means:
      - that the disk block is rewritten without repairing anything and
      - that a kernel log message is printed which misleadingly claims
        that a read error was corrected.
      
      This is an example:
      parent transid verify failed on 615015833600 wanted 110423 found 110424
      parent transid verify failed on 615015833600 wanted 110423 found 110424
      btrfs read error corrected: ino 1 off 615015833600 (dev /dev/...)
      
      It is wrong to ignore the results from verify_parent_transid() and to
      call repair_eb_io_failure() when the verification of the transids failed.
      This commit fixes the issue.
      Signed-off-by: default avatarStefan Behrens <sbehrens@giantdisaster.de>
      Signed-off-by: default avatarChris Mason <chris.mason@oracle.com>
      256dd1bb
    • Liu Bo's avatar
      Btrfs: fix ordered extent leak when failing to start a transaction · d280e5be
      Liu Bo authored
      We cannot just return error before freeing ordered extent and releasing reserved
      space when we fail to start a transacion.
      Signed-off-by: default avatarLiu Bo <bo.li.liu@oracle.com>
      Signed-off-by: default avatarChris Mason <chris.mason@oracle.com>
      d280e5be
    • Liu Bo's avatar
      Btrfs: fix a dio write regression · 24c03fa5
      Liu Bo authored
      This bug is introduced by commit 3b8bde746f6f9bd36a9f05f5f3b6e334318176a9
      (Btrfs: lock extents as we map them in DIO).
      
      In dio write, we should unlock the section which we didn't do IO on in case that
      we fall back to buffered write.  But we need to not only unlock the section
      but also cleanup reserved space for the section.
      
      This bug was found while running xfstests 133, with this 133 no longer complains.
      Signed-off-by: default avatarLiu Bo <bo.li.liu@oracle.com>
      Signed-off-by: default avatarChris Mason <chris.mason@oracle.com>
      24c03fa5
    • Josef Bacik's avatar
      Btrfs: fix deadlock with freeze and sync V2 · bd7de2c9
      Josef Bacik authored
      We can deadlock with freeze right now because we unconditionally start a
      transaction in our ->sync_fs() call.  To fix this just check and see if we
      have a running transaction to commit.  This saves us from the deadlock
      because at this point we'll have the umount sem for the sb so we're safe
      from freezes coming in after we've done our check.  With this patch the
      freeze xfstests no longer deadlocks.  Thanks,
      Signed-off-by: default avatarJosef Bacik <jbacik@fusionio.com>
      Signed-off-by: default avatarChris Mason <chris.mason@oracle.com>
      bd7de2c9
    • Stefan Behrens's avatar
      Btrfs: revert checksum error statistic which can cause a BUG() · 5ee0844d
      Stefan Behrens authored
      Commit 442a4f63 added btrfs device
      statistic counters for detected IO and checksum errors to Linux 3.5.
      The statistic part that counts checksum errors in
      end_bio_extent_readpage() can cause a BUG() in a subfunction:
      "kernel BUG at fs/btrfs/volumes.c:3762!"
      That part is reverted with the current patch.
      However, the counting of checksum errors in the scrub context remains
      active, and the counting of detected IO errors (read, write or flush
      errors) in all contexts remains active.
      
      Cc: stable <stable@vger.kernel.org> # 3.5
      Signed-off-by: default avatarStefan Behrens <sbehrens@giantdisaster.de>
      Signed-off-by: default avatarChris Mason <chris.mason@oracle.com>
      5ee0844d
    • Stefan Behrens's avatar
      Btrfs: remove superblock writing after fatal error · 68ce9682
      Stefan Behrens authored
      With commit acce952b, btrfs was changed to flag the filesystem with
      BTRFS_SUPER_FLAG_ERROR and switch to read-only mode after a fatal
      error happened like a write I/O errors of all mirrors.
      In such situations, on unmount, the superblock is written in
      btrfs_error_commit_super(). This is done with the intention to be able
      to evaluate the error flag on the next mount. A warning is printed
      in this case during the next mount and the log tree is ignored.
      
      The issue is that it is possible that the superblock points to a root
      that was not written (due to write I/O errors).
      The result is that the filesystem cannot be mounted. btrfsck also does
      not start and all the other btrfs-progs tools fail to start as well.
      However, mount -o recovery is working well and does the right things
      to recover the filesystem (i.e., don't use the log root, clear the
      free space cache and use the next mountable root that is stored in the
      root backup array).
      
      This patch removes the writing of the superblock when
      BTRFS_SUPER_FLAG_ERROR is set, and removes the handling of the error
      flag in the mount function.
      
      These lines can be used to reproduce the issue (using /dev/sdm):
      SCRATCH_DEV=/dev/sdm
      SCRATCH_MNT=/mnt
      echo 0 25165824 linear $SCRATCH_DEV 0 | dmsetup create foo
      ls -alLF /dev/mapper/foo
      mkfs.btrfs /dev/mapper/foo
      mount /dev/mapper/foo $SCRATCH_MNT
      echo bar > $SCRATCH_MNT/foo
      sync
      echo 0 25165824 error | dmsetup reload foo
      dmsetup resume foo
      ls -alF $SCRATCH_MNT
      touch $SCRATCH_MNT/1
      ls -alF $SCRATCH_MNT
      sleep 35
      echo 0 25165824 linear $SCRATCH_DEV 0 | dmsetup reload foo
      dmsetup resume foo
      sleep 1
      umount $SCRATCH_MNT
      btrfsck /dev/mapper/foo
      dmsetup remove foo
      Signed-off-by: default avatarStefan Behrens <sbehrens@giantdisaster.de>
      Signed-off-by: default avatarJan Schmidt <list.btrfs@jan-o-sch.net>
      68ce9682