Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 8 Feb 2012 03:16:30 +0000 (UTC)
From:      Rick Macklem <rmacklem@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-projects@freebsd.org
Subject:   svn commit: r231176 - in projects/nfsv4.1-client/sys: amd64/acpica amd64/amd64 amd64/conf amd64/include boot/ficl boot/ficl/i386 cam/ata cam/ctl cam/scsi compat/freebsd32 conf dev/acpica dev/ath de...
Message-ID:  <201202080316.q183GUu3019696@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: rmacklem
Date: Wed Feb  8 03:16:29 2012
New Revision: 231176
URL: http://svn.freebsd.org/changeset/base/231176

Log:
  Merge in an up-to-date kernel from head.

Added:
  projects/nfsv4.1-client/sys/amd64/conf/WITHOUT_SOURCELESS
     - copied unchanged from r231175, head/sys/amd64/conf/WITHOUT_SOURCELESS
  projects/nfsv4.1-client/sys/amd64/conf/WITHOUT_SOURCELESS_HOST
     - copied unchanged from r231175, head/sys/amd64/conf/WITHOUT_SOURCELESS_HOST
  projects/nfsv4.1-client/sys/amd64/conf/WITHOUT_SOURCELESS_UCODE
     - copied unchanged from r231175, head/sys/amd64/conf/WITHOUT_SOURCELESS_UCODE
  projects/nfsv4.1-client/sys/dev/isci/
     - copied from r231175, head/sys/dev/isci/
  projects/nfsv4.1-client/sys/dev/ixgbe/ixgbe_82598.h
     - copied unchanged from r231175, head/sys/dev/ixgbe/ixgbe_82598.h
  projects/nfsv4.1-client/sys/dev/ixgbe/ixgbe_82599.h
     - copied unchanged from r231175, head/sys/dev/ixgbe/ixgbe_82599.h
  projects/nfsv4.1-client/sys/dev/ixgbe/ixgbe_x540.c
     - copied unchanged from r231175, head/sys/dev/ixgbe/ixgbe_x540.c
  projects/nfsv4.1-client/sys/dev/ixgbe/ixgbe_x540.h
     - copied unchanged from r231175, head/sys/dev/ixgbe/ixgbe_x540.h
  projects/nfsv4.1-client/sys/dev/sound/pci/cs461x_dsp.h
     - copied unchanged from r231175, head/sys/dev/sound/pci/cs461x_dsp.h
  projects/nfsv4.1-client/sys/i386/conf/WITHOUT_SOURCELESS
     - copied unchanged from r231175, head/sys/i386/conf/WITHOUT_SOURCELESS
  projects/nfsv4.1-client/sys/i386/conf/WITHOUT_SOURCELESS_HOST
     - copied unchanged from r231175, head/sys/i386/conf/WITHOUT_SOURCELESS_HOST
  projects/nfsv4.1-client/sys/i386/conf/WITHOUT_SOURCELESS_UCODE
     - copied unchanged from r231175, head/sys/i386/conf/WITHOUT_SOURCELESS_UCODE
  projects/nfsv4.1-client/sys/modules/isci/
     - copied from r231175, head/sys/modules/isci/
  projects/nfsv4.1-client/sys/powerpc/ofw/ofw_pci.c
     - copied unchanged from r231175, head/sys/powerpc/ofw/ofw_pci.c
  projects/nfsv4.1-client/sys/powerpc/ofw/ofw_pci.h
     - copied unchanged from r231175, head/sys/powerpc/ofw/ofw_pci.h
Deleted:
  projects/nfsv4.1-client/sys/gnu/dev/
