From owner-freebsd-afs@FreeBSD.ORG Tue Sep 21 19:56:17 2010 Return-Path: Delivered-To: freebsd-afs@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 8177D10656A4 for ; Tue, 21 Sep 2010 19:56:17 +0000 (UTC) (envelope-from me@janh.de) Received: from mailhost.uni-hamburg.de (mailhost.uni-hamburg.de [134.100.32.155]) by mx1.freebsd.org (Postfix) with ESMTP id B57AB8FC08 for ; Tue, 21 Sep 2010 19:56:16 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by mailhost.uni-hamburg.de (Postfix) with ESMTP id 8250E90614; Tue, 21 Sep 2010 21:40:17 +0200 (CEST) X-Virus-Scanned: by University of Hamburg (RRZ/mailhost) Received: from mailhost.uni-hamburg.de ([127.0.0.1]) by localhost (mailhost.uni-hamburg.de [127.0.0.1]) (amavisd-new, port 10024) with LMTP id YadbK5F5eOUi; Tue, 21 Sep 2010 21:40:17 +0200 (CEST) Received: from nb895.math (g224006100.adsl.alicedsl.de [92.224.6.100]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (Client did not present a certificate) (Authenticated sender: fmjv004) by mailhost.uni-hamburg.de (Postfix) with ESMTPSA id E682B9045E; Tue, 21 Sep 2010 21:40:16 +0200 (CEST) Message-ID: <4C990A1A.7040407@janh.de> Date: Tue, 21 Sep 2010 21:40:10 +0200 From: Jan Henrik Sylvester User-Agent: Mozilla/5.0 (X11; U; FreeBSD amd64; en-US; rv:1.9.2.9) Gecko/20100917 Thunderbird/3.1.4 MIME-Version: 1.0 To: afs-list freebsd Content-Type: multipart/mixed; boundary="------------070209040600040809000209" Subject: 1.5.77 port of openafs X-BeenThere: freebsd-afs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: The Andrew File System and FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 21 Sep 2010 19:56:17 -0000 This is a multi-part message in MIME format. --------------070209040600040809000209 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit I wanted to give 1.5.77 a try after seeing some FreeBSD related improvements in the changelog. Is http://web.mit.edu/freebsd/openafs/openafs.shar the working version of something that might end up in ports or do you have another one in progress? (I assume that the git version is not mend for ports.) Since http://web.mit.edu/freebsd/openafs/openafs.shar is still at 1.5.75, I started updating it. To get it to compile, I removed two patches that do not apply to 1.5.77 anymore, after updating the version and distinfo. Verifying the pkg-plist, I realized that 'pkg_create -b' does not produce a clean package (giving the same files as the port that can cleanly be removed): Besides some files missing in pkg-plist, lib/openafs is eventually emtpy and missing from the package and ThisCell.sample contains the sample line twice when installed from the package. Moreover, whether afsd.fuse is installed or not depends on the presence of the fuse-libs port. I have attached an updated version of the port that fixes issues I found related to packaging. I tried to make the diff to the old version minimalistic by not doing anything like sorting the pkg-plist. Does it look ok? I hope I verified all correctly: - 'pkg_create -b' produces a package that installs the same files as the port. - The port or package can be removed cleanly WITH_FUSE or without, with modified configuration files present or without. - The binaries seem to link to the same files in a clean environment and in a polluted one (1155 packages installed, including fuse-libs). All testing was on 8.1-RELEASE. As for functionality: I did a little bit of copying from and to AFS and using basic fs and pts commands. I did not experience any problems. I have yet to test the issues that I had with 1.5.75 (copying files larger than the cache size, unmounting the AFS, stopping the afsd, ...). Possible improvements before it goes to ports: Nicer error for emtpy /usr/src/ or /usr/obj/, creation of /afs, creation of a sample for /usr/local/etc/cacheinfo, sorting pkg-plist. Before I start anything in that direction: Are you planing to bring something to ports anytime soon -- maybe as net/openafs-devel -- or is it still too early? Cheers, Jan Henrik --------------070209040600040809000209 Content-Type: text/plain; name="openafs.shar" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="openafs.shar" # This is a shell archive. Save it in a file, remove anything before # this line, and then unpack it by entering "sh file". Note, it may # create directories; files and directories will be owned by you and # have default permissions. # # This archive contains: # # openafs # openafs/Makefile # openafs/README # openafs/distinfo # openafs/files # openafs/files/patch-src_comerr_et_lex.lex.l # openafs/pkg-descr # openafs/pkg-plist # echo c - openafs mkdir -p openafs > /dev/null 2>&1 echo x - openafs/Makefile sed 's/^X//' >openafs/Makefile << 'cac7ccf84cc7458cb89445ad3dc2caa6' X# New ports collection makefile for: openafs X# Date created: 2008-12-06 X# Whom: Boris Samorodov X# Based on: port by Alec Kloss X# X# $FreeBSD$ X# X XPORTNAME= openafs XPORTVERSION= 1.5.77 XCATEGORIES= net kld XMASTER_SITES= http://dl.central.org/dl/openafs/openafs/${PORTVERSION}/ \ X http://dl.openafs.org/dl/openafs/${PORTVERSION}/ X#PKGNAMESUFFIX= -server X XMAINTAINER= kaduk@mit.edu XCOMMENT= AFS implementation from openafs.org X XOPTIONS= FUSE "Build afsd.fuse (enable fuse support)" off X XUSE_LDCONFIG= yes XPATCH_STRIP= -p1 X XDISTVERSIONSUFFIX= -src XUSE_BZIP2= yes XHAS_CONFIGURE= yes X XONLY_FOR_ARCHS= i386 amd64 X X.include X X.if ${OSVERSION} < 800000 XIGNORE= supports FreeBSD 8.0 and later X.endif X XCONFIGURE_ARGS= --prefix=${PREFIX} \ X --localstatedir=/var \ X --with-afs-sysname=${AFS_SYSNAME} \ X --with-bsd-kernel-build=/usr/obj/usr/src/sys/GENERIC \ X --enable-debug \ X --enable-debug-kernel \ X --enable-debug-lwp \ X --includedir=${PREFIX}/include/openafs \ X --enable-demand-attach-fs \ X --with-krb5 KRB5CFLAGS=-I/usr/include \ X KRB5LIBS='-lkrb5 -lcom_err -lcrypto -lcrypt -lasn1 -lhx509 -lroken' \ X ${CONFIGURE_TARGET} X X.if !defined(WITH_FUSE) XCONFIGURE_ARGS+= --disable-fuse-client XPLIST_SUB+= FUSE="@comment " X.else XLIB_DEPENDS+= fuse.2:${PORTSDIR}/sysutils/fusefs-libs XPLIST_SUB+= FUSE="" X.endif X XWRKSRC= ${WRKDIR}/${PORTNAME}-${PORTVERSION} X XPORTDIR=$(.CURDIR) X Xpost-install: X @${MKDIR} ${PREFIX}/etc/openafs X @${CP} ${WRKSRC}/src/afsd/CellServDB ${PREFIX}/etc/openafs/CellServDB.sample X @if [ ! -e ${PREFIX}/etc/CellServDB ] ; then \ X ${CP} -p ${PREFIX}/etc/openafs/CellServDB.sample ${PREFIX}/etc/CellServDB ; \ X fi X @if [ ! -e ${PREFIX}/etc/openafs/CellServDB ] ; then \ X ${LN} -s ${PREFIX}/etc/CellServDB ${PREFIX}/etc/openafs/CellServDB ; \ X fi X @${ECHO_CMD} openafs.org > ${PREFIX}/etc/openafs/ThisCell.sample X @if [ ! -e ${PREFIX}/etc/ThisCell ] ; then \ X ${CP} -p ${PREFIX}/etc/openafs/ThisCell.sample ${PREFIX}/etc/ThisCell ; \ X fi X @if [ ! -e ${PREFIX}/etc/openafs/ThisCell ] ; then \ X ${LN} -s ${PREFIX}/etc/ThisCell ${PREFIX}/etc/openafs/ThisCell ; \ X fi X ${MV} ${PREFIX}/lib/openafs/libafs.ko /boot/modules/ X @${RMDIR} ${PREFIX}/lib/openafs X kldxref /boot/modules X X X.include cac7ccf84cc7458cb89445ad3dc2caa6 echo x - openafs/README sed 's/^X//' >openafs/README << '852e5444c6c8e72392557c14fd2aa398' XThis is a development package; this software has not been Xextensively tested. XThe usual disclaimers apply. X XThe code does not appeare to be thread-safe, there are a couple Xof deadlock conditions that are not yet resolved. X XThe filesystem-based cache code has lots of locking problems; XWITNESS won't let afsd start with that code path. (Instead, Xuse the memory-based cache.) I currently mount afs with: X# kldload libafs X# afsd -dynroot -fakestat-all -afsdb -memcache -daemons 4 XI expect that things will go fine at that stage; the problems tend Xto show up later. X XI haven't noticed any issues with the auxilliary commands (fs, bos, Xpts, vos, etc.), but nor have I done exhaustive testing. X XYou must have a kernel object tree available for the kernel Xmodule to build; the location of GENERIC is hardcoded in the XMakefile; change this as appropriate. X XAlso hardcoded is the use of heimdal from base (in fact, we Xconflict with heimdal from ports). X XYou will want to tweak the AFS configuration files; in particular, Xcreate a ${PREFIX}/etc/openafs/cacheinfo file (a single line, Xcolon-separated, with the path on which to mount AFS (the directory Xthat will be the mount point must already exist), the directory to Xput cachefiles in (also must already exist), and the size of the Xcache to use (in kB). Putting your site in ThisCell, and checking Xthat the installed CellServDB has up-to-date entries for your local Xcell are also useful. X XHave fun, and don't crash your system too much ... X X-Ben Kaduk, 13 July 2010 852e5444c6c8e72392557c14fd2aa398 echo x - openafs/distinfo sed 's/^X//' >openafs/distinfo << 'f553964b67bf34154813688046be2e9d' XMD5 (openafs-1.5.77-src.tar.bz2) = d365caca068b6c2ee7768cc306d38f3f XSHA256 (openafs-1.5.77-src.tar.bz2) = da4092b70039a526ed26f9272707cfc8c1cc99aee001e09f15cc29ba9b565f9e XSIZE (openafs-1.5.77-src.tar.bz2) = 14225924 f553964b67bf34154813688046be2e9d echo c - openafs/files mkdir -p openafs/files > /dev/null 2>&1 echo x - openafs/files/patch-src_comerr_et_lex.lex.l sed 's/^X//' >openafs/files/patch-src_comerr_et_lex.lex.l << '135c6c6aa00616426929e2238f1df45c' Xdiff --git a/src/comerr/et_lex.lex.l b/src/comerr/et_lex.lex.l Xindex 70b8848..0f58105 100644 X--- a/src/comerr/et_lex.lex.l X+++ b/src/comerr/et_lex.lex.l X@@ -1,3 +1,4 @@ X+%option yylineno X PC [^\"] X AN [A-Z_a-z0-9] X %% X 135c6c6aa00616426929e2238f1df45c echo x - openafs/pkg-descr sed 's/^X//' >openafs/pkg-descr << 'f0120929d49fe07442a3c71bea99f301' XAFS is a distributed filesystem product, pioneered at Carnegie Mellon XUniversity and supported and developed as a product by Transarc Corporation X(now IBM Pittsburgh Labs). It offers a client-server architecture for Xfederated file sharing and replicated read-only content distribution, Xproviding location independence, scalability, security, and transparent Xmigration capabilities. AFS is available for a broad range of heterogeneous Xsystems including UNIX, Linux, MacOS X, and Microsoft Windows. X XIBM branched the source of the AFS product, and made a copy of the source Xavailable for community development and maintenance. They called the Xrelease OpenAFS. X XWWW: http://www.openafs.org/ X X- bsam f0120929d49fe07442a3c71bea99f301 echo x - openafs/pkg-plist sed 's/^X//' >openafs/pkg-plist << '108b360c966dd2433d569db72bad4c16' Xbin/rxgen Xbin/sys Xbin/pagsh.krb Xbin/udebug Xbin/pagsh Xbin/klog.krb Xbin/knfs Xbin/pts Xbin/klog Xbin/tokens.krb Xbin/scout Xbin/xstat_cm_test Xbin/kpasswd Xbin/kpwvalid Xbin/bos Xbin/unlog Xbin/tokens Xbin/livesys Xbin/up Xbin/fs Xbin/xstat_fs_test Xbin/afsmonitor Xbin/cmdebug Xbin/translate_et Xbin/afs_compile_et Xbin/restorevol Xbin/klog.krb5 Xbin/asetkey Xbin/aklog Xinclude/openafs/afs/param.h Xinclude/openafs/afs/stds.h Xinclude/openafs/afs/afs_sysnames.h Xinclude/openafs/afs/afs_args.h Xinclude/openafs/afs/icl.h Xinclude/openafs/afs/venus.h Xinclude/openafs/afs/debug.h Xinclude/openafs/afs/pthread_nosigs.h Xinclude/openafs/afs/assert.h Xinclude/openafs/afs/procmgmt.h Xinclude/openafs/afs/dirpath.h Xinclude/openafs/afs/fileutil.h Xinclude/openafs/afs/netutils.h Xinclude/openafs/afs/errors.h Xinclude/openafs/afs/vice.h Xinclude/openafs/afs/remote.h Xinclude/openafs/afs/ktime.h Xinclude/openafs/afs/afsutil_prototypes.h Xinclude/openafs/afs/packages.h Xinclude/openafs/afs/afsutil.h Xinclude/openafs/afs/pthread_glock.h Xinclude/openafs/afs/cmd.h Xinclude/openafs/afs/afs_atomlist.h Xinclude/openafs/afs/afs_lhash.h Xinclude/openafs/afs/softsig.h Xinclude/openafs/afs/com_err.h Xinclude/openafs/afs/error_table.h Xinclude/openafs/afs/mit-sipb-cr.h Xinclude/openafs/afs/afs.h Xinclude/openafs/afs/osi_inode.h Xinclude/openafs/afs/afs_stats.h Xinclude/openafs/afs/exporter.h Xinclude/openafs/afs/nfsclient.h Xinclude/openafs/afs/unified_afs.h Xinclude/openafs/afs/sysctl.h Xinclude/openafs/afs/rxgen_consts.h Xinclude/openafs/afs/afsint.h Xinclude/openafs/afs/afscbint.h Xinclude/openafs/afs/afssyscalls.h Xinclude/openafs/afs/xfsattrs.h Xinclude/openafs/afs/audit.h Xinclude/openafs/afs/keys.h Xinclude/openafs/afs/cellconfig.h Xinclude/openafs/afs/auth.h Xinclude/openafs/afs/ktc.h Xinclude/openafs/afs/prclient.h Xinclude/openafs/afs/prerror.h Xinclude/openafs/afs/print.h Xinclude/openafs/afs/prserver.h Xinclude/openafs/afs/ptclient.h Xinclude/openafs/afs/ptuser.h Xinclude/openafs/afs/pterror.h Xinclude/openafs/afs/ptint.h Xinclude/openafs/afs/ptserver.h Xinclude/openafs/afs/acl.h Xinclude/openafs/afs/prs_fs.h Xinclude/openafs/afs/kautils.h Xinclude/openafs/afs/kauth.h Xinclude/openafs/afs/kaport.h Xinclude/openafs/afs/bumon.h Xinclude/openafs/afs/butc.h Xinclude/openafs/afs/bubasics.h Xinclude/openafs/afs/tcdata.h Xinclude/openafs/afs/butm.h Xinclude/openafs/afs/butx.h Xinclude/openafs/afs/usd.h Xinclude/openafs/afs/dir.h Xinclude/openafs/afs/nfs.h Xinclude/openafs/afs/vnode.h Xinclude/openafs/afs/viceinode.h Xinclude/openafs/afs/volume.h Xinclude/openafs/afs/voldefs.h Xinclude/openafs/afs/partition.h Xinclude/openafs/afs/fssync.h Xinclude/openafs/afs/ihandle.h Xinclude/openafs/afs/namei_ops.h Xinclude/openafs/afs/vl_opcodes.h Xinclude/openafs/afs/vlserver.h Xinclude/openafs/afs/vldbint.h Xinclude/openafs/afs/cnvldb.h Xinclude/openafs/afs/fs_stats.h Xinclude/openafs/afs/volser.h Xinclude/openafs/afs/volint.h Xinclude/openafs/afs/budb.h Xinclude/openafs/afs/budb_errs.h Xinclude/openafs/afs/budb_client.h Xinclude/openafs/afs/bosint.h Xinclude/openafs/afs/bnode.h Xinclude/openafs/afs/gtxcurseswin.h Xinclude/openafs/afs/gtxdumbwin.h Xinclude/openafs/afs/gtxframe.h Xinclude/openafs/afs/gtxinput.h Xinclude/openafs/afs/gtxkeymap.h Xinclude/openafs/afs/gtxlightobj.h Xinclude/openafs/afs/gtxobjdict.h Xinclude/openafs/afs/gtxobjects.h Xinclude/openafs/afs/gtxtextcb.h Xinclude/openafs/afs/gtxtextobj.h Xinclude/openafs/afs/gtxwindows.h Xinclude/openafs/afs/gtxX11win.h Xinclude/openafs/afs/fsprobe.h Xinclude/openafs/afs/xstat_fs.h Xinclude/openafs/afs/xstat_cm.h Xinclude/openafs/afs/vioc.h Xinclude/openafs/afs/afs_consts.h Xinclude/openafs/afs/pagcb.h Xinclude/openafs/afs/vnode_inline.h Xinclude/openafs/afs/volume_inline.h Xinclude/openafs/afs/salvsync.h Xinclude/openafs/afs/daemon_com.h Xinclude/openafs/afs/vsutils_prototypes.h Xinclude/openafs/des.h Xinclude/openafs/des_conf.h Xinclude/openafs/des_odd.h Xinclude/openafs/des_prototypes.h Xinclude/openafs/kopenafs.h Xinclude/openafs/lock.h Xinclude/openafs/lwp.h Xinclude/openafs/potpourri.h Xinclude/openafs/preempt.h Xinclude/openafs/mit-cpyright.h Xinclude/openafs/rx/rx_prototypes.h Xinclude/openafs/rx/rx.h Xinclude/openafs/rx/rx_packet.h Xinclude/openafs/rx/xdr_prototypes.h Xinclude/openafs/rx/rxstat.h Xinclude/openafs/rx/rx_user.h Xinclude/openafs/rx/rx_event.h Xinclude/openafs/rx/rx_queue.h Xinclude/openafs/rx/rx_globals.h Xinclude/openafs/rx/rx_clock.h Xinclude/openafs/rx/rx_multi.h Xinclude/openafs/rx/rx_pthread.h Xinclude/openafs/rx/rx_lwp.h Xinclude/openafs/rx/rx_misc.h Xinclude/openafs/rx/rx_null.h Xinclude/openafs/rx/xdr.h Xinclude/openafs/rx/rxkad_prototypes.h Xinclude/openafs/rx/fcrypt.h Xinclude/openafs/rx/rxkad.h Xinclude/openafs/timer.h Xinclude/openafs/ubik.h Xinclude/openafs/ubik_int.h Xlib/afs/libacl.a Xlib/afs/libafsint.a Xlib/afs/libafsutil.a Xlib/afs/libaudit.a Xlib/afs/libauth.a Xlib/afs/libauth.krb.a Xlib/afs/libbos.a Xlib/afs/libbubasics.a Xlib/afs/libbudb.a Xlib/afs/libbutm.a Xlib/afs/libbxdb.a Xlib/afs/libcmd.a Xlib/afs/libcom_err.a Xlib/afs/libdir.a Xlib/afs/libfsprobe.a Xlib/afs/libgtx.a Xlib/afs/libkauth.a Xlib/afs/libkauth.krb.a Xlib/afs/libprocmgmt.a Xlib/afs/libprot.a Xlib/afs/libsys.a Xlib/afs/libusd.a Xlib/afs/libvldb.a Xlib/afs/libvlib.a Xlib/afs/libvolser.a Xlib/afs/libxstat_cm.a Xlib/afs/libxstat_fs.a Xlib/afs/util.a Xlib/afs/vlib.a Xlib/librxstat.a Xlib/libdes.a Xlib/liblwp.a Xlib/librx.a Xlib/librxkad.a Xlib/libafsauthent.a Xlib/libuafs.a Xlib/libubik.a Xlib/libafsrpc.a Xlib/pam_afs.krb.so.1 Xlib/libjuafs.a Xlib/pam_afs.so.1 Xlib/libafsrpc_pic.a Xlib/libafsrpc.so.1.2 Xlib/libafsrpc.so.1 Xlib/libafsrpc.so Xlib/libafsauthent_pic.a Xlib/libafsauthent.so.1.1 Xlib/libafsauthent.so.1 Xlib/libafsauthent.so Xlib/libkopenafs.so.1.1 Xlib/libkopenafs.so.1 Xlib/libkopenafs.so Xlib/libkopenafs.a Xlibexec/openafs/buserver Xlibexec/openafs/dafileserver Xlibexec/openafs/dasalvager Xlibexec/openafs/fileserver Xlibexec/openafs/kaserver Xlibexec/openafs/ptserver Xlibexec/openafs/salvager Xlibexec/openafs/upclient Xlibexec/openafs/upserver Xlibexec/openafs/vlserver Xlibexec/openafs/volserver Xlibexec/openafs/salvageserver Xshare/openafs/C/afszcm.cat X%%FUSE%%sbin/afsd.fuse Xsbin/dafssync-debug Xsbin/prdb_check Xsbin/kas Xsbin/kdb Xsbin/rmtsysd Xsbin/pt_util Xsbin/kadb_check Xsbin/ka-forwarder Xsbin/kpwvalid Xsbin/volinfo Xsbin/afsd Xsbin/vsys Xsbin/vldb_convert Xsbin/vldb_check Xsbin/read_tape Xsbin/bosserver Xsbin/voldump Xsbin/vos Xsbin/uss Xsbin/backup Xsbin/butc Xsbin/kdump Xsbin/rxdebug Xsbin/bos_util Xsbin/fms Xsbin/fstrace Xsbin/state_analyzer Xsbin/salvsync-debug Xsbin/fssync-debug X@unexec if [ -L %D/etc/openafs/CellServDB ] ; then rm %D/etc/openafs/CellServDB ; fi X@unexec if cmp -s %D/etc/openafs/CellServDB.sample %D/etc/openafs/CellServDB ; then rm %D/etc/openafs/CellServDB ; fi X@unexec if cmp -s %D/etc/openafs/CellServDB.sample %D/etc/CellServDB ; then rm %D/etc/CellServDB ; fi Xetc/openafs/CellServDB.sample X@unexec if [ -L %D/etc/openafs/ThisCell ] ; then rm %D/etc/openafs/ThisCell ; fi X@unexec if cmp -s %D/etc/openafs/ThisCell.sample %D/etc/openafs/ThisCell ; then rm %D/etc/openafs/ThisCell ; fi X@unexec if cmp -s %D/etc/openafs/ThisCell.sample %D/etc/ThisCell ; then rm %D/etc/ThisCell ; fi Xetc/openafs/ThisCell.sample X@exec if [ ! -e %D/etc/CellServDB ] ; then cp %D/etc/openafs/CellServDB.sample %D/etc/CellServDB ; fi X@exec if [ ! -e %D/etc/openafs/CellServDB ] ; then ln -s %D/etc/CellServDB %D/etc/openafs/CellServDB ; fi X@exec if [ ! -e %D/etc/openafs/ThisCell.sample ] ; then echo openafs.org > %D/etc/openafs/ThisCell.sample ; fi X@exec if [ ! -e %D/etc/ThisCell ] ; then cp -p %D/etc/openafs/ThisCell.sample %D/etc/ThisCell ; fi X@exec if [ ! -e %D/etc/openafs/ThisCell ] ; then ln -s %D/etc/ThisCell %D/etc/openafs/ThisCell ; fi X@dirrm include/openafs/rx X@dirrm include/openafs/afs X@dirrm include/openafs X@dirrm lib/afs X@dirrm libexec/openafs X@dirrmtry etc/openafs X@dirrm share/openafs/C X@dirrm share/openafs X@cwd /boot/modules Xlibafs.ko 108b360c966dd2433d569db72bad4c16 exit --------------070209040600040809000209-- From owner-freebsd-afs@FreeBSD.ORG Tue Sep 21 20:38:27 2010 Return-Path: Delivered-To: freebsd-afs@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id B50B61065670 for ; Tue, 21 Sep 2010 20:38:27 +0000 (UTC) (envelope-from kaduk@mit.edu) Received: from dmz-mailsec-scanner-4.mit.edu (DMZ-MAILSEC-SCANNER-4.MIT.EDU [18.9.25.15]) by mx1.freebsd.org (Postfix) with ESMTP id 7053E8FC14 for ; Tue, 21 Sep 2010 20:38:26 +0000 (UTC) X-AuditID: 1209190f-b7bf7ae00000628e-96-4c991441d64a Received: from mailhub-auth-2.mit.edu ( [18.7.62.36]) by dmz-mailsec-scanner-4.mit.edu (Symantec Brightmail Gateway) with SMTP id BA.60.25230.144199C4; Tue, 21 Sep 2010 16:23:29 -0400 (EDT) Received: from outgoing.mit.edu (OUTGOING-AUTH.MIT.EDU [18.7.22.103]) by mailhub-auth-2.mit.edu (8.13.8/8.9.2) with ESMTP id o8LKNOJw021368; Tue, 21 Sep 2010 16:23:24 -0400 Received: from multics.mit.edu (MULTICS.MIT.EDU [18.187.1.73]) (authenticated bits=56) (User authenticated as kaduk@ATHENA.MIT.EDU) by outgoing.mit.edu (8.13.6/8.12.4) with ESMTP id o8LKNL0Y021419 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT); Tue, 21 Sep 2010 16:23:23 -0400 (EDT) Received: (from kaduk@localhost) by multics.mit.edu (8.12.9.20060308) id o8LKNLUT026437; Tue, 21 Sep 2010 16:23:21 -0400 (EDT) Date: Tue, 21 Sep 2010 16:23:21 -0400 (EDT) From: Benjamin Kaduk To: Jan Henrik Sylvester In-Reply-To: <4C990A1A.7040407@janh.de> Message-ID: References: <4C990A1A.7040407@janh.de> User-Agent: Alpine 1.10 (GSO 962 2008-03-14) MIME-Version: 1.0 Content-Type: TEXT/PLAIN; format=flowed; charset=US-ASCII X-Brightmail-Tracker: AAAAAA== Cc: afs-list freebsd Subject: Re: 1.5.77 port of openafs X-BeenThere: freebsd-afs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: The Andrew File System and FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 21 Sep 2010 20:38:27 -0000 On Tue, 21 Sep 2010, Jan Henrik Sylvester wrote: > I wanted to give 1.5.77 a try after seeing some FreeBSD related improvements > in the changelog. > > Is http://web.mit.edu/freebsd/openafs/openafs.shar the working version of > something that might end up in ports or do you have another one in progress? > (I assume that the git version is not mend for ports.) Oops, I started to make an updated sharball but didn't get around to testing it. I think it was at http://web.mit.edu/freebsd/openafs/tmp/openafs.shar (off the top of my head), but it wouldn't have the plist or package fixes that you describe below. > > Since http://web.mit.edu/freebsd/openafs/openafs.shar is still at 1.5.75, I > started updating it. > > To get it to compile, I removed two patches that do not apply to 1.5.77 > anymore, after updating the version and distinfo. > Those patches (or something equivalent to them) have been merged into upstream. > Verifying the pkg-plist, I realized that 'pkg_create -b' does not produce a > clean package (giving the same files as the port that can cleanly be > removed): Besides some files missing in pkg-plist, lib/openafs is eventually > emtpy and missing from the package and ThisCell.sample contains the sample > line twice when installed from the package. Moreover, whether afsd.fuse is > installed or not depends on the presence of the fuse-libs port. > > I have attached an updated version of the port that fixes issues I found > related to packaging. I tried to make the diff to the old version > minimalistic by not doing anything like sorting the pkg-plist. > > Does it look ok? > Well, I'm still at work, so I can't test or look too closely, but it seems pretty reasonable. (I think that the et_lex.lex.l patch is not needed anymore, but don't remember the details of what fix made it where offhand.) Thanks for putting the work in to do the updates and testing! > I hope I verified all correctly: > - 'pkg_create -b' produces a package that installs the same files as the > port. > - The port or package can be removed cleanly WITH_FUSE or without, with > modified configuration files present or without. > - The binaries seem to link to the same files in a clean environment and in a > polluted one (1155 packages installed, including fuse-libs). > Excellent. Have you also followed the steps here? http://www.freebsd.org/doc/en/books/porters-handbook/porting-testing.html (The porter's handbook is a pretty nice resource for ports tips, though it sadly doesn't give much guidance for how to deal with kernel modules.) > All testing was on 8.1-RELEASE. > > As for functionality: I did a little bit of copying from and to AFS and using > basic fs and pts commands. I did not experience any problems. I have yet to > test the issues that I had with 1.5.75 (copying files larger than the cache > size, unmounting the AFS, stopping the afsd, ...). Okay. As I noted in the tmp/openafs.shar README, I think this code has survived a buildworld in AFS, but deadlocks on a parallel make. (Actually most of the cycles in the past couple weeks that I would have put into openafs were devoted to fixing FreeBSD's ar(1) to not die when presented with a file owned by a machine principal in AFS, but I think I have a working patch for that.) > > Possible improvements before it goes to ports: Nicer error for emtpy > /usr/src/ or /usr/obj/, creation of /afs, creation of a sample for > /usr/local/etc/cacheinfo, sorting pkg-plist. Before I start anything in that > direction: > > Are you planing to bring something to ports anytime soon -- maybe as > net/openafs-devel -- or is it still too early? I hadn't thought too hard about when to bring something into ports, but I do think the code is reaching a point where it is actually useful to non-developers. In my dream world, we would figure out the locking issues that cause parallel make to deadlock in time for a 1.6 release, and that would go into ports, but I think that fixing up your packaging of 1.5.77 and making it net/openafs-devel would be a reasonable thing to do. Thanks again for moving this forward, Ben From owner-freebsd-afs@FreeBSD.ORG Tue Sep 21 20:59:41 2010 Return-Path: Delivered-To: freebsd-afs@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 8DA37106564A for ; Tue, 21 Sep 2010 20:59:41 +0000 (UTC) (envelope-from me@janh.de) Received: from mailhost.uni-hamburg.de (mailhost.uni-hamburg.de [134.100.32.155]) by mx1.freebsd.org (Postfix) with ESMTP id 436918FC0A for ; Tue, 21 Sep 2010 20:59:41 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by mailhost.uni-hamburg.de (Postfix) with ESMTP id 5523890615; Tue, 21 Sep 2010 22:59:40 +0200 (CEST) X-Virus-Scanned: by University of Hamburg (RRZ/mailhost) Received: from mailhost.uni-hamburg.de ([127.0.0.1]) by localhost (mailhost.uni-hamburg.de [127.0.0.1]) (amavisd-new, port 10024) with LMTP id 8UvvCUJW6uGW; Tue, 21 Sep 2010 22:59:40 +0200 (CEST) Received: from nb895.math (g224006100.adsl.alicedsl.de [92.224.6.100]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (Client did not present a certificate) (Authenticated sender: fmjv004) by mailhost.uni-hamburg.de (Postfix) with ESMTPSA id 0075D90148; Tue, 21 Sep 2010 22:59:39 +0200 (CEST) Message-ID: <4C991CBA.9020809@janh.de> Date: Tue, 21 Sep 2010 22:59:38 +0200 From: Jan Henrik Sylvester User-Agent: Mozilla/5.0 (X11; U; FreeBSD amd64; en-US; rv:1.9.2.9) Gecko/20100917 Thunderbird/3.1.4 MIME-Version: 1.0 To: Benjamin Kaduk References: <4C990A1A.7040407@janh.de> In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: afs-list freebsd Subject: Re: 1.5.77 port of openafs X-BeenThere: freebsd-afs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: The Andrew File System and FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 21 Sep 2010 20:59:41 -0000 On 09/21/2010 22:23, Benjamin Kaduk wrote: > Excellent. Have you also followed the steps here? > http://www.freebsd.org/doc/en/books/porters-handbook/porting-testing.html > (The porter's handbook is a pretty nice resource for ports tips, though > it sadly doesn't give much guidance for how to deal with kernel modules.) Since I was trying to keep the diff minimal, I did not attempt to make any improvements besides the basic functionality of the package -- the option WITH_FUSE was needed for that. (And I did not test in an optimal way lacking a tinderbox and only using a chroot environment for "clean" builds.) I have never used portlint so far, but I can try. In contrast to debugging the deadlocks and crashes, improving the port should be doable for me. Unfortunately, I will probably not have enough time in September, but I might get to it in two weeks. I will check http://web.mit.edu/freebsd/openafs/tmp/openafs.shar before I start with anything. Cheers, Jan Henrik From owner-freebsd-afs@FreeBSD.ORG Tue Sep 21 21:03:27 2010 Return-Path: Delivered-To: freebsd-afs@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id ACEAB1065673 for ; Tue, 21 Sep 2010 21:03:27 +0000 (UTC) (envelope-from kaduk@mit.edu) Received: from dmz-mailsec-scanner-7.mit.edu (DMZ-MAILSEC-SCANNER-7.MIT.EDU [18.7.68.36]) by mx1.freebsd.org (Postfix) with ESMTP id 67E4E8FC13 for ; Tue, 21 Sep 2010 21:03:26 +0000 (UTC) X-AuditID: 12074424-b7b2bae000005b3f-46-4c991d84e6b0 Received: from mailhub-auth-3.mit.edu ( [18.9.21.43]) by dmz-mailsec-scanner-7.mit.edu (Symantec Brightmail Gateway) with SMTP id CF.7F.23359.48D199C4; Tue, 21 Sep 2010 17:03:00 -0400 (EDT) Received: from outgoing.mit.edu (OUTGOING-AUTH.MIT.EDU [18.7.22.103]) by mailhub-auth-3.mit.edu (8.13.8/8.9.2) with ESMTP id o8LL3Phh002823; Tue, 21 Sep 2010 17:03:26 -0400 Received: from multics.mit.edu (MULTICS.MIT.EDU [18.187.1.73]) (authenticated bits=56) (User authenticated as kaduk@ATHENA.MIT.EDU) by outgoing.mit.edu (8.13.6/8.12.4) with ESMTP id o8LL3OFn000111 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT); Tue, 21 Sep 2010 17:03:25 -0400 (EDT) Received: (from kaduk@localhost) by multics.mit.edu (8.12.9.20060308) id o8LL3NO5026881; Tue, 21 Sep 2010 17:03:23 -0400 (EDT) Date: Tue, 21 Sep 2010 17:03:23 -0400 (EDT) From: Benjamin Kaduk To: Jan Henrik Sylvester In-Reply-To: <4C991CBA.9020809@janh.de> Message-ID: References: <4C990A1A.7040407@janh.de> <4C991CBA.9020809@janh.de> User-Agent: Alpine 1.10 (GSO 962 2008-03-14) MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed X-Brightmail-Tracker: AAAAAA== Cc: afs-list freebsd Subject: Re: 1.5.77 port of openafs X-BeenThere: freebsd-afs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: The Andrew File System and FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 21 Sep 2010 21:03:27 -0000 On Tue, 21 Sep 2010, Jan Henrik Sylvester wrote: > On 09/21/2010 22:23, Benjamin Kaduk wrote: >> Excellent. Have you also followed the steps here? >> http://www.freebsd.org/doc/en/books/porters-handbook/porting-testing.html >> (The porter's handbook is a pretty nice resource for ports tips, though >> it sadly doesn't give much guidance for how to deal with kernel modules.) > > Since I was trying to keep the diff minimal, I did not attempt to make any > improvements besides the basic functionality of the package -- the option > WITH_FUSE was needed for that. (And I did not test in an optimal way lacking > a tinderbox and only using a chroot environment for "clean" builds.) > A chroot and manual inspection is frequently good enough. (And I wouldn't even have noticed the FUSE dependency, since I don't have it on my testing boxes.) > I have never used portlint so far, but I can try. In contrast to debugging > the deadlocks and crashes, improving the port should be doable for me. Portlint is largely for style checks that only become important right before submitting a port for inclusion in the repository. > Unfortunately, I will probably not have enough time in September, but I might > get to it in two weeks. I will check > http://web.mit.edu/freebsd/openafs/tmp/openafs.shar before I start with > anything. Well, the idea was that it would become freebsd/openafs/openafs.shar once I finished testing it, and the tmp/ directory would go away. I may not have time in September to do anything much, either, but will send mail if I do. -Ben