Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 8 Sep 2014 04:51:17 GMT
From:      John Baldwin <jhb@FreeBSD.org>
To:        Perforce Change Reviews <perforce@FreeBSD.org>
Subject:   PERFORCE change 1199526 for review
Message-ID:  <201409080451.s884pHpl027211@skunkworks.freebsd.org>

next in thread | raw e-mail | index | archive | help
http://p4web.freebsd.org/@@1199526?ac=10

Change 1199526 by jhb@jhb_ralph on 2014/08/29 15:29:34

	IFC @1199525

Affected files ...

.. //depot/projects/smpng/share/man/man9/Makefile#46 integrate
.. //depot/projects/smpng/share/man/man9/sysctl_add_oid.9#6 integrate
.. //depot/projects/smpng/sys/amd64/include/vmm.h#13 integrate
.. //depot/projects/smpng/sys/amd64/vmm/io/vatpic.c#4 integrate
.. //depot/projects/smpng/sys/amd64/vmm/vmm_instruction_emul.c#11 integrate
.. //depot/projects/smpng/sys/amd64/vmm/x86.c#11 integrate
.. //depot/projects/smpng/sys/boot/common/part.c#7 integrate
.. //depot/projects/smpng/sys/cam/ata/ata_xpt.c#25 integrate
.. //depot/projects/smpng/sys/cddl/compat/opensolaris/kern/opensolaris_kmem.c#9 integrate
.. //depot/projects/smpng/sys/cddl/compat/opensolaris/sys/kmem.h#10 integrate
.. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c#33 integrate
.. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dbuf.c#24 integrate
.. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dnode.c#20 integrate
.. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dbuf.h#11 integrate
.. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dnode.h#12 integrate
.. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/sys/acl.h#5 integrate
.. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/sys/debug.h#6 integrate
.. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/sys/feature_tests.h#3 integrate
.. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/sys/processor.h#4 integrate
.. //depot/projects/smpng/sys/cddl/dev/fbt/fbt.c#9 integrate
.. //depot/projects/smpng/sys/compat/freebsd32/freebsd32.h#24 integrate
.. //depot/projects/smpng/sys/compat/freebsd32/freebsd32_misc.c#90 integrate
.. //depot/projects/smpng/sys/compat/freebsd32/freebsd32_proto.h#81 integrate
.. //depot/projects/smpng/sys/compat/freebsd32/freebsd32_syscall.h#80 integrate
.. //depot/projects/smpng/sys/compat/freebsd32/freebsd32_syscalls.c#80 integrate
.. //depot/projects/smpng/sys/compat/freebsd32/freebsd32_sysent.c#81 integrate
.. //depot/projects/smpng/sys/compat/freebsd32/freebsd32_systrace_args.c#14 integrate
.. //depot/projects/smpng/sys/compat/freebsd32/syscalls.master#84 integrate
.. //depot/projects/smpng/sys/conf/NOTES#215 integrate
.. //depot/projects/smpng/sys/conf/files#301 integrate
.. //depot/projects/smpng/sys/contrib/dev/iwn/iwlwifi-100-39.31.5.1.fw.uu#1 branch
.. //depot/projects/smpng/sys/contrib/rdma/krping/krping.c#7 integrate
.. //depot/projects/smpng/sys/dev/ath/if_ath.c#113 integrate
.. //depot/projects/smpng/sys/dev/ath/if_ath_beacon.c#8 integrate
.. //depot/projects/smpng/sys/dev/cxgb/cxgb_osdep.h#17 integrate
.. //depot/projects/smpng/sys/dev/cxgbe/iw_cxgbe/cm.c#3 integrate
.. //depot/projects/smpng/sys/dev/cxgbe/iw_cxgbe/qp.c#2 integrate
.. //depot/projects/smpng/sys/dev/drm2/drm_fb_helper.c#7 integrate
.. //depot/projects/smpng/sys/dev/drm2/i915/i915_drv.h#4 integrate
.. //depot/projects/smpng/sys/dev/drm2/i915/i915_irq.c#3 integrate
.. //depot/projects/smpng/sys/dev/drm2/i915/intel_opregion.c#3 integrate
.. //depot/projects/smpng/sys/dev/drm2/radeon/radeon_fb.c#3 integrate
.. //depot/projects/smpng/sys/dev/fb/creator_vt.c#2 integrate
.. //depot/projects/smpng/sys/dev/hptnr/README#2 integrate
.. //depot/projects/smpng/sys/dev/hptnr/amd64-elf.hptnr_lib.o.uu#2 integrate
.. //depot/projects/smpng/sys/dev/hptnr/hptnr_config.c#2 integrate
.. //depot/projects/smpng/sys/dev/hptnr/hptnr_os_bsd.c#3 integrate
.. //depot/projects/smpng/sys/dev/hptnr/hptnr_osm_bsd.c#4 integrate
.. //depot/projects/smpng/sys/dev/hptnr/i386-elf.hptnr_lib.o.uu#2 integrate
.. //depot/projects/smpng/sys/dev/i40e/README#2 delete
.. //depot/projects/smpng/sys/dev/i40e/i40e.h#3 delete
.. //depot/projects/smpng/sys/dev/i40e/i40e_adminq.c#3 delete
.. //depot/projects/smpng/sys/dev/i40e/i40e_adminq.h#3 delete
.. //depot/projects/smpng/sys/dev/i40e/i40e_adminq_cmd.h#3 delete
.. //depot/projects/smpng/sys/dev/i40e/i40e_alloc.h#2 delete
.. //depot/projects/smpng/sys/dev/i40e/i40e_common.c#3 delete
.. //depot/projects/smpng/sys/dev/i40e/i40e_hmc.c#2 delete
.. //depot/projects/smpng/sys/dev/i40e/i40e_hmc.h#3 delete
.. //depot/projects/smpng/sys/dev/i40e/i40e_lan_hmc.c#3 delete
.. //depot/projects/smpng/sys/dev/i40e/i40e_lan_hmc.h#3 delete
.. //depot/projects/smpng/sys/dev/i40e/i40e_nvm.c#3 delete
.. //depot/projects/smpng/sys/dev/i40e/i40e_osdep.c#3 delete
.. //depot/projects/smpng/sys/dev/i40e/i40e_osdep.h#2 delete
.. //depot/projects/smpng/sys/dev/i40e/i40e_pf.h#2 delete
.. //depot/projects/smpng/sys/dev/i40e/i40e_prototype.h#3 delete
.. //depot/projects/smpng/sys/dev/i40e/i40e_register.h#3 delete
.. //depot/projects/smpng/sys/dev/i40e/i40e_register_x710_int.h#3 delete
.. //depot/projects/smpng/sys/dev/i40e/i40e_status.h#2 delete
.. //depot/projects/smpng/sys/dev/i40e/i40e_txrx.c#3 delete
.. //depot/projects/smpng/sys/dev/i40e/i40e_type.h#3 delete
.. //depot/projects/smpng/sys/dev/i40e/i40e_virtchnl.h#2 delete
.. //depot/projects/smpng/sys/dev/i40e/if_i40e.c#3 delete
.. //depot/projects/smpng/sys/dev/iwn/if_iwn.c#37 integrate
.. //depot/projects/smpng/sys/dev/iwn/if_iwnreg.h#13 integrate
.. //depot/projects/smpng/sys/dev/iwn/if_iwnvar.h#18 integrate
.. //depot/projects/smpng/sys/dev/ixl/README#1 branch
.. //depot/projects/smpng/sys/dev/ixl/i40e_adminq.c#1 branch
.. //depot/projects/smpng/sys/dev/ixl/i40e_adminq.h#1 branch
.. //depot/projects/smpng/sys/dev/ixl/i40e_adminq_cmd.h#1 branch
.. //depot/projects/smpng/sys/dev/ixl/i40e_alloc.h#1 branch
.. //depot/projects/smpng/sys/dev/ixl/i40e_common.c#1 branch
.. //depot/projects/smpng/sys/dev/ixl/i40e_hmc.c#1 branch
.. //depot/projects/smpng/sys/dev/ixl/i40e_hmc.h#1 branch
.. //depot/projects/smpng/sys/dev/ixl/i40e_lan_hmc.c#1 branch
.. //depot/projects/smpng/sys/dev/ixl/i40e_lan_hmc.h#1 branch
.. //depot/projects/smpng/sys/dev/ixl/i40e_nvm.c#1 branch
.. //depot/projects/smpng/sys/dev/ixl/i40e_osdep.c#1 branch
.. //depot/projects/smpng/sys/dev/ixl/i40e_osdep.h#1 branch
.. //depot/projects/smpng/sys/dev/ixl/i40e_prototype.h#1 branch
.. //depot/projects/smpng/sys/dev/ixl/i40e_register.h#1 branch
.. //depot/projects/smpng/sys/dev/ixl/i40e_register_x710_int.h#1 branch
.. //depot/projects/smpng/sys/dev/ixl/i40e_status.h#1 branch
.. //depot/projects/smpng/sys/dev/ixl/i40e_type.h#1 branch
.. //depot/projects/smpng/sys/dev/ixl/i40e_virtchnl.h#1 branch
.. //depot/projects/smpng/sys/dev/ixl/if_ixl.c#1 branch
.. //depot/projects/smpng/sys/dev/ixl/if_ixlv.c#1 branch
.. //depot/projects/smpng/sys/dev/ixl/ixl.h#1 branch
.. //depot/projects/smpng/sys/dev/ixl/ixl_pf.h#1 branch
.. //depot/projects/smpng/sys/dev/ixl/ixl_txrx.c#1 branch
.. //depot/projects/smpng/sys/dev/ixl/ixlv.h#1 branch
.. //depot/projects/smpng/sys/dev/ixl/ixlvc.c#1 branch
.. //depot/projects/smpng/sys/dev/pci/pci.c#142 integrate
.. //depot/projects/smpng/sys/dev/pci/pci_if.m#14 integrate
.. //depot/projects/smpng/sys/dev/pci/pci_private.h#35 integrate
.. //depot/projects/smpng/sys/dev/pci/pcivar.h#45 integrate
.. //depot/projects/smpng/sys/dev/streams/streams.c#43 integrate
.. //depot/projects/smpng/sys/dev/usb/wlan/if_run.c#30 integrate
.. //depot/projects/smpng/sys/dev/vt/hw/efifb/efifb.c#3 integrate
.. //depot/projects/smpng/sys/dev/vt/hw/fb/vt_early_fb.c#4 integrate
.. //depot/projects/smpng/sys/dev/vt/hw/fb/vt_fb.c#7 integrate
.. //depot/projects/smpng/sys/dev/vt/hw/fb/vt_fb.h#4 integrate
.. //depot/projects/smpng/sys/dev/vt/hw/ofwfb/ofwfb.c#5 integrate
.. //depot/projects/smpng/sys/dev/vt/hw/vga/vt_vga.c#3 integrate
.. //depot/projects/smpng/sys/dev/vt/vt.h#7 integrate
.. //depot/projects/smpng/sys/dev/vt/vt_buf.c#5 integrate
.. //depot/projects/smpng/sys/dev/vt/vt_core.c#7 integrate
.. //depot/projects/smpng/sys/dev/xen/blkback/blkback.c#14 integrate
.. //depot/projects/smpng/sys/dev/xen/netback/netback.c#14 integrate
.. //depot/projects/smpng/sys/fs/autofs/autofs.c#2 integrate
.. //depot/projects/smpng/sys/fs/autofs/autofs.h#5 integrate
.. //depot/projects/smpng/sys/fs/autofs/autofs_vfsops.c#5 integrate
.. //depot/projects/smpng/sys/fs/autofs/autofs_vnops.c#5 integrate
.. //depot/projects/smpng/sys/kern/kern_descrip.c#156 integrate
.. //depot/projects/smpng/sys/kern/kern_exit.c#168 integrate
.. //depot/projects/smpng/sys/kern/kern_lock.c#96 integrate
.. //depot/projects/smpng/sys/kern/kern_proc.c#136 integrate
.. //depot/projects/smpng/sys/kern/kern_prot.c#123 integrate
.. //depot/projects/smpng/sys/kern/kern_sig.c#176 integrate
.. //depot/projects/smpng/sys/kern/kern_umtx.c#54 integrate
.. //depot/projects/smpng/sys/kern/sched_4bsd.c#115 integrate
.. //depot/projects/smpng/sys/kern/sched_ule.c#133 integrate
.. //depot/projects/smpng/sys/kern/subr_terminal.c#5 integrate
.. //depot/projects/smpng/sys/kern/sys_socket.c#41 integrate
.. //depot/projects/smpng/sys/kern/uipc_socket.c#159 integrate
.. //depot/projects/smpng/sys/kern/vfs_lookup.c#79 integrate
.. //depot/projects/smpng/sys/kern/vfs_vnops.c#125 integrate
.. //depot/projects/smpng/sys/modules/Makefile#206 integrate
.. //depot/projects/smpng/sys/modules/aic7xxx/ahc/ahc_eisa/Makefile#6 integrate
.. //depot/projects/smpng/sys/modules/drm2/Makefile#6 integrate
.. //depot/projects/smpng/sys/modules/drm2/i915kms/Makefile#6 integrate
.. //depot/projects/smpng/sys/modules/i40e/Makefile#3 delete
.. //depot/projects/smpng/sys/modules/iwnfw/Makefile#11 integrate
.. //depot/projects/smpng/sys/modules/iwnfw/iwn100/Makefile#1 branch
.. //depot/projects/smpng/sys/modules/ixl/Makefile#1 branch
.. //depot/projects/smpng/sys/modules/ixlv/Makefile#1 branch
.. //depot/projects/smpng/sys/modules/mlx4/Makefile#8 integrate
.. //depot/projects/smpng/sys/modules/mlx4ib/Makefile#8 integrate
.. //depot/projects/smpng/sys/modules/mlxen/Makefile#7 integrate
.. //depot/projects/smpng/sys/netinet/in.c#90 integrate
.. //depot/projects/smpng/sys/netinet/sctp_sysctl.c#34 integrate
.. //depot/projects/smpng/sys/netinet6/in6.c#93 integrate
.. //depot/projects/smpng/sys/netinet6/scope6.c#24 integrate
.. //depot/projects/smpng/sys/netinet6/scope6_var.h#9 integrate
.. //depot/projects/smpng/sys/netpfil/ipfw/ip_fw2.c#9 integrate
.. //depot/projects/smpng/sys/netpfil/ipfw/ip_fw_sockopt.c#7 integrate
.. //depot/projects/smpng/sys/ofed/drivers/infiniband/core/addr.c#5 integrate
.. //depot/projects/smpng/sys/ofed/drivers/infiniband/core/cm.c#2 integrate
.. //depot/projects/smpng/sys/ofed/drivers/infiniband/core/device.c#3 integrate
.. //depot/projects/smpng/sys/ofed/drivers/infiniband/core/iwcm.c#3 integrate
.. //depot/projects/smpng/sys/ofed/drivers/infiniband/core/sa_query.c#3 integrate
.. //depot/projects/smpng/sys/ofed/drivers/infiniband/core/sysfs.c#3 integrate
.. //depot/projects/smpng/sys/ofed/drivers/infiniband/core/ucm.c#3 integrate
.. //depot/projects/smpng/sys/ofed/drivers/infiniband/core/user_mad.c#2 integrate
.. //depot/projects/smpng/sys/ofed/drivers/infiniband/core/uverbs_cmd.c#3 integrate
.. //depot/projects/smpng/sys/ofed/drivers/infiniband/core/uverbs_main.c#3 integrate
.. //depot/projects/smpng/sys/ofed/drivers/infiniband/hw/mlx4/alias_GUID.c#2 integrate
.. //depot/projects/smpng/sys/ofed/drivers/infiniband/hw/mlx4/cm.c#2 integrate
.. //depot/projects/smpng/sys/ofed/drivers/infiniband/hw/mlx4/mad.c#3 integrate
.. //depot/projects/smpng/sys/ofed/drivers/infiniband/hw/mlx4/main.c#4 integrate
.. //depot/projects/smpng/sys/ofed/drivers/infiniband/hw/mlx4/mlx4_ib.h#3 integrate
.. //depot/projects/smpng/sys/ofed/drivers/infiniband/hw/mlx4/mr.c#3 integrate
.. //depot/projects/smpng/sys/ofed/drivers/infiniband/hw/mlx4/qp.c#5 integrate
.. //depot/projects/smpng/sys/ofed/drivers/infiniband/hw/mlx4/sysfs.c#2 integrate
.. //depot/projects/smpng/sys/ofed/drivers/infiniband/hw/mthca/mthca_allocator.c#2 integrate
.. //depot/projects/smpng/sys/ofed/drivers/infiniband/hw/mthca/mthca_main.c#3 integrate
.. //depot/projects/smpng/sys/ofed/drivers/infiniband/hw/mthca/mthca_provider.c#3 integrate
.. //depot/projects/smpng/sys/ofed/drivers/infiniband/hw/mthca/mthca_reset.c#2 integrate
.. //depot/projects/smpng/sys/ofed/drivers/infiniband/ulp/ipoib/ipoib_main.c#10 integrate
.. //depot/projects/smpng/sys/ofed/drivers/infiniband/ulp/sdp/sdp.h#3 integrate
.. //depot/projects/smpng/sys/ofed/drivers/net/mlx4/alloc.c#3 integrate
.. //depot/projects/smpng/sys/ofed/drivers/net/mlx4/cmd.c#3 integrate
.. //depot/projects/smpng/sys/ofed/drivers/net/mlx4/cq.c#3 integrate
.. //depot/projects/smpng/sys/ofed/drivers/net/mlx4/en_netdev.c#11 integrate
.. //depot/projects/smpng/sys/ofed/drivers/net/mlx4/en_rx.c#5 integrate
.. //depot/projects/smpng/sys/ofed/drivers/net/mlx4/eq.c#4 integrate
.. //depot/projects/smpng/sys/ofed/drivers/net/mlx4/fw.c#3 integrate
.. //depot/projects/smpng/sys/ofed/drivers/net/mlx4/main.c#5 integrate
.. //depot/projects/smpng/sys/ofed/drivers/net/mlx4/mcg.c#4 integrate
.. //depot/projects/smpng/sys/ofed/drivers/net/mlx4/mr.c#3 integrate
.. //depot/projects/smpng/sys/ofed/drivers/net/mlx4/pd.c#3 integrate
.. //depot/projects/smpng/sys/ofed/drivers/net/mlx4/qp.c#3 integrate
.. //depot/projects/smpng/sys/ofed/drivers/net/mlx4/reset.c#3 integrate
.. //depot/projects/smpng/sys/ofed/drivers/net/mlx4/resource_tracker.c#2 integrate
.. //depot/projects/smpng/sys/ofed/drivers/net/mlx4/sense.c#3 integrate
.. //depot/projects/smpng/sys/ofed/drivers/net/mlx4/srq.c#3 integrate
.. //depot/projects/smpng/sys/ofed/drivers/net/mlx4/xrcd.c#2 integrate
.. //depot/projects/smpng/sys/ofed/include/asm/atomic-long.h#2 integrate
.. //depot/projects/smpng/sys/ofed/include/asm/atomic.h#3 integrate
.. //depot/projects/smpng/sys/ofed/include/asm/byteorder.h#3 integrate
.. //depot/projects/smpng/sys/ofed/include/asm/current.h#2 delete
.. //depot/projects/smpng/sys/ofed/include/asm/fcntl.h#2 integrate
.. //depot/projects/smpng/sys/ofed/include/asm/io.h#2 integrate
.. //depot/projects/smpng/sys/ofed/include/asm/page.h#2 integrate
.. //depot/projects/smpng/sys/ofed/include/asm/pgtable.h#2 integrate
.. //depot/projects/smpng/sys/ofed/include/asm/semaphore.h#2 delete
.. //depot/projects/smpng/sys/ofed/include/asm/system.h#2 delete
.. //depot/projects/smpng/sys/ofed/include/asm/types.h#3 integrate
.. //depot/projects/smpng/sys/ofed/include/asm/uaccess.h#2 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/atomic.h#2 delete
.. //depot/projects/smpng/sys/ofed/include/linux/bitmap.h#2 delete
.. //depot/projects/smpng/sys/ofed/include/linux/bitops.h#6 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/cache.h#1 branch
.. //depot/projects/smpng/sys/ofed/include/linux/cdev.h#3 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/clocksource.h#2 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/compat.h#3 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/compiler.h#2 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/completion.h#2 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/ctype.h#2 delete
.. //depot/projects/smpng/sys/ofed/include/linux/delay.h#2 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/device.h#3 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/dma-attrs.h#2 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/dma-mapping.h#4 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/dmapool.h#2 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/err.h#2 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/errno.h#2 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/etherdevice.h#1 branch
.. //depot/projects/smpng/sys/ofed/include/linux/ethtool.h#2 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/file.h#4 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/fs.h#3 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/gfp.h#6 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/hardirq.h#2 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/idr.h#3 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/if_arp.h#2 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/if_ether.h#3 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/if_vlan.h#2 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/in.h#3 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/in6.h#4 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/inet.h#2 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/inetdevice.h#2 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/init.h#2 delete
.. //depot/projects/smpng/sys/ofed/include/linux/interrupt.h#2 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/io-mapping.h#2 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/io.h#3 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/ioctl.h#2 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/jiffies.h#2 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/kdev_t.h#2 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/kernel.h#3 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/kmod.h#1 branch
.. //depot/projects/smpng/sys/ofed/include/linux/kobject.h#2 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/kref.h#2 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/kthread.h#2 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/ktime.h#1 branch
.. //depot/projects/smpng/sys/ofed/include/linux/linux_compat.c#9 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/linux_idr.c#3 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/linux_radix.c#4 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/list.h#5 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/lockdep.h#2 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/log2.h#3 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/math64.h#1 branch
.. //depot/projects/smpng/sys/ofed/include/linux/miscdevice.h#2 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/mm.h#2 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/module.h#4 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/moduleparam.h#3 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/mount.h#2 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/mutex.h#2 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/net.h#4 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/netdevice.h#2 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/notifier.h#2 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/page.h#4 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/pci.h#6 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/poll.h#2 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/radix-tree.h#2 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/random.h#2 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/rbtree.h#2 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/rtnetlink.h#2 delete
.. //depot/projects/smpng/sys/ofed/include/linux/rwlock.h#2 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/rwsem.h#2 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/scatterlist.h#2 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/sched.h#2 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/semaphore.h#2 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/slab.h#2 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/socket.h#2 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/spinlock.h#2 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/stddef.h#2 delete
.. //depot/projects/smpng/sys/ofed/include/linux/string.h#2 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/sysfs.h#4 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/timer.h#3 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/types.h#4 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/uaccess.h#2 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/vmalloc.h#2 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/wait.h#2 integrate
.. //depot/projects/smpng/sys/ofed/include/linux/workqueue.h#5 integrate
.. //depot/projects/smpng/sys/ofed/include/net/addrconf.h#2 delete
.. //depot/projects/smpng/sys/ofed/include/net/arp.h#2 delete
.. //depot/projects/smpng/sys/ofed/include/net/if_inet6.h#1 branch
.. //depot/projects/smpng/sys/ofed/include/net/ip.h#3 integrate
.. //depot/projects/smpng/sys/ofed/include/net/ip6_route.h#2 delete
.. //depot/projects/smpng/sys/ofed/include/net/ipv6.h#3 integrate
.. //depot/projects/smpng/sys/ofed/include/net/neighbour.h#2 delete
.. //depot/projects/smpng/sys/ofed/include/net/netevent.h#3 integrate
.. //depot/projects/smpng/sys/ofed/include/net/tcp.h#2 integrate
.. //depot/projects/smpng/sys/ofed/include/rdma/ib_umem.h#3 integrate
.. //depot/projects/smpng/sys/ofed/include/rdma/ib_verbs.h#3 integrate
.. //depot/projects/smpng/sys/powerpc/ps3/ps3_syscons.c#6 integrate
.. //depot/projects/smpng/sys/sparc64/include/vmparam.h#31 integrate
.. //depot/projects/smpng/sys/sys/file.h#46 integrate
.. //depot/projects/smpng/sys/sys/lockmgr.h#34 integrate
.. //depot/projects/smpng/sys/sys/syscallsubr.h#75 integrate
.. //depot/projects/smpng/sys/sys/terminal.h#4 integrate
.. //depot/projects/smpng/sys/sys/user.h#59 integrate
.. //depot/projects/smpng/sys/sys/vnode.h#127 integrate
.. //depot/projects/smpng/sys/ufs/ufs/ufs_dirhash.c#42 integrate
.. //depot/projects/smpng/sys/ufs/ufs/ufs_quota.c#53 integrate
.. //depot/projects/smpng/sys/vm/vm_fault.c#102 integrate
.. //depot/projects/smpng/sys/vm/vm_pageout.c#103 integrate