Modified:
  projects/nfsv4.1-client/sys/amd64/acpica/acpi_switch.S
  projects/nfsv4.1-client/sys/amd64/acpica/acpi_wakecode.S
  projects/nfsv4.1-client/sys/amd64/acpica/acpi_wakeup.c
  projects/nfsv4.1-client/sys/amd64/amd64/apic_vector.S
  projects/nfsv4.1-client/sys/amd64/amd64/fpu.c
  projects/nfsv4.1-client/sys/amd64/conf/GENERIC
  projects/nfsv4.1-client/sys/amd64/conf/NOTES
  projects/nfsv4.1-client/sys/amd64/include/cpufunc.h
  projects/nfsv4.1-client/sys/amd64/include/signal.h
  projects/nfsv4.1-client/sys/boot/ficl/fileaccess.c
  projects/nfsv4.1-client/sys/boot/ficl/i386/sysdep.h
  projects/nfsv4.1-client/sys/cam/ata/ata_da.c
  projects/nfsv4.1-client/sys/cam/ata/ata_xpt.c
  projects/nfsv4.1-client/sys/cam/ctl/ctl_frontend_cam_sim.c
  projects/nfsv4.1-client/sys/cam/scsi/scsi_da.c
  projects/nfsv4.1-client/sys/compat/freebsd32/freebsd32_signal.h
  projects/nfsv4.1-client/sys/conf/files
  projects/nfsv4.1-client/sys/conf/files.amd64
  projects/nfsv4.1-client/sys/conf/files.i386
  projects/nfsv4.1-client/sys/conf/files.powerpc
  projects/nfsv4.1-client/sys/conf/options
  projects/nfsv4.1-client/sys/conf/options.amd64
  projects/nfsv4.1-client/sys/conf/options.i386
  projects/nfsv4.1-client/sys/dev/acpica/acpi.c
  projects/nfsv4.1-client/sys/dev/acpica/acpi_ec.c
  projects/nfsv4.1-client/sys/dev/acpica/acpi_hpet.c
  projects/nfsv4.1-client/sys/dev/acpica/acpi_timer.c
  projects/nfsv4.1-client/sys/dev/acpica/acpivar.h
  projects/nfsv4.1-client/sys/dev/ath/ath_dfs/null/dfs_null.c
  projects/nfsv4.1-client/sys/dev/ath/ath_hal/ar5210/ar5210_attach.c
  projects/nfsv4.1-client/sys/dev/ath/ath_hal/ar5211/ar5211_attach.c
  projects/nfsv4.1-client/sys/dev/ath/ath_hal/ar5212/ar5212.h
  projects/nfsv4.1-client/sys/dev/ath/ath_hal/ar5212/ar5212_attach.c
  projects/nfsv4.1-client/sys/dev/ath/ath_hal/ar5212/ar5212_misc.c
  projects/nfsv4.1-client/sys/dev/ath/ath_hal/ar5416/ar5416_attach.c
  projects/nfsv4.1-client/sys/dev/ath/ath_hal/ar9002/ar9280_attach.c
  projects/nfsv4.1-client/sys/dev/ath/if_ath.c
  projects/nfsv4.1-client/sys/dev/bge/if_bge.c
  projects/nfsv4.1-client/sys/dev/cxgb/cxgb_adapter.h
  projects/nfsv4.1-client/sys/dev/cxgb/cxgb_main.c
  projects/nfsv4.1-client/sys/dev/cxgb/cxgb_sge.c
  projects/nfsv4.1-client/sys/dev/cxgbe/adapter.h
  projects/nfsv4.1-client/sys/dev/cxgbe/t4_l2t.c
  projects/nfsv4.1-client/sys/dev/cxgbe/t4_l2t.h
  projects/nfsv4.1-client/sys/dev/cxgbe/t4_main.c
  projects/nfsv4.1-client/sys/dev/fe/if_fe.c
  projects/nfsv4.1-client/sys/dev/ie/if_ie.c
  projects/nfsv4.1-client/sys/dev/ixgbe/ixgbe.c
  projects/nfsv4.1-client/sys/dev/ixgbe/ixgbe.h
  projects/nfsv4.1-client/sys/dev/ixgbe/ixgbe_82598.c
  projects/nfsv4.1-client/sys/dev/ixgbe/ixgbe_82599.c
  projects/nfsv4.1-client/sys/dev/ixgbe/ixgbe_api.c
  projects/nfsv4.1-client/sys/dev/ixgbe/ixgbe_api.h
  projects/nfsv4.1-client/sys/dev/ixgbe/ixgbe_common.c
  projects/nfsv4.1-client/sys/dev/ixgbe/ixgbe_common.h
  projects/nfsv4.1-client/sys/dev/ixgbe/ixgbe_mbx.c
  projects/nfsv4.1-client/sys/dev/ixgbe/ixgbe_mbx.h
  projects/nfsv4.1-client/sys/dev/ixgbe/ixgbe_osdep.h
  projects/nfsv4.1-client/sys/dev/ixgbe/ixgbe_phy.c
  projects/nfsv4.1-client/sys/dev/ixgbe/ixgbe_phy.h
  projects/nfsv4.1-client/sys/dev/ixgbe/ixgbe_type.h
  projects/nfsv4.1-client/sys/dev/ixgbe/ixgbe_vf.c
  projects/nfsv4.1-client/sys/dev/ixgbe/ixgbe_vf.h
  projects/nfsv4.1-client/sys/dev/ixgbe/ixv.c
  projects/nfsv4.1-client/sys/dev/ixgbe/ixv.h
  projects/nfsv4.1-client/sys/dev/mvs/mvs.h
  projects/nfsv4.1-client/sys/dev/mvs/mvs_soc.c
  projects/nfsv4.1-client/sys/dev/pci/pcireg.h
  projects/nfsv4.1-client/sys/dev/sound/pci/csa.c
  projects/nfsv4.1-client/sys/dev/sound/pci/csareg.h
  projects/nfsv4.1-client/sys/dev/sound/pci/hda/hdac.c
  projects/nfsv4.1-client/sys/dev/sound/pci/hda/hdac.h
  projects/nfsv4.1-client/sys/dev/sound/pci/hda/hdacc.c
  projects/nfsv4.1-client/sys/dev/sound/pcm/buffer.c
  projects/nfsv4.1-client/sys/dev/sound/pcm/buffer.h
  projects/nfsv4.1-client/sys/dev/sound/pcm/channel.c
  projects/nfsv4.1-client/sys/dev/xen/netback/netback.c
  projects/nfsv4.1-client/sys/fs/ext2fs/ext2_dinode.h
  projects/nfsv4.1-client/sys/fs/ext2fs/ext2fs.h
  projects/nfsv4.1-client/sys/fs/ext2fs/inode.h
  projects/nfsv4.1-client/sys/fs/nfsclient/nfs_clstate.c
  projects/nfsv4.1-client/sys/fs/nfsclient/nfs_clvfsops.c
  projects/nfsv4.1-client/sys/fs/nfsclient/nfs_clvnops.c
  projects/nfsv4.1-client/sys/fs/nwfs/nwfs_vnops.c
  projects/nfsv4.1-client/sys/fs/smbfs/smbfs_vnops.c
  projects/nfsv4.1-client/sys/geom/journal/g_journal.c
  projects/nfsv4.1-client/sys/geom/part/g_part.c
  projects/nfsv4.1-client/sys/i386/conf/GENERIC
  projects/nfsv4.1-client/sys/i386/conf/NOTES
  projects/nfsv4.1-client/sys/i386/i386/initcpu.c
  projects/nfsv4.1-client/sys/i386/include/signal.h
  projects/nfsv4.1-client/sys/i386/include/xen/xenpmap.h
  projects/nfsv4.1-client/sys/i386/include/xen/xenvar.h
  projects/nfsv4.1-client/sys/kern/imgact_elf.c
  projects/nfsv4.1-client/sys/kern/kern_kthread.c
  projects/nfsv4.1-client/sys/kern/subr_log.c
  projects/nfsv4.1-client/sys/kern/subr_mchain.c
  projects/nfsv4.1-client/sys/kern/subr_syscall.c
  projects/nfsv4.1-client/sys/kern/tty.c
  projects/nfsv4.1-client/sys/kern/tty_info.c
  projects/nfsv4.1-client/sys/kern/tty_ttydisc.c
  projects/nfsv4.1-client/sys/kern/uipc_socket.c
  projects/nfsv4.1-client/sys/kern/vfs_aio.c
  projects/nfsv4.1-client/sys/kern/vfs_cache.c
  projects/nfsv4.1-client/sys/kern/vfs_mount.c
  projects/nfsv4.1-client/sys/kern/vfs_subr.c
  projects/nfsv4.1-client/sys/kern/vfs_syscalls.c
  projects/nfsv4.1-client/sys/kern/vfs_vnops.c
  projects/nfsv4.1-client/sys/modules/Makefile
  projects/nfsv4.1-client/sys/modules/drm/Makefile
  projects/nfsv4.1-client/sys/modules/ixgbe/Makefile
  projects/nfsv4.1-client/sys/modules/kgssapi/Makefile
  projects/nfsv4.1-client/sys/modules/kgssapi_krb5/Makefile
  projects/nfsv4.1-client/sys/modules/sound/driver/Makefile
  projects/nfsv4.1-client/sys/modules/sound/driver/emu10k1/Makefile
  projects/nfsv4.1-client/sys/modules/sound/driver/emu10kx/Makefile
  projects/nfsv4.1-client/sys/modules/sound/driver/maestro3/Makefile
  projects/nfsv4.1-client/sys/modules/usb/Makefile
  projects/nfsv4.1-client/sys/net/if.c
  projects/nfsv4.1-client/sys/net/if_bridge.c
  projects/nfsv4.1-client/sys/net80211/ieee80211.h
  projects/nfsv4.1-client/sys/net80211/ieee80211_dfs.c
  projects/nfsv4.1-client/sys/net80211/ieee80211_dfs.h
  projects/nfsv4.1-client/sys/net80211/ieee80211_mesh.c
  projects/nfsv4.1-client/sys/netinet/ip_carp.c
  projects/nfsv4.1-client/sys/netinet/ipfw/ip_fw2.c
  projects/nfsv4.1-client/sys/netinet/ipfw/ip_fw_sockopt.c
  projects/nfsv4.1-client/sys/netinet/sctp_structs.h
  projects/nfsv4.1-client/sys/netinet/tcp.h
  projects/nfsv4.1-client/sys/netinet/tcp_input.c
  projects/nfsv4.1-client/sys/netinet/tcp_syncache.c
  projects/nfsv4.1-client/sys/netinet/tcp_timer.c
  projects/nfsv4.1-client/sys/netinet/tcp_timer.h
  projects/nfsv4.1-client/sys/netinet/tcp_usrreq.c
  projects/nfsv4.1-client/sys/netinet/tcp_var.h
  projects/nfsv4.1-client/sys/nfsclient/nfs_vfsops.c
  projects/nfsv4.1-client/sys/nfsclient/nfs_vnops.c
  projects/nfsv4.1-client/sys/nlm/nlm_prot_impl.c
  projects/nfsv4.1-client/sys/powerpc/aim/mmu_oea64.c
  projects/nfsv4.1-client/sys/powerpc/aim/swtch64.S
  projects/nfsv4.1-client/sys/powerpc/booke/machdep.c
  projects/nfsv4.1-client/sys/powerpc/include/asm.h
  projects/nfsv4.1-client/sys/powerpc/ofw/ofw_pcib_pci.c
  projects/nfsv4.1-client/sys/powerpc/ofw/ofw_syscons.c
  projects/nfsv4.1-client/sys/powerpc/powermac/cpcht.c
  projects/nfsv4.1-client/sys/powerpc/powermac/grackle.c
  projects/nfsv4.1-client/sys/powerpc/powermac/gracklevar.h
  projects/nfsv4.1-client/sys/powerpc/powermac/uninorthpci.c
  projects/nfsv4.1-client/sys/powerpc/powermac/uninorthvar.h
  projects/nfsv4.1-client/sys/powerpc/ps3/ps3_syscons.c
  projects/nfsv4.1-client/sys/sys/elf_common.h
  projects/nfsv4.1-client/sys/sys/param.h
  projects/nfsv4.1-client/sys/sys/proc.h
  projects/nfsv4.1-client/sys/sys/signal.h
  projects/nfsv4.1-client/sys/sys/ttycom.h
  projects/nfsv4.1-client/sys/sys/ttydefaults.h
  projects/nfsv4.1-client/sys/sys/types.h
  projects/nfsv4.1-client/sys/sys/ucontext.h
  projects/nfsv4.1-client/sys/sys/vnode.h
  projects/nfsv4.1-client/sys/ufs/ffs/ffs_softdep.c
  projects/nfsv4.1-client/sys/ufs/ffs/ffs_vfsops.c
  projects/nfsv4.1-client/sys/ufs/ufs/inode.h
  projects/nfsv4.1-client/sys/ufs/ufs/ufs_acl.c
  projects/nfsv4.1-client/sys/ufs/ufs/ufs_vnops.c
  projects/nfsv4.1-client/sys/vm/swap_pager.c
  projects/nfsv4.1-client/sys/xen/interface/io/netif.h
Directory Properties:
  projects/nfsv4.1-client/sys/   (props changed)
  projects/nfsv4.1-client/sys/conf/   (props changed)
  projects/nfsv4.1-client/sys/contrib/dev/acpica/   (props changed)

Modified: projects/nfsv4.1-client/sys/amd64/acpica/acpi_switch.S
==============================================================================
--- projects/nfsv4.1-client/sys/amd64/acpica/acpi_switch.S	Wed Feb  8 03:02:12 2012	(r231175)
+++ projects/nfsv4.1-client/sys/amd64/acpica/acpi_switch.S	Wed Feb  8 03:16:29 2012	(r231176)
@@ -1,7 +1,7 @@
 /*-
  * Copyright (c) 2001 Takanori Watanabe <takawata@jp.freebsd.org>
  * Copyright (c) 2001 Mitsuru IWASAKI <iwasaki@jp.freebsd.org>
- * Copyright (c) 2008-2010 Jung-uk Kim <jkim@FreeBSD.org>
+ * Copyright (c) 2008-2012 Jung-uk Kim <jkim@FreeBSD.org>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -95,7 +95,6 @@ ENTRY(acpi_restorecpu)
 
 	/* Restore CR0 except for FPU mode. */
 	movq	PCB_CR0(%rdi), %rax
-	movq	%rax, %rcx
 	andq	$~(CR0_EM | CR0_TS), %rax
 	movq	%rax, %cr0
 
@@ -121,15 +120,6 @@ ENTRY(acpi_restorecpu)
 #undef	SDT_SYSTSS
 #undef	SDT_SYSBSY
 
-	/* Restore other callee saved registers. */
-	movq	PCB_R15(%rdi), %r15
-	movq	PCB_R14(%rdi), %r14
-	movq	PCB_R13(%rdi), %r13
-	movq	PCB_R12(%rdi), %r12
-	movq	PCB_RBP(%rdi), %rbp
-	movq	PCB_RSP(%rdi), %rsp
-	movq	PCB_RBX(%rdi), %rbx
-
 	/* Restore debug registers. */
 	movq	PCB_DR0(%rdi), %rax
 	movq	%rax, %dr0
