1. Jan 29, 2014
    • Jeff Mahoney's avatar
      kobject: export kobj_sysfs_ops · 29dfe2dc
      Jeff Mahoney authored
      
      
      struct kobj_attribute implements the baseline attribute functionality
      that can be used all over the place. We should export the ops associated
      with it.
      
      Signed-off-by: default avatarJeff Mahoney <jeffm@suse.com>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      Signed-off-by: default avatarJosef Bacik <jbacik@fusionio.com>
      Signed-off-by: default avatarChris Mason <clm@fb.com>
      29dfe2dc
    • Jeff Mahoney's avatar
      btrfs: add ioctls to query/change feature bits online · 2eaa055f
      Jeff Mahoney authored
      
      
      There are some feature bits that require no offline setup and can
      be enabled online. I've only reviewed extended irefs, but there will
      probably be more.
      
      We introduce three new ioctls:
      - BTRFS_IOC_GET_SUPPORTED_FEATURES: query the kernel for supported features.
      - BTRFS_IOC_GET_FEATURES: query the kernel for enabled features on a per-fs
        basis, as well as querying for which features are changeable with mounted.
      - BTRFS_IOC_SET_FEATURES: change features on a per-fs basis.
      
      We introduce two new masks per feature set (_SAFE_SET and _SAFE_CLEAR) that
      allow us to define which features are safe to change at runtime.
      
      The failure modes for BTRFS_IOC_SET_FEATURES are as follows:
      - Enabling a completely unsupported feature: warns and returns -ENOTSUPP
      - Enabling a feature that can only be done offline: warns and returns -EPERM
      
      Signed-off-by: default avatarJeff Mahoney <jeffm@suse.com>
      Signed-off-by: default avatarJosef Bacik <jbacik@fusionio.com>
      Signed-off-by: default avatarChris Mason <clm@fb.com>
      2eaa055f
    • Liu Bo's avatar
      Btrfs: skip merge part for delayed data refs · 9e5ac13a
      Liu Bo authored
      
      
      When we have data deduplication on, we'll hang on the merge part
      because it needs to verify every queued delayed data refs related to
      this disk offset but we may have millions refs.
      
      And in the case of delayed data refs, we don't usually have too much
      data refs to merge.
      
      So it's safe to shut it down for data refs.
      
      Signed-off-by: default avatarLiu Bo <bo.li.liu@oracle.com>
      Signed-off-by: default avatarJosef Bacik <jbacik@fusionio.com>
      Signed-off-by: default avatarChris Mason <clm@fb.com>
      9e5ac13a
    • Liu Bo's avatar
      Btrfs: introduce a head ref rbtree · c46effa6
      Liu Bo authored
      
      
      The way how we process delayed refs is
      1) get a bunch of head refs,
      2) pick up one head ref,
      3) go one node back for any delayed ref updates.
      
      The head ref is also linked in the same rbtree as the delayed ref is,
      so in 1) stage, we have to walk one by one including not only head refs, but
      delayed refs.
      
      When we have a great number of delayed refs pending to process,
      this'll cost time a lot.
      
      Here we introduce a head ref specific rbtree, it only has head refs, so troubles
      go away.
      
      Signed-off-by: default avatarLiu Bo <bo.li.liu@oracle.com>
      Signed-off-by: default avatarJosef Bacik <jbacik@fusionio.com>
      Signed-off-by: default avatarChris Mason <clm@fb.com>
      c46effa6
    • Josef Bacik's avatar
      Btrfs: fix check-integrity to look at the referenced data properly · e20d6c5b
      Josef Bacik authored
      
      
      We were looking at file_extent_num_bytes unconditionally when looking at
      referenced data bytes, but this isn't correct for compression.  Fix this by
      checking the compression of the file extent we are and setting num_bytes to
      disk_num_bytes in the case of compression so that we are marking the proper
      bytes as referenced.  This fixes check_int_data freaking out when running
      btrfs/004.  Thanks,
      
      Signed-off-by: default avatarJosef Bacik <jbacik@fusionio.com>
      Signed-off-by: default avatarChris Mason <clm@fb.com>
      e20d6c5b
    • Josef Bacik's avatar
      Btrfs: incompatible format change to remove hole extents · 16e7549f
      Josef Bacik authored
      
      
      Btrfs has always had these filler extent data items for holes in inodes.  This
      has made somethings very easy, like logging hole punches and sending hole
      punches.  However for large holey files these extent data items are pure
      overhead.  So add an incompatible feature to no longer add hole extents to
      reduce the amount of metadata used by these sort of files.  This has a few
      changes for logging and send obviously since they will need to detect holes and
      log/send the holes if there are any.  I've tested this thoroughly with xfstests
      and it doesn't cause any issues with and without the incompat format set.
      Thanks,
      
      Signed-off-by: default avatarJosef Bacik <jbacik@fusionio.com>
      Signed-off-by: default avatarChris Mason <clm@fb.com>
      16e7549f
  2. Jan 20, 2014
  3. Jan 18, 2014
  4. Jan 17, 2014
  5. Jan 16, 2014
  6. Jan 15, 2014
    • Andrew Jones's avatar
      kvm: x86: fix apic_base enable check · 0dce7cd6
      Andrew Jones authored
      Commit e66d2ae7
      
       moved the assignment
      vcpu->arch.apic_base = value above a condition with
      (vcpu->arch.apic_base ^ value), causing that check
      to always fail. Use old_value, vcpu->arch.apic_base's
      old value, in the condition instead.
      
      Signed-off-by: default avatarAndrew Jones <drjones@redhat.com>
      Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
      0dce7cd6
    • Linus Torvalds's avatar
      Merge branch 'akpm' (incoming from Andrew) · 2e67c562
      Linus Torvalds authored
      Merge patches from Andrew Morton:
       "Six fixes"
      
      * emailed patches from Andrew Morton <akpm@linux-foundation.org>:
        lib/percpu_counter.c: fix __percpu_counter_add()
        crash_dump: fix compilation error (on MIPS at least)
        mm: fix crash when using XFS on loopback
        MIPS: fix blast_icache32 on loongson2
        MIPS: fix case mismatch in local_r4k_flush_icache_range()
        nilfs2: fix segctor bug that causes file system corruption
      2e67c562
    • Linus Torvalds's avatar
      Merge tag 'md/3.13-fixes' of git://neil.brown.name/md · 1a60864f
      Linus Torvalds authored
      Pull late md fixes from Neil Brown:
       "Half a dozen md bug fixes.
      
        All of these fix real bugs the people have hit, and are tagged for
        -stable.  Sorry they are late ....  Christmas holidays and all that.
        Hopefully they can still squeak into 3.13"
      
      * tag 'md/3.13-fixes' of git://neil.brown.name/md:
        md: fix problem when adding device to read-only array with bitmap.
        md/raid10: fix bug when raid10 recovery fails to recover a block.
        md/raid5: fix a recently broken BUG_ON().
        md/raid1: fix request counting bug in new 'barrier' code.
        md/raid10: fix two bugs in handling of known-bad-blocks.
        md/raid5: Fix possible confusion when multiple write errors occur.
      1a60864f