В третьем релиз-кандидате (на самом деле - раньше, еще в rc1)
ядра поломался (а точнее пофиксился и неслабо проапдейтился)
клиентский код NFS, ниже приведен дифф на виновной функции.
Не заценит ли уважаемое кернел-хаккерское подмножетво ALL оные
и не подскажет ли - как вернуть поддержку NFS на путь исправления?
В асм ядра своими грязными руками лезть стремновато, за недостатком понимания что там и как...
#==============================================
# косячная функция
#==============================================
diff -urdN linux-2.6.18/fs/nfs/dir.c linux-2.6.19/fs/nfs/dir.c
--- linux-2.6.18/fs/nfs/dir.c 2006-10-28 00:21:02.130255000 +0400
+++ linux-2.6.19/fs/nfs/dir.c 2006-10-28 00:21:39.630255000 +0400
@@ -1,17 +1,24 @@
void nfs_access_add_cache(struct inode *inode, struct nfs_access_entry *set)
{
- struct nfs_inode *nfsi = NFS_I(inode);
- struct nfs_access_entry *cache = &nfsi->cache_access;
-
- if (cache->cred != set->cred) {
- if (cache->cred)
- put_rpccred(cache->cred);
- cache->cred = get_rpccred(set->cred);
- }
- /* FIXME: replace current access_cache BKL reliance with inode->i_lock */
- spin_lock(&inode->i_lock);
- nfsi->cache_validity &= ~NFS_INO_INVALID_ACCESS;
- spin_unlock(&inode->i_lock);
+ struct nfs_access_entry *cache = kmalloc(sizeof(*cache), GFP_KERNEL);
+ if (cache == NULL)
+ return;
+ RB_CLEAR_NODE(&cache->rb_node);
cache->jiffies = set->jiffies;
+ cache->cred = get_rpccred(set->cred);
cache->mask = set->mask;
+
+ nfs_access_add_rbtree(inode, cache);
+
+ /* Update accounting */
+ smp_mb__before_atomic_inc();
+ atomic_long_inc(&nfs_access_nr_entries);
+ smp_mb__after_atomic_inc();
+
+ /* Add inode to global LRU list */
+ if (!test_and_set_bit(NFS_INO_ACL_LRU_SET, &NFS_FLAGS(inode))) {
+ spin_lock(&nfs_access_lru_lock);
+ list_add_tail(&NFS_I(inode)->access_cache_inode_lru, &nfs_access_lru_list);
+ spin_unlock(&nfs_access_lru_lock);
+ }
}
#==============================================
# фрагмент include/asm/bitops.h (x86_64)
#==============================================
static __inline__ int test_and_set_bit(int nr, volatile void * addr)
{
int oldbit;
__asm__ __volatile__( LOCK_PREFIX
"btsl %2,%1\n\tsbbl %0,%0"
:"=r" (oldbit),"+m" (ADDR)
:"dIr" (nr) : "memory");
return oldbit;
}
Проапгрейдился до Х11-7.1.1, остальные пакеты - утянуты с ftp://xorg.freedesktop.org/pub/individual/, xorg.conf перетащил со старой системы, благо полностью идентичный набор пакетов. Возник косяк - не переключаются раскладки, в логах присутствует строчка: "(WW) Couldn't load XKB keymap, falling back to pre-XKB keymap". Гуголь выдает тучу шаманских рецептов, ни один из которых не заработал - сочинять что-то с использованием xmodmap ломает (раньше все работало). Кусок xorg.conf: Section "InputDevice" Identifier "Keyboard0" Driver "kbd" # Option "CoreKeyboard" Option "XkbRules" "xorg" Option "XkbModel" "pc105" Option "XkbLayout" "us,ru(winkeys)" Option "XKbOptions" "grp:ctrl_shift_toggle" # Option "XkbTypes" "complete" Option "XkbGeometry" "pc(pc105)" # Option "XkbKeycodes" "xorg" # Option "CustomKeyCodes" "on" # Option "XkbCompat" "basic+pc+iso9995" EndSection Не подскажет ли многоуважаемый ALL, в каком направлении копать и какие логи требуются дополнительно?
Термалтейки, Зальманы, моддерство там всякое... в баню.
Что многоуважаемый ALL думает о реальных пацанских фулл-тауэрах, типа Chieftec BA-01/BA-02/CA-01 как зримом символе чего-то большого, осязаемого и надежного, да и пригодного к размещению не только стандартных компонентов, а куда более широкого набора железяк?
P.S. Если простыми словами - есть ли необходимость менять блок питания с штатного 450W max, при наличии больших нагрузок (8хSATA, для SCSI - понятное дело вопрос не стоит), много памяти, "прожорливый", насколько к нему применим данный термин, двухядерник от АМД (110 max TDP), как вариант - SMP из двух оптеронов, на нечто более пристойное? ИМХО если использовать пару видях старшей линейки в SLI/Crossfire - то придется точно, но сей вариант не рассматривается.
Израильская компания Yoggie анонсировала выпуск "карманного файрволла", представляющего собой мини-компьютер под управлением ОС Linux. Устройство выпускается в 2 вариантах - обычный и Pro, и помимо скромных размеров имеет следующие характеристики:
CPU: 416Mhz (520Mhz) Intel XScale PXA270
RAM: 64MB (128MB) SDRAM + 64MB (128MB) NAND Flash
ROM: 4MB NOR Flash
NIC: 2 штуки
EXT: SD Card
В настоящее время устройство доступно для предварительного заказа, продажи начнутся с ноября 2006 года. Стоимость - 180 USD (200 USD за Pro версию).
P.S. Автор также надеется, что данная разработка может быть использована для выполнения куда более широкого спектра задач, чем изначально задумано разработчиками, с незначительными модификациями или даже вовсе без оных ;)
>>> Подробности
Собственно сабж, из опыта многоуважаемого ALL'а - какой стоит брать?
Присматриваюсь к Mustek bear paw 2448 ta pro, в SANE пишут что GOOD и даже слайд-модуль пашет.
Из основных требований - тот самый слайд модуль, CCD, не сильно шумная работа, разрешения хватит и 1200^2, лишь бы была нормальная цветопередача.
В курсе ли уважаемый ALL - возможно монтирование NFS под вендой (xp prof sp2) без установки дополнительных костылей за денюжку, а также без задействования непотребного и богопротивного Windows services for UNIX (эффект антиворобьиной пушки)?
Помнится когда-то такое было возможным, а сейчас даже и не знаю, куда ткнуться, MS KB бормочет какой-то невнятный бред на тему того же SFU...
Суть в следующем - есть асусовская мать на nforce-4-sli, двухголовый атлон64 на ней, корзинка сата-шных винтов и один-единственный идешный двд-привод. Никакого разгона, линукс работает как часы. Попытка заинсталлить венды ХыПы с интегрированным сервиспаком номер 2 (а также #1, вовсе без оного, win2k, winme и даже дос) выдает одинаковую ошибку - черный экран после выдачи "тыцни в любую клавишу дабы грузануться с ЦД".
Притом, год с копейками назад при схожих условиях (только проц был одноядерным) xp ставилась с гимором - но все же ставилась.
Наблюдал ли всемогущий ALL схожие симптомы и какие могут быть рекомендации?