@@ -146,21 +136,34 @@ ENTRY(acpi_restorecpu)
 
 	/* Restore FPU state. */
 	fninit
-	movq	WAKEUP_CTX(fpusave),%rdi
-	cmpl	$0,use_xsave
-	jne	1f
-	fxrstor	(%rdi)
+	movq	WAKEUP_CTX(fpusave), %rbx
+	movq	WAKEUP_CTX(xsmask), %rax
+	testq	%rax, %rax
+	jz	1f
+	movq	%rax, %rdx
+	shrq	$32, %rdx
+	movl	$XCR0, %ecx
+/*	xsetbv	*/
+	.byte	0x0f, 0x01, 0xd1
+/*	xrstor	(%rbx) */
+	.byte	0x0f, 0xae, 0x2b
 	jmp	2f
-1:	movl	xsave_mask,%eax
-	movl	xsave_mask+4,%edx
-/*	xrstor	(%rdi) */
-	.byte	0x0f,0xae,0x2f
+1:
+	fxrstor	(%rbx)
 2:
 
 	/* Reload CR0. */
-	movq	%rcx, %cr0
+	movq	PCB_CR0(%rdi), %rax
+	movq	%rax, %cr0
 
-	movq	WAKEUP_CTX(pcb),%rdi
+	/* Restore other callee saved registers. */
+	movq	PCB_R15(%rdi), %r15
+	movq	PCB_R14(%rdi), %r14
+	movq	PCB_R13(%rdi), %r13
+	movq	PCB_R12(%rdi), %r12
+	movq	PCB_RBP(%rdi), %rbp
+	movq	PCB_RSP(%rdi), %rsp
+	movq	PCB_RBX(%rdi), %rbx
 
 	/* Restore return address. */
 	movq	PCB_RIP(%rdi), %rax

Modified: projects/nfsv4.1-client/sys/amd64/acpica/acpi_wakecode.S
==============================================================================
--- projects/nfsv4.1-client/sys/amd64/acpica/acpi_wakecode.S	Wed Feb  8 03:02:12 2012	(r231175)
+++ projects/nfsv4.1-client/sys/amd64/acpica/acpi_wakecode.S	Wed Feb  8 03:16:29 2012	(r231176)
@@ -2,7 +2,7 @@
  * Copyright (c) 2001 Takanori Watanabe <takawata@jp.freebsd.org>
  * Copyright (c) 2001 Mitsuru IWASAKI <iwasaki@jp.freebsd.org>
  * Copyright (c) 2003 Peter Wemm
- * Copyright (c) 2008-2010 Jung-uk Kim <jkim@FreeBSD.org>
+ * Copyright (c) 2008-2012 Jung-uk Kim <jkim@FreeBSD.org>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -267,11 +267,11 @@ wakeup_ctx:
 	.quad	0
 wakeup_pcb:
 	.quad	0
+wakeup_fpusave:
+	.quad	0
 wakeup_gdt:
 	.word	0
 	.quad	0
-wakeup_fpusave:
-	.quad	0
 
 	ALIGN_DATA
 wakeup_efer:
@@ -284,6 +284,8 @@ wakeup_cstar:
 	.quad	0
 wakeup_sfmask:
 	.quad	0
+wakeup_xsmask:
+	.quad	0
 wakeup_cpu:
 	.long	0
 dummy:

Modified: projects/nfsv4.1-client/sys/amd64/acpica/acpi_wakeup.c
==============================================================================
--- projects/nfsv4.1-client/sys/amd64/acpica/acpi_wakeup.c	Wed Feb  8 03:02:12 2012	(r231175)
+++ projects/nfsv4.1-client/sys/amd64/acpica/acpi_wakeup.c	Wed Feb  8 03:16:29 2012	(r231176)
@@ -2,7 +2,7 @@
  * Copyright (c) 2001 Takanori Watanabe <takawata@jp.freebsd.org>
  * Copyright (c) 2001 Mitsuru IWASAKI <iwasaki@jp.freebsd.org>
  * Copyright (c) 2003 Peter Wemm
- * Copyright (c) 2008-2010 Jung-uk Kim <jkim@FreeBSD.org>
+ * Copyright (c) 2008-2012 Jung-uk Kim <jkim@FreeBSD.org>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -74,7 +74,7 @@ static struct pcb	**susppcbs;
 static void		**suspfpusave;
 #endif
 
-int			acpi_restorecpu(vm_offset_t, struct pcb *);
+int			acpi_restorecpu(uint64_t, vm_offset_t);
 
 static void		*acpi_alloc_wakeup_handler(void);
 static void		acpi_stop_beep(void *);
@@ -386,6 +386,7 @@ acpi_install_wakeup_handler(struct acpi_
 	WAKECODE_FIXUP(wakeup_lstar, uint64_t, rdmsr(MSR_LSTAR));
 	WAKECODE_FIXUP(wakeup_cstar, uint64_t, rdmsr(MSR_CSTAR));
 	WAKECODE_FIXUP(wakeup_sfmask, uint64_t, rdmsr(MSR_SF_MASK));
+	WAKECODE_FIXUP(wakeup_xsmask, uint64_t, xsave_mask);
 
 	/* Build temporary page tables below realmode code. */
 	pt4 = wakeaddr;

Modified: projects/nfsv4.1-client/sys/amd64/amd64/apic_vector.S
==============================================================================
--- projects/nfsv4.1-client/sys/amd64/amd64/apic_vector.S	Wed Feb  8 03:02:12 2012	(r231175)
+++ projects/nfsv4.1-client/sys/amd64/amd64/apic_vector.S	Wed Feb  8 03:16:29 2012	(r231176)
@@ -300,13 +300,10 @@ IDTVEC(cpustop)
 IDTVEC(cpususpend)
 	PUSH_FRAME
 
+	call	cpususpend_handler
 	movq	lapic, %rax
 	movl	$0, LA_EOI(%rax)	/* End Of Interrupt to APIC */
-
-	call	cpususpend_handler
-
-	POP_FRAME
-	jmp	doreti_iret
+	jmp	doreti
 
 /*
  * Executed by a CPU when it receives a RENDEZVOUS IPI from another CPU.

Modified: projects/nfsv4.1-client/sys/amd64/amd64/fpu.c
==============================================================================
--- projects/nfsv4.1-client/sys/amd64/amd64/fpu.c	Wed Feb  8 03:02:12 2012	(r231175)
+++ projects/nfsv4.1-client/sys/amd64/amd64/fpu.c	Wed Feb  8 03:16:29 2012	(r231176)
@@ -78,6 +78,41 @@ __FBSDID("$FreeBSD$");
 				    : : "n" (CR0_TS) : "ax")
 #define	stop_emulating()	__asm __volatile("clts")
 
+static __inline void
+xrstor(char *addr, uint64_t mask)
+{
+	uint32_t low, hi;
+
+	low = mask;
+	hi = mask >> 32;
+	/* xrstor (%rdi) */
+	__asm __volatile(".byte	0x0f,0xae,0x2f" : :
+	    "a" (low), "d" (hi), "D" (addr));
+}
+
+static __inline void
+xsave(char *addr, uint64_t mask)
+{
+	uint32_t low, hi;
+
+	low = mask;
+	hi = mask >> 32;
+	/* xsave (%rdi) */
+	__asm __volatile(".byte	0x0f,0xae,0x27" : :
+	    "a" (low), "d" (hi), "D" (addr) : "memory");
+}
+
+static __inline void
+xsetbv(uint32_t reg, uint64_t val)
+{
+	uint32_t low, hi;
+
+	low = val;
+	hi = val >> 32;
+	__asm __volatile(".byte 0x0f,0x01,0xd1" : :
+	    "c" (reg), "a" (low), "d" (hi));
+}
+
 #else	/* !(__GNUCLIKE_ASM && !lint) */
 
 void	fldcw(u_short cw);
@@ -90,6 +125,9 @@ void	fxrstor(caddr_t addr);
 void	ldmxcsr(u_int csr);
 void	start_emulating(void);
 void	stop_emulating(void);
+void	xrstor(char *addr, uint64_t mask);
+void	xsave(char *addr, uint64_t mask);
+void	xsetbv(uint32_t reg, uint64_t val);
 
 #endif	/* __GNUCLIKE_ASM && !lint */
 

Modified: projects/nfsv4.1-client/sys/amd64/conf/GENERIC
==============================================================================
--- projects/nfsv4.1-client/sys/amd64/conf/GENERIC	Wed Feb  8 03:02:12 2012	(r231175)
+++ projects/nfsv4.1-client/sys/amd64/conf/GENERIC	Wed Feb  8 03:16:29 2012	(r231176)
@@ -123,6 +123,7 @@ device		adv		# Advansys SCSI adapters
 device		adw		# Advansys wide SCSI adapters
 device		aic		# Adaptec 15[012]x SCSI adapters, AIC-6[23]60.
 device		bt		# Buslogic/Mylex MultiMaster SCSI adapters
+device		isci		# Intel C600 SAS controller
 
 # ATA/SCSI peripherals
 device		scbus		# SCSI bus (required for ATA/SCSI)

