[d-kernel] Re: VFS locking for LVM

Sergey Vlasov vsu at altlinux.ru
Mon Jul 7 19:50:47 MSD 2003


On Mon, 7 Jul 2003 19:39:51 +0400
Sergey Vlasov <vsu at altlinux.ru> wrote:

> On Mon, 07 Jul 2003 18:31:55 +0400
> ed at altlinux.ru (Ed V. Bartosh) wrote:
> 
> > >>>>> "SV" == Sergey Vlasov writes:
> > 
> >  >>  Видимо, патч 7-vfs-lock-alt.patch придётся распилить и вынести из
> >  >>  пакета kernel-feat-evms. Причина в том, что fsync_dev_lockfs()
> >  >>  требуется для корректной работы shapshot с журналируемыми
> >  >>  файловыми системами не только в EVMS, но и в LVM.
> >  >>  
> >  >>  Предлагается следующий вариант:
> >  >>  
> >  >>  1) Патч fs-vfs-lock.patch (это 7-vfs-lock-alt.patch без
> >  >>  EVMS-специфичных частей и с добавленным патчем для lvm.c, чтобы
> >  >>  включить использование этих функций) отправляется, например, в
> >  >>  kernel-fix-lvm (на мой взгляд, это именно fix - без него уже
> >  >>  имеющийся в ядре код работает неправильно).
> >  >>  
> >  >>  2) В kernel-feat-evms от 7-vfs-lock-alt.patch оставляется только
> >  >>  модификация dm-snapshot.c; при этом для сборки ядра с
> >  >>  kernel-feat-evms будет требоваться и kernel-fix-lvm.
> >   
> >  SV>  Ну так мысли по этому поводу есть? А то нехорошо, если LVM
> >  SV>  snapshot не будет работать с xfs/reiserfs/...
> > 
> > Какие могут быть мысли, все правильно изложено. Нужно пилить.
> > Если ты распилил уже - давай.

Так я же кидал распиленный - правда, на базе evms-2.0.1. Этот код в
2.1.0 менялся?

Всё распиливание заключалось в вырезании оттуда патчей для файлов из
evms (dm) и добавлении патча для lvm.c с определением
LVM_VFS_ENHANCEMENT (в их варианте они вырезают сами #ifdef и ещё в
одном месте убирают fsync_dev перед fsync_dev_lockfs).

> > Только у меня есть один вопрос - почему такой важный патч оказался
> > только в evms, если он влияет и на функциональность того, что
> > находится в ядре (в данном случае lvm) ?

Вот этого я тоже не понимаю. Возможно, дело в том, что там патчится
ещё и reiserfs в одном месте? Хотя тоже непонятно - хотя бы ext3
исправили бы.

> Такой же патч (плюс части для lvm, минус evms) лежит в пакете lvm:
> 
> ftp://ftp.sistina.com/pub/LVM/1.0/lvm_1.0.7.tar.gz
> 
> (кстати, в Сизифе он ещё 1.0.6)
> 
> Хотя побайтно я его не сравнивал - сейчас ещё раз проверю.

Ага, разница есть в двух строках:

linux-2.4.20-VFS-lock.patch       7-vfs-lock-alt.patch
DQUOT_SYNC(dev);                  DQUOT_SYNC_DEV(dev);
extern void sync_supers(kdev_t);  extern void sync_supers(kdev_t dev, int wait);

Но это, во-первых, патч для 2.4.20, во-вторых, откуда в 7-vfs-lock
добавилось alt - не отсюда?


More information about the devel-kernel mailing list