svn commit: r284337 - head/sys/mips/conf
Author: allanjude (doc committer) Date: Sat Jun 13 06:09:00 2015 New Revision: 284337 URL: https://svnweb.freebsd.org/changeset/base/284337 Log: Add if_vlan, ipfw{,_nat}.ko, and libalias to the AR934X kernel config This makes the TP-Link WDR3600 routers more useful Differential Revision:https://reviews.freebsd.org/D2780 Approved by: adrian Sponsored by: ScaleEngine Inc. Modified: head/sys/mips/conf/AR934X_BASE Modified: head/sys/mips/conf/AR934X_BASE == --- head/sys/mips/conf/AR934X_BASE Sat Jun 13 05:55:26 2015 (r284336) +++ head/sys/mips/conf/AR934X_BASE Sat Jun 13 06:09:00 2015 (r284337) @@ -20,7 +20,7 @@ files "../atheros/files.ar71xx" hints "AR934X_BASE.hints" makeoptionsDEBUG=-g#Build kernel with gdb(1) debug symbols -makeoptionsMODULES_OVERRIDE="random gpio ar71xx if_gif if_gre if_bridge bridgestp usb wlan wlan_xauth wlan_acl wlan_wep wlan_tkip wlan_ccmp wlan_rssadapt wlan_amrr ath ath_ahb hwpmc" +makeoptionsMODULES_OVERRIDE="random gpio ar71xx if_gif if_gre if_vlan if_bridge bridgestp usb wlan wlan_xauth wlan_acl wlan_wep wlan_tkip wlan_ccmp wlan_rssadapt wlan_amrr ath ath_ahb hwpmc ipfw ipfw_nat libalias" # makeoptions MODULES_OVERRIDE="" optionsDDB ___ svn-src-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r284336 - head/sys/dev/acpi_support
Author: allanjude (doc committer) Date: Sat Jun 13 05:55:26 2015 New Revision: 284336 URL: https://svnweb.freebsd.org/changeset/base/284336 Log: acpi_ibm.ko panics if SMBIOS information is not available Add a check for NULL before strcmp on smbios information incase it is not populated Differential Revision:https://reviews.freebsd.org/D2750 Reviewed by: ngie, jhb Approved by: rpaulo Sponsored by: ScaleEngine Inc. Modified: head/sys/dev/acpi_support/acpi_ibm.c Modified: head/sys/dev/acpi_support/acpi_ibm.c == --- head/sys/dev/acpi_support/acpi_ibm.cSat Jun 13 01:28:19 2015 (r284335) +++ head/sys/dev/acpi_support/acpi_ibm.cSat Jun 13 05:55:26 2015 (r284336) @@ -485,6 +485,9 @@ acpi_ibm_attach(device_t dev) /* Enable per-model events. */ maker = kern_getenv("smbios.system.maker"); product = kern_getenv("smbios.system.product"); + if (maker != NULL && product != NULL) + goto nosmbios; + for (i = 0; i < nitems(acpi_ibm_models); i++) { if (strcmp(maker, acpi_ibm_models[i].maker) == 0 && strcmp(product, acpi_ibm_models[i].product) == 0) { @@ -494,6 +497,8 @@ acpi_ibm_attach(device_t dev) ACPI_SERIAL_END(ibm); } } + +nosmbios: freeenv(maker); freeenv(product); ___ svn-src-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
Re: svn commit: r284198 - head/bin/ls
On Fri, Jun 12, 2015 at 08:43:09PM -0400, Alexander Kabaev wrote: > On Wed, 10 Jun 2015 01:27:39 + (UTC) > Marcel Moolenaar wrote: > > > Author: marcel > > Date: Wed Jun 10 01:27:38 2015 > > New Revision: 284198 > > URL: https://svnweb.freebsd.org/changeset/base/284198 > > > > Log: > > Convert ls(1) to use libxo(3). > > > > Obtained from:Phil Shafer > > Sponsored by: Juniper Networks, Inc. > > > > > This broke all code that pipes output of the ls command to pipeline, > such as 'ls | wc -l'. ls never exits and never output anything. Is > there any purpose to libxo other than breaking stuff, which it achieves > so splendidly? > -1 for libxo, which also makes code almost unreadable. -- Steve ___ svn-src-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r284335 - head/sys/dev/bxe
Author: davidcs Date: Sat Jun 13 01:28:19 2015 New Revision: 284335 URL: https://svnweb.freebsd.org/changeset/base/284335 Log: PHY LOCK acquires the hardware lock via bxe_acquire_phy_lock() and releases it via bxe_release_phy_lock(). It was simply acquiring a mutex earlier which can cause the PHY to use bogus values. Fixes intermittent link failures. bxe_ioctl() completes all functions within its context as opposed to a taskqueue earlier. bxe_handle_rx_mode_tq() no longer required. bxe_set_rx_mode() handles the functionality within its context Submitted by:gary.zambr...@qlogic.com MFC after:5 days Modified: head/sys/dev/bxe/bxe.c head/sys/dev/bxe/bxe.h head/sys/dev/bxe/ecore_reg.h Modified: head/sys/dev/bxe/bxe.c == --- head/sys/dev/bxe/bxe.c Fri Jun 12 22:05:04 2015(r284334) +++ head/sys/dev/bxe/bxe.c Sat Jun 13 01:28:19 2015(r284335) @@ -726,7 +726,6 @@ static __noinline int bxe_nic_unload(str uint8_t keep_link); static void bxe_handle_sp_tq(void *context, int pending); -static void bxe_handle_rx_mode_tq(void *context, int pending); static void bxe_handle_fp_tq(void *context, int pending); @@ -1174,7 +1173,17 @@ bxe_release_hw_lock(struct bxe_softc *sc REG_WR(sc, hw_lock_control_reg, resource_bit); return (0); } +static void bxe_acquire_phy_lock(struct bxe_softc *sc) +{ + BXE_PHY_LOCK(sc); + bxe_acquire_hw_lock(sc,HW_LOCK_RESOURCE_MDIO); +} +static void bxe_release_phy_lock(struct bxe_softc *sc) +{ + bxe_release_hw_lock(sc,HW_LOCK_RESOURCE_MDIO); + BXE_PHY_UNLOCK(sc); +} /* * Per pf misc lock must be acquired before the per port mcp lock. Otherwise, * had we done things the other way around, if two pfs from the same port @@ -4764,28 +4773,6 @@ bxe_handle_chip_tq(void *context, switch (work) { -case CHIP_TQ_START: -if ((if_getflags(sc->ifp) & IFF_UP) && -!(if_getdrvflags(sc->ifp) & IFF_DRV_RUNNING)) { -/* start the interface */ -BLOGD(sc, DBG_LOAD, "Starting the interface...\n"); -BXE_CORE_LOCK(sc); -bxe_init_locked(sc); -BXE_CORE_UNLOCK(sc); -} -break; - -case CHIP_TQ_STOP: -if (!(if_getflags(sc->ifp) & IFF_UP) && -(if_getdrvflags(sc->ifp) & IFF_DRV_RUNNING)) { -/* bring down the interface */ -BLOGD(sc, DBG_LOAD, "Stopping the interface...\n"); -bxe_periodic_stop(sc); -BXE_CORE_LOCK(sc); -bxe_stop_locked(sc); -BXE_CORE_UNLOCK(sc); -} -break; case CHIP_TQ_REINIT: if (if_getdrvflags(sc->ifp) & IFF_DRV_RUNNING) { @@ -4859,21 +4846,22 @@ bxe_ioctl(if_t ifp, /* toggle the interface state up or down */ BLOGD(sc, DBG_IOCTL, "Received SIOCSIFFLAGS ioctl\n"); + BXE_CORE_LOCK(sc); /* check if the interface is up */ if (if_getflags(ifp) & IFF_UP) { if (if_getdrvflags(ifp) & IFF_DRV_RUNNING) { /* set the receive mode flags */ bxe_set_rx_mode(sc); } else { -atomic_store_rel_long(&sc->chip_tq_flags, CHIP_TQ_START); -taskqueue_enqueue(sc->chip_tq, &sc->chip_tq_task); + bxe_init_locked(sc); } } else { if (if_getdrvflags(ifp) & IFF_DRV_RUNNING) { -atomic_store_rel_long(&sc->chip_tq_flags, CHIP_TQ_STOP); -taskqueue_enqueue(sc->chip_tq, &sc->chip_tq_task); + bxe_periodic_stop(sc); + bxe_stop_locked(sc); } } + BXE_CORE_UNLOCK(sc); break; @@ -4885,7 +4873,9 @@ bxe_ioctl(if_t ifp, /* check if the interface is up */ if (if_getdrvflags(ifp) & IFF_DRV_RUNNING) { /* set the receive mode flags */ + BXE_CORE_LOCK(sc); bxe_set_rx_mode(sc); + BXE_CORE_UNLOCK(sc); } break; @@ -5044,8 +5034,11 @@ bxe_ioctl(if_t ifp, if (reinit && (if_getdrvflags(sc->ifp) & IFF_DRV_RUNNING)) { BLOGD(sc, DBG_LOAD | DBG_IOCTL, "Re-initializing hardware from IOCTL change\n"); -atomic_store_rel_long(&sc->chip_tq_flags, CHIP_TQ_REINIT); -taskqueue_enqueue(sc->chip_tq, &sc->chip_tq_task); + bxe_periodic_stop(sc); + BXE_CORE_LOCK(sc); + bxe_stop_locked(sc); + bxe_init_locked(sc); + BXE_CORE_UNLOCK(sc); } return (error); @@ -7487,8 +7480,7 @@ bxe_attn_int_asserted(struct bxe_softc * if (asserted & ATTN_HARD_WIRED_MASK) { if (asserted & ATTN_NIG_FOR_FUNC) { -BXE_PHY_LOCK(sc); - + bxe_acquire_phy_lock(sc); /* save nig interrupt mask */ nig_mask = REG_RD(sc, nig_int_mask_addr); @@ -7581
Re: svn commit: r284198 - head/bin/ls
On Fri, 12 Jun 2015 20:43:09 -0400 Alexander Kabaev wrote: > On Wed, 10 Jun 2015 01:27:39 + (UTC) > Marcel Moolenaar wrote: > > > Author: marcel > > Date: Wed Jun 10 01:27:38 2015 > > New Revision: 284198 > > URL: https://svnweb.freebsd.org/changeset/base/284198 > > > > Log: > > Convert ls(1) to use libxo(3). > > > > Obtained from:Phil Shafer > > Sponsored by: Juniper Networks, Inc. > > > > > This broke all code that pipes output of the ls command to pipeline, > such as 'ls | wc -l'. ls never exits and never output anything. Is > there any purpose to libxo other than breaking stuff, which it > achieves so splendidly? > Just to clarify, this happens because libxo cannot display file names in encodings current locate cannot handle. xo_format_string_direct function then spins indefinitely trying to call xo_failure(xop, "invalid mbs char: %02hhx", *cp) over and over, which, of course, produces nothing and does not advance the cp pointer either, resulting in apparent ls hang. -- Alexander Kabaev pgpsCryaneAL4.pgp Description: OpenPGP digital signature
Re: svn commit: r284198 - head/bin/ls
On Wed, 10 Jun 2015 01:27:39 + (UTC) Marcel Moolenaar wrote: > Author: marcel > Date: Wed Jun 10 01:27:38 2015 > New Revision: 284198 > URL: https://svnweb.freebsd.org/changeset/base/284198 > > Log: > Convert ls(1) to use libxo(3). > > Obtained from: Phil Shafer > Sponsored by: Juniper Networks, Inc. > This broke all code that pipes output of the ls command to pipeline, such as 'ls | wc -l'. ls never exits and never output anything. Is there any purpose to libxo other than breaking stuff, which it achieves so splendidly? -- Alexander Kabaev pgpzkVIZZnztp.pgp Description: OpenPGP digital signature
svn commit: r284334 - stable/10/sys/fs/nfsserver
Author: rmacklem Date: Fri Jun 12 22:05:04 2015 New Revision: 284334 URL: https://svnweb.freebsd.org/changeset/base/284334 Log: MFC: r283753 Make the NFS server use shared vnode locks for a few cases that are allowed by the VFS/VOP interface instead of using exclusive locks. Modified: stable/10/sys/fs/nfsserver/nfs_nfsdsocket.c Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/fs/nfsserver/nfs_nfsdsocket.c == --- stable/10/sys/fs/nfsserver/nfs_nfsdsocket.c Fri Jun 12 19:42:27 2015 (r284333) +++ stable/10/sys/fs/nfsserver/nfs_nfsdsocket.c Fri Jun 12 22:05:04 2015 (r284334) @@ -440,9 +440,12 @@ nfsrvd_dorpc(struct nfsrv_descript *nd, if (nd->nd_procnum == NFSPROC_READ || nd->nd_procnum == NFSPROC_WRITE || nd->nd_procnum == NFSPROC_READDIR || + nd->nd_procnum == NFSPROC_READDIRPLUS || nd->nd_procnum == NFSPROC_READLINK || nd->nd_procnum == NFSPROC_GETATTR || - nd->nd_procnum == NFSPROC_ACCESS) + nd->nd_procnum == NFSPROC_ACCESS || + nd->nd_procnum == NFSPROC_FSSTAT || + nd->nd_procnum == NFSPROC_FSINFO) lktype = LK_SHARED; else lktype = LK_EXCLUSIVE; @@ -544,7 +547,7 @@ static void nfsrvd_compound(struct nfsrv_descript *nd, int isdgram, u_char *tag, int taglen, u_int32_t minorvers, NFSPROC_T *p) { - int i, op, op0 = 0; + int i, lktype, op, op0 = 0; u_int32_t *tl; struct nfsclient *clp, *nclp; int numops, error = 0, igotlock; @@ -953,11 +956,15 @@ nfsrvd_compound(struct nfsrv_descript *n panic("nfsrvd_compound"); if (nfsv4_opflag[op].needscfh) { if (vp != NULL) { - if (nfsv4_opflag[op].modifyfs) + lktype = nfsv4_opflag[op].lktype; + if (nfsv4_opflag[op].modifyfs) { vn_start_write(vp, &temp_mp, V_WAIT); - if (NFSVOPLOCK(vp, nfsv4_opflag[op].lktype) - == 0) + if (op == NFSV4OP_WRITE && + MNT_SHARED_WRITES(temp_mp)) + lktype = LK_SHARED; + } + if (NFSVOPLOCK(vp, lktype) == 0) VREF(vp); else nd->nd_repstat = NFSERR_PERM; ___ svn-src-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
Re: svn commit: r284274 - head/share/mk
On 11 Jun 2015, at 18:49, Andrew Turner wrote: > > Author: andrew > Date: Thu Jun 11 16:49:14 2015 > New Revision: 284274 > URL: https://svnweb.freebsd.org/changeset/base/284274 > > Log: > Enable clang on armeb, it is now able to build targeting armeb. This is > the last arm platform to move away from gcc. > > Tested by: jmg Woohoo! :-) signature.asc Description: Message signed with OpenPGP using GPGMail
svn commit: r284333 - head/release/arm
Author: gjb Date: Fri Jun 12 19:42:27 2015 New Revision: 284333 URL: https://svnweb.freebsd.org/changeset/base/284333 Log: Reduce the arm/armv6 image size from 1G to 480M. Since the images are effectively mostly zeros at 1G, reduce the size to allow installation on smaller SD cards, such as 512Mb. While here, stop writing the /boot.txt file on the WANDBOARD, which isn't used anyway. Discussed with: imp MFC after:3 days Sponsored by: The FreeBSD Foundation Modified: head/release/arm/BEAGLEBONE.conf head/release/arm/CUBOX-HUMMINGBOARD.conf head/release/arm/GUMSTIX.conf head/release/arm/PANDABOARD.conf head/release/arm/RPI-B.conf head/release/arm/RPI2.conf head/release/arm/WANDBOARD.conf Modified: head/release/arm/BEAGLEBONE.conf == --- head/release/arm/BEAGLEBONE.confFri Jun 12 18:59:29 2015 (r284332) +++ head/release/arm/BEAGLEBONE.confFri Jun 12 19:42:27 2015 (r284333) @@ -9,7 +9,7 @@ EMBEDDED_TARGET_ARCH="armv6" EMBEDDEDPORTS="sysutils/u-boot-beaglebone" KERNEL="BEAGLEBONE" WORLD_FLAGS="${WORLD_FLAGS} UBLDR_LOADADDR=0x8800" -IMAGE_SIZE="1G" +IMAGE_SIZE="480M" PART_SCHEME="MBR" FAT_SIZE="2m" FAT_TYPE="12" Modified: head/release/arm/CUBOX-HUMMINGBOARD.conf == --- head/release/arm/CUBOX-HUMMINGBOARD.confFri Jun 12 18:59:29 2015 (r284332) +++ head/release/arm/CUBOX-HUMMINGBOARD.confFri Jun 12 19:42:27 2015 (r284333) @@ -9,7 +9,7 @@ EMBEDDED_TARGET_ARCH="armv6" EMBEDDEDPORTS="sysutils/u-boot-cubox-hummingboard" KERNEL="IMX6" WORLD_FLAGS="${WORLD_FLAGS} UBLDR_LOADADDR=0x1200" -IMAGE_SIZE="1G" +IMAGE_SIZE="480M" PART_SCHEME="MBR" FAT_SIZE="50m -b 16384" FAT_TYPE="16" Modified: head/release/arm/GUMSTIX.conf == --- head/release/arm/GUMSTIX.conf Fri Jun 12 18:59:29 2015 (r284332) +++ head/release/arm/GUMSTIX.conf Fri Jun 12 19:42:27 2015 (r284333) @@ -9,7 +9,7 @@ EMBEDDED_TARGET_ARCH="armv6" EMBEDDEDPORTS="sysutils/u-boot-duovero" KERNEL="GUMSTIX" WORLD_FLAGS="${WORLD_FLAGS} UBLDR_LOADADDR=0x8800" -IMAGE_SIZE="1G" +IMAGE_SIZE="480M" PART_SCHEME="MBR" FAT_SIZE="2m" FAT_TYPE="12" Modified: head/release/arm/PANDABOARD.conf == --- head/release/arm/PANDABOARD.confFri Jun 12 18:59:29 2015 (r284332) +++ head/release/arm/PANDABOARD.confFri Jun 12 19:42:27 2015 (r284333) @@ -9,7 +9,7 @@ EMBEDDED_TARGET_ARCH="armv6" EMBEDDEDPORTS="sysutils/u-boot-pandaboard" KERNEL="PANDABOARD" WORLD_FLAGS="${WORLD_FLAGS} UBLDR_LOADADDR=0x8800" -IMAGE_SIZE="1G" +IMAGE_SIZE="480M" PART_SCHEME="MBR" FAT_SIZE="2m" FAT_TYPE="12" Modified: head/release/arm/RPI-B.conf == --- head/release/arm/RPI-B.conf Fri Jun 12 18:59:29 2015(r284332) +++ head/release/arm/RPI-B.conf Fri Jun 12 19:42:27 2015(r284333) @@ -9,7 +9,7 @@ EMBEDDED_TARGET_ARCH="armv6" EMBEDDEDPORTS="sysutils/u-boot-rpi" KERNEL="RPI-B" WORLD_FLAGS="${WORLD_FLAGS} UBLDR_LOADADDR=0x200" -IMAGE_SIZE="1G" +IMAGE_SIZE="480M" PART_SCHEME="MBR" FAT_SIZE="17m" FAT_TYPE="16" Modified: head/release/arm/RPI2.conf == --- head/release/arm/RPI2.conf Fri Jun 12 18:59:29 2015(r284332) +++ head/release/arm/RPI2.conf Fri Jun 12 19:42:27 2015(r284333) @@ -9,7 +9,7 @@ EMBEDDED_TARGET_ARCH="armv6" EMBEDDEDPORTS="sysutils/u-boot-rpi2" KERNEL="RPI2" WORLD_FLAGS="${WORLD_FLAGS} UBLDR_LOADADDR=0x200" -IMAGE_SIZE="1G" +IMAGE_SIZE="480M" PART_SCHEME="MBR" FAT_SIZE="50m" FAT_TYPE="16" Modified: head/release/arm/WANDBOARD.conf == --- head/release/arm/WANDBOARD.conf Fri Jun 12 18:59:29 2015 (r284332) +++ head/release/arm/WANDBOARD.conf Fri Jun 12 19:42:27 2015 (r284333) @@ -9,7 +9,7 @@ EMBEDDED_TARGET_ARCH="armv6" EMBEDDEDPORTS="sysutils/u-boot-wandboard" KERNEL="IMX6" WORLD_FLAGS="${WORLD_FLAGS} UBLDR_LOADADDR=0x1200" -IMAGE_SIZE="1G" +IMAGE_SIZE="480M" PART_SCHEME="MBR" FAT_SIZE="50m -b 16384" FAT_TYPE="16" @@ -28,9 +28,6 @@ arm_install_uboot() { chroot ${CHROOTDIR} mount_msdosfs /dev/${mddev}s1 ${FATMOUNT} chroot ${CHROOTDIR} mount /dev/${mddev}s2a ${UFSMOUNT} chroot ${CHROOTDIR} cp -p ${UFSMOUNT}/boot/ubldr ${FATMOUNT}/ubldr - chroot ${CHROOTDIR} /bin/sh -c 'echo \ - setenv fdt_file wandboard-quad.dtb\; fatload mmc 0:1 1100 ubldr\; bootelf 1100\; \ - > ${FATMOUNT}/boot.txt' chroot ${CHROOTDIR} touch ${UFSMOUNT}/firstboot sync
svn commit: r284332 - head/sys/netinet
Author: tuexen Date: Fri Jun 12 18:59:29 2015 New Revision: 284332 URL: https://svnweb.freebsd.org/changeset/base/284332 Log: Fix the reporting of the PMTUD state for specific paths. MFC after: 3 days Modified: head/sys/netinet/sctp_usrreq.c Modified: head/sys/netinet/sctp_usrreq.c == --- head/sys/netinet/sctp_usrreq.c Fri Jun 12 17:20:09 2015 (r284331) +++ head/sys/netinet/sctp_usrreq.c Fri Jun 12 18:59:29 2015 (r284332) @@ -2464,9 +2464,9 @@ flags_out: } /* get flags for PMTU */ if (net->dest_state & SCTP_ADDR_NO_PMTUD) { - paddrp->spp_flags |= SPP_PMTUD_ENABLE; - } else { paddrp->spp_flags |= SPP_PMTUD_DISABLE; + } else { + paddrp->spp_flags |= SPP_PMTUD_ENABLE; } if (net->dscp & 0x01) { paddrp->spp_dscp = net->dscp & 0xfc; ___ svn-src-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r284331 - head/sys/netinet
Author: tuexen Date: Fri Jun 12 17:20:09 2015 New Revision: 284331 URL: https://svnweb.freebsd.org/changeset/base/284331 Log: Code cleanup. MFC after: 3 days Modified: head/sys/netinet/sctp_output.c Modified: head/sys/netinet/sctp_output.c == --- head/sys/netinet/sctp_output.c Fri Jun 12 17:10:19 2015 (r284330) +++ head/sys/netinet/sctp_output.c Fri Jun 12 17:20:09 2015 (r284331) @@ -8109,6 +8109,12 @@ again_one_more_time: * it is used to do appropriate * source address selection. */ + if (*now_filled == 0) { + (void)SCTP_GETTIME_TIMEVAL(now); + *now_filled = 1; + } + net->last_sent_time = *now; + hbflag = 0; if ((error = sctp_lowlevel_chunk_output(inp, stcb, net, (struct sockaddr *)&net->ro._l_addr, outchain, auth_offset, auth, @@ -8119,21 +8125,18 @@ again_one_more_time: net->port, NULL, 0, 0, so_locked))) { - if (error == ENOBUFS) { - asoc->ifp_had_enobuf = 1; - SCTP_STAT_INCR(sctps_lowlevelerr); - } + /* +* error, we could not +* output +*/ + SCTPDBG(SCTP_DEBUG_OUTPUT3, "Gak send error %d\n", error); if (from_where == 0) { SCTP_STAT_INCR(sctps_lowlevelerrusr); } - if (*now_filled == 0) { - (void)SCTP_GETTIME_TIMEVAL(&net->last_sent_time); - *now_filled = 1; - *now = net->last_sent_time; - } else { - net->last_sent_time = *now; + if (error == ENOBUFS) { + asoc->ifp_had_enobuf = 1; + SCTP_STAT_INCR(sctps_lowlevelerr); } - hbflag = 0; /* error, could not output */ if (error == EHOSTUNREACH) { /* @@ -8145,16 +8148,9 @@ again_one_more_time: } *reason_code = 7; break; - } else - asoc->ifp_had_enobuf = 0; - if (*now_filled == 0) { - (void)SCTP_GETTIME_TIMEVAL(&net->last_sent_time); - *now_filled = 1; - *now = net->last_sent_time; } else { - net->last_sent_time = *now; + asoc->ifp_had_enobuf = 0; } - hbflag = 0; /* * increase the number we sent, if a * cookie is sent we don't tell them @@ -8387,6 +8383,15 @@ again_one_more_time: sctp_timer_start(SCTP_TIMER_TYPE_COOKIE, inp, stcb, net); cookie = 0; } + /* Only HB or ASCONF advances time */ + if (hbflag) { +
svn commit: r284330 - in stable/10: crypto/openssl crypto/openssl/crypto crypto/openssl/crypto/hmac crypto/openssl/ssl secure/lib/libcrypto secure/lib/libcrypto/man secure/lib/libssl/man secure/usr...
Author: jkim Date: Fri Jun 12 17:10:19 2015 New Revision: 284330 URL: https://svnweb.freebsd.org/changeset/base/284330 Log: MFC: r284329 Merge OpenSSL 1.0.1o. Note it is instantly merged because it restores ABI compatibility broken by the previous OpenSSL 1.0.1n. Relnotes: yes Modified: stable/10/crypto/openssl/CHANGES stable/10/crypto/openssl/Makefile stable/10/crypto/openssl/NEWS stable/10/crypto/openssl/README stable/10/crypto/openssl/crypto/hmac/hmac.c stable/10/crypto/openssl/crypto/hmac/hmac.h stable/10/crypto/openssl/crypto/hmac/hmactest.c stable/10/crypto/openssl/crypto/opensslv.h stable/10/crypto/openssl/ssl/t1_lib.c stable/10/secure/lib/libcrypto/Makefile.inc stable/10/secure/lib/libcrypto/man/ASN1_OBJECT_new.3 stable/10/secure/lib/libcrypto/man/ASN1_STRING_length.3 stable/10/secure/lib/libcrypto/man/ASN1_STRING_new.3 stable/10/secure/lib/libcrypto/man/ASN1_STRING_print_ex.3 stable/10/secure/lib/libcrypto/man/ASN1_generate_nconf.3 stable/10/secure/lib/libcrypto/man/BIO_ctrl.3 stable/10/secure/lib/libcrypto/man/BIO_f_base64.3 stable/10/secure/lib/libcrypto/man/BIO_f_buffer.3 stable/10/secure/lib/libcrypto/man/BIO_f_cipher.3 stable/10/secure/lib/libcrypto/man/BIO_f_md.3 stable/10/secure/lib/libcrypto/man/BIO_f_null.3 stable/10/secure/lib/libcrypto/man/BIO_f_ssl.3 stable/10/secure/lib/libcrypto/man/BIO_find_type.3 stable/10/secure/lib/libcrypto/man/BIO_new.3 stable/10/secure/lib/libcrypto/man/BIO_new_CMS.3 stable/10/secure/lib/libcrypto/man/BIO_push.3 stable/10/secure/lib/libcrypto/man/BIO_read.3 stable/10/secure/lib/libcrypto/man/BIO_s_accept.3 stable/10/secure/lib/libcrypto/man/BIO_s_bio.3 stable/10/secure/lib/libcrypto/man/BIO_s_connect.3 stable/10/secure/lib/libcrypto/man/BIO_s_fd.3 stable/10/secure/lib/libcrypto/man/BIO_s_file.3 stable/10/secure/lib/libcrypto/man/BIO_s_mem.3 stable/10/secure/lib/libcrypto/man/BIO_s_null.3 stable/10/secure/lib/libcrypto/man/BIO_s_socket.3 stable/10/secure/lib/libcrypto/man/BIO_set_callback.3 stable/10/secure/lib/libcrypto/man/BIO_should_retry.3 stable/10/secure/lib/libcrypto/man/BN_BLINDING_new.3 stable/10/secure/lib/libcrypto/man/BN_CTX_new.3 stable/10/secure/lib/libcrypto/man/BN_CTX_start.3 stable/10/secure/lib/libcrypto/man/BN_add.3 stable/10/secure/lib/libcrypto/man/BN_add_word.3 stable/10/secure/lib/libcrypto/man/BN_bn2bin.3 stable/10/secure/lib/libcrypto/man/BN_cmp.3 stable/10/secure/lib/libcrypto/man/BN_copy.3 stable/10/secure/lib/libcrypto/man/BN_generate_prime.3 stable/10/secure/lib/libcrypto/man/BN_mod_inverse.3 stable/10/secure/lib/libcrypto/man/BN_mod_mul_montgomery.3 stable/10/secure/lib/libcrypto/man/BN_mod_mul_reciprocal.3 stable/10/secure/lib/libcrypto/man/BN_new.3 stable/10/secure/lib/libcrypto/man/BN_num_bytes.3 stable/10/secure/lib/libcrypto/man/BN_rand.3 stable/10/secure/lib/libcrypto/man/BN_set_bit.3 stable/10/secure/lib/libcrypto/man/BN_swap.3 stable/10/secure/lib/libcrypto/man/BN_zero.3 stable/10/secure/lib/libcrypto/man/CMS_add0_cert.3 stable/10/secure/lib/libcrypto/man/CMS_add1_recipient_cert.3 stable/10/secure/lib/libcrypto/man/CMS_add1_signer.3 stable/10/secure/lib/libcrypto/man/CMS_compress.3 stable/10/secure/lib/libcrypto/man/CMS_decrypt.3 stable/10/secure/lib/libcrypto/man/CMS_encrypt.3 stable/10/secure/lib/libcrypto/man/CMS_final.3 stable/10/secure/lib/libcrypto/man/CMS_get0_RecipientInfos.3 stable/10/secure/lib/libcrypto/man/CMS_get0_SignerInfos.3 stable/10/secure/lib/libcrypto/man/CMS_get0_type.3 stable/10/secure/lib/libcrypto/man/CMS_get1_ReceiptRequest.3 stable/10/secure/lib/libcrypto/man/CMS_sign.3 stable/10/secure/lib/libcrypto/man/CMS_sign_receipt.3 stable/10/secure/lib/libcrypto/man/CMS_uncompress.3 stable/10/secure/lib/libcrypto/man/CMS_verify.3 stable/10/secure/lib/libcrypto/man/CMS_verify_receipt.3 stable/10/secure/lib/libcrypto/man/CONF_modules_free.3 stable/10/secure/lib/libcrypto/man/CONF_modules_load_file.3 stable/10/secure/lib/libcrypto/man/CRYPTO_set_ex_data.3 stable/10/secure/lib/libcrypto/man/DH_generate_key.3 stable/10/secure/lib/libcrypto/man/DH_generate_parameters.3 stable/10/secure/lib/libcrypto/man/DH_get_ex_new_index.3 stable/10/secure/lib/libcrypto/man/DH_new.3 stable/10/secure/lib/libcrypto/man/DH_set_method.3 stable/10/secure/lib/libcrypto/man/DH_size.3 stable/10/secure/lib/libcrypto/man/DSA_SIG_new.3 stable/10/secure/lib/libcrypto/man/DSA_do_sign.3 stable/10/secure/lib/libcrypto/man/DSA_dup_DH.3 stable/10/secure/lib/libcrypto/man/DSA_generate_key.3 stable/10/secure/lib/libcrypto/man/DSA_generate_parameters.3 stable/10/secure/lib/libcrypto/man/DSA_get_ex_new_index.3 stable/10/secure/lib/libcrypto/man/DSA_new.3 stable/10/secure/lib/libcrypto/man/DSA_set_method.3 stable/10/secure/lib/libcrypto/man/DSA_sign.3 stable/10/secure/lib/libcrypto/man/DSA_size.3 stable/10/secure/lib/libcrypto/man/ERR_GET_LIB.3
svn commit: r284329 - in head: crypto/openssl crypto/openssl/crypto crypto/openssl/crypto/hmac crypto/openssl/ssl secure/lib/libcrypto secure/lib/libcrypto/man secure/lib/libssl/man secure/usr.bin/...
Author: jkim Date: Fri Jun 12 16:48:26 2015 New Revision: 284329 URL: https://svnweb.freebsd.org/changeset/base/284329 Log: Merge OpenSSL 1.0.1o. Modified: head/crypto/openssl/CHANGES head/crypto/openssl/Makefile head/crypto/openssl/NEWS head/crypto/openssl/README head/crypto/openssl/crypto/hmac/hmac.c head/crypto/openssl/crypto/hmac/hmac.h head/crypto/openssl/crypto/hmac/hmactest.c head/crypto/openssl/crypto/opensslv.h head/crypto/openssl/ssl/t1_lib.c head/secure/lib/libcrypto/Makefile.inc head/secure/lib/libcrypto/man/ASN1_OBJECT_new.3 head/secure/lib/libcrypto/man/ASN1_STRING_length.3 head/secure/lib/libcrypto/man/ASN1_STRING_new.3 head/secure/lib/libcrypto/man/ASN1_STRING_print_ex.3 head/secure/lib/libcrypto/man/ASN1_generate_nconf.3 head/secure/lib/libcrypto/man/BIO_ctrl.3 head/secure/lib/libcrypto/man/BIO_f_base64.3 head/secure/lib/libcrypto/man/BIO_f_buffer.3 head/secure/lib/libcrypto/man/BIO_f_cipher.3 head/secure/lib/libcrypto/man/BIO_f_md.3 head/secure/lib/libcrypto/man/BIO_f_null.3 head/secure/lib/libcrypto/man/BIO_f_ssl.3 head/secure/lib/libcrypto/man/BIO_find_type.3 head/secure/lib/libcrypto/man/BIO_new.3 head/secure/lib/libcrypto/man/BIO_new_CMS.3 head/secure/lib/libcrypto/man/BIO_push.3 head/secure/lib/libcrypto/man/BIO_read.3 head/secure/lib/libcrypto/man/BIO_s_accept.3 head/secure/lib/libcrypto/man/BIO_s_bio.3 head/secure/lib/libcrypto/man/BIO_s_connect.3 head/secure/lib/libcrypto/man/BIO_s_fd.3 head/secure/lib/libcrypto/man/BIO_s_file.3 head/secure/lib/libcrypto/man/BIO_s_mem.3 head/secure/lib/libcrypto/man/BIO_s_null.3 head/secure/lib/libcrypto/man/BIO_s_socket.3 head/secure/lib/libcrypto/man/BIO_set_callback.3 head/secure/lib/libcrypto/man/BIO_should_retry.3 head/secure/lib/libcrypto/man/BN_BLINDING_new.3 head/secure/lib/libcrypto/man/BN_CTX_new.3 head/secure/lib/libcrypto/man/BN_CTX_start.3 head/secure/lib/libcrypto/man/BN_add.3 head/secure/lib/libcrypto/man/BN_add_word.3 head/secure/lib/libcrypto/man/BN_bn2bin.3 head/secure/lib/libcrypto/man/BN_cmp.3 head/secure/lib/libcrypto/man/BN_copy.3 head/secure/lib/libcrypto/man/BN_generate_prime.3 head/secure/lib/libcrypto/man/BN_mod_inverse.3 head/secure/lib/libcrypto/man/BN_mod_mul_montgomery.3 head/secure/lib/libcrypto/man/BN_mod_mul_reciprocal.3 head/secure/lib/libcrypto/man/BN_new.3 head/secure/lib/libcrypto/man/BN_num_bytes.3 head/secure/lib/libcrypto/man/BN_rand.3 head/secure/lib/libcrypto/man/BN_set_bit.3 head/secure/lib/libcrypto/man/BN_swap.3 head/secure/lib/libcrypto/man/BN_zero.3 head/secure/lib/libcrypto/man/CMS_add0_cert.3 head/secure/lib/libcrypto/man/CMS_add1_recipient_cert.3 head/secure/lib/libcrypto/man/CMS_add1_signer.3 head/secure/lib/libcrypto/man/CMS_compress.3 head/secure/lib/libcrypto/man/CMS_decrypt.3 head/secure/lib/libcrypto/man/CMS_encrypt.3 head/secure/lib/libcrypto/man/CMS_final.3 head/secure/lib/libcrypto/man/CMS_get0_RecipientInfos.3 head/secure/lib/libcrypto/man/CMS_get0_SignerInfos.3 head/secure/lib/libcrypto/man/CMS_get0_type.3 head/secure/lib/libcrypto/man/CMS_get1_ReceiptRequest.3 head/secure/lib/libcrypto/man/CMS_sign.3 head/secure/lib/libcrypto/man/CMS_sign_receipt.3 head/secure/lib/libcrypto/man/CMS_uncompress.3 head/secure/lib/libcrypto/man/CMS_verify.3 head/secure/lib/libcrypto/man/CMS_verify_receipt.3 head/secure/lib/libcrypto/man/CONF_modules_free.3 head/secure/lib/libcrypto/man/CONF_modules_load_file.3 head/secure/lib/libcrypto/man/CRYPTO_set_ex_data.3 head/secure/lib/libcrypto/man/DH_generate_key.3 head/secure/lib/libcrypto/man/DH_generate_parameters.3 head/secure/lib/libcrypto/man/DH_get_ex_new_index.3 head/secure/lib/libcrypto/man/DH_new.3 head/secure/lib/libcrypto/man/DH_set_method.3 head/secure/lib/libcrypto/man/DH_size.3 head/secure/lib/libcrypto/man/DSA_SIG_new.3 head/secure/lib/libcrypto/man/DSA_do_sign.3 head/secure/lib/libcrypto/man/DSA_dup_DH.3 head/secure/lib/libcrypto/man/DSA_generate_key.3 head/secure/lib/libcrypto/man/DSA_generate_parameters.3 head/secure/lib/libcrypto/man/DSA_get_ex_new_index.3 head/secure/lib/libcrypto/man/DSA_new.3 head/secure/lib/libcrypto/man/DSA_set_method.3 head/secure/lib/libcrypto/man/DSA_sign.3 head/secure/lib/libcrypto/man/DSA_size.3 head/secure/lib/libcrypto/man/ERR_GET_LIB.3 head/secure/lib/libcrypto/man/ERR_clear_error.3 head/secure/lib/libcrypto/man/ERR_error_string.3 head/secure/lib/libcrypto/man/ERR_get_error.3 head/secure/lib/libcrypto/man/ERR_load_crypto_strings.3 head/secure/lib/libcrypto/man/ERR_load_strings.3 head/secure/lib/libcrypto/man/ERR_print_errors.3 head/secure/lib/libcrypto/man/ERR_put_error.3 head/secure/lib/libcrypto/man/ERR_remove_state.3 head/secure/lib/libcrypto/man/ERR_set_mark.3 head/secure/lib/libcrypto/man/EVP_BytesToKey.3 head/secure/lib/libcrypto/man/EVP_DigestInit.3 head/secure/lib/libcrypto/man/EVP_DigestSignInit.3 h
svn commit: r284328 - vendor-crypto/openssl/1.0.1o
Author: jkim Date: Fri Jun 12 16:36:05 2015 New Revision: 284328 URL: https://svnweb.freebsd.org/changeset/base/284328 Log: Tag OpenSSL 1.0.1o. Added: vendor-crypto/openssl/1.0.1o/ - copied from r284327, vendor-crypto/openssl/dist/ ___ svn-src-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r284327 - in vendor-crypto/openssl/dist: . crypto crypto/hmac ssl
Author: jkim Date: Fri Jun 12 16:33:55 2015 New Revision: 284327 URL: https://svnweb.freebsd.org/changeset/base/284327 Log: Import OpenSSL 1.0.1o. Modified: vendor-crypto/openssl/dist/CHANGES vendor-crypto/openssl/dist/FREEBSD-upgrade vendor-crypto/openssl/dist/Makefile vendor-crypto/openssl/dist/NEWS vendor-crypto/openssl/dist/README vendor-crypto/openssl/dist/crypto/hmac/hmac.c vendor-crypto/openssl/dist/crypto/hmac/hmac.h vendor-crypto/openssl/dist/crypto/hmac/hmactest.c vendor-crypto/openssl/dist/crypto/opensslv.h vendor-crypto/openssl/dist/ssl/t1_lib.c Modified: vendor-crypto/openssl/dist/CHANGES == --- vendor-crypto/openssl/dist/CHANGES Fri Jun 12 16:01:41 2015 (r284326) +++ vendor-crypto/openssl/dist/CHANGES Fri Jun 12 16:33:55 2015 (r284327) @@ -2,6 +2,12 @@ OpenSSL CHANGES ___ + Changes between 1.0.1n and 1.0.1o [12 Jun 2015] + + *) Fix HMAC ABI incompatibility. The previous version introduced an ABI + incompatibility in the handling of HMAC. The previous ABI has now been + restored. + Changes between 1.0.1m and 1.0.1n [11 Jun 2015] *) Malformed ECParameters causes infinite loop Modified: vendor-crypto/openssl/dist/FREEBSD-upgrade == --- vendor-crypto/openssl/dist/FREEBSD-upgrade Fri Jun 12 16:01:41 2015 (r284326) +++ vendor-crypto/openssl/dist/FREEBSD-upgrade Fri Jun 12 16:33:55 2015 (r284327) @@ -11,8 +11,8 @@ First, read http://wiki.freebsd.org/Subv # Xlist setenv XLIST /FreeBSD/work/openssl/svn-FREEBSD-files/FREEBSD-Xlist setenv FSVN "svn+ssh://svn.freebsd.org/base" -setenv OSSLVER 1.0.1n -# OSSLTAG format: v1_0_1n +setenv OSSLVER 1.0.1o +# OSSLTAG format: v1_0_1o ###setenv OSSLTAG v`echo ${OSSLVER} | tr . _` Modified: vendor-crypto/openssl/dist/Makefile == --- vendor-crypto/openssl/dist/Makefile Fri Jun 12 16:01:41 2015 (r284326) +++ vendor-crypto/openssl/dist/Makefile Fri Jun 12 16:33:55 2015 (r284327) @@ -4,7 +4,7 @@ ## Makefile for OpenSSL ## -VERSION=1.0.1n +VERSION=1.0.1o MAJOR=1 MINOR=0.1 SHLIB_VERSION_NUMBER=1.0.0 Modified: vendor-crypto/openssl/dist/NEWS == --- vendor-crypto/openssl/dist/NEWS Fri Jun 12 16:01:41 2015 (r284326) +++ vendor-crypto/openssl/dist/NEWS Fri Jun 12 16:33:55 2015 (r284327) @@ -5,6 +5,10 @@ This file gives a brief overview of the major changes between each OpenSSL release. For more details please read the CHANGES file. + Major changes between OpenSSL 1.0.1n and OpenSSL 1.0.1o [12 Jun 2015] + + o Fix HMAC ABI incompatibility + Major changes between OpenSSL 1.0.1m and OpenSSL 1.0.1n [11 Jun 2015] o Malformed ECParameters causes infinite loop (CVE-2015-1788) Modified: vendor-crypto/openssl/dist/README == --- vendor-crypto/openssl/dist/README Fri Jun 12 16:01:41 2015 (r284326) +++ vendor-crypto/openssl/dist/README Fri Jun 12 16:33:55 2015 (r284327) @@ -1,5 +1,5 @@ - OpenSSL 1.0.1n 11 Jun 2015 + OpenSSL 1.0.1o 12 Jun 2015 Copyright (c) 1998-2011 The OpenSSL Project Copyright (c) 1995-1998 Eric A. Young, Tim J. Hudson Modified: vendor-crypto/openssl/dist/crypto/hmac/hmac.c == --- vendor-crypto/openssl/dist/crypto/hmac/hmac.c Fri Jun 12 16:01:41 2015(r284326) +++ vendor-crypto/openssl/dist/crypto/hmac/hmac.c Fri Jun 12 16:33:55 2015(r284327) @@ -87,6 +87,9 @@ int HMAC_Init_ex(HMAC_CTX *ctx, const vo return FIPS_hmac_init_ex(ctx, key, len, md, NULL); } #endif +/* If we are changing MD then we must have a key */ +if (md != NULL && md != ctx->md && (key == NULL || len < 0)) +return 0; if (md != NULL) { reset = 1; @@ -97,9 +100,6 @@ int HMAC_Init_ex(HMAC_CTX *ctx, const vo return 0; } -if (!ctx->key_init && key == NULL) -return 0; - if (key != NULL) { reset = 1; j = EVP_MD_block_size(md); @@ -121,7 +121,6 @@ int HMAC_Init_ex(HMAC_CTX *ctx, const vo if (ctx->key_length != HMAC_MAX_MD_CBLOCK) memset(&ctx->key[ctx->key_length], 0, HMAC_MAX_MD_CBLOCK - ctx->key_length); -ctx->key_init = 1; } if (reset) { @@ -159,7 +158,7 @@ int HMAC_Update(HMAC_CTX *ctx, const uns if (FIPS_mode() && !ctx->i_ctx.engine) return FIPS_hmac_update(ctx, data, len); #endif -if (!ctx->key_init) +if (!ctx->md) return 0; return EVP_DigestUpdate(&ctx->md_ctx, data, len); @@ -174,7 +173,7 @@ int HMAC_Final(HMAC_CTX *ctx, uns
svn commit: r284326 - head/sys/netinet
Author: tuexen Date: Fri Jun 12 16:01:41 2015 New Revision: 284326 URL: https://svnweb.freebsd.org/changeset/base/284326 Log: In case of an output error, continue with the next net, don't try to continue sending on the same net. This fixes a bug where an invalid mbuf chain was constructed, if a full size frame of control chunks should be sent and there is a output error. Based on a discussion with rrs@, change move to the next net. This fixes the bug and improves the behaviour. Thanks to Irene Ruengeler for spending a lot of time in narrowing this problem down. MFC after: 3 days Modified: head/sys/netinet/sctp_output.c Modified: head/sys/netinet/sctp_output.c == --- head/sys/netinet/sctp_output.c Fri Jun 12 15:14:08 2015 (r284325) +++ head/sys/netinet/sctp_output.c Fri Jun 12 16:01:41 2015 (r284326) @@ -7985,6 +7985,7 @@ again_one_more_time: } else { r_mtu = mtu; } + error = 0; // /* ASCONF transmission */ // @@ -8143,7 +8144,7 @@ again_one_more_time: sctp_move_chunks_from_net(stcb, net); } *reason_code = 7; - continue; + break; } else asoc->ifp_had_enobuf = 0; if (*now_filled == 0) { @@ -8186,6 +8187,10 @@ again_one_more_time: } } } + if (error != 0) { + /* try next net */ + continue; + } // /* Control transmission */ // @@ -8420,7 +8425,7 @@ again_one_more_time: sctp_move_chunks_from_net(stcb, net); } *reason_code = 7; - continue; + break; } else asoc->ifp_had_enobuf = 0; /* Only HB or ASCONF advances time */ @@ -8466,6 +8471,10 @@ again_one_more_time: } } } + if (error != 0) { + /* try next net */ + continue; + } /* JRI: if dest is in PF state, do not send data to it */ if ((asoc->sctp_cmt_on_off > 0) && (net != stcb->asoc.alternate) && ___ svn-src-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r284325 - in head/sys: amd64/amd64 i386/i386 i386/include
Author: jhb Date: Fri Jun 12 15:14:08 2015 New Revision: 284325 URL: https://svnweb.freebsd.org/changeset/base/284325 Log: Report the values of x86 segment registers to remote debuggers. While here, also report %eflags from the i386 trapframe. Differential Revision:https://reviews.freebsd.org/D2743 Reviewed by: kib Obtained from:1 month Modified: head/sys/amd64/amd64/gdb_machdep.c head/sys/i386/i386/gdb_machdep.c head/sys/i386/i386/machdep.c head/sys/i386/include/gdb_machdep.h Modified: head/sys/amd64/amd64/gdb_machdep.c == --- head/sys/amd64/amd64/gdb_machdep.c Fri Jun 12 15:06:17 2015 (r284324) +++ head/sys/amd64/amd64/gdb_machdep.c Fri Jun 12 15:14:08 2015 (r284325) @@ -48,6 +48,8 @@ __FBSDID("$FreeBSD$"); void * gdb_cpu_getreg(int regnum, size_t *regsz) { + static uint32_t _kcodesel = GSEL(GCODE_SEL, SEL_KPL); + static uint32_t _kdatasel = GSEL(GDATA_SEL, SEL_KPL); *regsz = gdb_cpu_regsz(regnum); @@ -76,6 +78,8 @@ gdb_cpu_getreg(int regnum, size_t *regsz case 14: return (&kdb_thrctx->pcb_r14); case 15: return (&kdb_thrctx->pcb_r15); case 16: return (&kdb_thrctx->pcb_rip); + case 18: return (&_kcodesel); + case 19: return (&_kdatasel); } return (NULL); } Modified: head/sys/i386/i386/gdb_machdep.c == --- head/sys/i386/i386/gdb_machdep.cFri Jun 12 15:06:17 2015 (r284324) +++ head/sys/i386/i386/gdb_machdep.cFri Jun 12 15:14:08 2015 (r284325) @@ -45,14 +45,22 @@ __FBSDID("$FreeBSD$"); void * gdb_cpu_getreg(int regnum, size_t *regsz) { + static uint32_t _kcodesel = GSEL(GCODE_SEL, SEL_KPL); + static uint32_t _kdatasel = GSEL(GDATA_SEL, SEL_KPL); + static uint32_t _kprivsel = GSEL(GPRIV_SEL, SEL_KPL); *regsz = gdb_cpu_regsz(regnum); - if (kdb_thread == curthread) { + if (kdb_thread == curthread) { switch (regnum) { case 0: return (&kdb_frame->tf_eax); case 1: return (&kdb_frame->tf_ecx); case 2: return (&kdb_frame->tf_edx); + case 9: return (&kdb_frame->tf_eflags); + case 10: return (&kdb_frame->tf_cs); + case 12: return (&kdb_frame->tf_ds); + case 13: return (&kdb_frame->tf_es); + case 14: return (&kdb_frame->tf_fs); } } switch (regnum) { @@ -62,6 +70,12 @@ gdb_cpu_getreg(int regnum, size_t *regsz case 6: return (&kdb_thrctx->pcb_esi); case 7: return (&kdb_thrctx->pcb_edi); case 8: return (&kdb_thrctx->pcb_eip); + case 10: return (&_kcodesel); + case 11: return (&_kdatasel); + case 12: return (&_kdatasel); + case 13: return (&_kdatasel); + case 14: return (&_kprivsel); + case 15: return (&kdb_thrctx->pcb_gs); } return (NULL); } Modified: head/sys/i386/i386/machdep.c == --- head/sys/i386/i386/machdep.cFri Jun 12 15:06:17 2015 (r284324) +++ head/sys/i386/i386/machdep.cFri Jun 12 15:14:08 2015 (r284325) @@ -2867,6 +2867,7 @@ makectx(struct trapframe *tf, struct pcb pcb->pcb_ebx = tf->tf_ebx; pcb->pcb_eip = tf->tf_eip; pcb->pcb_esp = (ISPL(tf->tf_cs)) ? tf->tf_esp : (int)(tf + 1) - 8; + pcb->pcb_gs = rgs(); } int Modified: head/sys/i386/include/gdb_machdep.h == --- head/sys/i386/include/gdb_machdep.h Fri Jun 12 15:06:17 2015 (r284324) +++ head/sys/i386/include/gdb_machdep.h Fri Jun 12 15:14:08 2015 (r284325) @@ -30,7 +30,7 @@ #define_MACHINE_GDB_MACHDEP_H_ #defineGDB_BUFSZ 400 -#defineGDB_NREGS 14 +#defineGDB_NREGS 16 #defineGDB_REG_PC 8 static __inline size_t ___ svn-src-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r284324 - in head/sys/i386: i386 include
Author: jhb Date: Fri Jun 12 15:06:17 2015 New Revision: 284324 URL: https://svnweb.freebsd.org/changeset/base/284324 Log: Ensure that the upper 16 bits of segment registers manually saved in trapframes are cleared by explicitly pushing a zero and then moving the segment register into the low 16 bits. Certain Intel processors treat a push of a segment register as a move of the segment register into the low 16 bits leaving the upper 16 bits of the word in the stack unchanged. Reviewed by: kib MFC after:1 month Modified: head/sys/i386/i386/exception.s head/sys/i386/include/asmacros.h Modified: head/sys/i386/i386/exception.s == --- head/sys/i386/i386/exception.s Fri Jun 12 15:03:59 2015 (r284323) +++ head/sys/i386/i386/exception.s Fri Jun 12 15:06:17 2015 (r284324) @@ -157,9 +157,12 @@ IDTVEC(xmm) .type alltraps,@function alltraps: pushal - pushl %ds - pushl %es - pushl %fs + pushl $0 + movl%ds,(%esp) + pushl $0 + movl%es,(%esp) + pushl $0 + movl%fs,(%esp) alltraps_with_regs_pushed: SET_KERNEL_SREGS cld @@ -233,9 +236,12 @@ IDTVEC(lcall_syscall) pushl $7 /* sizeof "lcall 7,0" */ subl$4,%esp /* skip over tf_trapno */ pushal - pushl %ds - pushl %es - pushl %fs + pushl $0 + movl%ds,(%esp) + pushl $0 + movl%es,(%esp) + pushl $0 + movl%fs,(%esp) SET_KERNEL_SREGS cld FAKE_MCOUNT(TF_EIP(%esp)) @@ -259,9 +265,12 @@ IDTVEC(int0x80_syscall) pushl $2 /* sizeof "int 0x80" */ subl$4,%esp /* skip over tf_trapno */ pushal - pushl %ds - pushl %es - pushl %fs + pushl $0 + movl%ds,(%esp) + pushl $0 + movl%es,(%esp) + pushl $0 + movl%fs,(%esp) SET_KERNEL_SREGS cld FAKE_MCOUNT(TF_EIP(%esp)) @@ -416,13 +425,16 @@ doreti_iret: doreti_iret_fault: subl$8,%esp pushal - pushl %ds + pushl $0 + movl%ds,(%esp) .globl doreti_popl_ds_fault doreti_popl_ds_fault: - pushl %es + pushl $0 + movl%es,(%esp) .globl doreti_popl_es_fault doreti_popl_es_fault: - pushl %fs + pushl $0 + movl%fs,(%esp) .globl doreti_popl_fs_fault doreti_popl_fs_fault: sti Modified: head/sys/i386/include/asmacros.h == --- head/sys/i386/include/asmacros.hFri Jun 12 15:03:59 2015 (r284323) +++ head/sys/i386/include/asmacros.hFri Jun 12 15:06:17 2015 (r284324) @@ -146,9 +146,12 @@ pushl $0 ;/* dummy error code */ \ pushl $0 ;/* dummy trap type */ \ pushal ;/* 8 ints */\ - pushl %ds ; /* save data and extra segments ... */ \ - pushl %es ; \ - pushl %fs + pushl $0 ;/* save data and extra segments ... */ \ + mov %ds,(%esp) ;\ + pushl $0 ;\ + mov %es,(%esp) ;\ + pushl $0 ;\ + mov %fs,(%esp) #definePOP_FRAME \ popl%fs ; \ ___ svn-src-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r284323 - head/sbin/geom/class/multipath
Author: brueffer Date: Fri Jun 12 15:03:59 2015 New Revision: 284323 URL: https://svnweb.freebsd.org/changeset/base/284323 Log: Add a missing word, should have been in r284290. Submitted by: Fabian Keil Modified: head/sbin/geom/class/multipath/gmultipath.8 Modified: head/sbin/geom/class/multipath/gmultipath.8 == --- head/sbin/geom/class/multipath/gmultipath.8 Fri Jun 12 14:53:56 2015 (r284322) +++ head/sbin/geom/class/multipath/gmultipath.8 Fri Jun 12 15:03:59 2015 (r284323) @@ -271,7 +271,7 @@ device has a .Nm MULTIPATH on-disk metadata label, the device is either used to create a new .Nm MULTIPATH -GEOM, or added the list of paths for an existing +GEOM, or added to the list of paths for an existing .Nm MULTIPATH GEOM. .Pp ___ svn-src-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r284322 - head/tools/bus_space
Author: marcel Date: Fri Jun 12 14:53:56 2015 New Revision: 284322 URL: https://svnweb.freebsd.org/changeset/base/284322 Log: Free the segment objects properly. Modified: head/tools/bus_space/busdma.c Modified: head/tools/bus_space/busdma.c == --- head/tools/bus_space/busdma.c Fri Jun 12 14:30:27 2015 (r284321) +++ head/tools/bus_space/busdma.c Fri Jun 12 14:53:56 2015 (r284322) @@ -273,17 +273,15 @@ bd_mem_alloc(int tid, u_int flags) tag->refcnt++; md->key = ioc.result; + /* XXX we need to support multiple segments */ assert(ioc.u.mem.phys_nsegs == 1); - pseg = obj_alloc(OBJ_TYPE_SEG); - pseg->refcnt = 1; - pseg->parent = md; - pseg->u.seg.address = ioc.u.mem.phys_addr; - pseg->u.seg.size = tag->u.tag.maxsz; - md->u.md.seg[BUSDMA_MD_PHYS] = pseg; - md->u.md.nsegs[BUSDMA_MD_PHYS] = ioc.u.mem.phys_nsegs; - assert(ioc.u.mem.bus_nsegs == 1); + + bseg = pseg = vseg = NULL; + bseg = obj_alloc(OBJ_TYPE_SEG); + if (bseg == NULL) + goto fail; bseg->refcnt = 1; bseg->parent = md; bseg->u.seg.address = ioc.u.mem.bus_addr; @@ -291,33 +289,71 @@ bd_mem_alloc(int tid, u_int flags) md->u.md.seg[BUSDMA_MD_BUS] = bseg; md->u.md.nsegs[BUSDMA_MD_BUS] = ioc.u.mem.bus_nsegs; + pseg = obj_alloc(OBJ_TYPE_SEG); + if (pseg == NULL) + goto fail; + pseg->refcnt = 1; + pseg->parent = md; + pseg->u.seg.address = ioc.u.mem.phys_addr; + pseg->u.seg.size = tag->u.tag.maxsz; + md->u.md.seg[BUSDMA_MD_PHYS] = pseg; + md->u.md.nsegs[BUSDMA_MD_PHYS] = ioc.u.mem.phys_nsegs; + vseg = obj_alloc(OBJ_TYPE_SEG); + if (vseg == NULL) + goto fail; vseg->refcnt = 1; vseg->parent = md; vseg->u.seg.address = (uintptr_t)mmap(NULL, pseg->u.seg.size, PROT_READ | PROT_WRITE, MAP_NOCORE | MAP_SHARED, md->fd, pseg->u.seg.address); + if (vseg->u.seg.address == (uintptr_t)MAP_FAILED) + goto fail; vseg->u.seg.size = pseg->u.seg.size; md->u.md.seg[BUSDMA_MD_VIRT] = vseg; md->u.md.nsegs[BUSDMA_MD_VIRT] = 1; return (md->oid); + + fail: + if (vseg != NULL) + obj_free(vseg); + if (pseg != NULL) + obj_free(pseg); + if (bseg != NULL) + obj_free(bseg); + memset(&ioc, 0, sizeof(ioc)); + ioc.request = PROTO_IOC_BUSDMA_MEM_FREE; + ioc.key = md->key; + ioctl(md->fd, PROTO_IOC_BUSDMA, &ioc); + md->parent->refcnt--; + obj_free(md); + return (-1); } int bd_mem_free(int mdid) { struct proto_ioc_busdma ioc; - struct obj *md, *seg; + struct obj *md, *seg, *seg0; md = obj_lookup(mdid, OBJ_TYPE_MD); if (md == NULL) return (errno); - for (seg = md->u.md.seg[BUSDMA_MD_VIRT]; - seg != NULL; - seg = seg->u.seg.next) + for (seg = md->u.md.seg[BUSDMA_MD_VIRT]; seg != NULL; seg = seg0) { munmap((void *)seg->u.seg.address, seg->u.seg.size); + seg0 = seg->u.seg.next; + obj_free(seg); + } + for (seg = md->u.md.seg[BUSDMA_MD_PHYS]; seg != NULL; seg = seg0) { + seg0 = seg->u.seg.next; + obj_free(seg); + } + for (seg = md->u.md.seg[BUSDMA_MD_BUS]; seg != NULL; seg = seg0) { + seg0 = seg->u.seg.next; + obj_free(seg); + } memset(&ioc, 0, sizeof(ioc)); ioc.request = PROTO_IOC_BUSDMA_MEM_FREE; ioc.key = md->key; ___ svn-src-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r284321 - in head: gnu/usr.bin/groff/font/devX100 gnu/usr.bin/groff/font/devX100-12 gnu/usr.bin/groff/font/devX75 gnu/usr.bin/groff/font/devX75-12 share/doc/IPv6 share/doc/atf share/doc...
Author: sjg Date: Fri Jun 12 14:30:27 2015 New Revision: 284321 URL: https://svnweb.freebsd.org/changeset/base/284321 Log: Get rid of some more NO_OBJs Differential Revision: D2748 Modified: head/gnu/usr.bin/groff/font/devX100-12/Makefile head/gnu/usr.bin/groff/font/devX100/Makefile head/gnu/usr.bin/groff/font/devX75-12/Makefile head/gnu/usr.bin/groff/font/devX75/Makefile head/share/doc/IPv6/Makefile head/share/doc/atf/Makefile head/share/doc/legal/intel_ipw/Makefile head/share/doc/legal/intel_iwi/Makefile head/share/doc/legal/intel_iwn/Makefile head/share/doc/legal/intel_wpi/Makefile head/share/doc/legal/realtek/Makefile head/share/doc/llvm/Makefile head/share/doc/llvm/clang/Makefile head/share/doc/pjdfstest/Makefile head/usr.sbin/pc-sysinstall/doc/Makefile Modified: head/gnu/usr.bin/groff/font/devX100-12/Makefile == --- head/gnu/usr.bin/groff/font/devX100-12/Makefile Fri Jun 12 13:57:04 2015(r284320) +++ head/gnu/usr.bin/groff/font/devX100-12/Makefile Fri Jun 12 14:30:27 2015(r284321) @@ -1,7 +1,5 @@ # $FreeBSD$ -NO_OBJ= - .include "../Makefile.inc" .include "${DIST_DIR}/Makefile.sub" .include "../Makefile.dev" Modified: head/gnu/usr.bin/groff/font/devX100/Makefile == --- head/gnu/usr.bin/groff/font/devX100/MakefileFri Jun 12 13:57:04 2015(r284320) +++ head/gnu/usr.bin/groff/font/devX100/MakefileFri Jun 12 14:30:27 2015(r284321) @@ -1,7 +1,5 @@ # $FreeBSD$ -NO_OBJ= - .include "../Makefile.inc" .include "${DIST_DIR}/Makefile.sub" .include "../Makefile.dev" Modified: head/gnu/usr.bin/groff/font/devX75-12/Makefile == --- head/gnu/usr.bin/groff/font/devX75-12/Makefile Fri Jun 12 13:57:04 2015(r284320) +++ head/gnu/usr.bin/groff/font/devX75-12/Makefile Fri Jun 12 14:30:27 2015(r284321) @@ -1,7 +1,5 @@ # $FreeBSD$ -NO_OBJ= - .include "../Makefile.inc" .include "${DIST_DIR}/Makefile.sub" .include "../Makefile.dev" Modified: head/gnu/usr.bin/groff/font/devX75/Makefile == --- head/gnu/usr.bin/groff/font/devX75/Makefile Fri Jun 12 13:57:04 2015 (r284320) +++ head/gnu/usr.bin/groff/font/devX75/Makefile Fri Jun 12 14:30:27 2015 (r284321) @@ -1,7 +1,5 @@ # $FreeBSD$ -NO_OBJ= - .include "../Makefile.inc" .include "${DIST_DIR}/Makefile.sub" .include "../Makefile.dev" Modified: head/share/doc/IPv6/Makefile == --- head/share/doc/IPv6/MakefileFri Jun 12 13:57:04 2015 (r284320) +++ head/share/doc/IPv6/MakefileFri Jun 12 14:30:27 2015 (r284321) @@ -1,6 +1,5 @@ # $FreeBSD$ -NO_OBJ= FILES= IMPLEMENTATION FILESDIR= ${SHAREDIR}/doc/IPv6 Modified: head/share/doc/atf/Makefile == --- head/share/doc/atf/Makefile Fri Jun 12 13:57:04 2015(r284320) +++ head/share/doc/atf/Makefile Fri Jun 12 14:30:27 2015(r284321) @@ -29,8 +29,6 @@ ATF= ${.CURDIR}/../../../contrib/atf .PATH: ${ATF} .PATH: ${ATF}/doc -NO_OBJ= - FILESGROUPS= TOP TOPDIR=${SHAREDIR}/doc/atf Modified: head/share/doc/legal/intel_ipw/Makefile == --- head/share/doc/legal/intel_ipw/Makefile Fri Jun 12 13:57:04 2015 (r284320) +++ head/share/doc/legal/intel_ipw/Makefile Fri Jun 12 14:30:27 2015 (r284321) @@ -1,6 +1,5 @@ # $FreeBSD$ -NO_OBJ= FILES= ${.CURDIR}/../../../../sys/contrib/dev/ipw/LICENSE FILESDIR= ${SHAREDIR}/doc/legal/intel_ipw Modified: head/share/doc/legal/intel_iwi/Makefile == --- head/share/doc/legal/intel_iwi/Makefile Fri Jun 12 13:57:04 2015 (r284320) +++ head/share/doc/legal/intel_iwi/Makefile Fri Jun 12 14:30:27 2015 (r284321) @@ -1,6 +1,5 @@ # $FreeBSD$ -NO_OBJ= FILES= ${.CURDIR}/../../../../sys/contrib/dev/iwi/LICENSE FILESDIR= ${SHAREDIR}/doc/legal/intel_iwi Modified: head/share/doc/legal/intel_iwn/Makefile == --- head/share/doc/legal/intel_iwn/Makefile Fri Jun 12 13:57:04 2015 (r284320) +++ head/share/doc/legal/intel_iwn/Makefile Fri Jun 12 14:30:27 2015 (r284321) @@ -1,6 +1,5 @@ # $FreeBSD$ -NO_OBJ= FILES= ${.CURDIR}/../../../../sys/contrib/dev/iwn/LICENSE FILESDIR= ${SHAREDIR}/doc/legal/intel_iwn Modified: head/share/doc/legal/intel_wpi/Makefile =
svn commit: r284320 - head/sys/dev/atkbdc
Author: glebius Date: Fri Jun 12 13:57:04 2015 New Revision: 284320 URL: https://svnweb.freebsd.org/changeset/base/284320 Log: Unbreak mouse on resume on Thinkpads when hw.psm.trackpoint_support=0, which is default. It was broken in r281441. It appears that set_trackpoint_parameters() call on resume disables the mouse. So, we need not call it on resume if hw.psm.trackpoint_support=0. The problem is that the probe functions are used both for probing and for reiniting on resume. And the absense of the softc parameter is used as a mark to distinguish reinit and probe, which is quite ugly. At the same time the softc parameter is needed to call set_trackpoint_parameters(). o Change the arguments of probefunc_t to always supply the softc, and use additional enum argument to tell probing from initing. o Don't call set_trackpoint_parameters() from global doinitialize(), instead call it from the enable_trackpoint() only. o In enable_synaptics() call enable_trackpoint() in both probe and reinit cases. Together with: Jan KokemĂ¼ller Modified: head/sys/dev/atkbdc/psm.c Modified: head/sys/dev/atkbdc/psm.c == --- head/sys/dev/atkbdc/psm.c Fri Jun 12 13:54:25 2015(r284319) +++ head/sys/dev/atkbdc/psm.c Fri Jun 12 13:57:04 2015(r284320) @@ -462,7 +462,8 @@ static int tame_mouse(struct psm_softc * u_char *); /* vendor specific features */ -typedef intprobefunc_t(KBDC, struct psm_softc *); +enum probearg { PROBE, REINIT }; +typedef intprobefunc_t(struct psm_softc *, enum probearg); static int mouse_id_proc1(KBDC, int, int, int *); static int mouse_ext_command(KBDC, int); @@ -882,7 +883,7 @@ doinitialize(struct psm_softc *sc, mouse /* Re-enable the mouse. */ for (i = 0; vendortype[i].probefunc != NULL; ++i) if (vendortype[i].model == sc->hw.model) - (*vendortype[i].probefunc)(sc->kbdc, NULL); + (*vendortype[i].probefunc)(sc, REINIT); /* set mouse parameters */ if (mode != (mousemode_t *)NULL) { @@ -893,13 +894,6 @@ doinitialize(struct psm_softc *sc, mouse set_mouse_resolution(kbdc, mode->resolution); set_mouse_scaling(kbdc, 1); set_mouse_mode(kbdc); - - /* -* Trackpoint settings are lost on resume. -* Restore them here. -*/ - if (sc->tphw > 0) - set_trackpoint_parameters(sc); } /* Record sync on the next data packet we see. */ @@ -1388,7 +1382,7 @@ psmprobe(device_t dev) /* other parameters */ for (i = 0; vendortype[i].probefunc != NULL; ++i) - if ((*vendortype[i].probefunc)(sc->kbdc, sc)) { + if ((*vendortype[i].probefunc)(sc, PROBE)) { if (verbose >= 2) printf("psm%d: found %s\n", unit, model_name(vendortype[i].model)); @@ -3731,8 +3725,9 @@ mouse_ext_command(KBDC kbdc, int command #ifdef notyet /* Logitech MouseMan Cordless II */ static int -enable_lcordless(KDBC kbdc, struct psm_softc *sc) +enable_lcordless(struct psm_softc *sc, enum probearg arg) { + KBDC kbdc = sc->kbdc; int status[3]; int ch; @@ -3753,8 +3748,9 @@ enable_lcordless(KDBC kbdc, struct psm_s /* Genius NetScroll Mouse, MouseSystems SmartScroll Mouse */ static int -enable_groller(KBDC kbdc, struct psm_softc *sc) +enable_groller(struct psm_softc *sc, enum probearg arg) { + KBDC kbdc = sc->kbdc; int status[3]; /* @@ -3783,15 +3779,16 @@ enable_groller(KBDC kbdc, struct psm_sof if ((status[1] != '3') || (status[2] != 'D')) return (FALSE); /* FIXME: SmartScroll Mouse has 5 buttons! XXX */ - if (sc != NULL) + if (arg == PROBE) sc->hw.buttons = 4; return (TRUE); } /* Genius NetMouse/NetMouse Pro, ASCII Mie Mouse, NetScroll Optical */ static int -enable_gmouse(KBDC kbdc, struct psm_softc *sc) +enable_gmouse(struct psm_softc *sc, enum probearg arg) { + KBDC kbdc = sc->kbdc; int status[3]; /* @@ -3813,8 +3810,9 @@ enable_gmouse(KBDC kbdc, struct psm_soft /* ALPS GlidePoint */ static int -enable_aglide(KBDC kbdc, struct psm_softc *sc) +enable_aglide(struct psm_softc *sc, enum probearg arg) { + KBDC kbdc = sc->kbdc; int status[3]; /* @@ -3835,9 +3833,10 @@ enable_aglide(KBDC kbdc, struct psm_soft /* Kensington ThinkingMouse/Trackball */ static int -enable_kmouse(KBDC kbdc, struct psm_softc *sc) +enable_kmouse(struct psm_softc *sc, enum probearg arg) { static u_char rate[] = { 20, 60, 40, 20, 20, 60, 40, 20, 20 }; + KBDC k
svn commit: r284319 - in head/sys: conf dev/pci
Author: br Date: Fri Jun 12 13:54:25 2015 New Revision: 284319 URL: https://svnweb.freebsd.org/changeset/base/284319 Log: Rename ECAM PCI driver file. Requested by: imp Added: head/sys/dev/pci/pci_host_generic.c - copied unchanged from r284318, head/sys/dev/pci/pci-host-generic.c Deleted: head/sys/dev/pci/pci-host-generic.c Modified: head/sys/conf/files.arm64 Modified: head/sys/conf/files.arm64 == --- head/sys/conf/files.arm64 Fri Jun 12 13:42:53 2015(r284318) +++ head/sys/conf/files.arm64 Fri Jun 12 13:54:25 2015(r284319) @@ -51,7 +51,7 @@ dev/fdt/fdt_arm64.c optionalfdt dev/hwpmc/hwpmc_arm64.coptionalhwpmc dev/hwpmc/hwpmc_arm64_md.c optionalhwpmc dev/ofw/ofw_cpu.c optionalfdt -dev/pci/pci-host-generic.c optionalpci fdt +dev/pci/pci_host_generic.c optionalpci fdt dev/psci/psci.coptionalpsci dev/psci/psci_arm64.S optionalpsci dev/uart/uart_cpu_fdt.coptionaluart fdt Copied: head/sys/dev/pci/pci_host_generic.c (from r284318, head/sys/dev/pci/pci-host-generic.c) == --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sys/dev/pci/pci_host_generic.c Fri Jun 12 13:54:25 2015 (r284319, copy of r284318, head/sys/dev/pci/pci-host-generic.c) @@ -0,0 +1,626 @@ +/*- + * Copyright (c) 2015 Ruslan Bukin + * Copyright (c) 2014 The FreeBSD Foundation + * All rights reserved. + * + * This software was developed by Semihalf under + * the sponsorship of the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +/* Generic ECAM PCIe driver */ + +#include +__FBSDID("$FreeBSD$"); + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "pcib_if.h" + +/* Assembling ECAM Configuration Address */ +#definePCIE_BUS_SHIFT 20 +#definePCIE_SLOT_SHIFT 15 +#definePCIE_FUNC_SHIFT 12 +#definePCIE_BUS_MASK 0xFF +#definePCIE_SLOT_MASK 0x1F +#definePCIE_FUNC_MASK 0x07 +#definePCIE_REG_MASK 0xFFF + +#definePCIE_ADDR_OFFSET(bus, slot, func, reg) \ + bus) & PCIE_BUS_MASK) << PCIE_BUS_SHIFT)| \ + (((slot) & PCIE_SLOT_MASK) << PCIE_SLOT_SHIFT) | \ + (((func) & PCIE_FUNC_MASK) << PCIE_FUNC_SHIFT) | \ + ((reg) & PCIE_REG_MASK)) + +#defineMAX_RANGES_TUPLES 5 +#defineMIN_RANGES_TUPLES 2 + +#definePCI_IO_WINDOW_OFFSET0x1000 +#definePCI_IRQ_START 32 +#definePCI_IRQ_END (PCI_IRQ_START + 4) + +#defineSPACE_CODE_SHIFT24 +#defineSPACE_CODE_MASK 0x3 +#defineSPACE_CODE_IO_SPACE 0x1 +#definePROPS_CELL_SIZE 1 +#definePCI_ADDR_CELL_SIZE 2 + +struct pcie_range { + uint64_tpci_base; + uint64_tphys_base; + uint64_tsize; + uint64_tflags; +#defineFLAG_IO (1 << 0) +#defineFLAG_MEM(1 << 1) +}; + +struct generic_pcie_softc { + struct pcie_range ranges[MAX_RANGES_TUPLES]; + int nranges; + struct rman mem_rman; + struct rman io_rman; + struct rman
svn commit: r284318 - stable/10/sys/fs/nfsserver
Author: rmacklem Date: Fri Jun 12 13:42:53 2015 New Revision: 284318 URL: https://svnweb.freebsd.org/changeset/base/284318 Log: Add TUNABLE_INT() macros so that the tunables MFC'd from head as r284216 are set via /boot/loader.conf in stable/10. This is a direct commit to stable/10 because TUNABLE_INT() is deprecated in head. Modified: stable/10/sys/fs/nfsserver/nfs_nfsdstate.c Modified: stable/10/sys/fs/nfsserver/nfs_nfsdstate.c == --- stable/10/sys/fs/nfsserver/nfs_nfsdstate.c Fri Jun 12 13:16:50 2015 (r284317) +++ stable/10/sys/fs/nfsserver/nfs_nfsdstate.c Fri Jun 12 13:42:53 2015 (r284318) @@ -46,26 +46,31 @@ NFSSTATESPINLOCK; SYSCTL_DECL(_vfs_nfsd); intnfsrv_statehashsize = NFSSTATEHASHSIZE; +TUNABLE_INT("vfs.nfsd.statehashsize", &nfsrv_statehashsize); SYSCTL_INT(_vfs_nfsd, OID_AUTO, statehashsize, CTLFLAG_RDTUN, &nfsrv_statehashsize, 0, "Size of state hash table set via loader.conf"); intnfsrv_clienthashsize = NFSCLIENTHASHSIZE; +TUNABLE_INT("vfs.nfsd.clienthashsize", &nfsrv_clienthashsize); SYSCTL_INT(_vfs_nfsd, OID_AUTO, clienthashsize, CTLFLAG_RDTUN, &nfsrv_clienthashsize, 0, "Size of client hash table set via loader.conf"); intnfsrv_lockhashsize = NFSLOCKHASHSIZE; +TUNABLE_INT("vfs.nfsd.fhhashsize", &nfsrv_lockhashsize); SYSCTL_INT(_vfs_nfsd, OID_AUTO, fhhashsize, CTLFLAG_RDTUN, &nfsrv_lockhashsize, 0, "Size of file handle hash table set via loader.conf"); intnfsrv_sessionhashsize = NFSSESSIONHASHSIZE; +TUNABLE_INT("vfs.nfsd.sessionhashsize", &nfsrv_sessionhashsize); SYSCTL_INT(_vfs_nfsd, OID_AUTO, sessionhashsize, CTLFLAG_RDTUN, &nfsrv_sessionhashsize, 0, "Size of session hash table set via loader.conf"); static int nfsrv_v4statelimit = NFSRV_V4STATELIMIT; +TUNABLE_INT("vfs.nfsd.v4statelimit", &nfsrv_v4statelimit); SYSCTL_INT(_vfs_nfsd, OID_AUTO, v4statelimit, CTLFLAG_RWTUN, &nfsrv_v4statelimit, 0, "High water limit for NFSv4 opens+locks+delegations"); ___ svn-src-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r284317 - in head/sys: conf dev/pci
Author: br Date: Fri Jun 12 13:16:50 2015 New Revision: 284317 URL: https://svnweb.freebsd.org/changeset/base/284317 Log: Add generic ECAM PCI device driver found in Gem5 simulator. Work based on Cavium Thunder PCIe driver by Semihalf. Reviewed by: andrew, jhb Sponsored by: HEIF5 Differential Revision:https://reviews.freebsd.org/D2386 Added: head/sys/dev/pci/pci-host-generic.c (contents, props changed) Modified: head/sys/conf/files.arm64 Modified: head/sys/conf/files.arm64 == --- head/sys/conf/files.arm64 Fri Jun 12 13:15:14 2015(r284316) +++ head/sys/conf/files.arm64 Fri Jun 12 13:16:50 2015(r284317) @@ -51,6 +51,7 @@ dev/fdt/fdt_arm64.c optionalfdt dev/hwpmc/hwpmc_arm64.coptionalhwpmc dev/hwpmc/hwpmc_arm64_md.c optionalhwpmc dev/ofw/ofw_cpu.c optionalfdt +dev/pci/pci-host-generic.c optionalpci fdt dev/psci/psci.coptionalpsci dev/psci/psci_arm64.S optionalpsci dev/uart/uart_cpu_fdt.coptionaluart fdt Added: head/sys/dev/pci/pci-host-generic.c == --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sys/dev/pci/pci-host-generic.c Fri Jun 12 13:16:50 2015 (r284317) @@ -0,0 +1,626 @@ +/*- + * Copyright (c) 2015 Ruslan Bukin + * Copyright (c) 2014 The FreeBSD Foundation + * All rights reserved. + * + * This software was developed by Semihalf under + * the sponsorship of the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +/* Generic ECAM PCIe driver */ + +#include +__FBSDID("$FreeBSD$"); + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "pcib_if.h" + +/* Assembling ECAM Configuration Address */ +#definePCIE_BUS_SHIFT 20 +#definePCIE_SLOT_SHIFT 15 +#definePCIE_FUNC_SHIFT 12 +#definePCIE_BUS_MASK 0xFF +#definePCIE_SLOT_MASK 0x1F +#definePCIE_FUNC_MASK 0x07 +#definePCIE_REG_MASK 0xFFF + +#definePCIE_ADDR_OFFSET(bus, slot, func, reg) \ + bus) & PCIE_BUS_MASK) << PCIE_BUS_SHIFT)| \ + (((slot) & PCIE_SLOT_MASK) << PCIE_SLOT_SHIFT) | \ + (((func) & PCIE_FUNC_MASK) << PCIE_FUNC_SHIFT) | \ + ((reg) & PCIE_REG_MASK)) + +#defineMAX_RANGES_TUPLES 5 +#defineMIN_RANGES_TUPLES 2 + +#definePCI_IO_WINDOW_OFFSET0x1000 +#definePCI_IRQ_START 32 +#definePCI_IRQ_END (PCI_IRQ_START + 4) + +#defineSPACE_CODE_SHIFT24 +#defineSPACE_CODE_MASK 0x3 +#defineSPACE_CODE_IO_SPACE 0x1 +#definePROPS_CELL_SIZE 1 +#definePCI_ADDR_CELL_SIZE 2 + +struct pcie_range { + uint64_tpci_base; + uint64_tphys_base; + uint64_tsize; + uint64_tflags; +#defineFLAG_IO (1 << 0) +#defineFLAG_MEM(1 << 1) +}; + +struct generic_pcie_softc { + struct pcie_range ranges[MAX_RANGES_TUPLES]; + int nranges; + struct rman mem_rman; + struct rman io_rman; + struct rman irq_rman; + struct resource *res; + struc
svn commit: r284316 - head/sys/dev/drm2/i915
Author: glebius Date: Fri Jun 12 13:15:14 2015 New Revision: 284316 URL: https://svnweb.freebsd.org/changeset/base/284316 Log: A miss from r284310. vm_pager_get_pages() updates the array, so there is no need for vm_page_lookup(). Modified: head/sys/dev/drm2/i915/i915_gem.c Modified: head/sys/dev/drm2/i915/i915_gem.c == --- head/sys/dev/drm2/i915/i915_gem.c Fri Jun 12 12:27:10 2015 (r284315) +++ head/sys/dev/drm2/i915/i915_gem.c Fri Jun 12 13:15:14 2015 (r284316) @@ -3175,9 +3175,6 @@ i915_gem_wire_page(vm_object_t object, v if (m->valid != VM_PAGE_BITS_ALL) { if (vm_pager_has_page(object, pindex, NULL, NULL)) { rv = vm_pager_get_pages(object, &m, 1, 0); - m = vm_page_lookup(object, pindex); - if (m == NULL) - return (NULL); if (rv != VM_PAGER_OK) { vm_page_lock(m); vm_page_free(m); ___ svn-src-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
Re: svn commit: r284290 - head/sbin/geom/class/multipath
On 6/12/15 3:21 AM, Fabian Keil wrote: > Christian Brueffer wrote: > >> Author: brueffer >> Date: Thu Jun 11 23:05:49 2015 >> New Revision: 284290 >> URL: https://svnweb.freebsd.org/changeset/base/284290 >> >> Log: >> Improve grammar. >> >> PR:200673 >> Submitted by: Fabian Keil >> Obtained from: ElectroBSD >> >> Modified: >> head/sbin/geom/class/multipath/gmultipath.8 > > Thanks for taking care of the PR, Christian. > >> @@ -269,9 +269,9 @@ GEOM class is given an opportunity to ta >> If a new >> device has a >> .Nm MULTIPATH >> -on-disk metadata label, the device is used to either create a new >> +on-disk metadata label, the device is either used to create a new >> .Nm MULTIPATH >> -GEOM, or been added the list of paths for an existing >> +GEOM, or added the list of paths for an existing > ^ > Looks like a "to" from the patch didn't make it. > Bah, sorry, will fix! Chris signature.asc Description: OpenPGP digital signature
svn commit: r284315 - head/sys/dev/proto
Author: marcel Date: Fri Jun 12 12:27:10 2015 New Revision: 284315 URL: https://svnweb.freebsd.org/changeset/base/284315 Log: We need to handle 64-bit BARs ourselves to avoid that the PCI infrastructure instantiates a non-existent resource. This has BARs suddenly show up with pciconf(8) under VMware as well. Now that we read the BAR ourselves, ask for the correct resource type. Modified: head/sys/dev/proto/proto_bus_pci.c Modified: head/sys/dev/proto/proto_bus_pci.c == --- head/sys/dev/proto/proto_bus_pci.c Fri Jun 12 11:52:32 2015 (r284314) +++ head/sys/dev/proto/proto_bus_pci.c Fri Jun 12 12:27:10 2015 (r284315) @@ -82,6 +82,7 @@ proto_pci_attach(device_t dev) { struct proto_softc *sc; struct resource *res; + uint32_t val; int bar, rid, type; sc = device_get_softc(dev); @@ -91,15 +92,17 @@ proto_pci_attach(device_t dev) for (bar = 0; bar < PCIR_MAX_BAR_0; bar++) { rid = PCIR_BAR(bar); - type = SYS_RES_MEMORY; + val = pci_read_config(dev, rid, 4); + type = (PCI_BAR_IO(val)) ? SYS_RES_IOPORT : SYS_RES_MEMORY; res = bus_alloc_resource_any(dev, type, &rid, RF_ACTIVE); - if (res == NULL) { - type = SYS_RES_IOPORT; - res = bus_alloc_resource_any(dev, type, &rid, - RF_ACTIVE); - } - if (res != NULL) - proto_add_resource(sc, type, rid, res); + if (res == NULL) + continue; + proto_add_resource(sc, type, rid, res); + if (type == SYS_RES_IOPORT) + continue; + /* Skip over adjacent BAR for 64-bit memory BARs. */ + if ((val & PCIM_BAR_MEM_TYPE) == PCIM_BAR_MEM_64) + bar++; } rid = 0; ___ svn-src-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r284314 - stable/9/sys/cddl/contrib/opensolaris/uts/common/fs/zfs
Author: avg Date: Fri Jun 12 11:52:32 2015 New Revision: 284314 URL: https://svnweb.freebsd.org/changeset/base/284314 Log: MFC r283525: zfs: fixes for a full stream received into an existing dataset Modified: stable/9/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_send.c Directory Properties: stable/9/sys/ (props changed) stable/9/sys/cddl/contrib/opensolaris/ (props changed) Modified: stable/9/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_send.c == --- stable/9/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_send.c Fri Jun 12 11:49:05 2015(r284313) +++ stable/9/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_send.c Fri Jun 12 11:52:32 2015(r284314) @@ -858,10 +858,12 @@ recv_begin_check_existing_impl(dmu_recv_ dsl_dataset_rele(snap, FTAG); } else { - /* if full, most recent snapshot must be $ORIGIN */ - if (ds->ds_phys->ds_prev_snap_txg >= TXG_INITIAL) - return (SET_ERROR(ENODEV)); - drba->drba_snapobj = ds->ds_phys->ds_prev_snap_obj; + /* if full, then must be forced */ + if (!drba->drba_cookie->drc_force) + return (SET_ERROR(EEXIST)); + /* start from $ORIGIN@$ORIGIN, if supported */ + drba->drba_snapobj = dp->dp_origin_snap != NULL ? + dp->dp_origin_snap->ds_object : 0; } return (0); ___ svn-src-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r284313 - stable/10/sys/cddl/contrib/opensolaris/uts/common/fs/zfs
Author: avg Date: Fri Jun 12 11:49:05 2015 New Revision: 284313 URL: https://svnweb.freebsd.org/changeset/base/284313 Log: MFC r283525: zfs: fixes for a full stream received into an existing dataset Modified: stable/10/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_send.c Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_send.c == --- stable/10/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_send.c Fri Jun 12 11:41:47 2015(r284312) +++ stable/10/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_send.c Fri Jun 12 11:49:05 2015(r284313) @@ -983,10 +983,12 @@ recv_begin_check_existing_impl(dmu_recv_ dsl_dataset_rele(snap, FTAG); } else { - /* if full, most recent snapshot must be $ORIGIN */ - if (dsl_dataset_phys(ds)->ds_prev_snap_txg >= TXG_INITIAL) - return (SET_ERROR(ENODEV)); - drba->drba_snapobj = dsl_dataset_phys(ds)->ds_prev_snap_obj; + /* if full, then must be forced */ + if (!drba->drba_cookie->drc_force) + return (SET_ERROR(EEXIST)); + /* start from $ORIGIN@$ORIGIN, if supported */ + drba->drba_snapobj = dp->dp_origin_snap != NULL ? + dp->dp_origin_snap->ds_object : 0; } return (0); ___ svn-src-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r284311 - stable/10/sys/boot/userboot/userboot
Author: avg Date: Fri Jun 12 11:41:33 2015 New Revision: 284311 URL: https://svnweb.freebsd.org/changeset/base/284311 Log: MFC r283939: userboot: enable bzipfs support Modified: stable/10/sys/boot/userboot/userboot/conf.c Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/boot/userboot/userboot/conf.c == --- stable/10/sys/boot/userboot/userboot/conf.c Fri Jun 12 11:32:20 2015 (r284310) +++ stable/10/sys/boot/userboot/userboot/conf.c Fri Jun 12 11:41:33 2015 (r284311) @@ -65,10 +65,11 @@ struct fs_ops *file_system[] = { &host_fsops, &ufs_fsops, &cd9660_fsops, - &gzipfs_fsops, #if defined(USERBOOT_ZFS_SUPPORT) &zfs_fsops, #endif + &gzipfs_fsops, + &bzipfs_fsops, NULL }; ___ svn-src-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r284312 - stable/9/sys/boot/userboot/userboot
Author: avg Date: Fri Jun 12 11:41:47 2015 New Revision: 284312 URL: https://svnweb.freebsd.org/changeset/base/284312 Log: MFC r283939: userboot: enable bzipfs support Modified: stable/9/sys/boot/userboot/userboot/conf.c Directory Properties: stable/9/sys/ (props changed) stable/9/sys/boot/ (props changed) Modified: stable/9/sys/boot/userboot/userboot/conf.c == --- stable/9/sys/boot/userboot/userboot/conf.c Fri Jun 12 11:41:33 2015 (r284311) +++ stable/9/sys/boot/userboot/userboot/conf.c Fri Jun 12 11:41:47 2015 (r284312) @@ -58,6 +58,7 @@ struct fs_ops *file_system[] = { &host_fsops, &ufs_fsops, &gzipfs_fsops, + &bzipfs_fsops, NULL }; ___ svn-src-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r284310 - in head/sys: fs/tmpfs kern vm
Author: glebius Date: Fri Jun 12 11:32:20 2015 New Revision: 284310 URL: https://svnweb.freebsd.org/changeset/base/284310 Log: Make KPI of vm_pager_get_pages() more strict: if a pager changes a page in the requested array, then it is responsible for disposition of previous page and is responsible for updating the entry in the requested array. Now consumers of KPI do not need to re-lookup the pages after call to vm_pager_get_pages(). Reviewed by: kib Sponsored by: Netflix Sponsored by: Nginx, Inc. Modified: head/sys/fs/tmpfs/tmpfs_subr.c head/sys/kern/kern_exec.c head/sys/kern/uipc_shm.c head/sys/kern/uipc_syscalls.c head/sys/vm/vm_fault.c head/sys/vm/vm_glue.c head/sys/vm/vm_object.c Modified: head/sys/fs/tmpfs/tmpfs_subr.c == --- head/sys/fs/tmpfs/tmpfs_subr.c Fri Jun 12 11:21:35 2015 (r284309) +++ head/sys/fs/tmpfs/tmpfs_subr.c Fri Jun 12 11:32:20 2015 (r284310) @@ -1320,7 +1320,7 @@ tmpfs_reg_resize(struct vnode *vp, off_t struct tmpfs_mount *tmp; struct tmpfs_node *node; vm_object_t uobj; - vm_page_t m, ma[1]; + vm_page_t m; vm_pindex_t idx, newpages, oldpages; off_t oldsize; int base, rv; @@ -1367,11 +1367,9 @@ retry: VM_WAIT; VM_OBJECT_WLOCK(uobj); goto retry; - } else if (m->valid != VM_PAGE_BITS_ALL) { - ma[0] = m; - rv = vm_pager_get_pages(uobj, ma, 1, 0); - m = vm_page_lookup(uobj, idx); - } else + } else if (m->valid != VM_PAGE_BITS_ALL) + rv = vm_pager_get_pages(uobj, &m, 1, 0); + else /* A cached page was reactivated. */ rv = VM_PAGER_OK; vm_page_lock(m); Modified: head/sys/kern/kern_exec.c == --- head/sys/kern/kern_exec.c Fri Jun 12 11:21:35 2015(r284309) +++ head/sys/kern/kern_exec.c Fri Jun 12 11:32:20 2015(r284310) @@ -966,13 +966,10 @@ exec_map_first_page(imgp) } initial_pagein = i; rv = vm_pager_get_pages(object, ma, initial_pagein, 0); - ma[0] = vm_page_lookup(object, 0); - if ((rv != VM_PAGER_OK) || (ma[0] == NULL)) { - if (ma[0] != NULL) { - vm_page_lock(ma[0]); - vm_page_free(ma[0]); - vm_page_unlock(ma[0]); - } + if (rv != VM_PAGER_OK) { + vm_page_lock(ma[0]); + vm_page_free(ma[0]); + vm_page_unlock(ma[0]); VM_OBJECT_WUNLOCK(object); return (EIO); } Modified: head/sys/kern/uipc_shm.c == --- head/sys/kern/uipc_shm.cFri Jun 12 11:21:35 2015(r284309) +++ head/sys/kern/uipc_shm.cFri Jun 12 11:32:20 2015(r284310) @@ -189,14 +189,6 @@ uiomove_object_page(vm_object_t obj, siz if (m->valid != VM_PAGE_BITS_ALL) { if (vm_pager_has_page(obj, idx, NULL, NULL)) { rv = vm_pager_get_pages(obj, &m, 1, 0); - m = vm_page_lookup(obj, idx); - if (m == NULL) { - printf( - "uiomove_object: vm_obj %p idx %jd null lookup rv %d\n", - obj, idx, rv); - VM_OBJECT_WUNLOCK(obj); - return (EIO); - } if (rv != VM_PAGER_OK) { printf( "uiomove_object: vm_obj %p idx %jd valid %x pager error %d\n", @@ -423,7 +415,7 @@ static int shm_dotruncate(struct shmfd *shmfd, off_t length) { vm_object_t object; - vm_page_t m, ma[1]; + vm_page_t m; vm_pindex_t idx, nobjsize; vm_ooffset_t delta; int base, rv; @@ -465,12 +457,10 @@ retry: VM_WAIT; VM_OBJECT_WLOCK(object); goto retry; - } else if (m->valid != VM_PAGE_BITS_ALL) { - ma[0] = m; - rv = vm_pager_get_pages(object, ma, 1, + } els
svn commit: r284309 - head/cddl/contrib/opensolaris/cmd/zfs
Author: avg Date: Fri Jun 12 11:21:35 2015 New Revision: 284309 URL: https://svnweb.freebsd.org/changeset/base/284309 Log: zfs clone should not mount the clone if canmount == noauto Creation of a new filesystem does not imply an intent to mount it. Since canmount property is not inherited and its default value is 'on', the only scenario where this matters is zfs clone -o canmount=noauto. zfs create -o canmount=noauto already does not mount the new filesystem. Also see: https://www.illumos.org/issues/5984 https://reviews.csiden.org/r/228/ https://github.com/FransUrbo/zfs/commit/dd0e0e69f5b1c83bf2895ac00a0b83af77473175 https://github.com/zfsonlinux/zfs/issues/2241 Reviewed by: mahrens MFC after:8 days Sponsored by: ClusterHQ Modified: head/cddl/contrib/opensolaris/cmd/zfs/zfs_main.c Modified: head/cddl/contrib/opensolaris/cmd/zfs/zfs_main.c == --- head/cddl/contrib/opensolaris/cmd/zfs/zfs_main.cFri Jun 12 11:16:43 2015(r284308) +++ head/cddl/contrib/opensolaris/cmd/zfs/zfs_main.cFri Jun 12 11:21:35 2015(r284309) @@ -593,6 +593,17 @@ finish_progress(char *done) } /* + * Check if the dataset is mountable and should be automatically mounted. + */ +static boolean_t +should_auto_mount(zfs_handle_t *zhp) +{ + if (!zfs_prop_valid_for_type(ZFS_PROP_CANMOUNT, zfs_get_type(zhp))) + return (B_FALSE); + return (zfs_prop_get_int(zhp, ZFS_PROP_CANMOUNT) == ZFS_CANMOUNT_ON); +} + +/* * zfs clone [-p] [-o prop=value] ... * * Given an existing dataset, create a writable copy whose initial contents @@ -677,9 +688,22 @@ zfs_do_clone(int argc, char **argv) clone = zfs_open(g_zfs, argv[1], ZFS_TYPE_DATASET); if (clone != NULL) { - if (zfs_get_type(clone) != ZFS_TYPE_VOLUME) - if ((ret = zfs_mount(clone, NULL, 0)) == 0) - ret = zfs_share(clone); + /* +* If the user doesn't want the dataset +* automatically mounted, then skip the mount/share +* step. +*/ + if (should_auto_mount(clone)) { + if ((ret = zfs_mount(clone, NULL, 0)) != 0) { + (void) fprintf(stderr, gettext("clone " + "successfully created, " + "but not mounted\n")); + } else if ((ret = zfs_share(clone)) != 0) { + (void) fprintf(stderr, gettext("clone " + "successfully created, " + "but not shared\n")); + } + } zfs_close(clone); } } @@ -728,7 +752,6 @@ zfs_do_create(int argc, char **argv) int ret = 1; nvlist_t *props; uint64_t intval; - int canmount = ZFS_CANMOUNT_OFF; if (nvlist_alloc(&props, NV_UNIQUE_NAME, 0) != 0) nomem(); @@ -868,19 +891,15 @@ zfs_do_create(int argc, char **argv) goto error; ret = 0; - /* -* if the user doesn't want the dataset automatically mounted, -* then skip the mount/share step -*/ - if (zfs_prop_valid_for_type(ZFS_PROP_CANMOUNT, type)) - canmount = zfs_prop_get_int(zhp, ZFS_PROP_CANMOUNT); /* * Mount and/or share the new filesystem as appropriate. We provide a * verbose error message to let the user know that their filesystem was * in fact created, even if we failed to mount or share it. +* If the user doesn't want the dataset automatically mounted, +* then skip the mount/share step altogether. */ - if (!nomount && canmount == ZFS_CANMOUNT_ON) { + if (!nomount && should_auto_mount(zhp)) { if (zfs_mount(zhp, NULL, 0) != 0) { (void) fprintf(stderr, gettext("filesystem " "successfully created, but not mounted\n")); ___ svn-src-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r284308 - head/cddl/contrib/opensolaris/lib/libzfs/common
Author: avg Date: Fri Jun 12 11:16:43 2015 New Revision: 284308 URL: https://svnweb.freebsd.org/changeset/base/284308 Log: MFV r284042: 1778 Assertion failed: rn->rn_nozpool == B_FALSE, file ../common/libzfs_import.c, line 1077, function zpool_open_func illumos/illumos-gate@bd0f709169e67f4bd34526e186a7c34f595f0d9b Author: Andrew Stormont MFC after:13 days Modified: head/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_import.c Directory Properties: head/cddl/contrib/opensolaris/ (props changed) head/cddl/contrib/opensolaris/lib/libzfs/ (props changed) Modified: head/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_import.c == --- head/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_import.c Fri Jun 12 11:14:08 2015(r284307) +++ head/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_import.c Fri Jun 12 11:16:43 2015(r284308) @@ -23,6 +23,7 @@ * Copyright 2015 Nexenta Systems, Inc. All rights reserved. * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2013 by Delphix. All rights reserved. + * Copyright 2015 RackTop Systems. */ /* @@ -1094,11 +1095,7 @@ zpool_open_func(void *arg) } (void) close(fd); - rn->rn_config = config; - if (config != NULL) { - assert(rn->rn_nozpool == B_FALSE); - } } /* ___ svn-src-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r284307 - head/cddl/contrib/opensolaris
Author: avg Date: Fri Jun 12 11:14:08 2015 New Revision: 284307 URL: https://svnweb.freebsd.org/changeset/base/284307 Log: MFV r284035: 5669 altroot not set in zpool create when specified with -o illumos/illumos-gate@c423721f9bcd45c2409ef7b73fc103ac2889f9e9 This is a record-only commit, the change is: r279366 Modified: Directory Properties: head/cddl/contrib/opensolaris/ (props changed) ___ svn-src-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r284306 - head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs
Author: avg Date: Fri Jun 12 11:10:49 2015 New Revision: 284306 URL: https://svnweb.freebsd.org/changeset/base/284306 Log: MFV r284036: 5961 Fix stack overflow in zfs_create_fs illumos/illumos-gate@c701fde6911c957e71b37aac4daf672bd828f4d7 Author: glebius MFC after:11 days Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_znode.c Directory Properties: head/sys/cddl/contrib/opensolaris/ (props changed) Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_znode.c == --- head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_znode.c Fri Jun 12 10:59:50 2015(r284305) +++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_znode.c Fri Jun 12 11:10:49 2015(r284306) @@ -1797,7 +1797,6 @@ log: void zfs_create_fs(objset_t *os, cred_t *cr, nvlist_t *zplprops, dmu_tx_t *tx) { - zfsvfs_tzfsvfs; uint64_tmoid, obj, sa_obj, version; uint64_tsense = ZFS_CASE_SENSITIVE; uint64_tnorm = 0; @@ -1805,6 +1804,7 @@ zfs_create_fs(objset_t *os, cred_t *cr, int error; int i; znode_t *rootzp = NULL; + zfsvfs_t*zfsvfs; vattr_t vattr; znode_t *zp; zfs_acl_ids_t acl_ids; @@ -1880,7 +1880,7 @@ zfs_create_fs(objset_t *os, cred_t *cr, vattr.va_uid = crgetuid(cr); vattr.va_gid = crgetgid(cr); - bzero(&zfsvfs, sizeof (zfsvfs_t)); + zfsvfs = kmem_zalloc(sizeof (zfsvfs_t), KM_SLEEP); rootzp = kmem_cache_alloc(znode_cache, KM_SLEEP); ASSERT(!POINTER_IS_VALID(rootzp->z_zfsvfs)); @@ -1889,15 +1889,15 @@ zfs_create_fs(objset_t *os, cred_t *cr, rootzp->z_atime_dirty = 0; rootzp->z_is_sa = USE_SA(version, os); - zfsvfs.z_os = os; - zfsvfs.z_parent = &zfsvfs; - zfsvfs.z_version = version; - zfsvfs.z_use_fuids = USE_FUIDS(version, os); - zfsvfs.z_use_sa = USE_SA(version, os); - zfsvfs.z_norm = norm; + zfsvfs->z_os = os; + zfsvfs->z_parent = zfsvfs; + zfsvfs->z_version = version; + zfsvfs->z_use_fuids = USE_FUIDS(version, os); + zfsvfs->z_use_sa = USE_SA(version, os); + zfsvfs->z_norm = norm; error = sa_setup(os, sa_obj, zfs_attr_table, ZPL_END, - &zfsvfs.z_attr_table); + &zfsvfs->z_attr_table); ASSERT(error == 0); @@ -1906,16 +1906,16 @@ zfs_create_fs(objset_t *os, cred_t *cr, * insensitive. */ if (sense == ZFS_CASE_INSENSITIVE || sense == ZFS_CASE_MIXED) - zfsvfs.z_norm |= U8_TEXTPREP_TOUPPER; + zfsvfs->z_norm |= U8_TEXTPREP_TOUPPER; - mutex_init(&zfsvfs.z_znodes_lock, NULL, MUTEX_DEFAULT, NULL); - list_create(&zfsvfs.z_all_znodes, sizeof (znode_t), + mutex_init(&zfsvfs->z_znodes_lock, NULL, MUTEX_DEFAULT, NULL); + list_create(&zfsvfs->z_all_znodes, sizeof (znode_t), offsetof(znode_t, z_link_node)); for (i = 0; i != ZFS_OBJ_MTX_SZ; i++) - mutex_init(&zfsvfs.z_hold_mtx[i], NULL, MUTEX_DEFAULT, NULL); + mutex_init(&zfsvfs->z_hold_mtx[i], NULL, MUTEX_DEFAULT, NULL); - rootzp->z_zfsvfs = &zfsvfs; + rootzp->z_zfsvfs = zfsvfs; VERIFY(0 == zfs_acl_ids_create(rootzp, IS_ROOT_NODE, &vattr, cr, NULL, &acl_ids)); zfs_mknode(rootzp, &vattr, tx, cr, IS_ROOT_NODE, &zp, &acl_ids); @@ -1932,12 +1932,13 @@ zfs_create_fs(objset_t *os, cred_t *cr, * Create shares directory */ - error = zfs_create_share_dir(&zfsvfs, tx); + error = zfs_create_share_dir(zfsvfs, tx); ASSERT(error == 0); for (i = 0; i != ZFS_OBJ_MTX_SZ; i++) - mutex_destroy(&zfsvfs.z_hold_mtx[i]); + mutex_destroy(&zfsvfs->z_hold_mtx[i]); + kmem_free(zfsvfs, sizeof (zfsvfs_t)); } #endif /* _KERNEL */ ___ svn-src-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r284305 - head/sys/cddl/contrib/opensolaris
Author: avg Date: Fri Jun 12 10:59:50 2015 New Revision: 284305 URL: https://svnweb.freebsd.org/changeset/base/284305 Log: MFV r284033: 5438 zfs_blkptr_verify should continue after zfs_panic_recover illumos/illumos-gate@5897eb49ccde82d19214b71984f57935e7e313d1 This is a record-only commit, the change is in r275923. Modified: Directory Properties: head/sys/cddl/contrib/opensolaris/ (props changed) ___ svn-src-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r284304 - in head: cddl/contrib/opensolaris/cmd/ztest sys/cddl/contrib/opensolaris/uts/common/fs/zfs sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys
Author: avg Date: Fri Jun 12 10:57:05 2015 New Revision: 284304 URL: https://svnweb.freebsd.org/changeset/base/284304 Log: MFV r284030: 5818 zfs {ref}compressratio is incorrect with 4k sector size illumos/illumos-gate@81cd5c555f505484180a62ca5a2fbb00d70c57d6 Author: Matthew Ahrens MFC after:17 days Modified: head/cddl/contrib/opensolaris/cmd/ztest/ztest.c head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_misc.c head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/spa_impl.h head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/vdev_impl.h head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zio.c Directory Properties: head/cddl/contrib/opensolaris/ (props changed) head/sys/cddl/contrib/opensolaris/ (props changed) Modified: head/cddl/contrib/opensolaris/cmd/ztest/ztest.c == --- head/cddl/contrib/opensolaris/cmd/ztest/ztest.c Fri Jun 12 10:52:53 2015(r284303) +++ head/cddl/contrib/opensolaris/cmd/ztest/ztest.c Fri Jun 12 10:57:05 2015(r284304) @@ -20,7 +20,7 @@ */ /* * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. - * Copyright (c) 2011, 2014 by Delphix. All rights reserved. + * Copyright (c) 2011, 2015 by Delphix. All rights reserved. * Copyright 2011 Nexenta Systems, Inc. All rights reserved. * Copyright (c) 2012 Martin Matuska . All rights reserved. * Copyright (c) 2013 Steven Hartland. All rights reserved. @@ -969,21 +969,6 @@ ztest_random_spa_version(uint64_t initia return (version); } -/* - * Find the largest ashift used - */ -static uint64_t -ztest_spa_get_ashift() { - uint64_t i; - uint64_t ashift = SPA_MINBLOCKSHIFT; - vdev_t *rvd = ztest_spa->spa_root_vdev; - - for (i = 0; i < rvd->vdev_children; i++) { - ashift = MAX(ashift, rvd->vdev_child[i]->vdev_ashift); - } - return (ashift); -} - static int ztest_random_blocksize(void) { @@ -995,7 +980,7 @@ ztest_random_blocksize(void) int maxbs = SPA_OLD_MAXBLOCKSHIFT; if (spa_maxblocksize(ztest_spa) == SPA_MAXBLOCKSIZE) maxbs = 20; - block_shift = ztest_random(maxbs - ztest_spa_get_ashift() + 1); + block_shift = ztest_random(maxbs - ztest_spa->spa_max_ashift + 1); return (1 << (SPA_MINBLOCKSHIFT + block_shift)); } Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c == --- head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c Fri Jun 12 10:52:53 2015(r284303) +++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c Fri Jun 12 10:57:05 2015(r284304) @@ -2256,6 +2256,8 @@ spa_load_impl(spa_t *spa, uint64_t pool_ return (error); ASSERT(spa->spa_root_vdev == rvd); + ASSERT3U(spa->spa_min_ashift, >=, SPA_MINBLOCKSHIFT); + ASSERT3U(spa->spa_max_ashift, <=, SPA_MAXBLOCKSHIFT); if (type != SPA_IMPORT_ASSEMBLE) { ASSERT(spa_guid(spa) == pool_guid); Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_misc.c == --- head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_misc.c Fri Jun 12 10:52:53 2015(r284303) +++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_misc.c Fri Jun 12 10:57:05 2015(r284304) @@ -20,7 +20,7 @@ */ /* * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. - * Copyright (c) 2011, 2014 by Delphix. All rights reserved. + * Copyright (c) 2011, 2015 by Delphix. All rights reserved. * Copyright 2011 Nexenta Systems, Inc. All rights reserved. * Copyright 2013 Martin Matuska . All rights reserved. */ @@ -719,6 +719,9 @@ spa_add(const char *name, nvlist_t *conf spa->spa_debug = ((zfs_flags & ZFS_DEBUG_SPA) != 0); + spa->spa_min_ashift = INT_MAX; + spa->spa_max_ashift = 0; + /* * As a pool is being created, treat all features as disabled by * setting SPA_FEATURE_DISABLED for all entries in the feature Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/spa_impl.h == --- head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/spa_impl.h Fri Jun 12 10:52:53 2015(r284303) +++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/spa_impl.h Fri Jun 12 10:57:05 2015(r284304) @@ -20,7 +20,7 @@ */ /* * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. - * Copyright (c) 2011, 2014 by Delphix. All rights reserved. + * Copyright (c) 2011, 2015 by Delphix. All rights reserved. * Copyright 2011
svn commit: r284303 - head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs
Author: avg Date: Fri Jun 12 10:52:53 2015 New Revision: 284303 URL: https://svnweb.freebsd.org/changeset/base/284303 Log: MFV r283534: 5515 dataset user hold doesn't reject empty tags illumos/illumos-gate@752fd8dabccac68d6d09f82f3bf3561e055e400b Author: Josef 'Jeff' Sipek MFC after:10 days Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c Directory Properties: head/sys/cddl/contrib/opensolaris/ (props changed) Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c == --- head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c Fri Jun 12 10:50:31 2015(r284302) +++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c Fri Jun 12 10:52:53 2015(r284303) @@ -25,12 +25,11 @@ * All rights reserved. * Copyright 2013 Martin Matuska . All rights reserved. * Copyright 2014 Xin Li . All rights reserved. - * Copyright 2011 Nexenta Systems, Inc. All rights reserved. + * Copyright 2015 Nexenta Systems, Inc. All rights reserved. * Copyright (c) 2014, Joyent, Inc. All rights reserved. * Copyright (c) 2011, 2014 by Delphix. All rights reserved. * Copyright (c) 2013 by Saso Kiselkov. All rights reserved. * Copyright (c) 2013 Steven Hartland. All rights reserved. - * Copyright (c) 2014, Nexenta Systems, Inc. All rights reserved. */ /* @@ -5240,6 +5239,7 @@ zfs_ioc_smb_acl(zfs_cmd_t *zc) static int zfs_ioc_hold(const char *pool, nvlist_t *args, nvlist_t *errlist) { + nvpair_t *pair; nvlist_t *holds; int cleanup_fd = -1; int error; @@ -5249,6 +5249,19 @@ zfs_ioc_hold(const char *pool, nvlist_t if (error != 0) return (SET_ERROR(EINVAL)); + /* make sure the user didn't pass us any invalid (empty) tags */ + for (pair = nvlist_next_nvpair(holds, NULL); pair != NULL; + pair = nvlist_next_nvpair(holds, pair)) { + char *htag; + + error = nvpair_value_string(pair, &htag); + if (error != 0) + return (SET_ERROR(error)); + + if (strlen(htag) == 0) + return (SET_ERROR(EINVAL)); + } + if (nvlist_lookup_int32(args, "cleanup_fd", &cleanup_fd) == 0) { error = zfs_onexit_fd_hold(cleanup_fd, &minor); if (error != 0) ___ svn-src-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r284302 - vendor-sys/illumos/dist/uts/common/fs/zfs
Author: avg Date: Fri Jun 12 10:50:31 2015 New Revision: 284302 URL: https://svnweb.freebsd.org/changeset/base/284302 Log: Revert r284031: the change was already imported in r283534 Modified: vendor-sys/illumos/dist/uts/common/fs/zfs/zfs_ioctl.c Modified: vendor-sys/illumos/dist/uts/common/fs/zfs/zfs_ioctl.c == --- vendor-sys/illumos/dist/uts/common/fs/zfs/zfs_ioctl.c Fri Jun 12 10:41:24 2015(r284301) +++ vendor-sys/illumos/dist/uts/common/fs/zfs/zfs_ioctl.c Fri Jun 12 10:50:31 2015(r284302) @@ -5132,19 +5132,6 @@ zfs_ioc_hold(const char *pool, nvlist_t return (SET_ERROR(EINVAL)); } - /* make sure the user didn't pass us any invalid (empty) tags */ - for (pair = nvlist_next_nvpair(holds, NULL); pair != NULL; - pair = nvlist_next_nvpair(holds, pair)) { - char *htag; - - error = nvpair_value_string(pair, &htag); - if (error != 0) - return (SET_ERROR(error)); - - if (strlen(htag) == 0) - return (SET_ERROR(EINVAL)); - } - if (nvlist_lookup_int32(args, "cleanup_fd", &cleanup_fd) == 0) { error = zfs_onexit_fd_hold(cleanup_fd, &minor); if (error != 0) ___ svn-src-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r284301 - head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs
Author: avg Date: Fri Jun 12 10:41:24 2015 New Revision: 284301 URL: https://svnweb.freebsd.org/changeset/base/284301 Log: MFV r284040: check that datasets are snapshots 5946 zfs_ioc_space_snaps must check that firstsnap and lastsnap refer to snapshots 5945 zfs_ioc_send_space must ensure that fromsnap refers to a snapshot Reviewed by: Steven Hartland Reviewed by: Matthew Ahrens Approved by: Gordon Ross illumos/illumos-gate@24218bebb460e4015fac2c9f2cec1902eddbcd7b Note that the upstream commit is modified during MFV: in the upstream the check is done by inspecting ds_is_snapshot field while in FreeBSD we call dsl_dataset_is_snapshot(). This is because illumos/illumos-gate@bc9014e6a81272073b9854d9f65dd59e18d18c35 (r277428 in vendor-sys/illumos) is not MFV-ed yet. MFC after:10 days Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_send.c head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c Directory Properties: head/sys/cddl/contrib/opensolaris/ (props changed) Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_send.c == --- head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_send.c Fri Jun 12 10:25:35 2015(r284300) +++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_send.c Fri Jun 12 10:41:24 2015(r284301) @@ -855,6 +855,10 @@ dmu_send_estimate(dsl_dataset_t *ds, dsl if (!dsl_dataset_is_snapshot(ds)) return (SET_ERROR(EINVAL)); + /* fromsnap, if provided, must be a snapshot */ + if (fromds != NULL && !dsl_dataset_is_snapshot(fromds)) + return (SET_ERROR(EINVAL)); + /* * fromsnap must be an earlier snapshot from the same fs as tosnap, * or the origin's fs. Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c == --- head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c Fri Jun 12 10:25:35 2015(r284300) +++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c Fri Jun 12 10:41:24 2015(r284301) @@ -5362,11 +5362,19 @@ zfs_ioc_space_snaps(const char *lastsnap return (error); error = dsl_dataset_hold(dp, lastsnap, FTAG, &new); + if (error == 0 && !dsl_dataset_is_snapshot(new)) { + dsl_dataset_rele(new, FTAG); + error = SET_ERROR(EINVAL); + } if (error != 0) { dsl_pool_rele(dp, FTAG); return (error); } error = dsl_dataset_hold(dp, firstsnap, FTAG, &old); + if (error == 0 && !dsl_dataset_is_snapshot(old)) { + dsl_dataset_rele(old, FTAG); + error = SET_ERROR(EINVAL); + } if (error != 0) { dsl_dataset_rele(new, FTAG); dsl_pool_rele(dp, FTAG); ___ svn-src-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r284300 - head/sys/cddl/contrib/opensolaris
Author: avg Date: Fri Jun 12 10:25:35 2015 New Revision: 284300 URL: https://svnweb.freebsd.org/changeset/base/284300 Log: MFV r284039: 5909 ensure that shared snap names don't become too long after promotion illumos/illumos-gate@cb5842f8b0caaad0ed53535bd77042e933fdbafe This is a record-only commit, the change is already in FreeBSD: r283524 Modified: Directory Properties: head/sys/cddl/contrib/opensolaris/ (props changed) ___ svn-src-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r284299 - head/sys/cddl/contrib/opensolaris
Author: avg Date: Fri Jun 12 10:11:25 2015 New Revision: 284299 URL: https://svnweb.freebsd.org/changeset/base/284299 Log: MFV r284038: 5870 dmu_recv_end_check() leaks origin_head hold if error happens in drc_force branch illumos/illumos-gate@beddaa9ce797b9deaafc22b4f156d23f9b45c32d This is a record-only commit, the change is already in FreeBSD: r282473 Modified: Directory Properties: head/sys/cddl/contrib/opensolaris/ (props changed) ___ svn-src-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r284298 - head/sys/cddl/contrib/opensolaris
Author: avg Date: Fri Jun 12 10:08:29 2015 New Revision: 284298 URL: https://svnweb.freebsd.org/changeset/base/284298 Log: MFV r284037: 5912 full stream can not be force-received into a dataset if it has a snapshot illumos/illumos-gate@5bae108fe2364722de3aa86e04966a0d33fd027a This is a record only commit, the change is already in FreeBSD: r283525 Modified: Directory Properties: head/sys/cddl/contrib/opensolaris/ (props changed) ___ svn-src-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"
svn commit: r284297 - in head: cddl/contrib/opensolaris/cmd/lockstat sys/kern sys/sys
Author: avg Date: Fri Jun 12 10:01:24 2015 New Revision: 284297 URL: https://svnweb.freebsd.org/changeset/base/284297 Log: several lockstat improvements 0. For spin events report time spent spinning, not a loop count. While loop count is much easier and cheaper to obtain it is hard to reason about the reported numbers, espcially for adaptive locks where both spinning and sleeping can happen. So, it's better to compare apples and apples. 1. Teach lockstat about FreeBSD rw locks. This is done in part by changing the corresponding probes and in part by changing what probes lockstat should expect. 2. Teach lockstat that rw locks are adaptive and can spin on FreeBSD. 3. Report lock acquisition events for successful rw try-lock operations. 4. Teach lockstat about FreeBSD sx locks. Reporting of events for those locks completely mirrors rw locks. 5. Report spin and block events before acquisition event. This is behavior documented for the upstream, so it makes sense to stick to it. Note that because of FreeBSD adaptive lock implementations both the spin and block events may be reported for the same acquisition while the upstream reports only one of them. Differential Revision:https://reviews.freebsd.org/D2727 Reviewed by: markj MFC after:17 days Relnotes: yes Sponsored by: ClusterHQ Modified: head/cddl/contrib/opensolaris/cmd/lockstat/lockstat.c head/sys/kern/kern_mutex.c head/sys/kern/kern_rwlock.c head/sys/kern/kern_sx.c head/sys/sys/lockstat.h Modified: head/cddl/contrib/opensolaris/cmd/lockstat/lockstat.c == --- head/cddl/contrib/opensolaris/cmd/lockstat/lockstat.c Fri Jun 12 07:50:34 2015(r284296) +++ head/cddl/contrib/opensolaris/cmd/lockstat/lockstat.c Fri Jun 12 10:01:24 2015(r284297) @@ -157,14 +157,22 @@ static ls_event_info_t g_event_info[LS_M "lockstat:::rw-block", "arg2 != 0 && arg3 == 1" }, { 'C', "Lock", "R/W reader blocked by write wanted", "nsec", "lockstat:::rw-block", "arg2 != 0 && arg3 == 0 && arg4" }, - { 'C', "Lock", "Unknown event (type 8)", "units" }, - { 'C', "Lock", "Unknown event (type 9)", "units" }, - { 'C', "Lock", "Unknown event (type 10)", "units" }, - { 'C', "Lock", "Unknown event (type 11)", "units" }, - { 'C', "Lock", "Unknown event (type 12)", "units" }, - { 'C', "Lock", "Unknown event (type 13)", "units" }, - { 'C', "Lock", "Unknown event (type 14)", "units" }, - { 'C', "Lock", "Unknown event (type 15)", "units" }, + { 'C', "Lock", "R/W writer spin on writer","nsec", + "lockstat:::rw-spin", "arg2 == 0 && arg3 == 1" }, + { 'C', "Lock", "R/W writer spin on readers", "nsec", + "lockstat:::rw-spin", "arg2 == 0 && arg3 == 0 && arg4" }, + { 'C', "Lock", "R/W reader spin on writer","nsec", + "lockstat:::rw-spin", "arg2 != 0 && arg3 == 1" }, + { 'C', "Lock", "R/W reader spin on write wanted", "nsec", + "lockstat:::rw-spin", "arg2 != 0 && arg3 == 0 && arg4" }, + { 'C', "Lock", "SX exclusive block", "nsec", + "lockstat:::sx-block", "arg2 == 0" }, + { 'C', "Lock", "SX shared block", "nsec", + "lockstat:::sx-block", "arg2 != 0" }, + { 'C', "Lock", "SX exclusive spin","nsec", + "lockstat:::sx-spin", "arg2 == 0" }, + { 'C', "Lock", "SX shared spin", "nsec", + "lockstat:::sx-spin", "arg2 != 0" }, { 'C', "Lock", "Unknown event (type 16)", "units" }, { 'C', "Lock", "Unknown event (type 17)", "units" }, { 'C', "Lock", "Unknown event (type 18)", "units" }, @@ -188,13 +196,17 @@ static ls_event_info_t g_event_info[LS_M "lockstat:::spin-release", NULL, "lockstat:::spin-acquire" }, { 'H', "Lock", "R/W writer hold", "nsec", - "lockstat:::rw-release", "arg1 == 0", - "lockstat:::rw-acquire" }, + "lockstat::rw_wunlock:rw-release", NULL, + "lockstat::rw_wlock:rw-acquire" }, { 'H', "Lock", "R/W reader hold", "nsec", - "lockstat:::rw-release", "arg1 != 0", - "lockstat:::rw-acquire" }, - { 'H', "Lock", "Unknown event (type 36)", "units" }, - { 'H', "Lock", "Unknown event (type 37)", "units" }, + "lockstat::rw_runlock:rw-release", NULL, + "lockstat::rw_rlock:rw-acquire" }, + { 'H', "Lock", "SX shared hold", "nsec", + "lockstat::sx_sunlock:sx-release", NULL, +
svn commit: r284296 - in head/sys: dev/xen/blkback dev/xen/blkfront xen xen/interface/io
Author: royger Date: Fri Jun 12 07:50:34 2015 New Revision: 284296 URL: https://svnweb.freebsd.org/changeset/base/284296 Log: xen-blk{front/back}: remove broken FreeBSD extensions The FreeBSD extension adds a new request type, called blkif_segment_block which has a size of 112bytes for both i386 and amd64. This is fine on amd64, since requests have a size of 112B there also. But this is not true for i386, where requests have a size of 108B. So on i386 we basically overrun the ring slot when queuing a request of type blkif_segment_block_t, which is very bad. Remove this extension (including a cleanup of the public blkif.h header file) from blkfront and blkback. Sponsored by: Citrix Systems R&D Tested-by: cperciva Modified: head/sys/dev/xen/blkback/blkback.c head/sys/dev/xen/blkfront/blkfront.c head/sys/dev/xen/blkfront/block.h head/sys/xen/blkif.h head/sys/xen/interface/io/blkif.h Modified: head/sys/dev/xen/blkback/blkback.c == --- head/sys/dev/xen/blkback/blkback.c Fri Jun 12 07:23:55 2015 (r284295) +++ head/sys/dev/xen/blkback/blkback.c Fri Jun 12 07:50:34 2015 (r284296) @@ -85,11 +85,19 @@ __FBSDID("$FreeBSD$"); /*--- Compile-time Tunables --*/ /** + * The maximum number of shared memory ring pages we will allow in a + * negotiated block-front/back communication channel. Allow enough + * ring space for all requests to be XBB_MAX_REQUEST_SIZE'd. + */ +#defineXBB_MAX_RING_PAGES 32 + +/** * The maximum number of outstanding request blocks (request headers plus * additional segment blocks) we will allow in a negotiated block-front/back * communication channel. */ -#defineXBB_MAX_REQUESTS256 +#defineXBB_MAX_REQUESTS\ + __CONST_RING_SIZE(blkif, PAGE_SIZE * XBB_MAX_RING_PAGES) /** * \brief Define to force all I/O to be performed on memory owned by the @@ -148,14 +156,6 @@ static MALLOC_DEFINE(M_XENBLOCKBACK, "xb (XBB_MAX_REQUEST_SIZE / PAGE_SIZE) + 1))) /** - * The maximum number of shared memory ring pages we will allow in a - * negotiated block-front/back communication channel. Allow enough - * ring space for all requests to be XBB_MAX_REQUEST_SIZE'd. - */ -#defineXBB_MAX_RING_PAGES \ - BLKIF_RING_PAGES(BLKIF_SEGS_TO_BLOCKS(XBB_MAX_SEGMENTS_PER_REQUEST) \ - * XBB_MAX_REQUESTS) -/** * The maximum number of ring pages that we can allow per request list. * We limit this to the maximum number of segments per request, because * that is already a reasonable number of segments to aggregate. This @@ -1328,7 +1328,7 @@ xbb_queue_response(struct xbb_softc *xbb if (status != BLKIF_RSP_OKAY) xbb->reqs_completed_with_error++; - xbb->rings.common.rsp_prod_pvt += BLKIF_SEGS_TO_BLOCKS(req->nr_pages); + xbb->rings.common.rsp_prod_pvt++; xbb->reqs_queued_for_completion++; @@ -1666,87 +1666,49 @@ xbb_dispatch_io(struct xbb_softc *xbb, s goto send_response; } - block_segs= MIN(nreq->nr_pages, - BLKIF_MAX_SEGMENTS_PER_HEADER_BLOCK); + block_segs= nseg; sg= ring_req->seg; last_block_sg = sg + block_segs; - while (1) { - while (sg < last_block_sg) { - KASSERT(seg_idx < - XBB_MAX_SEGMENTS_PER_REQLIST, - ("seg_idx %d is too large, max " - "segs %d\n", seg_idx, - XBB_MAX_SEGMENTS_PER_REQLIST)); - - xbb_sg->first_sect = sg->first_sect; - xbb_sg->last_sect = sg->last_sect; - xbb_sg->nsect = - (int8_t)(sg->last_sect - - sg->first_sect + 1); - - if ((sg->last_sect >= (PAGE_SIZE >> 9)) -|| (xbb_sg->nsect <= 0)) { - reqlist->status = BLKIF_RSP_ERROR; - goto send_response; - } - - nr_sects += xbb_sg->nsect; - map->host_addr = xbb_get_gntaddr(reqlist, - seg_idx, /*sector*/0); - KASSERT(map->host_addr + PAGE_SIZE <= - xbb->ring_config.gnt_addr, - ("Host address %#jx
svn commit: r284295 - in releng: 10.1 10.1/crypto/openssl/apps 10.1/crypto/openssl/crypto/bio 10.1/crypto/openssl/crypto/bn 10.1/crypto/openssl/crypto/buffer 10.1/crypto/openssl/crypto/cms 10.1/cry...
Author: delphij Date: Fri Jun 12 07:23:55 2015 New Revision: 284295 URL: https://svnweb.freebsd.org/changeset/base/284295 Log: Fix OpenSSL multiple vulnerabilities. Security: FreeBSD-SA-15:10.openssl Approved by: so Modified: releng/10.1/UPDATING releng/10.1/crypto/openssl/apps/dhparam.c releng/10.1/crypto/openssl/apps/gendh.c releng/10.1/crypto/openssl/apps/s_server.c releng/10.1/crypto/openssl/crypto/bio/bio_lib.c releng/10.1/crypto/openssl/crypto/bn/bn_gf2m.c releng/10.1/crypto/openssl/crypto/bn/bn_print.c releng/10.1/crypto/openssl/crypto/buffer/buffer.c releng/10.1/crypto/openssl/crypto/cms/cms_smime.c releng/10.1/crypto/openssl/crypto/ec/ec2_oct.c releng/10.1/crypto/openssl/crypto/ec/ec_check.c releng/10.1/crypto/openssl/crypto/ec/ec_key.c releng/10.1/crypto/openssl/crypto/ec/ec_lib.c releng/10.1/crypto/openssl/crypto/ec/ecp_oct.c releng/10.1/crypto/openssl/crypto/ec/ectest.c releng/10.1/crypto/openssl/crypto/evp/e_aes.c releng/10.1/crypto/openssl/crypto/evp/e_rc4_hmac_md5.c releng/10.1/crypto/openssl/crypto/evp/evp.h releng/10.1/crypto/openssl/crypto/hmac/hmac.c releng/10.1/crypto/openssl/crypto/modes/gcm128.c releng/10.1/crypto/openssl/crypto/objects/obj_dat.c releng/10.1/crypto/openssl/crypto/pkcs12/p12_mutl.c releng/10.1/crypto/openssl/crypto/pkcs7/pk7_doit.c releng/10.1/crypto/openssl/crypto/x509/x509_vfy.c releng/10.1/crypto/openssl/crypto/x509/x509type.c releng/10.1/crypto/openssl/doc/apps/dhparam.pod releng/10.1/crypto/openssl/doc/ssl/SSL_CTX_set_tmp_dh_callback.pod releng/10.1/crypto/openssl/ssl/d1_both.c releng/10.1/crypto/openssl/ssl/d1_lib.c releng/10.1/crypto/openssl/ssl/d1_pkt.c releng/10.1/crypto/openssl/ssl/s3_cbc.c releng/10.1/crypto/openssl/ssl/s3_clnt.c releng/10.1/crypto/openssl/ssl/s3_srvr.c releng/10.1/crypto/openssl/ssl/ssl.h releng/10.1/crypto/openssl/ssl/ssl_err.c releng/10.1/crypto/openssl/ssl/ssl_locl.h releng/10.1/crypto/openssl/ssl/ssl_sess.c releng/10.1/crypto/openssl/ssl/t1_lib.c releng/10.1/sys/conf/newvers.sh releng/8.4/UPDATING releng/8.4/crypto/openssl/crypto/bn/bn_print.c releng/8.4/crypto/openssl/crypto/cms/cms_smime.c releng/8.4/crypto/openssl/crypto/ec/ec2_smpl.c releng/8.4/crypto/openssl/crypto/ec/ec_check.c releng/8.4/crypto/openssl/crypto/ec/ec_key.c releng/8.4/crypto/openssl/crypto/ec/ec_lib.c releng/8.4/crypto/openssl/crypto/ec/ecp_smpl.c releng/8.4/crypto/openssl/crypto/ec/ectest.c releng/8.4/crypto/openssl/crypto/objects/obj_dat.c releng/8.4/crypto/openssl/crypto/pkcs7/pk7_doit.c releng/8.4/crypto/openssl/crypto/x509/x509_vfy.c releng/8.4/crypto/openssl/ssl/d1_lib.c releng/8.4/crypto/openssl/ssl/s3_clnt.c releng/8.4/crypto/openssl/ssl/s3_srvr.c releng/8.4/crypto/openssl/ssl/ssl.h releng/8.4/crypto/openssl/ssl/ssl_err.c releng/8.4/crypto/openssl/ssl/ssl_locl.h releng/8.4/crypto/openssl/ssl/ssl_sess.c releng/8.4/sys/conf/newvers.sh releng/9.3/UPDATING releng/9.3/crypto/openssl/crypto/bn/bn_print.c releng/9.3/crypto/openssl/crypto/cms/cms_smime.c releng/9.3/crypto/openssl/crypto/ec/ec2_smpl.c releng/9.3/crypto/openssl/crypto/ec/ec_check.c releng/9.3/crypto/openssl/crypto/ec/ec_key.c releng/9.3/crypto/openssl/crypto/ec/ec_lib.c releng/9.3/crypto/openssl/crypto/ec/ecp_smpl.c releng/9.3/crypto/openssl/crypto/ec/ectest.c releng/9.3/crypto/openssl/crypto/objects/obj_dat.c releng/9.3/crypto/openssl/crypto/pkcs7/pk7_doit.c releng/9.3/crypto/openssl/crypto/x509/x509_vfy.c releng/9.3/crypto/openssl/ssl/d1_lib.c releng/9.3/crypto/openssl/ssl/s3_clnt.c releng/9.3/crypto/openssl/ssl/s3_srvr.c releng/9.3/crypto/openssl/ssl/ssl.h releng/9.3/crypto/openssl/ssl/ssl_err.c releng/9.3/crypto/openssl/ssl/ssl_locl.h releng/9.3/crypto/openssl/ssl/ssl_sess.c releng/9.3/sys/conf/newvers.sh Modified: releng/10.1/UPDATING == --- releng/10.1/UPDATINGFri Jun 12 06:28:22 2015(r284294) +++ releng/10.1/UPDATINGFri Jun 12 07:23:55 2015(r284295) @@ -16,6 +16,9 @@ from older versions of FreeBSD, try WITH stable/10, and then rebuild without this option. The bootstrap process from older version of current is a bit fragile. +20150612: p12 FreeBSD-SA-15:10.openssl + Fix multiple vulnerabilities in OpenSSL. [SA-15:10] + 20150609: p11 FreeBSD-EN-15:06.file FreeBSD-EN-15:07.zfs Modified: releng/10.1/crypto/openssl/apps/dhparam.c == --- releng/10.1/crypto/openssl/apps/dhparam.c Fri Jun 12 06:28:22 2015 (r284294) +++ releng/10.1/crypto/openssl/apps/dhparam.c Fri Jun 12 07:23:55 2015 (r284295) @@ -130,7 +130,7 @@ #undef PROG #define PROG dhparam_main -#define DEFBITS512 +#define DEFBITS2048 /* -inform arg - input format - default PEM (DER or PEM
Re: svn commit: r284290 - head/sbin/geom/class/multipath
Christian Brueffer wrote: > Author: brueffer > Date: Thu Jun 11 23:05:49 2015 > New Revision: 284290 > URL: https://svnweb.freebsd.org/changeset/base/284290 > > Log: > Improve grammar. > > PR: 200673 > Submitted by: Fabian Keil > Obtained from: ElectroBSD > > Modified: > head/sbin/geom/class/multipath/gmultipath.8 Thanks for taking care of the PR, Christian. > @@ -269,9 +269,9 @@ GEOM class is given an opportunity to ta > If a new > device has a > .Nm MULTIPATH > -on-disk metadata label, the device is used to either create a new > +on-disk metadata label, the device is either used to create a new > .Nm MULTIPATH > -GEOM, or been added the list of paths for an existing > +GEOM, or added the list of paths for an existing ^ Looks like a "to" from the patch didn't make it. Fabian pgp_yYey470U9.pgp Description: OpenPGP digital signature