Differences ...

==== //depot/projects/smpng/share/man/man9/Makefile#46 (text+ko) ====

@@ -1,4 +1,4 @@
-# $FreeBSD: head/share/man/man9/Makefile 269485 2014-08-03 20:40:51Z alc $
+# $FreeBSD: head/share/man/man9/Makefile 270740 2014-08-28 04:35:38Z hselasky $
 
 MAN=	accept_filter.9 \
 	accf_data.9 \
@@ -1383,7 +1383,8 @@
 	sysctl.9 SYSCTL_ULONG.9 \
 	sysctl.9 SYSCTL_UQUAD.9
 MLINKS+=sysctl_add_oid.9 sysctl_move_oid.9 \
-	sysctl_add_oid.9 sysctl_remove_oid.9
+	sysctl_add_oid.9 sysctl_remove_oid.9 \
+	sysctl_add_oid.9 sysctl_remove_name.9
 MLINKS+=sysctl_ctx_init.9 sysctl_ctx_entry_add.9 \
 	sysctl_ctx_init.9 sysctl_ctx_entry_del.9 \
 	sysctl_ctx_init.9 sysctl_ctx_entry_find.9 \

==== //depot/projects/smpng/share/man/man9/sysctl_add_oid.9#6 (text+ko) ====

@@ -25,15 +25,16 @@
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
 .\"
-.\" $FreeBSD: head/share/man/man9/sysctl_add_oid.9 269344 2014-07-31 17:18:40Z hselasky $
+.\" $FreeBSD: head/share/man/man9/sysctl_add_oid.9 270740 2014-08-28 04:35:38Z hselasky $
 .\"
-.Dd July 31, 2014
+.Dd August 28, 2014
 .Dt SYSCTL_ADD_OID 9
 .Os
 .Sh NAME
 .Nm sysctl_add_oid ,
 .Nm sysctl_move_oid ,
-.Nm sysctl_remove_oid
+.Nm sysctl_remove_oid ,
+.Nm sysctl_remove_name
 .Nd runtime sysctl tree manipulation
 .Sh SYNOPSIS
 .In sys/types.h
@@ -62,6 +63,13 @@
 .Fa "int del"
 .Fa "int recurse"
 .Fc
+.Ft int
+.Fo sysctl_remove_name
+.Fa "struct sysctl_oid *oidp"
+.Fa "const char *name"
+.Fa "int del"
+.Fa "int recurse"
+.Fc
 .Sh DESCRIPTION
 These functions provide the interface for creating and deleting sysctl
 OIDs at runtime for example during the lifetime of a module.
@@ -149,7 +157,25 @@
 if other code sections continue to use removed subtrees.
 .El
 .Pp
-Again, in most cases the programmer should use contexts,
+The
+.Fn sysctl_remove_name
+function looks up the child node matching the
+.Fa name
+argument and then invokes the
+.Fn sysctl_remove_oid
+function on that node, passing along the
+.Fa del
+and
+.Fa recurse
+arguments.
+If a node having the specified name does not exist an error code of
+.Er ENOENT
+is returned.
+Else the error code from
+.Fn sysctl_remove_oid
+is returned.
+.Pp
+In most cases the programmer should use contexts,
 as described in
 .Xr sysctl_ctx_init 9 ,
 to keep track of created OIDs,

==== //depot/projects/smpng/sys/amd64/include/vmm.h#13 (text+ko) ====

@@ -23,7 +23,7 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  *
- * $FreeBSD: head/sys/amd64/include/vmm.h 269109 2014-07-26 02:53:51Z neel $
+ * $FreeBSD: head/sys/amd64/include/vmm.h 270438 2014-08-24 02:07:34Z grehan $
  */
 
 #ifndef _VMM_H_
@@ -587,25 +587,25 @@
 void vm_inject_fault(void *vm, int vcpuid, int vector, int errcode_valid,
     int errcode);
 
-static void __inline
+static __inline void
 vm_inject_ud(void *vm, int vcpuid)
 {
 	vm_inject_fault(vm, vcpuid, IDT_UD, 0, 0);
 }
 
