Bug 23014 - [FR] fdisk update
: [FR] fdisk update
Status: CLOSED FIXED
: Sisyphus
(All bugs in Sisyphus/fdisk)
: unstable
: all Linux
: P3 enhancement
Assigned To:
:
: http://www.osnews.com/story/22872/Lin...
:
:
: 16000
  Show dependency tree
 
Reported: 2010-02-23 00:13 by
Modified: 2010-10-26 15:51 (History)


Attachments


Note

You need to log in before you can comment on or make changes to this bug.


Description From 2010-02-23 00:13:46
Предлагаю обновить util-linux-ng до текущей версии 2.17.1 (надо же, как вовремя
вышла) -- из-за fdisk и доступности/востребованности дисков с 4K-секторами. 
См. тж. http://lwn.net/Articles/322777/

2 ldv: может коснуться и ftp.

2.17:
   - the fdisk command aligns newly created partitions to minimum_io_size
     boundary ("minimum_io_size" is physical sector size or stripe chunk
     size on RAIDs).
   - the fdisk command supports disks with alignment_offset now.

2.17.1:
   - supports new command line option "-c" to disable DOS-compatible mode from
     command line.

     The DOS-compatible mode is DEPRECATED and will be disabled by default
     in the next major release. Currently, the DOS mode is enabled by default
     for backward compatibility only. 

     The cylinders as display units are DEPRECATED. It's recommended to use
     "-u" command line option or "u" fdisk command and use sectors as display
     units.

   Note that the new support for 4K-sector disks is useless in DOS-compatible
   mode. The fdisk command prints warning(s) when startup in DOS mode.
------- Comment #1 From 2010-02-23 00:39:55 -------
Меня всегда изумляла стремительность регистрации багов "собрать новую версию".
Да, я планирую собрать новую версию util-linux-ng.
------- Comment #2 From 2010-02-23 00:45:10 -------
Лёш, я не вредный и не версиоман, просто ровно сегодня добрался WD15EARS,
который именно с такими блоками. :)

Сходу сообразить обновление не вышло -- в бранч из твоего rpm stable/v2.17.1
чисто не мержится; пришлось наскоро собрать на коленке и проверить вот так:

root@home util-linux-ng-2.17.1/fdisk/.libs #
LD_LIBRARY_PATH=../../shlibs/blkid/src/.libs/ ./fdisk -c -u -b 4096 /dev/sdd

И впрямь -- выравнивает разделы хорошо, начинает тоже не с 63-го сектора, а с
256-го:

Disk /dev/sdd: 1500.3 GB, 1500301910016 bytes
255 heads, 63 sectors/track, 22800 cylinders, total 366284646 sectors
Units = sectors of 1 * 4096 = 4096 bytes
Sector size (logical/physical): 4096 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xa0b97552

   Device Boot      Start         End      Blocks   Id  System
/dev/sdd1             256     1048831     4194304   82  Linux swap / Solaris
/dev/sdd2         1048832   366284645  1460943256   83  Linux

2 sbolshakov: подобные изменения бы и в libevms сделать -- вешать отдельно?
(тж. http://freesource.info/wiki/HCL/XranenieDannyx/SoftwareRAID#p20496-5)
------- Comment #3 From 2010-02-23 01:04:12 -------
Просто для сравнения -- bonnie++ "до" и "после" и впрямь втрое различается:

Version 1.03e       ------Sequential Output------ --Sequential Input- --Random-
                    -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
Machine        Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP  /sec %CP
home.nospam.kiev 8G           68102  32 24682  11           78806  17 103.2   0
                    ------Sequential Create------ --------Random Create--------
                    -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--
              files  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP
                 16    48   0 +++++ +++    40   0    48   0 +++++ +++    42   0
home.nospam.kiev.ua,8G,,,68102,32,24682,11,,,78806,17,103.2,0,16,48,0,+++++,+++,40,0,48,0,+++++,+++,42,0
bonnie++ -d . -r 4096 -f  1.87s user 106.32s system 5% cpu 35:30.96 total

Version 1.03e       ------Sequential Output------ --Sequential Input- --Random-
                    -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
Machine        Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP  /sec %CP
home.nospam.kiev 8G           96931  48 42900  19           100306  22 220.9  
1
                    ------Sequential Create------ --------Random Create--------
                    -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--
              files  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP
                 16   266   3 +++++ +++   215   2   266   4 +++++ +++   215   2
home.nospam.kiev.ua,8G,,,96931,48,42900,19,,,100306,22,220.9,1,16,266,3,+++++,+++,215,2,266,4,+++++,+++,215,2
bonnie++ -d . -r 4096 -f  1.98s user 106.95s system 15% cpu 11:25.15 total
------- Comment #4 From 2010-02-23 13:24:13 -------
Извиняюсь за спам -- чтоб уж хоть здесь склерозница была.

Во-первых, передавать fdisk'у -b 4096 необязательно (поскольку текущие HDD
наружу всё равно показывают "типа 512"); во-вторых, оказалось важным передать
текущему (3.0.1) mkfs.xfs параметр -s size=4096.  Иначе всё та же трёхкратная
просадка на bonnie++.

Также похоже, что -b 4096 смутило кого-то по дороге и файловая система была
создана размером в 170Gb вместо 1.4Tb, что было замечено уже утром.  То есть
теперь так:

root@home util-linux-ng-2.17.1/fdisk/.libs #
LD_LIBRARY_PATH=../../shlibs/blkid/src/.libs/ ./fdisk -c -u -l /dev/sdd

Disk /dev/sdd: 1500.3 GB, 1500301910016 bytes
255 heads, 63 sectors/track, 182401 cylinders, total 2930277168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x4f167da7

   Device Boot      Start         End      Blocks   Id  System
/dev/sdd1            2048     8390655     4194304   82  Linux swap / Solaris
/dev/sdd2         8390656  2930277167  1460943256   83  Linux
------- Comment #5 From 2010-02-27 00:06:50 -------
Аналогичные пляски с бубном вокруг WD10EARS
Примерно с таким же результатом.
------- Comment #6 From 2010-03-02 12:32:27 -------
(В ответ на комментарий №1)
> Меня всегда изумляла стремительность регистрации багов "собрать новую версию".
> Да, я планирую собрать новую версию util-linux-ng.
А меня изумляет, что я подключаю новый диск на 1Тб, и получаю проблемы с
производительностью, потому что неправильно его разметил. 
Кто бы мог подумать, что тут такая многосторонняя засада, для избежания которой
нужны исследования возможностей fdisk, LVM и пр.
------- Comment #7 From 2010-03-02 14:42:06 -------
У меня в:

http://git.altlinux.org/people/legion/packages/util-linux-ng.git?p=util-linux-ng.git;a=shortlog;h=refs/heads/rpm

лежит готовый 2.17.1. Если есть возможность, то проверь его.
------- Comment #8 From 2010-03-04 04:09:40 -------
http://www.altlinux.org/РаботаСДисками/WD
------- Comment #9 From 2010-03-05 01:31:12 -------
Прошу проверить с версией 2.17.1.
------- Comment #10 From 2010-03-06 13:08:54 -------
(In reply to comment #9)
> Прошу проверить с версией 2.17.1.
Проверял с самосбором, работает.  Вот думаю -- не выйдет ли обновить до выпуска
школьного комплекта в 5.1/branch и p5/branch, бэкпортить-то нельзя из-за
изменений в подпакетизации.

Но это другая сказка, а за обновление -- спасибо :)
------- Comment #11 From 2010-03-06 13:20:08 -------
(In reply to comment #8)
> http://www.altlinux.org/РаботаСДисками/WD
Хм... забыл здесь упомянуть -- http://www.altlinux.org/BigSector; предлагаю
смержить одну страничку в другую.
------- Comment #12 From 2010-03-06 22:38:09 -------
(В ответ на комментарий №11)
> (In reply to comment #8)
> > http://www.altlinux.org/РаботаСДисками/WD
> Хм... забыл здесь упомянуть -- http://www.altlinux.org/BigSector; предлагаю
> смержить одну страничку в другую.
Не здесь, а везде забыл упомянуть. Очень зря, времени мало на тройную работу.
------- Comment #13 From 2010-05-25 21:19:27 -------
А в чём смысл исправленногj fdisk? если I/O size всё равно 512, как и Sector
size?

# fdisk -u -l
Disk /dev/sda: 1000.2 GB, 1000204886016 bytes
255 heads, 63 sectors/track, 121601 cylinders, total 1953525168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x5dd80a4b

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1              63  1953520064   976760001   83  Linux
------- Comment #14 From 2010-05-25 21:21:32 -------
Для WD EARS - ни в чём, он не возвращает настоящий размер сектора.
------- Comment #15 From 2010-06-12 11:32:02 -------
(In reply to comment #14)
> Для WD EARS - ни в чём, он не возвращает настоящий размер сектора.
Подтверждаю, рассматривали выхлоп IDENTIFY DEVICE от WD15EARS по ATA-8-ACS и
D1699r4c -- то, что можно купить, про 4K не рассказывает (в отличие от более
ранних инженерных образцов, судя по LKML).

2 lav: ещё требуется linux-2.6.31+, насколько понимаю:
http://www.osnews.com/thread?409410