Modified: projects/nfsv4.1-client/sys/amd64/conf/NOTES
==============================================================================
--- projects/nfsv4.1-client/sys/amd64/conf/NOTES	Wed Feb  8 03:02:12 2012	(r231175)
+++ projects/nfsv4.1-client/sys/amd64/conf/NOTES	Wed Feb  8 03:16:29 2012	(r231176)
@@ -409,6 +409,11 @@ device		hptiop
 device		ips
 
 #
+# Intel C600 (Patsburg) integrated SAS controller
+device		isci
+options		ISCI_LOGGING	# enable debugging in isci HAL
+
+#
 # SafeNet crypto driver: can be moved to the MI NOTES as soon as
 # it's tested on a big-endian machine
 #

Copied: projects/nfsv4.1-client/sys/amd64/conf/WITHOUT_SOURCELESS (from r231175, head/sys/amd64/conf/WITHOUT_SOURCELESS)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ projects/nfsv4.1-client/sys/amd64/conf/WITHOUT_SOURCELESS	Wed Feb  8 03:16:29 2012	(r231176, copy of r231175, head/sys/amd64/conf/WITHOUT_SOURCELESS)
@@ -0,0 +1,7 @@
+#
+# WITHOUT_SOURCELESS -- Disable drivers that include sourceless code.
+#
+# $FreeBSD$
+
+include WITHOUT_SOURCELESS_HOST
+include WITHOUT_SOURCELESS_UCODE

Copied: projects/nfsv4.1-client/sys/amd64/conf/WITHOUT_SOURCELESS_HOST (from r231175, head/sys/amd64/conf/WITHOUT_SOURCELESS_HOST)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ projects/nfsv4.1-client/sys/amd64/conf/WITHOUT_SOURCELESS_HOST	Wed Feb  8 03:16:29 2012	(r231176, copy of r231175, head/sys/amd64/conf/WITHOUT_SOURCELESS_HOST)
@@ -0,0 +1,10 @@
+#
+# WITHOUT_SOURCELESS_UCODE -- Disable drivers that include sourceless
+# native code for host CPU.
+#
+# $FreeBSD$
+
+nodevice	hpt27xx
+nodevice	hptmv
+nodevice	hptrr
+nodevice	nve

Copied: projects/nfsv4.1-client/sys/amd64/conf/WITHOUT_SOURCELESS_UCODE (from r231175, head/sys/amd64/conf/WITHOUT_SOURCELESS_UCODE)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ projects/nfsv4.1-client/sys/amd64/conf/WITHOUT_SOURCELESS_UCODE	Wed Feb  8 03:16:29 2012	(r231176, copy of r231175, head/sys/amd64/conf/WITHOUT_SOURCELESS_UCODE)
@@ -0,0 +1,41 @@
+#
+# WITHOUT_SOURCELESS_UCODE -- Disable drivers that include sourceless
+# microcode.
+#
+# $FreeBSD$
+
+nodevice	adw
+nodevice	bce
+nodevice	fatm
+nodevice	fxp
+nodevice	ispfw
+nodevice	mwlfw
+nodevice	ralfw
+nodevice	runfw
+nodevice	sf
+nodevice	sn
+nodevice	ti
+nodevice	txp
+nodevice	ce
+nodevice	cp
+nodevice	ctau
+nodevice	ipwfw
+nodevice	iwifw
+nodevice	iwnfw
+nodevice	wpifw
+
+# drm
+nodevice	mga
+nodevice	r128
+nodevice	radeon
+
+# sound
+nodevice	csa
+nodevice	ds1
+nodevice	maestro3
+
+# usb
+nodevice	rum
+nodevice	uath
+nodevice	zyd
+nodevice	kue

Modified: projects/nfsv4.1-client/sys/amd64/include/cpufunc.h
==============================================================================
--- projects/nfsv4.1-client/sys/amd64/include/cpufunc.h	Wed Feb  8 03:02:12 2012	(r231175)
+++ projects/nfsv4.1-client/sys/amd64/include/cpufunc.h	Wed Feb  8 03:16:29 2012	(r231176)
@@ -669,41 +669,6 @@ intr_restore(register_t rflags)
 	write_rflags(rflags);
 }
 
-static __inline void
-xsave(char *addr, uint64_t mask)
-{
-	uint32_t low, hi;
-
-	low = mask;
-	hi = mask >> 32;
-	/* xsave (%rdi) */
-	__asm __volatile(".byte	0x0f,0xae,0x27" : :
-	    "a" (low), "d" (hi), "D" (addr) : "memory");
-}
-
-static __inline void
-xsetbv(uint32_t reg, uint64_t val)
-{
-	uint32_t low, hi;
-
-	low = val;
-	hi = val >> 32;
-	__asm __volatile(".byte 0x0f,0x01,0xd1" : :
-	    "c" (reg), "a" (low), "d" (hi));
-}
-
-static __inline void
-xrstor(char *addr, uint64_t mask)
-{
-	uint32_t low, hi;
-
-	low = mask;
-	hi = mask >> 32;
-	/* xrstor (%rdi) */
-	__asm __volatile(".byte	0x0f,0xae,0x2f" : :
-	    "a" (low), "d" (hi), "D" (addr));
-}
-
 #else /* !(__GNUCLIKE_ASM && __CC_SUPPORTS___INLINE) */
 
 int	breakpoint(void);
@@ -768,9 +733,6 @@ u_int	rgs(void);
 void	wbinvd(void);
 void	write_rflags(u_int rf);
 void	wrmsr(u_int msr, uint64_t newval);
-void	xsave(char *addr, uint64_t mask);
-void	xsetbv(uint32_t reg, uint64_t val);
-void	xrstor(char *addr, uint64_t mask);
 
 #endif	/* __GNUCLIKE_ASM && __CC_SUPPORTS___INLINE */
 

Modified: projects/nfsv4.1-client/sys/amd64/include/signal.h
==============================================================================
--- projects/nfsv4.1-client/sys/amd64/include/signal.h	Wed Feb  8 03:02:12 2012	(r231175)
+++ projects/nfsv4.1-client/sys/amd64/include/signal.h	Wed Feb  8 03:16:29 2012	(r231176)
@@ -99,7 +99,10 @@ struct sigcontext {
 	long	sc_fsbase;
 	long	sc_gsbase;
 
-	long	sc_spare[6];
+	long	sc_xfpustate;
+	long	sc_xfpustate_len;
+
+	long	sc_spare[4];
 };
 #endif /* __BSD_VISIBLE */
 

Modified: projects/nfsv4.1-client/sys/boot/ficl/fileaccess.c
==============================================================================
--- projects/nfsv4.1-client/sys/boot/ficl/fileaccess.c	Wed Feb  8 03:02:12 2012	(r231175)
+++ projects/nfsv4.1-client/sys/boot/ficl/fileaccess.c	Wed Feb  8 03:16:29 2012	(r231176)
@@ -420,6 +420,6 @@ void ficlCompileFile(FICL_SYSTEM *pSys)
     ficlSetEnv(pSys, "file-ext", FICL_TRUE);
 #endif /* FICL_HAVE_FTRUNCATE */
 #else
-    &pSys;
+    (void)pSys;
 #endif /* FICL_WANT_FILE */
 }

Modified: projects/nfsv4.1-client/sys/boot/ficl/i386/sysdep.h
==============================================================================
--- projects/nfsv4.1-client/sys/boot/ficl/i386/sysdep.h	Wed Feb  8 03:02:12 2012	(r231175)
+++ projects/nfsv4.1-client/sys/boot/ficl/i386/sysdep.h	Wed Feb  8 03:16:29 2012	(r231176)
@@ -58,7 +58,7 @@
 #include <assert.h>
 
 #if !defined IGNORE		/* Macro to silence unused param warnings */
-#define IGNORE(x) &x
+#define IGNORE(x) (void)x
 #endif
 
 /*
@@ -405,7 +405,7 @@ void *ficlRealloc(void *p, size_t size);
 #if FICL_MULTITHREAD
 int ficlLockDictionary(short fLock);
 #else
-#define ficlLockDictionary(x) 0 /* ignore */
+#define ficlLockDictionary(x) /* ignore */
 #endif
 
 /*

Modified: projects/nfsv4.1-client/sys/cam/ata/ata_da.c
==============================================================================
--- projects/nfsv4.1-client/sys/cam/ata/ata_da.c	Wed Feb  8 03:02:12 2012	(r231175)
+++ projects/nfsv4.1-client/sys/cam/ata/ata_da.c	Wed Feb  8 03:16:29 2012	(r231176)
@@ -1098,7 +1098,7 @@ adaregister(struct cam_periph *periph, v
 	 */
 	callout_init_mtx(&softc->sendordered_c, periph->sim->mtx, 0);
 	callout_reset(&softc->sendordered_c,
-	    (ADA_DEFAULT_TIMEOUT * hz) / ADA_ORDEREDTAG_INTERVAL,
+	    (ada_default_timeout * hz) / ADA_ORDEREDTAG_INTERVAL,
 	    adasendorderedtag, softc);
 
 	if (ADA_RA >= 0 &&
@@ -1653,7 +1653,7 @@ adasendorderedtag(void *arg)
 	}
 	/* Queue us up again */
 	callout_reset(&softc->sendordered_c,
-	    (ADA_DEFAULT_TIMEOUT * hz) / ADA_ORDEREDTAG_INTERVAL,
+	    (ada_default_timeout * hz) / ADA_ORDEREDTAG_INTERVAL,
 	    adasendorderedtag, softc);
 }
 

