Summary: | [FR] fdisk update | ||
---|---|---|---|
Product: | Sisyphus | Reporter: | Michael Shigorin <mike> |
Component: | fdisk | Assignee: | Alexey Gladkov <legion> |
Status: | CLOSED FIXED | QA Contact: | qa-sisyphus |
Severity: | enhancement | ||
Priority: | P3 | CC: | boyarsh, cas, evg, glebfm, kamal.singh, kharpost, kopilo4ka, lav, ldv, led, legion, mdevaev, placeholder, solo, tolmi |
Version: | unstable | ||
Hardware: | all | ||
OS: | Linux | ||
URL: | http://www.osnews.com/story/22872/Linux_Not_Fully_Prepared_for_4096-Byte_Sector_Hard_Drives | ||
Bug Depends on: | |||
Bug Blocks: | 16000 |
Description
Michael Shigorin
2010-02-23 00:13:46 MSK
Меня всегда изумляла стремительность регистрации багов "собрать новую версию". Да, я планирую собрать новую версию util-linux-ng. Лёш, я не вредный и не версиоман, просто ровно сегодня добрался 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) Просто для сравнения -- 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 Извиняюсь за спам -- чтоб уж хоть здесь склерозница была. Во-первых, передавать 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 Аналогичные пляски с бубном вокруг WD10EARS Примерно с таким же результатом. (В ответ на комментарий №1)
> Меня всегда изумляла стремительность регистрации багов "собрать новую версию".
> Да, я планирую собрать новую версию util-linux-ng.
А меня изумляет, что я подключаю новый диск на 1Тб, и получаю проблемы с производительностью, потому что неправильно его разметил.
Кто бы мог подумать, что тут такая многосторонняя засада, для избежания которой нужны исследования возможностей fdisk, LVM и пр.
У меня в: 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. Если есть возможность, то проверь его. Прошу проверить с версией 2.17.1. (In reply to comment #9) > Прошу проверить с версией 2.17.1. Проверял с самосбором, работает. Вот думаю -- не выйдет ли обновить до выпуска школьного комплекта в 5.1/branch и p5/branch, бэкпортить-то нельзя из-за изменений в подпакетизации. Но это другая сказка, а за обновление -- спасибо :) (In reply to comment #8) > http://www.altlinux.org/РаботаСДисками/WD Хм... забыл здесь упомянуть -- http://www.altlinux.org/BigSector; предлагаю смержить одну страничку в другую. (В ответ на комментарий №11) > (In reply to comment #8) > > http://www.altlinux.org/РаботаСДисками/WD > Хм... забыл здесь упомянуть -- http://www.altlinux.org/BigSector; предлагаю > смержить одну страничку в другую. Не здесь, а везде забыл упомянуть. Очень зря, времени мало на тройную работу. А в чём смысл исправленног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 Для WD EARS - ни в чём, он не возвращает настоящий размер сектора. (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 |