-static void __inline
+static __inline void
 vm_inject_gp(void *vm, int vcpuid)
 {
 	vm_inject_fault(vm, vcpuid, IDT_GP, 1, 0);
 }
 
-static void __inline
+static __inline void
 vm_inject_ac(void *vm, int vcpuid, int errcode)
 {
 	vm_inject_fault(vm, vcpuid, IDT_AC, 1, errcode);
 }
 
-static void __inline
+static __inline void
 vm_inject_ss(void *vm, int vcpuid, int errcode)
 {
 	vm_inject_fault(vm, vcpuid, IDT_SS, 1, errcode);

==== //depot/projects/smpng/sys/amd64/vmm/io/vatpic.c#4 (text+ko) ====

@@ -25,7 +25,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: head/sys/amd64/vmm/io/vatpic.c 269989 2014-08-14 18:03:38Z neel $");
+__FBSDID("$FreeBSD: head/sys/amd64/vmm/io/vatpic.c 270434 2014-08-23 21:16:26Z neel $");
 
 #include <sys/param.h>
 #include <sys/types.h>
@@ -500,13 +500,19 @@
 	VATPIC_LOCK(vatpic);
 
 	pin = vatpic_get_highest_irrpin(atpic);
-	if (pin == -1)
-		pin = 7;
 	if (pin == 2) {
 		atpic = &vatpic->atpic[1];
 		pin = vatpic_get_highest_irrpin(atpic);
 	}
 
+	/*
+	 * If there are no pins active at this moment then return the spurious
+	 * interrupt vector instead.
+	 */
+	if (pin == -1)
+		pin = 7;
+
+	KASSERT(pin >= 0 && pin <= 7, ("%s: invalid pin %d", __func__, pin));
 	*vecptr = atpic->irq_base + pin;
 
 	VATPIC_UNLOCK(vatpic);

==== //depot/projects/smpng/sys/amd64/vmm/vmm_instruction_emul.c#11 (text+ko) ====

@@ -24,11 +24,11 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  *
- * $FreeBSD: head/sys/amd64/vmm/vmm_instruction_emul.c 269700 2014-08-08 03:49:01Z neel $
+ * $FreeBSD: head/sys/amd64/vmm/vmm_instruction_emul.c 270689 2014-08-27 00:53:56Z grehan $
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: head/sys/amd64/vmm/vmm_instruction_emul.c 269700 2014-08-08 03:49:01Z neel $");
+__FBSDID("$FreeBSD: head/sys/amd64/vmm/vmm_instruction_emul.c 270689 2014-08-27 00:53:56Z grehan $");
 
 #ifdef _KERNEL
 #include <sys/param.h>
@@ -65,6 +65,7 @@
 	VIE_OP_TYPE_MOVZX,
 	VIE_OP_TYPE_AND,
 	VIE_OP_TYPE_OR,
+	VIE_OP_TYPE_SUB,
 	VIE_OP_TYPE_TWO_BYTE,
 	VIE_OP_TYPE_PUSH,
 	VIE_OP_TYPE_CMP,
@@ -97,6 +98,10 @@
 		.op_byte = 0x0F,
 		.op_type = VIE_OP_TYPE_TWO_BYTE
 	},
+	[0x2B] = {
+		.op_byte = 0x2B,
+		.op_type = VIE_OP_TYPE_SUB,
+	},
 	[0x3B] = {
 		.op_byte = 0x3B,
 		.op_type = VIE_OP_TYPE_CMP,
@@ -597,18 +602,16 @@
 		break;
 	case 0x81:
 		/*
-		 * AND mem (ModRM:r/m) with immediate and store the
+		 * AND/OR mem (ModRM:r/m) with immediate and store the
 		 * result in mem.
 		 *
-		 * 81 /4		and r/m16, imm16
-		 * 81 /4		and r/m32, imm32
-		 * REX.W + 81 /4	and r/m64, imm32 sign-extended to 64
+		 * AND: i = 4
+		 * OR:  i = 1
+		 * 81 /i		op r/m16, imm16
+		 * 81 /i		op r/m32, imm32
+		 * REX.W + 81 /i	op r/m64, imm32 sign-extended to 64
 		 *
-		 * Currently, only the AND operation of the 0x81 opcode
-		 * is implemented (ModRM:reg = b100).
 		 */
-		if ((vie->reg & 7) != 4)
-			break;
 
 		/* get the first operand */
                 error = memread(vm, vcpuid, gpa, &val1, size, arg);
@@ -616,11 +619,26 @@
 			break;
 
                 /*
-		 * perform the operation with the pre-fetched immediate
-		 * operand and write the result
-		 */
-                val1 &= vie->immediate;
-                error = memwrite(vm, vcpuid, gpa, val1, size, arg);
+                 * perform the operation with the pre-fetched immediate
+                 * operand and write the result
+                 */
+		switch (vie->reg & 7) {
+		case 0x4:
+			/* modrm:reg == b100, AND */
+			val1 &= vie->immediate;
+			break;
+		case 0x1:
+			/* modrm:reg == b001, OR */
+			val1 |= vie->immediate;
+			break;
+		default:
+			error = EINVAL;
+			break;
+		}
+		if (error)
+			break;
+
+		error = memwrite(vm, vcpuid, gpa, val1, size, arg);
 		break;
 	default:
 		break;
@@ -723,6 +741,62 @@
 }
 
 static int
+emulate_sub(void *vm, int vcpuid, uint64_t gpa, struct vie *vie,
+	    mem_region_read_t memread, mem_region_write_t memwrite, void *arg)
+{
+	int error, size;
+	uint64_t nval, rflags, rflags2, val1, val2;
+	enum vm_reg_name reg;
+
+	size = vie->opsize;
+	error = EINVAL;
+
+	switch (vie->op.op_byte) {
+	case 0x2B:
+		/*
+		 * SUB r/m from r and store the result in r
+		 * 
+		 * 2B/r            SUB r16, r/m16
+		 * 2B/r            SUB r32, r/m32
+		 * REX.W + 2B/r    SUB r64, r/m64
+		 */
+
+		/* get the first operand */
+		reg = gpr_map[vie->reg];
+		error = vie_read_register(vm, vcpuid, reg, &val1);
+		if (error)
+			break;
+
+		/* get the second operand */
+		error = memread(vm, vcpuid, gpa, &val2, size, arg);
+		if (error)
+			break;
+
+		/* perform the operation and write the result */
+		nval = val1 - val2;
+		error = vie_update_register(vm, vcpuid, reg, nval, size);
+		break;
+	default:
+		break;
+	}
+
+	if (!error) {
+		rflags2 = getcc(size, val1, val2);
+		error = vie_read_register(vm, vcpuid, VM_REG_GUEST_RFLAGS,
+		    &rflags);
+		if (error)
+			return (error);
+
+		rflags &= ~RFLAGS_STATUS_BITS;
+		rflags |= rflags2 & RFLAGS_STATUS_BITS;
+		error = vie_update_register(vm, vcpuid, VM_REG_GUEST_RFLAGS,
+		    rflags, 8);
+	}
+
+	return (error);
+}
+
+static int
 emulate_push(void *vm, int vcpuid, uint64_t mmio_gpa, struct vie *vie,
     struct vm_guest_paging *paging, mem_region_read_t memread,
     mem_region_write_t memwrite, void *arg)
@@ -865,6 +939,10 @@
 		error = emulate_or(vm, vcpuid, gpa, vie,
 				    memread, memwrite, memarg);
 		break;
+	case VIE_OP_TYPE_SUB:
+		error = emulate_sub(vm, vcpuid, gpa, vie,
+				    memread, memwrite, memarg);
+		break;
 	default:
 		error = EINVAL;
 		break;

==== //depot/projects/smpng/sys/amd64/vmm/x86.c#11 (text+ko) ====

@@ -23,16 +23,17 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  *
- * $FreeBSD: head/sys/amd64/vmm/x86.c 266765 2014-05-27 19:04:38Z jhb $
+ * $FreeBSD: head/sys/amd64/vmm/x86.c 270437 2014-08-24 01:10:06Z neel $
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: head/sys/amd64/vmm/x86.c 266765 2014-05-27 19:04:38Z jhb $");
+__FBSDID("$FreeBSD: head/sys/amd64/vmm/x86.c 270437 2014-08-24 01:10:06Z neel $");
 
 #include <sys/param.h>
 #include <sys/pcpu.h>
 #include <sys/systm.h>
 #include <sys/cpuset.h>
+#include <sys/sysctl.h>
 
 #include <machine/clock.h>
 #include <machine/cpufunc.h>
@@ -45,20 +46,49 @@
 #include "vmm_host.h"
 #include "x86.h"
 