Modified: projects/nfsv4.1-client/sys/cam/ata/ata_xpt.c
==============================================================================
--- projects/nfsv4.1-client/sys/cam/ata/ata_xpt.c	Wed Feb  8 03:02:12 2012	(r231175)
+++ projects/nfsv4.1-client/sys/cam/ata/ata_xpt.c	Wed Feb  8 03:16:29 2012	(r231176)
@@ -186,6 +186,12 @@ static void	 ata_dev_async(u_int32_t asy
 static void	 ata_action(union ccb *start_ccb);
 static void	 ata_announce_periph(struct cam_periph *periph);
 
+static int ata_dma = 1;
+static int atapi_dma = 1;
+
+TUNABLE_INT("hw.ata.ata_dma", &ata_dma);
+TUNABLE_INT("hw.ata.atapi_dma", &atapi_dma);
+
 static struct xpt_xport ata_xport = {
 	.alloc_device = ata_alloc_device,
 	.action = ata_action,
@@ -356,6 +362,13 @@ probestart(struct cam_periph *periph, un
 			if (cts.xport_specific.sata.valid & CTS_SATA_VALID_MODE)
 				mode = cts.xport_specific.sata.mode;
 		}
+		if (periph->path->device->protocol == PROTO_ATA) {
+			if (ata_dma == 0 && (mode == 0 || mode > ATA_PIO_MAX))
+				mode = ATA_PIO_MAX;
+		} else {
+			if (atapi_dma == 0 && (mode == 0 || mode > ATA_PIO_MAX))
+				mode = ATA_PIO_MAX;
+		}
 negotiate:
 		/* Honor device capabilities. */
 		wantmode = mode = ata_max_mode(ident_buf, mode);

Modified: projects/nfsv4.1-client/sys/cam/ctl/ctl_frontend_cam_sim.c
==============================================================================
--- projects/nfsv4.1-client/sys/cam/ctl/ctl_frontend_cam_sim.c	Wed Feb  8 03:02:12 2012	(r231175)
+++ projects/nfsv4.1-client/sys/cam/ctl/ctl_frontend_cam_sim.c	Wed Feb  8 03:16:29 2012	(r231176)
@@ -221,6 +221,7 @@ cfcs_init(void)
 
 	mtx_lock(&softc->lock);
 	if (xpt_bus_register(softc->sim, NULL, 0) != CAM_SUCCESS) {
+		mtx_unlock(&softc->lock);
 		printf("%s: error registering SIM\n", __func__);
 		retval = ENOMEM;
 		goto bailout;
@@ -230,6 +231,7 @@ cfcs_init(void)
 			    cam_sim_path(softc->sim),
 			    CAM_TARGET_WILDCARD,
 			    CAM_LUN_WILDCARD) != CAM_REQ_CMP) {
+		mtx_unlock(&softc->lock);
 		printf("%s: error creating path\n", __func__);
 		xpt_bus_deregister(cam_sim_path(softc->sim));
 		retval = 1;
@@ -253,8 +255,6 @@ bailout:
 	else if (softc->devq)
 		cam_simq_free(softc->devq);
 
-	mtx_unlock(&softc->lock);
-
 	return (retval);
 }
 

Modified: projects/nfsv4.1-client/sys/cam/scsi/scsi_da.c
==============================================================================
--- projects/nfsv4.1-client/sys/cam/scsi/scsi_da.c	Wed Feb  8 03:02:12 2012	(r231175)
+++ projects/nfsv4.1-client/sys/cam/scsi/scsi_da.c	Wed Feb  8 03:16:29 2012	(r231176)
@@ -1149,7 +1149,7 @@ dadump(void *arg, void *virtual, vm_offs
 				/*data_ptr*/(u_int8_t *) virtual,
 				/*dxfer_len*/length,
 				/*sense_len*/SSD_FULL_SIZE,
-				DA_DEFAULT_TIMEOUT * 1000);		
+				da_default_timeout * 1000);
 		xpt_polled_action((union ccb *)&csio);
 		cam_periph_unlock(periph);
 
@@ -1597,7 +1597,7 @@ daregister(struct cam_periph *periph, vo
 	 */
 	callout_init_mtx(&softc->sendordered_c, periph->sim->mtx, 0);
 	callout_reset(&softc->sendordered_c,
-	    (DA_DEFAULT_TIMEOUT * hz) / DA_ORDEREDTAG_INTERVAL,
+	    (da_default_timeout * hz) / DA_ORDEREDTAG_INTERVAL,
 	    dasendorderedtag, softc);
 
 	mtx_unlock(periph->sim->mtx);
@@ -2768,7 +2768,7 @@ dasendorderedtag(void *arg)
 	}
 	/* Queue us up again */
 	callout_reset(&softc->sendordered_c,
-	    (DA_DEFAULT_TIMEOUT * hz) / DA_ORDEREDTAG_INTERVAL,
+	    (da_default_timeout * hz) / DA_ORDEREDTAG_INTERVAL,
 	    dasendorderedtag, softc);
 }
 

Modified: projects/nfsv4.1-client/sys/compat/freebsd32/freebsd32_signal.h
==============================================================================
--- projects/nfsv4.1-client/sys/compat/freebsd32/freebsd32_signal.h	Wed Feb  8 03:02:12 2012	(r231175)
+++ projects/nfsv4.1-client/sys/compat/freebsd32/freebsd32_signal.h	Wed Feb  8 03:16:29 2012	(r231176)
@@ -92,6 +92,7 @@ struct sigevent32 {
 			uint32_t _function;
 			uint32_t _attribute;
 		} _sigev_thread;
+		unsigned short	_kevent_flags;
 		uint32_t __spare__[8];
 	} _sigev_un;
 };

Modified: projects/nfsv4.1-client/sys/conf/files
==============================================================================
--- projects/nfsv4.1-client/sys/conf/files	Wed Feb  8 03:02:12 2012	(r231175)
+++ projects/nfsv4.1-client/sys/conf/files	Wed Feb  8 03:16:29 2012	(r231176)
@@ -1395,6 +1395,8 @@ dev/ixgbe/ixgbe_82598.c		optional ixgbe 
 	compile-with "${NORMAL_C} -I$S/dev/ixgbe"
 dev/ixgbe/ixgbe_82599.c		optional ixgbe inet \
 	compile-with "${NORMAL_C} -I$S/dev/ixgbe"
+dev/ixgbe/ixgbe_x540.c		optional ixgbe inet \
+	compile-with "${NORMAL_C} -I$S/dev/ixgbe"
 dev/jme/if_jme.c		optional jme pci
 dev/joy/joy.c			optional joy
 dev/joy/joy_isa.c		optional joy isa
@@ -1730,8 +1732,7 @@ dev/sound/pci/als4000.c		optional snd_al
 dev/sound/pci/atiixp.c		optional snd_atiixp pci
 dev/sound/pci/cmi.c		optional snd_cmi pci
 dev/sound/pci/cs4281.c		optional snd_cs4281 pci
-dev/sound/pci/csa.c		optional snd_csa pci \
-	warning "kernel contains GPL contaminated csaimg.h header"
+dev/sound/pci/csa.c		optional snd_csa pci
 dev/sound/pci/csapcm.c		optional snd_csa pci
 dev/sound/pci/ds1.c		optional snd_ds1 pci
 dev/sound/pci/emu10k1.c		optional snd_emu10k1 pci
@@ -2404,9 +2405,8 @@ kern/sched_ule.c		optional sched_ule
 kern/serdev_if.m		standard
 kern/stack_protector.c		standard \
 	compile-with "${NORMAL_C:N-fstack-protector*}"
-# XXX subr_acl_nfs4.c is also used by ZFS
-kern/subr_acl_nfs4.c		optional ufs_acl
-kern/subr_acl_posix1e.c		optional ufs_acl
+kern/subr_acl_nfs4.c		standard
+kern/subr_acl_posix1e.c		standard
 kern/subr_autoconf.c		standard
 kern/subr_blist.c		standard
 kern/subr_bus.c			standard
@@ -2499,17 +2499,17 @@ kern/vfs_vnops.c		standard
 #
 gssd.h				optional kgssapi			\
 	dependency		"$S/kgssapi/gssd.x"			\
-	compile-with		"rpcgen -hM $S/kgssapi/gssd.x | grep -v pthread.h > gssd.h" \
+	compile-with		"RPCGEN_CPP='${CPP}' rpcgen -hM $S/kgssapi/gssd.x | grep -v pthread.h > gssd.h" \
 	no-obj no-implicit-rule before-depend local			\
 	clean			"gssd.h"
 gssd_xdr.c			optional kgssapi			\
 	dependency		"$S/kgssapi/gssd.x gssd.h"		\
-	compile-with		"rpcgen -c $S/kgssapi/gssd.x -o gssd_xdr.c" \
+	compile-with		"RPCGEN_CPP='${CPP}' rpcgen -c $S/kgssapi/gssd.x -o gssd_xdr.c" \
 	no-implicit-rule before-depend local				\
 	clean			"gssd_xdr.c"
 gssd_clnt.c			optional kgssapi			\
 	dependency		"$S/kgssapi/gssd.x gssd.h"		\
