PERFORCE change 1199526 for review
John Baldwin
jhb at FreeBSD.org
Mon Sep 8 04:52:50 UTC 2014
http://p4web.freebsd.org/@@1199526?ac=10
Change 1199526 by jhb at 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) <<<
More information about the p4-projects
mailing list