+SYSCTL_DECL(_hw_vmm);
+static SYSCTL_NODE(_hw_vmm, OID_AUTO, topology, CTLFLAG_RD, 0, NULL);
+
 #define	CPUID_VM_HIGH		0x40000000
 
 static const char bhyve_id[12] = "bhyve bhyve ";
 
 static uint64_t bhyve_xcpuids;
 
+/*
+ * The default CPU topology is a single thread per package.
+ */
+static u_int threads_per_core = 1;
+SYSCTL_UINT(_hw_vmm_topology, OID_AUTO, threads_per_core, CTLFLAG_RDTUN,
+    &threads_per_core, 0, NULL);
+
+static u_int cores_per_package = 1;
+SYSCTL_UINT(_hw_vmm_topology, OID_AUTO, cores_per_package, CTLFLAG_RDTUN,
+    &cores_per_package, 0, NULL);
+
+static int cpuid_leaf_b = 1;
+SYSCTL_INT(_hw_vmm_topology, OID_AUTO, cpuid_leaf_b, CTLFLAG_RDTUN,
+    &cpuid_leaf_b, 0, NULL);
+
+/*
+ * Round up to the next power of two, if necessary, and then take log2.
+ * Returns -1 if argument is zero.
+ */
+static __inline int
+log2(u_int x)
+{
+
+	return (fls(x << (1 - powerof2(x))) - 1);
+}
+
 int
 x86_emulate_cpuid(struct vm *vm, int vcpu_id,
 		  uint32_t *eax, uint32_t *ebx, uint32_t *ecx, uint32_t *edx)
 {
 	const struct xsave_limits *limits;
 	uint64_t cr4;
-	int error, enable_invpcid;
-	unsigned int 	func, regs[4];
+	int error, enable_invpcid, level, width, x2apic_id;
+	unsigned int func, regs[4], logical_cpus;
 	enum x2apic_state x2apic_state;
 
 	/*
@@ -207,30 +237,31 @@
                         */
 			regs[3] &= ~CPUID_DS;
 
-			/*
-			 * Disable multi-core.
-			 */
+			logical_cpus = threads_per_core * cores_per_package;
 			regs[1] &= ~CPUID_HTT_CORES;
-			regs[3] &= ~CPUID_HTT;
+			regs[1] |= (logical_cpus & 0xff) << 16;
+			regs[3] |= CPUID_HTT;
 			break;
 
 		case CPUID_0000_0004:
-			do_cpuid(4, regs);
+			cpuid_count(*eax, *ecx, regs);
 
-			/*
-			 * Do not expose topology.
-			 *
-			 * The maximum number of processor cores in
-			 * this physical processor package and the
-			 * maximum number of threads sharing this
-			 * cache are encoded with "plus 1" encoding.
-			 * Adding one to the value in this register
-			 * field to obtains the actual value.
-			 *
-			 * Therefore 0 for both indicates 1 core per
-			 * package and no cache sharing.
-			 */
-			regs[0] &= 0xffff8000;
+			if (regs[0] || regs[1] || regs[2] || regs[3]) {
+				regs[0] &= 0x3ff;
+				regs[0] |= (cores_per_package - 1) << 26;
+				/*
+				 * Cache topology:
+				 * - L1 and L2 are shared only by the logical
+				 *   processors in a single core.
+				 * - L3 and above are shared by all logical
+				 *   processors in the package.
+				 */
+				logical_cpus = threads_per_core;
+				level = (regs[0] >> 5) & 0x7;
+				if (level >= 3)
+					logical_cpus *= cores_per_package;
+				regs[0] |= (logical_cpus - 1) << 14;
+			}
 			break;
 
 		case CPUID_0000_0007:
@@ -284,10 +315,32 @@
 			/*
 			 * Processor topology enumeration
 			 */
-			regs[0] = 0;
-			regs[1] = 0;
-			regs[2] = *ecx & 0xff;
-			regs[3] = vcpu_id;
+			if (*ecx == 0) {
+				logical_cpus = threads_per_core;
+				width = log2(logical_cpus);
+				level = CPUID_TYPE_SMT;
+				x2apic_id = vcpu_id;
+			}
+
+			if (*ecx == 1) {
+				logical_cpus = threads_per_core *
+				    cores_per_package;
+				width = log2(logical_cpus);
+				level = CPUID_TYPE_CORE;
+				x2apic_id = vcpu_id;
+			}
+
+			if (!cpuid_leaf_b || *ecx >= 2) {
+				width = 0;
+				logical_cpus = 0;
+				level = 0;
+				x2apic_id = 0;
+			}
+
+			regs[0] = width & 0x1f;
+			regs[1] = logical_cpus & 0xffff;
+			regs[2] = (level << 8) | (*ecx & 0xff);
+			regs[3] = x2apic_id;
 			break;
 
 		case CPUID_0000_000D:

==== //depot/projects/smpng/sys/boot/common/part.c#7 (text+ko) ====

@@ -25,7 +25,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: head/sys/boot/common/part.c 263468 2014-03-21 09:29:01Z ae $");
+__FBSDID("$FreeBSD: head/sys/boot/common/part.c 270521 2014-08-25 07:15:14Z ae $");
 
 #include <stand.h>
 #include <sys/param.h>
@@ -212,8 +212,8 @@
 			return (-1);
 		}
 	}
-	ent = (struct gpt_ent *)tbl;
-	for (i = 0; i < cnt; i++, ent++) {
+	for (i = 0; i < cnt; i++) {
+		ent = (struct gpt_ent *)(tbl + i * hdr->hdr_entsz);
 		uuid_letoh(&ent->ent_type);
 		if (uuid_equal(&ent->ent_type, &gpt_uuid_unused, NULL))
 			continue;
@@ -254,8 +254,8 @@
 	    table->sectorsize);
 	if (phdr != NULL) {
 		/* Read the primary GPT table. */
-		size = MIN(MAXTBLSZ,
-		    phdr->hdr_entries * phdr->hdr_entsz / table->sectorsize);
+		size = MIN(MAXTBLSZ, (phdr->hdr_entries * phdr->hdr_entsz +
+		    table->sectorsize - 1) / table->sectorsize);
 		if (dread(dev, tbl, size, phdr->hdr_lba_table) == 0 &&
 		    gpt_checktbl(phdr, tbl, size * table->sectorsize,
 		    table->sectors - 1) == 0) {
@@ -287,8 +287,9 @@
 		    hdr.hdr_entsz != phdr->hdr_entsz ||
 		    hdr.hdr_crc_table != phdr->hdr_crc_table) {
 			/* Read the backup GPT table. */
-			size = MIN(MAXTBLSZ, phdr->hdr_entries *
-			    phdr->hdr_entsz / table->sectorsize);
+			size = MIN(MAXTBLSZ, (phdr->hdr_entries *
+			    phdr->hdr_entsz + table->sectorsize - 1) /
+			    table->sectorsize);
 			if (dread(dev, tbl, size, phdr->hdr_lba_table) == 0 &&
 			    gpt_checktbl(phdr, tbl, size * table->sectorsize,
 			    table->sectors - 1) == 0) {
@@ -302,10 +303,10 @@
 		table->type = PTABLE_NONE;
 		goto out;
 	}
-	ent = (struct gpt_ent *)tbl;
 	size = MIN(hdr.hdr_entries * hdr.hdr_entsz,
 	    MAXTBLSZ * table->sectorsize);
-	for (i = 0; i < size / hdr.hdr_entsz; i++, ent++) {
+	for (i = 0; i < size / hdr.hdr_entsz; i++) {
+		ent = (struct gpt_ent *)(tbl + i * hdr.hdr_entsz);
 		if (uuid_equal(&ent->ent_type, &gpt_uuid_unused, NULL))
 			continue;
 		entry = malloc(sizeof(*entry));

==== //depot/projects/smpng/sys/cam/ata/ata_xpt.c#25 (text+ko) ====

@@ -25,7 +25,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: head/sys/cam/ata/ata_xpt.c 270249 2014-08-20 22:58:12Z imp $");
+__FBSDID("$FreeBSD: head/sys/cam/ata/ata_xpt.c 270327 2014-08-22 13:15:59Z imp $");
 
 #include <sys/param.h>
 #include <sys/bus.h>
@@ -458,18 +458,12 @@
 		    0, 0x02);
 		break;
 	case PROBE_SETAN:
-		/* 
-		 * Only ATAPI defines this bit to mean AEN, but remember
-		 * what transport thinks about AEN.
-		 */
-		if ((softc->caps & CTS_SATA_CAPS_H_AN) && 
-		    periph->path->device->protocol == PROTO_ATAPI)
+		/* Remember what transport thinks about AEN. */
+		if (softc->caps & CTS_SATA_CAPS_H_AN)
 			path->device->inq_flags |= SID_AEN;
 		else
 			path->device->inq_flags &= ~SID_AEN;
 		xpt_async(AC_GETDEV_CHANGED, path, NULL);
-		if (periph->path->device->protocol != PROTO_ATAPI)
-			break;
 		cam_fill_ataio(ataio,
 		    1,
 		    probedone,
@@ -1057,7 +1051,8 @@
 		}
 		/* FALLTHROUGH */
 	case PROBE_SETDMAAA:
-		if ((ident_buf->satasupport & ATA_SUPPORT_ASYNCNOTIF) &&
+		if (path->device->protocol != PROTO_ATA &&
+		    (ident_buf->satasupport & ATA_SUPPORT_ASYNCNOTIF) &&
 		    (!(softc->caps & CTS_SATA_CAPS_H_AN)) !=
 		    (!(ident_buf->sataenabled & ATA_SUPPORT_ASYNCNOTIF))) {
 			PROBE_SET_ACTION(softc, PROBE_SETAN);
@@ -1178,7 +1173,7 @@
 		else
 			caps = 0;
 		/* Remember what transport thinks about AEN. */
-		if (caps & CTS_SATA_CAPS_H_AN)
+		if ((caps & CTS_SATA_CAPS_H_AN) && path->device->protocol != PROTO_ATA)
 			path->device->inq_flags |= SID_AEN;
 		else
 			path->device->inq_flags &= ~SID_AEN;

==== //depot/projects/smpng/sys/cddl/compat/opensolaris/kern/opensolaris_kmem.c#9 (text+ko) ====

@@ -25,7 +25,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: head/sys/cddl/compat/opensolaris/kern/opensolaris_kmem.c 263620 2014-03-22 10:26:09Z bdrewery $");
+__FBSDID("$FreeBSD: head/sys/cddl/compat/opensolaris/kern/opensolaris_kmem.c 270759 2014-08-28 19:50:08Z smh $");
 
 #include <sys/param.h>
 #include <sys/kernel.h>
@@ -126,18 +126,47 @@
 }
 SYSINIT(kmem_size_init, SI_SUB_KMEM, SI_ORDER_ANY, kmem_size_init, NULL);
 
-uint64_t
-kmem_size(void)
+/*
+ * The return values from kmem_free_* are only valid once the pagedaemon
+ * has been initialised, before then they return 0.
+ * 
+ * To ensure the returns are valid the caller can use a SYSINIT with
+ * subsystem set to SI_SUB_KTHREAD_PAGE and an order of at least
+ * SI_ORDER_SECOND.
+ */
+u_int
+kmem_free_target(void)
+{
+
+	return (vm_cnt.v_free_target);
+}
+
+u_int
+kmem_free_min(void)
+{
+
+	return (vm_cnt.v_free_min);
+}
+
+u_int
+kmem_free_count(void)
+{
+
+	return (vm_cnt.v_free_count);
+}
+
+u_int
+kmem_page_count(void)
 {
 
-	return (kmem_size_val);
+	return (vm_cnt.v_page_count);
 }
 
 uint64_t
-kmem_used(void)
+kmem_size(void)
 {
 
-	return (vmem_size(kmem_arena, VMEM_ALLOC));
+	return (kmem_size_val);
 }
 
 static int

==== //depot/projects/smpng/sys/cddl/compat/opensolaris/sys/kmem.h#10 (text+ko) ====

@@ -23,7 +23,7 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  *
- * $FreeBSD: head/sys/cddl/compat/opensolaris/sys/kmem.h 262329 2014-02-22 05:13:35Z markj $
+ * $FreeBSD: head/sys/cddl/compat/opensolaris/sys/kmem.h 270759 2014-08-28 19:50:08Z smh $
  */
 
 #ifndef _OPENSOLARIS_SYS_KMEM_H_

>>> TRUNCATED FOR MAIL (1000 lines) <<<



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201409080451.s884pHpl027211>