Bug 16964 - ethtool support somewhat broken?
Summary: ethtool support somewhat broken?
Status: CLOSED NOTABUG
Alias: None
Product: Sisyphus
Classification: Development
Component: etcnet (show other bugs)
Version: unstable
Hardware: all Linux
: P2 normal
Assignee: Andrew Kornilov
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-09-01 13:55 MSD by Michael Shigorin
Modified: 2008-09-01 19:22 MSD (History)
7 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Michael Shigorin 2008-09-01 13:55:57 MSD
Гражжне, а никто не помнит -- кто делал поддержку ethtool в etcnet
(см. scripts/setup-eth)?

Просто если писать ifaces/eth0/ethtool в формате "значение на строчку", то сейчас xargise_file()[1] дёрнет ethtool по разу на значение.  Для случаев, когда всё должно отработать одним пинком (как вот autoneg off speed NNN) -- это не годится.

В качестве демонстрации кривого, но сливающего аргументы одной строкой "решения" -- последняя строчка setup-eth такого вида:

$ETHTOOL -s $NAME `xargise_file "$ETHTOOL_OPTIONS" "echo"`

Если примете патчик с краткосрочным прицелом (чтоб попало в 4.1), постараюсь оформить красиво :-)  Просто делаю тут поддержку управления параметрами линка для alterator-net-eth.

[1] BTW правильней было бы xargize_file
Comment 1 Denis Ovsienko 2008-09-01 14:48:59 MSD
Делал я: http://racktables.org/trac/changeset/979
Миша, запиши в одну строчку "autoneg off speed NNN duplex DDD" и вопрос исчерпается. Насчёт "ize" я учту на будущее.
Comment 2 Michael Shigorin 2008-09-01 16:54:12 MSD
(In reply to comment #1)
> Делал я: http://racktables.org/trac/changeset/979
Спасибо :-)

> Миша, запиши в одну строчку "autoneg off speed NNN duplex DDD"
> и вопрос исчерпается.
Руками-то он давно бы исчерпался... из альтератора (точнее, libshell::shell-config) неудобно работать, когда всё уже в куче.

Багу на etcnet решил повесить не сразу, а сравнив синтаксис этого файла с соседними.  Везде по значению на строчку, и IMHO человеку тоже будет не сильно с руки разбираться, почему тут иначе.  Тем более что вариант "уже одна строчка" получается частным случаем варианта "значение на строчку" как для ethtool.
Comment 3 Michael Shigorin 2008-09-01 17:22:42 MSD
PS: если ты считаешь неправильным ради однородного синтаксиса устраивать прыжки в ширину в /etc/net -- закрой как NOTABUG/WONTFIX, сделаю руками в одну строчку.
Comment 4 Michael Shigorin 2008-09-01 17:47:35 MSD
Собсно как это выглядит сейчас:
backend3/net-eth:  http://tinyurl.com/5syfwd
/bin/shell-config: http://tinyurl.com/5p99we
Comment 5 Denis Ovsienko 2008-09-01 18:24:48 MSD
Семантика строчек в файлах не разнородна, она везде одна и та же. Разнятся программы, которые обрабатывают строчки. В частности, iwconfig обрабатывает более одного параметра, поэтому ему можно таким же образом скармливать их помногу в одной строке файла.

shell-config я не понял, что такое и зачем, поэтому во внимание не принимаю.

По части управления ethtool в alterator-net-eth/backend3/net-eth позволю себе в очередной раз дать всё тот же избитый экспертный прогноз. Ты даёшь пользователю возможность щёлкать выключателем, смысл которого он часто до конца не понимает. Последствия этого предсказуемы: он будет им щёлкать, когда ему станет скучно, и на ровном месте появятся дополнительные 5-10 процентов обращений за поддержкой из-за "ошибок на порту". Пока что ты можешь сделать так, чтобы их не было.

В современном мире autoneg работает, а количество портов на 100 и 1000 примерно равно, поэтому ошибкой будет насильно ставить любую из этих скоростей. Выбрось порцию ethtool из этого модуля совсем, а вместо неё добавь две строки в руководство пользователя.
Comment 6 Michael Shigorin 2008-09-01 18:59:24 MSD
(In reply to comment #5)
> В современном мире autoneg работает
К сожалению, в данном случае запрос поступил от заказчика, которому в несовременном Крыму ethernet-провайдер настоятельно рекомендует прибивать 10...

Ладно, спасибо и на том.
Comment 7 Mikhail Gusarov 2008-09-01 19:03:33 MSD
(In reply to comment #6)

> несовременном Крыму ethernet-провайдер настоятельно рекомендует прибивать 10...

Как раз замечательный пример для опций, упоминаемых только в README.
Comment 8 Denis Ovsienko 2008-09-01 19:04:11 MSD
Этот конкретный запрос реализуется одним echo, причём вышенаписанное менее
актуальным не делает. Let's agree to disagree.
Comment 9 Michael Shigorin 2008-09-01 19:22:54 MSD
(In reply to comment #8)
> Let's agree to disagree.
Да я-то с тобой и так согласен :-)

> всё тот же избитый экспертный прогноз
BTW практика довольно проста: обычные пользователи не лазят по табам, даже если это нужно.  Нащёлкать... надо будет глянуть на маке, на винде IIRC параметрами линка управлять дают.

По-хорошему бы вынести такой код в какой alterator-ethtool, который по умолчанию не ставить, а если поставлен -- врезался бы в интерфейс alterator-net-eth.  Не знаю только, возможно ли такое занедорого у нас сейчас.