-	compile-with		"rpcgen -lM $S/kgssapi/gssd.x | grep -v string.h > gssd_clnt.c" \
+	compile-with		"RPCGEN_CPP='${CPP}' rpcgen -lM $S/kgssapi/gssd.x | grep -v string.h > gssd_clnt.c" \
 	no-implicit-rule before-depend local				\
 	clean			"gssd_clnt.c"
 kgssapi/gss_accept_sec_context.c optional kgssapi
@@ -3530,6 +3530,7 @@ dev/xen/blkback/blkback.c	optional xen |
 dev/xen/console/console.c	optional xen
 dev/xen/console/xencons_ring.c	optional xen
 dev/xen/control/control.c	optional xen | xenhvm
+dev/xen/netback/netback.c	optional xen | xenhvm
 dev/xen/netfront/netfront.c	optional xen | xenhvm
 dev/xen/xenpci/xenpci.c		optional xenpci
 dev/xen/xenpci/evtchn.c         optional xenpci

Modified: projects/nfsv4.1-client/sys/conf/files.amd64
==============================================================================
--- projects/nfsv4.1-client/sys/conf/files.amd64	Wed Feb  8 03:02:12 2012	(r231175)
+++ projects/nfsv4.1-client/sys/conf/files.amd64	Wed Feb  8 03:16:29 2012	(r231176)
@@ -271,6 +271,115 @@ dev/tpm/tpm_isa.c		optional	tpm isa
 dev/uart/uart_cpu_amd64.c	optional	uart
 dev/viawd/viawd.c		optional	viawd
 dev/wpi/if_wpi.c		optional	wpi
+dev/isci/isci.c							optional isci
+dev/isci/isci_controller.c					optional isci
+dev/isci/isci_domain.c						optional isci
+dev/isci/isci_interrupt.c					optional isci
+dev/isci/isci_io_request.c					optional isci
+dev/isci/isci_logger.c						optional isci
+dev/isci/isci_oem_parameters.c					optional isci
+dev/isci/isci_remote_device.c					optional isci
+dev/isci/isci_sysctl.c						optional isci
+dev/isci/isci_task_request.c					optional isci
+dev/isci/isci_timer.c						optional isci
+dev/isci/scil/sati.c						optional isci
+dev/isci/scil/sati_abort_task_set.c				optional isci
+dev/isci/scil/sati_atapi.c					optional isci
+dev/isci/scil/sati_device.c					optional isci
+dev/isci/scil/sati_inquiry.c					optional isci
+dev/isci/scil/sati_log_sense.c					optional isci
+dev/isci/scil/sati_lun_reset.c					optional isci
+dev/isci/scil/sati_mode_pages.c					optional isci
+dev/isci/scil/sati_mode_select.c				optional isci
+dev/isci/scil/sati_mode_sense.c					optional isci
+dev/isci/scil/sati_mode_sense_10.c				optional isci
+dev/isci/scil/sati_mode_sense_6.c				optional isci
+dev/isci/scil/sati_move.c					optional isci
+dev/isci/scil/sati_passthrough.c				optional isci
+dev/isci/scil/sati_read.c					optional isci
+dev/isci/scil/sati_read_buffer.c				optional isci
+dev/isci/scil/sati_read_capacity.c				optional isci
+dev/isci/scil/sati_reassign_blocks.c				optional isci
+dev/isci/scil/sati_report_luns.c				optional isci
+dev/isci/scil/sati_request_sense.c				optional isci
+dev/isci/scil/sati_start_stop_unit.c				optional isci
+dev/isci/scil/sati_synchronize_cache.c				optional isci
+dev/isci/scil/sati_test_unit_ready.c				optional isci
+dev/isci/scil/sati_unmap.c					optional isci
+dev/isci/scil/sati_util.c					optional isci
+dev/isci/scil/sati_verify.c					optional isci
+dev/isci/scil/sati_write.c					optional isci
+dev/isci/scil/sati_write_and_verify.c				optional isci
+dev/isci/scil/sati_write_buffer.c				optional isci
+dev/isci/scil/sati_write_long.c					optional isci
+dev/isci/scil/sci_abstract_list.c				optional isci
+dev/isci/scil/sci_base_controller.c				optional isci
+dev/isci/scil/sci_base_domain.c					optional isci
+dev/isci/scil/sci_base_iterator.c				optional isci
+dev/isci/scil/sci_base_library.c				optional isci
+dev/isci/scil/sci_base_logger.c					optional isci
+dev/isci/scil/sci_base_memory_descriptor_list.c			optional isci
+dev/isci/scil/sci_base_memory_descriptor_list_decorator.c	optional isci
+dev/isci/scil/sci_base_object.c					optional isci
+dev/isci/scil/sci_base_observer.c				optional isci
+dev/isci/scil/sci_base_phy.c					optional isci
+dev/isci/scil/sci_base_port.c					optional isci
+dev/isci/scil/sci_base_remote_device.c				optional isci
+dev/isci/scil/sci_base_request.c				optional isci
+dev/isci/scil/sci_base_state_machine.c				optional isci
+dev/isci/scil/sci_base_state_machine_logger.c			optional isci
+dev/isci/scil/sci_base_state_machine_observer.c			optional isci
+dev/isci/scil/sci_base_subject.c				optional isci
+dev/isci/scil/sci_util.c					optional isci
+dev/isci/scil/scic_sds_controller.c				optional isci
+dev/isci/scil/scic_sds_library.c				optional isci
+dev/isci/scil/scic_sds_pci.c					optional isci
+dev/isci/scil/scic_sds_phy.c					optional isci
+dev/isci/scil/scic_sds_port.c					optional isci
+dev/isci/scil/scic_sds_port_configuration_agent.c		optional isci
+dev/isci/scil/scic_sds_remote_device.c				optional isci
+dev/isci/scil/scic_sds_remote_node_context.c			optional isci
+dev/isci/scil/scic_sds_remote_node_table.c			optional isci
+dev/isci/scil/scic_sds_request.c				optional isci
+dev/isci/scil/scic_sds_sgpio.c					optional isci
+dev/isci/scil/scic_sds_smp_remote_device.c			optional isci
+dev/isci/scil/scic_sds_smp_request.c				optional isci
+dev/isci/scil/scic_sds_ssp_request.c				optional isci
+dev/isci/scil/scic_sds_stp_packet_request.c			optional isci
+dev/isci/scil/scic_sds_stp_remote_device.c			optional isci
+dev/isci/scil/scic_sds_stp_request.c				optional isci
+dev/isci/scil/scic_sds_unsolicited_frame_control.c		optional isci
+dev/isci/scil/scif_sas_controller.c				optional isci
+dev/isci/scil/scif_sas_controller_state_handlers.c		optional isci
+dev/isci/scil/scif_sas_controller_states.c			optional isci
+dev/isci/scil/scif_sas_domain.c					optional isci
+dev/isci/scil/scif_sas_domain_state_handlers.c			optional isci
+dev/isci/scil/scif_sas_domain_states.c				optional isci
+dev/isci/scil/scif_sas_high_priority_request_queue.c		optional isci
+dev/isci/scil/scif_sas_internal_io_request.c			optional isci
+dev/isci/scil/scif_sas_io_request.c				optional isci
+dev/isci/scil/scif_sas_io_request_state_handlers.c		optional isci
+dev/isci/scil/scif_sas_io_request_states.c			optional isci
+dev/isci/scil/scif_sas_library.c				optional isci
+dev/isci/scil/scif_sas_remote_device.c				optional isci
+dev/isci/scil/scif_sas_remote_device_ready_substate_handlers.c	optional isci
+dev/isci/scil/scif_sas_remote_device_ready_substates.c		optional isci
+dev/isci/scil/scif_sas_remote_device_starting_substate_handlers.c		optional isci
+dev/isci/scil/scif_sas_remote_device_starting_substates.c	optional isci
+dev/isci/scil/scif_sas_remote_device_state_handlers.c		optional isci
+dev/isci/scil/scif_sas_remote_device_states.c			optional isci
+dev/isci/scil/scif_sas_request.c				optional isci
+dev/isci/scil/scif_sas_smp_activity_clear_affiliation.c		optional isci
+dev/isci/scil/scif_sas_smp_io_request.c				optional isci
+dev/isci/scil/scif_sas_smp_phy.c				optional isci
+dev/isci/scil/scif_sas_smp_remote_device.c			optional isci
+dev/isci/scil/scif_sas_stp_io_request.c				optional isci
+dev/isci/scil/scif_sas_stp_remote_device.c			optional isci
+dev/isci/scil/scif_sas_stp_task_request.c			optional isci
+dev/isci/scil/scif_sas_task_request.c				optional isci
+dev/isci/scil/scif_sas_task_request_state_handlers.c		optional isci
+dev/isci/scil/scif_sas_task_request_states.c			optional isci
+dev/isci/scil/scif_sas_timer.c					optional isci
 isa/syscons_isa.c		optional	sc
 isa/vga_isa.c			optional	vga
 kern/kern_clocksource.c		standard

Modified: projects/nfsv4.1-client/sys/conf/files.i386
==============================================================================
--- projects/nfsv4.1-client/sys/conf/files.i386	Wed Feb  8 03:02:12 2012	(r231175)
+++ projects/nfsv4.1-client/sys/conf/files.i386	Wed Feb  8 03:16:29 2012	(r231176)
@@ -248,6 +248,115 @@ dev/viawd/viawd.c		optional viawd
 dev/acpica/acpi_if.m		standard
 dev/acpi_support/acpi_wmi_if.m	standard
 dev/wpi/if_wpi.c		optional wpi
