LINUX.ORG.RU

История изменений

Исправление intelfx, (текущая версия) :

  1. write(foo, 0, "AAAAAA", 6)
extent1: AAAAAA
foo:     AAAAAA (foo=extent1[0:6])
  1. write(foo, 2, "BB", 2)
extent1: AAAAAA
extent2:   BB  
foo:     AABBAA (foo=extent1[0:2] + extent2[0:2] + extent1[4:6])
  1. magic_extent_split(foo)
extent1: AA
extent2:   BB
extent3:     AA
foo:     AABBAA (foo=extent1[0:2] + extent2[0:2] + extent3[0:2])

Сейчас в btrfs происходит (1) и (2). Было бы неплохо после (2) делать (3).

Исходная версия intelfx, :

  1. write(foo, 0, "AAAAAA", 6)
extent1: AAAAAA
foo:     AAAAAA (foo=extent1[0:6])
  1. write(foo, 2, "BB", 2)
extent1: AAAAAA
extent2:   BB  
foo:     AABBAA (foo=extent1[0:2] + extent2[0:2] + extent1[4:6])
  1. magic_extent_split(foo)
extent1: AA
extent2:   BB
extent3:     AA
foo:     AABBAA (foo=extent1[0:2] + extent2[0:2] + extent3[0:2])