Date: Mon, 19 Nov 2007 20:22:22 GMT From: John Birrell <jb@FreeBSD.org> To: Perforce Change Reviews <perforce@freebsd.org> Subject: PERFORCE change 129253 for review Message-ID: <200711192022.lAJKMMc5042830@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=129253 Change 129253 by jb@jb_freebsd1 on 2007/11/19 20:21:23 IFC Affected files ... .. //depot/projects/dtrace/doc/es_ES.ISO8859-1/articles/Makefile#5 integrate .. //depot/projects/dtrace/doc/es_ES.ISO8859-1/share/sgml/translators.ent#3 integrate .. //depot/projects/dtrace/src/libexec/rtld-elf/powerpc/reloc.c#6 integrate .. //depot/projects/dtrace/src/share/colldef/sv_SE.ISO8859-1.src#4 integrate .. //depot/projects/dtrace/src/share/colldef/sv_SE.ISO8859-15.src#4 integrate .. //depot/projects/dtrace/src/share/mk/bsd.sys.mk#9 integrate .. //depot/projects/dtrace/src/share/mk/sys.mk#13 integrate .. //depot/projects/dtrace/src/sys/conf/kmod.mk#11 integrate .. //depot/projects/dtrace/src/sys/dev/ata/ata-chipset.c#18 integrate .. //depot/projects/dtrace/src/sys/dev/ata/atapi-cd.c#7 integrate .. //depot/projects/dtrace/src/sys/kern/sys_pipe.c#9 integrate .. //depot/projects/dtrace/src/sys/nfsclient/nfs_vnops.c#10 integrate Differences ... ==== //depot/projects/dtrace/doc/es_ES.ISO8859-1/articles/Makefile#5 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: doc/es_ES.ISO8859-1/articles/Makefile,v 1.8 2007/09/01 18:44:50 carvay Exp $ +# $FreeBSD: doc/es_ES.ISO8859-1/articles/Makefile,v 1.9 2007/11/19 20:03:31 carvay Exp $ # $FreeBSDes: doc/es_ES.ISO8859-1/articles/Makefile,v 1.3 2004/10/09 02:01:17 jesusr Exp $ SUBDIR = @@ -11,6 +11,7 @@ SUBDIR+= fbsd-from-scratch SUBDIR+= fdp-es SUBDIR+= laptop +SUBDIR+= linux-comparison SUBDIR+= mailing-list-faq SUBDIR+= p4-primer SUBDIR+= problem-reports ==== //depot/projects/dtrace/doc/es_ES.ISO8859-1/share/sgml/translators.ent#3 (text+ko) ==== @@ -1,7 +1,7 @@ <!-- The FreeBSD Spanish Documentation Project - $FreeBSD: doc/es_ES.ISO8859-1/share/sgml/translators.ent,v 1.3 2005/11/20 22:45:32 jesusr Exp $ + $FreeBSD: doc/es_ES.ISO8859-1/share/sgml/translators.ent,v 1.4 2007/11/19 20:03:32 carvay Exp $ $FreeBSDes: doc/es_ES.ISO8859-1/share/sgml/translators.ent,v 1.7 2004/08/25 21:21:40 jcamou Exp $ --> @@ -13,6 +13,8 @@ "José Vicente Carrasco Vayá <email>carvay@es.FreeBSD.org</email>"> <!ENTITY a.es.cronopio "Luis López <email>cronopiolopez@terra.es</email>"> +<!ENTITY a.es.gabor + "Gábor Kövesdán <email>gabor@FreeBSD.org</email>"> <!ENTITY a.es.jcamou "Jesus R. Camou <email>jcamou@FreeBSD.org</email>"> <!ENTITY a.es.jesusr @@ -28,6 +30,8 @@ "<para><emphasis>Traducción de &a.es.bazcar;.</emphasis></para>"> <!ENTITY trans.es.carvay "<para><emphasis>Traducción de &a.es.carvay;.</emphasis></para>"> +<!ENTITY trans.es.gabor + "<para><emphasis>Traducción de &a.es.gabor;.</emphasis></para>"> <!ENTITY trans.es.jcamou "<para><emphasis>Traducción de &a.es.jcamou;.</emphasis></para>"> <!ENTITY trans.es.jesusr ==== //depot/projects/dtrace/src/libexec/rtld-elf/powerpc/reloc.c#6 (text+ko) ==== @@ -26,7 +26,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/libexec/rtld-elf/powerpc/reloc.c,v 1.8 2007/07/15 22:52:15 marcel Exp $ + * $FreeBSD: src/libexec/rtld-elf/powerpc/reloc.c,v 1.9 2007/11/19 08:58:11 jb Exp $ */ #include <sys/param.h> @@ -38,6 +38,7 @@ #include <string.h> #include <unistd.h> #include <machine/cpu.h> +#include <machine/md_var.h> #include "debug.h" #include "rtld.h" ==== //depot/projects/dtrace/src/share/colldef/sv_SE.ISO8859-1.src#4 (text+ko) ==== @@ -2,7 +2,7 @@ # # (Based on the German de_DE.ISO_8859-1) # -# $FreeBSD: src/share/colldef/sv_SE.ISO8859-1.src,v 1.2 2001/06/10 13:43:47 ache Exp $ +# $FreeBSD: src/share/colldef/sv_SE.ISO8859-1.src,v 1.3 2007/11/19 12:39:02 ache Exp $ # charmap map.ISO8859-1 order \ @@ -22,7 +22,7 @@ F;G;H;(I,<I'>,<I!>,<I/>>,<I:>);\ J;...;M;(N,<N?>);(O,<O'>,<O!>,<O?>,<O/>>);\ P;...;T;(U,<U'>,<U!>,<U/>>,<U:>);\ - (V,W);X;(Y,<Y'>);Z;<AA>;(<A:>,<AE>);(<O:>,<O//>);\ + V;W;X;(Y,<Y'>);Z;<AA>;(<A:>,<AE>);(<O:>,<O//>);\ <TH>;\ # [;\\;];^;<':>;_;<'m>;<''>;`;\ @@ -32,7 +32,7 @@ f;g;h;(i,<i'>,<i!>,<i/>>,<i:>);\ j;...;m;(n,<n?>);(o,<o'>,<o!>,<o?>,<o/>>);\ p;...;t;(u,<u'>,<u!>,<u/>>,<u:>);\ - (v,w);x;(y,<y'>,<y:>);z;<aa>;(<a:>,<ae>);(<o:>,<o//>);\ + v;w;x;(y,<y'>,<y:>);z;<aa>;(<a:>,<ae>);(<o:>,<o//>);\ <th>;\ # \{;<NO>;|;<BB>;\};~;<.M>;<DG>;<My>;<DT>;\ ==== //depot/projects/dtrace/src/share/colldef/sv_SE.ISO8859-15.src#4 (text+ko) ==== @@ -2,7 +2,7 @@ # # (Based on the German de_DE.ISO_8859-15) # -# $FreeBSD: src/share/colldef/sv_SE.ISO8859-15.src,v 1.3 2001/06/10 13:43:47 ache Exp $ +# $FreeBSD: src/share/colldef/sv_SE.ISO8859-15.src,v 1.4 2007/11/19 12:39:02 ache Exp $ # charmap map.ISO8859-15 order \ @@ -22,7 +22,7 @@ F;G;H;(I,<I'>,<I!>,<I/>>,<I:>);\ J;...;M;(N,<N?>);(O,<O'>,<O!>,<O?>,<O/>>,<OE>);\ P;Q;R;(S,<S<>);T;(U,<U'>,<U!>,<U/>>,<U:>);\ - (V,W);X;(Y,<Y'>,<Y:>);(Z,<Z<>);<AA>;(<A:>,<AE>);(<O:>,<O//>);\ + V;W;X;(Y,<Y'>,<Y:>);(Z,<Z<>);<AA>;(<A:>,<AE>);(<O:>,<O//>);\ <TH>;\ # [;\\;];^;_;<'m>;`;\ @@ -32,7 +32,7 @@ f;g;h;(i,<i'>,<i!>,<i/>>,<i:>);\ j;...;m;(n,<n?>);(o,<o'>,<o!>,<o?>,<o/>>,<oe>);\ p;q;r;(s,<s<>,<ss>);t;(u,<u'>,<u!>,<u/>>,<u:>);\ - (v,w);x;(y,<y'>,<y:>);(z,<z<>);<aa>;(<a:>,<ae>);(<o:>,<o//>);\ + v;w;x;(y,<y'>,<y:>);(z,<z<>);<aa>;(<a:>,<ae>);(<o:>,<o//>);\ <th>;\ # \{;<NO>;|;\};~;<.M>;<DG>;<My>;<DT>;\ ==== //depot/projects/dtrace/src/share/mk/bsd.sys.mk#9 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/share/mk/bsd.sys.mk,v 1.41 2007/05/24 21:53:42 obrien Exp $ +# $FreeBSD: src/share/mk/bsd.sys.mk,v 1.42 2007/11/19 09:09:02 jb Exp $ # # This file contains common settings used for building FreeBSD # sources. ==== //depot/projects/dtrace/src/share/mk/sys.mk#13 (text+ko) ==== @@ -1,5 +1,5 @@ # from: @(#)sys.mk 8.2 (Berkeley) 3/21/94 -# $FreeBSD: src/share/mk/sys.mk,v 1.94 2007/11/05 23:08:34 cognet Exp $ +# $FreeBSD: src/share/mk/sys.mk,v 1.95 2007/11/19 09:01:58 jb Exp $ unix ?= We run FreeBSD, not UNIX. .FreeBSD ?= true ==== //depot/projects/dtrace/src/sys/conf/kmod.mk#11 (text+ko) ==== @@ -1,5 +1,5 @@ # From: @(#)bsd.prog.mk 5.26 (Berkeley) 6/25/91 -# $FreeBSD: src/sys/conf/kmod.mk,v 1.220 2007/11/12 21:51:36 jhb Exp $ +# $FreeBSD: src/sys/conf/kmod.mk,v 1.221 2007/11/19 16:24:10 ru Exp $ # # The include file <bsd.kmod.mk> handles building and installing loadable # kernel modules. @@ -79,7 +79,7 @@ . if !empty(CFLAGS:M-O[23s]) && empty(CFLAGS:M-fno-strict-aliasing) CFLAGS+= -fno-strict-aliasing . endif -#WERROR?= -Werror +WERROR?= -Werror .endif CFLAGS+= ${WERROR} CFLAGS+= -D_KERNEL ==== //depot/projects/dtrace/src/sys/dev/ata/ata-chipset.c#18 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/dev/ata/ata-chipset.c,v 1.204 2007/11/18 14:44:52 sos Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/ata-chipset.c,v 1.205 2007/11/19 18:05:48 sos Exp $"); #include "opt_ata.h" #include <sys/param.h> @@ -460,7 +460,11 @@ if (pci_read_config(dev, PCIR_PROGIF, 1) != PCIP_STORAGE_SATA_AHCI_1_0) return ENXIO; - sprintf(buffer, "%s AHCI controller", ata_pcivendor2str(dev)); + if (bootverbose) + sprintf(buffer, "%s (ID=%08x) AHCI controller", + ata_pcivendor2str(dev), pci_get_devid(dev)); + else + sprintf(buffer, "%s AHCI controller", ata_pcivendor2str(dev)); device_set_desc_copy(dev, buffer); ctlr->chipinit = ata_ahci_chipinit; return 0; @@ -591,16 +595,44 @@ if (action & (1 << ch->unit)) { u_int32_t istatus = ATA_INL(ctlr->r_res2, ATA_AHCI_P_IS + offset); + u_int32_t cstatus = ATA_INL(ctlr->r_res2, ATA_AHCI_P_CI + offset); /* clear interrupt(s) */ ATA_OUTL(ctlr->r_res2, ATA_AHCI_IS, action & (1 << ch->unit)); ATA_OUTL(ctlr->r_res2, ATA_AHCI_P_IS + offset, istatus); /* do we have any PHY events ? */ + /* XXX SOS check istatus phy bits */ ata_sata_phy_check_events(dev); - /* do we have any device action ? */ - return (!(ATA_INL(ctlr->r_res2, ATA_AHCI_P_CI + offset) & (1 << tag))); + /* do we have a potentially hanging engine to take care of? */ + if ((istatus & 0x78400050) && (cstatus & (1 << tag))) { + + u_int32_t cmd = ATA_INL(ctlr->r_res2, ATA_AHCI_P_CMD + offset); + int timeout = 0; + + /* kill off all activity on this channel */ + ATA_OUTL(ctlr->r_res2, ATA_AHCI_P_CMD + offset, + cmd & ~(ATA_AHCI_P_CMD_FRE | ATA_AHCI_P_CMD_ST)); + + /* XXX SOS this is not entirely wrong */ + do { + DELAY(1000); + if (timeout++ > 500) { + device_printf(dev, "stopping AHCI engine failed\n"); + break; + } + } while (ATA_INL(ctlr->r_res2, + ATA_AHCI_P_CMD + offset) & ATA_AHCI_P_CMD_CR); + + /* start operations on this channel */ + ATA_OUTL(ctlr->r_res2, ATA_AHCI_P_CMD + offset, + cmd | (ATA_AHCI_P_CMD_FRE | ATA_AHCI_P_CMD_ST)); + + return 1; + } + else + return (!(cstatus & (1 << tag))); } return 0; } @@ -655,7 +687,7 @@ ATA_IDX_OUTL(ch, ATA_SACTIVE, ATA_IDX_INL(ch, ATA_SACTIVE) & (1 << tag)); /* set command type bit */ - if (ch->devices & ATA_ATAPI_MASTER) + if (request->flags & ATA_R_ATAPI) ATA_OUTL(ctlr->r_res2, ATA_AHCI_P_CMD + offset, ATA_INL(ctlr->r_res2, ATA_AHCI_P_CMD + offset) | ATA_AHCI_P_CMD_ATAPI); ==== //depot/projects/dtrace/src/sys/dev/ata/atapi-cd.c#7 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/dev/ata/atapi-cd.c,v 1.194 2007/10/26 08:59:23 sos Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/atapi-cd.c,v 1.195 2007/11/19 18:05:48 sos Exp $"); #include "opt_ata.h" #include <sys/param.h> @@ -689,25 +689,32 @@ { device_t dev = pp->geom->softc; struct acd_softc *cdp = device_get_ivars(dev); + struct ata_request *request; + int8_t ccb[16] = { ATAPI_TEST_UNIT_READY, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }; int timeout = 60, track; - /* check for media present, waiting for loading medium just in case */ + if (!(request = ata_alloc_request())) + return ENOMEM; + + /* wait if drive is not finished loading the medium */ while (timeout--) { - if (!acd_mode_sense(dev, ATAPI_CDROM_CAP_PAGE, - (caddr_t)&cdp->cap, sizeof(cdp->cap)) && - cdp->cap.page_code == ATAPI_CDROM_CAP_PAGE) { - if ((cdp->cap.medium_type == MST_FMT_NONE) || - (cdp->cap.medium_type == MST_NO_DISC) || - (cdp->cap.medium_type == MST_DOOR_OPEN) || - (cdp->cap.medium_type == MST_FMT_ERROR)) - return EIO; - else - break; - } - pause("acdld", hz / 2); + bzero(request, sizeof(struct ata_request)); + request->dev = dev; + bcopy(ccb, request->u.atapi.ccb, 16); + request->flags = ATA_R_ATAPI; + request->timeout = 5; + ata_queue_request(request); + if (!request->error && + (request->u.atapi.sense.key == 2 || + request->u.atapi.sense.key == 7) && + request->u.atapi.sense.asc == 4 && + request->u.atapi.sense.ascq == 1) + pause("acdld", hz / 2); + else + break; } - if (timeout <= 0) - return EIO; + ata_free_request(request); if (pp->acr == 0) { acd_prevent_allow(dev, 1); ==== //depot/projects/dtrace/src/sys/kern/sys_pipe.c#9 (text+ko) ==== @@ -89,7 +89,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/kern/sys_pipe.c,v 1.192 2007/10/24 19:03:55 rwatson Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/sys_pipe.c,v 1.193 2007/11/19 15:05:20 dumbbell Exp $"); #include "opt_mac.h" @@ -880,6 +880,7 @@ wpipe->pipe_state &= ~PIPE_WANTR; wakeup(wpipe); } + pipeselwakeup(wpipe); wpipe->pipe_state |= PIPE_WANTW; pipeunlock(wpipe); error = msleep(wpipe, PIPE_MTX(wpipe), @@ -895,6 +896,7 @@ wpipe->pipe_state &= ~PIPE_WANTR; wakeup(wpipe); } + pipeselwakeup(wpipe); wpipe->pipe_state |= PIPE_WANTW; pipeunlock(wpipe); error = msleep(wpipe, PIPE_MTX(wpipe), @@ -1080,6 +1082,8 @@ wpipe->pipe_state &= ~PIPE_WANTR; wakeup(wpipe); } + pipeselwakeup(wpipe); + wpipe->pipe_state |= PIPE_WANTW; pipeunlock(wpipe); error = msleep(wpipe, PIPE_MTX(rpipe), PRIBIO | PCATCH, "pipbww", 0); ==== //depot/projects/dtrace/src/sys/nfsclient/nfs_vnops.c#10 (text+ko) ==== @@ -33,7 +33,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/nfsclient/nfs_vnops.c,v 1.276 2007/06/01 01:12:44 jeff Exp $"); +__FBSDID("$FreeBSD: src/sys/nfsclient/nfs_vnops.c,v 1.277 2007/11/19 16:03:21 rwatson Exp $"); /* * vnode op calls for Sun NFS version 2 and 3 @@ -1769,11 +1769,6 @@ VTONFS(vp)->n_attrstamp = 0; if (!wccflag) VTONFS(tdvp)->n_attrstamp = 0; - /* - * Kludge: Map EEXIST => 0 assuming that it is a reply to a retry. - */ - if (error == EEXIST) - error = 0; return (error); } @@ -1837,18 +1832,10 @@ nfsmout: /* - * If we get an EEXIST error, silently convert it to no-error - * in case of an NFS retry. + * If we do not have an error and we could not extract the newvp from + * the response due to the request being NFSv2, we have to do a + * lookup in order to obtain a newvp to return. */ - if (error == EEXIST) - error = 0; - - /* - * If we do not have (or no longer have) an error, and we could - * not extract the newvp from the response due to the request being - * NFSv2 or the error being EEXIST. We have to do a lookup in order - * to obtain a newvp to return. - */ if (error == 0 && newvp == NULL) { struct nfsnode *np = NULL; @@ -1925,15 +1912,7 @@ mtx_unlock(&(VTONFS(dvp))->n_mtx); if (!wccflag) VTONFS(dvp)->n_attrstamp = 0; - /* - * Kludge: Map EEXIST => 0 assuming that you have a reply to a retry - * if we can succeed in looking up the directory. - */ - if (error == EEXIST || (!error && !gotvp)) { - if (newvp) { - vput(newvp); - newvp = NULL; - } + if (error == 0 && newvp == NULL) { error = nfs_lookitup(dvp, cnp->cn_nameptr, len, cnp->cn_cred, cnp->cn_thread, &np); if (!error) {
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200711192022.lAJKMMc5042830>