+dev/isci/isci.c							optional isci
+dev/isci/isci_controller.c					optional isci
+dev/isci/isci_domain.c						optional isci
+dev/isci/isci_interrupt.c					optional isci
+dev/isci/isci_io_request.c					optional isci
+dev/isci/isci_logger.c						optional isci
+dev/isci/isci_oem_parameters.c					optional isci
+dev/isci/isci_remote_device.c					optional isci
+dev/isci/isci_sysctl.c						optional isci
+dev/isci/isci_task_request.c					optional isci
+dev/isci/isci_timer.c						optional isci
+dev/isci/scil/sati.c						optional isci
+dev/isci/scil/sati_abort_task_set.c				optional isci
+dev/isci/scil/sati_atapi.c					optional isci
+dev/isci/scil/sati_device.c					optional isci
+dev/isci/scil/sati_inquiry.c					optional isci
+dev/isci/scil/sati_log_sense.c					optional isci
+dev/isci/scil/sati_lun_reset.c					optional isci
+dev/isci/scil/sati_mode_pages.c					optional isci
+dev/isci/scil/sati_mode_select.c				optional isci
+dev/isci/scil/sati_mode_sense.c					optional isci
+dev/isci/scil/sati_mode_sense_10.c				optional isci
+dev/isci/scil/sati_mode_sense_6.c				optional isci
+dev/isci/scil/sati_move.c					optional isci
+dev/isci/scil/sati_passthrough.c				optional isci
+dev/isci/scil/sati_read.c					optional isci
+dev/isci/scil/sati_read_buffer.c				optional isci
+dev/isci/scil/sati_read_capacity.c				optional isci
+dev/isci/scil/sati_reassign_blocks.c				optional isci
+dev/isci/scil/sati_report_luns.c				optional isci
+dev/isci/scil/sati_request_sense.c				optional isci
+dev/isci/scil/sati_start_stop_unit.c				optional isci
+dev/isci/scil/sati_synchronize_cache.c				optional isci
+dev/isci/scil/sati_test_unit_ready.c				optional isci
+dev/isci/scil/sati_unmap.c					optional isci
+dev/isci/scil/sati_util.c					optional isci
+dev/isci/scil/sati_verify.c					optional isci
+dev/isci/scil/sati_write.c					optional isci
+dev/isci/scil/sati_write_and_verify.c				optional isci
+dev/isci/scil/sati_write_buffer.c				optional isci
+dev/isci/scil/sati_write_long.c					optional isci
+dev/isci/scil/sci_abstract_list.c				optional isci
+dev/isci/scil/sci_base_controller.c				optional isci
+dev/isci/scil/sci_base_domain.c					optional isci
+dev/isci/scil/sci_base_iterator.c				optional isci
+dev/isci/scil/sci_base_library.c				optional isci
+dev/isci/scil/sci_base_logger.c					optional isci
+dev/isci/scil/sci_base_memory_descriptor_list.c			optional isci
+dev/isci/scil/sci_base_memory_descriptor_list_decorator.c	optional isci
+dev/isci/scil/sci_base_object.c					optional isci
+dev/isci/scil/sci_base_observer.c				optional isci
+dev/isci/scil/sci_base_phy.c					optional isci
+dev/isci/scil/sci_base_port.c					optional isci
+dev/isci/scil/sci_base_remote_device.c				optional isci
+dev/isci/scil/sci_base_request.c				optional isci
+dev/isci/scil/sci_base_state_machine.c				optional isci
+dev/isci/scil/sci_base_state_machine_logger.c			optional isci
+dev/isci/scil/sci_base_state_machine_observer.c			optional isci
+dev/isci/scil/sci_base_subject.c				optional isci
+dev/isci/scil/sci_util.c					optional isci
+dev/isci/scil/scic_sds_controller.c				optional isci
+dev/isci/scil/scic_sds_library.c				optional isci
+dev/isci/scil/scic_sds_pci.c					optional isci
+dev/isci/scil/scic_sds_phy.c					optional isci
+dev/isci/scil/scic_sds_port.c					optional isci
+dev/isci/scil/scic_sds_port_configuration_agent.c		optional isci
+dev/isci/scil/scic_sds_remote_device.c				optional isci
+dev/isci/scil/scic_sds_remote_node_context.c			optional isci
+dev/isci/scil/scic_sds_remote_node_table.c			optional isci
+dev/isci/scil/scic_sds_request.c				optional isci
+dev/isci/scil/scic_sds_sgpio.c					optional isci
+dev/isci/scil/scic_sds_smp_remote_device.c			optional isci
+dev/isci/scil/scic_sds_smp_request.c				optional isci
+dev/isci/scil/scic_sds_ssp_request.c				optional isci
+dev/isci/scil/scic_sds_stp_packet_request.c			optional isci
+dev/isci/scil/scic_sds_stp_remote_device.c			optional isci
+dev/isci/scil/scic_sds_stp_request.c				optional isci
+dev/isci/scil/scic_sds_unsolicited_frame_control.c		optional isci
+dev/isci/scil/scif_sas_controller.c				optional isci
+dev/isci/scil/scif_sas_controller_state_handlers.c		optional isci
+dev/isci/scil/scif_sas_controller_states.c			optional isci
+dev/isci/scil/scif_sas_domain.c					optional isci
+dev/isci/scil/scif_sas_domain_state_handlers.c			optional isci
+dev/isci/scil/scif_sas_domain_states.c				optional isci
+dev/isci/scil/scif_sas_high_priority_request_queue.c		optional isci
+dev/isci/scil/scif_sas_internal_io_request.c			optional isci
+dev/isci/scil/scif_sas_io_request.c				optional isci
+dev/isci/scil/scif_sas_io_request_state_handlers.c		optional isci
+dev/isci/scil/scif_sas_io_request_states.c			optional isci
+dev/isci/scil/scif_sas_library.c				optional isci
+dev/isci/scil/scif_sas_remote_device.c				optional isci
+dev/isci/scil/scif_sas_remote_device_ready_substate_handlers.c	optional isci
+dev/isci/scil/scif_sas_remote_device_ready_substates.c		optional isci
+dev/isci/scil/scif_sas_remote_device_starting_substate_handlers.c		optional isci
+dev/isci/scil/scif_sas_remote_device_starting_substates.c	optional isci
+dev/isci/scil/scif_sas_remote_device_state_handlers.c		optional isci
+dev/isci/scil/scif_sas_remote_device_states.c			optional isci
+dev/isci/scil/scif_sas_request.c				optional isci
+dev/isci/scil/scif_sas_smp_activity_clear_affiliation.c		optional isci
+dev/isci/scil/scif_sas_smp_io_request.c				optional isci
+dev/isci/scil/scif_sas_smp_phy.c				optional isci
+dev/isci/scil/scif_sas_smp_remote_device.c			optional isci
+dev/isci/scil/scif_sas_stp_io_request.c				optional isci
+dev/isci/scil/scif_sas_stp_remote_device.c			optional isci
+dev/isci/scil/scif_sas_stp_task_request.c			optional isci
+dev/isci/scil/scif_sas_task_request.c				optional isci
+dev/isci/scil/scif_sas_task_request_state_handlers.c		optional isci
+dev/isci/scil/scif_sas_task_request_states.c			optional isci
+dev/isci/scil/scif_sas_timer.c					optional isci
 i386/acpica/acpi_machdep.c	optional acpi
 acpi_wakecode.o			optional acpi				\
 	dependency	"$S/i386/acpica/acpi_wakecode.S assym.s"	\

Modified: projects/nfsv4.1-client/sys/conf/files.powerpc
==============================================================================
--- projects/nfsv4.1-client/sys/conf/files.powerpc	Wed Feb  8 03:02:12 2012	(r231175)
+++ projects/nfsv4.1-client/sys/conf/files.powerpc	Wed Feb  8 03:16:29 2012	(r231176)
@@ -133,6 +133,7 @@ powerpc/mpc85xx/openpic_fdt.c	optional	f
 powerpc/mpc85xx/pci_fdt.c	optional	pci mpc85xx
 powerpc/ofw/ofw_cpu.c		optional	aim
 powerpc/ofw/ofw_machdep.c	optional	aim
+powerpc/ofw/ofw_pci.c		optional	pci aim
 powerpc/ofw/ofw_pcibus.c	optional	pci aim
 powerpc/ofw/ofw_pcib_pci.c	optional	pci aim
 powerpc/ofw/ofw_real.c		optional	aim

Modified: projects/nfsv4.1-client/sys/conf/options
==============================================================================
--- projects/nfsv4.1-client/sys/conf/options	Wed Feb  8 03:02:12 2012	(r231175)
+++ projects/nfsv4.1-client/sys/conf/options	Wed Feb  8 03:16:29 2012	(r231176)
@@ -845,6 +845,7 @@ IEEE80211_SUPPORT_MESH	opt_wlan.h
 IEEE80211_SUPPORT_SUPERG	opt_wlan.h
 IEEE80211_SUPPORT_TDMA	opt_wlan.h
 IEEE80211_ALQ		opt_wlan.h
+IEEE80211_DFS_DEBUG	opt_wlan.h
 
 # 802.11 TDMA support
 TDMA_SLOTLEN_DEFAULT	opt_tdma.h

