The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Обновление ядра Linux 5.10.1 с исправлениями по горячим следам"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Обновление ядра Linux 5.10.1 с исправлениями по горячим следам"  +/
Сообщение от opennews (??), 15-Дек-20, 09:12 
Примерно через сутки после релиза ядра Linux 5.10 сформирован корректирующий релиз 5.10.1, в котором отменены два изменения в подсистемах md и dm raid, в которых всплыли проблемы. Первое изменение касалось перевода типа переменной chunk_sectors с int на unsigned, а второе изменяло лимит на выполнение операции  discard для raid1 и raid10...

Подробнее: https://www.opennet.dev/opennews/art.shtml?num=54257

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения [Сортировка по времени | RSS]


1. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  +4 +/
Сообщение от Аноним (1), 15-Дек-20, 09:12 
А зачем вообще если сразу понятно что переменная никогда не примет отрицательное значение не применять тип unsigned?
Ответить | Правка | Наверх | Cообщить модератору

7. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  +10 +/
Сообщение от _hide_ (ok), 15-Дек-20, 09:29 
Вы вообще исходники чужие когда-нибудь читали? Это ещё цветочки -- к ошибкам не приводит и ладно.
Ответить | Правка | Наверх | Cообщить модератору

15. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  +1 +/
Сообщение от Аноним (15), 15-Дек-20, 10:02 
Там приводит к варнингам компиляции - потому и попытались исправить :)
Ответить | Правка | Наверх | Cообщить модератору

43. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  +/
Сообщение от Аноним (43), 15-Дек-20, 20:53 
Полезли исправлять и привело. Значит там знаковое должно быть.
Ответить | Правка | К родителю #7 | Наверх | Cообщить модератору

16. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  +1 +/
Сообщение от Z (??), 15-Дек-20, 10:11 
Это же классический Unix-style использовать int
Ответить | Правка | К родителю #1 | Наверх | Cообщить модератору

18. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  +/
Сообщение от Ordu (ok), 15-Дек-20, 10:31 
А зачем вообще, если сразу понятно, что переменная не примет значение больше чем 2^31-1, применять тип int?
Ответить | Правка | К родителю #1 | Наверх | Cообщить модератору

22. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  +3 +/
Сообщение от Аноним (1), 15-Дек-20, 10:49 
Судя по названию для chunk_sectors unsigned short все-таки не хватит, так что на мой взгляд оптимально использовать тип uint32_t (да, это из libc, но у него должен быть свой аналог в ядре).
Ответить | Правка | Наверх | Cообщить модератору

56. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  +2 +/
Сообщение от fyjybvec (?), 16-Дек-20, 05:12 
да, u32 называется.
Ответить | Правка | Наверх | Cообщить модератору

31. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  +9 +/
Сообщение от Аноним (31), 15-Дек-20, 13:55 
> А зачем вообще, если сразу понятно, что переменная не примет значение больше чем 2^31-1, применять тип int?

Дэниел Бернштейн, залогиньтесь!

Ответить | Правка | К родителю #18 | Наверх | Cообщить модератору

23. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  +5 +/
Сообщение от n00by (ok), 15-Дек-20, 10:53 
Например, что бы использовать недействительное значение как индикатор ошибки.
Ответить | Правка | К родителю #1 | Наверх | Cообщить модератору

37. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  –3 +/
Сообщение от snmp agent (?), 15-Дек-20, 17:13 
Например, чтобы можно было их вычитать
Ответить | Правка | К родителю #1 | Наверх | Cообщить модератору

48. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  +3 +/
Сообщение от Аноним (48), 16-Дек-20, 00:25 
> если сразу понятно

Взгрустнул, всплакнул, вспомнил сколько бы хорошего сделал и сколько бы плохого не сделал "если бы сразу понятно" было.

Ответить | Правка | К родителю #1 | Наверх | Cообщить модератору

2. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  +5 +/
Сообщение от Аноним (2), 15-Дек-20, 09:13 
Патч нулевого дня? В моем линуксе?
Ответить | Правка | Наверх | Cообщить модератору

9. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  +2 +/
Сообщение от Dzen Python (ok), 15-Дек-20, 09:33 
Радовался бы, что не через полгода.
А на деле большинство юзеров это даже и не заметят - им ядро прилетит уже с пачем в дистро.
Пусть правят.
Ответить | Правка | Наверх | Cообщить модератору

11. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  –3 +/
Сообщение от iPony129412 (?), 15-Дек-20, 09:40 
Ну типа того.
Даже пионеры с Ubuntu 20.10 ещё на 5.8 сидят и будут пока сидеть.
Ответить | Правка | Наверх | Cообщить модератору

3. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  –40 +/
Сообщение от leibniz (ok), 15-Дек-20, 09:13 
и это LTS
Ответить | Правка | Наверх | Cообщить модератору

12. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  +21 +/
Сообщение от Рмшъ (?), 15-Дек-20, 09:49 
Вот и поддерживают
Ответить | Правка | Наверх | Cообщить модератору

20. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  +6 +/
Сообщение от Аноним (20), 15-Дек-20, 10:35 
Это не лтс. Он будет лтс, когда подлатают все косяки. Это текущая ветка, а на ней всегда проблем больше (сроки поджимают и нет времени rc вылизать, наверное).
Ответить | Правка | К родителю #3 | Наверх | Cообщить модератору

28. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  +3 +/
Сообщение от zzz (??), 15-Дек-20, 12:49 
LTS, LTS. Прост все так рвались пропихнуть свои поделия в LTS-релиз, что теперь еще пару лет будут отлаживать.
Ответить | Правка | Наверх | Cообщить модератору

29. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  +2 +/
Сообщение от Аноним (20), 15-Дек-20, 13:16 
Его только отпочковалось от мейнлайн и его пометили стейбл. В лтс всё же попадают не сразу. Хотя 5.4 до последнего тянули и не могли в лтс отправить, можно и быстрее.
Ответить | Правка | Наверх | Cообщить модератору

33. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  –1 +/
Сообщение от Аноним (31), 15-Дек-20, 14:54 
Да, но помню местные анонимусы ругали ноду за похожий подход - там тоже LTS идет позднее от stable. Пытались доказать, что так больше никто не делает. А тут само ядро. Также ведь многие проекты первый мажорный релиз вообще помечают как пробный - GCC и Mesa, к примеру. Все же местная богема тут очень некомпетентна.
Ответить | Правка | Наверх | Cообщить модератору

36. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  +/
Сообщение от анонимус (??), 15-Дек-20, 16:34 
Оно получит статус LTS только после выпуска следующей ветки.
Ответить | Правка | К родителю #28 | Наверх | Cообщить модератору

59. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  +/
Сообщение от Урри (ok), 16-Дек-20, 13:55 
Какие сроки, вы о чем?
Все прекрасно работает, критически важных не реализованных вещей нет - можно сосредоточиться на тестировании.

Но нет, всеобщая современная болезнь "пускай тестируют на себе юзеры" и сюда проникла.

Ответить | Правка | К родителю #20 | Наверх | Cообщить модератору

24. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  +1 +/
Сообщение от КО (?), 15-Дек-20, 11:03 
Сам вякнул, сам заплюсовал.
Последний LTS 5.4
Ответить | Правка | К родителю #3 | Наверх | Cообщить модератору

50. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  +2 +/
Сообщение от Michael Shigorinemail (ok), 16-Дек-20, 00:54 
Так в них как раз и пытаются запихнуть побольше, побольше...
Ответить | Правка | К родителю #3 | Наверх | Cообщить модератору

4. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  –2 +/
Сообщение от Аноним (4), 15-Дек-20, 09:18 
Как в кубунте 20.04 обновить? ukku, ошибку выдаёт...
Ответить | Правка | Наверх | Cообщить модератору

5. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  +/
Сообщение от Аноним (5), 15-Дек-20, 09:21 
Ты из исходников или из готового бинарного пакета?
Ответить | Правка | Наверх | Cообщить модератору

13. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  –3 +/
Сообщение от mikhailnov (ok), 15-Дек-20, 09:50 
Открываете https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.10.1/
Скачиваете:
linux-headers-5.10.1-051001-generic_5.10.1-051001.202012142031_amd64.deb
linux-headers-5.10.1-051001_5.10.1-051001.202012142031_all.deb
linux-image-unsigned-5.10.1-051001-generic_5.10.1-051001.202012142031_amd64.deb
linux-modules-5.10.1-051001-generic_5.10.1-051001.202012142031_amd64.deb
и делаете sudo apt install ./*.deb
Это то, что делает UKUU. Но там, смотрю, перед именами файлов появился префикс с архитектурой, раньше его не было, вероятно, из-за этого UKUU отвалился.
Ответить | Правка | К родителю #4 | Наверх | Cообщить модератору

39. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  +/
Сообщение от Cyber100email (ok), 15-Дек-20, 18:27 
dpkg -i *.deb
Ответить | Правка | Наверх | Cообщить модератору

6. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  +/
Сообщение от iPony129412 (?), 15-Дек-20, 09:21 
Mozilla стайл
Ответить | Правка | Наверх | Cообщить модератору

40. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  –1 +/
Сообщение от Корец (?), 15-Дек-20, 20:27 
Это если бы на расте переписывать начали бы.
Ответить | Правка | Наверх | Cообщить модератору

8. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  –3 +/
Сообщение от Slowpoke (?), 15-Дек-20, 09:31 
ребят, а когда уже лтс с поддержкой wireguard? Сидеть на мимопроходящем ядре немного некомфортно
Ответить | Правка | Наверх | Cообщить модератору

10. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  +4 +/
Сообщение от Аноним (10), 15-Дек-20, 09:34 
5.10 - это LTS с поддержкой Wireguard.
Ответить | Правка | Наверх | Cообщить модератору

14. Скрыто модератором  –5 +/
Сообщение от Fracta1L (ok), 15-Дек-20, 10:01 
Ответить | Правка | Наверх | Cообщить модератору

17. Скрыто модератором  –1 +/
Сообщение от Аноним (17), 15-Дек-20, 10:13 
Ответить | Правка | Наверх | Cообщить модератору

19. Скрыто модератором  +8 +/
Сообщение от Аноним (19), 15-Дек-20, 10:33 
Ответить | Правка | К родителю #14 | Наверх | Cообщить модератору

25. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  +1 +/
Сообщение от Аноним (25), 15-Дек-20, 11:11 
QA/QC в ядре? Не слышали.
Ответить | Правка | Наверх | Cообщить модератору

27. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  +6 +/
Сообщение от Аноним (2), 15-Дек-20, 12:00 
QA/QC в современном мире? Не, слышали.
Ответить | Правка | Наверх | Cообщить модератору

30. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  +3 +/
Сообщение от RM (ok), 15-Дек-20, 13:47 
Так вот почему гугл вчера лежал - это они ядро свежеее накатили...
Ответить | Правка | Наверх | Cообщить модератору

32. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  +1 +/
Сообщение от Аноним (32), 15-Дек-20, 14:46 
Это из-за этой ошибки Гугл прилег? А порнхаб потерял больше половины видео?
Ответить | Правка | Наверх | Cообщить модератору

60. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  +/
Сообщение от Урри (ok), 16-Дек-20, 13:59 
Порнхаб удалил миллионы видео потому, что с ними отказались работать виза и мастеркард. А они отказались работать потому, что какой-то журнализд откопал в порнхабовских закромах залитое в древние времена анонимом цп.

Порнхаб обиделся и выпилил всю годноту - типа если вы не хотите хорошей анонимной домашней порнушки, то вот вам стертые до дыр скучные бл_ди.

При этом, что характерно, на откровенный инцест всем моралфагам почему-то наплевать.

Ответить | Правка | Наверх | Cообщить модератору

34. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  –1 +/
Сообщение от Аноним (34), 15-Дек-20, 15:00 
5.10.1 на amdgpu уходит в черный экран
Ответить | Правка | Наверх | Cообщить модератору

35. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  +/
Сообщение от Аноним (35), 15-Дек-20, 15:10 
5.10.2 раскроет потенциал АМД
Ответить | Правка | Наверх | Cообщить модератору

57. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  +/
Сообщение от Аноним (34), 16-Дек-20, 10:28 
Ага, после того как Linus прямо послал нвидию на..й выбора уже и нет. штеуд не в счет, га#но еще то
Ответить | Правка | Наверх | Cообщить модератору

61. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  +/
Сообщение от Аноним (-), 16-Дек-20, 15:46 
Да, Линус послал НВидию, но уже после того как НВидиа послала сообщество разработчиков ядра на 3 буквы.
Ответить | Правка | Наверх | Cообщить модератору

65. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  +/
Сообщение от Аноним (65), 16-Дек-20, 21:55 
>уже после того как НВидиа послала сообщество разработчиков ядра на 3 буквы.

Вот и надо было пойти

Ответить | Правка | Наверх | Cообщить модератору

38. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  –2 +/
Сообщение от Аноним (38), 15-Дек-20, 17:14 
За использование int давно пора выгонять.
Ответить | Правка | Наверх | Cообщить модератору

41. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  +/
Сообщение от Корец (?), 15-Дек-20, 20:28 
Что следует использовать вместо?
Ответить | Правка | Наверх | Cообщить модератору

42. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  +/
Сообщение от Аноним (38), 15-Дек-20, 20:45 
> Что следует использовать вместо?

int8_t, uint8_t, int16_t, uint16_t, int32_t, uint32_t, int64_t, uint64_t, size_t, ssize_t.

Ответить | Правка | Наверх | Cообщить модератору

44. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  +/
Сообщение от Корец (?), 15-Дек-20, 21:11 
Аргументы?
Ответить | Правка | Наверх | Cообщить модератору

45. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  –1 +/
Сообщение от Аноним (38), 15-Дек-20, 23:03 
> Аргументы?

Т. е. использование int'а для перечисления или обозначения количества элементов не вызывает чувства нелогичности?

Ответить | Правка | Наверх | Cообщить модератору

49. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  +1 +/
Сообщение от Аноним (48), 16-Дек-20, 00:34 
Вызывает. Но действительность несколько шире.

man -s2 read

Предложите вариант для - считали Н байт, считали 0 байт, ошибка.
Qus_EC_t ? GetLastError()?

Ответить | Правка | Наверх | Cообщить модератору

52. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  –1 +/
Сообщение от Аноним (38), 16-Дек-20, 02:43 
>> man -s2 read
>       ssize_t read(int fd, void *buf, size_t count);
>> Предложите вариант для - считали Н байт, считали 0 байт, ошибка.

typedef size_t RetVal;

RetVal read(size_t pFD, uint8_t* const pBuf, size_t pToRead, size_t* const pRead);

/******/
RetVal rv;
size_t really_read;

if(MyToRead > 0)
{
    rv = read(MyFD, MyBuf, MyToRead, &really_read);
    if(rv != RV_Ok)/* RV_Ok == 0 */
    {
        ErrorHandler...
    }
    else if(really_read < MyToRead)
    {
        EmptySourceHandler...
    }
}

Ответить | Правка | Наверх | Cообщить модератору

54. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  +1 +/
Сообщение от Соня Мармеладова (?), 16-Дек-20, 03:29 
Если чтение не блокирующее, то really_read вполне легально может быть меньше чем MyToRead.
Ответить | Правка | Наверх | Cообщить модератору

64. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  +/
Сообщение от Аноним (38), 16-Дек-20, 21:49 
Абсолютно верно. Или файл может закончится.
Ответить | Правка | Наверх | Cообщить модератору

46. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  +1 +/
Сообщение от llolik (ok), 15-Дек-20, 23:14 
Размерность int не обязана быть 4 байта. При кроссплатформенной сборке можно запросто получить внезапные integer overflow на пустом месте и потом долго и упорно их искать. *_t типы - гарантировано той размерности, которая указана.

Отказываться совсем не призываю, но использовать, если значение гарантировано никогда не вылезет за 2 байта с учётом знака - это да.

Ответить | Правка | К родителю #44 | Наверх | Cообщить модератору

53. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  –1 +/
Сообщение от Аноним (38), 16-Дек-20, 02:47 
Дополню. Если используется gcc и платформа AVR, то там int - сюрприз, сюрприз - имеет 16 бит. Почему? Разработчик "бэкенда" так захотел. Но есть волшебный ключ "-mint8", который приводит int к правильному размеру - 8 бит.
Ответить | Правка | Наверх | Cообщить модератору

55. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  +1 +/
Сообщение от Аноним (55), 16-Дек-20, 04:05 
> Если используется gcc и платформа AVR, то там int - сюрприз, сюрприз - имеет 16 бит. Почему?

Потому что по стандарту

> The minimum size for char is 8 bits, the minimum size for short and int is 16 bits, for long it is 32 bits and long long must contain at least 64 bits.
> -- https://en.wikipedia.org/wiki/C_data_types

Дабы не грешили на вику, скажу, что такое же утверждение (кроме long long, и относительно C++) я находил в третьем издании книги Страуструпа по C++ (описывающей стандарт 98 года).

> Но есть волшебный ключ "-mint8", который

ломает переносимость. Но, откровенно говоря, софт для AVR вряд ли кто-то будет пускать на серверах и/или десктопах, да и переносимость "в бОльшую сторону" (в минимум-16-битный int вместо 8-битного) в 99% случаев "сама получится".

Ответить | Правка | Наверх | Cообщить модератору

62. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  +/
Сообщение от Урри (ok), 16-Дек-20, 16:34 
Вы согласны под разные платформы писать разный код? Вручную выбирать размер машинного слова под конкретное устройство?

Или все же лучше оставить это решение за компилятором? Который лучше знает, какой именно размер типа будет более быстрый в данной ситуации. Ну вот поэтому и появился тип int, который "минимум 16 бит" и все остальные.

Неужели вы считаете что Керниган и Риччи были глупее вас?

Ответить | Правка | К родителю #46 | Наверх | Cообщить модератору

63. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  +1 +/
Сообщение от llolik (ok), 16-Дек-20, 17:16 
> Вы согласны под разные платформы писать разный код?

Как раз наоборот я могу быть уверен, что , например, int32_t всегда строго 4 байта, а не ХЗ сколько. И что в size_t гарантировано влезет размер буфера, не вломив мне integer overflow.
> Вручную выбирать размер машинного слова под конкретное устройство?

Вот как раз *_t от этого и избавляют
> Или все же лучше оставить это решение за компилятором?

Нет, не всегда это лучше.
> вот поэтому и появился тип int, который "минимум 16 бит"

А может быть и не 16, а может быть и 32 и 64 и, с ключами, как выше написано, даже 8. И что? А потом тебе приходит бинарник/сообщение в котором, условно 15 полей типа int. И? Какого int прислали 16/32/64/... бит и каким разбирать?
> Неужели вы считаете что Керниган и Риччи были глупее вас?

Как там у Вас в 70-х? Стандарт как-бы уже давно ушёл вперёд.

Ответить | Правка | Наверх | Cообщить модератору

47. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  +/
Сообщение от llolik (ok), 15-Дек-20, 23:22 
> ssize_t

Только с оговоркой, что это POSIX, а не ISO/IEC.
Хотя в msvc тоже есть костыль

#if defined(_MSC_VER)
    #include <BaseTsd.h>
    typedef SSIZE_T ssize_t;
#endif

Ответить | Правка | К родителю #42 | Наверх | Cообщить модератору

51. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  –1 +/
Сообщение от YMM (?), 16-Дек-20, 00:58 
Серьёзный подход к разработке!
Ответить | Правка | Наверх | Cообщить модератору

66. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  +/
Сообщение от Аноним (66), 17-Дек-20, 03:24 
Киберпанк потянет?
Ответить | Правка | Наверх | Cообщить модератору

67. "Обновление ядра Linux 5.10.1 с исправлениями по горячим след..."  +/
Сообщение от Аноним (-), 18-Дек-20, 18:13 
процесс сборки с ворнингами иероглифами можно использовать в световом оформлении мс-тусовок
Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру