Date: Sun, 30 Mar 2008 02:51:55 GMT From: John Birrell <jb@FreeBSD.org> To: Perforce Change Reviews <perforce@freebsd.org> Subject: PERFORCE change 138958 for review Message-ID: <200803300251.m2U2ptr3017319@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=138958 Change 138958 by jb@jb_freebsd1 on 2008/03/30 02:51:23 IFC Affected files ... .. //depot/projects/dtrace/ports/UPDATING#63 integrate .. //depot/projects/dtrace/src/sys/fs/nullfs/null_subr.c#7 integrate .. //depot/projects/dtrace/src/sys/kern/uipc_mqueue.c#13 integrate .. //depot/projects/dtrace/src/sys/kern/vfs_vnops.c#16 integrate .. //depot/projects/dtrace/src/sys/netgraph/ng_base.c#18 integrate .. //depot/projects/dtrace/www/en/gnome/docs/bugging.sgml#8 integrate .. //depot/projects/dtrace/www/en/gnome/docs/develfaq.sgml#10 integrate .. //depot/projects/dtrace/www/en/gnome/docs/faq2.sgml#19 integrate .. //depot/projects/dtrace/www/en/gnome/docs/volunteer.sgml#6 integrate Differences ... ==== //depot/projects/dtrace/ports/UPDATING#63 (text+ko) ==== @@ -6,11 +6,18 @@ time you update your ports collection, before attempting any port upgrades. +20080330: + AFFECTS: users of www/mediawiki + AUTHOR: miwi@FreeBSD.org + + www/mediawiki version is 1.12 now. 1.11 version was preserved on + www/mediawiki111 port. + 20080329: AFFECTS: users of www/phpadsnew AUTHOR: beech@FreeBSD.org - Phpadsnew has been replaced with www/openx. + Phpadsnew has been replaced with www/openx. To upgrade please do the following: 1. Install www/openx @@ -6267,4 +6274,4 @@ 2) Update all p5-* modules. portupgrade -f p5-\* -$FreeBSD: ports/UPDATING,v 1.608 2008/03/29 19:50:39 beech Exp $ +$FreeBSD: ports/UPDATING,v 1.610 2008/03/30 00:20:48 miwi Exp $ ==== //depot/projects/dtrace/src/sys/fs/nullfs/null_subr.c#7 (text+ko) ==== @@ -31,7 +31,7 @@ * * @(#)null_subr.c 8.7 (Berkeley) 5/14/95 * - * $FreeBSD: src/sys/fs/nullfs/null_subr.c,v 1.53 2008/01/10 01:10:47 attilio Exp $ + * $FreeBSD: src/sys/fs/nullfs/null_subr.c,v 1.54 2008/03/29 23:24:54 jeff Exp $ */ #include <sys/param.h> @@ -103,11 +103,9 @@ struct mount *mp; struct vnode *lowervp; { - struct thread *td = curthread; /* XXX */ struct null_node_hashhead *hd; struct null_node *a; struct vnode *vp; - int error; ASSERT_VOP_LOCKED(lowervp, "null_hashget"); @@ -121,24 +119,15 @@ mtx_lock(&null_hashmtx); LIST_FOREACH(a, hd, null_hash) { if (a->null_lowervp == lowervp && NULLTOV(a)->v_mount == mp) { - vp = NULLTOV(a); - VI_LOCK(vp); - mtx_unlock(&null_hashmtx); - /* - * We need to clear the OWEINACT flag here as this - * may lead vget() to try to lock our vnode which - * is already locked via lowervp. - */ - vp->v_iflag &= ~VI_OWEINACT; - error = vget(vp, LK_INTERLOCK, td); /* * Since we have the lower node locked the nullfs * node can not be in the process of recycling. If * it had been recycled before we grabed the lower * lock it would not have been found on the hash. */ - if (error) - panic("null_hashget: vget error %d", error); + vp = NULLTOV(a); + vref(vp); + mtx_unlock(&null_hashmtx); return (vp); } } @@ -155,11 +144,9 @@ struct mount *mp; struct null_node *xp; { - struct thread *td = curthread; /* XXX */ struct null_node_hashhead *hd; struct null_node *oxp; struct vnode *ovp; - int error; hd = NULL_NHASH(xp->null_lowervp); mtx_lock(&null_hashmtx); @@ -171,12 +158,8 @@ * operation. */ ovp = NULLTOV(oxp); - VI_LOCK(ovp); + vref(ovp); mtx_unlock(&null_hashmtx); - ovp->v_iflag &= ~VI_OWEINACT; - error = vget(ovp, LK_INTERLOCK, td); - if (error) - panic("null_hashins: vget error %d", error); return (ovp); } } ==== //depot/projects/dtrace/src/sys/kern/uipc_mqueue.c#13 (text+ko) ==== @@ -43,7 +43,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/kern/uipc_mqueue.c,v 1.29 2008/01/13 14:44:09 attilio Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/uipc_mqueue.c,v 1.30 2008/03/29 23:30:40 jeff Exp $"); #include <sys/param.h> #include <sys/kernel.h> @@ -704,12 +704,9 @@ } if (vd != NULL) { - if (vget(vd->mv_vnode, 0, curthread) == 0) { - *vpp = vd->mv_vnode; - vn_lock(*vpp, LK_RETRY | LK_EXCLUSIVE); - return (0); - } - /* XXX if this can happen, we're in trouble */ + *vpp = vd->mv_vnode; + vget(*vpp, LK_RETRY | LK_EXCLUSIVE, curthread); + return (0); } error = getnewvnode("mqueue", mp, &mqfs_vnodeops, vpp); ==== //depot/projects/dtrace/src/sys/kern/vfs_vnops.c#16 (text+ko) ==== @@ -35,7 +35,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/kern/vfs_vnops.c,v 1.259 2008/03/24 04:17:35 jeff Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/vfs_vnops.c,v 1.260 2008/03/29 23:36:26 jeff Exp $"); #include "opt_mac.h" @@ -854,26 +854,16 @@ } /* - * Check that the vnode is still valid, and if so - * acquire requested lock. + * Acquire the requested lock and then check for validity. LK_RETRY + * permits vn_lock to return doomed vnodes. */ int _vn_lock(struct vnode *vp, int flags, char *file, int line) { int error; - /* - * With no lock type requested we're just polling for validity. - */ - if ((flags & LK_TYPE_MASK) == 0) { - error = 0; - if ((flags & LK_INTERLOCK) == 0) - VI_LOCK(vp); - if (vp->v_iflag & VI_DOOMED) - error = ENOENT; - VI_UNLOCK(vp); - return (error); - } + VNASSERT((flags & LK_TYPE_MASK) != 0, vp, + ("vn_lock called with no locktype.")); do { error = VOP_LOCK1(vp, flags, file, line); flags &= ~LK_INTERLOCK; /* Interlock is always dropped. */ ==== //depot/projects/dtrace/src/sys/netgraph/ng_base.c#18 (text+ko) ==== @@ -38,7 +38,7 @@ * Authors: Julian Elischer <julian@freebsd.org> * Archie Cobbs <archie@freebsd.org> * - * $FreeBSD: src/sys/netgraph/ng_base.c,v 1.152 2008/03/27 23:02:30 mav Exp $ + * $FreeBSD: src/sys/netgraph/ng_base.c,v 1.154 2008/03/30 00:27:48 mav Exp $ * $Whistle: ng_base.c,v 1.39 1999/01/28 23:54:53 julian Exp $ */ @@ -770,11 +770,9 @@ return (0); } - do { - v = node->nd_refs - 1; - } while (! atomic_cmpset_int(&node->nd_refs, v + 1, v)); + v = atomic_fetchadd_int(&node->nd_refs, -1); - if (v == 0) { /* we were the last */ + if (v == 1) { /* we were the last */ mtx_lock(&ng_namehash_mtx); node->nd_type->refs--; /* XXX maybe should get types lock? */ @@ -788,7 +786,7 @@ mtx_destroy(&node->nd_input_queue.q_mtx); NG_FREE_NODE(node); } - return (v); + return (v - 1); } /************************************************************************ @@ -959,15 +957,12 @@ if (hook == &ng_deadhook) { return; } - do { - v = hook->hk_refs; - } while (! atomic_cmpset_int(&hook->hk_refs, v, v - 1)); + + v = atomic_fetchadd_int(&hook->hk_refs, -1); if (v == 1) { /* we were the last */ - if (_NG_HOOK_NODE(hook)) { /* it'll probably be ng_deadnode */ + if (_NG_HOOK_NODE(hook)) /* it'll probably be ng_deadnode */ _NG_NODE_UNREF((_NG_HOOK_NODE(hook))); - hook->hk_node = NULL; - } NG_FREE_HOOK(hook); } } ==== //depot/projects/dtrace/www/en/gnome/docs/bugging.sgml#8 (text+ko) ==== @@ -1,6 +1,6 @@ <!DOCTYPE HTML PUBLIC "-//FreeBSD//DTD HTML 4.01 Transitional-Based Extension//EN" [ <!ENTITY base CDATA "../.."> -<!ENTITY date "$FreeBSD: www/en/gnome/docs/bugging.sgml,v 1.32 2008/03/23 05:17:15 mezz Exp $"> +<!ENTITY date "$FreeBSD: www/en/gnome/docs/bugging.sgml,v 1.33 2008/03/29 23:00:49 marcus Exp $"> <!ENTITY title "FreeBSD GNOME Project: Reporting a Bug"> <!ENTITY email "freebsd-gnome"> <!ENTITY % navinclude.gnome "INCLUDE"> @@ -117,7 +117,7 @@ FreeBSD-specific, <i>and</i> you have a fix available, report it to both the FreeBSD GNOME team and the application's developers. This way, the application's developers can apply - the patch to CVS, and the FreeBSD GNOME team can apply the + the patch upstream, and the FreeBSD GNOME team can apply the patch immediately to the ports tree without needing to wait for the next release.</p></li> </ul> ==== //depot/projects/dtrace/www/en/gnome/docs/develfaq.sgml#10 (text+ko) ==== @@ -1,6 +1,6 @@ <!DOCTYPE HTML PUBLIC "-//FreeBSD//DTD HTML 4.01 Transitional-Based Extension//EN" [ <!ENTITY base CDATA "../.."> -<!ENTITY date "$FreeBSD: www/en/gnome/docs/develfaq.sgml,v 1.53 2007/09/27 05:09:08 mezz Exp $"> +<!ENTITY date "$FreeBSD: www/en/gnome/docs/develfaq.sgml,v 1.54 2008/03/29 22:58:52 marcus Exp $"> <!ENTITY title "FreeBSD GNOME Project: GNOME Development Branch FAQ"> <!ENTITY email "freebsd-gnome"> <!ENTITY % navinclude.gnome "INCLUDE"> @@ -44,7 +44,7 @@ versions are committed to the FreeBSD CVS tree. This document is about the development branch. The current development branch is GNOME &gnomedevelver;.</li> - <li><b>CVS</b> - Often newer-than-new, the CVS HEAD versions of GNOME + <li><b>SVN</b> - Often newer-than-new, the SVN trunk versions of GNOME applications and libraries are alpha quality, or often completely unbuildable. The FreeBSD GNOME project pays attention to, but does not track the alpha quality code.</li> @@ -110,20 +110,7 @@ into your main ports tree. From there, you can use <tt>portupgrade</tt> or <tt>portmaster</tt> to upgrade from &gnomever; to &gnomedevelver; and stay up-to-date afterwards. - <b>NOTE:</b> if this is a first-time upgrade from &gnomever; to - &gnomedevelver; you must run <tt>portupgrade</tt> or - <tt>portmaster</tt> command:</p> - <pre> -portupgrade -o textproc/rarian textproc/scrollkeeper -portupgrade -a - -or - -portmaster -o textproc/rarian textproc/scrollkeeper -portmaster -a - </pre> - <p>The long answer is that keeping up-to-date with the GNOME development branch is complicated. Sometimes components change in a way that makes <tt>portupgrade</tt> or <tt>portmaster</tt> @@ -171,7 +158,7 @@ <li style="padding-bottom: 0.5em"><a name="q7"></a> <p><b>What is the current state of development GNOME on FreeBSD?</b></p> <!-- A7 --> - <p>GNOME 2.20.0 is now out, and ports and packages are + <p>GNOME 2.22.0 is now out, and ports and packages are up-to-date. Keep those bug reports coming.</p> </li> </ol> ==== //depot/projects/dtrace/www/en/gnome/docs/faq2.sgml#19 (text+ko) ==== @@ -1,6 +1,6 @@ <!DOCTYPE HTML PUBLIC "-//FreeBSD//DTD HTML 4.01 Transitional-Based Extension//EN" [ <!ENTITY base CDATA "../.."> -<!ENTITY date "$FreeBSD: www/en/gnome/docs/faq2.sgml,v 1.134 2008/03/29 22:10:25 marcus Exp $"> +<!ENTITY date "$FreeBSD: www/en/gnome/docs/faq2.sgml,v 1.136 2008/03/29 23:59:54 marcus Exp $"> <!ENTITY title "FreeBSD GNOME Project: GNOME &gnomever; FAQ"> <!ENTITY email "freebsd-gnome"> <!ENTITY % navinclude.gnome "INCLUDE"> @@ -41,7 +41,7 @@ fonts?</a> <li> <a href="#q11">How can I control what fonts are anti-aliased? </a> - <li> <a href="#q12">How do I edit my GNOME 2 menus?</a> + <li> <a href="#q12">How do I edit my GNOME menus?</a> <li> <a href="#q13">How do I use GTK+ 2 resource settings for GTK+ 2 applications when not in a GNOME environment?</a> <li> <a href="#q14">How do I configure settings for GNOME 1.4 @@ -308,32 +308,32 @@ <p><b>I installed GNOME &gnomever;, but I am missing application foo. What gives?</b></p> <!-- A3 --> - <p>Only the core desktop is included in the + <p>Only the core Desktop is included in the <tt>gnome2</tt> package. Here are some other GNOME - meta-ports that offer convenient groupings of popular GNOME 2 + meta-ports that offer convenient groupings of popular GNOME software.</p> <ul> - <li>The <b>GNOME 2 Fifth Toe</b> (<tt>x11/gnome2-fifth-toe</tt>) - consists of stable GNOME 2 applications that many users + <li>The <b>GNOME Fifth Toe</b> (<tt>x11/gnome2-fifth-toe</tt>) + consists of stable GNOME applications that many users expect to find in a functional desktop environment. This includes image manipulation applications, chat and instant messenger applications, and music and multimedia players</li> - <li>The <b>GNOME 2 Hacker Tools</b> + <li>The <b>GNOME Hacker Tools</b> (<tt>devel/gnome2-hacker-tools</tt>) consists of applications developers would need to create and maintain GNOME software projects. This includes IDEs, interface builders, "hacker" editors, and code generation tools.</li> - <li>The <b>GNOME 2 Office</b> (<tt>editors/gnome2-office</tt>) + <li>The <b>GNOME Office</b> (<tt>editors/gnome2-office</tt>) consists of applications that are commonly found in office or productivity suites. This includes a spreadsheet application, word processor, project management application, database access application, groupware suite, and diagramming application.</li> - <li>The <b>GNOME 2 Power Tools</b> + <li>The <b>GNOME Power Tools</b> (<tt>x11/gnome2-power-tools</tt>) consists of utilities and applets for the technically-minded GNOME user. It also contains many useful add-on utilities for some of @@ -347,7 +347,7 @@ # pkg_add -r <em>meta-port</em> </pre> - <p>For example, to install the GNOME 2 Fifth Toe from packages:</p> + <p>For example, to install the GNOME Fifth Toe from packages:</p> <pre> # pkg_add -r gnome2-fifth-toe @@ -361,7 +361,7 @@ # make install clean </pre> - <p>For example, to install the GNOME 2 Fifth Toe from ports:</p> + <p>For example, to install the GNOME Fifth Toe from ports:</p> <pre> # cd /usr/ports/x11/gnome2-fifth-toe @@ -486,12 +486,12 @@ <p><b>What window managers work well with GNOME &gnomever;?</b></p> <!-- A9 --> <p>The <tt>gnome2</tt> meta-port installs the - metacity window manager by default. Another popular window + Metacity window manager by default. Another popular window manager that works well with GNOME &gnomever; is - <a href="http://sawmill.sourceforge.net/">sawfish</a>. Sawfish + <a href="http://sawmill.sourceforge.net/">Sawfish</a>. Sawfish can be found in <tt>x11-wm/sawfish</tt>.</p> - <p>To switch between metacity and sawfish in GNOME 2, you will need + <p>To switch between Metacity and Sawfish in GNOME, you will need to do the following:</p> <pre> @@ -500,8 +500,8 @@ </pre> <p>The <tt>gnome-session-save</tt> is important. Without it, the window manager will revert back to the one previously configured - upon next login. To switch back, simply reverse sawfish and - metacity.</p> + upon next login. To switch back, simply reverse <tt>sawfish</tt> + and <tt>metacity</tt>.</p> <p>If you have gotten the GNOME &gnomever; desktop working under an alternative window manager, please take a screenshot and @@ -531,7 +531,7 @@ <p>Sometimes, after adding new fonts to the system, it is necessary to teach fontconfig about them. If you find that newly added fonts are not made available even after - restarting GNOME 2, run the following command as root:</p> + restarting GNOME, run the following command as root:</p> <pre> # fc-cache -f -v @@ -583,7 +583,7 @@ <!-- Q12 --> <li style="padding-bottom: 0.5em"><a name="q12"></a> - <p><b>How do I edit my GNOME 2 menus?</b></p> + <p><b>How do I edit my GNOME menus?</b></p> <!-- A12 --> <p>Right-click on the Applications menu, and select <b>Edit Menus</b>. This will invoke the @@ -592,16 +592,16 @@ <!-- Q13 --> <li style="padding-bottom: 0.5em"><a name="q13"></a> - <p><b>How do I use GTK+ 2 resource settings for GTK+ 2 applications + <p><b>How do I use GTK+ resource settings for GTK+ applications when not in a GNOME environment?</b></p> <!-- A13 --> - <p> GNOME 2 applications get their GTK+ 2 resources from themes and + <p>GNOME applications get their GTK+ resources from themes and the corresponding theme engine. If you would rather run your - GTK+ 2 applications in a non-GNOME environment then you will + GTK+ applications in a non-GNOME environment then you will need to create a file named <tt>~/.gtkrc-2.0</tt>.</p> - <p> To use the widgets from a GTK+ 2 theme when in a non-GNOME - environment, simply <tt>include</tt> the theme's - <tt>gtk-2.0/gtkrc</tt> in your <tt>~/.gtkrc-2.0</tt>. For example: + <p> To use the widgets from a GTK+ theme when in a non-GNOME + environment, simply <tt>include</tt> the theme's + <tt>gtk-2.0/gtkrc</tt> in your <tt>~/.gtkrc-2.0</tt>. For example: <pre>include "/usr/local/share/themes/Crux/gtk-2.0/gtkrc"</pre> <p> If you prefer, you can use the same GTK+ 1.2 theme for both @@ -612,7 +612,7 @@ <ol> <li> If you have any theme engine references, you will have - to make sure there is a corresponding GTK+ 2 theme engine. + to make sure there is a corresponding GTK+ theme engine. Otherwise, remove the engine entries.</li> <li> The default font specification should be outside of any <tt>style</tt> blocks and should be specified with @@ -1152,7 +1152,7 @@ <tt>/usr/local/libexec/gnome-settings-daemon</tt> from the command line, and check for any errors. Most problems can be solved by reinstalling - <tt>sysutils/gnome-control-center</tt>.</p> + <tt>sysutils/gnome-settings-daemon</tt>.</p> </li> <!-- Q27 --> <li style="padding-bottom: 0.5em"><a name="q27"></a> @@ -1172,7 +1172,7 @@ <li style="padding-bottom: 0.5em"><a name="q28"></a> <p><b>How do I enable window compositing in GNOME?</b></p> <!-- A28 --> - <p>Starting with GNOME 2.22, the metacity window manager includes + <p>Starting with GNOME 2.22, the Metacity window manager includes a compositing manager. When compositing is enabled, widgets will get a drop shadow, and the Alt+Tab application switcher will show previews of the @@ -1188,7 +1188,7 @@ % gconftool-2 -s --type bool /apps/metacity/general/compositing_manager true </pre> - <p>If you want to disable it again, char "true" to + <p>If you want to disable it again, change "true" to "false", and re-run the command. You can also use <tt>gconf-editor</tt> to edit it.</p> @@ -1213,11 +1213,11 @@ <tt>~/.profile</tt>:</p> <pre> -export GDM_LANG=LOCALE +export GDM_LANG=<locale> </pre> - <p>Here, <tt>LOCALE</tt> is the desired locale (e.g. en_US.UTF-8, - es_ES.ISO8859-15, fr_FR.ISO8859-1, etc.).</p> + <p>Here, <tt><locale></tt> is the desired locale + (e.g. en_US.UTF-8, es_ES.ISO8859-15, fr_FR.ISO8859-1, etc.).</p> </li> </ol> ==== //depot/projects/dtrace/www/en/gnome/docs/volunteer.sgml#6 (text+ko) ==== @@ -1,6 +1,6 @@ <!DOCTYPE HTML PUBLIC "-//FreeBSD//DTD HTML 4.01 Transitional-Based Extension//EN" [ <!ENTITY base CDATA "../.."> -<!ENTITY date "$FreeBSD: www/en/gnome/docs/volunteer.sgml,v 1.20 2007/06/21 06:55:20 marcus Exp $"> +<!ENTITY date "$FreeBSD: www/en/gnome/docs/volunteer.sgml,v 1.21 2008/03/29 23:49:34 marcus Exp $"> <!ENTITY title "FreeBSD GNOME Project: How To Help"> <!ENTITY email "freebsd-gnome"> <!ENTITY % navinclude.gnome "INCLUDE"> @@ -23,9 +23,6 @@ <p>Regularly install GNOME from packages, and report any problems with the install or the functionality.</p></li> <li> - <p>Find GNOME applications not yet ported to FreeBSD, and - work on porting them over.</p></li> - <li> <p><a href="http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/eresources.html#ERESOURCES-SUBSCRIBE"> Subscribe</a> to the freebsd-gnome mailing list, and help answer users' questions.</p></li> @@ -37,6 +34,47 @@ versions. The builditinator.sh script, available from the <a href="develfaq.html#q3">MarcusCom</a> portstools repository, can automate the entire process, from start to finish.</p></li> + <li> + <p>The following non-trivial porting tasks are + needed.</p> + + <ul> + <li><p>Fix <tt>sysutils/system-tools-backends</tt> to + work with all supported versions of FreeBSD. This + will require someone with FreeBSD configuration + knowledged as well as a good knowledge of Perl + programming. All patches can be submitted as + PRs.</p></li> + + <li><p>Port <a + href="http://www.gnome.org/projects/NetworkManager/"> + NetworkManager</a> to FreeBSD. This will require + someone with C programming experience, and a good + knowledge of wireless networking in FreeBSD. + Additionally, this will require some FreeBSD + userland changes especially to + <tt>ifconfig</tt>.</p></li> + + <li><p>Port the <a + href="http://live.gnome.org/GnomeBluetooth">GNOME + Bluetooth</a> suite to FreeBSD. This will require + someone with C programming experience and + Bluetooth devices. The bulk of the work will be + porting libbtctl to use FreeBSD's Bluetooth + stack.</p></li> + + <li><p>Extend the FreeBSD hal backend to support missing + subsystems. Currently, the most notable missing + subsystems are <tt>ieee1394</tt> (i.e. Firewire), + <tt>bluetooth</tt>, and <tt>printer</tt>. + Those interested should use the latest <a + href="http://www.marcuscom.com/hal-spec/hal-spec.html"> + HAL Specification</a> as a guide. Contact + <a + href="mailto:marcus@FreeBSD.org">marcus@FreeBSD.org</a> + if you wish to help with this task.</p></li> + </ul> + </li> </ul> <p>Send any feedback to <a href="mailto:&email;@FreeBSD.org">
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200803300251.m2U2ptr3017319>