Modified: projects/nfsv4.1-client/sys/conf/options.amd64
==============================================================================
--- projects/nfsv4.1-client/sys/conf/options.amd64	Wed Feb  8 03:02:12 2012	(r231175)
+++ projects/nfsv4.1-client/sys/conf/options.amd64	Wed Feb  8 03:16:29 2012	(r231176)
@@ -65,3 +65,6 @@ KDTRACE_FRAME		opt_kdtrace.h
 BPF_JITTER		opt_bpf.h
 
 XENHVM			opt_global.h
+
+# options for the Intel C600 SAS driver (isci)
+ISCI_LOGGING	opt_isci.h

Modified: projects/nfsv4.1-client/sys/conf/options.i386
==============================================================================
--- projects/nfsv4.1-client/sys/conf/options.i386	Wed Feb  8 03:02:12 2012	(r231175)
+++ projects/nfsv4.1-client/sys/conf/options.i386	Wed Feb  8 03:16:29 2012	(r231176)
@@ -119,3 +119,6 @@ BPF_JITTER		opt_bpf.h
 NATIVE			opt_global.h
 XEN			opt_global.h
 XENHVM			opt_global.h
+
+# options for the Intel C600 SAS driver (isci)
+ISCI_LOGGING	opt_isci.h

Modified: projects/nfsv4.1-client/sys/dev/acpica/acpi.c
==============================================================================
--- projects/nfsv4.1-client/sys/dev/acpica/acpi.c	Wed Feb  8 03:02:12 2012	(r231175)
+++ projects/nfsv4.1-client/sys/dev/acpica/acpi.c	Wed Feb  8 03:16:29 2012	(r231176)
@@ -1812,23 +1812,29 @@ acpi_probe_children(device_t bus)
 static void
 acpi_probe_order(ACPI_HANDLE handle, int *order)
 {
-    ACPI_OBJECT_TYPE type;
+	ACPI_OBJECT_TYPE type;
 
-    /*
-     * 1. CPUs
-     * 2. I/O port and memory system resource holders
-     * 3. Embedded controllers (to handle early accesses)
-     * 4. PCI Link Devices
-     */
-    AcpiGetType(handle, &type);
-    if (type == ACPI_TYPE_PROCESSOR)
-	*order = 1;
-    else if (acpi_MatchHid(handle, "PNP0C01") || acpi_MatchHid(handle, "PNP0C02"))
-	*order = 2;
-    else if (acpi_MatchHid(handle, "PNP0C09"))
-	*order = 3;
-    else if (acpi_MatchHid(handle, "PNP0C0F"))
-	*order = 4;
+	/*
+	 * 0. CPUs
+	 * 1. I/O port and memory system resource holders
+	 * 2. Clocks and timers (to handle early accesses)
+	 * 3. Embedded controllers (to handle early accesses)
+	 * 4. PCI Link Devices
+	 */
+	AcpiGetType(handle, &type);
+	if (type == ACPI_TYPE_PROCESSOR)
+		*order = 0;
+	else if (acpi_MatchHid(handle, "PNP0C01") ||
+	    acpi_MatchHid(handle, "PNP0C02"))
+		*order = 1;
+	else if (acpi_MatchHid(handle, "PNP0100") ||
+	    acpi_MatchHid(handle, "PNP0103") ||
+	    acpi_MatchHid(handle, "PNP0B00"))
+		*order = 2;
+	else if (acpi_MatchHid(handle, "PNP0C09"))
+		*order = 3;
+	else if (acpi_MatchHid(handle, "PNP0C0F"))
+		*order = 4;
 }
 
 /*
@@ -1889,7 +1895,7 @@ acpi_probe_child(ACPI_HANDLE handle, UIN
 	     * resources).
 	     */
 	    ACPI_DEBUG_PRINT((ACPI_DB_OBJECTS, "scanning '%s'\n", handle_str));
-	    order = level * 10 + 100;
+	    order = level * 10 + ACPI_DEV_BASE_ORDER;
 	    acpi_probe_order(handle, &order);
 	    child = BUS_ADD_CHILD(bus, order, NULL, -1);
 	    if (child == NULL)

Modified: projects/nfsv4.1-client/sys/dev/acpica/acpi_ec.c
==============================================================================
--- projects/nfsv4.1-client/sys/dev/acpica/acpi_ec.c	Wed Feb  8 03:02:12 2012	(r231175)
+++ projects/nfsv4.1-client/sys/dev/acpica/acpi_ec.c	Wed Feb  8 03:16:29 2012	(r231176)
@@ -295,7 +295,7 @@ acpi_ec_ecdt_probe(device_t parent)
     }
 
     /* Create the child device with the given unit number. */
-    child = BUS_ADD_CHILD(parent, 0, "acpi_ec", ecdt->Uid);
+    child = BUS_ADD_CHILD(parent, 3, "acpi_ec", ecdt->Uid);
     if (child == NULL) {
 	printf("%s: can't add child\n", __func__);
 	return;

Modified: projects/nfsv4.1-client/sys/dev/acpica/acpi_hpet.c
==============================================================================
--- projects/nfsv4.1-client/sys/dev/acpica/acpi_hpet.c	Wed Feb  8 03:02:12 2012	(r231175)
+++ projects/nfsv4.1-client/sys/dev/acpica/acpi_hpet.c	Wed Feb  8 03:16:29 2012	(r231176)
@@ -342,7 +342,7 @@ hpet_identify(driver_t *driver, device_t
 		if (found)
 			continue;
 		/* If not - create it from table info. */
-		child = BUS_ADD_CHILD(parent, ACPI_DEV_BASE_ORDER, "hpet", 0);
+		child = BUS_ADD_CHILD(parent, 2, "hpet", 0);
 		if (child == NULL) {
 			printf("%s: can't add child\n", __func__);
 			continue;

Modified: projects/nfsv4.1-client/sys/dev/acpica/acpi_timer.c
==============================================================================
--- projects/nfsv4.1-client/sys/dev/acpica/acpi_timer.c	Wed Feb  8 03:02:12 2012	(r231175)
+++ projects/nfsv4.1-client/sys/dev/acpica/acpi_timer.c	Wed Feb  8 03:16:29 2012	(r231176)
@@ -124,7 +124,7 @@ acpi_timer_identify(driver_t *driver, de
 	acpi_timer_dev)
 	return_VOID;
 
-    if ((dev = BUS_ADD_CHILD(parent, 0, "acpi_timer", 0)) == NULL) {
+    if ((dev = BUS_ADD_CHILD(parent, 2, "acpi_timer", 0)) == NULL) {
 	device_printf(parent, "could not add acpi_timer0\n");
 	return_VOID;
     }

Modified: projects/nfsv4.1-client/sys/dev/acpica/acpivar.h
==============================================================================
--- projects/nfsv4.1-client/sys/dev/acpica/acpivar.h	Wed Feb  8 03:02:12 2012	(r231175)
+++ projects/nfsv4.1-client/sys/dev/acpica/acpivar.h	Wed Feb  8 03:16:29 2012	(r231176)
@@ -473,7 +473,7 @@ ACPI_HANDLE	acpi_GetReference(ACPI_HANDL
  * probe order sorted so that things like sysresource are available before
  * their children need them.
  */
-#define	ACPI_DEV_BASE_ORDER	10
+#define	ACPI_DEV_BASE_ORDER	100
 
 /* Default maximum number of tasks to enqueue. */
 #ifndef ACPI_MAX_TASKS

Modified: projects/nfsv4.1-client/sys/dev/ath/ath_dfs/null/dfs_null.c
==============================================================================
--- projects/nfsv4.1-client/sys/dev/ath/ath_dfs/null/dfs_null.c	Wed Feb  8 03:02:12 2012	(r231175)
+++ projects/nfsv4.1-client/sys/dev/ath/ath_dfs/null/dfs_null.c	Wed Feb  8 03:16:29 2012	(r231176)
@@ -71,6 +71,28 @@ __FBSDID("$FreeBSD$");
 #include <dev/ath/ath_hal/ah_desc.h>
 
 /*
+ * These are default parameters for the AR5416 and
+ * later 802.11n NICs.  They simply enable some
+ * radar pulse event generation.
+ *
+ * These are very likely not valid for the AR5212 era
+ * NICs.
+ *
+ * Since these define signal sizing and threshold
+ * parameters, they may need changing based on the
+ * specific antenna and receive amplifier
+ * configuration.
+ */
+#define	AR5416_DFS_FIRPWR	-33
+#define	AR5416_DFS_RRSSI	20
+#define	AR5416_DFS_HEIGHT	10
+#define	AR5416_DFS_PRSSI	15
+#define	AR5416_DFS_INBAND	15
+#define	AR5416_DFS_RELPWR	8
+#define	AR5416_DFS_RELSTEP	12
+#define	AR5416_DFS_MAXLEN	255
+
+/*
  * Methods which are required
  */
 
@@ -98,16 +120,45 @@ ath_dfs_detach(struct ath_softc *sc)
 int
 ath_dfs_radar_enable(struct ath_softc *sc, struct ieee80211_channel *chan)
 {
+#if 0
+	HAL_PHYERR_PARAM pe;
+
 	/* Check if the current channel is radar-enabled */
 	if (! IEEE80211_IS_CHAN_DFS(chan))
 		return (0);
 
+	/* Enable radar PHY error reporting */
+	sc->sc_dodfs = 1;
+

*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***



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