Обновление Linux-ядра: 2.6.39.3

Представлен корректирующий релиз Linux-ядра – 2.6.39.3, в котором отмечено 109 исправлений. Как обычно, в анонсе выхода новых версий подчеркивается обязательность проведения обновления. Из подсистем, в которых исправлены ошибки, можно выделить: USB, xhci, drm/i915, drm/radeon, conntrack, KVM, Xen, vlan, netfilter, ipset, FS-Cache, cfq-iosched, NFSv4, nfsd, ALSA, ath9k, ath5k, IPVS.

Среди исправленных проблем: устранение ошибки в ipv4-стеке, приводившей к потере первого пакета в mulicast-потоке; решение проблемы в драйвере USB Hub, которая мешала переходу в спящий режим; устранение зацикливания в подсистеме md, проявляющегося при определенных обстоятельствах в процессе восстановления программного RAID.

Несколько исправлений связаны с безопасностью:

  • Отсутствие должной инициализации структур, обеспечивающих работу блокировок в коде, связанном с файловыми системами может привести к утечке информации из области ядра при использовании FUSE-модулей.
  • Ошибка в реализации функции inet_diag_bc_audit() из состава подсистемы inet_diag может привести к подстановке кода локальным пользователем или инициированию бесконечного цикла.
  • Возможность разыменования NULL-указателя в ksmd.

Примеры использования Awk

Использование сокращений.

Конструкцию, используемую для вывода строк соответствующих заданной маске:
 awk '{if ($0 ~ /pattern/) print $0}' 
можно сократить до
 awk '/pattern/' 
Условие в awk может быть задано вне скобок, т.е. получаем:
 awk '$0 ~ /pattern/ {print $0}' 
По умолчанию, действия производятся со всей строкой, $0 можно не указывать:
 awk '/pattern/ {print}' 
print - является действием по умолчанию, его тоже можно не указывать.
 awk '/pattern/'  Continue reading »