From owner-svn-src-stable-7@FreeBSD.ORG Mon Apr 2 14:52:29 2012 Return-Path: Delivered-To: svn-src-stable-7@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 237DD106566B; Mon, 2 Apr 2012 14:52:29 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 0DECE8FC1D; Mon, 2 Apr 2012 14:52:29 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.4/8.14.4) with ESMTP id q32EqSiV002589; Mon, 2 Apr 2012 14:52:28 GMT (envelope-from jhb@svn.freebsd.org) Received: (from jhb@localhost) by svn.freebsd.org (8.14.4/8.14.4/Submit) id q32EqSoe002585; Mon, 2 Apr 2012 14:52:28 GMT (envelope-from jhb@svn.freebsd.org) Message-Id: <201204021452.q32EqSoe002585@svn.freebsd.org> From: John Baldwin Date: Mon, 2 Apr 2012 14:52:28 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-7@freebsd.org X-SVN-Group: stable-7 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r233780 - in stable/7/sys: amd64/amd64 amd64/conf conf X-BeenThere: svn-src-stable-7@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: SVN commit messages for only the 7-stable src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 02 Apr 2012 14:52:29 -0000 Author: jhb Date: Mon Apr 2 14:52:28 2012 New Revision: 233780 URL: http://svn.freebsd.org/changeset/base/233780 Log: MFC 233256: Eliminate vm.pmap.shpgperproc and vm.pmap.pv_entry_max because they no longer serve any purpose. Modified: stable/7/sys/amd64/amd64/pmap.c stable/7/sys/amd64/conf/NOTES stable/7/sys/conf/options.amd64 Directory Properties: stable/7/sys/ (props changed) stable/7/sys/cddl/contrib/opensolaris/ (props changed) stable/7/sys/contrib/dev/acpica/ (props changed) stable/7/sys/contrib/pf/ (props changed) Modified: stable/7/sys/amd64/amd64/pmap.c ============================================================================== --- stable/7/sys/amd64/amd64/pmap.c Mon Apr 2 12:00:35 2012 (r233779) +++ stable/7/sys/amd64/amd64/pmap.c Mon Apr 2 14:52:28 2012 (r233780) @@ -106,7 +106,6 @@ __FBSDID("$FreeBSD$"); */ #include "opt_msgbuf.h" -#include "opt_pmap.h" #include "opt_vm.h" #include @@ -148,10 +147,6 @@ __FBSDID("$FreeBSD$"); #include #endif -#ifndef PMAP_SHPGPERPROC -#define PMAP_SHPGPERPROC 200 -#endif - #if !defined(DIAGNOSTIC) #define PMAP_INLINE __gnu89_inline #else @@ -195,9 +190,8 @@ static u_int64_t DMPDPphys; /* phys addr /* * Data for the pv entry allocation mechanism */ -static int pv_entry_count = 0, pv_entry_max = 0, pv_entry_high_water = 0; +static int pv_entry_count; static struct md_page *pv_table; -static int shpgperproc = PMAP_SHPGPERPROC; /* * All those kernel PT submaps that BSD is so fond of @@ -212,7 +206,7 @@ struct msgbuf *msgbufp = 0; static caddr_t crashdumpmap; static void free_pv_entry(pmap_t pmap, pv_entry_t pv); -static pv_entry_t get_pv_entry(pmap_t locked_pmap, int try); +static pv_entry_t get_pv_entry(pmap_t locked_pmap, boolean_t try); static void pmap_pv_demote_pde(pmap_t pmap, vm_offset_t va, vm_paddr_t pa); static boolean_t pmap_pv_insert_pde(pmap_t pmap, vm_offset_t va, vm_paddr_t pa); static void pmap_pv_promote_pde(pmap_t pmap, vm_offset_t va, vm_paddr_t pa); @@ -651,16 +645,6 @@ pmap_init(void) } /* - * Initialize the address space (zone) for the pv entries. Set a - * high water mark so that the system can recover from excessive - * numbers of pv entries. - */ - TUNABLE_INT_FETCH("vm.pmap.shpgperproc", &shpgperproc); - pv_entry_max = shpgperproc * maxproc + cnt.v_page_count; - TUNABLE_INT_FETCH("vm.pmap.pv_entries", &pv_entry_max); - pv_entry_high_water = 9 * (pv_entry_max / 10); - - /* * If the kernel is running in a virtual machine on an AMD Family 10h * processor, then it must assume that MCA is enabled by the virtual * machine monitor. @@ -695,36 +679,6 @@ pmap_init(void) TAILQ_INIT(&pv_table[i].pv_list); } -static int -pmap_pventry_proc(SYSCTL_HANDLER_ARGS) -{ - int error; - - error = sysctl_handle_int(oidp, oidp->oid_arg1, oidp->oid_arg2, req); - if (error == 0 && req->newptr) { - shpgperproc = (pv_entry_max - cnt.v_page_count) / maxproc; - pv_entry_high_water = 9 * (pv_entry_max / 10); - } - return (error); -} -SYSCTL_PROC(_vm_pmap, OID_AUTO, pv_entry_max, CTLTYPE_INT|CTLFLAG_RW, - &pv_entry_max, 0, pmap_pventry_proc, "IU", "Max number of PV entries"); - -static int -pmap_shpgperproc_proc(SYSCTL_HANDLER_ARGS) -{ - int error; - - error = sysctl_handle_int(oidp, oidp->oid_arg1, oidp->oid_arg2, req); - if (error == 0 && req->newptr) { - pv_entry_max = shpgperproc * maxproc + cnt.v_page_count; - pv_entry_high_water = 9 * (pv_entry_max / 10); - } - return (error); -} -SYSCTL_PROC(_vm_pmap, OID_AUTO, shpgperproc, CTLTYPE_INT|CTLFLAG_RW, - &shpgperproc, 0, pmap_shpgperproc_proc, "IU", "Page share factor per proc"); - SYSCTL_NODE(_vm_pmap, OID_AUTO, pde, CTLFLAG_RD, 0, "2MB page mapping counters"); @@ -2071,10 +2025,8 @@ free_pv_entry(pmap_t pmap, pv_entry_t pv * when needed. */ static pv_entry_t -get_pv_entry(pmap_t pmap, int try) +get_pv_entry(pmap_t pmap, boolean_t try) { - static const struct timeval printinterval = { 60, 0 }; - static struct timeval lastprint; static vm_pindex_t colour; struct vpgqueues *pq; int bit, field; @@ -2085,12 +2037,6 @@ get_pv_entry(pmap_t pmap, int try) PMAP_LOCK_ASSERT(pmap, MA_OWNED); mtx_assert(&vm_page_queue_mtx, MA_OWNED); PV_STAT(pv_entry_allocs++); - pv_entry_count++; - if (pv_entry_count > pv_entry_high_water) - if (ratecheck(&lastprint, &printinterval)) - printf("Approaching the limit on PV entries, consider " - "increasing either the vm.pmap.shpgperproc or the " - "vm.pmap.pv_entry_max sysctl.\n"); pq = NULL; retry: pc = TAILQ_FIRST(&pmap->pm_pvchunk); @@ -2108,8 +2054,10 @@ retry: if (pc->pc_map[0] == 0 && pc->pc_map[1] == 0 && pc->pc_map[2] == 0) { TAILQ_REMOVE(&pmap->pm_pvchunk, pc, pc_list); - TAILQ_INSERT_TAIL(&pmap->pm_pvchunk, pc, pc_list); + TAILQ_INSERT_TAIL(&pmap->pm_pvchunk, pc, + pc_list); } + pv_entry_count++; PV_STAT(pv_entry_spare--); return (pv); } @@ -2120,7 +2068,6 @@ retry: VM_ALLOC_WIRED); if (m == NULL) { if (try) { - pv_entry_count--; PV_STAT(pc_chunk_tryfail++); return (NULL); } @@ -2136,7 +2083,7 @@ retry: PV_STAT(pmap_collect_active++); pq = &vm_page_queues[PQ_ACTIVE]; } else - panic("get_pv_entry: increase vm.pmap.shpgperproc"); + panic("get_pv_entry: allocation failed"); pmap_collect(pmap, pq); goto retry; } @@ -2151,6 +2098,7 @@ retry: pc->pc_map[2] = PC_FREE2; pv = &pc->pc_pventry[0]; TAILQ_INSERT_HEAD(&pmap->pm_pvchunk, pc, pc_list); + pv_entry_count++; PV_STAT(pv_entry_spare += _NPCPV - 1); return (pv); } @@ -2308,8 +2256,7 @@ pmap_try_insert_pv_entry(pmap_t pmap, vm PMAP_LOCK_ASSERT(pmap, MA_OWNED); mtx_assert(&vm_page_queue_mtx, MA_OWNED); - if (pv_entry_count < pv_entry_high_water && - (pv = get_pv_entry(pmap, TRUE)) != NULL) { + if ((pv = get_pv_entry(pmap, TRUE)) != NULL) { pv->pv_va = va; TAILQ_INSERT_TAIL(&m->md.pv_list, pv, pv_list); return (TRUE); @@ -2327,8 +2274,7 @@ pmap_pv_insert_pde(pmap_t pmap, vm_offse pv_entry_t pv; mtx_assert(&vm_page_queue_mtx, MA_OWNED); - if (pv_entry_count < pv_entry_high_water && - (pv = get_pv_entry(pmap, TRUE)) != NULL) { + if ((pv = get_pv_entry(pmap, TRUE)) != NULL) { pv->pv_va = va; pvh = pa_to_pvh(pa); TAILQ_INSERT_TAIL(&pvh->pv_list, pv, pv_list); Modified: stable/7/sys/amd64/conf/NOTES ============================================================================== --- stable/7/sys/amd64/conf/NOTES Mon Apr 2 12:00:35 2012 (r233779) +++ stable/7/sys/amd64/conf/NOTES Mon Apr 2 14:52:28 2012 (r233780) @@ -593,19 +593,6 @@ device cpuctl # options ENABLE_ALART # Control alarm on Intel intpm driver -# -# Set the number of PV entries per process. Increasing this can -# stop panics related to heavy use of shared memory. However, that can -# (combined with large amounts of physical memory) cause panics at -# boot time due the kernel running out of VM space. -# -# If you're tweaking this, you might also want to increase the sysctls -# "vm.v_free_min", "vm.v_free_reserved", and "vm.v_free_target". -# -# The value below is the one more than the default. -# -options PMAP_SHPGPERPROC=201 - ##################################################################### # ABI Emulation Modified: stable/7/sys/conf/options.amd64 ============================================================================== --- stable/7/sys/conf/options.amd64 Mon Apr 2 12:00:35 2012 (r233779) +++ stable/7/sys/conf/options.amd64 Mon Apr 2 14:52:28 2012 (r233780) @@ -5,7 +5,6 @@ AUTO_EOI_1 opt_auto_eoi.h AUTO_EOI_2 opt_auto_eoi.h MAXMEM PERFMON -PMAP_SHPGPERPROC opt_pmap.h MP_WATCHDOG # Options for emulators. These should only be used at config time, so From owner-svn-src-stable-7@FreeBSD.ORG Mon Apr 2 16:33:08 2012 Return-Path: Delivered-To: svn-src-stable-7@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 264BC106564A; Mon, 2 Apr 2012 16:33:08 +0000 (UTC) (envelope-from jimharris@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 108208FC0C; Mon, 2 Apr 2012 16:33:08 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.4/8.14.4) with ESMTP id q32GX7F6006008; Mon, 2 Apr 2012 16:33:07 GMT (envelope-from jimharris@svn.freebsd.org) Received: (from jimharris@localhost) by svn.freebsd.org (8.14.4/8.14.4/Submit) id q32GX7pp006004; Mon, 2 Apr 2012 16:33:07 GMT (envelope-from jimharris@svn.freebsd.org) Message-Id: <201204021633.q32GX7pp006004@svn.freebsd.org> From: Jim Harris Date: Mon, 2 Apr 2012 16:33:07 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-7@freebsd.org X-SVN-Group: stable-7 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r233786 - stable/7/sys/dev/isci X-BeenThere: svn-src-stable-7@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: SVN commit messages for only the 7-stable src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 02 Apr 2012 16:33:08 -0000 Author: jimharris Date: Mon Apr 2 16:33:07 2012 New Revision: 233786 URL: http://svn.freebsd.org/changeset/base/233786 Log: MFC r233622: Ensure consistent target IDs for direct-attached devices. Sponsored by: Intel Reported by: sbruno, Ravi Pokala Tested by: Ravi Pokala Approved by: sbruno Modified: stable/7/sys/dev/isci/isci.h stable/7/sys/dev/isci/isci_controller.c stable/7/sys/dev/isci/isci_domain.c Directory Properties: stable/7/sys/ (props changed) Modified: stable/7/sys/dev/isci/isci.h ============================================================================== --- stable/7/sys/dev/isci/isci.h Mon Apr 2 16:31:53 2012 (r233785) +++ stable/7/sys/dev/isci/isci.h Mon Apr 2 16:33:07 2012 (r233786) @@ -89,10 +89,10 @@ struct ISCI_REMOTE_DEVICE { }; struct ISCI_DOMAIN { - struct ISCI_CONTROLLER *controller; - SCI_DOMAIN_HANDLE_T sci_object; - uint8_t index; - + struct ISCI_CONTROLLER *controller; + SCI_DOMAIN_HANDLE_T sci_object; + uint8_t index; + struct ISCI_REMOTE_DEVICE *da_remote_device; }; struct ISCI_MEMORY Modified: stable/7/sys/dev/isci/isci_controller.c ============================================================================== --- stable/7/sys/dev/isci/isci_controller.c Mon Apr 2 16:31:53 2012 (r233785) +++ stable/7/sys/dev/isci/isci_controller.c Mon Apr 2 16:33:07 2012 (r233786) @@ -430,7 +430,18 @@ int isci_controller_allocate_memory(stru remote_device->frozen_lun_mask = 0; sci_fast_list_element_init(remote_device, &remote_device->pending_device_reset_element); - sci_pool_put(controller->remote_device_pool, remote_device); + + /* + * For the first SCI_MAX_DOMAINS device objects, do not put + * them in the pool, rather assign them to each domain. This + * ensures that any device attached directly to port "i" will + * always get CAM target id "i". + */ + if (i < SCI_MAX_DOMAINS) + controller->domain[i].da_remote_device = remote_device; + else + sci_pool_put(controller->remote_device_pool, + remote_device); remote_device_memory_ptr += remote_device_size; } Modified: stable/7/sys/dev/isci/isci_domain.c ============================================================================== --- stable/7/sys/dev/isci/isci_domain.c Mon Apr 2 16:31:53 2012 (r233785) +++ stable/7/sys/dev/isci/isci_domain.c Mon Apr 2 16:33:07 2012 (r233786) @@ -202,10 +202,14 @@ scif_cb_domain_da_device_added(SCI_CONTR struct ISCI_REMOTE_DEVICE *remote_device; struct ISCI_DOMAIN *isci_domain = (struct ISCI_DOMAIN *)sci_object_get_association(domain); - struct ISCI_CONTROLLER *isci_controller = - (struct ISCI_CONTROLLER *)sci_object_get_association(controller); - sci_pool_get(isci_controller->remote_device_pool, remote_device); + /* + * For direct-attached devices, do not pull the device object from + * the pool. Rather, use the one stored in the domain object which + * will ensure that we always get consistent target ids for direct + * attached devices. + */ + remote_device = isci_domain->da_remote_device; scif_remote_device_construct(domain, (uint8_t*)remote_device + sizeof(struct ISCI_REMOTE_DEVICE), @@ -287,6 +291,8 @@ scif_cb_domain_device_removed(SCI_CONTRO { struct ISCI_REMOTE_DEVICE *isci_remote_device = (struct ISCI_REMOTE_DEVICE *)sci_object_get_association(remote_device); + struct ISCI_DOMAIN *isci_domain = + (struct ISCI_DOMAIN *)sci_object_get_association(domain); struct ISCI_CONTROLLER *isci_controller = (struct ISCI_CONTROLLER *)sci_object_get_association(controller); uint32_t path = cam_sim_path(isci_controller->sim); @@ -301,7 +307,13 @@ scif_cb_domain_device_removed(SCI_CONTRO scif_remote_device_destruct(remote_device); - sci_pool_put(isci_controller->remote_device_pool, isci_remote_device); + /* + * Only put the remote device back into the pool if it was an + * expander-attached device. + */ + if (isci_remote_device != isci_domain->da_remote_device) + sci_pool_put(isci_controller->remote_device_pool, + isci_remote_device); } void From owner-svn-src-stable-7@FreeBSD.ORG Mon Apr 2 16:37:46 2012 Return-Path: Delivered-To: svn-src-stable-7@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id EB5D7106564A; Mon, 2 Apr 2012 16:37:46 +0000 (UTC) (envelope-from jimharris@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id D68508FC19; Mon, 2 Apr 2012 16:37:46 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.4/8.14.4) with ESMTP id q32Gbk5Z006345; Mon, 2 Apr 2012 16:37:46 GMT (envelope-from jimharris@svn.freebsd.org) Received: (from jimharris@localhost) by svn.freebsd.org (8.14.4/8.14.4/Submit) id q32GbkLw006343; Mon, 2 Apr 2012 16:37:46 GMT (envelope-from jimharris@svn.freebsd.org) Message-Id: <201204021637.q32GbkLw006343@svn.freebsd.org> From: Jim Harris Date: Mon, 2 Apr 2012 16:37:46 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-7@freebsd.org X-SVN-Group: stable-7 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r233790 - stable/7/sys/dev/isci/scil X-BeenThere: svn-src-stable-7@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: SVN commit messages for only the 7-stable src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 02 Apr 2012 16:37:47 -0000 Author: jimharris Date: Mon Apr 2 16:37:46 2012 New Revision: 233790 URL: http://svn.freebsd.org/changeset/base/233790 Log: MFC r233663: Fix bug where isci(4) would report only 15 bytes of returned data on a READ_CAP_16 command to a SATA target. Sponsored by: Intel Approved by: sbruno Modified: stable/7/sys/dev/isci/scil/sati_read_capacity.c Directory Properties: stable/7/sys/ (props changed) Modified: stable/7/sys/dev/isci/scil/sati_read_capacity.c ============================================================================== --- stable/7/sys/dev/isci/scil/sati_read_capacity.c Mon Apr 2 16:36:44 2012 (r233789) +++ stable/7/sys/dev/isci/scil/sati_read_capacity.c Mon Apr 2 16:37:46 2012 (r233790) @@ -308,6 +308,10 @@ void sati_read_capacity_16_translate_dat sati_set_data_byte(sequence, scsi_io, 10, (U8)((sector_size >> 8) & 0xFF)); sati_set_data_byte(sequence, scsi_io, 11, (U8)(sector_size & 0xFF)); + //Explicitly set byte 12 to 0. SATI requires that all bytes in the data + //response be explicitly set to some value. + sati_set_data_byte(sequence, scsi_io, 12, 0); + //Check Bit 13 of ATA_IDENTIFY_DEVICE_DATA physical_logical_sector_info //(Word 106) is enabled physical_per_logical_enable_bit = (identify_device_data->physical_logical_sector_info From owner-svn-src-stable-7@FreeBSD.ORG Mon Apr 2 17:35:26 2012 Return-Path: Delivered-To: svn-src-stable-7@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id CB430106566C; Mon, 2 Apr 2012 17:35:26 +0000 (UTC) (envelope-from jkim@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id B60288FC1B; Mon, 2 Apr 2012 17:35:26 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.4/8.14.4) with ESMTP id q32HZQgk008489; Mon, 2 Apr 2012 17:35:26 GMT (envelope-from jkim@svn.freebsd.org) Received: (from jkim@localhost) by svn.freebsd.org (8.14.4/8.14.4/Submit) id q32HZQ7p008487; Mon, 2 Apr 2012 17:35:26 GMT (envelope-from jkim@svn.freebsd.org) Message-Id: <201204021735.q32HZQ7p008487@svn.freebsd.org> From: Jung-uk Kim Date: Mon, 2 Apr 2012 17:35:26 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-7@freebsd.org X-SVN-Group: stable-7 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r233796 - stable/7/sys/dev/atkbdc X-BeenThere: svn-src-stable-7@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: SVN commit messages for only the 7-stable src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 02 Apr 2012 17:35:26 -0000 Author: jkim Date: Mon Apr 2 17:35:26 2012 New Revision: 233796 URL: http://svn.freebsd.org/changeset/base/233796 Log: MFC: r233619 Add a PNP ID for Japanese 106-key keyboard. Modified: stable/7/sys/dev/atkbdc/atkbdc_isa.c Directory Properties: stable/7/sys/ (props changed) Modified: stable/7/sys/dev/atkbdc/atkbdc_isa.c ============================================================================== --- stable/7/sys/dev/atkbdc/atkbdc_isa.c Mon Apr 2 17:34:50 2012 (r233795) +++ stable/7/sys/dev/atkbdc/atkbdc_isa.c Mon Apr 2 17:35:26 2012 (r233796) @@ -82,6 +82,7 @@ static driver_t atkbdc_isa_driver = { static struct isa_pnp_id atkbdc_ids[] = { { 0x0303d041, "Keyboard controller (i8042)" }, /* PNP0303 */ + { 0x2003d041, "Keyboard controller (i8042)" }, /* PNP0320 */ { 0 } }; From owner-svn-src-stable-7@FreeBSD.ORG Mon Apr 2 18:31:01 2012 Return-Path: Delivered-To: svn-src-stable-7@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id E4110106564A; Mon, 2 Apr 2012 18:31:01 +0000 (UTC) (envelope-from jkim@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id CEBD08FC14; Mon, 2 Apr 2012 18:31:01 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.4/8.14.4) with ESMTP id q32IV1jc010704; Mon, 2 Apr 2012 18:31:01 GMT (envelope-from jkim@svn.freebsd.org) Received: (from jkim@localhost) by svn.freebsd.org (8.14.4/8.14.4/Submit) id q32IV1sA010702; Mon, 2 Apr 2012 18:31:01 GMT (envelope-from jkim@svn.freebsd.org) Message-Id: <201204021831.q32IV1sA010702@svn.freebsd.org> From: Jung-uk Kim Date: Mon, 2 Apr 2012 18:31:01 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-7@freebsd.org X-SVN-Group: stable-7 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r233800 - stable/7/sys/amd64/amd64 X-BeenThere: svn-src-stable-7@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: SVN commit messages for only the 7-stable src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 02 Apr 2012 18:31:02 -0000 Author: jkim Date: Mon Apr 2 18:31:01 2012 New Revision: 233800 URL: http://svn.freebsd.org/changeset/base/233800 Log: MFC: r233702 Work around Erratum 721 for AMD Family 10h and 12h processors. Modified: stable/7/sys/amd64/amd64/initcpu.c Directory Properties: stable/7/sys/ (props changed) Modified: stable/7/sys/amd64/amd64/initcpu.c ============================================================================== --- stable/7/sys/amd64/amd64/initcpu.c Mon Apr 2 18:27:06 2012 (r233799) +++ stable/7/sys/amd64/amd64/initcpu.c Mon Apr 2 18:31:01 2012 (r233800) @@ -78,6 +78,27 @@ SYSCTL_UINT(_hw, OID_AUTO, via_feature_r SYSCTL_UINT(_hw, OID_AUTO, via_feature_xcrypt, CTLFLAG_RD, &via_feature_xcrypt, 0, "VIA C3/C7 xcrypt feature available in CPU"); +static void +init_amd(void) +{ + + /* + * Work around Erratum 721 for Family 10h and 12h processors. + * These processors may incorrectly update the stack pointer + * after a long series of push and/or near-call instructions, + * or a long series of pop and/or near-return instructions. + * + * http://support.amd.com/us/Processor_TechDocs/41322_10h_Rev_Gd.pdf + * http://support.amd.com/us/Processor_TechDocs/44739_12h_Rev_Gd.pdf + */ + switch (CPUID_TO_FAMILY(cpu_id)) { + case 0x10: + case 0x12: + wrmsr(0xc0011029, rdmsr(0xc0011029) | 1); + break; + } +} + /* * Initialize special VIA C3/C7 features */ @@ -159,10 +180,16 @@ initializecpu(void) wrmsr(MSR_EFER, msr); pg_nx = PG_NX; } - if (cpu_vendor_id == CPU_VENDOR_CENTAUR && - CPUID_TO_FAMILY(cpu_id) == 0x6 && - CPUID_TO_MODEL(cpu_id) >= 0xf) - init_via(); + switch (cpu_vendor_id) { + case CPU_VENDOR_AMD: + init_amd(); + break; + case CPU_VENDOR_CENTAUR: + if (CPUID_TO_FAMILY(cpu_id) == 0x6 && + CPUID_TO_MODEL(cpu_id) >= 0xf) + init_via(); + break; + } } void From owner-svn-src-stable-7@FreeBSD.ORG Mon Apr 2 20:14:52 2012 Return-Path: Delivered-To: svn-src-stable-7@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 761CD10656FA; Mon, 2 Apr 2012 20:14:52 +0000 (UTC) (envelope-from marius@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 475738FC12; Mon, 2 Apr 2012 20:14:52 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.4/8.14.4) with ESMTP id q32KEqZv015038; Mon, 2 Apr 2012 20:14:52 GMT (envelope-from marius@svn.freebsd.org) Received: (from marius@localhost) by svn.freebsd.org (8.14.4/8.14.4/Submit) id q32KEquq015035; Mon, 2 Apr 2012 20:14:52 GMT (envelope-from marius@svn.freebsd.org) Message-Id: <201204022014.q32KEquq015035@svn.freebsd.org> From: Marius Strobl Date: Mon, 2 Apr 2012 20:14:52 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-7@freebsd.org X-SVN-Group: stable-7 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r233813 - stable/7/sys/sparc64/pci X-BeenThere: svn-src-stable-7@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: SVN commit messages for only the 7-stable src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 02 Apr 2012 20:14:52 -0000 Author: marius Date: Mon Apr 2 20:14:51 2012 New Revision: 233813 URL: http://svn.freebsd.org/changeset/base/233813 Log: MFC: r233701 - Remove erroneous trailing semicolon. [1] - Correctly determine the maximum payload size for setting the TX link frequent NACK latency and replay timer thresholds. Submitted by: stefanf [1] Modified: stable/7/sys/sparc64/pci/fire.c stable/7/sys/sparc64/pci/firereg.h Directory Properties: stable/7/sys/ (props changed) stable/7/sys/cddl/contrib/opensolaris/ (props changed) stable/7/sys/contrib/dev/acpica/ (props changed) stable/7/sys/contrib/pf/ (props changed) Modified: stable/7/sys/sparc64/pci/fire.c ============================================================================== --- stable/7/sys/sparc64/pci/fire.c Mon Apr 2 20:14:40 2012 (r233812) +++ stable/7/sys/sparc64/pci/fire.c Mon Apr 2 20:14:51 2012 (r233813) @@ -444,10 +444,11 @@ fire_attach(device_t dev) lw = 0; } mps = (FIRE_PCI_READ_8(sc, FO_PCI_TLU_CTRL) & - FO_PCI_TLU_CTRL_CFG_MASK) >> FO_PCI_TLU_CTRL_CFG_SHFT; + FO_PCI_TLU_CTRL_CFG_MPS_MASK) >> + FO_PCI_TLU_CTRL_CFG_MPS_SHFT; i = sizeof(fire_freq_nak_tmr_thrs) / sizeof(*fire_freq_nak_tmr_thrs); - if (mps >= i); + if (mps >= i) mps = i - 1; FIRE_PCI_SET(sc, FO_PCI_LPU_TXLNK_FREQ_LAT_TMR_THRS, (fire_freq_nak_tmr_thrs[mps][lw] << Modified: stable/7/sys/sparc64/pci/firereg.h ============================================================================== --- stable/7/sys/sparc64/pci/firereg.h Mon Apr 2 20:14:40 2012 (r233812) +++ stable/7/sys/sparc64/pci/firereg.h Mon Apr 2 20:14:51 2012 (r233813) @@ -345,6 +345,13 @@ #define FO_PCI_TLU_CTRL_CFG_MASK 0x000000000000ffffULL #define FO_PCI_TLU_CTRL_CFG_SHFT 0 #define FO_PCI_TLU_CTRL_CFG_REMAIN_DETECT_QUIET 0x0000000000000100ULL +#define FO_PCI_TLU_CTRL_CFG_PAD_LOOPBACK_EN 0x0000000000000080ULL +#define FO_PCI_TLU_CTRL_CFG_EWRAP_LOOPBACK_EN 0x0000000000000040ULL +#define FO_PCI_TLU_CTRL_CFG_DIGITAL_LOOPBACK_EN 0x0000000000000020ULL +#define FO_PCI_TLU_CTRL_CFG_MPS_MASK 0x000000000000001cULL +#define FO_PCI_TLU_CTRL_CFG_MPS_SHFT 2 +#define FO_PCI_TLU_CTRL_CFG_COMMON_CLK_CFG 0x0000000000000002ULL +#define FO_PCI_TLU_CTRL_CFG_PORT 0x0000000000000001ULL /* * PCI TLU other event interrupt enable, interrupt status and status clear From owner-svn-src-stable-7@FreeBSD.ORG Wed Apr 4 21:19:28 2012 Return-Path: Delivered-To: svn-src-stable-7@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 48C7B1065674; Wed, 4 Apr 2012 21:19:28 +0000 (UTC) (envelope-from marius@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 3375A8FC0A; Wed, 4 Apr 2012 21:19:28 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.4/8.14.4) with ESMTP id q34LJSLY025572; Wed, 4 Apr 2012 21:19:28 GMT (envelope-from marius@svn.freebsd.org) Received: (from marius@localhost) by svn.freebsd.org (8.14.4/8.14.4/Submit) id q34LJSQC025570; Wed, 4 Apr 2012 21:19:28 GMT (envelope-from marius@svn.freebsd.org) Message-Id: <201204042119.q34LJSQC025570@svn.freebsd.org> From: Marius Strobl Date: Wed, 4 Apr 2012 21:19:28 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-7@freebsd.org X-SVN-Group: stable-7 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r233891 - stable/7/sys/sparc64/sparc64 X-BeenThere: svn-src-stable-7@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: SVN commit messages for only the 7-stable src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 04 Apr 2012 21:19:28 -0000 Author: marius Date: Wed Apr 4 21:19:27 2012 New Revision: 233891 URL: http://svn.freebsd.org/changeset/base/233891 Log: MFC: r233747, r233748 - Fix panic on kernel traps having a mapping in trap_sig b0rked in r206086 (MFC'ed to stable/7 in r206197). Reported by: David E. Cross - Remove checks that are redundant due to tf_type being unsigned. Modified: stable/7/sys/sparc64/sparc64/trap.c Directory Properties: stable/7/sys/ (props changed) stable/7/sys/cddl/contrib/opensolaris/ (props changed) stable/7/sys/contrib/dev/acpica/ (props changed) stable/7/sys/contrib/pf/ (props changed) Modified: stable/7/sys/sparc64/sparc64/trap.c ============================================================================== --- stable/7/sys/sparc64/sparc64/trap.c Wed Apr 4 21:19:24 2012 (r233890) +++ stable/7/sys/sparc64/sparc64/trap.c Wed Apr 4 21:19:27 2012 (r233891) @@ -224,6 +224,9 @@ static const int trap_sig[] = { -1, /* kernel stack fault */ }; +CTASSERT(sizeof(trap_msg) / sizeof(*trap_msg) == T_MAX); +CTASSERT(sizeof(trap_sig) / sizeof(*trap_sig) == T_MAX); + CTASSERT(sizeof(struct trapframe) == 256); int debugger_on_signal = 0; @@ -307,7 +310,7 @@ trap(struct trapframe *tf) sig = trap_cecc(); break; default: - if (tf->tf_type < 0 || tf->tf_type >= T_MAX) + if (tf->tf_type > T_MAX) panic("trap: bad trap type %#lx (user)", tf->tf_type); else if (trap_sig[tf->tf_type] == -1) @@ -411,12 +414,10 @@ trap(struct trapframe *tf) if (error != 0) { tf->tf_type &= ~T_KERNEL; - if (tf->tf_type < 0 || tf->tf_type >= T_MAX) + if (tf->tf_type > T_MAX) panic("trap: bad trap type %#lx (kernel)", tf->tf_type); - else if (trap_sig[tf->tf_type] == -1) - panic("trap: %s (kernel)", - trap_msg[tf->tf_type]); + panic("trap: %s (kernel)", trap_msg[tf->tf_type]); } } CTR1(KTR_TRAP, "trap: td=%p return", td); From owner-svn-src-stable-7@FreeBSD.ORG Thu Apr 5 00:08:16 2012 Return-Path: Delivered-To: svn-src-stable-7@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id E7C471065673; Thu, 5 Apr 2012 00:08:16 +0000 (UTC) (envelope-from dougb@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id D21358FC0C; Thu, 5 Apr 2012 00:08:16 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.4/8.14.4) with ESMTP id q3508GmU031579; Thu, 5 Apr 2012 00:08:16 GMT (envelope-from dougb@svn.freebsd.org) Received: (from dougb@localhost) by svn.freebsd.org (8.14.4/8.14.4/Submit) id q3508GCC031576; Thu, 5 Apr 2012 00:08:16 GMT (envelope-from dougb@svn.freebsd.org) Message-Id: <201204050008.q3508GCC031576@svn.freebsd.org> From: Doug Barton Date: Thu, 5 Apr 2012 00:08:16 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-7@freebsd.org X-SVN-Group: stable-7 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r233910 - stable/7/share/doc/bind9 X-BeenThere: svn-src-stable-7@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: SVN commit messages for only the 7-stable src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 05 Apr 2012 00:08:17 -0000 Author: dougb Date: Thu Apr 5 00:08:16 2012 New Revision: 233910 URL: http://svn.freebsd.org/changeset/base/233910 Log: Add Bv9ARM.pdf to the list of docs to install. (Direct commit because this file varies widely between BIND versions) Modified: stable/7/share/doc/bind9/Makefile Modified: stable/7/share/doc/bind9/Makefile ============================================================================== --- stable/7/share/doc/bind9/Makefile Wed Apr 4 23:58:41 2012 (r233909) +++ stable/7/share/doc/bind9/Makefile Thu Apr 5 00:08:16 2012 (r233910) @@ -15,7 +15,7 @@ TOPDIR= ${DOCDIR}/bind9 ARM= Bv9ARM.ch01.html Bv9ARM.ch02.html Bv9ARM.ch03.html \ Bv9ARM.ch04.html Bv9ARM.ch05.html Bv9ARM.ch06.html \ Bv9ARM.ch07.html Bv9ARM.ch08.html Bv9ARM.ch09.html \ - Bv9ARM.ch10.html Bv9ARM.html man.dig.html \ + Bv9ARM.ch10.html Bv9ARM.html Bv9ARM.pdf man.dig.html \ man.dnssec-keygen.html man.dnssec-signzone.html man.host.html \ man.named-checkconf.html man.named-checkzone.html \ man.named.html man.rndc-confgen.html man.rndc.conf.html \ From owner-svn-src-stable-7@FreeBSD.ORG Sat Apr 7 12:47:13 2012 Return-Path: Delivered-To: svn-src-stable-7@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 9BBE210657EB; Sat, 7 Apr 2012 12:47:13 +0000 (UTC) (envelope-from marius@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 6C7038FC0A; Sat, 7 Apr 2012 12:47:13 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.4/8.14.4) with ESMTP id q37ClDnt062171; Sat, 7 Apr 2012 12:47:13 GMT (envelope-from marius@svn.freebsd.org) Received: (from marius@localhost) by svn.freebsd.org (8.14.4/8.14.4/Submit) id q37ClDMd062169; Sat, 7 Apr 2012 12:47:13 GMT (envelope-from marius@svn.freebsd.org) Message-Id: <201204071247.q37ClDMd062169@svn.freebsd.org> From: Marius Strobl Date: Sat, 7 Apr 2012 12:47:13 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-7@freebsd.org X-SVN-Group: stable-7 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r233997 - stable/7/sys/dev/mpt X-BeenThere: svn-src-stable-7@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: SVN commit messages for only the 7-stable src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 07 Apr 2012 12:47:13 -0000 Author: marius Date: Sat Apr 7 12:47:12 2012 New Revision: 233997 URL: http://svn.freebsd.org/changeset/base/233997 Log: MFC: r233827 Fix probing of SAS1068E with a device ID of 0x0059 after r232411 (MFC'ed to stable/7 in r232610). Reported by: infofarmer MFC: r233886 Refine r233827; as it turns out, controllers with a device ID of 0x0059 can be upgraded to MegaRAID mode, in which case mfi(4) should attach to these based on the sub-vendor and -device ID instead (not currently done). Therefore, let mpt_pci_probe() return BUS_PROBE_LOW_PRIORITY. While it, let mpt_pci_probe() return BUS_PROBE_DEFAULT instead of 0 in the default case. Modified: stable/7/sys/dev/mpt/mpt_pci.c Directory Properties: stable/7/sys/ (props changed) stable/7/sys/cddl/contrib/opensolaris/ (props changed) stable/7/sys/contrib/dev/acpica/ (props changed) stable/7/sys/contrib/pf/ (props changed) Modified: stable/7/sys/dev/mpt/mpt_pci.c ============================================================================== --- stable/7/sys/dev/mpt/mpt_pci.c Sat Apr 7 12:46:53 2012 (r233996) +++ stable/7/sys/dev/mpt/mpt_pci.c Sat Apr 7 12:47:12 2012 (r233997) @@ -141,6 +141,10 @@ __FBSDID("$FreeBSD$"); #define MPI_MANUFACTPAGE_DEVID_SAS1068A_FB 0x0055 #endif +#ifndef MPI_MANUFACTPAGE_DEVID_SAS1068E_FB +#define MPI_MANUFACTPAGE_DEVID_SAS1068E_FB 0x0059 +#endif + #ifndef MPI_MANUFACTPAGE_DEVID_SAS1078DE_FB #define MPI_MANUFACTPAGE_DEVID_SAS1078DE_FB 0x007C #endif @@ -183,10 +187,12 @@ static int mpt_pci_probe(device_t dev) { const char *desc; + int rval; if (pci_get_vendor(dev) != MPI_MANUFACTPAGE_VENDORID_LSILOGIC) return (ENXIO); + rval = BUS_PROBE_DEFAULT; switch (pci_get_device(dev)) { case MPI_MANUFACTPAGE_DEVICEID_FC909_FB: desc = "LSILogic FC909 FC Adapter"; @@ -228,6 +234,13 @@ mpt_pci_probe(device_t dev) case MPI_MANUFACTPAGE_DEVID_53C1030ZC: desc = "LSILogic 1030 Ultra4 Adapter"; break; + case MPI_MANUFACTPAGE_DEVID_SAS1068E_FB: + /* + * Allow mfi(4) to claim this device in case it's in MegaRAID + * mode. + */ + rval = BUS_PROBE_LOW_PRIORITY; + /* FALLTHROUGH */ case MPI_MANUFACTPAGE_DEVID_SAS1064: case MPI_MANUFACTPAGE_DEVID_SAS1064A: case MPI_MANUFACTPAGE_DEVID_SAS1064E: @@ -245,7 +258,7 @@ mpt_pci_probe(device_t dev) } device_set_desc(dev, desc); - return (0); + return (rval); } #if __FreeBSD_version < 500000 @@ -419,6 +432,7 @@ mpt_pci_attach(device_t dev) case MPI_MANUFACTPAGE_DEVID_SAS1068: case MPI_MANUFACTPAGE_DEVID_SAS1068A_FB: case MPI_MANUFACTPAGE_DEVID_SAS1068E: + case MPI_MANUFACTPAGE_DEVID_SAS1068E_FB: mpt->is_sas = 1; break; default: