Страница 2 из 2

Re: скачать с perforce.freebsd.org

Добавлено: 2008-09-12 13:26:51
zg
реализуй :smile:
Гость писал(а):я поступил проще: выкинул все из parse_page() и вставил всего лишь
:smile:

Re: скачать с perforce.freebsd.org

Добавлено: 2008-09-12 13:46:23
paradox
неужели никто не поигрался с /devel/perforce ?
неверю что там нельзя обычным пользователям скачивать с перворса

Re: скачать с perforce.freebsd.org

Добавлено: 2008-09-29 13:47:02
Гость
paradox писал(а):неужели никто не поигрался с /devel/perforce ?
неверю что там нельзя обычным пользователям скачивать с перворса
в p4-primer написано, что нельзя:
The first step to using Perforce is to obtain an account on the server. If you already have a FreeBSD.org account, log into freefall, run the following command...
Of course if you do not have a FreeBSD.org account, you will need to coordinate with your sponsor.

Код: Выделить всё

(~/zfs). p4 info
User name: test
Client name: bar
Client host: bar
Client unknown.
Current directory: /home/test/zfs
Client address: 93.81.156.124:62559
Server address: skunkworks.freebsd.org:1666
Server root: /r/perforce/fbsd-smp
Server date: 2008/09/29 10:35:52 +0000 UTC
Server version: P4D/FREEBSD60X86_64/2007.2/136993 (2007/10/18)
Server license: FreeBSD.org 500 users (expires 2009/06/30) 
(~/zfs). p4 client
Access for user 'test' has not been enabled by 'p4 protect'.
Exit 1
(~/zfs). p4 sync //depot/user/pjd/zfs
Access for user 'test' has not been enabled by 'p4 protect'.
Exit 1
ps, Опять напоролся на deadlock на tx->tx_quiesce_done_cv на zfs v.11, к-ый был давно сообщен kris@'ом и скорее всего уже пофиксен в p4. На этот раз на стопорном dataset'е оказались данные, коих еще нет в backup'е. ;\

Re: скачать с perforce.freebsd.org

Добавлено: 2008-09-29 14:07:15
Гость
ну а web-frontend'у не нравится, что его долбят постоянно. Вот что случается, если использовать скрипт zg не на маленьких папках как games:

Код: Выделить всё

//depot/user/pjd/zfs/cddl/sbin ... fail
--2008-09-29 15:00:41--  http://perforce.freebsd.org/depotTreeBrowser.cgi?FSPC=//depot/user/pjd/zfs/cddl/sbin&HIDEDEL=YES
Resolving perforce.freebsd.org... 69.147.83.45, 2001:4f8:fff6::2d
Connecting to perforce.freebsd.org|69.147.83.45|:80... connected.
HTTP request sent, awaiting response... No data received.
Retrying.
[...]
--2008-09-29 15:00:49--  (try:20)  http://perforce.freebsd.org/depotTreeBrowser.cgi?FSPC=//depot/user/pjd/zfs/cddl/sbin&HIDEDEL=YES
Connecting to perforce.freebsd.org|69.147.83.45|:80... connected.
HTTP request sent, awaiting response... No data received.
Giving up.

Re: скачать с perforce.freebsd.org

Добавлено: 2008-09-29 14:10:23
Гость
так что большой разницы нет на чем написан скрипт, все равно он будет очень медленно качать и между файлами практически обязательно ставить sleep 1. Но самое "прекрасное" когда контент на p4-сервере обновляется к концу скачки... и приходится все по новой.

Re: скачать с perforce.freebsd.org

Добавлено: 2008-10-12 1:05:29
Гость
Гость писал(а):ps, Опять напоролся на deadlock на tx->tx_quiesce_done_cv на zfs v.11
Ога, нашел fix - http://repo.or.cz/w/opensolaris.git?a=c ... 2c9ab04e05 . Оно есть и в perforce, только у мя после p4@149195 zfs-модуль не работает, а fix внутри p4@150119.

А баг себя проявил во время svn update фряхи, утащив за собой весь /home/user. После перезагрузки при попытке смонтировать либо через zfs(8), либо через mount(8) свой home'як процесс вис на tx->tx_quiesce_done_cv, а procstat(1) показывал:

Код: Выделить всё

mi_switch
sleepq_wait
_cv_wait
txg_wait_open
dmu_tx_assign
dmu_free_long_range_impl
dmu_free_long_range
zfs_rmnode
zfs_inactive
zfs_freebsd_inactive
vinactive
vput
zfs_replay_remove
zil_replay_log_record
zil_parse
zil_replay
zfsvfs_setup
zfs_mount
Если не трогать глючный dataset, то система работала как ни в чем не бывало, но если попытатся его смонтировать, то сначала зависал процесс монтирования и потом, через некоторое время, все процессы в системе.

ps, хех 13 версия..., а прекрасно себя чувствует с 11 версией userland'а.

Re: скачать с perforce.freebsd.org

Добавлено: 2008-10-12 8:08:16
Alex Keda
тихо сам с собою =)
========
Хомяк что - вообще улетел чтоли?

Re: скачать с perforce.freebsd.org

Добавлено: 2008-10-12 17:38:47
Гость
lissyara писал(а):тихо сам с собою =)
может тому, кто в след. раз будет искать решение этой проблемы в google поможет
lissyara писал(а):Хомяк что - вообще улетел чтоли?
да! он был целиком на одном dataset'е вместе с исходниками. Теперь я на всякий случай выделил отдельный - dist. Пока че-то большого желания использовать delegated administration и крошить хомяк на кусочки нет.

BTW, ты вроде сидишь на -current'е, да? Че не попробуешь более позднюю версию zfs? Там даже частичная поддержка chflags(2) есть, а также интересная утилитка zinject для отладки.

Re: скачать с perforce.freebsd.org

Добавлено: 2008-10-12 19:28:42
Alex Keda
Гость писал(а):BTW, ты вроде сидишь на -current'е, да? Че не попробуешь более позднюю версию zfs? Там даже частичная поддержка chflags(2) есть, а также интересная утилитка zinject для отладки.
и сам же отвечаешь
Гость писал(а):
lissyara писал(а):
lissyara писал(а):Хомяк что - вообще улетел чтоли?
да! он был целиком на одном dataset'е вместе с исходниками.
Мне жалко хомяк.
Да и проблемно. У меня дома щас бук тока и флешка на 4 гига.
И инфы в хомяке много.
проблемно - ибо
acer$ df -h

Код: Выделить всё

Filesystem     Size    Used   Avail Capacity  Mounted on
/dev/ad4s1a     72G     42G     24G    64%    /
devfs          1.0K    1.0K      0B   100%    /dev
procfs         4.0K    4.0K      0B   100%    /proc
tmpfs          963M     88K    963M     0%    /tmp
devfs          1.0K    1.0K      0B   100%    /var/named/dev
acer$
А на работе - там другая грабля. Там нет ps/2 на матери. А УСБ клава не пашет в однопользоваетльском режиме... Обновляться - и то всегда рулетка =)
Дёргать хард на другую - проблемно - у меня везде x64
Короче - кругом засада.

Re: скачать с perforce.freebsd.org

Добавлено: 2008-10-12 22:14:46
Гость
lissyara писал(а):и сам же отвечаешь
и? патч от того deadlock'а внутри. К тому же на него нарваться не так просто.
lissyara писал(а):Мне жалко хомяк.
для таких случаев существует backup. Теперь я на долго запомнил как важна свежая копия оного. Хотя это не первая проблема с zfs (другая была с metadata corruption), данные я еще не разу не потерял. Жаль, пока больше нет. ;\
lissyara писал(а):А УСБ клава не пашет в однопользоваетльском режиме...
Ась? Это случаем не та проблема, где чтобы заработала клава/иышь/whatever ее надо вынуть и воткнуть обратно? Так эта проблема на определенных матерях до сих пор присутствует не только в 8-current, но и в HPS USB (тот саиый usb2 в p4).

Re: скачать с perforce.freebsd.org

Добавлено: 2008-10-12 22:44:16
Alex Keda
Гость писал(а):для таких случаев существует backup.

мне некуда бакупиться...
у меня щас тока бук и есть. и тому место в уголочке =)
Тока самое необходимое - и то - на сервак вот на этот в хомяк складываю. Он не резиновый... =)
Гость писал(а):
lissyara писал(а):А УСБ клава не пашет в однопользоваетльском режиме...
Ась? Это случаем не та проблема, где чтобы заработала клава/иышь/whatever ее надо вынуть и воткнуть обратно? Так эта проблема на определенных матерях до сих пор присутствует не только в 8-current, но и в HPS USB (тот саиый usb2 в p4).
опа... не знал. завтра на работе попробую.
=======
а вообще - инетересно - в лоадере пашет, в мультиюзере - пашет...
внятного ничё в инете не нашёл...

=========
Герр Гость, вы зарегаться в форуме не хотите? =)
Или обязывать себя не хотите чем-то?

Re: скачать с perforce.freebsd.org

Добавлено: 2008-10-12 23:00:22
Гость
lissyara писал(а):мне некуда бакупиться...
ну я б в таком случае купил внешний толстый винт, где бы хранил всякое барахло и бэкап хомяка. Приходя домой можно с ним синхронизироваться, а если не будет проблем, то можно и не каждый день.
lissyara писал(а):а вообще - инетересно - в лоадере пашет, в мультиюзере - пашет...
в старых DOS'овских прогах тоже не пашет? Не пробовал воткнуть в другой usb-порт? Например, вместо задника в передник?

Re: скачать с perforce.freebsd.org

Добавлено: 2008-10-12 23:05:31
Alex Keda
винт...
да всё думаю...
отсталый я =) у меня сидюк пишуший появился год назад - тупо ненужен был. И записал я на нём всего один диск - музыку в машину слушать, да флешку тоже года полтора назад первую и последнюю ребята подарили когда увольнялся =)
а вы - внешний винт =)))
=====
DOS не пробовал. надо в понедельник...
Хотя по своему жалко. Эта машина кроме FreeBSD ничего не видела =)))

Re: скачать с perforce.freebsd.org

Добавлено: 2008-10-13 0:01:46
Гость
кстати, обновлять on-disk version не обязательно. Можно не делать zpool upgrade и zfs upgrade, а продолжать использовать старые. Тогда в случае проблем можно вернуть старое ядро и мир, не потеряв доступа к данным.

чтобы не отходить от темы, нужен кому патч HPS USB для 8-current? Избавит от метки GIANT в dmesg на usb устройствах. Он у мя просто заодно с zfs-патчем (и еще парой) автоматом применяется при пересборке мира/ядра.

Re: скачать с perforce.freebsd.org

Добавлено: 2008-10-13 0:10:38
Гость
ах, забыл добавить, changeset'ы из p4 я вытягивал при помощи такого скриптика:

Код: Выделить всё

#! /bin/sh

ch=${1:?change unspecified}
serv=perforce.freebsd.org
prefix=//depot*zfs/

fetch -qo- "http://$serv/changeView.cgi?CH=$ch" |
sed -n "s|.*fileLogView\.cgi[^>]*>\([^<]*\)<.*|\1|p
        s|.*fileViewer\([^\"]*\).*|http://$serv/fileDownLoad\1|p" |
while read currlink; do
    rev=${currlink##*REV=}
    prevlink=${currlink%%REV=*}REV=$((rev-1))
    fetch -qo${prevfile:=$(mktemp /tmp/XXXX)} "$prevlink"
    fetch -qo${currfile:=$(mktemp /tmp/XXXX)} "$currlink"
    read filename
    diff -u $prevfile $currfile |
    sed "s?$prevfile.*?${filename#$prefix}	$((ch-1))?
         s?$currfile.*?${filename#$prefix}	$ch?"
    rm -f $prevfile $currfile
done
Например:

Код: Выделить всё

> ./p4-patch.sh 149196
--- sys/cddl/contrib/opensolaris/uts/common/fs/gfs.c	149195
+++ sys/cddl/contrib/opensolaris/uts/common/fs/gfs.c	149196
@@ -445,7 +445,9 @@
 	fp->gfs_size = size;
 	fp->gfs_type = GFS_FILE;
 
+	vp->v_vflag |= VV_FORCEINSMQ;
 	error = insmntque(vp, vfsp);
+	vp->v_vflag &= ~VV_FORCEINSMQ;
 	KASSERT(error == 0, ("insmntque() failed: error %d", error));
 
 	/*
--- sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_znode.c	149195
+++ sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_znode.c	149196
@@ -775,7 +775,9 @@
 
 		vp = ZTOV(*zpp);
 		lockmgr(vp->v_vnlock, LK_EXCLUSIVE, NULL);
+		vp->v_vflag |= VV_FORCEINSMQ;
 		err = insmntque(vp, zfsvfs->z_vfs);
+		vp->v_vflag &= ~VV_FORCEINSMQ;
 		lockmgr(vp->v_vnlock, LK_RELEASE, NULL);
 		KASSERT(err == 0, ("insmntque() failed: error %d", err));
 	}
@@ -920,7 +922,9 @@
 
 	vp = ZTOV(zp);
 	lockmgr(vp->v_vnlock, LK_EXCLUSIVE, NULL);
+	vp->v_vflag |= VV_FORCEINSMQ;
 	err = insmntque(vp, zfsvfs->z_vfs);
+	vp->v_vflag &= ~VV_FORCEINSMQ;
 	lockmgr(vp->v_vnlock, LK_RELEASE, NULL);
 	KASSERT(err == 0, ("insmntque() failed: error %d", err));