From owner-svn-src-projects@FreeBSD.ORG Sun Feb 24 08:00:36 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 763A1EE7; Sun, 24 Feb 2013 08:00:36 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 5343B185F; Sun, 24 Feb 2013 08:00:36 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r1O80ZUR048399; Sun, 24 Feb 2013 08:00:35 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r1O80ZYc048398; Sun, 24 Feb 2013 08:00:35 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201302240800.r1O80ZYc048398@svn.freebsd.org> From: Alexander Motin Date: Sun, 24 Feb 2013 08:00:35 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247213 - projects/calloutng/sys/kern X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 24 Feb 2013 08:00:36 -0000 Author: mav Date: Sun Feb 24 08:00:35 2013 New Revision: 247213 URL: http://svnweb.freebsd.org/changeset/base/247213 Log: Add missing pointer sign. Modified: projects/calloutng/sys/kern/kern_tc.c Modified: projects/calloutng/sys/kern/kern_tc.c ============================================================================== --- projects/calloutng/sys/kern/kern_tc.c Sun Feb 24 06:44:29 2013 (r247212) +++ projects/calloutng/sys/kern/kern_tc.c Sun Feb 24 08:00:35 2013 (r247213) @@ -919,7 +919,7 @@ binuptime(struct bintime *bt) } void -sbinuptime(sbintime_t sbt) +sbinuptime(sbintime_t *sbt) { /* XXX: We need a real implementation, but tomorrow */ struct bintime bt; From owner-svn-src-projects@FreeBSD.ORG Sun Feb 24 10:55:51 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 02EE3263; Sun, 24 Feb 2013 10:55:51 +0000 (UTC) (envelope-from benno@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id E7F871C44; Sun, 24 Feb 2013 10:55:50 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r1OAto3H001422; Sun, 24 Feb 2013 10:55:50 GMT (envelope-from benno@svn.freebsd.org) Received: (from benno@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r1OAtoFh001417; Sun, 24 Feb 2013 10:55:50 GMT (envelope-from benno@svn.freebsd.org) Message-Id: <201302241055.r1OAtoFh001417@svn.freebsd.org> From: Benno Rice Date: Sun, 24 Feb 2013 10:55:50 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247214 - projects/uefi/sys/boot/i386/efi X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 24 Feb 2013 10:55:51 -0000 Author: benno Date: Sun Feb 24 10:55:49 2013 New Revision: 247214 URL: http://svnweb.freebsd.org/changeset/base/247214 Log: Fix a number of problems preventing proper handover to the kernel. There were two issues at play here. Firstly, there was nothing preventing UEFI from placing the loader code above 1GB in RAM. This meant that when we switched in the page tables the kernel expects to be running on, we are suddenly unmapped and things no longer work. We solve this by making our trampoline code not dependent on being at any given position and simply copying it to a "safe" location before calling it. Secondly, UEFI could allocate our stack wherever it wants. As it happened on my PC, that was right where I was copying the kernel to. This did not cause happiness. The solution to this was to also switch to a temporary stack in a safe location before performing the final copy of the loaded kernel. Added: projects/uefi/sys/boot/i386/efi/amd64_tramp.S Modified: projects/uefi/sys/boot/i386/efi/Makefile projects/uefi/sys/boot/i386/efi/elf64_freebsd.c projects/uefi/sys/boot/i386/efi/x86_efi_copy.c Modified: projects/uefi/sys/boot/i386/efi/Makefile ============================================================================== --- projects/uefi/sys/boot/i386/efi/Makefile Sun Feb 24 08:00:35 2013 (r247213) +++ projects/uefi/sys/boot/i386/efi/Makefile Sun Feb 24 10:55:49 2013 (r247214) @@ -12,6 +12,7 @@ INTERNALPROG= # architecture-specific loader code SRCS= main.c exec.c conf.c vers.c reloc.c elf32_freebsd.c elf64_freebsd.c SRCS+= x86_efi_copy.c bootinfo.c bootinfo64.c autoload.c devicename.c efimd.c +SRCS+= amd64_tramp.S .PATH: ${.CURDIR}/${MACHINE_CPUARCH} SRCS+= start.S Added: projects/uefi/sys/boot/i386/efi/amd64_tramp.S ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/uefi/sys/boot/i386/efi/amd64_tramp.S Sun Feb 24 10:55:49 2013 (r247214) @@ -0,0 +1,34 @@ +#include + + .text + .globl amd64_tramp + +/* + * void amd64_tramp(uint64_t stack, void *copy_finish, uint64_t kernend, + * uint64_t modulep, uint64_t pagetable, uint64_t entry) + */ +amd64_tramp: + cli /* Make sure we don't get interrupted. */ + movq %rdi,%rsp /* Switch to our temporary stack. */ + + movq %rdx,%r12 /* Stash the kernel values for later. */ + movq %rcx,%r13 + movq %r8,%r14 + movq %r9,%r15 + + call %rsi /* Call copy_finish so we're all ready to go. */ + + pushq %r12 /* Push kernend. */ + salq $32,%r13 /* Shift modulep and push it. */ + pushq %r13 + pushq %r15 /* Push the entry address. */ + movq %r14,%cr3 /* Switch page tables. */ + ret /* "Return" to kernel entry. */ + + ALIGN_TEXT +amd64_tramp_end: + + .data + .globl amd64_tramp_size +amd64_tramp_size: + .long amd64_tramp_end-amd64_tramp Modified: projects/uefi/sys/boot/i386/efi/elf64_freebsd.c ============================================================================== --- projects/uefi/sys/boot/i386/efi/elf64_freebsd.c Sun Feb 24 08:00:35 2013 (r247213) +++ projects/uefi/sys/boot/i386/efi/elf64_freebsd.c Sun Feb 24 10:55:49 2013 (r247214) @@ -74,6 +74,13 @@ static p4_entry_t *PT4; static p3_entry_t *PT3; static p2_entry_t *PT2; +static void (*trampoline)(uint64_t stack, void *copy_finish, uint64_t kernend, + uint64_t modulep, p4_entry_t *pagetable, + uint64_t entry); + +extern uintptr_t amd64_tramp; +extern uint32_t amd64_tramp_size; + /* * There is an ELF kernel and one or more ELF modules loaded. * We wish to start executing the kernel image, so make such @@ -84,8 +91,7 @@ elf64_exec(struct preloaded_file *fp) { struct file_metadata *md; Elf_Ehdr *ehdr; - vm_offset_t modulep, kernend, pagetable; - uint32_t mp, ke; + vm_offset_t modulep, kernend, trampcode, trampstack; int err, i; ACPI_TABLE_RSDP *rsdp; char buf[24]; @@ -121,10 +127,18 @@ elf64_exec(struct preloaded_file *fp) return(EFTYPE); ehdr = (Elf_Ehdr *)&(md->md_data); - PT4 = (p4_entry_t *)0x00000000fffff000; + trampcode = (vm_offset_t)0x0000000040000000; + err = BS->AllocatePages(AllocateMaxAddress, EfiLoaderData, 1, + (EFI_PHYSICAL_ADDRESS *)&trampcode); + bzero((void *)trampcode, EFI_PAGE_SIZE); + trampstack = trampcode + EFI_PAGE_SIZE - 8; + bcopy((void *)&amd64_tramp, (void *)trampcode, amd64_tramp_size); + trampoline = (void *)trampcode; + + PT4 = (p4_entry_t *)0x0000000040000000; err = BS->AllocatePages(AllocateMaxAddress, EfiLoaderData, 3, (EFI_PHYSICAL_ADDRESS *)&PT4); - bzero(PT4, 3 * PAGE_SIZE); + bzero(PT4, 3 * EFI_PAGE_SIZE); PT3 = &PT4[512]; PT2 = &PT3[512]; @@ -157,23 +171,8 @@ elf64_exec(struct preloaded_file *fp) dev_cleanup(); - x86_efi_copy_finish(); - - mp = modulep & 0xffffffff; - ke = kernend & 0xffffffff; - pagetable = (uintptr_t)PT4; - __asm __volatile( - "movl %0, %%eax;" - "pushq %%rax;" - "movl %1, %%eax;" - "salq $32, %%rax;" - "pushq %%rax;" - "movq %2, %%rax;" - "pushq %%rax;" - "movq %3, %%rax;" - "movq %%rax, %%cr3;" - "ret" - :: "r" (ke), "r" (mp), "r" (ehdr->e_entry), "r" (PT4)); + trampoline(trampstack, x86_efi_copy_finish, kernend, modulep, PT4, + ehdr->e_entry); panic("exec returned"); } Modified: projects/uefi/sys/boot/i386/efi/x86_efi_copy.c ============================================================================== --- projects/uefi/sys/boot/i386/efi/x86_efi_copy.c Sun Feb 24 08:00:35 2013 (r247213) +++ projects/uefi/sys/boot/i386/efi/x86_efi_copy.c Sun Feb 24 10:55:49 2013 (r247214) @@ -37,7 +37,7 @@ __FBSDID("$FreeBSD$"); #include #include -#define STAGE_PAGES 8000 /* 32MB */ +#define STAGE_PAGES 8192 /* 32MB */ EFI_PHYSICAL_ADDRESS staging; int stage_offset_set = 0; @@ -92,7 +92,12 @@ x86_efi_readin(const int fd, vm_offset_t void x86_efi_copy_finish(void) { + uint64_t *src, *dst, *last; - bcopy((void *)staging, (void *)(staging - stage_offset), - STAGE_PAGES * EFI_PAGE_SIZE); + src = (uint64_t *)staging; + dst = (uint64_t *)(staging - stage_offset); + last = (uint64_t *)(staging + STAGE_PAGES * EFI_PAGE_SIZE); + + while (src < last) + *dst++ = *src++; } From owner-svn-src-projects@FreeBSD.ORG Sun Feb 24 11:22:30 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id F2F1B538; Sun, 24 Feb 2013 11:22:29 +0000 (UTC) (envelope-from benno@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id DBAB91CE0; Sun, 24 Feb 2013 11:22:29 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r1OBMTPT010213; Sun, 24 Feb 2013 11:22:29 GMT (envelope-from benno@svn.freebsd.org) Received: (from benno@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r1OBMTQ7010212; Sun, 24 Feb 2013 11:22:29 GMT (envelope-from benno@svn.freebsd.org) Message-Id: <201302241122.r1OBMTQ7010212@svn.freebsd.org> From: Benno Rice Date: Sun, 24 Feb 2013 11:22:29 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247215 - projects/uefi/sys/amd64/include X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 24 Feb 2013 11:22:30 -0000 Author: benno Date: Sun Feb 24 11:22:29 2013 New Revision: 247215 URL: http://svnweb.freebsd.org/changeset/base/247215 Log: Add EFI handover structures. This was missed in previous commits. Spotted by: John Klug Added: projects/uefi/sys/amd64/include/efi.h Added: projects/uefi/sys/amd64/include/efi.h ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/uefi/sys/amd64/include/efi.h Sun Feb 24 11:22:29 2013 (r247215) @@ -0,0 +1,35 @@ +#ifndef _MACHINE_EFI_H_ +#define _MACHINE_EFI_H_ + +struct efi_fb { + int fb_present; + uint64_t fb_addr; + uint64_t fb_size; + int fb_height; + int fb_width; + int fb_stride; + uint32_t fb_mask_red; + uint32_t fb_mask_green; + uint32_t fb_mask_blue; + uint32_t fb_mask_reserved; +}; + +struct efi_header { + size_t memory_size; + size_t descriptor_size; + uint64_t descriptor_version; + struct efi_fb fb; +}; + +struct efi_descriptor { + uint32_t type; + vm_offset_t physical_start; + vm_offset_t virtual_start; + uint64_t pages; + uint64_t attribute; +}; + +#define efi_next_descriptor(ptr, size) \ + ((struct efi_descriptor *)(((uint8_t *) ptr) + size)) + +#endif /* _MACHINE_EFI_H_ */ From owner-svn-src-projects@FreeBSD.ORG Sun Feb 24 11:24:09 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id D1CD5654; Sun, 24 Feb 2013 11:24:09 +0000 (UTC) (envelope-from benno@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id AB8871CE5; Sun, 24 Feb 2013 11:24:09 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r1OBO9x1010457; Sun, 24 Feb 2013 11:24:09 GMT (envelope-from benno@svn.freebsd.org) Received: (from benno@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r1OBO899010452; Sun, 24 Feb 2013 11:24:08 GMT (envelope-from benno@svn.freebsd.org) Message-Id: <201302241124.r1OBO899010452@svn.freebsd.org> From: Benno Rice Date: Sun, 24 Feb 2013 11:24:08 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247216 - in projects/uefi/sys/boot: efi/include i386/efi X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 24 Feb 2013 11:24:09 -0000 Author: benno Date: Sun Feb 24 11:24:08 2013 New Revision: 247216 URL: http://svnweb.freebsd.org/changeset/base/247216 Log: Use the UEFI Graphics Output Protocol to get the parameters of the framebuffer. This is handed over to be used by the syscons framebuffer. Added: projects/uefi/sys/boot/efi/include/efigop.h projects/uefi/sys/boot/i386/efi/efifb.c projects/uefi/sys/boot/i386/efi/efifb.h Modified: projects/uefi/sys/boot/efi/include/efi.h projects/uefi/sys/boot/i386/efi/efimd.c Modified: projects/uefi/sys/boot/efi/include/efi.h ============================================================================== --- projects/uefi/sys/boot/efi/include/efi.h Sun Feb 24 11:22:29 2013 (r247215) +++ projects/uefi/sys/boot/efi/include/efi.h Sun Feb 24 11:24:08 2013 (r247216) @@ -52,6 +52,7 @@ Revision History #include "efiapi.h" #include "efifs.h" #include "efierr.h" +#include "efigop.h" #define EFI_STRINGIZE(a) #a #define EFI_PROTOCOL_DEFINITION(a) EFI_STRINGIZE(Protocol/a/a.h) Added: projects/uefi/sys/boot/efi/include/efigop.h ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/uefi/sys/boot/efi/include/efigop.h Sun Feb 24 11:24:08 2013 (r247216) @@ -0,0 +1,122 @@ +/* $FreeBSD$ */ +/*++ + +Copyright (c) 1999 - 2002 Intel Corporation. All rights reserved +This software and associated documentation (if any) is furnished +under a license and may only be used or copied in accordance +with the terms of the license. Except as permitted by such +license, no part of this software or documentation may be +reproduced, stored in a retrieval system, or transmitted in any +form or by any means without the express written consent of +Intel Corporation. + +Module Name: + + efigop.h + +Abstract: + Info about framebuffers + + + + +Revision History + +--*/ + +#ifndef _EFIGOP_H +#define _EFIGOP_H + +#define EFI_GRAPHICS_OUTPUT_PROTOCOL_GUID \ + { 0x9042a9de, 0x23dc, 0x4a38, 0x96, 0xfb, 0x7a, 0xde, 0xd0, 0x80, \ + 0x51, 0x6a } + +INTERFACE_DECL(_EFI_GRAPHICS_OUTPUT); + +typedef struct { + UINT32 RedMask; + UINT32 GreenMask; + UINT32 BlueMask; + UINT32 ReservedMask; +} EFI_PIXEL_BITMASK; + +typedef enum { + PixelRedGreenBlueReserved8BitPerColor, + PixelBlueGreenRedReserved8BitPerColor, + PixelBitMask, + PixelBltOnly, + PixelFormatMax, +} EFI_GRAPHICS_PIXEL_FORMAT; + +typedef struct { + UINT32 Version; + UINT32 HorizontalResolution; + UINT32 VerticalResolution; + EFI_GRAPHICS_PIXEL_FORMAT PixelFormat; + EFI_PIXEL_BITMASK PixelInformation; + UINT32 PixelsPerScanLine; +} EFI_GRAPHICS_OUTPUT_MODE_INFORMATION; + +typedef struct { + UINT32 MaxMode; + UINT32 Mode; + EFI_GRAPHICS_OUTPUT_MODE_INFORMATION *Info; + UINTN SizeOfInfo; + EFI_PHYSICAL_ADDRESS FrameBufferBase; + UINTN FrameBufferSize; +} EFI_GRAPHICS_OUTPUT_PROTOCOL_MODE; + +typedef +EFI_STATUS +(EFIAPI *EFI_GRAPHICS_OUTPUT_PROTOCOL_QUERY_MODE) ( + IN struct _EFI_GRAPHICS_OUTPUT *This, + IN UINT32 ModeNumber, + OUT UINTN *SizeOfInfo, + OUT EFI_GRAPHICS_OUTPUT_MODE_INFORMATION **Info + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_GRAPHICS_OUTPUT_PROTOCOL_SET_MODE) ( + IN struct _EFI_GRAPHICS_OUTPUT *This, + IN UINT32 ModeNumber + ); + +typedef struct { + UINT8 Blue; + UINT8 Green; + UINT8 Red; + UINT8 Reserved; +} EFI_GRAPHICS_OUTPUT_BLT_PIXEL; + +typedef enum { + EfiBltVideoFill, + EfiBltVideoToBltBuffer, + EfiBltBufferToVideo, + EfiBltVideoToVideo, + EfiGraphcisOutputBltOperationMax, +} EFI_GRAPHICS_OUTPUT_BLT_OPERATION; + +typedef +EFI_STATUS +(EFIAPI *EFI_GRAPHICS_OUTPUT_PROTOCOL_BLT) ( + IN struct _EFI_GRAPHICS_OUTPUT *This, + IN OUT EFI_GRAPHICS_OUTPUT_BLT_PIXEL *BltBuffer, + IN EFI_GRAPHICS_OUTPUT_BLT_OPERATION BltOperation, + IN UINTN SourceX, + IN UINTN SourceY, + IN UINTN DestinationX, + IN UINTN DestinationY, + IN UINTN Width, + IN UINTN Height, + IN UINTN Delta + ); + +typedef struct _EFI_GRAPHICS_OUTPUT { + EFI_GRAPHICS_OUTPUT_PROTOCOL_QUERY_MODE QueryMode; + EFI_GRAPHICS_OUTPUT_PROTOCOL_SET_MODE SetMode; + EFI_GRAPHICS_OUTPUT_PROTOCOL_BLT Blt; + EFI_GRAPHICS_OUTPUT_PROTOCOL_MODE *Mode; +} EFI_GRAPHICS_OUTPUT; + +#endif /* _EFIGOP_H */ Added: projects/uefi/sys/boot/i386/efi/efifb.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/uefi/sys/boot/i386/efi/efifb.c Sun Feb 24 11:24:08 2013 (r247216) @@ -0,0 +1,88 @@ +/*- + * Copyright (c) 2013 The FreeBSD Foundation + * All rights reserved. + * + * This software was developed by Benno Rice under sponsorship from + * the FreeBSD Foundation. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include +__FBSDID("$FreeBSD$"); + +#include + +#include +#include + +#include + +static EFI_GUID gop_guid = EFI_GRAPHICS_OUTPUT_PROTOCOL_GUID; + +void +efi_find_framebuffer(struct efi_header *efihdr) +{ + EFI_GRAPHICS_OUTPUT *gop; + EFI_STATUS status; + EFI_GRAPHICS_OUTPUT_PROTOCOL_MODE *mode; + EFI_GRAPHICS_OUTPUT_MODE_INFORMATION *info; + + status = BS->LocateProtocol(&gop_guid, NULL, (VOID **)&gop); + if (EFI_ERROR(status)) { + efihdr->fb.fb_present = 0; + return; + } + + mode = gop->Mode; + info = gop->Mode->Info; + + efihdr->fb.fb_present = 1; + efihdr->fb.fb_addr = mode->FrameBufferBase; + efihdr->fb.fb_size = mode->FrameBufferSize; + efihdr->fb.fb_height = info->VerticalResolution; + efihdr->fb.fb_width = info->HorizontalResolution; + efihdr->fb.fb_stride = info->PixelsPerScanLine; + + switch (info->PixelFormat) { + case PixelRedGreenBlueReserved8BitPerColor: + efihdr->fb.fb_mask_red = 0x000000ff; + efihdr->fb.fb_mask_green = 0x0000ff00; + efihdr->fb.fb_mask_blue = 0x00ff0000; + efihdr->fb.fb_mask_reserved = 0xff000000; + break; + case PixelBlueGreenRedReserved8BitPerColor: + efihdr->fb.fb_mask_red = 0x00ff0000; + efihdr->fb.fb_mask_green = 0x0000ff00; + efihdr->fb.fb_mask_blue = 0x000000ff; + efihdr->fb.fb_mask_reserved = 0xff000000; + break; + case PixelBitMask: + efihdr->fb.fb_mask_red = info->PixelInformation.RedMask; + efihdr->fb.fb_mask_green = info->PixelInformation.GreenMask; + efihdr->fb.fb_mask_blue = info->PixelInformation.BlueMask; + efihdr->fb.fb_mask_reserved = + info->PixelInformation.ReservedMask; + break; + default: + efihdr->fb.fb_present = 0; + } +} Added: projects/uefi/sys/boot/i386/efi/efifb.h ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/uefi/sys/boot/i386/efi/efifb.h Sun Feb 24 11:24:08 2013 (r247216) @@ -0,0 +1,6 @@ +#ifndef _EFIFB_H_ +#define _EFIFB_H_ + +void efi_find_framebuffer(struct efi_header *efihdr); + +#endif /* _EFIFB_H_ */ Modified: projects/uefi/sys/boot/i386/efi/efimd.c ============================================================================== --- projects/uefi/sys/boot/i386/efi/efimd.c Sun Feb 24 11:22:29 2013 (r247215) +++ projects/uefi/sys/boot/i386/efi/efimd.c Sun Feb 24 11:24:08 2013 (r247216) @@ -37,6 +37,7 @@ __FBSDID("$FreeBSD$"); #include #include "bootstrap.h" +#include "efifb.h" static UINTN mapkey; @@ -101,6 +102,8 @@ ldr_bootinfo(struct preloaded_file *kfp) efihdr->descriptor_size = mmsz; efihdr->descriptor_version = mmver; + efi_find_framebuffer(efihdr); + file_addmetadata(kfp, MODINFOMD_EFI, efisz + sz, efihdr); return (0); From owner-svn-src-projects@FreeBSD.ORG Sun Feb 24 21:20:58 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 632F7331; Sun, 24 Feb 2013 21:20:58 +0000 (UTC) (envelope-from bryanv@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 55C9369E; Sun, 24 Feb 2013 21:20:58 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r1OLKwL6091573; Sun, 24 Feb 2013 21:20:58 GMT (envelope-from bryanv@svn.freebsd.org) Received: (from bryanv@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r1OLKwbv091572; Sun, 24 Feb 2013 21:20:58 GMT (envelope-from bryanv@svn.freebsd.org) Message-Id: <201302242120.r1OLKwbv091572@svn.freebsd.org> From: Bryan Venteicher Date: Sun, 24 Feb 2013 21:20:58 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247238 - projects/virtio/sys/dev/virtio X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 24 Feb 2013 21:20:58 -0000 Author: bryanv Date: Sun Feb 24 21:20:57 2013 New Revision: 247238 URL: http://svnweb.freebsd.org/changeset/base/247238 Log: virtio: Remove PRIx64 macros from format strings Approved by: grehan (implicit) Modified: projects/virtio/sys/dev/virtio/virtio.c Modified: projects/virtio/sys/dev/virtio/virtio.c ============================================================================== --- projects/virtio/sys/dev/virtio/virtio.c Sun Feb 24 21:00:37 2013 (r247237) +++ projects/virtio/sys/dev/virtio/virtio.c Sun Feb 24 21:20:57 2013 (r247238) @@ -36,7 +36,6 @@ __FBSDID("$FreeBSD$"); #include #include -#include #include #include @@ -119,12 +118,12 @@ virtio_describe(device_t dev, const char int n; if ((buf = malloc(512, M_TEMP, M_NOWAIT)) == NULL) { - device_printf(dev, "%s features: 0x%"PRIx64"\n", msg, features); + device_printf(dev, "%s features: %#jx\n", msg, (uintmax_t) features); return; } sbuf_new(&sb, buf, 512, SBUF_FIXEDLEN); - sbuf_printf(&sb, "%s features: 0x%"PRIx64, msg, features); + sbuf_printf(&sb, "%s features: %#jx", msg, (uintmax_t) features); for (n = 0, val = 1ULL << 63; val != 0; val >>= 1) { /* @@ -141,7 +140,7 @@ virtio_describe(device_t dev, const char name = virtio_feature_name(val, desc); if (name == NULL) - sbuf_printf(&sb, "0x%"PRIx64, val); + sbuf_printf(&sb, "%#jx", (uintmax_t) val); else sbuf_cat(&sb, name); } From owner-svn-src-projects@FreeBSD.ORG Sun Feb 24 21:22:16 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 78552451; Sun, 24 Feb 2013 21:22:16 +0000 (UTC) (envelope-from bryanv@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 618926A5; Sun, 24 Feb 2013 21:22:16 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r1OLMGoi091818; Sun, 24 Feb 2013 21:22:16 GMT (envelope-from bryanv@svn.freebsd.org) Received: (from bryanv@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r1OLMGLQ091816; Sun, 24 Feb 2013 21:22:16 GMT (envelope-from bryanv@svn.freebsd.org) Message-Id: <201302242122.r1OLMGLQ091816@svn.freebsd.org> From: Bryan Venteicher Date: Sun, 24 Feb 2013 21:22:16 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247239 - projects/virtio/sys/dev/virtio X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 24 Feb 2013 21:22:16 -0000 Author: bryanv Date: Sun Feb 24 21:22:15 2013 New Revision: 247239 URL: http://svnweb.freebsd.org/changeset/base/247239 Log: virtio: Constify some fields Obtained from: DragonflyBSD Approved by: grehan (implicit) Modified: projects/virtio/sys/dev/virtio/virtio.c projects/virtio/sys/dev/virtio/virtio.h Modified: projects/virtio/sys/dev/virtio/virtio.c ============================================================================== --- projects/virtio/sys/dev/virtio/virtio.c Sun Feb 24 21:20:57 2013 (r247238) +++ projects/virtio/sys/dev/virtio/virtio.c Sun Feb 24 21:22:15 2013 (r247239) @@ -48,8 +48,8 @@ static int virtio_modevent(module_t, int static const char *virtio_feature_name(uint64_t, struct virtio_feature_desc *); static struct virtio_ident { - uint16_t devid; - char *name; + uint16_t devid; + const char *name; } virtio_ident_table[] = { { VIRTIO_ID_NETWORK, "Network" }, { VIRTIO_ID_BLOCK, "Block" }, Modified: projects/virtio/sys/dev/virtio/virtio.h ============================================================================== --- projects/virtio/sys/dev/virtio/virtio.h Sun Feb 24 21:20:57 2013 (r247238) +++ projects/virtio/sys/dev/virtio/virtio.h Sun Feb 24 21:22:15 2013 (r247239) @@ -94,7 +94,7 @@ struct vq_alloc_info; struct virtio_feature_desc { uint64_t vfd_val; - char *vfd_str; + const char *vfd_str; }; const char *virtio_device_name(uint16_t devid); From owner-svn-src-projects@FreeBSD.ORG Sun Feb 24 21:23:11 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id DA983582; Sun, 24 Feb 2013 21:23:11 +0000 (UTC) (envelope-from bryanv@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id CC45A6B3; Sun, 24 Feb 2013 21:23:11 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r1OLNBEN091969; Sun, 24 Feb 2013 21:23:11 GMT (envelope-from bryanv@svn.freebsd.org) Received: (from bryanv@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r1OLNBKR091968; Sun, 24 Feb 2013 21:23:11 GMT (envelope-from bryanv@svn.freebsd.org) Message-Id: <201302242123.r1OLNBKR091968@svn.freebsd.org> From: Bryan Venteicher Date: Sun, 24 Feb 2013 21:23:11 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247240 - projects/virtio/sys/dev/virtio X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 24 Feb 2013 21:23:11 -0000 Author: bryanv Date: Sun Feb 24 21:23:11 2013 New Revision: 247240 URL: http://svnweb.freebsd.org/changeset/base/247240 Log: virtio: Minor code simplifications Approved by: grehan (implicit) Modified: projects/virtio/sys/dev/virtio/virtio.c Modified: projects/virtio/sys/dev/virtio/virtio.c ============================================================================== --- projects/virtio/sys/dev/virtio/virtio.c Sun Feb 24 21:22:15 2013 (r247239) +++ projects/virtio/sys/dev/virtio/virtio.c Sun Feb 24 21:23:11 2013 (r247240) @@ -98,9 +98,8 @@ virtio_feature_name(uint64_t val, struct continue; for (j = 0; descs[i][j].vfd_val != 0; j++) { - if (val != descs[i][j].vfd_val) - continue; - return (descs[i][j].vfd_str); + if (val == descs[i][j].vfd_val) + return (descs[i][j].vfd_str); } } @@ -252,13 +251,12 @@ virtio_modevent(module_t mod, int type, { int error; - error = 0; - switch (type) { case MOD_LOAD: case MOD_QUIESCE: case MOD_UNLOAD: case MOD_SHUTDOWN: + error = 0; break; default: error = EOPNOTSUPP; From owner-svn-src-projects@FreeBSD.ORG Sun Feb 24 22:20:44 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 9434B499; Sun, 24 Feb 2013 22:20:44 +0000 (UTC) (envelope-from bryanv@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 64EDF8FB; Sun, 24 Feb 2013 22:20:44 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r1OMKiET009881; Sun, 24 Feb 2013 22:20:44 GMT (envelope-from bryanv@svn.freebsd.org) Received: (from bryanv@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r1OMKfMt009858; Sun, 24 Feb 2013 22:20:41 GMT (envelope-from bryanv@svn.freebsd.org) Message-Id: <201302242220.r1OMKfMt009858@svn.freebsd.org> From: Bryan Venteicher Date: Sun, 24 Feb 2013 22:20:41 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247243 - in projects/virtio: bin/sh cddl/contrib/opensolaris/cmd/dtrace contrib/binutils/opcodes contrib/llvm/lib/Target/X86 contrib/llvm/tools/clang/lib/Driver etc lib/libc/gen lib/li... X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 24 Feb 2013 22:20:44 -0000 Author: bryanv Date: Sun Feb 24 22:20:40 2013 New Revision: 247243 URL: http://svnweb.freebsd.org/changeset/base/247243 Log: IFC @ r247242 Approved by: grehan (implicit) Added: projects/virtio/sys/x86/include/elf.h - copied unchanged from r247242, head/sys/x86/include/elf.h projects/virtio/sys/x86/include/frame.h - copied unchanged from r247242, head/sys/x86/include/frame.h projects/virtio/sys/x86/include/sigframe.h - copied unchanged from r247242, head/sys/x86/include/sigframe.h projects/virtio/sys/x86/include/signal.h - copied unchanged from r247242, head/sys/x86/include/signal.h projects/virtio/sys/x86/include/ucontext.h - copied unchanged from r247242, head/sys/x86/include/ucontext.h projects/virtio/tools/regression/bin/sh/builtins/read6.0 - copied unchanged from r247242, head/tools/regression/bin/sh/builtins/read6.0 projects/virtio/tools/regression/bin/sh/builtins/wait4.0 - copied unchanged from r247242, head/tools/regression/bin/sh/builtins/wait4.0 projects/virtio/tools/regression/bin/sh/builtins/wait5.0 - copied unchanged from r247242, head/tools/regression/bin/sh/builtins/wait5.0 Deleted: projects/virtio/sys/dev/mxge/mxge_lro.c Modified: projects/virtio/bin/sh/eval.c projects/virtio/bin/sh/jobs.c projects/virtio/bin/sh/main.c projects/virtio/bin/sh/trap.c projects/virtio/bin/sh/trap.h projects/virtio/cddl/contrib/opensolaris/cmd/dtrace/dtrace.c projects/virtio/contrib/binutils/opcodes/i386-opc.h projects/virtio/contrib/llvm/lib/Target/X86/X86InstrCompiler.td projects/virtio/contrib/llvm/tools/clang/lib/Driver/Tools.cpp projects/virtio/contrib/llvm/tools/clang/lib/Driver/Tools.h projects/virtio/etc/Makefile projects/virtio/lib/libc/gen/opendir.c projects/virtio/lib/libc/stdlib/bsearch.3 projects/virtio/lib/libc/stdlib/qsort.3 projects/virtio/lib/libelf/elf_update.c projects/virtio/sbin/devd/devd.conf.5 projects/virtio/sbin/fsck_ffs/dir.c projects/virtio/sbin/fsck_ffs/ea.c projects/virtio/sbin/fsck_ffs/fsck.h projects/virtio/sbin/fsck_ffs/fsutil.c projects/virtio/sbin/fsck_ffs/inode.c projects/virtio/sbin/fsck_ffs/main.c projects/virtio/sbin/fsck_ffs/setup.c projects/virtio/sbin/fsdb/fsdbutil.c projects/virtio/share/man/man4/carp.4 projects/virtio/share/man/man9/VFS_SET.9 projects/virtio/share/mk/bsd.lib.mk projects/virtio/sys/amd64/include/elf.h projects/virtio/sys/amd64/include/frame.h projects/virtio/sys/amd64/include/sigframe.h projects/virtio/sys/amd64/include/signal.h projects/virtio/sys/amd64/include/ucontext.h projects/virtio/sys/arm/arm/machdep.c projects/virtio/sys/arm/arm/pmap-v6.c projects/virtio/sys/arm/arm/pmap.c projects/virtio/sys/arm/at91/at91_machdep.c projects/virtio/sys/arm/broadcom/bcm2835/bcm2835_vcbus.h projects/virtio/sys/arm/econa/econa_machdep.c projects/virtio/sys/arm/include/pmap.h projects/virtio/sys/arm/s3c2xx0/s3c24x0_machdep.c projects/virtio/sys/arm/sa11x0/assabet_machdep.c projects/virtio/sys/arm/xscale/i80321/ep80219_machdep.c projects/virtio/sys/arm/xscale/i80321/iq31244_machdep.c projects/virtio/sys/arm/xscale/i8134x/crb_machdep.c projects/virtio/sys/arm/xscale/ixp425/avila_machdep.c projects/virtio/sys/arm/xscale/pxa/pxa_machdep.c projects/virtio/sys/boot/fdt/dts/bcm2835-rpi-b.dts projects/virtio/sys/boot/fdt/fdt_loader_cmd.c projects/virtio/sys/boot/uboot/lib/elf_freebsd.c projects/virtio/sys/boot/userboot/userboot/elf32_freebsd.c projects/virtio/sys/cam/ata/ata_pmp.c projects/virtio/sys/cam/scsi/scsi_da.c projects/virtio/sys/cddl/contrib/opensolaris/uts/common/dtrace/fasttrap.c projects/virtio/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c projects/virtio/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu.c projects/virtio/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_objset.c projects/virtio/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_dataset.c projects/virtio/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_scan.c projects/virtio/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/lzjb.c projects/virtio/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/refcount.c projects/virtio/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sa.c projects/virtio/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c projects/virtio/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_raidz.c projects/virtio/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zap_leaf.c projects/virtio/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_byteswap.c projects/virtio/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_fuid.c projects/virtio/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_log.c projects/virtio/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_rlock.c projects/virtio/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c projects/virtio/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c projects/virtio/sys/conf/files projects/virtio/sys/crypto/aesni/aesni_wrap.c projects/virtio/sys/dev/ata/ata-all.c projects/virtio/sys/dev/ata/ata-all.h projects/virtio/sys/dev/ata/ata-dma.c projects/virtio/sys/dev/ath/ath_hal/ar5416/ar5416_attach.c projects/virtio/sys/dev/ath/ath_hal/ar5416/ar5416_interrupts.c projects/virtio/sys/dev/ath/ath_hal/ar5416/ar5416_reset.c projects/virtio/sys/dev/ath/ath_hal/ar5416/ar5416_xmit.c projects/virtio/sys/dev/ath/if_ath.c projects/virtio/sys/dev/ath/if_ath_sysctl.c projects/virtio/sys/dev/ath/if_ath_tx.c projects/virtio/sys/dev/ath/if_ath_tx.h projects/virtio/sys/dev/ath/if_ath_tx_ht.c projects/virtio/sys/dev/ath/if_athvar.h projects/virtio/sys/dev/cxgbe/common/t4_hw.h projects/virtio/sys/dev/cxgbe/t4_main.c projects/virtio/sys/dev/cxgbe/t4_sge.c projects/virtio/sys/dev/e1000/e1000_82571.c projects/virtio/sys/dev/e1000/e1000_82575.c projects/virtio/sys/dev/e1000/e1000_82575.h projects/virtio/sys/dev/e1000/e1000_api.c projects/virtio/sys/dev/e1000/e1000_api.h projects/virtio/sys/dev/e1000/e1000_defines.h projects/virtio/sys/dev/e1000/e1000_hw.h projects/virtio/sys/dev/e1000/e1000_i210.c projects/virtio/sys/dev/e1000/e1000_i210.h projects/virtio/sys/dev/e1000/e1000_ich8lan.c projects/virtio/sys/dev/e1000/e1000_ich8lan.h projects/virtio/sys/dev/e1000/e1000_mac.c projects/virtio/sys/dev/e1000/e1000_mac.h projects/virtio/sys/dev/e1000/e1000_manage.c projects/virtio/sys/dev/e1000/e1000_nvm.c projects/virtio/sys/dev/e1000/e1000_nvm.h projects/virtio/sys/dev/e1000/e1000_osdep.h projects/virtio/sys/dev/e1000/e1000_phy.c projects/virtio/sys/dev/e1000/e1000_phy.h projects/virtio/sys/dev/e1000/e1000_regs.h projects/virtio/sys/dev/e1000/if_em.c projects/virtio/sys/dev/e1000/if_igb.c projects/virtio/sys/dev/e1000/if_lem.c projects/virtio/sys/dev/fdt/fdt_common.h projects/virtio/sys/dev/firewire/sbp.c projects/virtio/sys/dev/mcd/mcd.c projects/virtio/sys/dev/mxge/if_mxge.c projects/virtio/sys/dev/mxge/if_mxge_var.h projects/virtio/sys/dev/ppc/ppc.c projects/virtio/sys/dev/ppc/ppc_isa.c projects/virtio/sys/dev/si/si.c projects/virtio/sys/fs/nfs/nfs_commonkrpc.c projects/virtio/sys/fs/nfsclient/nfs_clstate.c projects/virtio/sys/fs/nfsclient/nfs_clvfsops.c projects/virtio/sys/i386/include/elf.h projects/virtio/sys/i386/include/frame.h projects/virtio/sys/i386/include/sigframe.h projects/virtio/sys/i386/include/signal.h projects/virtio/sys/i386/include/ucontext.h projects/virtio/sys/i386/isa/pmtimer.c projects/virtio/sys/ia64/conf/GENERIC projects/virtio/sys/kern/kern_sig.c projects/virtio/sys/kern/subr_trap.c projects/virtio/sys/kern/vfs_export.c projects/virtio/sys/kern/vfs_init.c projects/virtio/sys/kern/vfs_lookup.c projects/virtio/sys/modules/mxge/mxge/Makefile projects/virtio/sys/netinet/ip_input.c projects/virtio/sys/netinet/tcp_lro.c projects/virtio/sys/nfsclient/nfs_krpc.c projects/virtio/sys/nfsclient/nfs_vfsops.c projects/virtio/sys/opencrypto/xform.c projects/virtio/sys/pci/ncr.c projects/virtio/sys/powerpc/include/vmparam.h projects/virtio/sys/sys/mount.h projects/virtio/sys/sys/signalvar.h projects/virtio/sys/sys/systm.h projects/virtio/sys/tools/vnode_if.awk projects/virtio/sys/x86/isa/atrtc.c projects/virtio/sys/x86/isa/clock.c projects/virtio/usr.bin/systat/ifcmds.c projects/virtio/usr.bin/systat/ifstat.c projects/virtio/usr.bin/systat/systat.1 projects/virtio/usr.sbin/bhyve/mem.c projects/virtio/usr.sbin/bhyve/mem.h projects/virtio/usr.sbin/bhyve/pci_emul.c projects/virtio/usr.sbin/extattr/rmextattr.c projects/virtio/usr.sbin/makefs/makefs.8 projects/virtio/usr.sbin/makefs/makefs.c projects/virtio/usr.sbin/makefs/makefs.h projects/virtio/usr.sbin/makefs/mtree.c projects/virtio/usr.sbin/makefs/walk.c projects/virtio/usr.sbin/mountd/mountd.c projects/virtio/usr.sbin/pkg/pkg.c Directory Properties: projects/virtio/ (props changed) projects/virtio/cddl/contrib/opensolaris/ (props changed) projects/virtio/contrib/binutils/ (props changed) projects/virtio/contrib/llvm/ (props changed) projects/virtio/contrib/llvm/tools/clang/ (props changed) projects/virtio/lib/libc/ (props changed) projects/virtio/sbin/ (props changed) projects/virtio/share/man/man4/ (props changed) projects/virtio/sys/ (props changed) projects/virtio/sys/boot/ (props changed) projects/virtio/sys/cddl/contrib/opensolaris/ (props changed) projects/virtio/sys/conf/ (props changed) projects/virtio/usr.sbin/bhyve/ (props changed) Modified: projects/virtio/bin/sh/eval.c ============================================================================== --- projects/virtio/bin/sh/eval.c Sun Feb 24 21:42:39 2013 (r247242) +++ projects/virtio/bin/sh/eval.c Sun Feb 24 22:20:40 2013 (r247243) @@ -301,7 +301,7 @@ evaltree(union node *n, int flags) } while (n != NULL); out: popstackmark(&smark); - if (pendingsigs) + if (pendingsig) dotrap(); if (eflag && exitstatus != 0 && do_etest) exitshell(exitstatus); Modified: projects/virtio/bin/sh/jobs.c ============================================================================== --- projects/virtio/bin/sh/jobs.c Sun Feb 24 21:42:39 2013 (r247242) +++ projects/virtio/bin/sh/jobs.c Sun Feb 24 22:20:40 2013 (r247243) @@ -521,7 +521,7 @@ waitcmd(int argc, char **argv) } while (dowait(DOWAIT_BLOCK | DOWAIT_SIG, (struct job *)NULL) != -1); in_waitcmd--; - return 0; + return pendingsig + 128; } Modified: projects/virtio/bin/sh/main.c ============================================================================== --- projects/virtio/bin/sh/main.c Sun Feb 24 21:42:39 2013 (r247242) +++ projects/virtio/bin/sh/main.c Sun Feb 24 22:20:40 2013 (r247243) @@ -196,7 +196,7 @@ cmdloop(int top) TRACE(("cmdloop(%d) called\n", top)); setstackmark(&smark); for (;;) { - if (pendingsigs) + if (pendingsig) dotrap(); inter = 0; if (iflag && top) { Modified: projects/virtio/bin/sh/trap.c ============================================================================== --- projects/virtio/bin/sh/trap.c Sun Feb 24 21:42:39 2013 (r247242) +++ projects/virtio/bin/sh/trap.c Sun Feb 24 22:20:40 2013 (r247243) @@ -73,7 +73,7 @@ __FBSDID("$FreeBSD$"); MKINIT char sigmode[NSIG]; /* current value of signal */ -int pendingsigs; /* indicates some signal received */ +volatile sig_atomic_t pendingsig; /* indicates some signal received */ int in_dotrap; /* do we execute in a trap handler? */ static char *volatile trap[NSIG]; /* trap handler commands */ static volatile sig_atomic_t gotsig[NSIG]; @@ -388,22 +388,25 @@ onsig(int signo) return; } - if (signo != SIGCHLD || !ignore_sigchld) - gotsig[signo] = 1; - pendingsigs++; - /* If we are currently in a wait builtin, prepare to break it */ - if ((signo == SIGINT || signo == SIGQUIT) && in_waitcmd != 0) - breakwaitcmd = 1; - /* - * If a trap is set, not ignored and not the null command, we need - * to make sure traps are executed even when a child blocks signals. - */ - if (Tflag && - trap[signo] != NULL && - ! (trap[signo][0] == '\0') && - ! (trap[signo][0] == ':' && trap[signo][1] == '\0')) + if ((signo == SIGINT || signo == SIGQUIT) && in_waitcmd != 0) { breakwaitcmd = 1; + pendingsig = signo; + } + + if (trap[signo] != NULL && trap[signo][0] != '\0' && + (signo != SIGCHLD || !ignore_sigchld)) { + gotsig[signo] = 1; + pendingsig = signo; + + /* + * If a trap is set, not ignored and not the null command, we + * need to make sure traps are executed even when a child + * blocks signals. + */ + if (Tflag && !(trap[signo][0] == ':' && trap[signo][1] == '\0')) + breakwaitcmd = 1; + } #ifndef NO_HISTORY if (signo == SIGWINCH) @@ -424,7 +427,7 @@ dotrap(void) in_dotrap++; for (;;) { - pendingsigs = 0; + pendingsig = 0; for (i = 1; i < NSIG; i++) { if (gotsig[i]) { gotsig[i] = 0; Modified: projects/virtio/bin/sh/trap.h ============================================================================== --- projects/virtio/bin/sh/trap.h Sun Feb 24 21:42:39 2013 (r247242) +++ projects/virtio/bin/sh/trap.h Sun Feb 24 22:20:40 2013 (r247243) @@ -33,7 +33,7 @@ * $FreeBSD$ */ -extern int pendingsigs; +extern volatile sig_atomic_t pendingsig; extern int in_dotrap; extern volatile sig_atomic_t gotwinch; Modified: projects/virtio/cddl/contrib/opensolaris/cmd/dtrace/dtrace.c ============================================================================== --- projects/virtio/cddl/contrib/opensolaris/cmd/dtrace/dtrace.c Sun Feb 24 21:42:39 2013 (r247242) +++ projects/virtio/cddl/contrib/opensolaris/cmd/dtrace/dtrace.c Sun Feb 24 22:20:40 2013 (r247243) @@ -195,6 +195,13 @@ fatal(const char *fmt, ...) verror(fmt, ap); va_end(ap); + /* + * Close the DTrace handle to ensure that any controlled processes are + * correctly restored and continued. + */ + if (g_dtp) + dtrace_close(g_dtp); + exit(E_ERROR); } Modified: projects/virtio/contrib/binutils/opcodes/i386-opc.h ============================================================================== --- projects/virtio/contrib/binutils/opcodes/i386-opc.h Sun Feb 24 21:42:39 2013 (r247242) +++ projects/virtio/contrib/binutils/opcodes/i386-opc.h Sun Feb 24 22:20:40 2013 (r247243) @@ -73,15 +73,16 @@ typedef struct template #define CpuSSE4_2 0x800000 /* SSE4.2 Instructions required */ #define CpuXSAVE 0x1000000 /* XSAVE Instructions required */ #define CpuAES 0x2000000 /* AES Instructions required */ -#define CpuPCLMUL 0x4000000 /* Carry-less Multiplication extensions */ - -/* SSE4.1/4.2 Instructions required */ -#define CpuSSE4 (CpuSSE4_1|CpuSSE4_2) /* These flags are set by gas depending on the flag_code. */ #define Cpu64 0x4000000 /* 64bit support required */ #define CpuNo64 0x8000000 /* Not supported in the 64bit mode */ +#define CpuPCLMUL 0x10000000 /* Carry-less Multiplication extensions */ + +/* SSE4.1/4.2 Instructions required */ +#define CpuSSE4 (CpuSSE4_1|CpuSSE4_2) + /* The default value for unknown CPUs - enable all features to avoid problems. */ #define CpuUnknownFlags (Cpu186|Cpu286|Cpu386|Cpu486|Cpu586|Cpu686 \ |CpuP4|CpuSledgehammer|CpuMMX|CpuMMX2|CpuSSE|CpuSSE2|CpuSSE3|CpuVMX \ Modified: projects/virtio/contrib/llvm/lib/Target/X86/X86InstrCompiler.td ============================================================================== --- projects/virtio/contrib/llvm/lib/Target/X86/X86InstrCompiler.td Sun Feb 24 21:42:39 2013 (r247242) +++ projects/virtio/contrib/llvm/lib/Target/X86/X86InstrCompiler.td Sun Feb 24 22:20:40 2013 (r247243) @@ -1076,12 +1076,14 @@ def : Pat<(X86cmp GR64:$src1, 0), // inverted. multiclass CMOVmr { - def : Pat<(X86cmov (loadi16 addr:$src1), GR16:$src2, InvertedCond, EFLAGS), - (Inst16 GR16:$src2, addr:$src1)>; - def : Pat<(X86cmov (loadi32 addr:$src1), GR32:$src2, InvertedCond, EFLAGS), - (Inst32 GR32:$src2, addr:$src1)>; - def : Pat<(X86cmov (loadi64 addr:$src1), GR64:$src2, InvertedCond, EFLAGS), - (Inst64 GR64:$src2, addr:$src1)>; + let Predicates = [HasCMov] in { + def : Pat<(X86cmov (loadi16 addr:$src1), GR16:$src2, InvertedCond, EFLAGS), + (Inst16 GR16:$src2, addr:$src1)>; + def : Pat<(X86cmov (loadi32 addr:$src1), GR32:$src2, InvertedCond, EFLAGS), + (Inst32 GR32:$src2, addr:$src1)>; + def : Pat<(X86cmov (loadi64 addr:$src1), GR64:$src2, InvertedCond, EFLAGS), + (Inst64 GR64:$src2, addr:$src1)>; + } } defm : CMOVmr; Modified: projects/virtio/contrib/llvm/tools/clang/lib/Driver/Tools.cpp ============================================================================== --- projects/virtio/contrib/llvm/tools/clang/lib/Driver/Tools.cpp Sun Feb 24 21:42:39 2013 (r247242) +++ projects/virtio/contrib/llvm/tools/clang/lib/Driver/Tools.cpp Sun Feb 24 22:20:40 2013 (r247243) @@ -1114,10 +1114,59 @@ void Clang::AddSparcTargetArgs(const Arg } } +static const char *getX86TargetCPU(const ArgList &Args, + const llvm::Triple &Triple) { + if (const Arg *A = Args.getLastArg(options::OPT_march_EQ)) { + if (StringRef(A->getValue()) != "native") + return A->getValue(); + + // FIXME: Reject attempts to use -march=native unless the target matches + // the host. + // + // FIXME: We should also incorporate the detected target features for use + // with -native. + std::string CPU = llvm::sys::getHostCPUName(); + if (!CPU.empty() && CPU != "generic") + return Args.MakeArgString(CPU); + } + + // Select the default CPU if none was given (or detection failed). + + if (Triple.getArch() != llvm::Triple::x86_64 && + Triple.getArch() != llvm::Triple::x86) + return 0; // This routine is only handling x86 targets. + + bool Is64Bit = Triple.getArch() == llvm::Triple::x86_64; + + // FIXME: Need target hooks. + if (Triple.isOSDarwin()) + return Is64Bit ? "core2" : "yonah"; + + // Everything else goes to x86-64 in 64-bit mode. + if (Is64Bit) + return "x86-64"; + + if (Triple.getOSName().startswith("haiku")) + return "i586"; + if (Triple.getOSName().startswith("openbsd")) + return "i486"; + if (Triple.getOSName().startswith("bitrig")) + return "i686"; + if (Triple.getOSName().startswith("freebsd")) + return "i486"; + if (Triple.getOSName().startswith("netbsd")) + return "i486"; + // All x86 devices running Android have core2 as their common + // denominator. This makes a better choice than pentium4. + if (Triple.getEnvironment() == llvm::Triple::Android) + return "core2"; + + // Fallback to p4. + return "pentium4"; +} + void Clang::AddX86TargetArgs(const ArgList &Args, ArgStringList &CmdArgs) const { - const bool isAndroid = - getToolChain().getTriple().getEnvironment() == llvm::Triple::Android; if (!Args.hasFlag(options::OPT_mred_zone, options::OPT_mno_red_zone, true) || @@ -1130,65 +1179,7 @@ void Clang::AddX86TargetArgs(const ArgLi false)) CmdArgs.push_back("-no-implicit-float"); - const char *CPUName = 0; - if (const Arg *A = Args.getLastArg(options::OPT_march_EQ)) { - if (StringRef(A->getValue()) == "native") { - // FIXME: Reject attempts to use -march=native unless the target matches - // the host. - // - // FIXME: We should also incorporate the detected target features for use - // with -native. - std::string CPU = llvm::sys::getHostCPUName(); - if (!CPU.empty() && CPU != "generic") - CPUName = Args.MakeArgString(CPU); - } else - CPUName = A->getValue(); - } - - // Select the default CPU if none was given (or detection failed). - if (!CPUName) { - // FIXME: Need target hooks. - if (getToolChain().getTriple().isOSDarwin()) { - if (getToolChain().getArch() == llvm::Triple::x86_64) - CPUName = "core2"; - else if (getToolChain().getArch() == llvm::Triple::x86) - CPUName = "yonah"; - } else if (getToolChain().getOS().startswith("haiku")) { - if (getToolChain().getArch() == llvm::Triple::x86_64) - CPUName = "x86-64"; - else if (getToolChain().getArch() == llvm::Triple::x86) - CPUName = "i586"; - } else if (getToolChain().getOS().startswith("openbsd")) { - if (getToolChain().getArch() == llvm::Triple::x86_64) - CPUName = "x86-64"; - else if (getToolChain().getArch() == llvm::Triple::x86) - CPUName = "i486"; - } else if (getToolChain().getOS().startswith("bitrig")) { - if (getToolChain().getArch() == llvm::Triple::x86_64) - CPUName = "x86-64"; - else if (getToolChain().getArch() == llvm::Triple::x86) - CPUName = "i686"; - } else if (getToolChain().getOS().startswith("freebsd")) { - if (getToolChain().getArch() == llvm::Triple::x86_64) - CPUName = "x86-64"; - else if (getToolChain().getArch() == llvm::Triple::x86) - CPUName = "i486"; - } else if (getToolChain().getOS().startswith("netbsd")) { - if (getToolChain().getArch() == llvm::Triple::x86_64) - CPUName = "x86-64"; - else if (getToolChain().getArch() == llvm::Triple::x86) - CPUName = "i486"; - } else { - if (getToolChain().getArch() == llvm::Triple::x86_64) - CPUName = "x86-64"; - else if (getToolChain().getArch() == llvm::Triple::x86) - // All x86 devices running Android have core2 as their common - // denominator. This makes a better choice than pentium4. - CPUName = isAndroid ? "core2" : "pentium4"; - } - } - - if (CPUName) { + if (const char *CPUName = getX86TargetCPU(Args, getToolChain().getTriple())) { CmdArgs.push_back("-target-cpu"); CmdArgs.push_back(CPUName); } @@ -3091,6 +3082,15 @@ void ClangAs::AddARMTargetArgs(const Arg addFPMathArgs(D, A, Args, CmdArgs, getARMTargetCPU(Args, Triple)); } +void ClangAs::AddX86TargetArgs(const ArgList &Args, + ArgStringList &CmdArgs) const { + // Set the CPU based on -march=. + if (const char *CPUName = getX86TargetCPU(Args, getToolChain().getTriple())) { + CmdArgs.push_back("-target-cpu"); + CmdArgs.push_back(CPUName); + } +} + /// Add options related to the Objective-C runtime/ABI. /// /// Returns true if the runtime is non-fragile. @@ -3261,6 +3261,11 @@ void ClangAs::ConstructJob(Compilation & case llvm::Triple::thumb: AddARMTargetArgs(Args, CmdArgs); break; + + case llvm::Triple::x86: + case llvm::Triple::x86_64: + AddX86TargetArgs(Args, CmdArgs); + break; } // Ignore explicit -force_cpusubtype_ALL option. @@ -6068,8 +6073,27 @@ void linuxtools::Link::ConstructJob(Comp CmdArgs.push_back("-plugin"); std::string Plugin = ToolChain.getDriver().Dir + "/../lib/LLVMgold.so"; CmdArgs.push_back(Args.MakeArgString(Plugin)); + + // Try to pass driver level flags relevant to LTO code generation down to + // the plugin. + + // Handle architecture-specific flags for selecting CPU variants. + if (ToolChain.getArch() == llvm::Triple::x86 || + ToolChain.getArch() == llvm::Triple::x86_64) + CmdArgs.push_back( + Args.MakeArgString(Twine("-plugin-opt=mcpu=") + + getX86TargetCPU(Args, ToolChain.getTriple()))); + else if (ToolChain.getArch() == llvm::Triple::arm || + ToolChain.getArch() == llvm::Triple::thumb) + CmdArgs.push_back( + Args.MakeArgString(Twine("-plugin-opt=mcpu=") + + getARMTargetCPU(Args, ToolChain.getTriple()))); + + // FIXME: Factor out logic for MIPS, PPC, and other targets to support this + // as well. } + if (Args.hasArg(options::OPT_Z_Xlinker__no_demangle)) CmdArgs.push_back("--no-demangle"); Modified: projects/virtio/contrib/llvm/tools/clang/lib/Driver/Tools.h ============================================================================== --- projects/virtio/contrib/llvm/tools/clang/lib/Driver/Tools.h Sun Feb 24 21:42:39 2013 (r247242) +++ projects/virtio/contrib/llvm/tools/clang/lib/Driver/Tools.h Sun Feb 24 22:20:40 2013 (r247243) @@ -68,6 +68,7 @@ namespace tools { /// \brief Clang integrated assembler tool. class LLVM_LIBRARY_VISIBILITY ClangAs : public Tool { void AddARMTargetArgs(const ArgList &Args, ArgStringList &CmdArgs) const; + void AddX86TargetArgs(const ArgList &Args, ArgStringList &CmdArgs) const; public: ClangAs(const ToolChain &TC) : Tool("clang::as", "clang integrated assembler", TC) {} Modified: projects/virtio/etc/Makefile ============================================================================== --- projects/virtio/etc/Makefile Sun Feb 24 21:42:39 2013 (r247242) +++ projects/virtio/etc/Makefile Sun Feb 24 22:20:40 2013 (r247243) @@ -354,7 +354,7 @@ distrib-dirs: ${METALOG.add} ; \ done; true .endif - ${INSTALL_SYMLINK} usr/src/sys ${DESTDIR}/ + ${INSTALL_SYMLINK} usr/src/sys ${DESTDIR}/sys cd ${DESTDIR}/usr/share/man; \ for mandir in man*; do \ ${INSTALL_SYMLINK} ../$$mandir \ Modified: projects/virtio/lib/libc/gen/opendir.c ============================================================================== --- projects/virtio/lib/libc/gen/opendir.c Sun Feb 24 21:42:39 2013 (r247242) +++ projects/virtio/lib/libc/gen/opendir.c Sun Feb 24 22:20:40 2013 (r247243) @@ -49,7 +49,7 @@ __FBSDID("$FreeBSD$"); #include "gen-private.h" #include "telldir.h" -static DIR * __opendir_common(int, const char *, int); +static DIR * __opendir_common(int, int); /* * Open a directory. @@ -78,7 +78,7 @@ fdopendir(int fd) } if (_fcntl(fd, F_SETFD, FD_CLOEXEC) == -1) return (NULL); - return (__opendir_common(fd, NULL, DTF_HIDEW|DTF_NODUP)); + return (__opendir_common(fd, DTF_HIDEW|DTF_NODUP)); } DIR * @@ -92,7 +92,7 @@ __opendir2(const char *name, int flags) O_RDONLY | O_NONBLOCK | O_DIRECTORY | O_CLOEXEC)) == -1) return (NULL); - dir = __opendir_common(fd, name, flags); + dir = __opendir_common(fd, flags); if (dir == NULL) { saved_errno = errno; _close(fd); @@ -113,7 +113,7 @@ opendir_compar(const void *p1, const voi * Common routine for opendir(3), __opendir2(3) and fdopendir(3). */ static DIR * -__opendir_common(int fd, const char *name, int flags) +__opendir_common(int fd, int flags) { DIR *dirp; int incr; @@ -121,6 +121,8 @@ __opendir_common(int fd, const char *nam int unionstack; int fd2; + fd2 = -1; + if ((dirp = malloc(sizeof(DIR) + sizeof(struct _telldir))) == NULL) return (NULL); @@ -165,7 +167,22 @@ __opendir_common(int fd, const char *nam * entries into a buffer, sort the buffer, and * remove duplicate entries by setting the inode * number to zero. + * + * We reopen the directory because _getdirentries() + * on a MNT_UNION mount modifies the open directory, + * making it refer to the lower directory after the + * upper directory's entries are exhausted. + * This would otherwise break software that uses + * the directory descriptor for fchdir or *at + * functions, such as fts.c. */ + if ((fd2 = _openat(fd, ".", O_RDONLY | O_CLOEXEC)) == -1) { + saved_errno = errno; + free(buf); + free(dirp); + errno = saved_errno; + return (NULL); + } do { /* @@ -181,7 +198,7 @@ __opendir_common(int fd, const char *nam ddptr = buf + (len - space); } - n = _getdirentries(fd, ddptr, space, &dirp->dd_seek); + n = _getdirentries(fd2, ddptr, space, &dirp->dd_seek); if (n > 0) { ddptr += n; space -= n; @@ -191,25 +208,8 @@ __opendir_common(int fd, const char *nam ddeptr = ddptr; flags |= __DTF_READALL; - /* - * Re-open the directory. - * This has the effect of rewinding back to the - * top of the union stack and is needed by - * programs which plan to fchdir to a descriptor - * which has also been read -- see fts.c. - */ - if (flags & DTF_REWIND) { - if ((fd2 = _open(name, O_RDONLY | O_DIRECTORY | - O_CLOEXEC)) == -1) { - saved_errno = errno; - free(buf); - free(dirp); - errno = saved_errno; - return (NULL); - } - (void)_dup2(fd2, fd); - _close(fd2); - } + _close(fd2); + fd2 = -1; /* * There is now a buffer full of (possibly) duplicate @@ -293,7 +293,6 @@ __opendir_common(int fd, const char *nam if (dirp->dd_buf == NULL) goto fail; dirp->dd_seek = 0; - flags &= ~DTF_REWIND; } dirp->dd_loc = 0; @@ -310,6 +309,8 @@ __opendir_common(int fd, const char *nam fail: saved_errno = errno; + if (fd2 != -1) + _close(fd2); free(dirp); errno = saved_errno; return (NULL); Modified: projects/virtio/lib/libc/stdlib/bsearch.3 ============================================================================== --- projects/virtio/lib/libc/stdlib/bsearch.3 Sun Feb 24 21:42:39 2013 (r247242) +++ projects/virtio/lib/libc/stdlib/bsearch.3 Sun Feb 24 22:20:40 2013 (r247243) @@ -32,7 +32,7 @@ .\" @(#)bsearch.3 8.3 (Berkeley) 4/19/94 .\" $FreeBSD$ .\" -.Dd April 19, 1994 +.Dd February 22, 2013 .Dt BSEARCH 3 .Os .Sh NAME @@ -71,6 +71,12 @@ less than, equal to, or greater than zer .Fa key object is found, respectively, to be less than, to match, or be greater than the array member. +See the +.Fa int_compare +sample function in +.Xr qsort 3 +for a comparison function that is also compatible with +.Fn bsearch . .Sh RETURN VALUES The .Fn bsearch Modified: projects/virtio/lib/libc/stdlib/qsort.3 ============================================================================== --- projects/virtio/lib/libc/stdlib/qsort.3 Sun Feb 24 21:42:39 2013 (r247242) +++ projects/virtio/lib/libc/stdlib/qsort.3 Sun Feb 24 22:20:40 2013 (r247243) @@ -205,12 +205,6 @@ functions return no value. .Pp .Rv -std heapsort mergesort -.Sh COMPATIBILITY -Previous versions of -.Fn qsort -did not permit the comparison routine itself to call -.Fn qsort 3 . -This is no longer true. .Sh EXAMPLES A sample program that sorts an array of .Vt int @@ -220,7 +214,6 @@ and then prints the sorted array to stan .Bd -literal #include #include -#include /* * Custom comparison function that can compare 'int' values through pointers @@ -229,15 +222,10 @@ and then prints the sorted array to stan static int int_compare(const void *p1, const void *p2) { - int *left = (int *)p1; - int *right = (int *)p2; + int left = *(const int *)p1; + int right = *(const int *)p2; - if (*left < *right) - return (-1); - else if (*left > *right) - return (1); - else - return (0); + return ((left > right) - (left < right)); } /* @@ -247,16 +235,22 @@ int main(void) { int int_array[] = { 4, 5, 9, 3, 0, 1, 7, 2, 8, 6 }; - const int array_size = sizeof(int_array) / sizeof(int_array[0]); - int k; + const size_t array_size = sizeof(int_array) / sizeof(int_array[0]); + size_t k; - qsort(&int_array, array_size, sizeof(int), int_compare); + qsort(&int_array, array_size, sizeof(int_array[0]), int_compare); for (k = 0; k < array_size; k++) printf(" %d", int_array[k]); - printf("\\n"); - exit(EXIT_SUCCESS); + puts(""); + return (EXIT_SUCCESS); } .Ed +.Sh COMPATIBILITY +Previous versions of +.Fn qsort +did not permit the comparison routine itself to call +.Fn qsort 3 . +This is no longer true. .Sh ERRORS The .Fn heapsort Modified: projects/virtio/lib/libelf/elf_update.c ============================================================================== --- projects/virtio/lib/libelf/elf_update.c Sun Feb 24 21:42:39 2013 (r247242) +++ projects/virtio/lib/libelf/elf_update.c Sun Feb 24 22:20:40 2013 (r247243) @@ -41,89 +41,79 @@ __FBSDID("$FreeBSD$"); #include "_libelf.h" /* - * Update the internal data structures associated with an ELF object. - * Returns the size in bytes the ELF object would occupy in its file - * representation. + * Layout strategy: * - * After a successful call to this function, the following structures - * are updated: + * - Case 1: ELF_F_LAYOUT is asserted + * In this case the application has full control over where the + * section header table, program header table, and section data + * will reside. The library only perform error checks. * - * - The ELF header is updated. - * - All sections are sorted in order of ascending addresses and their - * section header table entries updated. An error is signalled - * if an overlap was detected among sections. - * - All data descriptors associated with a section are sorted in order - * of ascending addresses. Overlaps, if detected, are signalled as - * errors. Other sanity checks for alignments, section types etc. are - * made. + * - Case 2: ELF_F_LAYOUT is not asserted * - * After a resync_elf() successfully returns, the ELF descriptor is - * ready for being handed over to _libelf_write_elf(). + * The library will do the object layout using the following + * ordering: + * - The executable header is placed first, are required by the + * ELF specification. + * - The program header table is placed immediately following the + * executable header. + * - Section data, if any, is placed after the program header + * table, aligned appropriately. + * - The section header table, if needed, is placed last. * - * File alignments: - * PHDR - Addr - * SHDR - Addr + * There are two sub-cases to be taken care of: * - * XXX: how do we handle 'flags'. + * - Case 2a: e->e_cmd == ELF_C_READ or ELF_C_RDWR + * + * In this sub-case, the underlying ELF object may already have + * content in it, which the application may have modified. The + * library will retrieve content from the existing object as + * needed. + * + * - Case 2b: e->e_cmd == ELF_C_WRITE + * + * The ELF object is being created afresh in this sub-case; + * there is no pre-existing content in the underlying ELF + * object. */ /* * Compute the extents of a section, by looking at the data - * descriptors associated with it. The function returns zero if an - * error was detected. `*rc' holds the maximum file extent seen so - * far. + * descriptors associated with it. The function returns 1 if + * successful, or zero if an error was detected. */ static int -_libelf_compute_section_extents(Elf *e, Elf_Scn *s, off_t *rc) +_libelf_compute_section_extents(Elf *e, Elf_Scn *s, off_t rc) { int ec; - Elf_Data *d, *td; + size_t fsz, msz; + Elf_Data *d; + Elf32_Shdr *shdr32; + Elf64_Shdr *shdr64; unsigned int elftype; uint32_t sh_type; uint64_t d_align; uint64_t sh_align, sh_entsize, sh_offset, sh_size; uint64_t scn_size, scn_alignment; - /* - * We need to recompute library private data structures if one - * or more of the following is true: - * - The underlying Shdr structure has been marked `dirty'. Significant - * fields include: `sh_offset', `sh_type', `sh_size', `sh_addralign'. - * - The Elf_Data structures part of this section have been marked - * `dirty'. Affected members include `d_align', `d_offset', `d_type', - * and `d_size'. - * - The section as a whole is `dirty', e.g., it has been allocated - * using elf_newscn(), or if a new Elf_Data structure was added using - * elf_newdata(). - * - * Each of these conditions would result in the ELF_F_DIRTY bit being - * set on the section descriptor's `s_flags' field. - */ - ec = e->e_class; + shdr32 = &s->s_shdr.s_shdr32; + shdr64 = &s->s_shdr.s_shdr64; if (ec == ELFCLASS32) { - sh_type = s->s_shdr.s_shdr32.sh_type; - sh_align = (uint64_t) s->s_shdr.s_shdr32.sh_addralign; - sh_entsize = (uint64_t) s->s_shdr.s_shdr32.sh_entsize; - sh_offset = (uint64_t) s->s_shdr.s_shdr32.sh_offset; - sh_size = (uint64_t) s->s_shdr.s_shdr32.sh_size; + sh_type = shdr32->sh_type; + sh_align = (uint64_t) shdr32->sh_addralign; + sh_entsize = (uint64_t) shdr32->sh_entsize; + sh_offset = (uint64_t) shdr32->sh_offset; + sh_size = (uint64_t) shdr32->sh_size; } else { - sh_type = s->s_shdr.s_shdr64.sh_type; - sh_align = s->s_shdr.s_shdr64.sh_addralign; - sh_entsize = s->s_shdr.s_shdr64.sh_entsize; - sh_offset = s->s_shdr.s_shdr64.sh_offset; - sh_size = s->s_shdr.s_shdr64.sh_size; + sh_type = shdr64->sh_type; + sh_align = shdr64->sh_addralign; + sh_entsize = shdr64->sh_entsize; + sh_offset = shdr64->sh_offset; + sh_size = shdr64->sh_size; } - if (sh_type == SHT_NULL || sh_type == SHT_NOBITS) - return (1); - - if ((s->s_flags & ELF_F_DIRTY) == 0) { - if ((size_t) *rc < sh_offset + sh_size) - *rc = sh_offset + sh_size; - return (1); - } + assert(sh_type != SHT_NULL && sh_type != SHT_NOBITS); elftype = _libelf_xlate_shtype(sh_type); if (elftype > ELF_T_LAST) { @@ -131,15 +121,52 @@ _libelf_compute_section_extents(Elf *e, return (0); } - /* - * Compute the extent of the data descriptors associated with - * this section. - */ - scn_alignment = 0; if (sh_align == 0) sh_align = _libelf_falign(elftype, ec); - /* Compute the section alignment. */ + /* + * Check the section's data buffers for sanity and compute the + * section's alignment. + * Compute the section's size and alignment using the data + * descriptors associated with the section. + */ + if (STAILQ_EMPTY(&s->s_data)) { + /* + * The section's content (if any) has not been read in + * yet. If section is not dirty marked dirty, we can + * reuse the values in the 'sh_size' and 'sh_offset' + * fields of the section header. + */ + if ((s->s_flags & ELF_F_DIRTY) == 0) { + /* + * If the library is doing the layout, then we + * compute the new start offset for the + * section based on the current offset and the + * section's alignment needs. + * + * If the application is doing the layout, we + * can use the value in the 'sh_offset' field + * in the section header directly. + */ + if (e->e_flags & ELF_F_LAYOUT) + goto updatedescriptor; + else + goto computeoffset; + } + + /* + * Otherwise, we need to bring in the section's data + * from the underlying ELF object. + */ + if (e->e_cmd != ELF_C_WRITE && elf_getdata(s, NULL) == NULL) + return (0); + } + + /* + * Loop through the section's data descriptors. + */ + scn_size = 0L; + scn_alignment = 0L; STAILQ_FOREACH(d, &s->s_data, d_next) { if (d->d_type > ELF_T_LAST) { LIBELF_SET_ERROR(DATA, 0); @@ -153,23 +180,40 @@ _libelf_compute_section_extents(Elf *e, LIBELF_SET_ERROR(DATA, 0); return (0); } - if (d_align > scn_alignment) - scn_alignment = d_align; - } - scn_size = 0L; + /* + * The buffer's size should be a multiple of the + * memory size of the underlying type. + */ + msz = _libelf_msize(d->d_type, ec, e->e_version); + if (d->d_size % msz) { + LIBELF_SET_ERROR(DATA, 0); + return (0); + } - STAILQ_FOREACH_SAFE(d, &s->s_data, d_next, td) { + /* + * Compute the section's size. + */ if (e->e_flags & ELF_F_LAYOUT) { if ((uint64_t) d->d_off + d->d_size > scn_size) scn_size = d->d_off + d->d_size; } else { scn_size = roundup2(scn_size, d->d_align); d->d_off = scn_size; - scn_size += d->d_size; + fsz = _libelf_fsize(d->d_type, ec, d->d_version, + d->d_size / msz); + scn_size += fsz; } + + /* + * The section's alignment is the maximum alignment + * needed for its data buffers. + */ + if (d_align > scn_alignment) + scn_alignment = d_align; } + /* * If the application is requesting full control over the layout * of the section, check its values for sanity. @@ -180,46 +224,60 @@ _libelf_compute_section_extents(Elf *e, LIBELF_SET_ERROR(LAYOUT, 0); return (0); } - } else { - /* - * Otherwise compute the values in the section header. - */ + goto updatedescriptor; + } - if (scn_alignment > sh_align) - sh_align = scn_alignment; + /* + * Otherwise compute the values in the section header. + * + * The section alignment is the maximum alignment for any of + * its contained data descriptors. + */ + if (scn_alignment > sh_align) + sh_align = scn_alignment; - /* - * If the section entry size is zero, try and fill in an - * appropriate entry size. Per the elf(5) manual page - * sections without fixed-size entries should have their - * 'sh_entsize' field set to zero. - */ - if (sh_entsize == 0 && - (sh_entsize = _libelf_fsize(elftype, ec, e->e_version, - (size_t) 1)) == 1) - sh_entsize = 0; + /* + * If the section entry size is zero, try and fill in an + * appropriate entry size. Per the elf(5) manual page + * sections without fixed-size entries should have their + * 'sh_entsize' field set to zero. + */ + if (sh_entsize == 0 && + (sh_entsize = _libelf_fsize(elftype, ec, e->e_version, + (size_t) 1)) == 1) + sh_entsize = 0; - sh_size = scn_size; - sh_offset = roundup(*rc, sh_align); + sh_size = scn_size; - if (ec == ELFCLASS32) { - s->s_shdr.s_shdr32.sh_addralign = (uint32_t) sh_align; - s->s_shdr.s_shdr32.sh_entsize = (uint32_t) sh_entsize; - s->s_shdr.s_shdr32.sh_offset = (uint32_t) sh_offset; - s->s_shdr.s_shdr32.sh_size = (uint32_t) sh_size; - } else { - s->s_shdr.s_shdr64.sh_addralign = sh_align; - s->s_shdr.s_shdr64.sh_entsize = sh_entsize; - s->s_shdr.s_shdr64.sh_offset = sh_offset; - s->s_shdr.s_shdr64.sh_size = sh_size; - } - } +computeoffset: + /* + * Compute the new offset for the section based on + * the section's alignment needs. + */ + sh_offset = roundup(rc, sh_align); - if ((size_t) *rc < sh_offset + sh_size) - *rc = sh_offset + sh_size; + /* + * Update the section header. + */ + if (ec == ELFCLASS32) { + shdr32->sh_addralign = (uint32_t) sh_align; + shdr32->sh_entsize = (uint32_t) sh_entsize; + shdr32->sh_offset = (uint32_t) sh_offset; + shdr32->sh_size = (uint32_t) sh_size; + } else { + shdr64->sh_addralign = sh_align; + shdr64->sh_entsize = sh_entsize; + shdr64->sh_offset = sh_offset; + shdr64->sh_size = sh_size; + } +updatedescriptor: + /* + * Update the section descriptor. + */ s->s_size = sh_size; s->s_offset = sh_offset; + return (1); } @@ -267,13 +325,16 @@ _libelf_insert_section(Elf *e, Elf_Scn * return (1); } +/* + * Recompute section layout. + */ + static off_t _libelf_resync_sections(Elf *e, off_t rc) { int ec; - off_t nrc; + Elf_Scn *s; size_t sh_type, shdr_start, shdr_end; - Elf_Scn *s, *ts; ec = e->e_class; @@ -281,13 +342,7 @@ _libelf_resync_sections(Elf *e, off_t rc * Make a pass through sections, computing the extent of each * section. Order in increasing order of addresses. */ - - nrc = rc; - STAILQ_FOREACH(s, &e->e_u.e_elf.e_scn, s_next) - if (_libelf_compute_section_extents(e, s, &nrc) == 0) - return ((off_t) -1); - - STAILQ_FOREACH_SAFE(s, &e->e_u.e_elf.e_scn, s_next, ts) { + STAILQ_FOREACH(s, &e->e_u.e_elf.e_scn, s_next) { if (ec == ELFCLASS32) sh_type = s->s_shdr.s_shdr32.sh_type; else @@ -296,21 +351,22 @@ _libelf_resync_sections(Elf *e, off_t rc if (sh_type == SHT_NOBITS || sh_type == SHT_NULL) continue; - if (s->s_offset < (uint64_t) rc) { - if (s->s_offset + s->s_size < (uint64_t) rc) { - /* - * Try insert this section in the - * correct place in the list, - * detecting overlaps if any. - */ - STAILQ_REMOVE(&e->e_u.e_elf.e_scn, s, _Elf_Scn, - s_next); - if (_libelf_insert_section(e, s) == 0) - return ((off_t) -1); - } else { - LIBELF_SET_ERROR(LAYOUT, 0); + if (_libelf_compute_section_extents(e, s, rc) == 0) + return ((off_t) -1); + + if (s->s_size == 0) + continue; + + if (s->s_offset + s->s_size < (size_t) rc) { + /* + * Try insert this section in the + * correct place in the list, + * detecting overlaps if any. + */ + STAILQ_REMOVE(&e->e_u.e_elf.e_scn, s, _Elf_Scn, + s_next); + if (_libelf_insert_section(e, s) == 0) return ((off_t) -1); - } } else *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-projects@FreeBSD.ORG Sun Feb 24 23:12:37 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 7D67D475; Sun, 24 Feb 2013 23:12:37 +0000 (UTC) (envelope-from benno@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 6CD74CEE; Sun, 24 Feb 2013 23:12:37 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r1ONCbJX025202; Sun, 24 Feb 2013 23:12:37 GMT (envelope-from benno@svn.freebsd.org) Received: (from benno@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r1ONCYcs025185; Sun, 24 Feb 2013 23:12:34 GMT (envelope-from benno@svn.freebsd.org) Message-Id: <201302242312.r1ONCYcs025185@svn.freebsd.org> From: Benno Rice Date: Sun, 24 Feb 2013 23:12:34 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247245 - in projects/uefi: . bin/ps bin/setfacl bin/sh cddl/contrib/opensolaris/cmd/dtrace cddl/contrib/opensolaris/cmd/zdb cddl/contrib/opensolaris/cmd/zfs cddl/contrib/opensolaris/cm... X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 24 Feb 2013 23:12:37 -0000 Author: benno Date: Sun Feb 24 23:12:33 2013 New Revision: 247245 URL: http://svnweb.freebsd.org/changeset/base/247245 Log: MFH Added: - copied from r247244, head/contrib/ldns/ projects/uefi/crypto/openssl/crypto/evp/evp_cnf.c - copied unchanged from r247244, head/crypto/openssl/crypto/evp/evp_cnf.c projects/uefi/crypto/openssl/doc/crypto/EVP_PKEY_verify_recover.pod - copied unchanged from r247244, head/crypto/openssl/doc/crypto/EVP_PKEY_verify_recover.pod projects/uefi/crypto/openssl/ssl/s3_cbc.c - copied unchanged from r247244, head/crypto/openssl/ssl/s3_cbc.c projects/uefi/lib/libc/string/strchrnul.c - copied unchanged from r247244, head/lib/libc/string/strchrnul.c projects/uefi/lib/libldns/ - copied from r247244, head/lib/libldns/ projects/uefi/lib/libstand/strtoul.c - copied unchanged from r247244, head/lib/libstand/strtoul.c projects/uefi/sbin/hastd/refcnt.h - copied unchanged from r247244, head/sbin/hastd/refcnt.h projects/uefi/secure/lib/libcrypto/man/EVP_PKEY_verify_recover.3 - copied unchanged from r247244, head/secure/lib/libcrypto/man/EVP_PKEY_verify_recover.3 projects/uefi/sys/arm/allwinner/a10_wdog.c - copied unchanged from r247244, head/sys/arm/allwinner/a10_wdog.c projects/uefi/sys/arm/allwinner/a10_wdog.h - copied unchanged from r247244, head/sys/arm/allwinner/a10_wdog.h projects/uefi/sys/boot/fdt/help.fdt - copied unchanged from r247244, head/sys/boot/fdt/help.fdt projects/uefi/sys/cddl/boot/zfs/lz4.c - copied unchanged from r247244, head/sys/cddl/boot/zfs/lz4.c projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/THIRDPARTYLICENSE.lz4 - copied unchanged from r247244, head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/THIRDPARTYLICENSE.lz4 projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/THIRDPARTYLICENSE.lz4.descrip - copied unchanged from r247244, head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/THIRDPARTYLICENSE.lz4.descrip projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/lz4.c - copied unchanged from r247244, head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/lz4.c projects/uefi/sys/contrib/dev/acpica/compiler/aslprepkg.c - copied unchanged from r247244, head/sys/contrib/dev/acpica/compiler/aslprepkg.c projects/uefi/sys/contrib/dev/acpica/components/namespace/nsconvert.c - copied unchanged from r247244, head/sys/contrib/dev/acpica/components/namespace/nsconvert.c projects/uefi/sys/kern/subr_bus_dma.c - copied unchanged from r247244, head/sys/kern/subr_bus_dma.c projects/uefi/sys/sys/memdesc.h - copied unchanged from r247244, head/sys/sys/memdesc.h projects/uefi/sys/x86/include/elf.h - copied unchanged from r247244, head/sys/x86/include/elf.h projects/uefi/sys/x86/include/frame.h - copied unchanged from r247244, head/sys/x86/include/frame.h projects/uefi/sys/x86/include/sigframe.h - copied unchanged from r247244, head/sys/x86/include/sigframe.h projects/uefi/sys/x86/include/signal.h - copied unchanged from r247244, head/sys/x86/include/signal.h projects/uefi/sys/x86/include/ucontext.h - copied unchanged from r247244, head/sys/x86/include/ucontext.h projects/uefi/tools/build/options/WITHOUT_LDNS - copied unchanged from r247244, head/tools/build/options/WITHOUT_LDNS projects/uefi/tools/build/options/WITH_LDNS_UTILS - copied unchanged from r247244, head/tools/build/options/WITH_LDNS_UTILS projects/uefi/tools/regression/bin/sh/builtins/read6.0 - copied unchanged from r247244, head/tools/regression/bin/sh/builtins/read6.0 projects/uefi/tools/regression/bin/sh/builtins/wait4.0 - copied unchanged from r247244, head/tools/regression/bin/sh/builtins/wait4.0 projects/uefi/tools/regression/bin/sh/builtins/wait5.0 - copied unchanged from r247244, head/tools/regression/bin/sh/builtins/wait5.0 projects/uefi/tools/tools/ath/athalq/tdma.c - copied unchanged from r247244, head/tools/tools/ath/athalq/tdma.c projects/uefi/tools/tools/ath/athalq/tdma.h - copied unchanged from r247244, head/tools/tools/ath/athalq/tdma.h projects/uefi/tools/tools/netmap/nm_util.c - copied unchanged from r247244, head/tools/tools/netmap/nm_util.c projects/uefi/tools/tools/netmap/nm_util.h - copied unchanged from r247244, head/tools/tools/netmap/nm_util.h Directory Properties: projects/uefi/contrib/ldns/ (props changed) Deleted: projects/uefi/crypto/openssl/doc/crypto/EVP_PKEY_verifyrecover.pod projects/uefi/secure/lib/libcrypto/man/EVP_PKEY_verifyrecover.3 projects/uefi/sys/dev/mxge/mxge_lro.c Modified: projects/uefi/Makefile.inc1 projects/uefi/ObsoleteFiles.inc projects/uefi/bin/ps/ps.1 projects/uefi/bin/setfacl/setfacl.1 projects/uefi/bin/sh/eval.c projects/uefi/bin/sh/jobs.c projects/uefi/bin/sh/main.c projects/uefi/bin/sh/mksyntax.c projects/uefi/bin/sh/parser.h projects/uefi/bin/sh/trap.c projects/uefi/bin/sh/trap.h projects/uefi/cddl/contrib/opensolaris/cmd/dtrace/dtrace.c projects/uefi/cddl/contrib/opensolaris/cmd/zdb/zdb.c projects/uefi/cddl/contrib/opensolaris/cmd/zfs/zfs.8 projects/uefi/cddl/contrib/opensolaris/cmd/zpool/zpool-features.7 projects/uefi/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_import.c projects/uefi/contrib/binutils/gas/config/tc-i386.c projects/uefi/contrib/binutils/opcodes/i386-dis.c projects/uefi/contrib/binutils/opcodes/i386-opc.h projects/uefi/contrib/binutils/opcodes/i386-tbl.h projects/uefi/contrib/libc++/include/__config projects/uefi/contrib/libc++/include/algorithm projects/uefi/contrib/libc++/include/array projects/uefi/contrib/libc++/include/atomic projects/uefi/contrib/libc++/include/cmath projects/uefi/contrib/libc++/include/functional projects/uefi/contrib/libc++/include/future projects/uefi/contrib/libc++/include/istream projects/uefi/contrib/libc++/include/iterator projects/uefi/contrib/libc++/include/limits projects/uefi/contrib/libc++/include/locale projects/uefi/contrib/libc++/include/memory projects/uefi/contrib/libc++/include/ostream projects/uefi/contrib/libc++/include/random projects/uefi/contrib/libc++/include/regex projects/uefi/contrib/libc++/include/string projects/uefi/contrib/libc++/include/type_traits projects/uefi/contrib/libc++/include/vector projects/uefi/contrib/libc++/src/chrono.cpp projects/uefi/contrib/libc++/src/debug.cpp projects/uefi/contrib/libc++/src/exception.cpp projects/uefi/contrib/libc++/src/future.cpp projects/uefi/contrib/libc++/src/hash.cpp projects/uefi/contrib/libc++/src/locale.cpp projects/uefi/contrib/libc++/src/string.cpp projects/uefi/contrib/libc++/src/thread.cpp projects/uefi/contrib/libcxxrt/exception.cc projects/uefi/contrib/llvm/lib/MC/MCParser/AsmParser.cpp projects/uefi/contrib/llvm/lib/Target/X86/X86InstrCompiler.td projects/uefi/contrib/llvm/lib/Target/X86/X86SelectionDAGInfo.cpp projects/uefi/contrib/llvm/tools/clang/lib/Driver/Tools.cpp projects/uefi/contrib/llvm/tools/clang/lib/Driver/Tools.h projects/uefi/contrib/nvi/ex/ex_txt.c projects/uefi/contrib/nvi/vi/v_txt.c projects/uefi/contrib/openbsm/bin/auditdistd/token.l projects/uefi/contrib/opie/opiekey.c projects/uefi/contrib/sendmail/src/milter.c projects/uefi/contrib/wpa/src/crypto/md5-internal.c projects/uefi/crypto/heimdal/kcm/cache.c projects/uefi/crypto/openssl/CHANGES projects/uefi/crypto/openssl/Configure projects/uefi/crypto/openssl/FAQ projects/uefi/crypto/openssl/Makefile projects/uefi/crypto/openssl/Makefile.org projects/uefi/crypto/openssl/NEWS projects/uefi/crypto/openssl/PROBLEMS projects/uefi/crypto/openssl/README projects/uefi/crypto/openssl/apps/apps.c projects/uefi/crypto/openssl/apps/ca.c projects/uefi/crypto/openssl/apps/cms.c projects/uefi/crypto/openssl/apps/dgst.c projects/uefi/crypto/openssl/apps/dhparam.c projects/uefi/crypto/openssl/apps/dsaparam.c projects/uefi/crypto/openssl/apps/genrsa.c projects/uefi/crypto/openssl/apps/ocsp.c projects/uefi/crypto/openssl/apps/s_cb.c projects/uefi/crypto/openssl/apps/s_client.c projects/uefi/crypto/openssl/apps/s_server.c projects/uefi/crypto/openssl/apps/speed.c projects/uefi/crypto/openssl/apps/srp.c projects/uefi/crypto/openssl/apps/verify.c projects/uefi/crypto/openssl/apps/x509.c projects/uefi/crypto/openssl/crypto/aes/asm/aes-mips.pl projects/uefi/crypto/openssl/crypto/aes/asm/aes-s390x.pl projects/uefi/crypto/openssl/crypto/aes/asm/aes-x86_64.pl projects/uefi/crypto/openssl/crypto/aes/asm/aesni-sha1-x86_64.pl projects/uefi/crypto/openssl/crypto/aes/asm/aesni-x86_64.pl projects/uefi/crypto/openssl/crypto/aes/asm/bsaes-x86_64.pl projects/uefi/crypto/openssl/crypto/aes/asm/vpaes-x86_64.pl projects/uefi/crypto/openssl/crypto/asn1/a_strex.c projects/uefi/crypto/openssl/crypto/asn1/a_verify.c projects/uefi/crypto/openssl/crypto/asn1/x_pubkey.c projects/uefi/crypto/openssl/crypto/bio/bss_dgram.c projects/uefi/crypto/openssl/crypto/bn/asm/mips.pl projects/uefi/crypto/openssl/crypto/bn/asm/modexp512-x86_64.pl projects/uefi/crypto/openssl/crypto/bn/asm/x86_64-gf2m.pl projects/uefi/crypto/openssl/crypto/bn/asm/x86_64-mont.pl projects/uefi/crypto/openssl/crypto/bn/asm/x86_64-mont5.pl projects/uefi/crypto/openssl/crypto/bn/bn_div.c projects/uefi/crypto/openssl/crypto/bn/bn_gcd.c projects/uefi/crypto/openssl/crypto/bn/bn_lcl.h projects/uefi/crypto/openssl/crypto/camellia/asm/cmll-x86_64.pl projects/uefi/crypto/openssl/crypto/cms/cms_cd.c projects/uefi/crypto/openssl/crypto/cms/cms_enc.c projects/uefi/crypto/openssl/crypto/cms/cms_lib.c projects/uefi/crypto/openssl/crypto/conf/conf_mall.c projects/uefi/crypto/openssl/crypto/cryptlib.c projects/uefi/crypto/openssl/crypto/cryptlib.h projects/uefi/crypto/openssl/crypto/crypto.h projects/uefi/crypto/openssl/crypto/des/set_key.c projects/uefi/crypto/openssl/crypto/des/str2key.c projects/uefi/crypto/openssl/crypto/ec/ec.h projects/uefi/crypto/openssl/crypto/ec/ec_key.c projects/uefi/crypto/openssl/crypto/ec/ec_pmeth.c projects/uefi/crypto/openssl/crypto/ec/ecp_mont.c projects/uefi/crypto/openssl/crypto/ec/ectest.c projects/uefi/crypto/openssl/crypto/ecdh/Makefile projects/uefi/crypto/openssl/crypto/ecdh/ech_key.c projects/uefi/crypto/openssl/crypto/ecdh/ech_lib.c projects/uefi/crypto/openssl/crypto/ecdsa/ecs_lib.c projects/uefi/crypto/openssl/crypto/err/err_all.c projects/uefi/crypto/openssl/crypto/evp/Makefile projects/uefi/crypto/openssl/crypto/evp/digest.c projects/uefi/crypto/openssl/crypto/evp/e_aes.c projects/uefi/crypto/openssl/crypto/evp/e_aes_cbc_hmac_sha1.c projects/uefi/crypto/openssl/crypto/evp/evp.h projects/uefi/crypto/openssl/crypto/evp/evp_err.c projects/uefi/crypto/openssl/crypto/evp/m_dss.c projects/uefi/crypto/openssl/crypto/evp/m_dss1.c projects/uefi/crypto/openssl/crypto/evp/m_sha1.c projects/uefi/crypto/openssl/crypto/evp/p_sign.c projects/uefi/crypto/openssl/crypto/evp/p_verify.c projects/uefi/crypto/openssl/crypto/md4/md4_dgst.c projects/uefi/crypto/openssl/crypto/md4/md4_locl.h projects/uefi/crypto/openssl/crypto/md5/asm/md5-x86_64.pl projects/uefi/crypto/openssl/crypto/md5/md5_locl.h projects/uefi/crypto/openssl/crypto/mdc2/mdc2dgst.c projects/uefi/crypto/openssl/crypto/mem.c projects/uefi/crypto/openssl/crypto/modes/asm/ghash-x86.pl projects/uefi/crypto/openssl/crypto/modes/asm/ghash-x86_64.pl projects/uefi/crypto/openssl/crypto/modes/gcm128.c projects/uefi/crypto/openssl/crypto/objects/o_names.c projects/uefi/crypto/openssl/crypto/ocsp/ocsp_vfy.c projects/uefi/crypto/openssl/crypto/opensslv.h projects/uefi/crypto/openssl/crypto/pem/pem_all.c projects/uefi/crypto/openssl/crypto/pem/pem_lib.c projects/uefi/crypto/openssl/crypto/pem/pem_seal.c projects/uefi/crypto/openssl/crypto/perlasm/cbc.pl projects/uefi/crypto/openssl/crypto/perlasm/x86masm.pl projects/uefi/crypto/openssl/crypto/pkcs12/p12_key.c projects/uefi/crypto/openssl/crypto/pkcs7/bio_pk7.c projects/uefi/crypto/openssl/crypto/ppccap.c projects/uefi/crypto/openssl/crypto/rand/md_rand.c projects/uefi/crypto/openssl/crypto/rand/rand_lib.c projects/uefi/crypto/openssl/crypto/rand/randfile.c projects/uefi/crypto/openssl/crypto/rc4/asm/rc4-md5-x86_64.pl projects/uefi/crypto/openssl/crypto/rc4/asm/rc4-x86_64.pl projects/uefi/crypto/openssl/crypto/ripemd/rmd_dgst.c projects/uefi/crypto/openssl/crypto/ripemd/rmd_locl.h projects/uefi/crypto/openssl/crypto/rsa/rsa.h projects/uefi/crypto/openssl/crypto/rsa/rsa_eay.c projects/uefi/crypto/openssl/crypto/rsa/rsa_oaep.c projects/uefi/crypto/openssl/crypto/sha/asm/sha1-armv4-large.pl projects/uefi/crypto/openssl/crypto/sha/asm/sha1-ia64.pl projects/uefi/crypto/openssl/crypto/sha/asm/sha1-sparcv9a.pl projects/uefi/crypto/openssl/crypto/sha/asm/sha1-x86_64.pl projects/uefi/crypto/openssl/crypto/sha/asm/sha512-586.pl projects/uefi/crypto/openssl/crypto/sha/asm/sha512-x86_64.pl projects/uefi/crypto/openssl/crypto/sha/sha1_one.c projects/uefi/crypto/openssl/crypto/sha/sha1dgst.c projects/uefi/crypto/openssl/crypto/sha/sha256.c projects/uefi/crypto/openssl/crypto/sha/sha_dgst.c projects/uefi/crypto/openssl/crypto/sha/sha_locl.h projects/uefi/crypto/openssl/crypto/sparccpuid.S projects/uefi/crypto/openssl/crypto/srp/srp_vfy.c projects/uefi/crypto/openssl/crypto/symhacks.h projects/uefi/crypto/openssl/crypto/ui/ui_openssl.c projects/uefi/crypto/openssl/crypto/whrlpool/asm/wp-mmx.pl projects/uefi/crypto/openssl/crypto/whrlpool/asm/wp-x86_64.pl projects/uefi/crypto/openssl/crypto/x509/x509_cmp.c projects/uefi/crypto/openssl/crypto/x509/x509_vfy.c projects/uefi/crypto/openssl/crypto/x509v3/v3_purp.c projects/uefi/crypto/openssl/crypto/x86_64cpuid.pl projects/uefi/crypto/openssl/crypto/x86cpuid.pl projects/uefi/crypto/openssl/doc/apps/CA.pl.pod projects/uefi/crypto/openssl/doc/apps/dgst.pod projects/uefi/crypto/openssl/doc/apps/verify.pod projects/uefi/crypto/openssl/doc/apps/x509.pod projects/uefi/crypto/openssl/doc/crypto/EVP_PKEY_CTX_ctrl.pod projects/uefi/crypto/openssl/doc/crypto/EVP_PKEY_decrypt.pod projects/uefi/crypto/openssl/doc/crypto/EVP_PKEY_derive.pod projects/uefi/crypto/openssl/doc/crypto/EVP_PKEY_encrypt.pod projects/uefi/crypto/openssl/doc/crypto/EVP_PKEY_get_default_digest.pod projects/uefi/crypto/openssl/doc/crypto/EVP_PKEY_keygen.pod projects/uefi/crypto/openssl/doc/crypto/EVP_PKEY_sign.pod projects/uefi/crypto/openssl/doc/crypto/EVP_PKEY_verify.pod projects/uefi/crypto/openssl/engines/ccgost/gost89.c projects/uefi/crypto/openssl/engines/ccgost/gost_crypt.c projects/uefi/crypto/openssl/engines/ccgost/gost_eng.c projects/uefi/crypto/openssl/engines/ccgost/gost_lcl.h projects/uefi/crypto/openssl/engines/ccgost/gosthash.c projects/uefi/crypto/openssl/engines/e_capi.c projects/uefi/crypto/openssl/ssl/Makefile projects/uefi/crypto/openssl/ssl/d1_enc.c projects/uefi/crypto/openssl/ssl/d1_pkt.c projects/uefi/crypto/openssl/ssl/d1_srtp.c projects/uefi/crypto/openssl/ssl/dtls1.h projects/uefi/crypto/openssl/ssl/s2_clnt.c projects/uefi/crypto/openssl/ssl/s2_pkt.c projects/uefi/crypto/openssl/ssl/s2_srvr.c projects/uefi/crypto/openssl/ssl/s3_both.c projects/uefi/crypto/openssl/ssl/s3_clnt.c projects/uefi/crypto/openssl/ssl/s3_enc.c projects/uefi/crypto/openssl/ssl/s3_lib.c projects/uefi/crypto/openssl/ssl/s3_pkt.c projects/uefi/crypto/openssl/ssl/s3_srvr.c projects/uefi/crypto/openssl/ssl/ssl.h projects/uefi/crypto/openssl/ssl/ssl3.h projects/uefi/crypto/openssl/ssl/ssl_algs.c projects/uefi/crypto/openssl/ssl/ssl_cert.c projects/uefi/crypto/openssl/ssl/ssl_ciph.c projects/uefi/crypto/openssl/ssl/ssl_err.c projects/uefi/crypto/openssl/ssl/ssl_lib.c projects/uefi/crypto/openssl/ssl/ssl_locl.h projects/uefi/crypto/openssl/ssl/ssl_rsa.c projects/uefi/crypto/openssl/ssl/ssltest.c projects/uefi/crypto/openssl/ssl/t1_enc.c projects/uefi/crypto/openssl/ssl/t1_lib.c projects/uefi/crypto/openssl/ssl/tls_srp.c projects/uefi/crypto/openssl/util/libeay.num projects/uefi/crypto/openssl/util/pl/VC-32.pl projects/uefi/etc/mtree/BSD.include.dist projects/uefi/etc/rc.d/pfsync projects/uefi/etc/rc.resume projects/uefi/games/fortune/datfiles/fortunes-o.real projects/uefi/gnu/lib/libstdc++/config.h projects/uefi/gnu/usr.bin/gdb/kgdb/kgdb.1 projects/uefi/gnu/usr.bin/gdb/kgdb/kgdb.h projects/uefi/gnu/usr.bin/gdb/kgdb/kthr.c projects/uefi/gnu/usr.bin/gdb/kgdb/main.c projects/uefi/gnu/usr.bin/gdb/kgdb/trgt.c projects/uefi/gnu/usr.bin/gdb/kgdb/trgt_amd64.c projects/uefi/gnu/usr.bin/gdb/kgdb/trgt_arm.c projects/uefi/gnu/usr.bin/gdb/kgdb/trgt_i386.c projects/uefi/gnu/usr.bin/gdb/kgdb/trgt_ia64.c projects/uefi/gnu/usr.bin/gdb/kgdb/trgt_mips.c projects/uefi/gnu/usr.bin/gdb/kgdb/trgt_powerpc.c projects/uefi/gnu/usr.bin/gdb/kgdb/trgt_powerpc64.c projects/uefi/gnu/usr.bin/gdb/kgdb/trgt_sparc64.c projects/uefi/include/Makefile projects/uefi/include/string.h projects/uefi/kerberos5/libexec/digest-service/Makefile projects/uefi/lib/Makefile projects/uefi/lib/clang/clang.build.mk projects/uefi/lib/libc/arm/aeabi/Makefile.inc projects/uefi/lib/libc/gen/Makefile.inc projects/uefi/lib/libc/gen/fts.c projects/uefi/lib/libc/gen/opendir.c projects/uefi/lib/libc/gen/sem_new.c projects/uefi/lib/libc/net/getaddrinfo.3 projects/uefi/lib/libc/net/getnameinfo.3 projects/uefi/lib/libc/net/sctp_sys_calls.c projects/uefi/lib/libc/stdio/fopen.3 projects/uefi/lib/libc/stdio/setbuf.3 projects/uefi/lib/libc/stdlib/bsearch.3 projects/uefi/lib/libc/stdlib/qsort.3 projects/uefi/lib/libc/string/Makefile.inc projects/uefi/lib/libc/string/Symbol.map projects/uefi/lib/libc/string/strchr.3 projects/uefi/lib/libc/sys/Makefile.inc projects/uefi/lib/libc/sys/chflags.2 projects/uefi/lib/libc/sys/fcntl.2 projects/uefi/lib/libc/sys/open.2 projects/uefi/lib/libc/sys/ptrace.2 projects/uefi/lib/libc/sys/sigqueue.2 projects/uefi/lib/libcompiler_rt/Makefile projects/uefi/lib/libelf/elf_data.c projects/uefi/lib/libelf/elf_getdata.3 projects/uefi/lib/libelf/elf_update.c projects/uefi/lib/libsm/Makefile projects/uefi/lib/libstand/Makefile projects/uefi/lib/libstand/stand.h projects/uefi/lib/libusb/Makefile projects/uefi/lib/libusb/libusb20.3 projects/uefi/lib/libusb/libusb20.c projects/uefi/lib/libusb/libusb20.h projects/uefi/lib/libusb/libusb20_int.h projects/uefi/lib/libusb/libusb20_ugen20.c projects/uefi/lib/libvmmapi/vmmapi.c projects/uefi/lib/libvmmapi/vmmapi.h projects/uefi/libexec/mail.local/Makefile projects/uefi/libexec/rtld-elf/powerpc64/reloc.c projects/uefi/libexec/smrsh/Makefile projects/uefi/release/picobsd/bridge/crunch.conf projects/uefi/release/picobsd/qemu/crunch.conf projects/uefi/sbin/devd/devd.8 projects/uefi/sbin/devd/devd.conf.5 projects/uefi/sbin/fsck_ffs/dir.c projects/uefi/sbin/fsck_ffs/ea.c projects/uefi/sbin/fsck_ffs/fsck.h projects/uefi/sbin/fsck_ffs/fsutil.c projects/uefi/sbin/fsck_ffs/inode.c projects/uefi/sbin/fsck_ffs/main.c projects/uefi/sbin/fsck_ffs/setup.c projects/uefi/sbin/fsdb/fsdbutil.c projects/uefi/sbin/geom/class/eli/geom_eli.c projects/uefi/sbin/hastd/hast.conf.5 projects/uefi/sbin/hastd/hast.h projects/uefi/sbin/hastd/hast_proto.c projects/uefi/sbin/hastd/hastd.c projects/uefi/sbin/hastd/parse.y projects/uefi/sbin/hastd/primary.c projects/uefi/sbin/hastd/secondary.c projects/uefi/sbin/ifconfig/ifieee80211.c projects/uefi/secure/lib/libcrypto/Makefile projects/uefi/secure/lib/libcrypto/Makefile.inc projects/uefi/secure/lib/libcrypto/Makefile.man projects/uefi/secure/lib/libcrypto/man/ASN1_OBJECT_new.3 projects/uefi/secure/lib/libcrypto/man/ASN1_STRING_length.3 projects/uefi/secure/lib/libcrypto/man/ASN1_STRING_new.3 projects/uefi/secure/lib/libcrypto/man/ASN1_STRING_print_ex.3 projects/uefi/secure/lib/libcrypto/man/ASN1_generate_nconf.3 projects/uefi/secure/lib/libcrypto/man/BIO_ctrl.3 projects/uefi/secure/lib/libcrypto/man/BIO_f_base64.3 projects/uefi/secure/lib/libcrypto/man/BIO_f_buffer.3 projects/uefi/secure/lib/libcrypto/man/BIO_f_cipher.3 projects/uefi/secure/lib/libcrypto/man/BIO_f_md.3 projects/uefi/secure/lib/libcrypto/man/BIO_f_null.3 projects/uefi/secure/lib/libcrypto/man/BIO_f_ssl.3 projects/uefi/secure/lib/libcrypto/man/BIO_find_type.3 projects/uefi/secure/lib/libcrypto/man/BIO_new.3 projects/uefi/secure/lib/libcrypto/man/BIO_new_CMS.3 projects/uefi/secure/lib/libcrypto/man/BIO_push.3 projects/uefi/secure/lib/libcrypto/man/BIO_read.3 projects/uefi/secure/lib/libcrypto/man/BIO_s_accept.3 projects/uefi/secure/lib/libcrypto/man/BIO_s_bio.3 projects/uefi/secure/lib/libcrypto/man/BIO_s_connect.3 projects/uefi/secure/lib/libcrypto/man/BIO_s_fd.3 projects/uefi/secure/lib/libcrypto/man/BIO_s_file.3 projects/uefi/secure/lib/libcrypto/man/BIO_s_mem.3 projects/uefi/secure/lib/libcrypto/man/BIO_s_null.3 projects/uefi/secure/lib/libcrypto/man/BIO_s_socket.3 projects/uefi/secure/lib/libcrypto/man/BIO_set_callback.3 projects/uefi/secure/lib/libcrypto/man/BIO_should_retry.3 projects/uefi/secure/lib/libcrypto/man/BN_BLINDING_new.3 projects/uefi/secure/lib/libcrypto/man/BN_CTX_new.3 projects/uefi/secure/lib/libcrypto/man/BN_CTX_start.3 projects/uefi/secure/lib/libcrypto/man/BN_add.3 projects/uefi/secure/lib/libcrypto/man/BN_add_word.3 projects/uefi/secure/lib/libcrypto/man/BN_bn2bin.3 projects/uefi/secure/lib/libcrypto/man/BN_cmp.3 projects/uefi/secure/lib/libcrypto/man/BN_copy.3 projects/uefi/secure/lib/libcrypto/man/BN_generate_prime.3 projects/uefi/secure/lib/libcrypto/man/BN_mod_inverse.3 projects/uefi/secure/lib/libcrypto/man/BN_mod_mul_montgomery.3 projects/uefi/secure/lib/libcrypto/man/BN_mod_mul_reciprocal.3 projects/uefi/secure/lib/libcrypto/man/BN_new.3 projects/uefi/secure/lib/libcrypto/man/BN_num_bytes.3 projects/uefi/secure/lib/libcrypto/man/BN_rand.3 projects/uefi/secure/lib/libcrypto/man/BN_set_bit.3 projects/uefi/secure/lib/libcrypto/man/BN_swap.3 projects/uefi/secure/lib/libcrypto/man/BN_zero.3 projects/uefi/secure/lib/libcrypto/man/CMS_add0_cert.3 projects/uefi/secure/lib/libcrypto/man/CMS_add1_recipient_cert.3 projects/uefi/secure/lib/libcrypto/man/CMS_compress.3 projects/uefi/secure/lib/libcrypto/man/CMS_decrypt.3 projects/uefi/secure/lib/libcrypto/man/CMS_encrypt.3 projects/uefi/secure/lib/libcrypto/man/CMS_final.3 projects/uefi/secure/lib/libcrypto/man/CMS_get0_RecipientInfos.3 projects/uefi/secure/lib/libcrypto/man/CMS_get0_SignerInfos.3 projects/uefi/secure/lib/libcrypto/man/CMS_get0_type.3 projects/uefi/secure/lib/libcrypto/man/CMS_get1_ReceiptRequest.3 projects/uefi/secure/lib/libcrypto/man/CMS_sign.3 projects/uefi/secure/lib/libcrypto/man/CMS_sign_add1_signer.3 projects/uefi/secure/lib/libcrypto/man/CMS_sign_receipt.3 projects/uefi/secure/lib/libcrypto/man/CMS_uncompress.3 projects/uefi/secure/lib/libcrypto/man/CMS_verify.3 projects/uefi/secure/lib/libcrypto/man/CMS_verify_receipt.3 projects/uefi/secure/lib/libcrypto/man/CONF_modules_free.3 projects/uefi/secure/lib/libcrypto/man/CONF_modules_load_file.3 projects/uefi/secure/lib/libcrypto/man/CRYPTO_set_ex_data.3 projects/uefi/secure/lib/libcrypto/man/DH_generate_key.3 projects/uefi/secure/lib/libcrypto/man/DH_generate_parameters.3 projects/uefi/secure/lib/libcrypto/man/DH_get_ex_new_index.3 projects/uefi/secure/lib/libcrypto/man/DH_new.3 projects/uefi/secure/lib/libcrypto/man/DH_set_method.3 projects/uefi/secure/lib/libcrypto/man/DH_size.3 projects/uefi/secure/lib/libcrypto/man/DSA_SIG_new.3 projects/uefi/secure/lib/libcrypto/man/DSA_do_sign.3 projects/uefi/secure/lib/libcrypto/man/DSA_dup_DH.3 projects/uefi/secure/lib/libcrypto/man/DSA_generate_key.3 projects/uefi/secure/lib/libcrypto/man/DSA_generate_parameters.3 projects/uefi/secure/lib/libcrypto/man/DSA_get_ex_new_index.3 projects/uefi/secure/lib/libcrypto/man/DSA_new.3 projects/uefi/secure/lib/libcrypto/man/DSA_set_method.3 projects/uefi/secure/lib/libcrypto/man/DSA_sign.3 projects/uefi/secure/lib/libcrypto/man/DSA_size.3 projects/uefi/secure/lib/libcrypto/man/ERR_GET_LIB.3 projects/uefi/secure/lib/libcrypto/man/ERR_clear_error.3 projects/uefi/secure/lib/libcrypto/man/ERR_error_string.3 projects/uefi/secure/lib/libcrypto/man/ERR_get_error.3 projects/uefi/secure/lib/libcrypto/man/ERR_load_crypto_strings.3 projects/uefi/secure/lib/libcrypto/man/ERR_load_strings.3 projects/uefi/secure/lib/libcrypto/man/ERR_print_errors.3 projects/uefi/secure/lib/libcrypto/man/ERR_put_error.3 projects/uefi/secure/lib/libcrypto/man/ERR_remove_state.3 projects/uefi/secure/lib/libcrypto/man/ERR_set_mark.3 projects/uefi/secure/lib/libcrypto/man/EVP_BytesToKey.3 projects/uefi/secure/lib/libcrypto/man/EVP_DigestInit.3 projects/uefi/secure/lib/libcrypto/man/EVP_DigestSignInit.3 projects/uefi/secure/lib/libcrypto/man/EVP_DigestVerifyInit.3 projects/uefi/secure/lib/libcrypto/man/EVP_EncryptInit.3 projects/uefi/secure/lib/libcrypto/man/EVP_OpenInit.3 projects/uefi/secure/lib/libcrypto/man/EVP_PKEY_CTX_ctrl.3 projects/uefi/secure/lib/libcrypto/man/EVP_PKEY_CTX_new.3 projects/uefi/secure/lib/libcrypto/man/EVP_PKEY_cmp.3 projects/uefi/secure/lib/libcrypto/man/EVP_PKEY_decrypt.3 projects/uefi/secure/lib/libcrypto/man/EVP_PKEY_derive.3 projects/uefi/secure/lib/libcrypto/man/EVP_PKEY_encrypt.3 projects/uefi/secure/lib/libcrypto/man/EVP_PKEY_get_default_digest.3 projects/uefi/secure/lib/libcrypto/man/EVP_PKEY_keygen.3 projects/uefi/secure/lib/libcrypto/man/EVP_PKEY_new.3 projects/uefi/secure/lib/libcrypto/man/EVP_PKEY_print_private.3 projects/uefi/secure/lib/libcrypto/man/EVP_PKEY_set1_RSA.3 projects/uefi/secure/lib/libcrypto/man/EVP_PKEY_sign.3 projects/uefi/secure/lib/libcrypto/man/EVP_PKEY_verify.3 projects/uefi/secure/lib/libcrypto/man/EVP_SealInit.3 projects/uefi/secure/lib/libcrypto/man/EVP_SignInit.3 projects/uefi/secure/lib/libcrypto/man/EVP_VerifyInit.3 projects/uefi/secure/lib/libcrypto/man/OBJ_nid2obj.3 projects/uefi/secure/lib/libcrypto/man/OPENSSL_Applink.3 projects/uefi/secure/lib/libcrypto/man/OPENSSL_VERSION_NUMBER.3 projects/uefi/secure/lib/libcrypto/man/OPENSSL_config.3 projects/uefi/secure/lib/libcrypto/man/OPENSSL_ia32cap.3 projects/uefi/secure/lib/libcrypto/man/OPENSSL_load_builtin_modules.3 projects/uefi/secure/lib/libcrypto/man/OpenSSL_add_all_algorithms.3 projects/uefi/secure/lib/libcrypto/man/PEM_write_bio_CMS_stream.3 projects/uefi/secure/lib/libcrypto/man/PEM_write_bio_PKCS7_stream.3 projects/uefi/secure/lib/libcrypto/man/PKCS12_create.3 projects/uefi/secure/lib/libcrypto/man/PKCS12_parse.3 projects/uefi/secure/lib/libcrypto/man/PKCS7_decrypt.3 projects/uefi/secure/lib/libcrypto/man/PKCS7_encrypt.3 projects/uefi/secure/lib/libcrypto/man/PKCS7_sign.3 projects/uefi/secure/lib/libcrypto/man/PKCS7_sign_add_signer.3 projects/uefi/secure/lib/libcrypto/man/PKCS7_verify.3 projects/uefi/secure/lib/libcrypto/man/RAND_add.3 projects/uefi/secure/lib/libcrypto/man/RAND_bytes.3 projects/uefi/secure/lib/libcrypto/man/RAND_cleanup.3 projects/uefi/secure/lib/libcrypto/man/RAND_egd.3 projects/uefi/secure/lib/libcrypto/man/RAND_load_file.3 projects/uefi/secure/lib/libcrypto/man/RAND_set_rand_method.3 projects/uefi/secure/lib/libcrypto/man/RSA_blinding_on.3 projects/uefi/secure/lib/libcrypto/man/RSA_check_key.3 projects/uefi/secure/lib/libcrypto/man/RSA_generate_key.3 projects/uefi/secure/lib/libcrypto/man/RSA_get_ex_new_index.3 projects/uefi/secure/lib/libcrypto/man/RSA_new.3 projects/uefi/secure/lib/libcrypto/man/RSA_padding_add_PKCS1_type_1.3 projects/uefi/secure/lib/libcrypto/man/RSA_print.3 projects/uefi/secure/lib/libcrypto/man/RSA_private_encrypt.3 projects/uefi/secure/lib/libcrypto/man/RSA_public_encrypt.3 projects/uefi/secure/lib/libcrypto/man/RSA_set_method.3 projects/uefi/secure/lib/libcrypto/man/RSA_sign.3 projects/uefi/secure/lib/libcrypto/man/RSA_sign_ASN1_OCTET_STRING.3 projects/uefi/secure/lib/libcrypto/man/RSA_size.3 projects/uefi/secure/lib/libcrypto/man/SMIME_read_CMS.3 projects/uefi/secure/lib/libcrypto/man/SMIME_read_PKCS7.3 projects/uefi/secure/lib/libcrypto/man/SMIME_write_CMS.3 projects/uefi/secure/lib/libcrypto/man/SMIME_write_PKCS7.3 projects/uefi/secure/lib/libcrypto/man/X509_NAME_ENTRY_get_object.3 projects/uefi/secure/lib/libcrypto/man/X509_NAME_add_entry_by_txt.3 projects/uefi/secure/lib/libcrypto/man/X509_NAME_get_index_by_NID.3 projects/uefi/secure/lib/libcrypto/man/X509_NAME_print_ex.3 projects/uefi/secure/lib/libcrypto/man/X509_STORE_CTX_get_error.3 projects/uefi/secure/lib/libcrypto/man/X509_STORE_CTX_get_ex_new_index.3 projects/uefi/secure/lib/libcrypto/man/X509_STORE_CTX_new.3 projects/uefi/secure/lib/libcrypto/man/X509_STORE_CTX_set_verify_cb.3 projects/uefi/secure/lib/libcrypto/man/X509_STORE_set_verify_cb_func.3 projects/uefi/secure/lib/libcrypto/man/X509_VERIFY_PARAM_set_flags.3 projects/uefi/secure/lib/libcrypto/man/X509_new.3 projects/uefi/secure/lib/libcrypto/man/X509_verify_cert.3 projects/uefi/secure/lib/libcrypto/man/bio.3 projects/uefi/secure/lib/libcrypto/man/blowfish.3 projects/uefi/secure/lib/libcrypto/man/bn.3 projects/uefi/secure/lib/libcrypto/man/bn_internal.3 projects/uefi/secure/lib/libcrypto/man/buffer.3 projects/uefi/secure/lib/libcrypto/man/crypto.3 projects/uefi/secure/lib/libcrypto/man/d2i_ASN1_OBJECT.3 projects/uefi/secure/lib/libcrypto/man/d2i_DHparams.3 projects/uefi/secure/lib/libcrypto/man/d2i_DSAPublicKey.3 projects/uefi/secure/lib/libcrypto/man/d2i_PKCS8PrivateKey.3 projects/uefi/secure/lib/libcrypto/man/d2i_RSAPublicKey.3 projects/uefi/secure/lib/libcrypto/man/d2i_X509.3 projects/uefi/secure/lib/libcrypto/man/d2i_X509_ALGOR.3 projects/uefi/secure/lib/libcrypto/man/d2i_X509_CRL.3 projects/uefi/secure/lib/libcrypto/man/d2i_X509_NAME.3 projects/uefi/secure/lib/libcrypto/man/d2i_X509_REQ.3 projects/uefi/secure/lib/libcrypto/man/d2i_X509_SIG.3 projects/uefi/secure/lib/libcrypto/man/des.3 projects/uefi/secure/lib/libcrypto/man/dh.3 projects/uefi/secure/lib/libcrypto/man/dsa.3 projects/uefi/secure/lib/libcrypto/man/ecdsa.3 projects/uefi/secure/lib/libcrypto/man/engine.3 projects/uefi/secure/lib/libcrypto/man/err.3 projects/uefi/secure/lib/libcrypto/man/evp.3 projects/uefi/secure/lib/libcrypto/man/hmac.3 projects/uefi/secure/lib/libcrypto/man/i2d_CMS_bio_stream.3 projects/uefi/secure/lib/libcrypto/man/i2d_PKCS7_bio_stream.3 projects/uefi/secure/lib/libcrypto/man/lh_stats.3 projects/uefi/secure/lib/libcrypto/man/lhash.3 projects/uefi/secure/lib/libcrypto/man/md5.3 projects/uefi/secure/lib/libcrypto/man/mdc2.3 projects/uefi/secure/lib/libcrypto/man/pem.3 projects/uefi/secure/lib/libcrypto/man/rand.3 projects/uefi/secure/lib/libcrypto/man/rc4.3 projects/uefi/secure/lib/libcrypto/man/ripemd.3 projects/uefi/secure/lib/libcrypto/man/rsa.3 projects/uefi/secure/lib/libcrypto/man/sha.3 projects/uefi/secure/lib/libcrypto/man/threads.3 projects/uefi/secure/lib/libcrypto/man/ui.3 projects/uefi/secure/lib/libcrypto/man/ui_compat.3 projects/uefi/secure/lib/libcrypto/man/x509.3 projects/uefi/secure/lib/libssl/Makefile projects/uefi/secure/lib/libssl/man/SSL_CIPHER_get_name.3 projects/uefi/secure/lib/libssl/man/SSL_COMP_add_compression_method.3 projects/uefi/secure/lib/libssl/man/SSL_CTX_add_extra_chain_cert.3 projects/uefi/secure/lib/libssl/man/SSL_CTX_add_session.3 projects/uefi/secure/lib/libssl/man/SSL_CTX_ctrl.3 projects/uefi/secure/lib/libssl/man/SSL_CTX_flush_sessions.3 projects/uefi/secure/lib/libssl/man/SSL_CTX_free.3 projects/uefi/secure/lib/libssl/man/SSL_CTX_get_ex_new_index.3 projects/uefi/secure/lib/libssl/man/SSL_CTX_get_verify_mode.3 projects/uefi/secure/lib/libssl/man/SSL_CTX_load_verify_locations.3 projects/uefi/secure/lib/libssl/man/SSL_CTX_new.3 projects/uefi/secure/lib/libssl/man/SSL_CTX_sess_number.3 projects/uefi/secure/lib/libssl/man/SSL_CTX_sess_set_cache_size.3 projects/uefi/secure/lib/libssl/man/SSL_CTX_sess_set_get_cb.3 projects/uefi/secure/lib/libssl/man/SSL_CTX_sessions.3 projects/uefi/secure/lib/libssl/man/SSL_CTX_set_cert_store.3 projects/uefi/secure/lib/libssl/man/SSL_CTX_set_cert_verify_callback.3 projects/uefi/secure/lib/libssl/man/SSL_CTX_set_cipher_list.3 projects/uefi/secure/lib/libssl/man/SSL_CTX_set_client_CA_list.3 projects/uefi/secure/lib/libssl/man/SSL_CTX_set_client_cert_cb.3 projects/uefi/secure/lib/libssl/man/SSL_CTX_set_default_passwd_cb.3 projects/uefi/secure/lib/libssl/man/SSL_CTX_set_generate_session_id.3 projects/uefi/secure/lib/libssl/man/SSL_CTX_set_info_callback.3 projects/uefi/secure/lib/libssl/man/SSL_CTX_set_max_cert_list.3 projects/uefi/secure/lib/libssl/man/SSL_CTX_set_mode.3 projects/uefi/secure/lib/libssl/man/SSL_CTX_set_msg_callback.3 projects/uefi/secure/lib/libssl/man/SSL_CTX_set_options.3 projects/uefi/secure/lib/libssl/man/SSL_CTX_set_psk_client_callback.3 projects/uefi/secure/lib/libssl/man/SSL_CTX_set_quiet_shutdown.3 projects/uefi/secure/lib/libssl/man/SSL_CTX_set_session_cache_mode.3 projects/uefi/secure/lib/libssl/man/SSL_CTX_set_session_id_context.3 projects/uefi/secure/lib/libssl/man/SSL_CTX_set_ssl_version.3 projects/uefi/secure/lib/libssl/man/SSL_CTX_set_timeout.3 projects/uefi/secure/lib/libssl/man/SSL_CTX_set_tmp_dh_callback.3 projects/uefi/secure/lib/libssl/man/SSL_CTX_set_tmp_rsa_callback.3 projects/uefi/secure/lib/libssl/man/SSL_CTX_set_verify.3 projects/uefi/secure/lib/libssl/man/SSL_CTX_use_certificate.3 projects/uefi/secure/lib/libssl/man/SSL_CTX_use_psk_identity_hint.3 projects/uefi/secure/lib/libssl/man/SSL_SESSION_free.3 projects/uefi/secure/lib/libssl/man/SSL_SESSION_get_ex_new_index.3 projects/uefi/secure/lib/libssl/man/SSL_SESSION_get_time.3 projects/uefi/secure/lib/libssl/man/SSL_accept.3 projects/uefi/secure/lib/libssl/man/SSL_alert_type_string.3 projects/uefi/secure/lib/libssl/man/SSL_clear.3 projects/uefi/secure/lib/libssl/man/SSL_connect.3 projects/uefi/secure/lib/libssl/man/SSL_do_handshake.3 projects/uefi/secure/lib/libssl/man/SSL_free.3 projects/uefi/secure/lib/libssl/man/SSL_get_SSL_CTX.3 projects/uefi/secure/lib/libssl/man/SSL_get_ciphers.3 projects/uefi/secure/lib/libssl/man/SSL_get_client_CA_list.3 projects/uefi/secure/lib/libssl/man/SSL_get_current_cipher.3 projects/uefi/secure/lib/libssl/man/SSL_get_default_timeout.3 projects/uefi/secure/lib/libssl/man/SSL_get_error.3 projects/uefi/secure/lib/libssl/man/SSL_get_ex_data_X509_STORE_CTX_idx.3 projects/uefi/secure/lib/libssl/man/SSL_get_ex_new_index.3 projects/uefi/secure/lib/libssl/man/SSL_get_fd.3 projects/uefi/secure/lib/libssl/man/SSL_get_peer_cert_chain.3 projects/uefi/secure/lib/libssl/man/SSL_get_peer_certificate.3 projects/uefi/secure/lib/libssl/man/SSL_get_psk_identity.3 projects/uefi/secure/lib/libssl/man/SSL_get_rbio.3 projects/uefi/secure/lib/libssl/man/SSL_get_session.3 projects/uefi/secure/lib/libssl/man/SSL_get_verify_result.3 projects/uefi/secure/lib/libssl/man/SSL_get_version.3 projects/uefi/secure/lib/libssl/man/SSL_library_init.3 projects/uefi/secure/lib/libssl/man/SSL_load_client_CA_file.3 projects/uefi/secure/lib/libssl/man/SSL_new.3 projects/uefi/secure/lib/libssl/man/SSL_pending.3 projects/uefi/secure/lib/libssl/man/SSL_read.3 projects/uefi/secure/lib/libssl/man/SSL_rstate_string.3 projects/uefi/secure/lib/libssl/man/SSL_session_reused.3 projects/uefi/secure/lib/libssl/man/SSL_set_bio.3 projects/uefi/secure/lib/libssl/man/SSL_set_connect_state.3 projects/uefi/secure/lib/libssl/man/SSL_set_fd.3 projects/uefi/secure/lib/libssl/man/SSL_set_session.3 projects/uefi/secure/lib/libssl/man/SSL_set_shutdown.3 projects/uefi/secure/lib/libssl/man/SSL_set_verify_result.3 projects/uefi/secure/lib/libssl/man/SSL_shutdown.3 projects/uefi/secure/lib/libssl/man/SSL_state_string.3 projects/uefi/secure/lib/libssl/man/SSL_want.3 projects/uefi/secure/lib/libssl/man/SSL_write.3 projects/uefi/secure/lib/libssl/man/d2i_SSL_SESSION.3 projects/uefi/secure/lib/libssl/man/ssl.3 projects/uefi/secure/usr.bin/openssl/man/CA.pl.1 projects/uefi/secure/usr.bin/openssl/man/asn1parse.1 projects/uefi/secure/usr.bin/openssl/man/ca.1 projects/uefi/secure/usr.bin/openssl/man/ciphers.1 projects/uefi/secure/usr.bin/openssl/man/cms.1 projects/uefi/secure/usr.bin/openssl/man/crl.1 projects/uefi/secure/usr.bin/openssl/man/crl2pkcs7.1 projects/uefi/secure/usr.bin/openssl/man/dgst.1 projects/uefi/secure/usr.bin/openssl/man/dhparam.1 projects/uefi/secure/usr.bin/openssl/man/dsa.1 projects/uefi/secure/usr.bin/openssl/man/dsaparam.1 projects/uefi/secure/usr.bin/openssl/man/ec.1 projects/uefi/secure/usr.bin/openssl/man/ecparam.1 projects/uefi/secure/usr.bin/openssl/man/enc.1 projects/uefi/secure/usr.bin/openssl/man/errstr.1 projects/uefi/secure/usr.bin/openssl/man/gendsa.1 projects/uefi/secure/usr.bin/openssl/man/genpkey.1 projects/uefi/secure/usr.bin/openssl/man/genrsa.1 projects/uefi/secure/usr.bin/openssl/man/nseq.1 projects/uefi/secure/usr.bin/openssl/man/ocsp.1 projects/uefi/secure/usr.bin/openssl/man/openssl.1 projects/uefi/secure/usr.bin/openssl/man/passwd.1 projects/uefi/secure/usr.bin/openssl/man/pkcs12.1 projects/uefi/secure/usr.bin/openssl/man/pkcs7.1 projects/uefi/secure/usr.bin/openssl/man/pkcs8.1 projects/uefi/secure/usr.bin/openssl/man/pkey.1 projects/uefi/secure/usr.bin/openssl/man/pkeyparam.1 projects/uefi/secure/usr.bin/openssl/man/pkeyutl.1 projects/uefi/secure/usr.bin/openssl/man/rand.1 projects/uefi/secure/usr.bin/openssl/man/req.1 projects/uefi/secure/usr.bin/openssl/man/rsa.1 projects/uefi/secure/usr.bin/openssl/man/rsautl.1 projects/uefi/secure/usr.bin/openssl/man/s_client.1 projects/uefi/secure/usr.bin/openssl/man/s_server.1 projects/uefi/secure/usr.bin/openssl/man/s_time.1 projects/uefi/secure/usr.bin/openssl/man/sess_id.1 projects/uefi/secure/usr.bin/openssl/man/smime.1 projects/uefi/secure/usr.bin/openssl/man/speed.1 projects/uefi/secure/usr.bin/openssl/man/spkac.1 projects/uefi/secure/usr.bin/openssl/man/ts.1 projects/uefi/secure/usr.bin/openssl/man/tsget.1 projects/uefi/secure/usr.bin/openssl/man/verify.1 projects/uefi/secure/usr.bin/openssl/man/version.1 projects/uefi/secure/usr.bin/openssl/man/x509.1 projects/uefi/secure/usr.bin/openssl/man/x509v3_config.1 projects/uefi/share/man/man4/carp.4 projects/uefi/share/man/man4/run.4 projects/uefi/share/man/man5/group.5 projects/uefi/share/man/man5/src.conf.5 projects/uefi/share/man/man9/VFS_SET.9 projects/uefi/share/man/man9/mbuf_tags.9 projects/uefi/share/man/man9/timeout.9 projects/uefi/share/man/man9/vfs_busy.9 projects/uefi/share/misc/committers-ports.dot projects/uefi/share/misc/committers-src.dot projects/uefi/share/mk/bsd.lib.mk projects/uefi/share/mk/bsd.libnames.mk projects/uefi/share/mk/bsd.own.mk projects/uefi/share/mk/bsd.sys.mk projects/uefi/sys/amd64/acpica/acpi_machdep.c projects/uefi/sys/amd64/amd64/minidump_machdep.c projects/uefi/sys/amd64/amd64/pmap.c projects/uefi/sys/amd64/include/elf.h projects/uefi/sys/amd64/include/frame.h projects/uefi/sys/amd64/include/pmap.h projects/uefi/sys/amd64/include/sigframe.h projects/uefi/sys/amd64/include/signal.h projects/uefi/sys/amd64/include/ucontext.h projects/uefi/sys/amd64/include/vmm.h (contents, props changed) projects/uefi/sys/amd64/include/vmm_dev.h (contents, props changed) projects/uefi/sys/amd64/vmm/io/ppt.c projects/uefi/sys/amd64/vmm/vmm.c projects/uefi/sys/amd64/vmm/vmm_dev.c projects/uefi/sys/amd64/vmm/x86.c projects/uefi/sys/arm/allwinner/a10_clk.c projects/uefi/sys/arm/allwinner/a10_clk.h projects/uefi/sys/arm/allwinner/a10_ehci.c projects/uefi/sys/arm/allwinner/a10_gpio.c projects/uefi/sys/arm/allwinner/a10_machdep.c projects/uefi/sys/arm/allwinner/files.a10 projects/uefi/sys/arm/arm/busdma_machdep-v6.c projects/uefi/sys/arm/arm/busdma_machdep.c projects/uefi/sys/arm/arm/machdep.c projects/uefi/sys/arm/arm/pmap-v6.c projects/uefi/sys/arm/arm/pmap.c projects/uefi/sys/arm/arm/vm_machdep.c projects/uefi/sys/arm/at91/at91_machdep.c projects/uefi/sys/arm/broadcom/bcm2835/bcm2835_sdhci.c projects/uefi/sys/arm/broadcom/bcm2835/bcm2835_vcbus.h projects/uefi/sys/arm/econa/econa_machdep.c projects/uefi/sys/arm/include/pmap.h projects/uefi/sys/arm/include/vmparam.h projects/uefi/sys/arm/s3c2xx0/s3c24x0_machdep.c projects/uefi/sys/arm/sa11x0/assabet_machdep.c projects/uefi/sys/arm/ti/ti_cpuid.c projects/uefi/sys/arm/xscale/i80321/ep80219_machdep.c projects/uefi/sys/arm/xscale/i80321/iq31244_machdep.c projects/uefi/sys/arm/xscale/i8134x/crb_machdep.c projects/uefi/sys/arm/xscale/ixp425/avila_machdep.c projects/uefi/sys/arm/xscale/pxa/pxa_machdep.c projects/uefi/sys/boot/arm/uboot/Makefile projects/uefi/sys/boot/common/bootstrap.h projects/uefi/sys/boot/common/module.c projects/uefi/sys/boot/common/part.c projects/uefi/sys/boot/fdt/dts/bcm2835-rpi-b.dts projects/uefi/sys/boot/fdt/dts/cubieboard.dts projects/uefi/sys/boot/fdt/fdt_loader_cmd.c projects/uefi/sys/boot/powerpc/ps3/Makefile projects/uefi/sys/boot/powerpc/uboot/Makefile projects/uefi/sys/boot/uboot/lib/copy.c projects/uefi/sys/boot/uboot/lib/elf_freebsd.c projects/uefi/sys/boot/usb/Makefile projects/uefi/sys/boot/usb/Makefile.test projects/uefi/sys/boot/usb/bsd_global.h projects/uefi/sys/boot/usb/bsd_kernel.c projects/uefi/sys/boot/usb/bsd_kernel.h projects/uefi/sys/boot/userboot/userboot/elf32_freebsd.c projects/uefi/sys/bsm/audit_kevents.h projects/uefi/sys/cam/ata/ata_pmp.c projects/uefi/sys/cam/cam_ccb.h projects/uefi/sys/cam/cam_xpt.c projects/uefi/sys/cam/ctl/ctl_frontend_cam_sim.c projects/uefi/sys/cam/ctl/scsi_ctl.c projects/uefi/sys/cam/scsi/scsi_da.c projects/uefi/sys/cam/scsi/scsi_pass.c projects/uefi/sys/cam/scsi/scsi_target.c projects/uefi/sys/cddl/boot/zfs/README projects/uefi/sys/cddl/boot/zfs/zfsimpl.h projects/uefi/sys/cddl/boot/zfs/zfssubr.c projects/uefi/sys/cddl/compat/opensolaris/sys/byteorder.h projects/uefi/sys/cddl/contrib/opensolaris/common/zfs/zfeature_common.c projects/uefi/sys/cddl/contrib/opensolaris/common/zfs/zfeature_common.h projects/uefi/sys/cddl/contrib/opensolaris/common/zfs/zfs_prop.c projects/uefi/sys/cddl/contrib/opensolaris/uts/common/Makefile.files projects/uefi/sys/cddl/contrib/opensolaris/uts/common/dtrace/fasttrap.c projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/bptree.c projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dbuf.c projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu.c projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_diff.c projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_objset.c projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_send.c projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_traverse.c projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_tx.c projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_dataset.c projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_scan.c projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/lzjb.c projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/metaslab.c projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/refcount.c projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sa.c projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/arc.h projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dmu_traverse.h projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dsl_pool.h projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/refcount.h projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zfs_vfsops.h projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zio.h projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zio_compress.h projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_raidz.c projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zap_leaf.c projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_byteswap.c projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_fuid.c projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_log.c projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_rlock.c projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zil.c projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zio.c projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zio_compress.c projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zvol.c projects/uefi/sys/cddl/dev/dtrace/dtrace_ioctl.c projects/uefi/sys/conf/NOTES projects/uefi/sys/conf/files projects/uefi/sys/conf/options projects/uefi/sys/contrib/dev/acpica/changes.txt (contents, props changed) projects/uefi/sys/contrib/dev/acpica/common/adisasm.c projects/uefi/sys/contrib/dev/acpica/common/adwalk.c projects/uefi/sys/contrib/dev/acpica/common/dmextern.c projects/uefi/sys/contrib/dev/acpica/common/dmtable.c projects/uefi/sys/contrib/dev/acpica/common/dmtbdump.c projects/uefi/sys/contrib/dev/acpica/common/dmtbinfo.c projects/uefi/sys/contrib/dev/acpica/compiler/aslcompile.c projects/uefi/sys/contrib/dev/acpica/compiler/aslcompiler.h projects/uefi/sys/contrib/dev/acpica/compiler/asldefine.h projects/uefi/sys/contrib/dev/acpica/compiler/aslfiles.c projects/uefi/sys/contrib/dev/acpica/compiler/aslmain.c projects/uefi/sys/contrib/dev/acpica/compiler/aslmessages.h projects/uefi/sys/contrib/dev/acpica/compiler/aslpredef.c projects/uefi/sys/contrib/dev/acpica/compiler/aslstartup.c projects/uefi/sys/contrib/dev/acpica/compiler/aslsupport.l projects/uefi/sys/contrib/dev/acpica/compiler/dtcompiler.h projects/uefi/sys/contrib/dev/acpica/compiler/dttable.c projects/uefi/sys/contrib/dev/acpica/compiler/dttemplate.h projects/uefi/sys/contrib/dev/acpica/components/debugger/dbcmds.c projects/uefi/sys/contrib/dev/acpica/components/debugger/dbinput.c projects/uefi/sys/contrib/dev/acpica/components/dispatcher/dsutils.c projects/uefi/sys/contrib/dev/acpica/components/events/evevent.c projects/uefi/sys/contrib/dev/acpica/components/events/evgpe.c projects/uefi/sys/contrib/dev/acpica/components/events/evsci.c projects/uefi/sys/contrib/dev/acpica/components/events/evxface.c projects/uefi/sys/contrib/dev/acpica/components/events/evxfevnt.c projects/uefi/sys/contrib/dev/acpica/components/executer/exprep.c projects/uefi/sys/contrib/dev/acpica/components/executer/exutils.c projects/uefi/sys/contrib/dev/acpica/components/hardware/hwacpi.c projects/uefi/sys/contrib/dev/acpica/components/namespace/nspredef.c projects/uefi/sys/contrib/dev/acpica/components/namespace/nsprepkg.c projects/uefi/sys/contrib/dev/acpica/components/namespace/nsrepair.c projects/uefi/sys/contrib/dev/acpica/components/namespace/nsrepair2.c projects/uefi/sys/contrib/dev/acpica/components/namespace/nsutils.c projects/uefi/sys/contrib/dev/acpica/components/parser/psargs.c projects/uefi/sys/contrib/dev/acpica/components/resources/rscalc.c projects/uefi/sys/contrib/dev/acpica/components/resources/rsdump.c projects/uefi/sys/contrib/dev/acpica/components/resources/rslist.c projects/uefi/sys/contrib/dev/acpica/components/resources/rsxface.c projects/uefi/sys/contrib/dev/acpica/components/utilities/utaddress.c projects/uefi/sys/contrib/dev/acpica/components/utilities/utexcep.c projects/uefi/sys/contrib/dev/acpica/components/utilities/utglobal.c projects/uefi/sys/contrib/dev/acpica/include/acdisasm.h projects/uefi/sys/contrib/dev/acpica/include/acexcep.h projects/uefi/sys/contrib/dev/acpica/include/acglobal.h projects/uefi/sys/contrib/dev/acpica/include/aclocal.h projects/uefi/sys/contrib/dev/acpica/include/acnamesp.h projects/uefi/sys/contrib/dev/acpica/include/acoutput.h projects/uefi/sys/contrib/dev/acpica/include/acpixf.h projects/uefi/sys/contrib/dev/acpica/include/actbl2.h projects/uefi/sys/contrib/dev/acpica/include/actbl3.h projects/uefi/sys/contrib/dev/acpica/include/acutils.h projects/uefi/sys/crypto/aesni/aesni_wrap.c projects/uefi/sys/dev/aac/aac_cam.c projects/uefi/sys/dev/advansys/advansys.c projects/uefi/sys/dev/advansys/adwcam.c projects/uefi/sys/dev/aha/aha.c projects/uefi/sys/dev/ahb/ahb.c projects/uefi/sys/dev/ahci/ahci.c projects/uefi/sys/dev/aic/aic.c projects/uefi/sys/dev/aic7xxx/aic79xx_osm.c projects/uefi/sys/dev/aic7xxx/aic7xxx_osm.c projects/uefi/sys/dev/amr/amr_cam.c projects/uefi/sys/dev/arcmsr/arcmsr.c projects/uefi/sys/dev/ata/ata-all.c projects/uefi/sys/dev/ata/ata-all.h projects/uefi/sys/dev/ata/ata-dma.c projects/uefi/sys/dev/ata/atapi-cam.c projects/uefi/sys/dev/ath/ath_hal/ar5416/ar5416_attach.c projects/uefi/sys/dev/ath/ath_hal/ar5416/ar5416_interrupts.c projects/uefi/sys/dev/ath/ath_hal/ar5416/ar5416_reset.c projects/uefi/sys/dev/ath/ath_hal/ar5416/ar5416_xmit.c projects/uefi/sys/dev/ath/if_ath.c projects/uefi/sys/dev/ath/if_ath_ahb.c projects/uefi/sys/dev/ath/if_ath_alq.c projects/uefi/sys/dev/ath/if_ath_alq.h projects/uefi/sys/dev/ath/if_ath_misc.h projects/uefi/sys/dev/ath/if_ath_pci.c projects/uefi/sys/dev/ath/if_ath_rx.c projects/uefi/sys/dev/ath/if_ath_sysctl.c projects/uefi/sys/dev/ath/if_ath_tx.c projects/uefi/sys/dev/ath/if_ath_tx.h projects/uefi/sys/dev/ath/if_ath_tx_edma.c projects/uefi/sys/dev/ath/if_ath_tx_ht.c projects/uefi/sys/dev/ath/if_athvar.h projects/uefi/sys/dev/buslogic/bt.c projects/uefi/sys/dev/bxe/if_bxe.c projects/uefi/sys/dev/ciss/ciss.c projects/uefi/sys/dev/ciss/cissvar.h projects/uefi/sys/dev/coretemp/coretemp.c projects/uefi/sys/dev/cxgbe/common/t4_hw.c projects/uefi/sys/dev/cxgbe/common/t4_hw.h projects/uefi/sys/dev/cxgbe/t4_main.c projects/uefi/sys/dev/cxgbe/t4_sge.c projects/uefi/sys/dev/dcons/dcons_os.c projects/uefi/sys/dev/dpt/dpt_scsi.c projects/uefi/sys/dev/e1000/e1000_82571.c projects/uefi/sys/dev/e1000/e1000_82575.c projects/uefi/sys/dev/e1000/e1000_82575.h projects/uefi/sys/dev/e1000/e1000_api.c projects/uefi/sys/dev/e1000/e1000_api.h projects/uefi/sys/dev/e1000/e1000_defines.h projects/uefi/sys/dev/e1000/e1000_hw.h projects/uefi/sys/dev/e1000/e1000_i210.c projects/uefi/sys/dev/e1000/e1000_i210.h projects/uefi/sys/dev/e1000/e1000_ich8lan.c projects/uefi/sys/dev/e1000/e1000_ich8lan.h projects/uefi/sys/dev/e1000/e1000_mac.c projects/uefi/sys/dev/e1000/e1000_mac.h projects/uefi/sys/dev/e1000/e1000_manage.c projects/uefi/sys/dev/e1000/e1000_nvm.c projects/uefi/sys/dev/e1000/e1000_nvm.h projects/uefi/sys/dev/e1000/e1000_osdep.h projects/uefi/sys/dev/e1000/e1000_phy.c projects/uefi/sys/dev/e1000/e1000_phy.h projects/uefi/sys/dev/e1000/e1000_regs.h projects/uefi/sys/dev/e1000/if_em.c projects/uefi/sys/dev/e1000/if_igb.c projects/uefi/sys/dev/e1000/if_lem.c projects/uefi/sys/dev/fdt/fdt_common.h projects/uefi/sys/dev/firewire/sbp.c projects/uefi/sys/dev/hpt27xx/osm_bsd.c projects/uefi/sys/dev/hptiop/hptiop.c projects/uefi/sys/dev/hptmv/entry.c projects/uefi/sys/dev/hptrr/hptrr_osm_bsd.c projects/uefi/sys/dev/iir/iir.c projects/uefi/sys/dev/isci/isci_io_request.c projects/uefi/sys/dev/isp/isp_pci.c projects/uefi/sys/dev/isp/isp_sbus.c projects/uefi/sys/dev/ixgbe/ixgbe.c projects/uefi/sys/dev/ixgbe/ixv.c projects/uefi/sys/dev/led/led.c projects/uefi/sys/dev/mcd/mcd.c projects/uefi/sys/dev/mfi/mfi.c projects/uefi/sys/dev/mfi/mfi_cam.c projects/uefi/sys/dev/mfi/mfivar.h projects/uefi/sys/dev/mly/mly.c projects/uefi/sys/dev/mly/mlyvar.h projects/uefi/sys/dev/mps/mps.c projects/uefi/sys/dev/mps/mps_sas.c projects/uefi/sys/dev/mps/mpsvar.h projects/uefi/sys/dev/mpt/mpt_cam.c projects/uefi/sys/dev/mvs/mvs.c projects/uefi/sys/dev/mxge/if_mxge.c projects/uefi/sys/dev/mxge/if_mxge_var.h projects/uefi/sys/dev/oce/oce_if.c projects/uefi/sys/dev/oce/oce_if.h projects/uefi/sys/dev/ppc/ppc.c projects/uefi/sys/dev/ppc/ppc_isa.c projects/uefi/sys/dev/sdhci/sdhci.c projects/uefi/sys/dev/sdhci/sdhci.h projects/uefi/sys/dev/sdhci/sdhci_if.m projects/uefi/sys/dev/si/si.c projects/uefi/sys/dev/siis/siis.c projects/uefi/sys/dev/sound/pci/hda/hdaa.c projects/uefi/sys/dev/sound/pcm/mixer.c projects/uefi/sys/dev/sound/pcm/mixer.h projects/uefi/sys/dev/sound/usb/uaudio.c projects/uefi/sys/dev/sym/sym_hipd.c projects/uefi/sys/dev/syscons/syscons.c projects/uefi/sys/dev/trm/trm.c projects/uefi/sys/dev/twa/tw_osl.h projects/uefi/sys/dev/twa/tw_osl_cam.c projects/uefi/sys/dev/twa/tw_osl_freebsd.c projects/uefi/sys/dev/tws/tws.h projects/uefi/sys/dev/tws/tws_cam.c projects/uefi/sys/dev/usb/controller/usb_controller.c projects/uefi/sys/dev/usb/controller/xhci.c projects/uefi/sys/dev/usb/controller/xhci.h projects/uefi/sys/dev/usb/net/if_smsc.c projects/uefi/sys/dev/usb/serial/uftdi.c projects/uefi/sys/dev/usb/template/usb_template.c projects/uefi/sys/dev/usb/usb_bus.h projects/uefi/sys/dev/usb/usb_controller.h projects/uefi/sys/dev/usb/usb_dev.c projects/uefi/sys/dev/usb/usb_dev.h projects/uefi/sys/dev/usb/usb_device.c projects/uefi/sys/dev/usb/usb_device.h projects/uefi/sys/dev/usb/usb_dynamic.c projects/uefi/sys/dev/usb/usb_freebsd.h projects/uefi/sys/dev/usb/usb_freebsd_loader.h projects/uefi/sys/dev/usb/usb_generic.c projects/uefi/sys/dev/usb/usb_handle_request.c projects/uefi/sys/dev/usb/usb_hub.c projects/uefi/sys/dev/usb/usb_ioctl.h projects/uefi/sys/dev/usb/usb_msctest.c projects/uefi/sys/dev/usb/usb_process.c projects/uefi/sys/dev/usb/usb_request.c projects/uefi/sys/dev/usb/usb_transfer.c projects/uefi/sys/dev/usb/usb_util.c projects/uefi/sys/dev/usb/usbdevs projects/uefi/sys/dev/usb/wlan/if_rum.c projects/uefi/sys/dev/usb/wlan/if_rumvar.h projects/uefi/sys/dev/usb/wlan/if_run.c projects/uefi/sys/dev/usb/wlan/if_runvar.h projects/uefi/sys/dev/usb/wlan/if_uath.c projects/uefi/sys/dev/usb/wlan/if_upgt.c projects/uefi/sys/dev/usb/wlan/if_upgtvar.h projects/uefi/sys/dev/usb/wlan/if_ural.c projects/uefi/sys/dev/usb/wlan/if_uralvar.h projects/uefi/sys/dev/usb/wlan/if_urtw.c projects/uefi/sys/dev/usb/wlan/if_urtwvar.h projects/uefi/sys/dev/usb/wlan/if_zyd.c projects/uefi/sys/dev/usb/wlan/if_zydreg.h projects/uefi/sys/dev/virtio/scsi/virtio_scsi.c projects/uefi/sys/dev/wds/wd7000.c projects/uefi/sys/fs/devfs/devfs_vnops.c projects/uefi/sys/fs/ext2fs/ext2_alloc.c projects/uefi/sys/fs/ext2fs/ext2_balloc.c projects/uefi/sys/fs/ext2fs/ext2_bmap.c projects/uefi/sys/fs/ext2fs/ext2_inode.c projects/uefi/sys/fs/ext2fs/ext2_inode_cnv.c projects/uefi/sys/fs/ext2fs/ext2_lookup.c projects/uefi/sys/fs/ext2fs/ext2_mount.h projects/uefi/sys/fs/ext2fs/ext2_subr.c projects/uefi/sys/fs/ext2fs/ext2_vfsops.c projects/uefi/sys/fs/ext2fs/ext2_vnops.c projects/uefi/sys/fs/ext2fs/ext2fs.h projects/uefi/sys/fs/ext2fs/inode.h projects/uefi/sys/fs/msdosfs/msdosfs_fat.c projects/uefi/sys/fs/msdosfs/msdosfs_vfsops.c projects/uefi/sys/fs/msdosfs/msdosfsmount.h projects/uefi/sys/fs/nfs/nfs_commonkrpc.c projects/uefi/sys/fs/nfsclient/nfs_clstate.c projects/uefi/sys/fs/nfsclient/nfs_clvfsops.c projects/uefi/sys/fs/tmpfs/tmpfs_vnops.c projects/uefi/sys/geom/geom_vfs.c projects/uefi/sys/i386/acpica/acpi_machdep.c projects/uefi/sys/i386/i386/pmap.c projects/uefi/sys/i386/include/elf.h projects/uefi/sys/i386/include/frame.h projects/uefi/sys/i386/include/sigframe.h projects/uefi/sys/i386/include/signal.h projects/uefi/sys/i386/include/ucontext.h projects/uefi/sys/i386/isa/pmtimer.c projects/uefi/sys/i386/xen/pmap.c projects/uefi/sys/ia64/conf/GENERIC projects/uefi/sys/ia64/ia64/busdma_machdep.c projects/uefi/sys/ia64/ia64/dump_machdep.c projects/uefi/sys/ia64/ia64/genassym.c projects/uefi/sys/ia64/ia64/machdep.c projects/uefi/sys/ia64/ia64/mem.c projects/uefi/sys/ia64/ia64/support.S projects/uefi/sys/ia64/ia64/syscall.S projects/uefi/sys/ia64/include/proc.h projects/uefi/sys/kern/imgact_elf.c projects/uefi/sys/kern/kern_descrip.c projects/uefi/sys/kern/kern_exec.c projects/uefi/sys/kern/kern_exit.c projects/uefi/sys/kern/kern_fork.c projects/uefi/sys/kern/kern_intr.c projects/uefi/sys/kern/kern_ktr.c projects/uefi/sys/kern/kern_sig.c projects/uefi/sys/kern/kern_sysctl.c projects/uefi/sys/kern/kern_tc.c projects/uefi/sys/kern/kern_thread.c projects/uefi/sys/kern/subr_blist.c projects/uefi/sys/kern/subr_sleepqueue.c projects/uefi/sys/kern/subr_trap.c projects/uefi/sys/kern/subr_turnstile.c projects/uefi/sys/kern/subr_uio.c projects/uefi/sys/kern/sys_capability.c projects/uefi/sys/kern/sys_pipe.c projects/uefi/sys/kern/sys_process.c projects/uefi/sys/kern/uipc_syscalls.c projects/uefi/sys/kern/uipc_usrreq.c projects/uefi/sys/kern/vfs_acl.c projects/uefi/sys/kern/vfs_bio.c projects/uefi/sys/kern/vfs_cluster.c projects/uefi/sys/kern/vfs_export.c projects/uefi/sys/kern/vfs_init.c projects/uefi/sys/kern/vfs_lookup.c projects/uefi/sys/kern/vfs_syscalls.c projects/uefi/sys/kern/vfs_vnops.c projects/uefi/sys/mips/mips/busdma_machdep.c projects/uefi/sys/modules/acpi/acpi/Makefile projects/uefi/sys/modules/mxge/mxge/Makefile projects/uefi/sys/modules/usb/smsc/Makefile projects/uefi/sys/net/if.c projects/uefi/sys/net/if_pfsync.h projects/uefi/sys/net/if_var.h projects/uefi/sys/net80211/ieee80211.h projects/uefi/sys/net80211/ieee80211_action.c projects/uefi/sys/net80211/ieee80211_adhoc.c projects/uefi/sys/net80211/ieee80211_ddb.c projects/uefi/sys/net80211/ieee80211_freebsd.c projects/uefi/sys/net80211/ieee80211_hwmp.c projects/uefi/sys/net80211/ieee80211_input.c projects/uefi/sys/net80211/ieee80211_ioctl.h projects/uefi/sys/net80211/ieee80211_mesh.c projects/uefi/sys/net80211/ieee80211_mesh.h projects/uefi/sys/net80211/ieee80211_node.h projects/uefi/sys/net80211/ieee80211_output.c projects/uefi/sys/netgraph/ng_parse.c projects/uefi/sys/netinet/ip_carp.c projects/uefi/sys/netinet/ip_carp.h projects/uefi/sys/netinet/ip_input.c projects/uefi/sys/netinet/sctp.h projects/uefi/sys/netinet/sctp_asconf.c projects/uefi/sys/netinet/sctp_indata.c projects/uefi/sys/netinet/sctp_input.c projects/uefi/sys/netinet/sctp_output.c projects/uefi/sys/netinet/sctp_output.h projects/uefi/sys/netinet/sctp_pcb.c projects/uefi/sys/netinet/sctp_pcb.h projects/uefi/sys/netinet/sctp_structs.h projects/uefi/sys/netinet/sctp_sysctl.c projects/uefi/sys/netinet/sctp_timer.c projects/uefi/sys/netinet/sctp_usrreq.c projects/uefi/sys/netinet/sctputil.c projects/uefi/sys/netinet/tcp_lro.c projects/uefi/sys/netpfil/pf/if_pfsync.c projects/uefi/sys/nfsclient/nfs_krpc.c projects/uefi/sys/nfsclient/nfs_vfsops.c projects/uefi/sys/ofed/drivers/net/mlx4/en_tx.c projects/uefi/sys/opencrypto/xform.c projects/uefi/sys/pci/ncr.c projects/uefi/sys/powerpc/booke/platform_bare.c projects/uefi/sys/powerpc/include/platformvar.h projects/uefi/sys/powerpc/include/vmparam.h projects/uefi/sys/powerpc/powermac/platform_powermac.c projects/uefi/sys/powerpc/powerpc/busdma_machdep.c projects/uefi/sys/powerpc/ps3/platform_ps3.c projects/uefi/sys/powerpc/ps3/ps3cdrom.c projects/uefi/sys/powerpc/wii/platform_wii.c projects/uefi/sys/powerpc/wii/wii_gpio.c projects/uefi/sys/powerpc/wii/wii_ipc.c projects/uefi/sys/powerpc/wii/wii_pic.c projects/uefi/sys/security/audit/audit.h projects/uefi/sys/security/audit/audit_bsm.c projects/uefi/sys/security/audit/audit_private.h projects/uefi/sys/sparc64/include/bus_dma.h projects/uefi/sys/sparc64/include/vmparam.h projects/uefi/sys/sparc64/sparc64/bus_machdep.c projects/uefi/sys/sparc64/sparc64/iommu.c projects/uefi/sys/sys/buf.h projects/uefi/sys/sys/buf_ring.h projects/uefi/sys/sys/bus_dma.h projects/uefi/sys/sys/diskmbr.h projects/uefi/sys/sys/filedesc.h projects/uefi/sys/sys/mount.h projects/uefi/sys/sys/namei.h projects/uefi/sys/sys/param.h projects/uefi/sys/sys/proc.h projects/uefi/sys/sys/protosw.h projects/uefi/sys/sys/queue.h projects/uefi/sys/sys/signalvar.h projects/uefi/sys/sys/systm.h projects/uefi/sys/sys/uio.h projects/uefi/sys/tools/vnode_if.awk projects/uefi/sys/ufs/ffs/ffs_alloc.c projects/uefi/sys/ufs/ufs/inode.h projects/uefi/sys/vm/vm_kern.c projects/uefi/sys/vm/vm_phys.c projects/uefi/sys/x86/acpica/srat.c projects/uefi/sys/x86/isa/atrtc.c projects/uefi/sys/x86/isa/clock.c projects/uefi/sys/x86/x86/busdma_machdep.c projects/uefi/tools/regression/sockets/unix_cmsg/README projects/uefi/tools/regression/sockets/unix_cmsg/unix_cmsg.c projects/uefi/tools/regression/sockets/unix_cmsg/unix_cmsg.t projects/uefi/tools/tools/ath/athalq/Makefile projects/uefi/tools/tools/ath/athalq/ar5210_ds.c projects/uefi/tools/tools/ath/athalq/ar5211_ds.c projects/uefi/tools/tools/ath/athalq/ar5212_ds.c projects/uefi/tools/tools/ath/athalq/ar5416_ds.c projects/uefi/tools/tools/ath/athalq/main.c projects/uefi/tools/tools/netmap/Makefile projects/uefi/tools/tools/netmap/bridge.c projects/uefi/tools/tools/netmap/pcap.c projects/uefi/tools/tools/netmap/pkt-gen.c projects/uefi/usr.bin/Makefile projects/uefi/usr.bin/clang/bugpoint/Makefile projects/uefi/usr.bin/clang/clang-tblgen/Makefile projects/uefi/usr.bin/clang/llc/Makefile projects/uefi/usr.bin/clang/lli/Makefile projects/uefi/usr.bin/clang/llvm-ar/Makefile projects/uefi/usr.bin/clang/llvm-as/Makefile projects/uefi/usr.bin/clang/llvm-bcanalyzer/Makefile projects/uefi/usr.bin/clang/llvm-diff/Makefile projects/uefi/usr.bin/clang/llvm-dis/Makefile projects/uefi/usr.bin/clang/llvm-extract/Makefile projects/uefi/usr.bin/clang/llvm-link/Makefile projects/uefi/usr.bin/clang/llvm-mc/Makefile projects/uefi/usr.bin/clang/llvm-nm/Makefile projects/uefi/usr.bin/clang/llvm-objdump/Makefile projects/uefi/usr.bin/clang/llvm-prof/Makefile projects/uefi/usr.bin/clang/llvm-ranlib/Makefile projects/uefi/usr.bin/clang/llvm-rtdyld/Makefile projects/uefi/usr.bin/clang/macho-dump/Makefile projects/uefi/usr.bin/clang/opt/Makefile projects/uefi/usr.bin/clang/tblgen/Makefile projects/uefi/usr.bin/csup/csup.1 projects/uefi/usr.bin/dtc/input_buffer.cc projects/uefi/usr.bin/ee/Makefile projects/uefi/usr.bin/find/function.c projects/uefi/usr.bin/find/main.c projects/uefi/usr.bin/gprof/aout.c projects/uefi/usr.bin/gprof/arcs.c projects/uefi/usr.bin/gprof/dfn.c projects/uefi/usr.bin/gprof/gprof.c projects/uefi/usr.bin/gprof/gprof.h projects/uefi/usr.bin/gprof/hertz.c projects/uefi/usr.bin/gprof/kernel.c projects/uefi/usr.bin/gprof/lookup.c projects/uefi/usr.bin/gprof/printgprof.c projects/uefi/usr.bin/gprof/printlist.c projects/uefi/usr.bin/grep/regex/tre-fastmatch.c projects/uefi/usr.bin/kdump/kdump.c projects/uefi/usr.bin/kdump/mksubr projects/uefi/usr.bin/keylogin/keylogin.c projects/uefi/usr.bin/mail/util.c projects/uefi/usr.bin/netstat/inet.c projects/uefi/usr.bin/netstat/inet6.c projects/uefi/usr.bin/netstat/main.c projects/uefi/usr.bin/netstat/netisr.c projects/uefi/usr.bin/netstat/sctp.c projects/uefi/usr.bin/netstat/unix.c projects/uefi/usr.bin/newgrp/newgrp.1 projects/uefi/usr.bin/newgrp/newgrp.c projects/uefi/usr.bin/patch/util.c projects/uefi/usr.bin/procstat/procstat_files.c projects/uefi/usr.bin/systat/ifcmds.c projects/uefi/usr.bin/systat/ifstat.c projects/uefi/usr.bin/systat/main.c projects/uefi/usr.bin/systat/systat.1 projects/uefi/usr.bin/vacation/Makefile projects/uefi/usr.bin/xinstall/Makefile projects/uefi/usr.sbin/acpi/acpidb/Makefile projects/uefi/usr.sbin/acpi/iasl/Makefile projects/uefi/usr.sbin/bhyve/Makefile projects/uefi/usr.sbin/bhyve/bhyverun.c projects/uefi/usr.sbin/bhyve/mem.c projects/uefi/usr.sbin/bhyve/mem.h projects/uefi/usr.sbin/bhyve/pci_emul.c projects/uefi/usr.sbin/bhyve/pci_emul.h projects/uefi/usr.sbin/bhyve/pci_hostbridge.c projects/uefi/usr.sbin/bhyvectl/bhyvectl.c projects/uefi/usr.sbin/bsdconfig/Makefile projects/uefi/usr.sbin/crunch/crunchgen/crunchgen.c projects/uefi/usr.sbin/extattr/rmextattr.c projects/uefi/usr.sbin/jail/command.c projects/uefi/usr.sbin/kgmon/kgmon.c projects/uefi/usr.sbin/makefs/makefs.8 projects/uefi/usr.sbin/makefs/makefs.c projects/uefi/usr.sbin/makefs/makefs.h projects/uefi/usr.sbin/makefs/mtree.c projects/uefi/usr.sbin/makefs/walk.c projects/uefi/usr.sbin/mountd/mountd.c projects/uefi/usr.sbin/named/Makefile projects/uefi/usr.sbin/nfsd/nfsd.c projects/uefi/usr.sbin/pciconf/Makefile projects/uefi/usr.sbin/pciconf/pciconf.c projects/uefi/usr.sbin/pkg/pkg.c projects/uefi/usr.sbin/sendmail/Makefile projects/uefi/usr.sbin/sysrc/Makefile projects/uefi/usr.sbin/usbconfig/dump.c Directory Properties: projects/uefi/ (props changed) projects/uefi/cddl/contrib/opensolaris/ (props changed) projects/uefi/cddl/contrib/opensolaris/cmd/zfs/ (props changed) projects/uefi/cddl/contrib/opensolaris/lib/libzfs/ (props changed) projects/uefi/contrib/binutils/ (props changed) projects/uefi/contrib/libc++/ (props changed) projects/uefi/contrib/libcxxrt/ (props changed) projects/uefi/contrib/llvm/ (props changed) projects/uefi/contrib/llvm/tools/clang/ (props changed) projects/uefi/contrib/openbsm/ (props changed) projects/uefi/contrib/sendmail/ (props changed) projects/uefi/contrib/wpa/ (props changed) projects/uefi/crypto/heimdal/ (props changed) projects/uefi/crypto/openssl/ (props changed) projects/uefi/gnu/lib/ (props changed) projects/uefi/gnu/usr.bin/gdb/ (props changed) projects/uefi/lib/libc/ (props changed) projects/uefi/lib/libvmmapi/ (props changed) projects/uefi/sbin/ (props changed) projects/uefi/share/man/man4/ (props changed) projects/uefi/sys/ (props changed) projects/uefi/sys/amd64/vmm/ (props changed) projects/uefi/sys/boot/ (props changed) projects/uefi/sys/cddl/contrib/opensolaris/ (props changed) projects/uefi/sys/conf/ (props changed) projects/uefi/sys/contrib/dev/acpica/ (props changed) projects/uefi/sys/contrib/dev/acpica/common/ (props changed) projects/uefi/sys/contrib/dev/acpica/compiler/ (props changed) projects/uefi/sys/contrib/dev/acpica/components/debugger/ (props changed) projects/uefi/sys/contrib/dev/acpica/components/dispatcher/ (props changed) projects/uefi/sys/contrib/dev/acpica/components/events/ (props changed) projects/uefi/sys/contrib/dev/acpica/components/executer/ (props changed) projects/uefi/sys/contrib/dev/acpica/components/hardware/ (props changed) projects/uefi/sys/contrib/dev/acpica/components/namespace/ (props changed) projects/uefi/sys/contrib/dev/acpica/components/parser/ (props changed) projects/uefi/sys/contrib/dev/acpica/components/resources/ (props changed) projects/uefi/sys/contrib/dev/acpica/components/utilities/ (props changed) projects/uefi/sys/contrib/dev/acpica/include/ (props changed) projects/uefi/usr.bin/csup/ (props changed) projects/uefi/usr.bin/procstat/ (props changed) projects/uefi/usr.sbin/bhyve/ (props changed) projects/uefi/usr.sbin/bhyvectl/ (props changed) projects/uefi/usr.sbin/jail/ (props changed) Modified: projects/uefi/Makefile.inc1 ============================================================================== --- projects/uefi/Makefile.inc1 Sun Feb 24 22:40:33 2013 (r247244) +++ projects/uefi/Makefile.inc1 Sun Feb 24 23:12:33 2013 (r247245) @@ -673,6 +673,10 @@ _install-info= install-info _zoneinfo= zic tzsetup .endif +.if exists(/usr/sbin/nmtree) +_nmtree_itools= nmtree +.endif + ITOOLS= [ awk cap_mkdb cat chflags chmod chown \ date echo egrep find grep id install ${_install-info} \ ln lockf make mkdir mtree ${_nmtree_itools} mv pwd_mkdb \ @@ -1134,8 +1138,6 @@ _yacc= usr.bin/yacc .if ${BOOTSTRAPPING} < 1000026 _nmtree= lib/libnetbsd \ usr.sbin/nmtree -.else -_nmtree_itools= nmtree .endif .if ${BOOTSTRAPPING} < 1000027 @@ -1205,6 +1207,7 @@ bootstrap-tools: ${_sed} \ ${_yacc} \ ${_lex} \ + lib/libmd \ usr.bin/xinstall \ ${_gensnmptree} \ usr.sbin/config \ Modified: projects/uefi/ObsoleteFiles.inc ============================================================================== --- projects/uefi/ObsoleteFiles.inc Sun Feb 24 22:40:33 2013 (r247244) +++ projects/uefi/ObsoleteFiles.inc Sun Feb 24 23:12:33 2013 (r247245) @@ -45,6 +45,10 @@ OLD_DIRS+=usr/share/man/man1aout OLD_DIRS+=usr/share/man/cat1aout OLD_DIRS+=usr/share/man/en.ISO8859-1/cat1aout OLD_DIRS+=usr/share/man/en.UTF-8/cat1aout +# 20130110: bsd.compat.mk removed +OLD_FILES+=usr/share/mk/bsd.compat.mk +# 20130103: gnats-supfile removed +OLD_FILES+=usr/share/examples/cvsup/gnats-supfile # 20121230: libdisk removed OLD_FILES+=usr/share/man/man3/libdisk.3.gz usr/include/libdisk.h OLD_FILES+=usr/lib/libdisk.a usr/lib32/libdisk.a Modified: projects/uefi/bin/ps/ps.1 ============================================================================== --- projects/uefi/bin/ps/ps.1 Sun Feb 24 22:40:33 2013 (r247244) +++ projects/uefi/bin/ps/ps.1 Sun Feb 24 23:12:33 2013 (r247245) @@ -29,7 +29,7 @@ .\" @(#)ps.1 8.3 (Berkeley) 4/18/94 .\" $FreeBSD$ .\" -.Dd September 18, 2012 +.Dd February 7, 2013 .Dt PS 1 .Os .Sh NAME @@ -323,6 +323,7 @@ the include file .It Dv "P_INMEM" Ta No "0x10000000" Ta "Loaded into memory" .It Dv "P_SWAPPINGOUT" Ta No "0x20000000" Ta "Process is being swapped out" .It Dv "P_SWAPPINGIN" Ta No "0x40000000" Ta "Process is being swapped in" +.It Dv "P_PPTRACE" Ta No "0x80000000" Ta "Vforked child issued ptrace(PT_TRACEME)" .El .It Cm label The MAC label of the process. Modified: projects/uefi/bin/setfacl/setfacl.1 ============================================================================== --- projects/uefi/bin/setfacl/setfacl.1 Sun Feb 24 22:40:33 2013 (r247244) +++ projects/uefi/bin/setfacl/setfacl.1 Sun Feb 24 23:12:33 2013 (r247245) @@ -26,7 +26,7 @@ .\" .\" $FreeBSD$ .\" -.Dd September 2, 2012 +.Dd February 8, 2013 .Dt SETFACL 1 .Os .Sh NAME @@ -91,10 +91,16 @@ An error will be reported if any of the specified files cannot have a default entry (i.e.\& non-directories). This option is not applicable to NFSv4 ACLs. .It Fl m Ar entries -Modify the ACL entries on the specified files by adding new -entries and modifying existing ACL entries with the ACL entries -specified in -.Ar entries . +Modify the ACL on the specified file. +New entries will be added, and existing entries will be modified +according to the +.Ar entries +argument. +For NFSv4 ACLs, it is recommended to use the +.Fl a +and +.Fl x +options instead. .It Fl M Ar file Modify the ACL entries on the specified files by adding new ACL entries and modifying existing ACL entries with the ACL @@ -319,9 +325,9 @@ write_data execute .It p append_data -.It d -delete_child .It D +delete_child +.It d delete .It a read_attributes Modified: projects/uefi/bin/sh/eval.c ============================================================================== --- projects/uefi/bin/sh/eval.c Sun Feb 24 22:40:33 2013 (r247244) +++ projects/uefi/bin/sh/eval.c Sun Feb 24 23:12:33 2013 (r247245) @@ -174,6 +174,7 @@ evalstring(char *s, int flags) any = 1; } popstackmark(&smark); + setstackmark(&smark); } popfile(); popstackmark(&smark); @@ -296,10 +297,11 @@ evaltree(union node *n, int flags) } n = next; popstackmark(&smark); + setstackmark(&smark); } while (n != NULL); out: popstackmark(&smark); - if (pendingsigs) + if (pendingsig) dotrap(); if (eflag && exitstatus != 0 && do_etest) exitshell(exitstatus); Modified: projects/uefi/bin/sh/jobs.c ============================================================================== --- projects/uefi/bin/sh/jobs.c Sun Feb 24 22:40:33 2013 (r247244) +++ projects/uefi/bin/sh/jobs.c Sun Feb 24 23:12:33 2013 (r247245) @@ -521,7 +521,7 @@ waitcmd(int argc, char **argv) } while (dowait(DOWAIT_BLOCK | DOWAIT_SIG, (struct job *)NULL) != -1); in_waitcmd--; - return 0; + return pendingsig + 128; } @@ -1030,7 +1030,7 @@ dowait(int mode, struct job *job) int wflags; int restore_sigchld; - TRACE(("dowait(%d) called\n", block)); + TRACE(("dowait(%d, %p) called\n", mode, job)); restore_sigchld = 0; if ((mode & DOWAIT_SIG) != 0) { sigfillset(&mask); Modified: projects/uefi/bin/sh/main.c ============================================================================== --- projects/uefi/bin/sh/main.c Sun Feb 24 22:40:33 2013 (r247244) +++ projects/uefi/bin/sh/main.c Sun Feb 24 23:12:33 2013 (r247245) @@ -196,7 +196,7 @@ cmdloop(int top) TRACE(("cmdloop(%d) called\n", top)); setstackmark(&smark); for (;;) { - if (pendingsigs) + if (pendingsig) dotrap(); inter = 0; if (iflag && top) { Modified: projects/uefi/bin/sh/mksyntax.c ============================================================================== --- projects/uefi/bin/sh/mksyntax.c Sun Feb 24 22:40:33 2013 (r247244) +++ projects/uefi/bin/sh/mksyntax.c Sun Feb 24 23:12:33 2013 (r247245) @@ -103,29 +103,19 @@ static char writer[] = "\ static FILE *cfile; static FILE *hfile; -static const char *syntax[513]; -static int base; -static int size; /* number of values which a char variable can have */ -static int nbits; /* number of bits in a character */ -static int digit_contig;/* true if digits are contiguous */ -static void filltable(const char *); -static void init(void); +static void add_default(void); +static void finish(void); +static void init(const char *); static void add(const char *, const char *); -static void print(const char *); static void output_type_macros(void); -static void digit_convert(void); int main(int argc __unused, char **argv __unused) { - char c; - char d; - int sign; int i; char buf[80]; int pos; - static char digit[] = "0123456789"; /* Create output files */ if ((cfile = fopen("syntax.c", "w")) == NULL) { @@ -139,32 +129,8 @@ main(int argc __unused, char **argv __un fputs(writer, hfile); fputs(writer, cfile); - /* Determine the characteristics of chars. */ - c = -1; - sign = (c > 0) ? 0 : 1; - for (nbits = 1 ; ; nbits++) { - d = (1 << nbits) - 1; - if (d == c) - break; - } -#if 0 - printf("%s %d bit chars\n", sign? "signed" : "unsigned", nbits); -#endif - if (nbits > 9) { - fputs("Characters can't have more than 9 bits\n", stderr); - exit(2); - } - size = (1 << nbits) + 1; - base = 1; - if (sign) - base += 1 << (nbits - 1); - digit_contig = 1; - for (i = 0 ; i < 10 ; i++) { - if (digit[i] != '0' + i) - digit_contig = 0; - } - fputs("#include \n", hfile); + fputs("#include \n\n", hfile); /* Generate the #define statements in the header file */ fputs("/* Syntax classes */\n", hfile); @@ -185,8 +151,8 @@ main(int argc __unused, char **argv __un fprintf(hfile, "/* %s */\n", is_entry[i].comment); } putc('\n', hfile); - fprintf(hfile, "#define SYNBASE %d\n", base); - fprintf(hfile, "#define PEOF %d\n\n", -base); + fputs("#define SYNBASE (1 - CHAR_MIN)\n", hfile); + fputs("#define PEOF -SYNBASE\n\n", hfile); putc('\n', hfile); fputs("#define BASESYNTAX (basesyntax + SYNBASE)\n", hfile); fputs("#define DQSYNTAX (dqsyntax + SYNBASE)\n", hfile); @@ -197,10 +163,13 @@ main(int argc __unused, char **argv __un putc('\n', hfile); /* Generate the syntax tables. */ + fputs("#include \"parser.h\"\n", cfile); fputs("#include \"shell.h\"\n", cfile); fputs("#include \"syntax.h\"\n\n", cfile); - init(); + fputs("/* syntax table used when not in quotes */\n", cfile); + init("basesyntax"); + add_default(); add("\n", "CNL"); add("\\", "CBACK"); add("'", "CSQUOTE"); @@ -209,9 +178,11 @@ main(int argc __unused, char **argv __un add("$", "CVAR"); add("}", "CENDVAR"); add("<>();&| \t", "CSPCL"); - print("basesyntax"); - init(); + finish(); + fputs("\n/* syntax table used when in double quotes */\n", cfile); + init("dqsyntax"); + add_default(); add("\n", "CNL"); add("\\", "CBACK"); add("\"", "CENDQUOTE"); @@ -220,17 +191,21 @@ main(int argc __unused, char **argv __un add("}", "CENDVAR"); /* ':/' for tilde expansion, '-^]' for [a\-x] pattern ranges */ add("!*?[]=~:/-^", "CCTL"); - print("dqsyntax"); - init(); + finish(); + fputs("\n/* syntax table used when in single quotes */\n", cfile); + init("sqsyntax"); + add_default(); add("\n", "CNL"); add("\\", "CSBACK"); add("'", "CENDQUOTE"); /* ':/' for tilde expansion, '-^]' for [a\-x] pattern ranges */ add("!*?[]=~:/-^", "CCTL"); - print("sqsyntax"); - init(); + finish(); + fputs("\n/* syntax table used when in arithmetic */\n", cfile); + init("arisyntax"); + add_default(); add("\n", "CNL"); add("\\", "CBACK"); add("`", "CBQUOTE"); @@ -239,114 +214,108 @@ main(int argc __unused, char **argv __un add("}", "CENDVAR"); add("(", "CLP"); add(")", "CRP"); - print("arisyntax"); - filltable("0"); + finish(); + fputs("\n/* character classification table */\n", cfile); + init("is_type"); add("0123456789", "ISDIGIT"); add("abcdefghijklmnopqrstuvwxyz", "ISLOWER"); add("ABCDEFGHIJKLMNOPQRSTUVWXYZ", "ISUPPER"); add("_", "ISUNDER"); add("#?$!-*@", "ISSPECL"); - print("is_type"); - if (! digit_contig) - digit_convert(); + finish(); + exit(0); } - /* - * Clear the syntax table. + * Output the header and declaration of a syntax table. */ static void -filltable(const char *dftval) +init(const char *name) { - int i; + fprintf(hfile, "extern const char %s[];\n", name); + fprintf(cfile, "const char %s[SYNBASE + CHAR_MAX + 1] = {\n", name); +} + - for (i = 0 ; i < size ; i++) - syntax[i] = dftval; +static void +add_one(const char *key, const char *type) +{ + fprintf(cfile, "\t[SYNBASE + %s] = %s,\n", key, type); } /* - * Initialize the syntax table with default values. + * Add default values to the syntax table. */ static void -init(void) +add_default(void) { - filltable("CWORD"); - syntax[0] = "CEOF"; - syntax[base + CTLESC] = "CCTL"; - syntax[base + CTLVAR] = "CCTL"; - syntax[base + CTLENDVAR] = "CCTL"; - syntax[base + CTLBACKQ] = "CCTL"; - syntax[base + CTLBACKQ + CTLQUOTE] = "CCTL"; - syntax[base + CTLARI] = "CCTL"; - syntax[base + CTLENDARI] = "CCTL"; - syntax[base + CTLQUOTEMARK] = "CCTL"; - syntax[base + CTLQUOTEEND] = "CCTL"; + add_one("PEOF", "CEOF"); + add_one("CTLESC", "CCTL"); + add_one("CTLVAR", "CCTL"); + add_one("CTLENDVAR", "CCTL"); + add_one("CTLBACKQ", "CCTL"); + add_one("CTLBACKQ + CTLQUOTE", "CCTL"); + add_one("CTLARI", "CCTL"); + add_one("CTLENDARI", "CCTL"); + add_one("CTLQUOTEMARK", "CCTL"); + add_one("CTLQUOTEEND", "CCTL"); } /* - * Add entries to the syntax table. + * Output the footer of a syntax table. */ static void -add(const char *p, const char *type) +finish(void) { - while (*p) - syntax[*p++ + base] = type; + fputs("};\n", cfile); } - /* - * Output the syntax table. + * Add entries to the syntax table. */ static void -print(const char *name) +add(const char *p, const char *type) { - int i; - int col; - - fprintf(hfile, "extern const char %s[];\n", name); - fprintf(cfile, "const char %s[%d] = {\n", name, size); - col = 0; - for (i = 0 ; i < size ; i++) { - if (i == 0) { - fputs(" ", cfile); - } else if ((i & 03) == 0) { - fputs(",\n ", cfile); - col = 0; - } else { - putc(',', cfile); - while (++col < 9 * (i & 03)) - putc(' ', cfile); + for (; *p; ++p) { + char c = *p; + switch (c) { + case '\t': c = 't'; break; + case '\n': c = 'n'; break; + case '\'': c = '\''; break; + case '\\': c = '\\'; break; + + default: + fprintf(cfile, "\t[SYNBASE + '%c'] = %s,\n", c, type); + continue; } - fputs(syntax[i], cfile); - col += strlen(syntax[i]); + fprintf(cfile, "\t[SYNBASE + '\\%c'] = %s,\n", c, type); } - fputs("\n};\n", cfile); } - /* * Output character classification macros (e.g. is_digit). If digits are * contiguous, we can test for them quickly. */ static const char *macro[] = { - "#define is_digit(c)\t((is_type+SYNBASE)[(int)c] & ISDIGIT)", + "#define is_digit(c)\t((unsigned int)((c) - '0') <= 9)", "#define is_eof(c)\t((c) == PEOF)", "#define is_alpha(c)\t((is_type+SYNBASE)[(int)c] & (ISUPPER|ISLOWER))", "#define is_name(c)\t((is_type+SYNBASE)[(int)c] & (ISUPPER|ISLOWER|ISUNDER))", "#define is_in_name(c)\t((is_type+SYNBASE)[(int)c] & (ISUPPER|ISLOWER|ISUNDER|ISDIGIT))", "#define is_special(c)\t((is_type+SYNBASE)[(int)c] & (ISSPECL|ISDIGIT))", + "#define digit_val(c)\t((c) - '0')", NULL }; @@ -355,41 +324,6 @@ output_type_macros(void) { const char **pp; - if (digit_contig) - macro[0] = "#define is_digit(c)\t((unsigned int)((c) - '0') <= 9)"; for (pp = macro ; *pp ; pp++) fprintf(hfile, "%s\n", *pp); - if (digit_contig) - fputs("#define digit_val(c)\t((c) - '0')\n", hfile); - else - fputs("#define digit_val(c)\t(digit_value[c])\n", hfile); -} - - - -/* - * Output digit conversion table (if digits are not contiguous). - */ - -static void -digit_convert(void) -{ - int maxdigit; - static char digit[] = "0123456789"; - char *p; - int i; - - maxdigit = 0; - for (p = digit ; *p ; p++) - if (*p > maxdigit) - maxdigit = *p; - fputs("extern const char digit_value[];\n", hfile); - fputs("\n\nconst char digit_value[] = {\n", cfile); - for (i = 0 ; i <= maxdigit ; i++) { - for (p = digit ; *p && *p != i ; p++); - if (*p == '\0') - p = digit; - fprintf(cfile, " %d,\n", (int)(p - digit)); - } - fputs("};\n", cfile); } Modified: projects/uefi/bin/sh/parser.h ============================================================================== --- projects/uefi/bin/sh/parser.h Sun Feb 24 22:40:33 2013 (r247244) +++ projects/uefi/bin/sh/parser.h Sun Feb 24 23:12:33 2013 (r247245) @@ -39,7 +39,7 @@ #define CTLENDVAR '\371' #define CTLBACKQ '\372' #define CTLQUOTE 01 /* ored with CTLBACKQ code if in quotes */ -/* CTLBACKQ | CTLQUOTE == '\205' */ +/* CTLBACKQ | CTLQUOTE == '\373' */ #define CTLARI '\374' #define CTLENDARI '\375' #define CTLQUOTEMARK '\376' Modified: projects/uefi/bin/sh/trap.c ============================================================================== --- projects/uefi/bin/sh/trap.c Sun Feb 24 22:40:33 2013 (r247244) +++ projects/uefi/bin/sh/trap.c Sun Feb 24 23:12:33 2013 (r247245) @@ -73,7 +73,7 @@ __FBSDID("$FreeBSD$"); MKINIT char sigmode[NSIG]; /* current value of signal */ -int pendingsigs; /* indicates some signal received */ +volatile sig_atomic_t pendingsig; /* indicates some signal received */ int in_dotrap; /* do we execute in a trap handler? */ static char *volatile trap[NSIG]; /* trap handler commands */ static volatile sig_atomic_t gotsig[NSIG]; @@ -388,22 +388,25 @@ onsig(int signo) return; } - if (signo != SIGCHLD || !ignore_sigchld) - gotsig[signo] = 1; - pendingsigs++; - /* If we are currently in a wait builtin, prepare to break it */ - if ((signo == SIGINT || signo == SIGQUIT) && in_waitcmd != 0) - breakwaitcmd = 1; - /* - * If a trap is set, not ignored and not the null command, we need - * to make sure traps are executed even when a child blocks signals. - */ - if (Tflag && - trap[signo] != NULL && - ! (trap[signo][0] == '\0') && - ! (trap[signo][0] == ':' && trap[signo][1] == '\0')) + if ((signo == SIGINT || signo == SIGQUIT) && in_waitcmd != 0) { breakwaitcmd = 1; + pendingsig = signo; + } + + if (trap[signo] != NULL && trap[signo][0] != '\0' && + (signo != SIGCHLD || !ignore_sigchld)) { + gotsig[signo] = 1; + pendingsig = signo; + + /* + * If a trap is set, not ignored and not the null command, we + * need to make sure traps are executed even when a child + * blocks signals. + */ + if (Tflag && !(trap[signo][0] == ':' && trap[signo][1] == '\0')) + breakwaitcmd = 1; + } #ifndef NO_HISTORY if (signo == SIGWINCH) @@ -424,7 +427,7 @@ dotrap(void) in_dotrap++; for (;;) { - pendingsigs = 0; + pendingsig = 0; for (i = 1; i < NSIG; i++) { if (gotsig[i]) { gotsig[i] = 0; Modified: projects/uefi/bin/sh/trap.h ============================================================================== --- projects/uefi/bin/sh/trap.h Sun Feb 24 22:40:33 2013 (r247244) +++ projects/uefi/bin/sh/trap.h Sun Feb 24 23:12:33 2013 (r247245) @@ -33,7 +33,7 @@ * $FreeBSD$ */ -extern int pendingsigs; +extern volatile sig_atomic_t pendingsig; extern int in_dotrap; extern volatile sig_atomic_t gotwinch; Modified: projects/uefi/cddl/contrib/opensolaris/cmd/dtrace/dtrace.c ============================================================================== --- projects/uefi/cddl/contrib/opensolaris/cmd/dtrace/dtrace.c Sun Feb 24 22:40:33 2013 (r247244) +++ projects/uefi/cddl/contrib/opensolaris/cmd/dtrace/dtrace.c Sun Feb 24 23:12:33 2013 (r247245) @@ -195,6 +195,13 @@ fatal(const char *fmt, ...) verror(fmt, ap); va_end(ap); + /* + * Close the DTrace handle to ensure that any controlled processes are + * correctly restored and continued. + */ + if (g_dtp) + dtrace_close(g_dtp); + exit(E_ERROR); } Modified: projects/uefi/cddl/contrib/opensolaris/cmd/zdb/zdb.c ============================================================================== --- projects/uefi/cddl/contrib/opensolaris/cmd/zdb/zdb.c Sun Feb 24 22:40:33 2013 (r247244) +++ projects/uefi/cddl/contrib/opensolaris/cmd/zdb/zdb.c Sun Feb 24 23:12:33 2013 (r247245) @@ -983,7 +983,7 @@ visit_indirect(spa_t *spa, const dnode_p arc_buf_t *buf; uint64_t fill = 0; - err = arc_read_nolock(NULL, spa, bp, arc_getbuf_func, &buf, + err = arc_read(NULL, spa, bp, arc_getbuf_func, &buf, ZIO_PRIORITY_ASYNC_READ, ZIO_FLAG_CANFAIL, &flags, zb); if (err) return (err); @@ -2001,9 +2001,8 @@ zdb_count_block(zdb_cb_t *zcb, zilog_t * bp, NULL, NULL, ZIO_FLAG_CANFAIL)), ==, 0); } -/* ARGSUSED */ static int -zdb_blkptr_cb(spa_t *spa, zilog_t *zilog, const blkptr_t *bp, arc_buf_t *pbuf, +zdb_blkptr_cb(spa_t *spa, zilog_t *zilog, const blkptr_t *bp, const zbookmark_t *zb, const dnode_phys_t *dnp, void *arg) { zdb_cb_t *zcb = arg; @@ -2410,7 +2409,7 @@ typedef struct zdb_ddt_entry { /* ARGSUSED */ static int zdb_ddt_add_cb(spa_t *spa, zilog_t *zilog, const blkptr_t *bp, - arc_buf_t *pbuf, const zbookmark_t *zb, const dnode_phys_t *dnp, void *arg) + const zbookmark_t *zb, const dnode_phys_t *dnp, void *arg) { avl_tree_t *t = arg; avl_index_t where; Modified: projects/uefi/cddl/contrib/opensolaris/cmd/zfs/zfs.8 ============================================================================== --- projects/uefi/cddl/contrib/opensolaris/cmd/zfs/zfs.8 Sun Feb 24 22:40:33 2013 (r247244) +++ projects/uefi/cddl/contrib/opensolaris/cmd/zfs/zfs.8 Sun Feb 24 23:12:33 2013 (r247245) @@ -1,5 +1,5 @@ '\" te -.\" Copyright (c) 2012, Martin Matuska . +.\" Copyright (c) 2013, Martin Matuska . .\" All Rights Reserved. .\" .\" The contents of this file are subject to the terms of the @@ -19,15 +19,16 @@ .\" .\" Copyright (c) 2010, Sun Microsystems, Inc. All Rights Reserved. .\" Copyright (c) 2012 by Delphix. All rights reserved. -.\" Copyright (c) 2012 Nexenta Systems, Inc. All Rights Reserved. .\" Copyright (c) 2012, Joyent, Inc. All rights reserved. .\" Copyright (c) 2011, Pawel Jakub Dawidek .\" Copyright (c) 2012, Glen Barber .\" Copyright (c) 2012, Bryan Drewery +.\" Copyright (c) 2013 by Saso Kiselkov. All rights reserved. +.\" Copyright (c) 2013 Nexenta Systems, Inc. All Rights Reserved. .\" .\" $FreeBSD$ .\" -.Dd November 26, 2012 +.Dd February 10, 2013 .Dt ZFS 8 .Os .Sh NAME @@ -39,14 +40,12 @@ .Nm .Cm create .Op Fl pu -.Op Fl o Ar property Ns = Ns Ar value -.Ar ... filesystem +.Oo Fl o Ar property Ns = Ns Ar value Oc Ns ... Ar filesystem .Nm .Cm create .Op Fl ps .Op Fl b Ar blocksize -.Op Fl o Ar property Ns = Ns Ar value -.Ar ... +.Oo Fl o Ar property Ns = Ns Ar value Oc Ns ... .Fl V .Ar size volume .Nm @@ -59,13 +58,13 @@ .Sm off .Ar snapshot .Op % Ns Ar snapname -.Op , Ns Ar ... +.Op , Ns ... .Sm on .Nm .Cm snapshot .Op Fl r -.Op Fl o Ar property Ns = Ns Ar value -.Ar ... filesystem@snapname Ns | Ns Ar volume@snapname +.Oo Fl o Ar property Ns = Ns Ar value Oc Ns ... +.Ar filesystem@snapname Ns | Ns Ar volume@snapname .Nm .Cm rollback .Op Fl rRf @@ -73,8 +72,8 @@ .Nm .Cm clone .Op Fl p -.Op Fl o Ar property Ns = Ns Ar value -.Ar ... snapshot filesystem Ns | Ns Ar volume +.Oo Fl o Ar property Ns = Ns Ar value Oc Ns ... +.Ar snapshot filesystem Ns | Ns Ar volume .Nm .Cm promote .Ar clone-filesystem @@ -102,31 +101,29 @@ .Cm list .Op Fl r Ns | Ns Fl d Ar depth .Op Fl H -.Op Fl o Ar property Ns Op , Ns Ar ... -.Op Fl t Ar type Ns Op , Ns Ar ... -.Op Fl s Ar property -.Ar ... -.Op Fl S Ar property -.Ar ... +.Op Fl o Ar property Ns Oo , Ns property Ns Oc Ns ... +.Op Fl t Ar type Ns Oo , Ns type Ns Oc Ns ... +.Oo Fl s Ar property Oc Ns ... +.Oo Fl S Ar property Oc Ns ... .Ar filesystem Ns | Ns Ar volume Ns | Ns Ar snapshot .Nm .Cm set .Ar property Ns = Ns Ar value -.Ar filesystem Ns | Ns Ar volume Ns | Ns Ar snapshot +.Ar filesystem Ns | Ns Ar volume Ns | Ns Ar snapshot Ns ... .Nm .Cm get .Op Fl r Ns | Ns Fl d Ar depth .Op Fl Hp -.Op Fl o Ar all | field Ns Op , Ns Ar ... -.Op Fl t Ar type Ns Op , Ns Ar ... -.Op Fl s Ar source Ns Op , Ns Ar ... -.Ar all | property Ns Op , Ns Ar ... -.Ar filesystem Ns | Ns Ar volume Ns | Ns Ar snapshot +.Op Fl o Ar all | field Ns Oo , Ns Ar field Oc Ns ... +.Op Fl t Ar type Ns Oo Ns , Ar type Oc Ns ... +.Op Fl s Ar source Ns Oo Ns , Ns Ar source Oc Ns ... +.Ar all | property Ns Oo Ns , Ns Ar property Oc Ns ... +.Ar filesystem Ns | Ns Ar volume Ns | Ns Ar snapshot Ns ... .Nm .Cm inherit .Op Fl rS .Ar property -.Ar filesystem Ns | Ns Ar volume Ns | Ns Ar snapshot +.Ar filesystem Ns | Ns Ar volume Ns | Ns Ar snapshot Ns ... .Nm .Cm upgrade .Op Fl v @@ -138,29 +135,25 @@ .Nm .Cm userspace .Op Fl Hinp -.Op Fl o Ar field Ns Op , Ns Ar ... -.Op Fl s Ar field -.Ar ... -.Op Fl S Ar field -.Ar ... -.Op Fl t Ar type Ns Op , Ns Ar ... +.Op Fl o Ar field Ns Oo , Ns Ar field Oc Ns ... +.Oo Fl s Ar field Oc Ns ... +.Oo Fl S Ar field Oc Ns ... +.Op Fl t Ar type Ns Oo Ns , Ns Ar type Oc Ns ... .Ar filesystem Ns | Ns Ar snapshot .Nm .Cm groupspace .Op Fl Hinp -.Op Fl o Ar field Ns Op , Ns Ar ... -.Op Fl s Ar field -.Ar ... -.Op Fl S Ar field -.Ar ... -.Op Fl t Ar type Ns Op , Ns Ar ... +.Op Fl o Ar field Ns Oo , Ns field Oc Ns ... +.Oo Fl s Ar field Oc Ns ... +.Oo Fl S Ar field Oc Ns ... +.Op Fl t Ar type Ns Oo Ns , Ns Ar type Oc Ns ... .Ar filesystem Ns | Ns Ar snapshot .Nm .Cm mount .Nm .Cm mount .Op Fl vO -.Op Fl o Ar property Ns Op , Ns Ar ... +.Op Fl o Ar property Ns Oo , Ns Ar property Oc Ns ... .Fl a | Ar filesystem .Nm .Cm unmount @@ -192,63 +185,71 @@ .Nm .Cm allow .Op Fl ldug -.Cm everyone Ns | Ns Ar user Ns | Ns Ar group Ns Op , Ns Ar ... -.Ar perm Ns | Ns Ar @setname Ns Op , Ns Ar ... +.Ar user Ns | Ns Ar group Ns Oo Ns , Ns Ar user Ns | Ns Ar group Oc Ns ... +.Ar perm Ns | Ns Ar @setname Ns +.Oo Ns , Ns Ar perm Ns | Ns Ar @setname Oc Ns ... .Ar filesystem Ns | Ns Ar volume .Nm .Cm allow .Op Fl ld -.Fl e -.Ar perm Ns | Ns Ar @setname Ns Op , Ns Ar ... +.Fl e Ns | Ns Cm everyone +.Ar perm Ns | Ns Ar @setname Ns Op Ns , Ns Ar perm Ns | Ns Ar @setname Ns +.Ns ... .Ar filesystem Ns | Ns Ar volume .Nm .Cm allow .Fl c -.Ar perm Ns | Ns Ar @setname Ns Op , Ns Ar ... +.Ar perm Ns | Ns Ar @setname Ns Op Ns , Ns Ar perm Ns | Ns Ar @setname Ns +.Ns ... .Ar filesystem Ns | Ns Ar volume .Nm .Cm allow .Fl s .Ar @setname -.Ar perm Ns | Ns Ar @setname Ns Op , Ns Ar ... +.Ar perm Ns | Ns Ar @setname Ns Op Ns , Ns Ar perm Ns | Ns Ar @setname Ns +.Ns ... .Ar filesystem Ns | Ns Ar volume .Nm .Cm unallow .Op Fl rldug -.Cm everyone Ns | Ns Ar user Ns | Ns Ar group Ns Op , Ns Ar ... -.Op Ar perm Ns | Ns Ar @setname Ns Op , Ns Ar ... +.Ar user Ns | Ns Ar group Ns Oo Ns , Ns Ar user Ns | Ns Ar group Oc Ns ... +.Oo Ar perm Ns | Ns Ar @setname Ns Op , Ns Ar perm Ns | Ns Ar @setname Ns +.Ns ... Oc .Ar filesystem Ns | Ns Ar volume .Nm .Cm unallow .Op Fl rld -.Fl e -.Op Ar perm Ns | Ns Ar @setname Ns Op , Ns Ar ... +.Fl e Ns | Ns Cm everyone +.Oo Ar perm Ns | Ns Ar @setname Ns Op , Ns Ar perm Ns | Ns Ar @setname Ns +.Ns ... Oc .Ar filesystem Ns | Ns Ar volume .Nm .Cm unallow .Op Fl r .Fl c -.Op Ar perm Ns | Ns Ar @setname Ns Op , Ns Ar ... +.Oo Ar perm Ns | Ns Ar @setname Ns Op , Ns Ar perm Ns | Ns Ar @setname Ns +.Ns ... Oc .Ar filesystem Ns | Ns Ar volume .Nm .Cm unallow .Op Fl r .Fl s .Ar @setname -.Ar perm Ns | Ns Ar @setname Ns Op , Ns Ar ... +.Oo Ar perm Ns | Ns Ar @setname Ns Op , Ns Ar perm Ns | Ns Ar @setname Ns +.Ns ... Oc .Ar filesystem Ns | Ns Ar volume .Nm .Cm hold .Op Fl r -.Ar tag snapshot ... +.Ar tag snapshot Ns ... .Nm .Cm holds .Op Fl r -.Ar snapshot ... +.Ar snapshot Ns ... .Nm .Cm release .Op Fl r -.Ar tag snapshot ... +.Ar tag snapshot Ns ... .Nm .Cm diff .Op Fl FHt @@ -866,7 +867,7 @@ but this may change in future releases). disables integrity checking on user data. Disabling checksums is .Em NOT a recommended practice. -.It Sy compression Ns = Ns Cm on | off | lzjb | gzip | gzip- Ns Ar N | Cm zle +.It Sy compression Ns = Ns Cm on | off | lzjb | gzip | gzip- Ns Ar N | zle | Cm lz4 Controls the compression algorithm used for this dataset. The .Cm lzjb compression algorithm is optimized for performance while providing decent data @@ -894,6 +895,26 @@ The .Cm zle compression algorithm compresses runs of zeros. .Pp +The +.Sy lz4 +compression algorithm is a high-performance replacement +for the +.Sy lzjb +algorithm. It features significantly faster +compression and decompression, as well as a moderately higher +compression ratio than +.Sy lzjb , +but can only be used on pools with +the +.Sy lz4_compress +feature set to +.Sy enabled . +See +.Xr zpool-features 7 +for details on ZFS feature flags and the +.Sy lz4_compress +feature. +.Pp This property can also be referred to by its shortened column name .Cm compress . Changing this property affects only newly-written data. @@ -1144,7 +1165,7 @@ When the .Sy sharenfs property is changed for a dataset, the .Xr mountd 8 -dameon is reloaded. +daemon is reloaded. .It Sy logbias Ns = Ns Cm latency | throughput Provide a hint to .Tn ZFS @@ -1390,8 +1411,8 @@ Displays a help message. .Nm .Cm create .Op Fl pu -.Op Fl o Ar property Ns = Ns Ar value -.Ar ... filesystem +.Oo Fl o Ar property Ns = Ns Ar value Oc Ns ... +.Ar filesystem .Xc .Pp Creates a new @@ -1428,8 +1449,7 @@ options. .Cm create .Op Fl ps .Op Fl b Ar blocksize -.Op Fl o Ar property Ns = Ns Ar value -.Ar ... +.Oo Fl o Ar property Ns = Ns Ar value Oc Ns ... .Fl V .Ar size volume .Xc @@ -1529,7 +1549,7 @@ behavior for mounted file systems in use .Sm off .Ar snapshot .Op % Ns Ar snapname -.Op , Ns Ar ... +.Op , Ns ... .Sm on .Xc .Pp @@ -1590,8 +1610,7 @@ behavior for mounted file systems in use .Nm .Cm snapshot .Op Fl r -.Op Fl o Ar property Ns = Ns Ar value -.Ar ... +.Oo Fl o Ar property Ns = Ns Ar value Oc Ns ... .Ar filesystem@snapname Ns | Ns volume@snapname .Xc .Pp @@ -1638,8 +1657,8 @@ option to force an unmount of any clone .Nm .Cm clone .Op Fl p -.Op Fl o Ar property Ns = Ns Ar value -.Ar ... snapshot filesystem Ns | Ns Ar volume +.Oo Fl o Ar property Ns = Ns Ar value Oc Ns ... +.Ar snapshot filesystem Ns | Ns Ar volume .Xc .Pp Creates a clone of the given snapshot. See the @@ -1742,13 +1761,11 @@ only dataset that can be renamed recursi .Cm list .Op Fl r Ns | Ns Fl d Ar depth .Op Fl H -.Op Fl o Ar property Ns Op , Ns Ar ... -.Op Fl t Ar type Ns Op , Ns Ar ... -.Op Fl s Ar property -.Ar ... -.Op Fl S Ar property -.Ar ... -.Ar filesystem Ns | Ns Ar volume Ns | Ns Ar snapshot +.Op Fl o Ar property Ns Oo , Ns Ar property Oc Ns ... +.Op Fl t Ar type Ns Oo , Ns Ar type Oc Ns ... +.Oo Fl s Ar property Oc Ns ... +.Oo Fl S Ar property Oc Ns ... +.Ar filesystem Ns | Ns Ar volume Ns | Ns Ar snapshot Ns ... .Xc .Pp Lists the property information for the given datasets in tabular form. If @@ -1774,7 +1791,7 @@ will display only the dataset and its di .It Fl H Used for scripting mode. Do not print headers and separate fields by a single tab instead of arbitrary white space. -.It Fl o Ar property Ns Op , Ns Ar ... +.It Fl o Ar property Ns Oo , Ns Ar property Oc Ns ... A comma-separated list of properties to display. The property must be: .Bl -bullet -offset 2n .It @@ -1798,7 +1815,7 @@ shortcut for specifying .Sy filesystem,volume syntax. .El -.It Fl t Ar type Ns Op , Ns Ar ... +.It Fl t Ar type Ns Oo , Ns Ar type Oc Ns ... A comma-separated list of types to display, where *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-projects@FreeBSD.ORG Mon Feb 25 00:04:03 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id D91BF13B; Mon, 25 Feb 2013 00:04:03 +0000 (UTC) (envelope-from benno@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id BB9C4F17; Mon, 25 Feb 2013 00:04:03 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r1P043bv040078; Mon, 25 Feb 2013 00:04:03 GMT (envelope-from benno@svn.freebsd.org) Received: (from benno@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r1P043Wa040074; Mon, 25 Feb 2013 00:04:03 GMT (envelope-from benno@svn.freebsd.org) Message-Id: <201302250004.r1P043Wa040074@svn.freebsd.org> From: Benno Rice Date: Mon, 25 Feb 2013 00:04:03 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247247 - in projects/uefi/sys/amd64: amd64 include X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 25 Feb 2013 00:04:03 -0000 Author: benno Date: Mon Feb 25 00:04:02 2013 New Revision: 247247 URL: http://svnweb.freebsd.org/changeset/base/247247 Log: Rearrange early pmap bootstrap so we have real page tables before cninit. Modified: projects/uefi/sys/amd64/amd64/machdep.c projects/uefi/sys/amd64/amd64/pmap.c projects/uefi/sys/amd64/include/pmap.h Modified: projects/uefi/sys/amd64/amd64/machdep.c ============================================================================== --- projects/uefi/sys/amd64/amd64/machdep.c Sun Feb 24 23:57:52 2013 (r247246) +++ projects/uefi/sys/amd64/amd64/machdep.c Mon Feb 25 00:04:02 2013 (r247247) @@ -1525,16 +1525,13 @@ add_efi_map_entries(struct efi_header *e * * XXX first should be vm_paddr_t. */ -static void -getmemsize(caddr_t kmdp, u_int64_t first) +static int +parsememmap(caddr_t kmdp, u_int64_t first, vm_paddr_t *physmap) { - int i, physmap_idx, pa_indx, da_indx; - vm_paddr_t pa, physmap[PHYSMAP_SIZE]; - u_long physmem_start, physmem_tunable, memtest; - pt_entry_t *pte; + int i, physmap_idx; + u_long physmem_tunable; struct bios_smap *smapbase; struct efi_header *efihdr; - quad_t dcons_addr, dcons_size; bzero(physmap, sizeof(physmap)); basemem = 0; @@ -1548,12 +1545,8 @@ getmemsize(caddr_t kmdp, u_int64_t first panic("No BIOS smap or EFI map info from loader!"); if (efihdr != NULL) { - if (boothowto & RB_VERBOSE) - printf("Using EFI memory map.\n"); add_efi_map_entries(efihdr, physmap, &physmap_idx); } else { - if (boothowto & RB_VERBOSE) - printf("Using BIOS SMAP memory map.\n"); add_smap_entries(smapbase, physmap, &physmap_idx); } @@ -1591,26 +1584,38 @@ getmemsize(caddr_t kmdp, u_int64_t first Maxmem = atop(physmem_tunable); /* - * By default enable the memory test on real hardware, and disable - * it if we appear to be running in a VM. This avoids touching all - * pages unnecessarily, which doesn't matter on real hardware but is - * bad for shared VM hosts. Use a general name so that - * one could eventually do more with the code than just disable it. - */ - memtest = (vm_guest > VM_GUEST_NO) ? 0 : 1; - TUNABLE_ULONG_FETCH("hw.memtest.tests", &memtest); - - /* * Don't allow MAXMEM or hw.physmem to extend the amount of memory * in the system. */ if (Maxmem > atop(physmap[physmap_idx + 1])) Maxmem = atop(physmap[physmap_idx + 1]); + return (physmap_idx); +} + +static void +getmemsize(vm_paddr_t first, vm_paddr_t *physmap, int physmap_idx) +{ + u_long physmem_start, memtest; + int i, pa_indx, da_indx; + vm_paddr_t pa; + pt_entry_t *pte; + quad_t dcons_addr, dcons_size; + if (atop(physmap[physmap_idx + 1]) != Maxmem && (boothowto & RB_VERBOSE)) printf("Physical memory use set to %ldK\n", Maxmem * 4); + /* + * By default enable the memory test on real hardware, and disable + * it if we appear to be running in a VM. This avoids touching all + * pages unnecessarily, which doesn't matter on real hardware but is + * bad for shared VM hosts. Use a general name so that + * one could eventually do more with the code than just disable it. + */ + memtest = (vm_guest > VM_GUEST_NO) ? 0 : 1; + TUNABLE_ULONG_FETCH("hw.memtest.tests", &memtest); + /* call pmap initialization to make new kernel address space */ pmap_bootstrap(&first); @@ -1797,6 +1802,8 @@ hammer_time(u_int64_t modulep, u_int64_t u_int64_t msr; char *env; size_t kstack0_sz; + vm_paddr_t physmap[PHYSMAP_SIZE]; + int physmap_idx; thread0.td_kstack = physfree + KERNBASE; thread0.td_kstack_pages = KSTACK_PAGES; @@ -1906,6 +1913,9 @@ hammer_time(u_int64_t modulep, u_int64_t */ i8254_init(); + physmap_idx = parsememmap(kmdp, physfree, physmap); + create_pagetables(&physfree); + /* * Initialize the console before we print anything out. */ @@ -1970,7 +1980,7 @@ hammer_time(u_int64_t modulep, u_int64_t wrmsr(MSR_STAR, msr); wrmsr(MSR_SF_MASK, PSL_NT|PSL_T|PSL_I|PSL_C|PSL_D); - getmemsize(kmdp, physfree); + getmemsize(physfree, physmap, physmap_idx); init_param2(physmem); /* now running on new page tables, configured,and u/iom is accessible */ Modified: projects/uefi/sys/amd64/amd64/pmap.c ============================================================================== --- projects/uefi/sys/amd64/amd64/pmap.c Sun Feb 24 23:57:52 2013 (r247246) +++ projects/uefi/sys/amd64/amd64/pmap.c Mon Feb 25 00:04:02 2013 (r247247) @@ -529,7 +529,7 @@ nkpt_init(vm_paddr_t addr) nkpt = pt_pages; } -static void +void create_pagetables(vm_paddr_t *firstaddr) { int i, j, ndm1g, nkpdpe; @@ -647,11 +647,6 @@ pmap_bootstrap(vm_paddr_t *firstaddr) vm_offset_t va; pt_entry_t *pte, *unused; - /* - * Create an initial set of page tables to run the kernel in. - */ - create_pagetables(firstaddr); - virtual_avail = (vm_offset_t) KERNBASE + *firstaddr; virtual_avail = pmap_kmem_choose(virtual_avail); Modified: projects/uefi/sys/amd64/include/pmap.h ============================================================================== --- projects/uefi/sys/amd64/include/pmap.h Sun Feb 24 23:57:52 2013 (r247246) +++ projects/uefi/sys/amd64/include/pmap.h Mon Feb 25 00:04:02 2013 (r247247) @@ -307,6 +307,7 @@ extern vm_offset_t virtual_end; #define pmap_page_is_write_mapped(m) (((m)->aflags & PGA_WRITEABLE) != 0) #define pmap_unmapbios(va, sz) pmap_unmapdev((va), (sz)) +void create_pagetables(vm_paddr_t *); void pmap_bootstrap(vm_paddr_t *); int pmap_change_attr(vm_offset_t, vm_size_t, int); void pmap_demote_DMAP(vm_paddr_t base, vm_size_t len, boolean_t invalidate); From owner-svn-src-projects@FreeBSD.ORG Mon Feb 25 00:06:19 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 91960384; Mon, 25 Feb 2013 00:06:19 +0000 (UTC) (envelope-from benno@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 8435AF41; Mon, 25 Feb 2013 00:06:19 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r1P06JDJ040525; Mon, 25 Feb 2013 00:06:19 GMT (envelope-from benno@svn.freebsd.org) Received: (from benno@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r1P06J9D040524; Mon, 25 Feb 2013 00:06:19 GMT (envelope-from benno@svn.freebsd.org) Message-Id: <201302250006.r1P06J9D040524@svn.freebsd.org> From: Benno Rice Date: Mon, 25 Feb 2013 00:06:19 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247248 - projects/uefi/sys/boot/i386/efi X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 25 Feb 2013 00:06:19 -0000 Author: benno Date: Mon Feb 25 00:06:18 2013 New Revision: 247248 URL: http://svnweb.freebsd.org/changeset/base/247248 Log: Add efifb.c to loader Makefile. Modified: projects/uefi/sys/boot/i386/efi/Makefile Modified: projects/uefi/sys/boot/i386/efi/Makefile ============================================================================== --- projects/uefi/sys/boot/i386/efi/Makefile Mon Feb 25 00:04:02 2013 (r247247) +++ projects/uefi/sys/boot/i386/efi/Makefile Mon Feb 25 00:06:18 2013 (r247248) @@ -12,7 +12,7 @@ INTERNALPROG= # architecture-specific loader code SRCS= main.c exec.c conf.c vers.c reloc.c elf32_freebsd.c elf64_freebsd.c SRCS+= x86_efi_copy.c bootinfo.c bootinfo64.c autoload.c devicename.c efimd.c -SRCS+= amd64_tramp.S +SRCS+= efifb.c amd64_tramp.S .PATH: ${.CURDIR}/${MACHINE_CPUARCH} SRCS+= start.S From owner-svn-src-projects@FreeBSD.ORG Mon Feb 25 00:08:29 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 834965B6; Mon, 25 Feb 2013 00:08:29 +0000 (UTC) (envelope-from benno@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 67147F4D; Mon, 25 Feb 2013 00:08:29 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r1P08T15041001; Mon, 25 Feb 2013 00:08:29 GMT (envelope-from benno@svn.freebsd.org) Received: (from benno@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r1P08SIC040994; Mon, 25 Feb 2013 00:08:28 GMT (envelope-from benno@svn.freebsd.org) Message-Id: <201302250008.r1P08SIC040994@svn.freebsd.org> From: Benno Rice Date: Mon, 25 Feb 2013 00:08:28 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247249 - in projects/uefi/sys: amd64/conf conf dev/fb X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 25 Feb 2013 00:08:29 -0000 Author: benno Date: Mon Feb 25 00:08:28 2013 New Revision: 247249 URL: http://svnweb.freebsd.org/changeset/base/247249 Log: Add a basic framebuffer console for EFI. This is based off grehan's OFW framebuffer console. Added: projects/uefi/sys/dev/fb/efifb.c projects/uefi/sys/dev/fb/efifb.h Modified: projects/uefi/sys/amd64/conf/GENERIC projects/uefi/sys/conf/files.amd64 projects/uefi/sys/conf/options.amd64 Modified: projects/uefi/sys/amd64/conf/GENERIC ============================================================================== --- projects/uefi/sys/amd64/conf/GENERIC Mon Feb 25 00:06:18 2013 (r247248) +++ projects/uefi/sys/amd64/conf/GENERIC Mon Feb 25 00:08:28 2013 (r247249) @@ -173,6 +173,7 @@ device psm # PS/2 mouse device kbdmux # keyboard multiplexer +device efifb # EFI framebuffer device vga # VGA video card driver options VESA # Add support for VESA BIOS Extensions (VBE) @@ -181,6 +182,8 @@ device splash # Splash screen and scre # syscons is the default console driver, resembling an SCO console device sc options SC_PIXEL_MODE # add support for the raster text mode +options SC_DFLT_FONT +makeoptions SC_DFLT_FONT=cp437 device agp # support several AGP chipsets Modified: projects/uefi/sys/conf/files.amd64 ============================================================================== --- projects/uefi/sys/conf/files.amd64 Mon Feb 25 00:06:18 2013 (r247248) +++ projects/uefi/sys/conf/files.amd64 Mon Feb 25 00:08:28 2013 (r247249) @@ -32,7 +32,7 @@ ia32_assym.h standard \ no-obj no-implicit-rule before-depend \ clean "ia32_assym.h" # -font.h optional sc_dflt_font \ +font.h optional sc_dflt_font \ compile-with "uudecode < /usr/share/syscons/fonts/${SC_DFLT_FONT}-8x16.fnt && file2c 'static u_char dflt_font_16[16*256] = {' '};' < ${SC_DFLT_FONT}-8x16 > font.h && uudecode < /usr/share/syscons/fonts/${SC_DFLT_FONT}-8x14.fnt && file2c 'static u_char dflt_font_14[14*256] = {' '};' < ${SC_DFLT_FONT}-8x14 >> font.h && uudecode < /usr/share/syscons/fonts/${SC_DFLT_FONT}-8x8.fnt && file2c 'static u_char dflt_font_8[8*256] = {' '};' < ${SC_DFLT_FONT}-8x8 >> font.h" \ no-obj no-implicit-rule before-depend \ clean "font.h ${SC_DFLT_FONT}-8x14 ${SC_DFLT_FONT}-8x16 ${SC_DFLT_FONT}-8x8" @@ -165,6 +165,7 @@ dev/ed/if_ed_isa.c optional ed isa dev/ed/if_ed_wd80x3.c optional ed isa dev/ed/if_ed_hpp.c optional ed isa ed_hpp dev/ed/if_ed_sic.c optional ed isa ed_sic +dev/fb/efifb.c optional fb | efifb dev/fb/fb.c optional fb | vga dev/fb/s3_pci.c optional s3pci dev/fb/vesa.c optional vga vesa @@ -269,6 +270,7 @@ dev/sio/sio_pci.c optional sio pci dev/sio/sio_puc.c optional sio puc dev/speaker/spkr.c optional speaker dev/syscons/apm/apm_saver.c optional apm_saver apm +dev/syscons/scgfbrndr.c optional sc efifb dev/syscons/scterm-teken.c optional sc dev/syscons/scvesactl.c optional sc vga vesa dev/syscons/scvgarndr.c optional sc vga Modified: projects/uefi/sys/conf/options.amd64 ============================================================================== --- projects/uefi/sys/conf/options.amd64 Mon Feb 25 00:06:18 2013 (r247248) +++ projects/uefi/sys/conf/options.amd64 Mon Feb 25 00:08:28 2013 (r247249) @@ -44,6 +44,10 @@ VGA_WIDTH90 opt_vga.h VESA VESA_DEBUG opt_vesa.h +GFB_DEBUG opt_gfb.h +GFB_NO_FONT_LOADING opt_gfb.h +GFB_NO_MODE_CHANGE opt_gfb.h + # AGP debugging support AGP_DEBUG opt_agp.h Added: projects/uefi/sys/dev/fb/efifb.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/uefi/sys/dev/fb/efifb.c Mon Feb 25 00:08:28 2013 (r247249) @@ -0,0 +1,911 @@ +/*- + * Copyright (c) 2003 Peter Grehan + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include +__FBSDID("$FreeBSD$"); + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include + +#include +#include +#include +#include + +#include + +#include +#include +#include + +extern u_char dflt_font_16[]; +extern u_char dflt_font_14[]; +extern u_char dflt_font_8[]; + +static int efifb_configure(int flags); + +static vi_probe_t efifb_probe; +static vi_init_t efifb_init; +static vi_get_info_t efifb_get_info; +static vi_query_mode_t efifb_query_mode; +static vi_set_mode_t efifb_set_mode; +static vi_save_font_t efifb_save_font; +static vi_load_font_t efifb_load_font; +static vi_show_font_t efifb_show_font; +static vi_save_palette_t efifb_save_palette; +static vi_load_palette_t efifb_load_palette; +static vi_set_border_t efifb_set_border; +static vi_save_state_t efifb_save_state; +static vi_load_state_t efifb_load_state; +static vi_set_win_org_t efifb_set_win_org; +static vi_read_hw_cursor_t efifb_read_hw_cursor; +static vi_set_hw_cursor_t efifb_set_hw_cursor; +static vi_set_hw_cursor_shape_t efifb_set_hw_cursor_shape; +static vi_blank_display_t efifb_blank_display; +static vi_mmap_t efifb_mmap; +static vi_ioctl_t efifb_ioctl; +static vi_clear_t efifb_clear; +static vi_fill_rect_t efifb_fill_rect; +static vi_bitblt_t efifb_bitblt; +static vi_diag_t efifb_diag; +static vi_save_cursor_palette_t efifb_save_cursor_palette; +static vi_load_cursor_palette_t efifb_load_cursor_palette; +static vi_copy_t efifb_copy; +static vi_putp_t efifb_putp; +static vi_putc_t efifb_putc; +static vi_puts_t efifb_puts; +static vi_putm_t efifb_putm; + +static video_switch_t efifbvidsw = { + .probe = efifb_probe, + .init = efifb_init, + .get_info = efifb_get_info, + .query_mode = efifb_query_mode, + .set_mode = efifb_set_mode, + .save_font = efifb_save_font, + .load_font = efifb_load_font, + .show_font = efifb_show_font, + .save_palette = efifb_save_palette, + .load_palette = efifb_load_palette, + .set_border = efifb_set_border, + .save_state = efifb_save_state, + .load_state = efifb_load_state, + .set_win_org = efifb_set_win_org, + .read_hw_cursor = efifb_read_hw_cursor, + .set_hw_cursor = efifb_set_hw_cursor, + .set_hw_cursor_shape = efifb_set_hw_cursor_shape, + .blank_display = efifb_blank_display, + .mmap = efifb_mmap, + .ioctl = efifb_ioctl, + .clear = efifb_clear, + .fill_rect = efifb_fill_rect, + .bitblt = efifb_bitblt, + .diag = efifb_diag, + .save_cursor_palette = efifb_save_cursor_palette, + .load_cursor_palette = efifb_load_cursor_palette, + .copy = efifb_copy, + .putp = efifb_putp, + .putc = efifb_putc, + .puts = efifb_puts, + .putm = efifb_putm, +}; + +VIDEO_DRIVER(efifb, efifbvidsw, efifb_configure); + +extern sc_rndr_sw_t txtrndrsw; +RENDERER(efifb, 0, txtrndrsw, gfb_set); + +RENDERER_MODULE(efifb, gfb_set); + +static vi_putc_t efifb_putc8; +static vi_putm_t efifb_putm8; +static vi_set_border_t efifb_set_border8; + +static vi_putc_t efifb_putc32; +static vi_putm_t efifb_putm32; +static vi_set_border_t efifb_set_border32; + +/* + * Define the iso6429-1983 colormap + */ +static struct { + uint8_t red; + uint8_t green; + uint8_t blue; +} efifb_cmap[16] = { /* # R G B Color */ + /* - - - - ----- */ + { 0x00, 0x00, 0x00 }, /* 0 0 0 0 Black */ + { 0x00, 0x00, 0xaa }, /* 1 0 0 2/3 Blue */ + { 0x00, 0xaa, 0x00 }, /* 2 0 2/3 0 Green */ + { 0x00, 0xaa, 0xaa }, /* 3 0 2/3 2/3 Cyan */ + { 0xaa, 0x00, 0x00 }, /* 4 2/3 0 0 Red */ + { 0xaa, 0x00, 0xaa }, /* 5 2/3 0 2/3 Magenta */ + { 0xaa, 0x55, 0x00 }, /* 6 2/3 1/3 0 Brown */ + { 0xaa, 0xaa, 0xaa }, /* 7 2/3 2/3 2/3 White */ + { 0x55, 0x55, 0x55 }, /* 8 1/3 1/3 1/3 Gray */ + { 0x55, 0x55, 0xff }, /* 9 1/3 1/3 1 Bright Blue */ + { 0x55, 0xff, 0x55 }, /* 10 1/3 1 1/3 Bright Green */ + { 0x55, 0xff, 0xff }, /* 11 1/3 1 1 Bright Cyan */ + { 0xff, 0x55, 0x55 }, /* 12 1 1/3 1/3 Bright Red */ + { 0xff, 0x55, 0xff }, /* 13 1 1/3 1 Bright Magenta */ + { 0xff, 0xff, 0x80 }, /* 14 1 1 1/3 Bright Yellow */ + { 0xff, 0xff, 0xff } /* 15 1 1 1 Bright White */ +}; + +#define TODO printf("%s: unimplemented\n", __func__) + +static uint16_t efifb_static_window[ROW*COL]; + +static struct efifb_softc efifb_softc; + +static __inline int +efifb_background(uint8_t attr) +{ + return (attr >> 4); +} + +static __inline int +efifb_foreground(uint8_t attr) +{ + return (attr & 0x0f); +} + +static uint32_t +efifb_pixel(struct efifb_softc *sc, int attr) +{ + uint32_t color, pixel; + + color = efifb_cmap[attr].red >> (8 - sc->sc_red_bits); + pixel = color << sc->sc_red_shift; + color = efifb_cmap[attr].green >> (8 - sc->sc_green_bits); + pixel |= color << sc->sc_green_shift; + color = efifb_cmap[attr].blue >> (8 - sc->sc_blue_bits); + pixel |= color << sc->sc_blue_shift; + + return (pixel); +} + +static int +efifb_configure(int flags) +{ + struct efifb_softc * sc; + caddr_t kmdp; + struct efi_header * efihdr; + struct efi_fb * efifb; + int disable; + int depth, d; + static int done = 0; + + disable = 0; + TUNABLE_INT_FETCH("hw.syscons.disable", &disable); + if (disable != 0) + return (0); + + if (done != 0) + return (0); + done = 1; + + kmdp = preload_search_by_type("elf kernel"); + if (kmdp == NULL) + kmdp = preload_search_by_type("elf64 kernel"); + efihdr = (struct efi_header *)preload_search_info(kmdp, + MODINFO_METADATA | MODINFOMD_EFI); + if (!efihdr->fb.fb_present) + return (0); + efifb = &efihdr->fb; + + printf("%s>>> fb_present=%d\n", __func__, efifb->fb_present); + printf("%s>>> fb_addr=0x%016jx\n", __func__, efifb->fb_addr); + printf("%s>>> fb_size=%jx\n", __func__, efifb->fb_size); + printf("%s>>> fb_height=%d\n", __func__, efifb->fb_height); + printf("%s>>> fb_width=%d\n", __func__, efifb->fb_width); + printf("%s>>> fb_stride=%d\n", __func__, efifb->fb_stride); + printf("%s>>> fb_mask_red=%08x\n", __func__, efifb->fb_mask_red); + printf("%s>>> fb_mask_green=%08x\n", __func__, efifb->fb_mask_green); + printf("%s>>> fb_mask_blue=%08x\n", __func__, efifb->fb_mask_blue); + printf("%s>>> fb_mask_reserved=%08x\n", __func__, efifb->fb_mask_reserved); + + sc = &efifb_softc; + + sc->sc_console = 1; + sc->sc_height = efifb->fb_height; + sc->sc_width = efifb->fb_width; + + depth = fls(efifb->fb_mask_red); + d = fls(efifb->fb_mask_green); + depth = d > depth ? d : depth; + d = fls(efifb->fb_mask_blue); + depth = d > depth ? d : depth; + d = fls(efifb->fb_mask_reserved); + depth = d > depth ? d : depth; + sc->sc_depth = depth; + + sc->sc_stride = efifb->fb_stride * (depth / 8); + printf("%s>>> sc_stride=%d\n", __func__, sc->sc_stride); + + sc->sc_red_bits = fls(efifb->fb_mask_red) - ffs(efifb->fb_mask_red) + 1; + sc->sc_red_shift = ffs(efifb->fb_mask_red) - 1; + sc->sc_green_bits = fls(efifb->fb_mask_green) - + ffs(efifb->fb_mask_green) + 1; + sc->sc_green_shift = ffs(efifb->fb_mask_green) - 1; + sc->sc_blue_bits = fls(efifb->fb_mask_blue) - + ffs(efifb->fb_mask_blue) + 1; + sc->sc_blue_shift = ffs(efifb->fb_mask_blue) - 1; + + switch (depth) { + case 32: + sc->sc_putc = efifb_putc32; + sc->sc_putm = efifb_putm32; + sc->sc_set_border = efifb_set_border32; + break; + case 8: + sc->sc_putc = efifb_putc8; + sc->sc_putm = efifb_putm8; + sc->sc_set_border = efifb_set_border8; + break; + default: + return (0); + break; + } + + /* + * We could use pmap_mapdev here except that the kernel pmap + * hasn't been created yet and hence any attempt to lock it will + * fail. + */ + sc->sc_addr = (void *)PHYS_TO_DMAP(efifb->fb_addr); + + efifb_init(0, &sc->sc_va, 0); + + return (0); +} + +static int +efifb_probe(int unit, video_adapter_t **adp, void *arg, int flags) +{ + TODO; + return (0); +} + +static int +efifb_init(int unit, video_adapter_t *adp, int flags) +{ + struct efifb_softc * sc; + video_info_t * vi; + int cborder; + int font_height; + + sc = (struct efifb_softc *)adp; + vi = &adp->va_info; + + vid_init_struct(adp, "efifb", -1, unit); + + /* The default font size can be overridden by loader */ + font_height = 16; + TUNABLE_INT_FETCH("hw.syscons.fsize", &font_height); + if (font_height == 8) { + sc->sc_font = dflt_font_8; + sc->sc_font_height = 8; + } else if (font_height == 14) { + sc->sc_font = dflt_font_14; + sc->sc_font_height = 14; + } else { + /* default is 8x16 */ + sc->sc_font = dflt_font_16; + sc->sc_font_height = 16; + } + + /* The user can set a border in chars - default is 1 char width */ + cborder = 1; + TUNABLE_INT_FETCH("hw.syscons.border", &cborder); + + vi->vi_cheight = sc->sc_font_height; + vi->vi_width = sc->sc_width/8 - 2*cborder; + vi->vi_height = sc->sc_height/sc->sc_font_height - 2*cborder; + vi->vi_cwidth = 8; + + /* + * Clamp width/height to syscons maximums + */ + if (vi->vi_width > COL) + vi->vi_width = COL; + if (vi->vi_height > ROW) + vi->vi_height = ROW; + + sc->sc_xmargin = (sc->sc_width - (vi->vi_width * vi->vi_cwidth)) / 2; + sc->sc_ymargin = (sc->sc_height - (vi->vi_height * vi->vi_cheight))/2; + + /* + * Avoid huge amounts of conditional code in syscons by + * defining a dummy h/w text display buffer. + */ + adp->va_window = (vm_offset_t)efifb_static_window; + + /* + * Enable future font-loading and flag color support, as well as + * adding V_ADP_MODECHANGE so that we ofwfb_set_mode() gets called + * when the X server shuts down. This enables us to get the console + * back when X disappears. + */ + adp->va_flags |= V_ADP_FONT | V_ADP_COLOR | V_ADP_MODECHANGE; + + efifb_set_mode(&sc->sc_va, 0); + + vid_register(&sc->sc_va); + + return (0); +} + +static int +efifb_get_info(video_adapter_t *adp, int mode, video_info_t *info) +{ + bcopy(&adp->va_info, info, sizeof(*info)); + return (0); +} + +static int +efifb_query_mode(video_adapter_t *adp, video_info_t *info) +{ + TODO; + return (0); +} + +static int +efifb_set_mode(video_adapter_t *adp, int mode) +{ + struct efifb_softc *sc; + + sc = (struct efifb_softc *)adp; + + efifb_blank_display(&sc->sc_va, V_DISPLAY_ON); + + return (0); +} + +static int +efifb_save_font(video_adapter_t *adp, int page, int size, int width, + u_char *data, int c, int count) +{ + TODO; + return (0); +} + +static int +efifb_load_font(video_adapter_t *adp, int page, int size, int width, + u_char *data, int c, int count) +{ + struct efifb_softc *sc; + + sc = (struct efifb_softc *)adp; + + /* + * syscons code has already determined that current width/height + * are unchanged for this new font + */ + sc->sc_font = data; + return (0); +} + +static int +efifb_show_font(video_adapter_t *adp, int page) +{ + + return (0); +} + +static int +efifb_save_palette(video_adapter_t *adp, u_char *palette) +{ + /* TODO; */ + return (0); +} + +static int +efifb_load_palette(video_adapter_t *adp, u_char *palette) +{ + /* TODO; */ + return (0); +} + +static int +efifb_set_border8(video_adapter_t *adp, int border) +{ + struct efifb_softc *sc; + int i, j; + uint8_t *addr; + uint8_t bground; + + sc = (struct efifb_softc *)adp; + + bground = (uint8_t)(efifb_pixel(sc, efifb_background(border)) & 0xff); + + /* Set top margin */ + addr = (uint8_t *) sc->sc_addr; + for (i = 0; i < sc->sc_ymargin; i++) { + for (j = 0; j < sc->sc_width; j++) { + *(addr + j) = bground; + } + addr += sc->sc_stride; + } + + /* bottom margin */ + addr = (uint8_t *) sc->sc_addr + (sc->sc_height - sc->sc_ymargin)*sc->sc_stride; + for (i = 0; i < sc->sc_ymargin; i++) { + for (j = 0; j < sc->sc_width; j++) { + *(addr + j) = bground; + } + addr += sc->sc_stride; + } + + /* remaining left and right borders */ + addr = (uint8_t *) sc->sc_addr + sc->sc_ymargin*sc->sc_stride; + for (i = 0; i < sc->sc_height - 2*sc->sc_xmargin; i++) { + for (j = 0; j < sc->sc_xmargin; j++) { + *(addr + j) = bground; + *(addr + j + sc->sc_width - sc->sc_xmargin) = bground; + } + addr += sc->sc_stride; + } + + return (0); +} + +static int +efifb_set_border32(video_adapter_t *adp, int border) +{ + /* XXX Be lazy for now and blank entire screen */ + return (efifb_blank_display(adp, border)); +} + +static int +efifb_set_border(video_adapter_t *adp, int border) +{ + struct efifb_softc *sc; + + sc = (struct efifb_softc *)adp; + + return ((*sc->sc_set_border)(adp, border)); +} + +static int +efifb_save_state(video_adapter_t *adp, void *p, size_t size) +{ + TODO; + return (0); +} + +static int +efifb_load_state(video_adapter_t *adp, void *p) +{ + TODO; + return (0); +} + +static int +efifb_set_win_org(video_adapter_t *adp, off_t offset) +{ + TODO; + return (0); +} + +static int +efifb_read_hw_cursor(video_adapter_t *adp, int *col, int *row) +{ + *col = 0; + *row = 0; + + return (0); +} + +static int +efifb_set_hw_cursor(video_adapter_t *adp, int col, int row) +{ + + return (0); +} + +static int +efifb_set_hw_cursor_shape(video_adapter_t *adp, int base, int height, + int celsize, int blink) +{ + + return (0); +} + +static int +efifb_blank_display(video_adapter_t *adp, int mode) +{ + struct efifb_softc *sc; + uint32_t cell; + uint64_t addr; + int i, count; + + sc = (struct efifb_softc *)adp; + + switch (sc->sc_depth) { + case 32: + cell = efifb_pixel(sc, efifb_background(SC_NORM_ATTR)); + break; + case 8: + cell = efifb_pixel(sc, efifb_background(SC_NORM_ATTR)) & 0xff; + cell |= (cell << 8); + cell |= (cell << 16); + break; + default: + return (0); + } + + for (i = 0; i < sc->sc_height; i++) { + count = sc->sc_width; + addr = (uint64_t)sc->sc_addr + (sc->sc_stride * i); + for (; count != 0; count--, addr += 4) + *(volatile uint32_t *)(addr) = cell; + } + + return (0); +} + +static int +efifb_mmap(video_adapter_t *adp, vm_ooffset_t offset, vm_paddr_t *paddr, + int prot, vm_memattr_t *memattr) +{ + struct efifb_softc * sc; + + sc = (struct efifb_softc *)adp; + + /* + * This might be a legacy VGA mem request: if so, just point it at the + * framebuffer, since it shouldn't be touched + */ + if (offset < sc->sc_stride*sc->sc_height) { + *paddr = (vm_paddr_t)sc->sc_addr + offset; + return (0); + } + + return (EINVAL); +} + +static int +efifb_ioctl(video_adapter_t *adp, u_long cmd, caddr_t data) +{ + + return (0); +} + +static int +efifb_clear(video_adapter_t *adp) +{ + TODO; + return (0); +} + +static int +efifb_fill_rect(video_adapter_t *adp, int val, int x, int y, int cx, int cy) +{ + TODO; + return (0); +} + +static int +efifb_bitblt(video_adapter_t *adp, ...) +{ + TODO; + return (0); +} + +static int +efifb_diag(video_adapter_t *adp, int level) +{ + TODO; + return (0); +} + +static int +efifb_save_cursor_palette(video_adapter_t *adp, u_char *palette) +{ + TODO; + return (0); +} + +static int +efifb_load_cursor_palette(video_adapter_t *adp, u_char *palette) +{ + TODO; + return (0); +} + +static int +efifb_copy(video_adapter_t *adp, vm_offset_t src, vm_offset_t dst, int n) +{ + TODO; + return (0); +} + +static int +efifb_putp(video_adapter_t *adp, vm_offset_t off, uint32_t p, uint32_t a, + int size, int bpp, int bit_ltor, int byte_ltor) +{ + TODO; + return (0); +} + +static int +efifb_putc8(video_adapter_t *adp, vm_offset_t off, uint8_t c, uint8_t a) +{ + struct efifb_softc *sc; + int row; + int col; + int i; + uint32_t *addr; + u_char *p, fg, bg; + union { + uint32_t l; + uint8_t c[4]; + } ch1, ch2; + + sc = (struct efifb_softc *)adp; + row = (off / adp->va_info.vi_width) * adp->va_info.vi_cheight; + col = (off % adp->va_info.vi_width) * adp->va_info.vi_cwidth; + p = sc->sc_font + c*sc->sc_font_height; + addr = (u_int32_t *)((uintptr_t)sc->sc_addr + + (row + sc->sc_ymargin)*sc->sc_stride + + col + sc->sc_xmargin); + + fg = (u_char)(efifb_pixel(sc, efifb_foreground(a)) & 0xff); + bg = (u_char)(efifb_pixel(sc, efifb_background(a)) & 0xff); + + for (i = 0; i < sc->sc_font_height; i++) { + u_char fline = p[i]; + + /* + * Assume that there is more background than foreground + * in characters and init accordingly + */ + ch1.l = ch2.l = (bg << 24) | (bg << 16) | (bg << 8) | bg; + + /* + * Calculate 2 x 4-chars at a time, and then + * write these out. + */ + if (fline & 0x80) ch1.c[0] = fg; + if (fline & 0x40) ch1.c[1] = fg; + if (fline & 0x20) ch1.c[2] = fg; + if (fline & 0x10) ch1.c[3] = fg; + + if (fline & 0x08) ch2.c[0] = fg; + if (fline & 0x04) ch2.c[1] = fg; + if (fline & 0x02) ch2.c[2] = fg; + if (fline & 0x01) ch2.c[3] = fg; + + addr[0] = ch1.l; + addr[1] = ch2.l; + addr += (sc->sc_stride / sizeof(u_int32_t)); + } + + return (0); +} + +static int +efifb_putc32(video_adapter_t *adp, vm_offset_t off, uint8_t c, uint8_t a) +{ + struct efifb_softc *sc; + int row; + int col; + int i, j, k; + uint32_t *addr; + u_char *p; + + sc = (struct efifb_softc *)adp; + row = (off / adp->va_info.vi_width) * adp->va_info.vi_cheight; + col = (off % adp->va_info.vi_width) * adp->va_info.vi_cwidth; + p = sc->sc_font + c*sc->sc_font_height; + addr = (uint32_t *)sc->sc_addr + + (row + sc->sc_ymargin)*(sc->sc_stride/4) + + col + sc->sc_xmargin; + + for (i = 0; i < sc->sc_font_height; i++) { + for (j = 0, k = 7; j < 8; j++, k--) { + if ((p[i] & (1 << k)) == 0) + *(addr + j) = + efifb_pixel(sc, efifb_background(a)); + else + *(addr + j) = + efifb_pixel(sc, efifb_foreground(a)); + } + addr += (sc->sc_stride/4); + } + + return (0); +} + +static int +efifb_putc(video_adapter_t *adp, vm_offset_t off, uint8_t c, uint8_t a) +{ + struct efifb_softc *sc; + + sc = (struct efifb_softc *)adp; + + return ((*sc->sc_putc)(adp, off, c, a)); +} + +static int +efifb_puts(video_adapter_t *adp, vm_offset_t off, u_int16_t *s, int len) +{ + int i; + + for (i = 0; i < len; i++) { + efifb_putc(adp, off + i, s[i] & 0xff, (s[i] & 0xff00) >> 8); + } + return (0); +} + +static int +efifb_putm8(video_adapter_t *adp, int x, int y, uint8_t *pixel_image, + uint32_t pixel_mask, int size, int width) +{ + struct efifb_softc *sc; + int i, j, k; + uint8_t *addr; + u_char fg, bg; + + sc = (struct efifb_softc *)adp; + addr = (u_int8_t *)((uintptr_t)sc->sc_addr + + (y + sc->sc_ymargin)*sc->sc_stride + + x + sc->sc_xmargin); + + fg = (u_char)(efifb_pixel(sc, efifb_foreground(SC_NORM_ATTR)) & 0xff); + bg = (u_char)(efifb_pixel(sc, efifb_background(SC_NORM_ATTR)) & 0xff); + + for (i = 0; i < size && i+y < sc->sc_height - 2*sc->sc_ymargin; i++) { + /* + * Calculate 2 x 4-chars at a time, and then + * write these out. + */ + for (j = 0, k = width; j < 8; j++, k--) { + if (x + j >= sc->sc_width - 2*sc->sc_xmargin) + continue; + + if (pixel_image[i] & (1 << k)) + addr[j] = (addr[j] == fg) ? bg : fg; + } + + addr += (sc->sc_stride / sizeof(u_int8_t)); + } + + return (0); +} + +static int +efifb_putm32(video_adapter_t *adp, int x, int y, uint8_t *pixel_image, + uint32_t pixel_mask, int size, int width) +{ + struct efifb_softc *sc; + int i, j, k; + uint32_t fg, bg; + uint32_t *addr; + + sc = (struct efifb_softc *)adp; + addr = (uint32_t *)sc->sc_addr + + (y + sc->sc_ymargin)*(sc->sc_stride/4) + + x + sc->sc_xmargin; + + fg = efifb_pixel(sc, efifb_foreground(SC_NORM_ATTR)); + bg = efifb_pixel(sc, efifb_background(SC_NORM_ATTR)); + + for (i = 0; i < size && i+y < sc->sc_height - 2*sc->sc_ymargin; i++) { + for (j = 0, k = width; j < 8; j++, k--) { + if (x + j >= sc->sc_width - 2*sc->sc_xmargin) + continue; + + if (pixel_image[i] & (1 << k)) + *(addr + j) = (*(addr + j) == fg) ? bg : fg; + } + addr += (sc->sc_stride/4); + } + + return (0); +} + +static int +efifb_putm(video_adapter_t *adp, int x, int y, uint8_t *pixel_image, + uint32_t pixel_mask, int size, int width) +{ + struct efifb_softc *sc; + + sc = (struct efifb_softc *)adp; + + return ((*sc->sc_putm)(adp, x, y, pixel_image, pixel_mask, size, + width)); +} + +/* + * Define the syscons nexus device attachment + */ +static void +efifb_scidentify(driver_t *driver, device_t parent) +{ + device_t child; + + child = BUS_ADD_CHILD(parent, INT_MAX, SC_DRIVER_NAME, 0); +} + +static int +efifb_scprobe(device_t dev) +{ + int error; + + device_set_desc(dev, "EFI framebuffer console"); + + error = sc_probe_unit(device_get_unit(dev), + device_get_flags(dev) | SC_AUTODETECT_KBD); + if (error != 0) + return (error); + + /* This is a fake device, so make sure we added it ourselves */ + return (BUS_PROBE_NOWILDCARD); +} + +static int +efifb_scattach(device_t dev) +{ + return (sc_attach_unit(device_get_unit(dev), + device_get_flags(dev) | SC_AUTODETECT_KBD)); +} + +static device_method_t efifb_sc_methods[] = { + DEVMETHOD(device_identify, efifb_scidentify), + DEVMETHOD(device_probe, efifb_scprobe), + DEVMETHOD(device_attach, efifb_scattach), + { 0, 0 } +}; + +static driver_t efifb_sc_driver = { + SC_DRIVER_NAME, + efifb_sc_methods, + sizeof(sc_softc_t), +}; + +static devclass_t sc_devclass; + +DRIVER_MODULE(efifb, nexus, efifb_sc_driver, sc_devclass, 0, 0); Added: projects/uefi/sys/dev/fb/efifb.h ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/uefi/sys/dev/fb/efifb.h Mon Feb 25 00:08:28 2013 (r247249) @@ -0,0 +1,102 @@ +/*- + * Copyright (c) 2003 Peter Grehan + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-projects@FreeBSD.ORG Mon Feb 25 10:07:58 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 383B5BF7; Mon, 25 Feb 2013 10:07:58 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 294F89EE; Mon, 25 Feb 2013 10:07:58 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r1PA7wGY022614; Mon, 25 Feb 2013 10:07:58 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r1PA7tbN022596; Mon, 25 Feb 2013 10:07:55 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201302251007.r1PA7tbN022596@svn.freebsd.org> From: Alexander Motin Date: Mon, 25 Feb 2013 10:07:55 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247260 - in projects/calloutng: share/man/man4 share/man/man9 sys/arm/allwinner sys/arm/arm sys/arm/broadcom/bcm2835 sys/arm/lpc sys/arm/mv sys/arm/ti/am335x sys/arm/versatile sys/dev/... X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 25 Feb 2013 10:07:58 -0000 Author: mav Date: Mon Feb 25 10:07:54 2013 New Revision: 247260 URL: http://svnweb.freebsd.org/changeset/base/247260 Log: Switch eventtimers(4/9) from using struct bintime to sbintime_t. By the way do some minor optimizations and drop support for activetick sysctl, that in incompatible with the new callout code. Modified: projects/calloutng/share/man/man4/eventtimers.4 projects/calloutng/share/man/man9/eventtimers.9 projects/calloutng/sys/arm/allwinner/timer.c projects/calloutng/sys/arm/arm/mpcore_timer.c projects/calloutng/sys/arm/broadcom/bcm2835/bcm2835_systimer.c projects/calloutng/sys/arm/lpc/lpc_timer.c projects/calloutng/sys/arm/mv/timer.c projects/calloutng/sys/arm/ti/am335x/am335x_dmtimer.c projects/calloutng/sys/arm/versatile/sp804.c projects/calloutng/sys/dev/acpica/acpi_hpet.c projects/calloutng/sys/i386/xen/clock.c projects/calloutng/sys/ia64/ia64/clock.c projects/calloutng/sys/kern/kern_clock.c projects/calloutng/sys/kern/kern_clocksource.c projects/calloutng/sys/kern/kern_et.c projects/calloutng/sys/kern/kern_timeout.c projects/calloutng/sys/kern/subr_param.c projects/calloutng/sys/mips/mips/tick.c projects/calloutng/sys/mips/nlm/tick.c projects/calloutng/sys/mips/rmi/tick.c projects/calloutng/sys/powerpc/aim/clock.c projects/calloutng/sys/powerpc/booke/clock.c projects/calloutng/sys/sparc64/sparc64/tick.c projects/calloutng/sys/sys/callout.h projects/calloutng/sys/sys/time.h projects/calloutng/sys/sys/timeet.h projects/calloutng/sys/x86/isa/atrtc.c projects/calloutng/sys/x86/isa/clock.c projects/calloutng/sys/x86/x86/local_apic.c Modified: projects/calloutng/share/man/man4/eventtimers.4 ============================================================================== --- projects/calloutng/share/man/man4/eventtimers.4 Mon Feb 25 09:33:48 2013 (r247259) +++ projects/calloutng/share/man/man4/eventtimers.4 Mon Feb 25 10:07:54 2013 (r247260) @@ -143,14 +143,6 @@ By default this options is disabled. If chosen timer is per-CPU and runs in periodic mode, this option has no effect - all interrupts are always generating. -.It Va kern.eventtimer.activetick -makes each CPU to receive all kinds of timer interrupts when they are busy. -Disabling it allows to skip some -.Fn hardclock -calls in some cases. -By default this options is enabled. -If chosen timer is per-CPU, this option has no effect - all interrupts are -always generating, as timer reprogramming is too expensive for that case. .El .Sh SEE ALSO .Xr apic 4 , Modified: projects/calloutng/share/man/man9/eventtimers.9 ============================================================================== --- projects/calloutng/share/man/man9/eventtimers.9 Mon Feb 25 09:33:48 2013 (r247259) +++ projects/calloutng/share/man/man9/eventtimers.9 Mon Feb 25 10:07:54 2013 (r247260) @@ -1,5 +1,5 @@ .\" -.\" Copyright (c) 2011 Alexander Motin +.\" Copyright (c) 2011-2013 Alexander Motin .\" All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without @@ -24,7 +24,7 @@ .\" .\" $FreeBSD$ .\" -.Dd December 14, 2011 +.Dd February 25, 2013 .Dt EVENTTIMERS 9 .Os .Sh NAME @@ -36,7 +36,7 @@ struct eventtimer; typedef int et_start_t(struct eventtimer *et, - struct bintime *first, struct bintime *period); + sbintime_t first, sbintime_t period); typedef int et_stop_t(struct eventtimer *et); typedef void et_event_cb_t(struct eventtimer *et, void *arg); typedef int et_deregister_cb_t(struct eventtimer *et, void *arg); @@ -53,8 +53,8 @@ struct eventtimer { int et_quality; int et_active; uint64_t et_frequency; - struct bintime et_min_period; - struct bintime et_max_period; + sbintime_t et_min_period; + sbintime_t et_max_period; et_start_t *et_start; et_stop_t *et_stop; et_event_cb_t *et_event_cb; @@ -75,7 +75,7 @@ struct eventtimer { .Ft int .Fn et_init "struct eventtimer *et" "et_event_cb_t *event" "et_deregister_cb_t *deregister" "void *arg" .Ft int -.Fn et_start "struct eventtimer *et" "struct bintime *first" "struct bintime *period" +.Fn et_start "struct eventtimer *et" "sbintime_t first" "sbintime_t period" .Ft int .Fn et_stop "struct eventtimer *et" .Ft int Modified: projects/calloutng/sys/arm/allwinner/timer.c ============================================================================== --- projects/calloutng/sys/arm/allwinner/timer.c Mon Feb 25 09:33:48 2013 (r247259) +++ projects/calloutng/sys/arm/allwinner/timer.c Mon Feb 25 10:07:54 2013 (r247260) @@ -95,7 +95,7 @@ int a10_timer_get_timerfreq(struct a10_t static u_int a10_timer_get_timecount(struct timecounter *); static int a10_timer_timer_start(struct eventtimer *, - struct bintime *, struct bintime *); + sbintime_t first, sbintime_t period); static int a10_timer_timer_stop(struct eventtimer *); static uint64_t timer_read_counter64(void); @@ -193,12 +193,8 @@ a10_timer_attach(device_t dev) sc->et.et_name = "a10_timer Eventtimer"; sc->et.et_flags = ET_FLAGS_ONESHOT | ET_FLAGS_PERIODIC; sc->et.et_quality = 1000; - sc->et.et_min_period.sec = 0; - sc->et.et_min_period.frac = - ((0x00000005LLU << 32) / sc->et.et_frequency) << 32; - sc->et.et_max_period.sec = 0xfffffff0U / sc->et.et_frequency; - sc->et.et_max_period.frac = - ((0xfffffffeLLU << 32) / sc->et.et_frequency) << 32; + sc->et.et_min_period = (0x00000005LLU << 32) / sc->et.et_frequency; + sc->et.et_max_period = (0xfffffffeLLU << 32) / sc->et.et_frequency; sc->et.et_start = a10_timer_timer_start; sc->et.et_stop = a10_timer_timer_stop; sc->et.et_priv = sc; @@ -225,8 +221,8 @@ a10_timer_attach(device_t dev) } static int -a10_timer_timer_start(struct eventtimer *et, struct bintime *first, - struct bintime *period) +a10_timer_timer_start(struct eventtimer *et, sbintime_t first, + sbintime_t period) { struct a10_timer_softc *sc; uint32_t count; @@ -234,26 +230,21 @@ a10_timer_timer_start(struct eventtimer sc = (struct a10_timer_softc *)et->et_priv; - sc->sc_period = 0; - - if (period != NULL) { - sc->sc_period = (sc->et.et_frequency * (period->frac >> 32)) >> 32; - sc->sc_period += sc->et.et_frequency * period->sec; - } - if (first == NULL) + if (period != 0) + sc->sc_period = ((uint32_t)et->et_frequency * period) >> 32; + else + sc->sc_period = 0; + if (first != 0) + count = ((uint32_t)et->et_frequency * first) >> 32; + else count = sc->sc_period; - else { - count = (sc->et.et_frequency * (first->frac >> 32)) >> 32; - if (first->sec != 0) - count += sc->et.et_frequency * first->sec; - } /* Update timer values */ timer_write_4(sc, SW_TIMER0_INT_VALUE_REG, sc->sc_period); timer_write_4(sc, SW_TIMER0_CUR_VALUE_REG, count); val = timer_read_4(sc, SW_TIMER0_CTRL_REG); - if (first == NULL) { + if (period != 0) { /* periodic */ val |= TIMER_AUTORELOAD; } else { Modified: projects/calloutng/sys/arm/arm/mpcore_timer.c ============================================================================== --- projects/calloutng/sys/arm/arm/mpcore_timer.c Mon Feb 25 09:33:48 2013 (r247259) +++ projects/calloutng/sys/arm/arm/mpcore_timer.c Mon Feb 25 10:07:54 2013 (r247260) @@ -167,31 +167,23 @@ arm_tmr_get_timecount(struct timecounter * Always returns 0 */ static int -arm_tmr_start(struct eventtimer *et, struct bintime *first, - struct bintime *period) +arm_tmr_start(struct eventtimer *et, sbintime_t first, sbintime_t period) { - struct arm_tmr_softc *sc = (struct arm_tmr_softc *)et->et_priv; uint32_t load, count; uint32_t ctrl; ctrl = PRV_TIMER_CTRL_IRQ_ENABLE | PRV_TIMER_CTRL_TIMER_ENABLE; - if (period != NULL) { - load = (et->et_frequency * (period->frac >> 32)) >> 32; - if (period->sec > 0) - load += et->et_frequency * period->sec; + if (period != 0) { + load = ((uint32_t)et->et_frequency * period) >> 32; ctrl |= PRV_TIMER_CTRL_AUTO_RELOAD; - } else { + } else load = 0; - } - if (first != NULL) { - count = (sc->et.et_frequency * (first->frac >> 32)) >> 32; - if (first->sec != 0) - count += sc->et.et_frequency * first->sec; - } else { + if (first != 0) + count = ((uint32_t)et->et_frequency * first) >> 32; + else count = load; - } tmr_prv_write_4(PRV_TIMER_LOAD, load); tmr_prv_write_4(PRV_TIMER_COUNT, count); @@ -330,12 +322,8 @@ arm_tmr_attach(device_t dev) sc->et.et_quality = 1000; sc->et.et_frequency = sc->clkfreq; - sc->et.et_min_period.sec = 0; - sc->et.et_min_period.frac = - ((0x00000002LLU << 32) / sc->et.et_frequency) << 32; - sc->et.et_max_period.sec = 0xfffffff0U / sc->et.et_frequency; - sc->et.et_max_period.frac = - ((0xfffffffeLLU << 32) / sc->et.et_frequency) << 32; + sc->et.et_min_period = (0x00000002LLU << 32) / sc->et.et_frequency; + sc->et.et_max_period = (0xfffffffeLLU << 32) / sc->et.et_frequency; sc->et.et_start = arm_tmr_start; sc->et.et_stop = arm_tmr_stop; sc->et.et_priv = sc; Modified: projects/calloutng/sys/arm/broadcom/bcm2835/bcm2835_systimer.c ============================================================================== --- projects/calloutng/sys/arm/broadcom/bcm2835/bcm2835_systimer.c Mon Feb 25 09:33:48 2013 (r247259) +++ projects/calloutng/sys/arm/broadcom/bcm2835/bcm2835_systimer.c Mon Feb 25 10:07:54 2013 (r247260) @@ -118,19 +118,16 @@ bcm_systimer_tc_get_timecount(struct tim } static int -bcm_systimer_start(struct eventtimer *et, struct bintime *first, - struct bintime *period) +bcm_systimer_start(struct eventtimer *et, sbintime_t first, sbintime_t period) { struct systimer *st = et->et_priv; uint32_t clo; uint32_t count; register_t s; - if (first != NULL) { + if (first != 0) { - count = (st->et.et_frequency * (first->frac >> 32)) >> 32; - if (first->sec != 0) - count += st->et.et_frequency * first->sec; + count = ((uint32_t)et->et_frequency * first) >> 32; s = intr_disable(); clo = bcm_systimer_tc_read_4(SYSTIMER_CLO); @@ -238,12 +235,10 @@ bcm_systimer_attach(device_t dev) sc->st[DEFAULT_TIMER].et.et_flags = ET_FLAGS_ONESHOT; sc->st[DEFAULT_TIMER].et.et_quality = 1000; sc->st[DEFAULT_TIMER].et.et_frequency = sc->sysclk_freq; - sc->st[DEFAULT_TIMER].et.et_min_period.sec = 0; - sc->st[DEFAULT_TIMER].et.et_min_period.frac = - ((MIN_PERIOD << 32) / sc->st[DEFAULT_TIMER].et.et_frequency) << 32; - sc->st[DEFAULT_TIMER].et.et_max_period.sec = 0xfffffff0U / sc->st[DEFAULT_TIMER].et.et_frequency; - sc->st[DEFAULT_TIMER].et.et_max_period.frac = - ((0xfffffffeLLU << 32) / sc->st[DEFAULT_TIMER].et.et_frequency) << 32; + sc->st[DEFAULT_TIMER].et.et_min_period = + (MIN_PERIOD << 32) / sc->st[DEFAULT_TIMER].et.et_frequency; + sc->st[DEFAULT_TIMER].et.et_max_period = + (0xfffffffeLLU << 32) / sc->st[DEFAULT_TIMER].et.et_frequency; sc->st[DEFAULT_TIMER].et.et_start = bcm_systimer_start; sc->st[DEFAULT_TIMER].et.et_stop = bcm_systimer_stop; sc->st[DEFAULT_TIMER].et.et_priv = &sc->st[DEFAULT_TIMER]; Modified: projects/calloutng/sys/arm/lpc/lpc_timer.c ============================================================================== --- projects/calloutng/sys/arm/lpc/lpc_timer.c Mon Feb 25 09:33:48 2013 (r247259) +++ projects/calloutng/sys/arm/lpc/lpc_timer.c Mon Feb 25 10:07:54 2013 (r247260) @@ -72,8 +72,8 @@ static struct lpc_timer_softc *timer_sof static int lpc_timer_initialized = 0; static int lpc_timer_probe(device_t); static int lpc_timer_attach(device_t); -static int lpc_timer_start(struct eventtimer *, struct bintime *first, - struct bintime *); +static int lpc_timer_start(struct eventtimer *, + sbintime_t first, sbintime_t period); static int lpc_timer_stop(struct eventtimer *et); static unsigned lpc_get_timecount(struct timecounter *); static int lpc_hardclock(void *); @@ -173,12 +173,8 @@ lpc_timer_attach(device_t dev) sc->lt_et.et_name = "LPC32x0 Timer0"; sc->lt_et.et_flags = ET_FLAGS_PERIODIC | ET_FLAGS_ONESHOT; sc->lt_et.et_quality = 1000; - sc->lt_et.et_min_period.sec = 0; - sc->lt_et.et_min_period.frac = - ((0x00000002LLU << 32) / sc->lt_et.et_frequency) << 32; - sc->lt_et.et_max_period.sec = 0xfffffff0U / sc->lt_et.et_frequency; - sc->lt_et.et_max_period.frac = - ((0xfffffffeLLU << 32) / sc->lt_et.et_frequency) << 32; + sc->lt_et.et_min_period = (0x00000002LLU << 32) / sc->lt_et.et_frequency; + sc->lt_et.et_max_period = (0xfffffffeLLU << 32) / sc->lt_et.et_frequency; sc->lt_et.et_start = lpc_timer_start; sc->lt_et.et_stop = lpc_timer_stop; sc->lt_et.et_priv = sc; @@ -199,27 +195,23 @@ lpc_timer_attach(device_t dev) } static int -lpc_timer_start(struct eventtimer *et, struct bintime *first, - struct bintime *period) +lpc_timer_start(struct eventtimer *et, sbintime_t first, sbintime_t period) { struct lpc_timer_softc *sc = (struct lpc_timer_softc *)et->et_priv; uint32_t ticks; - if (period == NULL) + if (period == 0) { sc->lt_oneshot = 1; - else { + sc->lt_period = 0; + } else { sc->lt_oneshot = 0; - sc->lt_period = (sc->lt_et.et_frequency * (first->frac >> 32)) >> 32; - sc->lt_period += sc->lt_et.et_frequency * first->sec; + sc->lt_period = ((uint32_t)et->et_frequency * period) >> 32; } - if (first == NULL) + if (first == 0) ticks = sc->lt_period; - else { - ticks = (sc->lt_et.et_frequency * (first->frac >> 32)) >> 32; - if (first->sec != 0) - ticks += sc->lt_et.et_frequency * first->sec; - } + else + ticks = ((uint32_t)et->et_frequency * first) >> 32; /* Reset timer */ timer0_write_4(sc, LPC_TIMER_TCR, LPC_TIMER_TCR_RESET); Modified: projects/calloutng/sys/arm/mv/timer.c ============================================================================== --- projects/calloutng/sys/arm/mv/timer.c Mon Feb 25 09:33:48 2013 (r247259) +++ projects/calloutng/sys/arm/mv/timer.c Mon Feb 25 10:07:54 2013 (r247260) @@ -93,7 +93,7 @@ static void mv_watchdog_enable(void); static void mv_watchdog_disable(void); static void mv_watchdog_event(void *, unsigned int, int *); static int mv_timer_start(struct eventtimer *et, - struct bintime *first, struct bintime *period); + sbintime_t first, sbintime_t period); static int mv_timer_stop(struct eventtimer *et); static void mv_setup_timers(void); @@ -168,12 +168,8 @@ mv_timer_attach(device_t dev) sc->et.et_quality = 1000; sc->et.et_frequency = MV_CLOCK_SRC; - sc->et.et_min_period.sec = 0; - sc->et.et_min_period.frac = - ((0x00000002LLU << 32) / sc->et.et_frequency) << 32; - sc->et.et_max_period.sec = 0xfffffff0U / sc->et.et_frequency; - sc->et.et_max_period.frac = - ((0xfffffffeLLU << 32) / sc->et.et_frequency) << 32; + sc->et.et_min_period = (0x00000002LLU << 32) / sc->et.et_frequency; + sc->et.et_max_period = (0xfffffffeLLU << 32) / sc->et.et_frequency; sc->et.et_start = mv_timer_start; sc->et.et_stop = mv_timer_stop; sc->et.et_priv = sc; @@ -394,25 +390,20 @@ mv_watchdog_event(void *arg, unsigned in } static int -mv_timer_start(struct eventtimer *et, - struct bintime *first, struct bintime *period) +mv_timer_start(struct eventtimer *et, sbintime_t first, sbintime_t period) { struct mv_timer_softc *sc; uint32_t val, val1; /* Calculate dividers. */ sc = (struct mv_timer_softc *)et->et_priv; - if (period != NULL) { - val = (sc->et.et_frequency * (period->frac >> 32)) >> 32; - if (period->sec != 0) - val += sc->et.et_frequency * period->sec; - } else + if (period != 0) + val = ((uint32_t)sc->et.et_frequency * period) >> 32; + else val = 0; - if (first != NULL) { - val1 = (sc->et.et_frequency * (first->frac >> 32)) >> 32; - if (first->sec != 0) - val1 += sc->et.et_frequency * first->sec; - } else + if (first != 0) + val1 = ((uint32_t)sc->et.et_frequency * first) >> 32; + else val1 = val; /* Apply configuration. */ @@ -420,7 +411,7 @@ mv_timer_start(struct eventtimer *et, mv_set_timer(0, val1); val = mv_get_timer_control(); val |= CPU_TIMER0_EN; - if (period != NULL) + if (period != 0) val |= CPU_TIMER0_AUTO; else val &= ~CPU_TIMER0_AUTO; Modified: projects/calloutng/sys/arm/ti/am335x/am335x_dmtimer.c ============================================================================== --- projects/calloutng/sys/arm/ti/am335x/am335x_dmtimer.c Mon Feb 25 09:33:48 2013 (r247259) +++ projects/calloutng/sys/arm/ti/am335x/am335x_dmtimer.c Mon Feb 25 10:07:54 2013 (r247260) @@ -143,30 +143,24 @@ am335x_dmtimer_tc_get_timecount(struct t } static int -am335x_dmtimer_start(struct eventtimer *et, struct bintime *first, - struct bintime *period) +am335x_dmtimer_start(struct eventtimer *et, sbintime_t first, sbintime_t period) { struct am335x_dmtimer *tmr = (struct am335x_dmtimer *)et->et_priv; uint32_t load, count; uint32_t tclr = 0; - if (period != NULL) { - load = (et->et_frequency * (period->frac >> 32)) >> 32; - if (period->sec > 0) - load += et->et_frequency * period->sec; + if (period != 0) { + load = ((uint32_t)et->et_frequency * period) >> 32; tclr |= 2; /* autoreload bit */ panic("periodic timer not implemented\n"); } else { load = 0; } - if (first != NULL) { - count = (tmr->et.et_frequency * (first->frac >> 32)) >> 32; - if (first->sec != 0) - count += tmr->et.et_frequency * first->sec; - } else { + if (first != 0) + count = ((uint32_t)et->et_frequency * first) >> 32; + else count = load; - } /* Reset Timer */ am335x_dmtimer_et_write_4(DMTIMER_TSICR, 2); @@ -316,12 +310,10 @@ am335x_dmtimer_attach(device_t dev) sc->t[3].et.et_flags = ET_FLAGS_PERIODIC | ET_FLAGS_ONESHOT; sc->t[3].et.et_quality = 1000; sc->t[3].et.et_frequency = sc->sysclk_freq; - sc->t[3].et.et_min_period.sec = 0; - sc->t[3].et.et_min_period.frac = - ((0x00000002LLU << 32) / sc->t[3].et.et_frequency) << 32; - sc->t[3].et.et_max_period.sec = 0xfffffff0U / sc->t[3].et.et_frequency; - sc->t[3].et.et_max_period.frac = - ((0xfffffffeLLU << 32) / sc->t[3].et.et_frequency) << 32; + sc->t[3].et.et_min_period = + (0x00000002LLU << 32) / sc->t[3].et.et_frequency; + sc->t[3].et.et_max_period = + (0xfffffffeLLU << 32) / sc->t[3].et.et_frequency; sc->t[3].et.et_start = am335x_dmtimer_start; sc->t[3].et.et_stop = am335x_dmtimer_stop; sc->t[3].et.et_priv = &sc->t[3]; Modified: projects/calloutng/sys/arm/versatile/sp804.c ============================================================================== --- projects/calloutng/sys/arm/versatile/sp804.c Mon Feb 25 09:33:48 2013 (r247259) +++ projects/calloutng/sys/arm/versatile/sp804.c Mon Feb 25 10:07:54 2013 (r247260) @@ -120,18 +120,15 @@ sp804_timer_tc_get_timecount(struct time } static int -sp804_timer_start(struct eventtimer *et, struct bintime *first, - struct bintime *period) +sp804_timer_start(struct eventtimer *et, sbintime_t first, sbintime_t period) { struct sp804_timer_softc *sc = et->et_priv; uint32_t count, reg; - if (first != NULL) { + if (first != 0) { sc->et_enabled = 1; - count = (sc->et.et_frequency * (first->frac >> 32)) >> 32; - if (first->sec != 0) - count += sc->et.et_frequency * first->sec; + count = ((uint32_t)et->et_frequency * first) >> 32; sp804_timer_tc_write_4(SP804_TIMER2_LOAD, count); reg = TIMER_CONTROL_32BIT | TIMER_CONTROL_INTREN | @@ -142,7 +139,7 @@ sp804_timer_start(struct eventtimer *et, return (0); } - if (period != NULL) { + if (period != 0) { panic("period"); } @@ -264,12 +261,8 @@ sp804_timer_attach(device_t dev) sc->et.et_flags = ET_FLAGS_PERIODIC | ET_FLAGS_ONESHOT; sc->et.et_quality = 1000; sc->et.et_frequency = sc->sysclk_freq / DEFAULT_DIVISOR; - sc->et.et_min_period.sec = 0; - sc->et.et_min_period.frac = - ((0x00000002LLU << 32) / sc->et.et_frequency) << 32; - sc->et.et_max_period.sec = 0xfffffff0U / sc->et.et_frequency; - sc->et.et_max_period.frac = - ((0xfffffffeLLU << 32) / sc->et.et_frequency) << 32; + sc->et.et_min_period = (0x00000002LLU << 32) / sc->et.et_frequency; + sc->et.et_max_period = (0xfffffffeLLU << 32) / sc->et.et_frequency; sc->et.et_start = sp804_timer_start; sc->et.et_stop = sp804_timer_stop; sc->et.et_priv = sc; Modified: projects/calloutng/sys/dev/acpica/acpi_hpet.c ============================================================================== --- projects/calloutng/sys/dev/acpica/acpi_hpet.c Mon Feb 25 09:33:48 2013 (r247259) +++ projects/calloutng/sys/dev/acpica/acpi_hpet.c Mon Feb 25 10:07:54 2013 (r247260) @@ -147,8 +147,7 @@ hpet_disable(struct hpet_softc *sc) } static int -hpet_start(struct eventtimer *et, - struct bintime *first, struct bintime *period) +hpet_start(struct eventtimer *et, sbintime_t first, sbintime_t period) { struct hpet_timer *mt = (struct hpet_timer *)et->et_priv; struct hpet_timer *t; @@ -156,20 +155,16 @@ hpet_start(struct eventtimer *et, uint32_t fdiv, now; t = (mt->pcpu_master < 0) ? mt : &sc->t[mt->pcpu_slaves[curcpu]]; - if (period != NULL) { + if (period != 0) { t->mode = 1; - t->div = (sc->freq * (period->frac >> 32)) >> 32; - if (period->sec != 0) - t->div += sc->freq * period->sec; + t->div = (sc->freq * period) >> 32; } else { t->mode = 2; t->div = 0; } - if (first != NULL) { - fdiv = (sc->freq * (first->frac >> 32)) >> 32; - if (first->sec != 0) - fdiv += sc->freq * first->sec; - } else + if (first != 0) + fdiv = (sc->freq * first) >> 32; + else fdiv = t->div; if (t->irq < 0) bus_write_4(sc->mem_res, HPET_ISR, 1 << t->num); @@ -684,12 +679,9 @@ hpet_attach(device_t dev) if ((t->caps & HPET_TCAP_PER_INT) == 0) t->et.et_quality -= 10; t->et.et_frequency = sc->freq; - t->et.et_min_period.sec = 0; - t->et.et_min_period.frac = - (((uint64_t)(HPET_MIN_CYCLES * 2) << 32) / sc->freq) << 32; - t->et.et_max_period.sec = 0xfffffffeLLU / sc->freq; - t->et.et_max_period.frac = - ((0xfffffffeLLU << 32) / sc->freq) << 32; + t->et.et_min_period = + ((uint64_t)(HPET_MIN_CYCLES * 2) << 32) / sc->freq; + t->et.et_max_period = (0xfffffffeLLU << 32) / sc->freq; t->et.et_start = hpet_start; t->et.et_stop = hpet_stop; t->et.et_priv = &sc->t[i]; Modified: projects/calloutng/sys/i386/xen/clock.c ============================================================================== --- projects/calloutng/sys/i386/xen/clock.c Mon Feb 25 09:33:48 2013 (r247259) +++ projects/calloutng/sys/i386/xen/clock.c Mon Feb 25 10:07:54 2013 (r247260) @@ -768,8 +768,7 @@ resettodr() #endif static int -xen_et_start(struct eventtimer *et, - struct bintime *first, struct bintime *period) +xen_et_start(struct eventtimer *et, sbintime_t first, sbintime_t period) { struct xen_et_state *state = DPCPU_PTR(et_state); struct shadow_time_info *shadow; @@ -777,21 +776,16 @@ xen_et_start(struct eventtimer *et, __get_time_values_from_xen(); - if (period != NULL) { + if (period != 0) { state->mode = MODE_PERIODIC; - state->period = (1000000000LL * - (uint32_t)(period->frac >> 32)) >> 32; - if (period->sec != 0) - state->period += 1000000000LL * period->sec; + state->period = (1000000000LLU * period) >> 32; } else { state->mode = MODE_ONESHOT; state->period = 0; } - if (first != NULL) { - fperiod = (1000000000LL * (uint32_t)(first->frac >> 32)) >> 32; - if (first->sec != 0) - fperiod += 1000000000LL * first->sec; - } else + if (first != 0) + fperiod = (1000000000LLU * first) >> 32; + else fperiod = state->period; shadow = &per_cpu(shadow_time, smp_processor_id()); @@ -832,11 +826,9 @@ cpu_initclocks(void) xen_et.et_flags = ET_FLAGS_PERIODIC | ET_FLAGS_ONESHOT | ET_FLAGS_PERCPU; xen_et.et_quality = 600; - xen_et.et_frequency = 0; - xen_et.et_min_period.sec = 0; - xen_et.et_min_period.frac = 0x00400000LL << 32; - xen_et.et_max_period.sec = 2; - xen_et.et_max_period.frac = 0; + xen_et.et_frequency = 1000000000; + xen_et.et_min_period = 0x00400000LL; + xen_et.et_max_period = (0xfffffffeLLU << 32) / xen_et.et_frequency; xen_et.et_start = xen_et_start; xen_et.et_stop = xen_et_stop; xen_et.et_priv = NULL; Modified: projects/calloutng/sys/ia64/ia64/clock.c ============================================================================== --- projects/calloutng/sys/ia64/ia64/clock.c Mon Feb 25 09:33:48 2013 (r247259) +++ projects/calloutng/sys/ia64/ia64/clock.c Mon Feb 25 10:07:54 2013 (r247260) @@ -105,17 +105,14 @@ ia64_ih_clock(struct thread *td, u_int x * Event timer start method. */ static int -ia64_clock_start(struct eventtimer *et, struct bintime *first, - struct bintime *period) +ia64_clock_start(struct eventtimer *et, sbintime_t first, sbintime_t period) { u_long itc, load; register_t is; - if (period != NULL) { + if (period != 0) { PCPU_SET(md.clock_mode, CLOCK_ET_PERIODIC); - load = (et->et_frequency * (period->frac >> 32)) >> 32; - if (period->sec > 0) - load += et->et_frequency * period->sec; + load = (et->et_frequency * period) >> 32; } else { PCPU_SET(md.clock_mode, CLOCK_ET_ONESHOT); load = 0; @@ -123,11 +120,8 @@ ia64_clock_start(struct eventtimer *et, PCPU_SET(md.clock_load, load); - if (first != NULL) { - load = (et->et_frequency * (first->frac >> 32)) >> 32; - if (first->sec > 0) - load += et->et_frequency * first->sec; - } + if (first != 0) + load = (et->et_frequency * first) >> 32; is = intr_disable(); itc = ia64_get_itc(); @@ -185,10 +179,8 @@ clock_configure(void *dummy) et->et_flags = ET_FLAGS_PERIODIC | ET_FLAGS_ONESHOT | ET_FLAGS_PERCPU; et->et_quality = 1000; et->et_frequency = itc_freq; - et->et_min_period.sec = 0; - et->et_min_period.frac = (0x8000000000000000ul / (u_long)(10*hz)) << 1; - et->et_max_period.sec = 0xffffffff; - et->et_max_period.frac = ((0xfffffffeul << 32) / itc_freq) << 32; + et->et_min_period = SBT_1S / (10 * hz); + et->et_max_period = (0xfffffffeul << 32) / itc_freq; et->et_start = ia64_clock_start; et->et_stop = ia64_clock_stop; et->et_priv = NULL; Modified: projects/calloutng/sys/kern/kern_clock.c ============================================================================== --- projects/calloutng/sys/kern/kern_clock.c Mon Feb 25 09:33:48 2013 (r247259) +++ projects/calloutng/sys/kern/kern_clock.c Mon Feb 25 10:07:54 2013 (r247260) @@ -425,7 +425,7 @@ initclocks(dummy) void hardclock_cpu(int usermode) { - struct bintime now; + sbintime_t now; struct pstats *pstats; struct thread *td = curthread; struct proc *p = td->td_proc; @@ -460,8 +460,8 @@ hardclock_cpu(int usermode) if (td->td_intr_frame != NULL) PMC_SOFT_CALL_TF( , , clock, hard, td->td_intr_frame); #endif - binuptime(&now); - callout_process(&now); + sbinuptime(&now); + callout_process(now); } /* Modified: projects/calloutng/sys/kern/kern_clocksource.c ============================================================================== --- projects/calloutng/sys/kern/kern_clocksource.c Mon Feb 25 09:33:48 2013 (r247259) +++ projects/calloutng/sys/kern/kern_clocksource.c Mon Feb 25 10:07:54 2013 (r247260) @@ -1,5 +1,5 @@ /*- - * Copyright (c) 2010-2012 Alexander Motin + * Copyright (c) 2010-2013 Alexander Motin * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -65,16 +65,16 @@ int cpu_can_deep_sleep = 0; /* C3 stat int cpu_disable_deep_sleep = 0; /* Timer dies in C3. */ static void setuptimer(void); -static void loadtimer(struct bintime *now, int first); +static void loadtimer(sbintime_t now, int first); static int doconfigtimer(void); static void configtimer(int start); static int round_freq(struct eventtimer *et, int freq); -static void getnextcpuevent(struct bintime *event, int idle); -static void getnextevent(struct bintime *event); -static int handleevents(struct bintime *now, int fake); -static void cpu_new_callout(int cpu, struct bintime bt, - struct bintime bt_opt); +static sbintime_t getnextcpuevent(int idle); +static sbintime_t getnextevent(void); +static int handleevents(sbintime_t now, int fake); +static void cpu_new_callout(int cpu, sbintime_t bt, + sbintime_t bt_opt); static struct mtx et_hw_mtx; @@ -95,11 +95,10 @@ static struct mtx et_hw_mtx; } static struct eventtimer *timer = NULL; -static struct bintime timerperiod; /* Timer period for periodic mode. */ -static struct bintime statperiod; /* statclock() events period. */ -static struct bintime profperiod; /* profclock() events period. */ -static struct bintime nexttick; /* Next global timer tick time. */ -static struct bintime nexthard; /* Next global hardlock() event. */ +static sbintime_t timerperiod; /* Timer period for periodic mode. */ +static sbintime_t statperiod; /* statclock() events period. */ +static sbintime_t profperiod; /* profclock() events period. */ +static sbintime_t nexttick; /* Next global timer tick time. */ static u_int busy = 0; /* Reconfiguration is in progress. */ static int profiling = 0; /* Profiling events enabled. */ @@ -116,11 +115,6 @@ TUNABLE_INT("kern.eventtimer.idletick", SYSCTL_UINT(_kern_eventtimer, OID_AUTO, idletick, CTLFLAG_RW, &idletick, 0, "Run periodic events when idle"); -static u_int activetick = 1; /* Run all periodic events when active. */ -TUNABLE_INT("kern.eventtimer.activetick", &activetick); -SYSCTL_UINT(_kern_eventtimer, OID_AUTO, activetick, CTLFLAG_RW, &activetick, - 0, "Run all periodic events when active"); - static int periodic = 0; /* Periodic or one-shot mode. */ static int want_periodic = 0; /* What mode to prefer. */ TUNABLE_INT("kern.eventtimer.periodic", &want_periodic); @@ -129,23 +123,23 @@ struct pcpu_state { struct mtx et_hw_mtx; /* Per-CPU timer mutex. */ u_int action; /* Reconfiguration requests. */ u_int handle; /* Immediate handle resuests. */ - struct bintime now; /* Last tick time. */ - struct bintime nextevent; /* Next scheduled event on this CPU. */ - struct bintime nexttick; /* Next timer tick time. */ - struct bintime nexthard; /* Next hardlock() event. */ - struct bintime nextstat; /* Next statclock() event. */ - struct bintime nextprof; /* Next profclock() event. */ - struct bintime nextcall; /* Next callout event. */ - struct bintime nextcallopt; /* Next optional callout event. */ + sbintime_t now; /* Last tick time. */ + sbintime_t nextevent; /* Next scheduled event on this CPU. */ + sbintime_t nexttick; /* Next timer tick time. */ + sbintime_t nexthard; /* Next hardlock() event. */ + sbintime_t nextstat; /* Next statclock() event. */ + sbintime_t nextprof; /* Next profclock() event. */ + sbintime_t nextcall; /* Next callout event. */ + sbintime_t nextcallopt; /* Next optional callout event. */ #ifdef KDTRACE_HOOKS - struct bintime nextcyc; /* Next OpenSolaris cyclics event. */ + sbintime_t nextcyc; /* Next OpenSolaris cyclics event. */ #endif int ipi; /* This CPU needs IPI. */ int idle; /* This CPU is in idle mode. */ }; static DPCPU_DEFINE(struct pcpu_state, timerstate); -DPCPU_DEFINE(struct bintime, hardclocktime); +DPCPU_DEFINE(sbintime_t, hardclocktime); /* * Timer broadcast IPI handler. @@ -153,7 +147,7 @@ DPCPU_DEFINE(struct bintime, hardclockti int hardclockintr(void) { - struct bintime now; + sbintime_t now; struct pcpu_state *state; int done; @@ -161,10 +155,9 @@ hardclockintr(void) return (FILTER_HANDLED); state = DPCPU_PTR(timerstate); now = state->now; - CTR4(KTR_SPARE2, "ipi at %d: now %d.%08x%08x", - curcpu, now.sec, (u_int)(now.frac >> 32), - (u_int)(now.frac & 0xffffffff)); - done = handleevents(&now, 0); + CTR3(KTR_SPARE2, "ipi at %d: now %d.%08x", + curcpu, (int)(now >> 32), (u_int)(now & 0xffffffff)); + done = handleevents(now, 0); return (done ? FILTER_HANDLED : FILTER_STRAY); } @@ -172,18 +165,17 @@ hardclockintr(void) * Handle all events for specified time on this CPU */ static int -handleevents(struct bintime *now, int fake) +handleevents(sbintime_t now, int fake) { - struct bintime t, *hct; + sbintime_t t, *hct; struct trapframe *frame; struct pcpu_state *state; uintfptr_t pc; int usermode; int done, runs; - CTR4(KTR_SPARE2, "handle at %d: now %d.%08x%08x", - curcpu, now->sec, (u_int)(now->frac >> 32), - (u_int)(now->frac & 0xffffffff)); + CTR3(KTR_SPARE2, "handle at %d: now %d.%08x", + curcpu, (int)(now >> 32), (u_int)(now & 0xffffffff)); done = 0; if (fake) { frame = NULL; @@ -198,25 +190,21 @@ handleevents(struct bintime *now, int fa state = DPCPU_PTR(timerstate); runs = 0; - while (bintime_cmp(now, &state->nexthard, >=)) { - bintime_addx(&state->nexthard, tick_bt.frac); + while (now >= state->nexthard) { + state->nexthard += tick_sbt; runs++; } if (runs) { hct = DPCPU_PTR(hardclocktime); - *hct = state->nexthard; - bintime_sub(hct, &tick_bt); - if ((timer->et_flags & ET_FLAGS_PERCPU) == 0 && - bintime_cmp(&state->nexthard, &nexthard, >)) - nexthard = state->nexthard; + *hct = state->nexthard - tick_sbt; if (fake < 2) { hardclock_cnt(runs, usermode); done = 1; } } runs = 0; - while (bintime_cmp(now, &state->nextstat, >=)) { - bintime_addx(&state->nextstat, statperiod.frac); + while (now >= state->nextstat) { + state->nextstat += statperiod; runs++; } if (runs && fake < 2) { @@ -225,8 +213,8 @@ handleevents(struct bintime *now, int fa } if (profiling) { runs = 0; - while (bintime_cmp(now, &state->nextprof, >=)) { - bintime_addx(&state->nextprof, profperiod.frac); + while (now >= state->nextprof) { + state->nextprof += profperiod; runs++; } if (runs && !fake) { @@ -235,23 +223,21 @@ handleevents(struct bintime *now, int fa } } else state->nextprof = state->nextstat; - if (bintime_cmp(now, &state->nextcallopt, >=) && - (state->nextcallopt.sec != -1)) { - state->nextcall.sec = -1; - state->nextcallopt.sec = -1; + if (now >= state->nextcallopt && state->nextcallopt != -1) { + state->nextcall = -1; + state->nextcallopt = -1; callout_process(now); } #ifdef KDTRACE_HOOKS if (fake == 0 && cyclic_clock_func != NULL && - state->nextcyc.sec != -1 && - bintime_cmp(now, &state->nextcyc, >=)) { - state->nextcyc.sec = -1; + state->nextcyc != -1 && now >= state->nextcyc) { + state->nextcyc = -1; (*cyclic_clock_func)(frame); } #endif - getnextcpuevent(&t, 0); + t = getnextcpuevent(0); if (fake == 2) { state->nextevent = t; return (done); @@ -269,88 +255,81 @@ handleevents(struct bintime *now, int fa /* * Schedule binuptime of the next event on current CPU. */ -static void -getnextcpuevent(struct bintime *event, int idle) +static sbintime_t +getnextcpuevent(int idle) { + sbintime_t event; struct pcpu_state *state; - struct bintime tmp; - int hardfreq; + u_int hardfreq; state = DPCPU_PTR(timerstate); /* Handle hardclock() events, skipping some is CPU is idle. */ - *event = state->nexthard; - if (idle || (!activetick && !profiling && - (timer->et_flags & ET_FLAGS_PERCPU) == 0)) { - hardfreq = 2; - if (curcpu == CPU_FIRST() && tc_min_ticktock_freq > hardfreq) - hardfreq = tc_min_ticktock_freq; - if (hz > hardfreq) { - tmp = tick_bt; - bintime_mul(&tmp, hz / hardfreq - 1); - bintime_add(event, &tmp); - } + event = state->nexthard; + if (idle) { + hardfreq = (u_int)hz / 2; + if (tc_min_ticktock_freq > 2 +#ifdef SMP + && curcpu == CPU_FIRST() +#endif + ) + hardfreq = hz / tc_min_ticktock_freq; + if (hardfreq > 1) + event += tick_sbt * (hardfreq - 1); } /* Handle callout events. */ - if (state->nextcall.sec != -1 && - bintime_cmp(event, &state->nextcall, >)) - *event = state->nextcall; + if (state->nextcall != -1 && event > state->nextcall) + event = state->nextcall; if (!idle) { /* If CPU is active - handle other types of events. */ - if (bintime_cmp(event, &state->nextstat, >)) - *event = state->nextstat; - if (profiling && bintime_cmp(event, &state->nextprof, >)) - *event = state->nextprof; + if (event > state->nextstat) + event = state->nextstat; + if (profiling && event > state->nextprof) + event = state->nextprof; } #ifdef KDTRACE_HOOKS - if (state->nextcyc.sec != -1 && bintime_cmp(event, &state->nextcyc, >)) - *event = state->nextcyc; + if (state->nextcyc != -1 && event > state->nextcyc) + event = state->nextcyc; #endif + return (event); } /* * Schedule binuptime of the next event on all CPUs. */ -static void -getnextevent(struct bintime *event) +static sbintime_t +getnextevent(void) { struct pcpu_state *state; + sbintime_t event; #ifdef SMP int cpu; #endif - int c, nonidle; + int c; state = DPCPU_PTR(timerstate); - *event = state->nextevent; + event = state->nextevent; c = curcpu; - nonidle = !state->idle; - if ((timer->et_flags & ET_FLAGS_PERCPU) == 0) { #ifdef SMP - if (smp_started) { - CPU_FOREACH(cpu) { - if (curcpu == cpu) - continue; - state = DPCPU_ID_PTR(cpu, timerstate); - nonidle += !state->idle; - if (bintime_cmp(event, &state->nextevent, >)) { - *event = state->nextevent; - c = cpu; - } + if ((timer->et_flags & ET_FLAGS_PERCPU) == 0 && smp_started) { + CPU_FOREACH(cpu) { + state = DPCPU_ID_PTR(cpu, timerstate); + if (event > state->nextevent) { + event = state->nextevent; + c = cpu; } } -#endif - if (nonidle != 0 && bintime_cmp(event, &nexthard, >)) - *event = nexthard; } - CTR5(KTR_SPARE2, "next at %d: next %d.%08x%08x by %d", - curcpu, event->sec, (u_int)(event->frac >> 32), - (u_int)(event->frac & 0xffffffff), c); +#endif + CTR4(KTR_SPARE2, "next at %d: next %d.%08x by %d", + curcpu, (int)(event >> 32), (u_int)(event & 0xffffffff), c); + return (event); } /* Hardware timer callback function. */ static void timercb(struct eventtimer *et, void *arg) { - struct bintime now; - struct bintime *next; + sbintime_t now; + sbintime_t *next; struct pcpu_state *state; #ifdef SMP int cpu, bcast; @@ -365,16 +344,14 @@ timercb(struct eventtimer *et, void *arg next = &state->nexttick; } else next = &nexttick; - binuptime(&now); - if (periodic) { - *next = now; - bintime_addx(next, timerperiod.frac); /* Next tick in 1 period. */ *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-projects@FreeBSD.ORG Tue Feb 26 05:44:12 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id A4D25F0B; Tue, 26 Feb 2013 05:44:12 +0000 (UTC) (envelope-from sjg@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 9886DE50; Tue, 26 Feb 2013 05:44:12 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r1Q5iCjZ081720; Tue, 26 Feb 2013 05:44:12 GMT (envelope-from sjg@svn.freebsd.org) Received: (from sjg@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r1Q5iC2s081719; Tue, 26 Feb 2013 05:44:12 GMT (envelope-from sjg@svn.freebsd.org) Message-Id: <201302260544.r1Q5iC2s081719@svn.freebsd.org> From: "Simon J. Gerraty" Date: Tue, 26 Feb 2013 05:44:12 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247307 - projects/bmake/share/mk X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 26 Feb 2013 05:44:12 -0000 Author: sjg Date: Tue Feb 26 05:44:12 2013 New Revision: 247307 URL: http://svnweb.freebsd.org/changeset/base/247307 Log: Simplify handling of chmod Modified: projects/bmake/share/mk/meta.stage.mk Modified: projects/bmake/share/mk/meta.stage.mk ============================================================================== --- projects/bmake/share/mk/meta.stage.mk Tue Feb 26 05:27:02 2013 (r247306) +++ projects/bmake/share/mk/meta.stage.mk Tue Feb 26 05:44:12 2013 (r247307) @@ -1,4 +1,4 @@ -# $Id: meta.stage.mk,v 1.15 2012/10/14 02:50:38 sjg Exp $ +# $Id: meta.stage.mk,v 1.18 2013/02/26 05:40:49 sjg Exp $ # # @(#) Copyright (c) 2011, Simon J. Gerraty # @@ -74,7 +74,7 @@ STAGE_FILE_SCRIPT = ${STAGE_DIRDEP_SCRIP rm -f $$t; \ { ln $$f $$t 2> /dev/null || \ cp -p $$f $$t; }; \ - $${mode:+chmod $$mode $$t}; \ + [ -z "$$mode" ] || chmod $$mode $$t; \ done; :; } STAGE_LINKS_SCRIPT = ${STAGE_DIRDEP_SCRIPT}; StageLinks() { \ @@ -106,7 +106,7 @@ STAGE_AS_SCRIPT = ${STAGE_DIRDEP_SCRIPT} rm -f $$t; \ { ln $$s $$t 2> /dev/null || \ cp -p $$s $$t; }; \ - $${mode:+chmod $$mode $$t}; \ + [ -z "$$mode" ] || chmod $$mode $$t; \ done; :; } # this is simple, a list of the "staged" files depends on this, @@ -152,7 +152,6 @@ STAGE_SYMLINKS ?= ${.ALLSRC:T:N.dirdep:N .endif .if !empty(STAGE_SETS) - CLEANFILES += ${STAGE_SETS:@s@stage*$s@} # some makefiles need to populate multiple directories @@ -193,7 +192,6 @@ stage_symlinks: .dirdep .endif .if !empty(STAGE_AS_SETS) - CLEANFILES += ${STAGE_AS_SETS:@s@stage*$s@} # sometimes things need to be renamed as they are staged From owner-svn-src-projects@FreeBSD.ORG Tue Feb 26 05:44:49 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 566669E; Tue, 26 Feb 2013 05:44:49 +0000 (UTC) (envelope-from sjg@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 488C8E5A; Tue, 26 Feb 2013 05:44:49 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r1Q5inMk081831; Tue, 26 Feb 2013 05:44:49 GMT (envelope-from sjg@svn.freebsd.org) Received: (from sjg@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r1Q5inF1081830; Tue, 26 Feb 2013 05:44:49 GMT (envelope-from sjg@svn.freebsd.org) Message-Id: <201302260544.r1Q5inF1081830@svn.freebsd.org> From: "Simon J. Gerraty" Date: Tue, 26 Feb 2013 05:44:49 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247308 - projects/bmake/share/mk X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 26 Feb 2013 05:44:49 -0000 Author: sjg Date: Tue Feb 26 05:44:48 2013 New Revision: 247308 URL: http://svnweb.freebsd.org/changeset/base/247308 Log: Need .ORDER for various stage_* targets Modified: projects/bmake/share/mk/bsd.prog.mk Modified: projects/bmake/share/mk/bsd.prog.mk ============================================================================== --- projects/bmake/share/mk/bsd.prog.mk Tue Feb 26 05:44:12 2013 (r247307) +++ projects/bmake/share/mk/bsd.prog.mk Tue Feb 26 05:44:48 2013 (r247308) @@ -259,21 +259,27 @@ all: stage_files .endif .endif +.if !empty(STAGE_AS_SETS) +all: stage_as +.endif .if !empty(LINKS) all: stage_links +.ORDER: stage_files stage_links +.if !empty(STAGE_AS_SETS) +.ORDER: stage_as stage_links +.endif STAGE_SETS+= prog STAGE_LINKS.prog= ${LINKS} .endif .if !empty(SYMLINKS) all: stage_symlinks +.if !empty(STAGE_AS_SETS) +.ORDER: stage_as stage_symlinks +.endif STAGE_SETS+= prog STAGE_SYMLINKS.prog= ${SYMLINKS} .endif -.if !empty(STAGE_AS_SETS) -all: stage_as -.endif - .endif .include .endif From owner-svn-src-projects@FreeBSD.ORG Tue Feb 26 15:25:44 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id D182B670; Tue, 26 Feb 2013 15:25:44 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id B5518A43; Tue, 26 Feb 2013 15:25:44 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r1QFPi7x058087; Tue, 26 Feb 2013 15:25:44 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r1QFPhLt058080; Tue, 26 Feb 2013 15:25:44 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201302261525.r1QFPhLt058080@svn.freebsd.org> From: Alexander Motin Date: Tue, 26 Feb 2013 15:25:43 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247319 - in projects/calloutng/sys: kern sys X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 26 Feb 2013 15:25:44 -0000 Author: mav Date: Tue Feb 26 15:25:43 2013 New Revision: 247319 URL: http://svnweb.freebsd.org/changeset/base/247319 Log: Optimize callout_process() to use less variables and less conditions to implement the same logic. Now it fits better into CPU registers, and according to PMC significntly reduces number of resource stalls, reducing consumed by it CPU time during usleep(1) benchmark by 30%. Remove callout_new_inserted variable and call cpu_new_callout() function directly. Since most architectures are using it and there is #define to identify others, there is no point to keep this extra indirection. Reviewed by: davide Modified: projects/calloutng/sys/kern/kern_clocksource.c projects/calloutng/sys/kern/kern_timeout.c projects/calloutng/sys/sys/callout.h projects/calloutng/sys/sys/systm.h Modified: projects/calloutng/sys/kern/kern_clocksource.c ============================================================================== --- projects/calloutng/sys/kern/kern_clocksource.c Tue Feb 26 13:59:39 2013 (r247318) +++ projects/calloutng/sys/kern/kern_clocksource.c Tue Feb 26 15:25:43 2013 (r247319) @@ -73,8 +73,6 @@ static int round_freq(struct eventtimer static sbintime_t getnextcpuevent(int idle); static sbintime_t getnextevent(void); static int handleevents(sbintime_t now, int fake); -static void cpu_new_callout(int cpu, sbintime_t bt, - sbintime_t bt_opt); static struct mtx et_hw_mtx; @@ -99,7 +97,7 @@ static sbintime_t timerperiod; /* Timer static sbintime_t statperiod; /* statclock() events period. */ static sbintime_t profperiod; /* profclock() events period. */ static sbintime_t nexttick; /* Next global timer tick time. */ -static u_int busy = 0; /* Reconfiguration is in progress. */ +static u_int busy = 1; /* Reconfiguration is in progress. */ static int profiling = 0; /* Profiling events enabled. */ static char timername[32]; /* Wanted timer. */ @@ -527,6 +525,8 @@ configtimer(int start) state->nexthard = next; state->nextstat = next; state->nextprof = next; + state->nextcall = next; + state->nextcallopt = next; hardclock_sync(cpu); } busy = 0; @@ -609,7 +609,6 @@ cpu_initclocks_bsp(void) state->nextcall = -1; state->nextcallopt = -1; } - callout_new_inserted = cpu_new_callout; periodic = want_periodic; /* Grab requested timer or the best of present. */ if (timername[0]) @@ -803,6 +802,9 @@ clocksource_cyc_set(const struct bintime sbintime_t now, t; struct pcpu_state *state; + /* Do not touch anything if somebody reconfiguring timers. */ + if (busy) + return; t = bintime2sbintime(*bt); state = DPCPU_PTR(timerstate); if (periodic) @@ -831,12 +833,15 @@ clocksource_cyc_set(const struct bintime } #endif -static void +void cpu_new_callout(int cpu, sbintime_t bt, sbintime_t bt_opt) { sbintime_t now; struct pcpu_state *state; + /* Do not touch anything if somebody reconfiguring timers. */ + if (busy) + return; CTR6(KTR_SPARE2, "new co at %d: on %d at %d.%08x - %d.%08x", curcpu, cpu, (int)(bt_opt >> 32), (u_int)(bt_opt & 0xffffffff), (int)(bt >> 32), (u_int)(bt & 0xffffffff)); Modified: projects/calloutng/sys/kern/kern_timeout.c ============================================================================== --- projects/calloutng/sys/kern/kern_timeout.c Tue Feb 26 13:59:39 2013 (r247318) +++ projects/calloutng/sys/kern/kern_timeout.c Tue Feb 26 15:25:43 2013 (r247319) @@ -179,7 +179,6 @@ struct callout_cpu cc_cpu; (sizeof(time_t) == (sizeof(int64_t)) ? INT64_MAX : INT32_MAX) static int timeout_cpu; -void (*callout_new_inserted)(int cpu, sbintime_t bt, sbintime_t bt_opt) = NULL; static void softclock_call_cc(struct callout *c, struct callout_cpu *cc, #ifdef CALLOUT_PROFILING @@ -391,12 +390,11 @@ callout_process(sbintime_t now) struct callout_tailq *sc; sbintime_t first, last, max, tmp_max; uint32_t lookahead; - int firstb, lastb, nowb, need_softclock, exit_allowed, exit_wanted; + u_int firstb, lastb, nowb; #ifdef CALLOUT_PROFILING int depth_dir = 0, mpcalls_dir = 0, lockcalls_dir = 0; #endif - need_softclock = 0; cc = CC_SELF(); mtx_lock_spin_flags(&cc->cc_lock, MTX_QUIET); @@ -427,14 +425,10 @@ callout_process(sbintime_t now) lastb = firstb - 1; if (nowb - firstb >= callwheelsize) nowb = firstb - 1; - nowb &= callwheelmask; - lastb &= callwheelmask; - firstb &= callwheelmask; /* Iterate callwheel from firstb to nowb and then up to lastb. */ - exit_allowed = exit_wanted = 0; - for (;;) { - sc = &cc->cc_callwheel[firstb]; + do { + sc = &cc->cc_callwheel[firstb & callwheelmask]; tmp = TAILQ_FIRST(sc); while (tmp != NULL) { /* Run the callout if present time within allowed. */ @@ -462,7 +456,6 @@ callout_process(sbintime_t now) TAILQ_INSERT_TAIL(&cc->cc_expireq, tmp, c_links.tqe); tmp->c_flags |= CALLOUT_PROCESSED; - need_softclock = 1; tmp = tmpn; } continue; @@ -475,37 +468,31 @@ callout_process(sbintime_t now) * time, so it cannot be aggregated. */ if (tmp->c_time > last) { - exit_wanted = 1; + lastb = nowb; goto next; } /* Update first and last time, respecting this event. */ if (tmp->c_time < first) first = tmp->c_time; - tmp_max = tmp->c_time; - tmp_max += tmp->c_precision; + tmp_max = tmp->c_time + tmp->c_precision; if (tmp_max < last) last = tmp_max; next: tmp = TAILQ_NEXT(tmp, c_links.tqe); } - /* Stop if we looked far enough into the future. */ - if (firstb == lastb) - break; + /* Proceed with the next bucket. */ + firstb++; /* * Stop if we looked after present time and found * some event we can't execute at now. + * Stop if we looked far enough into the future. */ - if (firstb == nowb) - exit_allowed = 1; - if (exit_allowed && exit_wanted) - break; - /* Proceed with the next bucket. */ - firstb = (firstb + 1) & callwheelmask; - } + } while (firstb <= lastb); cc->cc_exec_next_dir = NULL; - if (callout_new_inserted != NULL) - (*callout_new_inserted)(curcpu, last, first); cc->cc_firstevent = last; +#ifndef NO_EVENTTIMERS + cpu_new_callout(curcpu, last, first); +#endif #ifdef CALLOUT_PROFILING avg_depth_dir += (depth_dir * 1000 - avg_depth_dir) >> 8; avg_mpcalls_dir += (mpcalls_dir * 1000 - avg_mpcalls_dir) >> 8; @@ -516,7 +503,7 @@ next: * swi_sched acquires the thread lock, so we don't want to call it * with cc_lock held; incorrect locking order. */ - if (need_softclock) + if (!TAILQ_EMPTY(&cc->cc_expireq)) swi_sched(cc->cc_cookie, 0); } @@ -549,7 +536,6 @@ callout_cc_add(struct callout *c, struct sbintime_t sbt, sbintime_t precision, void (*func)(void *), void *arg, int cpu, int flags) { - sbintime_t last; int bucket; CC_LOCK_ASSERT(cc); @@ -568,16 +554,17 @@ callout_cc_add(struct callout *c, struct c, (int)(c->c_precision >> 32), (u_int)(c->c_precision & 0xffffffff)); TAILQ_INSERT_TAIL(&cc->cc_callwheel[bucket], c, c_links.tqe); +#ifndef NO_EVENTTIMERS /* * Inform the eventtimers(4) subsystem there's a new callout * that has been inserted, but only if really required. */ - last = c->c_time + c->c_precision; - if (callout_new_inserted != NULL && ((last < cc->cc_firstevent) || - (cc->cc_firstevent == 0))) { - cc->cc_firstevent = last; - (*callout_new_inserted)(cpu, last, c->c_time); + sbt = c->c_time + c->c_precision; + if (sbt < cc->cc_firstevent || cc->cc_firstevent == 0) { + cc->cc_firstevent = sbt; + cpu_new_callout(cpu, sbt, c->c_time); } +#endif } static void Modified: projects/calloutng/sys/sys/callout.h ============================================================================== --- projects/calloutng/sys/sys/callout.h Tue Feb 26 13:59:39 2013 (r247318) +++ projects/calloutng/sys/sys/callout.h Tue Feb 26 15:25:43 2013 (r247319) @@ -97,7 +97,6 @@ int callout_schedule_on(struct callout * #define callout_stop(c) _callout_stop_safe(c, 0) int _callout_stop_safe(struct callout *, int); void callout_process(sbintime_t now); -extern void (*callout_new_inserted)(int cpu, sbintime_t bt, sbintime_t bt_opt); #endif Modified: projects/calloutng/sys/sys/systm.h ============================================================================== --- projects/calloutng/sys/sys/systm.h Tue Feb 26 13:59:39 2013 (r247318) +++ projects/calloutng/sys/sys/systm.h Tue Feb 26 15:25:43 2013 (r247319) @@ -269,6 +269,7 @@ void cpu_startprofclock(void); void cpu_stopprofclock(void); sbintime_t cpu_idleclock(void); void cpu_activeclock(void); +void cpu_new_callout(int cpu, sbintime_t bt, sbintime_t bt_opt); extern int cpu_can_deep_sleep; extern int cpu_disable_deep_sleep; From owner-svn-src-projects@FreeBSD.ORG Tue Feb 26 15:28:13 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 316407AC; Tue, 26 Feb 2013 15:28:13 +0000 (UTC) (envelope-from asmrookie@gmail.com) Received: from mail-ie0-x236.google.com (mail-ie0-x236.google.com [IPv6:2607:f8b0:4001:c03::236]) by mx1.freebsd.org (Postfix) with ESMTP id EAB50A5B; Tue, 26 Feb 2013 15:28:12 +0000 (UTC) Received: by mail-ie0-f182.google.com with SMTP id k14so4619675iea.27 for ; Tue, 26 Feb 2013 07:28:12 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:x-received:reply-to:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:cc:content-type; bh=UANB+y31V1Xj0b8tiL4rPH3kR7cEjHWrmoDcoqb176c=; b=jpgKli+Mu31IU9UY3dy4V3xE/x0PxkNXwPvi0kn17IgXUtfENiuZfSbGmtfXmCHh+n 0/Ip9Qte3i++5ukEhHH5iu/1VVf5fqIBePXTxQiJUWJBa01hswtHXt+cAE/nA2kJMv/Q 5D0qHYEiw9BP0nVBnE4tF7AnVyMuM6MJOxvOhl5kBsIwEG1oqvJDG4oLVlG8eKcKOxZB 43PGfK/2jj3CYORh5MaoV7lkS7I5htVKyz/R8uQVnKFfc2d8ZNHVukaKdG9zXjktkJQI Y7i3sFTBbFCrRIU6FGFbNt80+mA0VvrF3aUGejIY50Z23XHqzRQnIPNOQ8k0m2jNoC6K PLhw== MIME-Version: 1.0 X-Received: by 10.50.184.132 with SMTP id eu4mr5535941igc.19.1361892492440; Tue, 26 Feb 2013 07:28:12 -0800 (PST) Sender: asmrookie@gmail.com Received: by 10.42.117.134 with HTTP; Tue, 26 Feb 2013 07:28:12 -0800 (PST) In-Reply-To: <201302261525.r1QFPhLt058080@svn.freebsd.org> References: <201302261525.r1QFPhLt058080@svn.freebsd.org> Date: Tue, 26 Feb 2013 16:28:12 +0100 X-Google-Sender-Auth: VCise4yuAiGX0Pxl8oMc6Rw3YZE Message-ID: Subject: Re: svn commit: r247319 - in projects/calloutng/sys: kern sys From: Attilio Rao To: Alexander Motin Content-Type: text/plain; charset=UTF-8 Cc: svn-src-projects@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list Reply-To: attilio@FreeBSD.org List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 26 Feb 2013 15:28:13 -0000 On Tue, Feb 26, 2013 at 4:25 PM, Alexander Motin wrote: > Author: mav > Date: Tue Feb 26 15:25:43 2013 > New Revision: 247319 > URL: http://svnweb.freebsd.org/changeset/base/247319 > > Log: > Optimize callout_process() to use less variables and less conditions to > implement the same logic. Now it fits better into CPU registers, and > according to PMC significntly reduces number of resource stalls, reducing > consumed by it CPU time during usleep(1) benchmark by 30%. Is that all improved i-cache capacity and improved dynamic branch prediction (hwpmc has counters for both FWIW)? Attilio -- Peace can only be achieved by understanding - A. Einstein From owner-svn-src-projects@FreeBSD.ORG Tue Feb 26 15:46:37 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 71EDBBF0; Tue, 26 Feb 2013 15:46:37 +0000 (UTC) (envelope-from mavbsd@gmail.com) Received: from mail-la0-x235.google.com (mail-la0-x235.google.com [IPv6:2a00:1450:4010:c03::235]) by mx1.freebsd.org (Postfix) with ESMTP id 99336B11; Tue, 26 Feb 2013 15:46:36 +0000 (UTC) Received: by mail-la0-f53.google.com with SMTP id fr10so3953046lab.26 for ; Tue, 26 Feb 2013 07:46:35 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=x-received:sender:message-id:date:from:user-agent:mime-version:to :cc:subject:references:in-reply-to:content-type :content-transfer-encoding; bh=F4yo9OIl4O0Y2fAGTsZeAbD1z4oGNAIDGRCwsnAdLx4=; b=b9ilrRsVfnkvyOfI8ISHEzXFODgtonuUK6lj/8L3IXWkIwk/U8CG8fKtZpBFKcIhR6 5PsJg9QSDLvdUy6i11R6bWlkFuMHLLc2AKGaYSdf9/dAJyBvDKhugGQmKyU9PrUPqCnE 9THY4f2ptJNi4wlhjLIPQ5yiSRfnkS3wWZVxEfDhqyECIgXqDGU3HcwCO5rviBhFxUE4 HJJncjjghDu51Xgkohv3yqShZ7S6MGeF2E1Zaf/PU2Eb3Gg599U1RqJwWa8UuQ8SjOcE Dg8alKZY/GZv3hFnzIG3chhBIkLv7PZINNScRjIT9ptdefgZ5kW1rFI3chYCQasWj6Fz Mrhw== X-Received: by 10.152.104.36 with SMTP id gb4mr14142557lab.13.1361893595385; Tue, 26 Feb 2013 07:46:35 -0800 (PST) Received: from mavbook.mavhome.dp.ua (mavhome.mavhome.dp.ua. [213.227.240.37]) by mx.google.com with ESMTPS id f4sm656939lbo.4.2013.02.26.07.46.33 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Tue, 26 Feb 2013 07:46:34 -0800 (PST) Sender: Alexander Motin Message-ID: <512CD8D7.60306@FreeBSD.org> Date: Tue, 26 Feb 2013 17:46:31 +0200 From: Alexander Motin User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:17.0) Gecko/20130125 Thunderbird/17.0.2 MIME-Version: 1.0 To: attilio@FreeBSD.org Subject: Re: svn commit: r247319 - in projects/calloutng/sys: kern sys References: <201302261525.r1QFPhLt058080@svn.freebsd.org> In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Cc: svn-src-projects@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 26 Feb 2013 15:46:37 -0000 On 26.02.2013 17:28, Attilio Rao wrote: > On Tue, Feb 26, 2013 at 4:25 PM, Alexander Motin wrote: >> Author: mav >> Date: Tue Feb 26 15:25:43 2013 >> New Revision: 247319 >> URL: http://svnweb.freebsd.org/changeset/base/247319 >> >> Log: >> Optimize callout_process() to use less variables and less conditions to >> implement the same logic. Now it fits better into CPU registers, and >> according to PMC significntly reduces number of resource stalls, reducing >> consumed by it CPU time during usleep(1) benchmark by 30%. > > Is that all improved i-cache capacity and improved dynamic branch > prediction (hwpmc has counters for both FWIW)? I-cache capacity I think is not significant there as the loop is quite small. I believe it was branch misprediction, complicated by additional latency of memory accesses. I haven't analyzed cause deeper, as PMC man pages are not the most informative and easiest reading. -- Alexander Motin From owner-svn-src-projects@FreeBSD.ORG Tue Feb 26 15:49:24 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 78676E47; Tue, 26 Feb 2013 15:49:24 +0000 (UTC) (envelope-from asmrookie@gmail.com) Received: from mail-ia0-x232.google.com (mail-ia0-x232.google.com [IPv6:2607:f8b0:4001:c02::232]) by mx1.freebsd.org (Postfix) with ESMTP id 3484CB41; Tue, 26 Feb 2013 15:49:24 +0000 (UTC) Received: by mail-ia0-f178.google.com with SMTP id y26so3498068iab.23 for ; Tue, 26 Feb 2013 07:49:23 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:x-received:reply-to:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:cc:content-type; bh=gUJPKwl68TfKhEDl/QilczOTJzraZQO6lsUVrZPRnyE=; b=fzBa14uG9eqUUADgvhE7+CuTarnMiqsu09gl2PjaCezIRO+hjJGsVuRhRaDz4PMbne f8sSKx/ZVeUPtiTt+pomh6z4PtE7cqIro+Xsb/LUadMAojvyTnoZMye6RW9roEsir8Fd v3so7OBcJ7H+ILmxAE6Tdy6VSu3QAO177W+hU4MsjxvdsxDTEKmtoEOEiWqF057x50em o37FA+PouX0RsdBnpvRNYnYK0f0D+u6yOPzf6dpjWN7ey5vouBd9B0Jed8JcPye20G6V MPys7UlZ7PpT/oZK74UQe31eX8NwDAngjfzh+MeZGCcrbiNuytZKkQ3Lv2K9Lt3EdaTY eNgw== MIME-Version: 1.0 X-Received: by 10.50.190.164 with SMTP id gr4mr5563848igc.19.1361893763867; Tue, 26 Feb 2013 07:49:23 -0800 (PST) Sender: asmrookie@gmail.com Received: by 10.42.117.134 with HTTP; Tue, 26 Feb 2013 07:49:23 -0800 (PST) In-Reply-To: <512CD8D7.60306@FreeBSD.org> References: <201302261525.r1QFPhLt058080@svn.freebsd.org> <512CD8D7.60306@FreeBSD.org> Date: Tue, 26 Feb 2013 16:49:23 +0100 X-Google-Sender-Auth: -TDGPBNtiA6mpnRxTJxB2PaBmQE Message-ID: Subject: Re: svn commit: r247319 - in projects/calloutng/sys: kern sys From: Attilio Rao To: Alexander Motin Content-Type: text/plain; charset=UTF-8 Cc: svn-src-projects@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list Reply-To: attilio@FreeBSD.org List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 26 Feb 2013 15:49:24 -0000 On Tue, Feb 26, 2013 at 4:46 PM, Alexander Motin wrote: > On 26.02.2013 17:28, Attilio Rao wrote: >> On Tue, Feb 26, 2013 at 4:25 PM, Alexander Motin wrote: >>> Author: mav >>> Date: Tue Feb 26 15:25:43 2013 >>> New Revision: 247319 >>> URL: http://svnweb.freebsd.org/changeset/base/247319 >>> >>> Log: >>> Optimize callout_process() to use less variables and less conditions to >>> implement the same logic. Now it fits better into CPU registers, and >>> according to PMC significntly reduces number of resource stalls, reducing >>> consumed by it CPU time during usleep(1) benchmark by 30%. >> >> Is that all improved i-cache capacity and improved dynamic branch >> prediction (hwpmc has counters for both FWIW)? > > I-cache capacity I think is not significant there as the loop is quite > small. I believe it was branch misprediction, complicated by additional > latency of memory accesses. I haven't analyzed cause deeper, as PMC man > pages are not the most informative and easiest reading. Well, I-cache is really very small, so I think you may get some improvement also for the function you were trying to optimize. You can get all the counter description by doing: pmccontrol -L >From there you may find some hwpmc counter showing i-cache and dynamic branch prediction misses statistics. Attilio -- Peace can only be achieved by understanding - A. Einstein From owner-svn-src-projects@FreeBSD.ORG Tue Feb 26 15:57:54 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 75ABD39E; Tue, 26 Feb 2013 15:57:54 +0000 (UTC) (envelope-from mavbsd@gmail.com) Received: from mail-lb0-f182.google.com (mail-lb0-f182.google.com [209.85.217.182]) by mx1.freebsd.org (Postfix) with ESMTP id 95F07C21; Tue, 26 Feb 2013 15:57:53 +0000 (UTC) Received: by mail-lb0-f182.google.com with SMTP id gg6so3257727lbb.27 for ; Tue, 26 Feb 2013 07:57:52 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=x-received:sender:message-id:date:from:user-agent:mime-version:to :cc:subject:references:in-reply-to:content-type :content-transfer-encoding; bh=1nJfq/Z0yDnlNLcl0C0RSFNMkAUGos7OHPbToH+THLI=; b=GEWDI9osCuI6phxtmK+qjNqB3eP3CuQcpjqW/Qly3YPjz/zUxRHKzKP5A1KV2VBfOS aRlWmcgGMkfIyPxTptvQTUG/lOWZqnxxtVuTjN5AA6TXERXsQxJX/LTuJmWR2T6+cjYn xoBJEwJfIwDBPN7nkdaJQYialbW5mzZufBEGi1p9akCgb7eG21v+hd0sfnx1+326tmd5 bKaW0MfK5j+zTaqogo87ZK20LFA4IBl+ekZazVwcsn29LO/wu35cUGE8pgvICOyC1icZ wUZ95Bc0vtFqO7AmHknx6hPVaP4nE+97R0NnRTjGQ1Ri4KfhB3B2nwHuNAZ5O4Xk5NuN OOQQ== X-Received: by 10.112.101.130 with SMTP id fg2mr769515lbb.64.1361894272147; Tue, 26 Feb 2013 07:57:52 -0800 (PST) Received: from mavbook.mavhome.dp.ua (mavhome.mavhome.dp.ua. [213.227.240.37]) by mx.google.com with ESMTPS id hk10sm882507lab.4.2013.02.26.07.57.50 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Tue, 26 Feb 2013 07:57:51 -0800 (PST) Sender: Alexander Motin Message-ID: <512CDB7C.5050905@FreeBSD.org> Date: Tue, 26 Feb 2013 17:57:48 +0200 From: Alexander Motin User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:17.0) Gecko/20130125 Thunderbird/17.0.2 MIME-Version: 1.0 To: attilio@FreeBSD.org Subject: Re: svn commit: r247319 - in projects/calloutng/sys: kern sys References: <201302261525.r1QFPhLt058080@svn.freebsd.org> <512CD8D7.60306@FreeBSD.org> In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Cc: svn-src-projects@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 26 Feb 2013 15:57:54 -0000 On 26.02.2013 17:49, Attilio Rao wrote: > On Tue, Feb 26, 2013 at 4:46 PM, Alexander Motin wrote: >> On 26.02.2013 17:28, Attilio Rao wrote: >>> On Tue, Feb 26, 2013 at 4:25 PM, Alexander Motin wrote: >>>> Author: mav >>>> Date: Tue Feb 26 15:25:43 2013 >>>> New Revision: 247319 >>>> URL: http://svnweb.freebsd.org/changeset/base/247319 >>>> >>>> Log: >>>> Optimize callout_process() to use less variables and less conditions to >>>> implement the same logic. Now it fits better into CPU registers, and >>>> according to PMC significntly reduces number of resource stalls, reducing >>>> consumed by it CPU time during usleep(1) benchmark by 30%. >>> >>> Is that all improved i-cache capacity and improved dynamic branch >>> prediction (hwpmc has counters for both FWIW)? >> >> I-cache capacity I think is not significant there as the loop is quite >> small. I believe it was branch misprediction, complicated by additional >> latency of memory accesses. I haven't analyzed cause deeper, as PMC man >> pages are not the most informative and easiest reading. > > Well, I-cache is really very small, so I think you may get some > improvement also for the function you were trying to optimize. > You can get all the counter description by doing: pmccontrol -L > From there you may find some hwpmc counter showing i-cache and dynamic > branch prediction misses statistics. I've noticed that even without any branching changes removal of one variable, allowing compiler to reuse the register (checked in assembler sources), gave measurable result. I think it would not happen if the cause was on instruction fetching side. But sure, I'll continue experiments with HWPMC. -- Alexander Motin From owner-svn-src-projects@FreeBSD.ORG Tue Feb 26 17:49:08 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 44CE02B0; Tue, 26 Feb 2013 17:49:08 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 1DBD612BD; Tue, 26 Feb 2013 17:49:08 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r1QHn7t7002046; Tue, 26 Feb 2013 17:49:07 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r1QHn7O2002045; Tue, 26 Feb 2013 17:49:07 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201302261749.r1QHn7O2002045@svn.freebsd.org> From: Alexander Motin Date: Tue, 26 Feb 2013 17:49:07 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247325 - projects/calloutng/sys/kern X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 26 Feb 2013 17:49:08 -0000 Author: mav Date: Tue Feb 26 17:49:06 2013 New Revision: 247325 URL: http://svnweb.freebsd.org/changeset/base/247325 Log: Fix lock recursion during AP startup, triggered by attempt to reliably kick-start callout first time after AP startup, made at r247319. It was about hypotethical case when callout somehow scheduled on cold AP before SMP startup. Also rework r246205 SMP startup fix in different way. Modified: projects/calloutng/sys/kern/kern_clocksource.c Modified: projects/calloutng/sys/kern/kern_clocksource.c ============================================================================== --- projects/calloutng/sys/kern/kern_clocksource.c Tue Feb 26 17:33:18 2013 (r247324) +++ projects/calloutng/sys/kern/kern_clocksource.c Tue Feb 26 17:49:06 2013 (r247325) @@ -236,10 +236,6 @@ handleevents(sbintime_t now, int fake) #endif t = getnextcpuevent(0); - if (fake == 2) { - state->nextevent = t; - return (done); - } ET_HW_LOCK(state); if (!busy) { state->idle = 0; @@ -307,7 +303,7 @@ getnextevent(void) event = state->nextevent; c = curcpu; #ifdef SMP - if ((timer->et_flags & ET_FLAGS_PERCPU) == 0 && smp_started) { + if ((timer->et_flags & ET_FLAGS_PERCPU) == 0) { CPU_FOREACH(cpu) { state = DPCPU_ID_PTR(cpu, timerstate); if (event > state->nextevent) { @@ -517,7 +513,10 @@ configtimer(int start) CPU_FOREACH(cpu) { state = DPCPU_ID_PTR(cpu, timerstate); state->now = now; - state->nextevent = next; + if (!smp_started && cpu != CPU_FIRST()) + state->nextevent = INT64_MAX; + else + state->nextevent = next; if (periodic) state->nexttick = next; else @@ -689,16 +688,20 @@ cpu_initclocks_ap(void) { sbintime_t now; struct pcpu_state *state; + struct thread *td; state = DPCPU_PTR(timerstate); sbinuptime(&now); ET_HW_LOCK(state); state->now = now; hardclock_sync(curcpu); - handleevents(state->now, 2); - if (timer->et_flags & ET_FLAGS_PERCPU) - loadtimer(now, 1); + spinlock_enter(); ET_HW_UNLOCK(state); + td = curthread; + td->td_intr_nesting_level++; + handleevents(state->now, 2); + td->td_intr_nesting_level--; + spinlock_exit(); } /* From owner-svn-src-projects@FreeBSD.ORG Tue Feb 26 21:16:18 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id E3DC89E1; Tue, 26 Feb 2013 21:16:18 +0000 (UTC) (envelope-from delphij@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id C6769124; Tue, 26 Feb 2013 21:16:18 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r1QLGIS4066537; Tue, 26 Feb 2013 21:16:18 GMT (envelope-from delphij@svn.freebsd.org) Received: (from delphij@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r1QLGEjE066514; Tue, 26 Feb 2013 21:16:14 GMT (envelope-from delphij@svn.freebsd.org) Message-Id: <201302262116.r1QLGEjE066514@svn.freebsd.org> From: Xin LI Date: Tue, 26 Feb 2013 21:16:14 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247353 - in projects/zfsd/head: . bin/cat bin/cp bin/date bin/df bin/ln bin/ls bin/ps bin/pwait bin/setfacl bin/sh bin/test cddl/contrib/opensolaris/cmd/dtrace cddl/contrib/opensolaris... X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 26 Feb 2013 21:16:19 -0000 Author: delphij Date: Tue Feb 26 21:16:10 2013 New Revision: 247353 URL: http://svnweb.freebsd.org/changeset/base/247353 Log: IFC @247348. Added: projects/zfsd/head/contrib/bind9/lib/dns/opensslecdsa_link.c - copied unchanged from r247348, head/contrib/bind9/lib/dns/opensslecdsa_link.c projects/zfsd/head/contrib/bmake/Makefile - copied unchanged from r247348, head/contrib/bmake/Makefile projects/zfsd/head/contrib/bmake/Makefile.config.in - copied unchanged from r247348, head/contrib/bmake/Makefile.config.in projects/zfsd/head/contrib/bmake/makefile.in - copied unchanged from r247348, head/contrib/bmake/makefile.in projects/zfsd/head/contrib/bmake/mk/ - copied from r247348, head/contrib/bmake/mk/ projects/zfsd/head/contrib/dialog/samples/dselect - copied unchanged from r247348, head/contrib/dialog/samples/dselect projects/zfsd/head/contrib/dialog/samples/valgrind.log - copied unchanged from r247348, head/contrib/dialog/samples/valgrind.log projects/zfsd/head/contrib/expat/FREEBSD-Xlist - copied unchanged from r247348, head/contrib/expat/FREEBSD-Xlist - copied from r247348, head/contrib/ldns/ projects/zfsd/head/contrib/libc-vis/ - copied from r247348, head/contrib/libc-vis/ projects/zfsd/head/contrib/libcxxrt/atomic.h - copied unchanged from r247348, head/contrib/libcxxrt/atomic.h projects/zfsd/head/contrib/llvm/include/llvm/ADT/MapVector.h - copied unchanged from r247348, head/contrib/llvm/include/llvm/ADT/MapVector.h projects/zfsd/head/contrib/llvm/include/llvm/AddressingMode.h - copied unchanged from r247348, head/contrib/llvm/include/llvm/AddressingMode.h projects/zfsd/head/contrib/llvm/include/llvm/Analysis/DependenceAnalysis.h - copied unchanged from r247348, head/contrib/llvm/include/llvm/Analysis/DependenceAnalysis.h projects/zfsd/head/contrib/llvm/include/llvm/Analysis/ProfileDataLoader.h - copied unchanged from r247348, head/contrib/llvm/include/llvm/Analysis/ProfileDataLoader.h projects/zfsd/head/contrib/llvm/include/llvm/Analysis/ProfileDataTypes.h - copied unchanged from r247348, head/contrib/llvm/include/llvm/Analysis/ProfileDataTypes.h projects/zfsd/head/contrib/llvm/include/llvm/CodeGen/CommandFlags.h - copied unchanged from r247348, head/contrib/llvm/include/llvm/CodeGen/CommandFlags.h projects/zfsd/head/contrib/llvm/include/llvm/CodeGen/MachinePostDominators.h - copied unchanged from r247348, head/contrib/llvm/include/llvm/CodeGen/MachinePostDominators.h projects/zfsd/head/contrib/llvm/include/llvm/CodeGen/ScheduleDAGILP.h - copied unchanged from r247348, head/contrib/llvm/include/llvm/CodeGen/ScheduleDAGILP.h projects/zfsd/head/contrib/llvm/include/llvm/CodeGen/TargetSchedule.h - copied unchanged from r247348, head/contrib/llvm/include/llvm/CodeGen/TargetSchedule.h projects/zfsd/head/contrib/llvm/include/llvm/DataLayout.h - copied unchanged from r247348, head/contrib/llvm/include/llvm/DataLayout.h projects/zfsd/head/contrib/llvm/include/llvm/ExecutionEngine/ObjectBuffer.h - copied unchanged from r247348, head/contrib/llvm/include/llvm/ExecutionEngine/ObjectBuffer.h projects/zfsd/head/contrib/llvm/include/llvm/ExecutionEngine/ObjectImage.h - copied unchanged from r247348, head/contrib/llvm/include/llvm/ExecutionEngine/ObjectImage.h projects/zfsd/head/contrib/llvm/include/llvm/Object/RelocVisitor.h - copied unchanged from r247348, head/contrib/llvm/include/llvm/Object/RelocVisitor.h projects/zfsd/head/contrib/llvm/include/llvm/Target/TargetTransformImpl.h - copied unchanged from r247348, head/contrib/llvm/include/llvm/Target/TargetTransformImpl.h projects/zfsd/head/contrib/llvm/include/llvm/TargetTransformInfo.h - copied unchanged from r247348, head/contrib/llvm/include/llvm/TargetTransformInfo.h projects/zfsd/head/contrib/llvm/include/llvm/Transforms/Utils/BypassSlowDivision.h - copied unchanged from r247348, head/contrib/llvm/include/llvm/Transforms/Utils/BypassSlowDivision.h projects/zfsd/head/contrib/llvm/include/llvm/Transforms/Utils/IntegerDivision.h - copied unchanged from r247348, head/contrib/llvm/include/llvm/Transforms/Utils/IntegerDivision.h projects/zfsd/head/contrib/llvm/include/llvm/Transforms/Utils/SimplifyLibCalls.h - copied unchanged from r247348, head/contrib/llvm/include/llvm/Transforms/Utils/SimplifyLibCalls.h projects/zfsd/head/contrib/llvm/lib/Analysis/CostModel.cpp - copied unchanged from r247348, head/contrib/llvm/lib/Analysis/CostModel.cpp projects/zfsd/head/contrib/llvm/lib/Analysis/DependenceAnalysis.cpp - copied unchanged from r247348, head/contrib/llvm/lib/Analysis/DependenceAnalysis.cpp projects/zfsd/head/contrib/llvm/lib/Analysis/ProfileDataLoader.cpp - copied unchanged from r247348, head/contrib/llvm/lib/Analysis/ProfileDataLoader.cpp projects/zfsd/head/contrib/llvm/lib/Analysis/ProfileDataLoaderPass.cpp - copied unchanged from r247348, head/contrib/llvm/lib/Analysis/ProfileDataLoaderPass.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/MachinePostDominators.cpp - copied unchanged from r247348, head/contrib/llvm/lib/CodeGen/MachinePostDominators.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/StackColoring.cpp - copied unchanged from r247348, head/contrib/llvm/lib/CodeGen/StackColoring.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/TargetSchedule.cpp - copied unchanged from r247348, head/contrib/llvm/lib/CodeGen/TargetSchedule.cpp projects/zfsd/head/contrib/llvm/lib/DebugInfo/DWARFDebugRangeList.cpp - copied unchanged from r247348, head/contrib/llvm/lib/DebugInfo/DWARFDebugRangeList.cpp projects/zfsd/head/contrib/llvm/lib/DebugInfo/DWARFDebugRangeList.h - copied unchanged from r247348, head/contrib/llvm/lib/DebugInfo/DWARFDebugRangeList.h projects/zfsd/head/contrib/llvm/lib/ExecutionEngine/IntelJITEvents/IntelJITEventsWrapper.h - copied unchanged from r247348, head/contrib/llvm/lib/ExecutionEngine/IntelJITEvents/IntelJITEventsWrapper.h projects/zfsd/head/contrib/llvm/lib/ExecutionEngine/IntelJITEvents/ittnotify_config.h - copied unchanged from r247348, head/contrib/llvm/lib/ExecutionEngine/IntelJITEvents/ittnotify_config.h projects/zfsd/head/contrib/llvm/lib/ExecutionEngine/IntelJITEvents/ittnotify_types.h - copied unchanged from r247348, head/contrib/llvm/lib/ExecutionEngine/IntelJITEvents/ittnotify_types.h projects/zfsd/head/contrib/llvm/lib/ExecutionEngine/IntelJITEvents/jitprofiling.c - copied unchanged from r247348, head/contrib/llvm/lib/ExecutionEngine/IntelJITEvents/jitprofiling.c projects/zfsd/head/contrib/llvm/lib/ExecutionEngine/IntelJITEvents/jitprofiling.h - copied unchanged from r247348, head/contrib/llvm/lib/ExecutionEngine/IntelJITEvents/jitprofiling.h projects/zfsd/head/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/ObjectImageCommon.h - copied unchanged from r247348, head/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/ObjectImageCommon.h projects/zfsd/head/contrib/llvm/lib/Target/ARM/ARMScheduleSwift.td - copied unchanged from r247348, head/contrib/llvm/lib/Target/ARM/ARMScheduleSwift.td projects/zfsd/head/contrib/llvm/lib/Target/Hexagon/HexagonMachineScheduler.cpp - copied unchanged from r247348, head/contrib/llvm/lib/Target/Hexagon/HexagonMachineScheduler.cpp projects/zfsd/head/contrib/llvm/lib/Target/Hexagon/HexagonMachineScheduler.h - copied unchanged from r247348, head/contrib/llvm/lib/Target/Hexagon/HexagonMachineScheduler.h projects/zfsd/head/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsDirectObjLower.cpp - copied unchanged from r247348, head/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsDirectObjLower.cpp projects/zfsd/head/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsDirectObjLower.h - copied unchanged from r247348, head/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsDirectObjLower.h projects/zfsd/head/contrib/llvm/lib/Target/Mips/MipsDSPInstrFormats.td - copied unchanged from r247348, head/contrib/llvm/lib/Target/Mips/MipsDSPInstrFormats.td projects/zfsd/head/contrib/llvm/lib/Target/Mips/MipsDSPInstrInfo.td - copied unchanged from r247348, head/contrib/llvm/lib/Target/Mips/MipsDSPInstrInfo.td projects/zfsd/head/contrib/llvm/lib/Target/PowerPC/PPCScheduleE500mc.td - copied unchanged from r247348, head/contrib/llvm/lib/Target/PowerPC/PPCScheduleE500mc.td projects/zfsd/head/contrib/llvm/lib/Target/PowerPC/PPCScheduleE5500.td - copied unchanged from r247348, head/contrib/llvm/lib/Target/PowerPC/PPCScheduleE5500.td projects/zfsd/head/contrib/llvm/lib/Target/TargetTransformImpl.cpp - copied unchanged from r247348, head/contrib/llvm/lib/Target/TargetTransformImpl.cpp projects/zfsd/head/contrib/llvm/lib/Target/X86/X86InstrTSX.td - copied unchanged from r247348, head/contrib/llvm/lib/Target/X86/X86InstrTSX.td projects/zfsd/head/contrib/llvm/lib/Transforms/IPO/BarrierNoopPass.cpp - copied unchanged from r247348, head/contrib/llvm/lib/Transforms/IPO/BarrierNoopPass.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/Instrumentation/BlackList.cpp - copied unchanged from r247348, head/contrib/llvm/lib/Transforms/Instrumentation/BlackList.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/Instrumentation/BlackList.h - copied unchanged from r247348, head/contrib/llvm/lib/Transforms/Instrumentation/BlackList.h projects/zfsd/head/contrib/llvm/lib/Transforms/Scalar/SROA.cpp - copied unchanged from r247348, head/contrib/llvm/lib/Transforms/Scalar/SROA.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/Utils/BypassSlowDivision.cpp - copied unchanged from r247348, head/contrib/llvm/lib/Transforms/Utils/BypassSlowDivision.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/Utils/IntegerDivision.cpp - copied unchanged from r247348, head/contrib/llvm/lib/Transforms/Utils/IntegerDivision.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/Utils/MetaRenamer.cpp - copied unchanged from r247348, head/contrib/llvm/lib/Transforms/Utils/MetaRenamer.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp - copied unchanged from r247348, head/contrib/llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/Vectorize/LoopVectorize.cpp - copied unchanged from r247348, head/contrib/llvm/lib/Transforms/Vectorize/LoopVectorize.cpp projects/zfsd/head/contrib/llvm/lib/VMCore/AttributesImpl.h - copied unchanged from r247348, head/contrib/llvm/lib/VMCore/AttributesImpl.h projects/zfsd/head/contrib/llvm/lib/VMCore/DataLayout.cpp - copied unchanged from r247348, head/contrib/llvm/lib/VMCore/DataLayout.cpp projects/zfsd/head/contrib/llvm/lib/VMCore/TargetTransformInfo.cpp - copied unchanged from r247348, head/contrib/llvm/lib/VMCore/TargetTransformInfo.cpp projects/zfsd/head/contrib/llvm/tools/clang/include/clang/AST/CommentCommands.td - copied unchanged from r247348, head/contrib/llvm/tools/clang/include/clang/AST/CommentCommands.td projects/zfsd/head/contrib/llvm/tools/clang/include/clang/AST/CommentHTMLTags.td - copied unchanged from r247348, head/contrib/llvm/tools/clang/include/clang/AST/CommentHTMLTags.td projects/zfsd/head/contrib/llvm/tools/clang/include/clang/ASTMatchers/ASTTypeTraits.h - copied unchanged from r247348, head/contrib/llvm/tools/clang/include/clang/ASTMatchers/ASTTypeTraits.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Analysis/DomainSpecific/ObjCNoReturn.h - copied unchanged from r247348, head/contrib/llvm/tools/clang/include/clang/Analysis/DomainSpecific/ObjCNoReturn.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticOptions.def - copied unchanged from r247348, head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticOptions.def projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticOptions.h - copied unchanged from r247348, head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticOptions.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Basic/Sanitizers.def - copied unchanged from r247348, head/contrib/llvm/tools/clang/include/clang/Basic/Sanitizers.def projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Frontend/CodeGenOptions.def - copied unchanged from r247348, head/contrib/llvm/tools/clang/include/clang/Frontend/CodeGenOptions.def projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Lex/HeaderSearchOptions.h - copied unchanged from r247348, head/contrib/llvm/tools/clang/include/clang/Lex/HeaderSearchOptions.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Lex/PPMutationListener.h - copied unchanged from r247348, head/contrib/llvm/tools/clang/include/clang/Lex/PPMutationListener.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Lex/PreprocessorOptions.h - copied unchanged from r247348, head/contrib/llvm/tools/clang/include/clang/Lex/PreprocessorOptions.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Rewrite/Core/ - copied from r247348, head/contrib/llvm/tools/clang/include/clang/Rewrite/Core/ projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Rewrite/Frontend/ - copied from r247348, head/contrib/llvm/tools/clang/include/clang/Rewrite/Frontend/ projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Sema/MultiplexExternalSemaSource.h - copied unchanged from r247348, head/contrib/llvm/tools/clang/include/clang/Sema/MultiplexExternalSemaSource.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/Analyses.def - copied unchanged from r247348, head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/Analyses.def projects/zfsd/head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.h - copied unchanged from r247348, head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/DynamicTypeInfo.h - copied unchanged from r247348, head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/DynamicTypeInfo.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Tooling/CommonOptionsParser.h - copied unchanged from r247348, head/contrib/llvm/tools/clang/include/clang/Tooling/CommonOptionsParser.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Tooling/CompilationDatabasePluginRegistry.h - copied unchanged from r247348, head/contrib/llvm/tools/clang/include/clang/Tooling/CompilationDatabasePluginRegistry.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Tooling/FileMatchTrie.h - copied unchanged from r247348, head/contrib/llvm/tools/clang/include/clang/Tooling/FileMatchTrie.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Tooling/JSONCompilationDatabase.h - copied unchanged from r247348, head/contrib/llvm/tools/clang/include/clang/Tooling/JSONCompilationDatabase.h projects/zfsd/head/contrib/llvm/tools/clang/lib/Analysis/BodyFarm.cpp - copied unchanged from r247348, head/contrib/llvm/tools/clang/lib/Analysis/BodyFarm.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Analysis/BodyFarm.h - copied unchanged from r247348, head/contrib/llvm/tools/clang/lib/Analysis/BodyFarm.h projects/zfsd/head/contrib/llvm/tools/clang/lib/Analysis/ObjCNoReturn.cpp - copied unchanged from r247348, head/contrib/llvm/tools/clang/lib/Analysis/ObjCNoReturn.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Driver/SanitizerArgs.h - copied unchanged from r247348, head/contrib/llvm/tools/clang/lib/Driver/SanitizerArgs.h projects/zfsd/head/contrib/llvm/tools/clang/lib/Headers/__wmmintrin_aes.h - copied unchanged from r247348, head/contrib/llvm/tools/clang/lib/Headers/__wmmintrin_aes.h projects/zfsd/head/contrib/llvm/tools/clang/lib/Headers/__wmmintrin_pclmul.h - copied unchanged from r247348, head/contrib/llvm/tools/clang/lib/Headers/__wmmintrin_pclmul.h projects/zfsd/head/contrib/llvm/tools/clang/lib/Headers/f16cintrin.h - copied unchanged from r247348, head/contrib/llvm/tools/clang/lib/Headers/f16cintrin.h projects/zfsd/head/contrib/llvm/tools/clang/lib/Headers/rtmintrin.h - copied unchanged from r247348, head/contrib/llvm/tools/clang/lib/Headers/rtmintrin.h projects/zfsd/head/contrib/llvm/tools/clang/lib/Rewrite/Core/ - copied from r247348, head/contrib/llvm/tools/clang/lib/Rewrite/Core/ projects/zfsd/head/contrib/llvm/tools/clang/lib/Rewrite/Frontend/ - copied from r247348, head/contrib/llvm/tools/clang/lib/Rewrite/Frontend/ projects/zfsd/head/contrib/llvm/tools/clang/lib/Sema/MultiplexExternalSemaSource.cpp - copied unchanged from r247348, head/contrib/llvm/tools/clang/lib/Sema/MultiplexExternalSemaSource.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Sema/ScopeInfo.cpp - copied unchanged from r247348, head/contrib/llvm/tools/clang/lib/Sema/ScopeInfo.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Sema/SemaStmtAsm.cpp - copied unchanged from r247348, head/contrib/llvm/tools/clang/lib/Sema/SemaStmtAsm.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/DirectIvarAssignment.cpp - copied unchanged from r247348, head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/DirectIvarAssignment.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/IvarInvalidationChecker.cpp - copied unchanged from r247348, head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/IvarInvalidationChecker.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ObjCMissingSuperCallChecker.cpp - copied unchanged from r247348, head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ObjCMissingSuperCallChecker.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/SimpleStreamChecker.cpp - copied unchanged from r247348, head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/SimpleStreamChecker.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/AnalyzerOptions.cpp - copied unchanged from r247348, head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/AnalyzerOptions.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/ConstraintManager.cpp - copied unchanged from r247348, head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/ConstraintManager.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Tooling/CommonOptionsParser.cpp - copied unchanged from r247348, head/contrib/llvm/tools/clang/lib/Tooling/CommonOptionsParser.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Tooling/FileMatchTrie.cpp - copied unchanged from r247348, head/contrib/llvm/tools/clang/lib/Tooling/FileMatchTrie.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Tooling/JSONCompilationDatabase.cpp - copied unchanged from r247348, head/contrib/llvm/tools/clang/lib/Tooling/JSONCompilationDatabase.cpp projects/zfsd/head/contrib/llvm/tools/clang/utils/TableGen/ClangCommentCommandInfoEmitter.cpp - copied unchanged from r247348, head/contrib/llvm/tools/clang/utils/TableGen/ClangCommentCommandInfoEmitter.cpp projects/zfsd/head/contrib/llvm/tools/clang/utils/TableGen/ClangCommentHTMLTagsEmitter.cpp - copied unchanged from r247348, head/contrib/llvm/tools/clang/utils/TableGen/ClangCommentHTMLTagsEmitter.cpp projects/zfsd/head/contrib/llvm/tools/lli/RecordingMemoryManager.cpp - copied unchanged from r247348, head/contrib/llvm/tools/lli/RecordingMemoryManager.cpp projects/zfsd/head/contrib/llvm/tools/lli/RecordingMemoryManager.h - copied unchanged from r247348, head/contrib/llvm/tools/lli/RecordingMemoryManager.h projects/zfsd/head/contrib/llvm/tools/lli/RemoteTarget.cpp - copied unchanged from r247348, head/contrib/llvm/tools/lli/RemoteTarget.cpp projects/zfsd/head/contrib/llvm/tools/lli/RemoteTarget.h - copied unchanged from r247348, head/contrib/llvm/tools/lli/RemoteTarget.h projects/zfsd/head/contrib/llvm/utils/TableGen/CodeGenMapTable.cpp - copied unchanged from r247348, head/contrib/llvm/utils/TableGen/CodeGenMapTable.cpp projects/zfsd/head/contrib/mknod/ - copied from r247348, head/contrib/mknod/ projects/zfsd/head/contrib/mtree/ - copied from r247348, head/contrib/mtree/ projects/zfsd/head/contrib/openbsm/bin/auditdistd/ - copied from r247348, head/contrib/openbsm/bin/auditdistd/ projects/zfsd/head/contrib/openbsm/compat/closefrom.h - copied unchanged from r247348, head/contrib/openbsm/compat/closefrom.h projects/zfsd/head/contrib/openbsm/compat/compat.h - copied unchanged from r247348, head/contrib/openbsm/compat/compat.h projects/zfsd/head/contrib/openbsm/compat/endian_enc.h - copied unchanged from r247348, head/contrib/openbsm/compat/endian_enc.h projects/zfsd/head/contrib/openbsm/compat/flopen.h - copied unchanged from r247348, head/contrib/openbsm/compat/flopen.h projects/zfsd/head/contrib/openbsm/compat/pidfile.h - copied unchanged from r247348, head/contrib/openbsm/compat/pidfile.h projects/zfsd/head/contrib/openbsm/compat/vis.h - copied unchanged from r247348, head/contrib/openbsm/compat/vis.h projects/zfsd/head/contrib/openbsm/config/ylwrap - copied unchanged from r247348, head/contrib/openbsm/config/ylwrap projects/zfsd/head/contrib/openbsm/m4/ - copied from r247348, head/contrib/openbsm/m4/ projects/zfsd/head/crypto/openssl/crypto/evp/evp_cnf.c - copied unchanged from r247348, head/crypto/openssl/crypto/evp/evp_cnf.c projects/zfsd/head/crypto/openssl/doc/crypto/EVP_PKEY_verify_recover.pod - copied unchanged from r247348, head/crypto/openssl/doc/crypto/EVP_PKEY_verify_recover.pod projects/zfsd/head/crypto/openssl/ssl/s3_cbc.c - copied unchanged from r247348, head/crypto/openssl/ssl/s3_cbc.c projects/zfsd/head/etc/rc.d/auditdistd - copied unchanged from r247348, head/etc/rc.d/auditdistd projects/zfsd/head/lib/clang/include/MipsGenAsmMatcher.inc - copied unchanged from r247348, head/lib/clang/include/MipsGenAsmMatcher.inc projects/zfsd/head/lib/clang/include/MipsGenMCPseudoLowering.inc - copied unchanged from r247348, head/lib/clang/include/MipsGenMCPseudoLowering.inc projects/zfsd/head/lib/clang/include/clang/AST/CommentCommandInfo.inc - copied unchanged from r247348, head/lib/clang/include/clang/AST/CommentCommandInfo.inc projects/zfsd/head/lib/clang/include/clang/AST/CommentHTMLTags.inc - copied unchanged from r247348, head/lib/clang/include/clang/AST/CommentHTMLTags.inc projects/zfsd/head/lib/clang/include/clang/AST/CommentHTMLTagsProperties.inc - copied unchanged from r247348, head/lib/clang/include/clang/AST/CommentHTMLTagsProperties.inc projects/zfsd/head/lib/clang/libclangrewritecore/ - copied from r247348, head/lib/clang/libclangrewritecore/ projects/zfsd/head/lib/clang/libclangrewritefrontend/ - copied from r247348, head/lib/clang/libclangrewritefrontend/ projects/zfsd/head/lib/libc/arm/Symbol_oabi.map - copied unchanged from r247348, head/lib/libc/arm/Symbol_oabi.map projects/zfsd/head/lib/libc/arm/aeabi/ - copied from r247348, head/lib/libc/arm/aeabi/ projects/zfsd/head/lib/libc/arm/sys/__vdso_gettc.c - copied unchanged from r247348, head/lib/libc/arm/sys/__vdso_gettc.c projects/zfsd/head/lib/libc/gen/unvis-compat.c - copied unchanged from r247348, head/lib/libc/gen/unvis-compat.c projects/zfsd/head/lib/libc/ia64/sys/__vdso_gettc.c - copied unchanged from r247348, head/lib/libc/ia64/sys/__vdso_gettc.c projects/zfsd/head/lib/libc/mips/sys/__vdso_gettc.c - copied unchanged from r247348, head/lib/libc/mips/sys/__vdso_gettc.c projects/zfsd/head/lib/libc/nls/zh_CN.GB18030.msg - copied unchanged from r247348, head/lib/libc/nls/zh_CN.GB18030.msg projects/zfsd/head/lib/libc/nls/zh_CN.GB2312.msg - copied unchanged from r247348, head/lib/libc/nls/zh_CN.GB2312.msg projects/zfsd/head/lib/libc/nls/zh_CN.UTF-8.msg - copied unchanged from r247348, head/lib/libc/nls/zh_CN.UTF-8.msg projects/zfsd/head/lib/libc/powerpc/sys/__vdso_gettc.c - copied unchanged from r247348, head/lib/libc/powerpc/sys/__vdso_gettc.c projects/zfsd/head/lib/libc/powerpc64/sys/__vdso_gettc.c - copied unchanged from r247348, head/lib/libc/powerpc64/sys/__vdso_gettc.c projects/zfsd/head/lib/libc/sparc64/sys/__vdso_gettc.c - copied unchanged from r247348, head/lib/libc/sparc64/sys/__vdso_gettc.c projects/zfsd/head/lib/libc/stdio/fmemopen.c - copied unchanged from r247348, head/lib/libc/stdio/fmemopen.c projects/zfsd/head/lib/libc/string/strchrnul.c - copied unchanged from r247348, head/lib/libc/string/strchrnul.c projects/zfsd/head/lib/libldns/ - copied from r247348, head/lib/libldns/ projects/zfsd/head/lib/libnetbsd/ - copied from r247348, head/lib/libnetbsd/ projects/zfsd/head/lib/libpmc/pmc.ivybridgexeon.3 - copied unchanged from r247348, head/lib/libpmc/pmc.ivybridgexeon.3 projects/zfsd/head/lib/libstand/amd64/ - copied from r247348, head/lib/libstand/amd64/ projects/zfsd/head/lib/libstand/strtoul.c - copied unchanged from r247348, head/lib/libstand/strtoul.c - copied from r247348, head/lib/libvmmapi/ projects/zfsd/head/sbin/hastd/refcnt.h - copied unchanged from r247348, head/sbin/hastd/refcnt.h projects/zfsd/head/secure/lib/libcrypto/man/EVP_PKEY_verify_recover.3 - copied unchanged from r247348, head/secure/lib/libcrypto/man/EVP_PKEY_verify_recover.3 - copied unchanged from r247348, head/share/man/man4/bhyve.4 projects/zfsd/head/share/syscons/keymaps/us.dvorakp.kbd - copied unchanged from r247348, head/share/syscons/keymaps/us.dvorakp.kbd - copied unchanged from r247348, head/sys/amd64/include/vmm.h - copied unchanged from r247348, head/sys/amd64/include/vmm_dev.h - copied unchanged from r247348, head/sys/amd64/include/vmm_instruction_emul.h - copied from r247348, head/sys/amd64/vmm/ projects/zfsd/head/sys/arm/allwinner/ - copied from r247348, head/sys/arm/allwinner/ projects/zfsd/head/sys/arm/arm/cpufunc_asm_arm11x6.S - copied unchanged from r247348, head/sys/arm/arm/cpufunc_asm_arm11x6.S projects/zfsd/head/sys/arm/arm/pl190.c - copied unchanged from r247348, head/sys/arm/arm/pl190.c projects/zfsd/head/sys/arm/conf/CUBIEBOARD - copied unchanged from r247348, head/sys/arm/conf/CUBIEBOARD projects/zfsd/head/sys/arm/conf/DREAMPLUG-1001 - copied unchanged from r247348, head/sys/arm/conf/DREAMPLUG-1001 projects/zfsd/head/sys/arm/conf/VERSATILEPB - copied unchanged from r247348, head/sys/arm/conf/VERSATILEPB projects/zfsd/head/sys/arm/versatile/ - copied from r247348, head/sys/arm/versatile/ projects/zfsd/head/sys/boot/fdt/dts/cubieboard.dts - copied unchanged from r247348, head/sys/boot/fdt/dts/cubieboard.dts projects/zfsd/head/sys/boot/fdt/dts/dreamplug-1001.dts - copied unchanged from r247348, head/sys/boot/fdt/dts/dreamplug-1001.dts projects/zfsd/head/sys/boot/fdt/dts/dreamplug-1001N.dts - copied unchanged from r247348, head/sys/boot/fdt/dts/dreamplug-1001N.dts projects/zfsd/head/sys/boot/fdt/dts/versatilepb.dts - copied unchanged from r247348, head/sys/boot/fdt/dts/versatilepb.dts projects/zfsd/head/sys/boot/fdt/help.fdt - copied unchanged from r247348, head/sys/boot/fdt/help.fdt projects/zfsd/head/sys/boot/ficl64/ - copied from r247348, head/sys/boot/ficl64/ projects/zfsd/head/sys/boot/usb/ - copied from r247348, head/sys/boot/usb/ projects/zfsd/head/sys/cddl/boot/zfs/lz4.c - copied unchanged from r247348, head/sys/cddl/boot/zfs/lz4.c projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/THIRDPARTYLICENSE.lz4 - copied unchanged from r247348, head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/THIRDPARTYLICENSE.lz4 projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/THIRDPARTYLICENSE.lz4.descrip - copied unchanged from r247348, head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/THIRDPARTYLICENSE.lz4.descrip projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/lz4.c - copied unchanged from r247348, head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/lz4.c projects/zfsd/head/sys/contrib/dev/acpica/compiler/aslfileio.c - copied unchanged from r247348, head/sys/contrib/dev/acpica/compiler/aslfileio.c projects/zfsd/head/sys/contrib/dev/acpica/compiler/aslhex.c - copied unchanged from r247348, head/sys/contrib/dev/acpica/compiler/aslhex.c projects/zfsd/head/sys/contrib/dev/acpica/compiler/aslmethod.c - copied unchanged from r247348, head/sys/contrib/dev/acpica/compiler/aslmethod.c projects/zfsd/head/sys/contrib/dev/acpica/compiler/aslnamesp.c - copied unchanged from r247348, head/sys/contrib/dev/acpica/compiler/aslnamesp.c projects/zfsd/head/sys/contrib/dev/acpica/compiler/aslprepkg.c - copied unchanged from r247348, head/sys/contrib/dev/acpica/compiler/aslprepkg.c projects/zfsd/head/sys/contrib/dev/acpica/compiler/aslxref.c - copied unchanged from r247348, head/sys/contrib/dev/acpica/compiler/aslxref.c projects/zfsd/head/sys/contrib/dev/acpica/components/debugger/dbconvert.c - copied unchanged from r247348, head/sys/contrib/dev/acpica/components/debugger/dbconvert.c projects/zfsd/head/sys/contrib/dev/acpica/components/events/evhandler.c - copied unchanged from r247348, head/sys/contrib/dev/acpica/components/events/evhandler.c projects/zfsd/head/sys/contrib/dev/acpica/components/namespace/nsconvert.c - copied unchanged from r247348, head/sys/contrib/dev/acpica/components/namespace/nsconvert.c projects/zfsd/head/sys/contrib/dev/acpica/components/namespace/nsprepkg.c - copied unchanged from r247348, head/sys/contrib/dev/acpica/components/namespace/nsprepkg.c projects/zfsd/head/sys/contrib/dev/acpica/components/parser/psobject.c - copied unchanged from r247348, head/sys/contrib/dev/acpica/components/parser/psobject.c projects/zfsd/head/sys/contrib/dev/acpica/components/parser/psopinfo.c - copied unchanged from r247348, head/sys/contrib/dev/acpica/components/parser/psopinfo.c projects/zfsd/head/sys/contrib/dev/acpica/components/resources/rsdumpinfo.c - copied unchanged from r247348, head/sys/contrib/dev/acpica/components/resources/rsdumpinfo.c projects/zfsd/head/sys/contrib/dev/acpica/components/utilities/utownerid.c - copied unchanged from r247348, head/sys/contrib/dev/acpica/components/utilities/utownerid.c projects/zfsd/head/sys/contrib/dev/acpica/components/utilities/utstring.c - copied unchanged from r247348, head/sys/contrib/dev/acpica/components/utilities/utstring.c projects/zfsd/head/sys/dev/altera/avgen/altera_avgen_fdt.c - copied unchanged from r247348, head/sys/dev/altera/avgen/altera_avgen_fdt.c projects/zfsd/head/sys/dev/altera/avgen/altera_avgen_nexus.c - copied unchanged from r247348, head/sys/dev/altera/avgen/altera_avgen_nexus.c projects/zfsd/head/sys/dev/altera/jtag_uart/altera_jtag_uart_fdt.c - copied unchanged from r247348, head/sys/dev/altera/jtag_uart/altera_jtag_uart_fdt.c projects/zfsd/head/sys/dev/altera/sdcard/altera_sdcard_fdt.c - copied unchanged from r247348, head/sys/dev/altera/sdcard/altera_sdcard_fdt.c projects/zfsd/head/sys/dev/ath/ath_hal/ar5416/ar5416_spectral.c - copied unchanged from r247348, head/sys/dev/ath/ath_hal/ar5416/ar5416_spectral.c projects/zfsd/head/sys/dev/ath/if_ath_spectral.c - copied unchanged from r247348, head/sys/dev/ath/if_ath_spectral.c projects/zfsd/head/sys/dev/ath/if_ath_spectral.h - copied unchanged from r247348, head/sys/dev/ath/if_ath_spectral.h - copied from r247348, head/sys/dev/bvm/ projects/zfsd/head/sys/dev/cxgbe/firmware/t4fw-1.8.4.0.bin.uu - copied unchanged from r247348, head/sys/dev/cxgbe/firmware/t4fw-1.8.4.0.bin.uu projects/zfsd/head/sys/dev/isf/isf_fdt.c - copied unchanged from r247348, head/sys/dev/isf/isf_fdt.c projects/zfsd/head/sys/dev/terasic/de4led/terasic_de4led_fdt.c - copied unchanged from r247348, head/sys/dev/terasic/de4led/terasic_de4led_fdt.c projects/zfsd/head/sys/dev/terasic/mtl/terasic_mtl_fdt.c - copied unchanged from r247348, head/sys/dev/terasic/mtl/terasic_mtl_fdt.c projects/zfsd/head/sys/dev/usb/usb_freebsd_loader.h - copied unchanged from r247348, head/sys/dev/usb/usb_freebsd_loader.h projects/zfsd/head/sys/kern/subr_bus_dma.c - copied unchanged from r247348, head/sys/kern/subr_bus_dma.c projects/zfsd/head/sys/kern/subr_busdma_bufalloc.c - copied unchanged from r247348, head/sys/kern/subr_busdma_bufalloc.c projects/zfsd/head/sys/libkern/arm/ldivmod.S - copied unchanged from r247348, head/sys/libkern/arm/ldivmod.S projects/zfsd/head/sys/libkern/arm/ldivmod_helper.c - copied unchanged from r247348, head/sys/libkern/arm/ldivmod_helper.c projects/zfsd/head/sys/mips/mips/bus_space_fdt.c - copied unchanged from r247348, head/sys/mips/mips/bus_space_fdt.c - copied from r247348, head/sys/modules/vmm/ projects/zfsd/head/sys/rpc/krpc.h - copied unchanged from r247348, head/sys/rpc/krpc.h projects/zfsd/head/sys/security/audit/bsm_domain.c - copied unchanged from r247348, head/sys/security/audit/bsm_domain.c projects/zfsd/head/sys/security/audit/bsm_errno.c - copied unchanged from r247348, head/sys/security/audit/bsm_errno.c projects/zfsd/head/sys/security/audit/bsm_fcntl.c - copied unchanged from r247348, head/sys/security/audit/bsm_fcntl.c projects/zfsd/head/sys/security/audit/bsm_socket_type.c - copied unchanged from r247348, head/sys/security/audit/bsm_socket_type.c projects/zfsd/head/sys/security/audit/bsm_token.c - copied unchanged from r247348, head/sys/security/audit/bsm_token.c projects/zfsd/head/sys/sys/busdma_bufalloc.h - copied unchanged from r247348, head/sys/sys/busdma_bufalloc.h projects/zfsd/head/sys/sys/memdesc.h - copied unchanged from r247348, head/sys/sys/memdesc.h projects/zfsd/head/sys/x86/include/elf.h - copied unchanged from r247348, head/sys/x86/include/elf.h projects/zfsd/head/sys/x86/include/frame.h - copied unchanged from r247348, head/sys/x86/include/frame.h projects/zfsd/head/sys/x86/include/sigframe.h - copied unchanged from r247348, head/sys/x86/include/sigframe.h projects/zfsd/head/sys/x86/include/signal.h - copied unchanged from r247348, head/sys/x86/include/signal.h projects/zfsd/head/sys/x86/include/ucontext.h - copied unchanged from r247348, head/sys/x86/include/ucontext.h projects/zfsd/head/tools/build/options/WITHOUT_CLANG_FULL - copied unchanged from r247348, head/tools/build/options/WITHOUT_CLANG_FULL projects/zfsd/head/tools/build/options/WITHOUT_LDNS - copied unchanged from r247348, head/tools/build/options/WITHOUT_LDNS projects/zfsd/head/tools/build/options/WITHOUT_LIBCPLUSPLUS - copied unchanged from r247348, head/tools/build/options/WITHOUT_LIBCPLUSPLUS projects/zfsd/head/tools/build/options/WITHOUT_LZMA_SUPPORT - copied unchanged from r247348, head/tools/build/options/WITHOUT_LZMA_SUPPORT projects/zfsd/head/tools/build/options/WITHOUT_PC_SYSINSTALL - copied unchanged from r247348, head/tools/build/options/WITHOUT_PC_SYSINSTALL projects/zfsd/head/tools/build/options/WITH_ARM_EABI - copied unchanged from r247348, head/tools/build/options/WITH_ARM_EABI projects/zfsd/head/tools/build/options/WITH_BSD_PATCH - copied unchanged from r247348, head/tools/build/options/WITH_BSD_PATCH projects/zfsd/head/tools/build/options/WITH_CLANG_FULL - copied unchanged from r247348, head/tools/build/options/WITH_CLANG_FULL projects/zfsd/head/tools/build/options/WITH_GPL_DTC - copied unchanged from r247348, head/tools/build/options/WITH_GPL_DTC projects/zfsd/head/tools/build/options/WITH_LDNS_UTILS - copied unchanged from r247348, head/tools/build/options/WITH_LDNS_UTILS projects/zfsd/head/tools/build/options/WITH_NMTREE - copied unchanged from r247348, head/tools/build/options/WITH_NMTREE projects/zfsd/head/tools/build/options/WITH_OPENSSH_NONE_CIPHER - copied unchanged from r247348, head/tools/build/options/WITH_OPENSSH_NONE_CIPHER projects/zfsd/head/tools/regression/bin/sh/builtins/read6.0 - copied unchanged from r247348, head/tools/regression/bin/sh/builtins/read6.0 projects/zfsd/head/tools/regression/bin/sh/builtins/wait4.0 - copied unchanged from r247348, head/tools/regression/bin/sh/builtins/wait4.0 projects/zfsd/head/tools/regression/bin/sh/builtins/wait5.0 - copied unchanged from r247348, head/tools/regression/bin/sh/builtins/wait5.0 projects/zfsd/head/tools/regression/bin/sh/errors/write-error1.0 - copied unchanged from r247348, head/tools/regression/bin/sh/errors/write-error1.0 projects/zfsd/head/tools/regression/bin/sh/execution/subshell1.0 - copied unchanged from r247348, head/tools/regression/bin/sh/execution/subshell1.0 projects/zfsd/head/tools/regression/bin/sh/execution/subshell1.0.stdout - copied unchanged from r247348, head/tools/regression/bin/sh/execution/subshell1.0.stdout projects/zfsd/head/tools/regression/bin/sh/execution/subshell2.0 - copied unchanged from r247348, head/tools/regression/bin/sh/execution/subshell2.0 projects/zfsd/head/tools/regression/bin/sh/execution/subshell3.0 - copied unchanged from r247348, head/tools/regression/bin/sh/execution/subshell3.0 projects/zfsd/head/tools/regression/bin/sh/execution/subshell4.0 - copied unchanged from r247348, head/tools/regression/bin/sh/execution/subshell4.0 projects/zfsd/head/tools/regression/bin/sh/expansion/cmdsubst14.0 - copied unchanged from r247348, head/tools/regression/bin/sh/expansion/cmdsubst14.0 projects/zfsd/head/tools/regression/bin/sh/expansion/cmdsubst15.0 - copied unchanged from r247348, head/tools/regression/bin/sh/expansion/cmdsubst15.0 projects/zfsd/head/tools/regression/bin/sh/expansion/cmdsubst16.0 - copied unchanged from r247348, head/tools/regression/bin/sh/expansion/cmdsubst16.0 projects/zfsd/head/tools/regression/bin/sh/expansion/cmdsubst17.0 - copied unchanged from r247348, head/tools/regression/bin/sh/expansion/cmdsubst17.0 projects/zfsd/head/tools/regression/bin/sh/parser/empty-braces1.0 - copied unchanged from r247348, head/tools/regression/bin/sh/parser/empty-braces1.0 projects/zfsd/head/tools/regression/lib/libc/stdio/test-fmemopen.c - copied unchanged from r247348, head/tools/regression/lib/libc/stdio/test-fmemopen.c projects/zfsd/head/tools/regression/lib/libc/stdio/test-fmemopen.t - copied unchanged from r247348, head/tools/regression/lib/libc/stdio/test-fmemopen.t projects/zfsd/head/tools/regression/usr.bin/printf/regress.zero.out - copied unchanged from r247348, head/tools/regression/usr.bin/printf/regress.zero.out projects/zfsd/head/tools/tools/ath/athalq/tdma.c - copied unchanged from r247348, head/tools/tools/ath/athalq/tdma.c projects/zfsd/head/tools/tools/ath/athalq/tdma.h - copied unchanged from r247348, head/tools/tools/ath/athalq/tdma.h projects/zfsd/head/tools/tools/ath/athspectral/ - copied from r247348, head/tools/tools/ath/athspectral/ projects/zfsd/head/tools/tools/netmap/nm_util.c - copied unchanged from r247348, head/tools/tools/netmap/nm_util.c projects/zfsd/head/tools/tools/netmap/nm_util.h - copied unchanged from r247348, head/tools/tools/netmap/nm_util.h projects/zfsd/head/usr.bin/bmake/Makefile.config - copied unchanged from r247348, head/usr.bin/bmake/Makefile.config projects/zfsd/head/usr.bin/dtc/ - copied from r247348, head/usr.bin/dtc/ projects/zfsd/head/usr.bin/patch/ - copied from r247348, head/usr.bin/patch/ projects/zfsd/head/usr.sbin/auditdistd/ - copied from r247348, head/usr.sbin/auditdistd/ - copied from r247348, head/usr.sbin/bhyve/ - copied from r247348, head/usr.sbin/bhyvectl/ - copied from r247348, head/usr.sbin/bhyveload/ projects/zfsd/head/usr.sbin/bsdconfig/include/media.hlp - copied unchanged from r247348, head/usr.sbin/bsdconfig/include/media.hlp projects/zfsd/head/usr.sbin/bsdconfig/include/network_device.hlp - copied unchanged from r247348, head/usr.sbin/bsdconfig/include/network_device.hlp projects/zfsd/head/usr.sbin/bsdconfig/include/options.hlp - copied unchanged from r247348, head/usr.sbin/bsdconfig/include/options.hlp projects/zfsd/head/usr.sbin/bsdconfig/include/tcp.hlp - copied unchanged from r247348, head/usr.sbin/bsdconfig/include/tcp.hlp projects/zfsd/head/usr.sbin/bsdconfig/share/device.subr - copied unchanged from r247348, head/usr.sbin/bsdconfig/share/device.subr projects/zfsd/head/usr.sbin/bsdconfig/share/media/ - copied from r247348, head/usr.sbin/bsdconfig/share/media/ projects/zfsd/head/usr.sbin/bsdconfig/share/script.subr - copied unchanged from r247348, head/usr.sbin/bsdconfig/share/script.subr projects/zfsd/head/usr.sbin/bsdconfig/share/struct.subr - copied unchanged from r247348, head/usr.sbin/bsdconfig/share/struct.subr projects/zfsd/head/usr.sbin/bsdconfig/share/variable.subr - copied unchanged from r247348, head/usr.sbin/bsdconfig/share/variable.subr projects/zfsd/head/usr.sbin/bsdinstall/partedit/sade.8 - copied unchanged from r247348, head/usr.sbin/bsdinstall/partedit/sade.8 projects/zfsd/head/usr.sbin/bsdinstall/partedit/scripted.c - copied unchanged from r247348, head/usr.sbin/bsdinstall/partedit/scripted.c projects/zfsd/head/usr.sbin/bsdinstall/scripts/script - copied unchanged from r247348, head/usr.sbin/bsdinstall/scripts/script projects/zfsd/head/usr.sbin/nmtree/ - copied from r247348, head/usr.sbin/nmtree/ projects/zfsd/head/usr.sbin/pkg/dns_utils.c - copied unchanged from r247348, head/usr.sbin/pkg/dns_utils.c projects/zfsd/head/usr.sbin/pkg/dns_utils.h - copied unchanged from r247348, head/usr.sbin/pkg/dns_utils.h Directory Properties: projects/zfsd/head/contrib/ldns/ (props changed) projects/zfsd/head/lib/libvmmapi/ (props changed) projects/zfsd/head/share/man/man4/bhyve.4 (props changed) projects/zfsd/head/sys/amd64/include/vmm.h (props changed) projects/zfsd/head/sys/amd64/include/vmm_dev.h (props changed) projects/zfsd/head/sys/amd64/include/vmm_instruction_emul.h (props changed) projects/zfsd/head/sys/amd64/vmm/ (props changed) projects/zfsd/head/sys/dev/bvm/ (props changed) projects/zfsd/head/sys/modules/vmm/ (props changed) projects/zfsd/head/usr.sbin/bhyve/ (props changed) projects/zfsd/head/usr.sbin/bhyvectl/ (props changed) projects/zfsd/head/usr.sbin/bhyveload/ (props changed) Deleted: projects/zfsd/head/contrib/bmake/Makefile.in projects/zfsd/head/contrib/dialog/samples/dft-cancel projects/zfsd/head/contrib/dialog/samples/dft-extra projects/zfsd/head/contrib/dialog/samples/dft-help projects/zfsd/head/contrib/dialog/samples/dft-no projects/zfsd/head/contrib/dialog/samples/fselect0 projects/zfsd/head/contrib/dialog/samples/with-dquotes projects/zfsd/head/contrib/dialog/samples/with-squotes projects/zfsd/head/contrib/expat/FREEBSD-upgrade projects/zfsd/head/contrib/expat/configure projects/zfsd/head/contrib/expat/doc/valid-xhtml10.png projects/zfsd/head/contrib/expat/lib/winconfig.h projects/zfsd/head/contrib/expat/tests/benchmark/benchmark.dsp projects/zfsd/head/contrib/expat/tests/benchmark/benchmark.dsw projects/zfsd/head/contrib/llvm/include/llvm/ADT/Trie.h projects/zfsd/head/contrib/llvm/include/llvm/Analysis/LoopDependenceAnalysis.h projects/zfsd/head/contrib/llvm/include/llvm/ExecutionEngine/IntelJITEventsWrapper.h projects/zfsd/head/contrib/llvm/include/llvm/TableGen/TableGenAction.h projects/zfsd/head/contrib/llvm/include/llvm/Target/TargetData.h projects/zfsd/head/contrib/llvm/include/llvm/Target/TargetELFWriterInfo.h projects/zfsd/head/contrib/llvm/lib/Analysis/LoopDependenceAnalysis.cpp projects/zfsd/head/contrib/llvm/lib/ExecutionEngine/MCJIT/MCJITMemoryManager.cpp projects/zfsd/head/contrib/llvm/lib/ExecutionEngine/MCJIT/MCJITMemoryManager.h projects/zfsd/head/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/ObjectImage.h projects/zfsd/head/contrib/llvm/lib/TableGen/TableGenAction.cpp projects/zfsd/head/contrib/llvm/lib/Target/AMDGPU/ projects/zfsd/head/contrib/llvm/lib/Target/ARM/ARMELFWriterInfo.cpp projects/zfsd/head/contrib/llvm/lib/Target/ARM/ARMELFWriterInfo.h projects/zfsd/head/contrib/llvm/lib/Target/MBlaze/MBlazeELFWriterInfo.cpp projects/zfsd/head/contrib/llvm/lib/Target/MBlaze/MBlazeELFWriterInfo.h projects/zfsd/head/contrib/llvm/lib/Target/TargetData.cpp projects/zfsd/head/contrib/llvm/lib/Target/TargetELFWriterInfo.cpp projects/zfsd/head/contrib/llvm/lib/Target/X86/X86ELFWriterInfo.cpp projects/zfsd/head/contrib/llvm/lib/Target/X86/X86ELFWriterInfo.h projects/zfsd/head/contrib/llvm/lib/Target/X86/X86MCInstLower.h projects/zfsd/head/contrib/llvm/lib/Transforms/Instrumentation/FunctionBlackList.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/Instrumentation/FunctionBlackList.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Frontend/Analyses.def projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Frontend/AnalyzerOptions.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Frontend/DiagnosticOptions.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Frontend/HeaderSearchOptions.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Frontend/PreprocessorOptions.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Rewrite/ASTConsumers.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Rewrite/DeltaTree.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Rewrite/FixItRewriter.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Rewrite/FrontendActions.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Rewrite/HTMLRewrite.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Rewrite/RewriteRope.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Rewrite/Rewriter.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Rewrite/Rewriters.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Rewrite/TokenRewriter.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Checkers/DereferenceChecker.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Tooling/CommandLineClangTool.h projects/zfsd/head/contrib/llvm/tools/clang/lib/Rewrite/DeltaTree.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Rewrite/FixItRewriter.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Rewrite/FrontendActions.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Rewrite/HTMLPrint.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Rewrite/HTMLRewrite.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Rewrite/InclusionRewriter.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Rewrite/RewriteMacros.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Rewrite/RewriteModernObjC.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Rewrite/RewriteObjC.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Rewrite/RewriteRope.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Rewrite/RewriteTest.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Rewrite/Rewriter.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Rewrite/TokenRewriter.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/AdjustedReturnValueChecker.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/OSAtomicChecker.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/BasicConstraintManager.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Tooling/CommandLineClangTool.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Tooling/CustomCompilationDatabase.h projects/zfsd/head/crypto/openssl/doc/crypto/EVP_PKEY_verifyrecover.pod projects/zfsd/head/include/vis.h projects/zfsd/head/lib/clang/libclangrewrite/ projects/zfsd/head/lib/libc/gen/unvis.3 projects/zfsd/head/lib/libc/gen/unvis.c projects/zfsd/head/lib/libc/gen/vis.3 projects/zfsd/head/lib/libc/gen/vis.c projects/zfsd/head/lib/libdisk/ projects/zfsd/head/lib/libstand/if_ether.h projects/zfsd/head/secure/lib/libcrypto/man/EVP_PKEY_verifyrecover.3 projects/zfsd/head/share/examples/cvsup/gnats-supfile projects/zfsd/head/share/mk/bsd.compat.mk projects/zfsd/head/sys/arm/mv/kirkwood/files.sheevaplug projects/zfsd/head/sys/arm/mv/kirkwood/sheevaplug.c projects/zfsd/head/sys/arm/mv/kirkwood/std.sheevaplug projects/zfsd/head/sys/boot/userboot/libstand/amd64/ projects/zfsd/head/sys/dev/cxgbe/common/jhash.h projects/zfsd/head/sys/dev/cxgbe/firmware/t4fw-1.6.2.0.bin.uu projects/zfsd/head/sys/dev/mxge/mxge_lro.c projects/zfsd/head/sys/dev/netmap/netmap_mem1.c projects/zfsd/head/sys/dev/xen/evtchn/ projects/zfsd/head/sys/dev/xen/xenpci/machine_reboot.c projects/zfsd/head/sys/security/audit/audit_bsm_domain.c projects/zfsd/head/sys/security/audit/audit_bsm_errno.c projects/zfsd/head/sys/security/audit/audit_bsm_fcntl.c projects/zfsd/head/sys/security/audit/audit_bsm_socket_type.c projects/zfsd/head/sys/security/audit/audit_bsm_token.c projects/zfsd/head/usr.sbin/bsdconfig/networking/include/tcp.hlp projects/zfsd/head/usr.sbin/sade/ Modified: projects/zfsd/head/COPYRIGHT projects/zfsd/head/LOCKS projects/zfsd/head/Makefile.inc1 projects/zfsd/head/ObsoleteFiles.inc projects/zfsd/head/UPDATING projects/zfsd/head/bin/cat/cat.1 projects/zfsd/head/bin/cat/cat.c projects/zfsd/head/bin/cp/cp.c projects/zfsd/head/bin/cp/utils.c projects/zfsd/head/bin/date/netdate.c projects/zfsd/head/bin/df/df.1 projects/zfsd/head/bin/df/df.c projects/zfsd/head/bin/ln/ln.1 projects/zfsd/head/bin/ls/util.c projects/zfsd/head/bin/ps/extern.h projects/zfsd/head/bin/ps/fmt.c projects/zfsd/head/bin/ps/ps.1 projects/zfsd/head/bin/ps/ps.c projects/zfsd/head/bin/pwait/pwait.c projects/zfsd/head/bin/setfacl/setfacl.1 projects/zfsd/head/bin/sh/TOUR projects/zfsd/head/bin/sh/eval.c projects/zfsd/head/bin/sh/exec.c projects/zfsd/head/bin/sh/expand.c projects/zfsd/head/bin/sh/expand.h projects/zfsd/head/bin/sh/init.h projects/zfsd/head/bin/sh/input.c projects/zfsd/head/bin/sh/jobs.c projects/zfsd/head/bin/sh/main.c projects/zfsd/head/bin/sh/miscbltin.c projects/zfsd/head/bin/sh/mkinit.c projects/zfsd/head/bin/sh/mksyntax.c projects/zfsd/head/bin/sh/nodetypes projects/zfsd/head/bin/sh/output.c projects/zfsd/head/bin/sh/output.h projects/zfsd/head/bin/sh/parser.c projects/zfsd/head/bin/sh/parser.h projects/zfsd/head/bin/sh/redir.c projects/zfsd/head/bin/sh/sh.1 projects/zfsd/head/bin/sh/trap.c projects/zfsd/head/bin/sh/trap.h projects/zfsd/head/bin/sh/var.c projects/zfsd/head/bin/test/test.1 projects/zfsd/head/bin/test/test.c projects/zfsd/head/cddl/contrib/opensolaris/cmd/dtrace/dtrace.c projects/zfsd/head/cddl/contrib/opensolaris/cmd/zdb/zdb.c projects/zfsd/head/cddl/contrib/opensolaris/cmd/zfs/zfs.8 projects/zfsd/head/cddl/contrib/opensolaris/cmd/zinject/translate.c projects/zfsd/head/cddl/contrib/opensolaris/cmd/zinject/zinject.c projects/zfsd/head/cddl/contrib/opensolaris/cmd/zpool/zpool-features.7 projects/zfsd/head/cddl/contrib/opensolaris/cmd/zpool/zpool_main.c projects/zfsd/head/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_import.c projects/zfsd/head/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_sendrecv.c projects/zfsd/head/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_status.c projects/zfsd/head/cddl/contrib/opensolaris/lib/libzpool/common/kernel.c projects/zfsd/head/cddl/contrib/opensolaris/lib/libzpool/common/sys/zfs_context.h projects/zfsd/head/cddl/lib/libdtrace/Makefile projects/zfsd/head/contrib/bind9/CHANGES projects/zfsd/head/contrib/bind9/Makefile.in projects/zfsd/head/contrib/bind9/README projects/zfsd/head/contrib/bind9/acconfig.h projects/zfsd/head/contrib/bind9/bin/Makefile.in projects/zfsd/head/contrib/bind9/bin/check/Makefile.in projects/zfsd/head/contrib/bind9/bin/check/check-tool.c projects/zfsd/head/contrib/bind9/bin/confgen/Makefile.in projects/zfsd/head/contrib/bind9/bin/confgen/unix/Makefile.in projects/zfsd/head/contrib/bind9/bin/dig/Makefile.in projects/zfsd/head/contrib/bind9/bin/dig/nslookup.c projects/zfsd/head/contrib/bind9/bin/dnssec/Makefile.in projects/zfsd/head/contrib/bind9/bin/dnssec/dnssec-dsfromkey.8 projects/zfsd/head/contrib/bind9/bin/dnssec/dnssec-dsfromkey.c projects/zfsd/head/contrib/bind9/bin/dnssec/dnssec-dsfromkey.docbook projects/zfsd/head/contrib/bind9/bin/dnssec/dnssec-dsfromkey.html projects/zfsd/head/contrib/bind9/bin/dnssec/dnssec-keyfromlabel.8 projects/zfsd/head/contrib/bind9/bin/dnssec/dnssec-keyfromlabel.c projects/zfsd/head/contrib/bind9/bin/dnssec/dnssec-keyfromlabel.docbook projects/zfsd/head/contrib/bind9/bin/dnssec/dnssec-keyfromlabel.html projects/zfsd/head/contrib/bind9/bin/dnssec/dnssec-keygen.8 projects/zfsd/head/contrib/bind9/bin/dnssec/dnssec-keygen.c projects/zfsd/head/contrib/bind9/bin/dnssec/dnssec-keygen.docbook projects/zfsd/head/contrib/bind9/bin/dnssec/dnssec-keygen.html projects/zfsd/head/contrib/bind9/bin/dnssec/dnssec-settime.c projects/zfsd/head/contrib/bind9/bin/dnssec/dnssec-signzone.c projects/zfsd/head/contrib/bind9/bin/named/Makefile.in projects/zfsd/head/contrib/bind9/bin/named/builtin.c projects/zfsd/head/contrib/bind9/bin/named/config.c projects/zfsd/head/contrib/bind9/bin/named/controlconf.c projects/zfsd/head/contrib/bind9/bin/named/convertxsl.pl projects/zfsd/head/contrib/bind9/bin/named/query.c projects/zfsd/head/contrib/bind9/bin/named/server.c projects/zfsd/head/contrib/bind9/bin/named/statschannel.c projects/zfsd/head/contrib/bind9/bin/named/unix/Makefile.in projects/zfsd/head/contrib/bind9/bin/nsupdate/Makefile.in projects/zfsd/head/contrib/bind9/bin/nsupdate/nsupdate.c projects/zfsd/head/contrib/bind9/bin/rndc/Makefile.in projects/zfsd/head/contrib/bind9/bin/tools/Makefile.in projects/zfsd/head/contrib/bind9/config.h.in projects/zfsd/head/contrib/bind9/configure.in projects/zfsd/head/contrib/bind9/doc/Makefile.in projects/zfsd/head/contrib/bind9/doc/arm/Bv9ARM-book.xml projects/zfsd/head/contrib/bind9/doc/arm/Bv9ARM.ch04.html projects/zfsd/head/contrib/bind9/doc/arm/Bv9ARM.ch06.html projects/zfsd/head/contrib/bind9/doc/arm/Bv9ARM.ch07.html projects/zfsd/head/contrib/bind9/doc/arm/Bv9ARM.ch08.html projects/zfsd/head/contrib/bind9/doc/arm/Bv9ARM.ch09.html projects/zfsd/head/contrib/bind9/doc/arm/Bv9ARM.html projects/zfsd/head/contrib/bind9/doc/arm/Bv9ARM.pdf projects/zfsd/head/contrib/bind9/doc/arm/Makefile.in projects/zfsd/head/contrib/bind9/doc/arm/man.arpaname.html projects/zfsd/head/contrib/bind9/doc/arm/man.ddns-confgen.html projects/zfsd/head/contrib/bind9/doc/arm/man.dig.html projects/zfsd/head/contrib/bind9/doc/arm/man.dnssec-dsfromkey.html projects/zfsd/head/contrib/bind9/doc/arm/man.dnssec-keyfromlabel.html projects/zfsd/head/contrib/bind9/doc/arm/man.dnssec-keygen.html projects/zfsd/head/contrib/bind9/doc/arm/man.dnssec-revoke.html projects/zfsd/head/contrib/bind9/doc/arm/man.dnssec-settime.html projects/zfsd/head/contrib/bind9/doc/arm/man.dnssec-signzone.html projects/zfsd/head/contrib/bind9/doc/arm/man.genrandom.html projects/zfsd/head/contrib/bind9/doc/arm/man.host.html projects/zfsd/head/contrib/bind9/doc/arm/man.isc-hmac-fixup.html projects/zfsd/head/contrib/bind9/doc/arm/man.named-checkconf.html projects/zfsd/head/contrib/bind9/doc/arm/man.named-checkzone.html projects/zfsd/head/contrib/bind9/doc/arm/man.named-journalprint.html projects/zfsd/head/contrib/bind9/doc/arm/man.named.html projects/zfsd/head/contrib/bind9/doc/arm/man.nsec3hash.html projects/zfsd/head/contrib/bind9/doc/arm/man.nsupdate.html projects/zfsd/head/contrib/bind9/doc/arm/man.rndc-confgen.html projects/zfsd/head/contrib/bind9/doc/arm/man.rndc.conf.html projects/zfsd/head/contrib/bind9/doc/arm/man.rndc.html projects/zfsd/head/contrib/bind9/doc/misc/Makefile.in projects/zfsd/head/contrib/bind9/doc/misc/format-options.pl projects/zfsd/head/contrib/bind9/doc/misc/options projects/zfsd/head/contrib/bind9/doc/misc/sort-options.pl projects/zfsd/head/contrib/bind9/isc-config.sh.in projects/zfsd/head/contrib/bind9/lib/Makefile.in projects/zfsd/head/contrib/bind9/lib/bind9/Makefile.in projects/zfsd/head/contrib/bind9/lib/bind9/api projects/zfsd/head/contrib/bind9/lib/bind9/check.c projects/zfsd/head/contrib/bind9/lib/bind9/include/Makefile.in projects/zfsd/head/contrib/bind9/lib/bind9/include/bind9/Makefile.in projects/zfsd/head/contrib/bind9/lib/dns/Makefile.in projects/zfsd/head/contrib/bind9/lib/dns/adb.c projects/zfsd/head/contrib/bind9/lib/dns/api projects/zfsd/head/contrib/bind9/lib/dns/db.c projects/zfsd/head/contrib/bind9/lib/dns/dnssec.c projects/zfsd/head/contrib/bind9/lib/dns/ds.c projects/zfsd/head/contrib/bind9/lib/dns/dst_api.c projects/zfsd/head/contrib/bind9/lib/dns/dst_internal.h projects/zfsd/head/contrib/bind9/lib/dns/dst_openssl.h projects/zfsd/head/contrib/bind9/lib/dns/dst_parse.c projects/zfsd/head/contrib/bind9/lib/dns/dst_parse.h projects/zfsd/head/contrib/bind9/lib/dns/dst_result.c projects/zfsd/head/contrib/bind9/lib/dns/include/Makefile.in projects/zfsd/head/contrib/bind9/lib/dns/include/dns/db.h projects/zfsd/head/contrib/bind9/lib/dns/include/dns/dnssec.h projects/zfsd/head/contrib/bind9/lib/dns/include/dns/ds.h projects/zfsd/head/contrib/bind9/lib/dns/include/dns/iptable.h projects/zfsd/head/contrib/bind9/lib/dns/include/dns/keyvalues.h projects/zfsd/head/contrib/bind9/lib/dns/include/dns/log.h projects/zfsd/head/contrib/bind9/lib/dns/include/dns/rdataset.h projects/zfsd/head/contrib/bind9/lib/dns/include/dns/rpz.h projects/zfsd/head/contrib/bind9/lib/dns/include/dns/stats.h projects/zfsd/head/contrib/bind9/lib/dns/include/dns/view.h projects/zfsd/head/contrib/bind9/lib/dns/include/dns/zone.h projects/zfsd/head/contrib/bind9/lib/dns/include/dst/Makefile.in projects/zfsd/head/contrib/bind9/lib/dns/include/dst/dst.h projects/zfsd/head/contrib/bind9/lib/dns/include/dst/result.h projects/zfsd/head/contrib/bind9/lib/dns/log.c projects/zfsd/head/contrib/bind9/lib/dns/master.c projects/zfsd/head/contrib/bind9/lib/dns/masterdump.c projects/zfsd/head/contrib/bind9/lib/dns/openssl_link.c projects/zfsd/head/contrib/bind9/lib/dns/openssldh_link.c projects/zfsd/head/contrib/bind9/lib/dns/openssldsa_link.c projects/zfsd/head/contrib/bind9/lib/dns/opensslgost_link.c projects/zfsd/head/contrib/bind9/lib/dns/opensslrsa_link.c projects/zfsd/head/contrib/bind9/lib/dns/rbtdb.c projects/zfsd/head/contrib/bind9/lib/dns/rcode.c projects/zfsd/head/contrib/bind9/lib/dns/rdata.c projects/zfsd/head/contrib/bind9/lib/dns/rdata/generic/dlv_32769.c projects/zfsd/head/contrib/bind9/lib/dns/rdata/generic/ds_43.c projects/zfsd/head/contrib/bind9/lib/dns/rdataset.c projects/zfsd/head/contrib/bind9/lib/dns/resolver.c projects/zfsd/head/contrib/bind9/lib/dns/rpz.c projects/zfsd/head/contrib/bind9/lib/dns/spnego_asn1.pl projects/zfsd/head/contrib/bind9/lib/dns/validator.c projects/zfsd/head/contrib/bind9/lib/dns/view.c projects/zfsd/head/contrib/bind9/lib/dns/zone.c projects/zfsd/head/contrib/bind9/lib/export/Makefile.in projects/zfsd/head/contrib/bind9/lib/export/dns/Makefile.in projects/zfsd/head/contrib/bind9/lib/export/dns/include/Makefile.in projects/zfsd/head/contrib/bind9/lib/export/dns/include/dns/Makefile.in projects/zfsd/head/contrib/bind9/lib/export/dns/include/dst/Makefile.in projects/zfsd/head/contrib/bind9/lib/export/irs/include/irs/Makefile.in projects/zfsd/head/contrib/bind9/lib/export/isc/Makefile.in projects/zfsd/head/contrib/bind9/lib/export/isc/include/isc/Makefile.in projects/zfsd/head/contrib/bind9/lib/export/isc/nls/Makefile.in projects/zfsd/head/contrib/bind9/lib/export/isc/nothreads/Makefile.in projects/zfsd/head/contrib/bind9/lib/export/isc/nothreads/include/isc/Makefile.in projects/zfsd/head/contrib/bind9/lib/export/isc/pthreads/Makefile.in projects/zfsd/head/contrib/bind9/lib/export/isc/pthreads/include/isc/Makefile.in projects/zfsd/head/contrib/bind9/lib/export/isc/unix/Makefile.in projects/zfsd/head/contrib/bind9/lib/export/isc/unix/include/isc/Makefile.in projects/zfsd/head/contrib/bind9/lib/export/isccfg/include/isccfg/Makefile.in projects/zfsd/head/contrib/bind9/lib/export/samples/Makefile-postinstall.in projects/zfsd/head/contrib/bind9/lib/export/samples/Makefile.in projects/zfsd/head/contrib/bind9/lib/irs/Makefile.in projects/zfsd/head/contrib/bind9/lib/irs/include/Makefile.in projects/zfsd/head/contrib/bind9/lib/irs/include/irs/Makefile.in projects/zfsd/head/contrib/bind9/lib/isc/alpha/Makefile.in projects/zfsd/head/contrib/bind9/lib/isc/alpha/include/Makefile.in projects/zfsd/head/contrib/bind9/lib/isc/alpha/include/isc/Makefile.in projects/zfsd/head/contrib/bind9/lib/isc/api projects/zfsd/head/contrib/bind9/lib/isc/ia64/Makefile.in projects/zfsd/head/contrib/bind9/lib/isc/ia64/include/Makefile.in projects/zfsd/head/contrib/bind9/lib/isc/ia64/include/isc/Makefile.in projects/zfsd/head/contrib/bind9/lib/isc/ia64/include/isc/atomic.h projects/zfsd/head/contrib/bind9/lib/isc/include/Makefile.in projects/zfsd/head/contrib/bind9/lib/isc/include/isc/file.h projects/zfsd/head/contrib/bind9/lib/isc/include/isc/namespace.h projects/zfsd/head/contrib/bind9/lib/isc/include/isc/task.h projects/zfsd/head/contrib/bind9/lib/isc/mem.c projects/zfsd/head/contrib/bind9/lib/isc/mips/Makefile.in projects/zfsd/head/contrib/bind9/lib/isc/mips/include/Makefile.in projects/zfsd/head/contrib/bind9/lib/isc/mips/include/isc/Makefile.in projects/zfsd/head/contrib/bind9/lib/isc/nls/Makefile.in projects/zfsd/head/contrib/bind9/lib/isc/noatomic/Makefile.in projects/zfsd/head/contrib/bind9/lib/isc/noatomic/include/Makefile.in projects/zfsd/head/contrib/bind9/lib/isc/noatomic/include/isc/Makefile.in projects/zfsd/head/contrib/bind9/lib/isc/nothreads/Makefile.in projects/zfsd/head/contrib/bind9/lib/isc/nothreads/include/Makefile.in projects/zfsd/head/contrib/bind9/lib/isc/nothreads/include/isc/Makefile.in projects/zfsd/head/contrib/bind9/lib/isc/powerpc/Makefile.in projects/zfsd/head/contrib/bind9/lib/isc/powerpc/include/Makefile.in projects/zfsd/head/contrib/bind9/lib/isc/powerpc/include/isc/Makefile.in projects/zfsd/head/contrib/bind9/lib/isc/pthreads/Makefile.in projects/zfsd/head/contrib/bind9/lib/isc/pthreads/condition.c projects/zfsd/head/contrib/bind9/lib/isc/pthreads/include/Makefile.in projects/zfsd/head/contrib/bind9/lib/isc/pthreads/include/isc/Makefile.in projects/zfsd/head/contrib/bind9/lib/isc/sparc64/Makefile.in projects/zfsd/head/contrib/bind9/lib/isc/sparc64/include/Makefile.in projects/zfsd/head/contrib/bind9/lib/isc/sparc64/include/isc/Makefile.in projects/zfsd/head/contrib/bind9/lib/isc/task.c projects/zfsd/head/contrib/bind9/lib/isc/task_api.c projects/zfsd/head/contrib/bind9/lib/isc/unix/Makefile.in projects/zfsd/head/contrib/bind9/lib/isc/unix/file.c projects/zfsd/head/contrib/bind9/lib/isc/unix/include/Makefile.in projects/zfsd/head/contrib/bind9/lib/isc/unix/include/isc/Makefile.in projects/zfsd/head/contrib/bind9/lib/isc/x86_32/Makefile.in projects/zfsd/head/contrib/bind9/lib/isc/x86_32/include/Makefile.in projects/zfsd/head/contrib/bind9/lib/isc/x86_32/include/isc/Makefile.in projects/zfsd/head/contrib/bind9/lib/isc/x86_64/Makefile.in projects/zfsd/head/contrib/bind9/lib/isc/x86_64/include/Makefile.in projects/zfsd/head/contrib/bind9/lib/isc/x86_64/include/isc/Makefile.in projects/zfsd/head/contrib/bind9/lib/isccc/api projects/zfsd/head/contrib/bind9/lib/isccc/cc.c projects/zfsd/head/contrib/bind9/lib/isccc/include/Makefile.in projects/zfsd/head/contrib/bind9/lib/isccc/include/isccc/Makefile.in projects/zfsd/head/contrib/bind9/lib/isccfg/api projects/zfsd/head/contrib/bind9/lib/isccfg/include/Makefile.in projects/zfsd/head/contrib/bind9/lib/isccfg/include/isccfg/Makefile.in projects/zfsd/head/contrib/bind9/lib/isccfg/namedconf.c projects/zfsd/head/contrib/bind9/lib/lwres/Makefile.in projects/zfsd/head/contrib/bind9/lib/lwres/api projects/zfsd/head/contrib/bind9/lib/lwres/getaddrinfo.c projects/zfsd/head/contrib/bind9/lib/lwres/include/Makefile.in projects/zfsd/head/contrib/bind9/lib/lwres/include/lwres/Makefile.in projects/zfsd/head/contrib/bind9/lib/lwres/man/Makefile.in projects/zfsd/head/contrib/bind9/make/rules.in projects/zfsd/head/contrib/bind9/version projects/zfsd/head/contrib/binutils/Makefile.in projects/zfsd/head/contrib/binutils/Makefile.tpl projects/zfsd/head/contrib/binutils/bfd/elflink.c projects/zfsd/head/contrib/binutils/gas/config/tc-arm.c projects/zfsd/head/contrib/binutils/gas/config/tc-i386.c projects/zfsd/head/contrib/binutils/include/elf/common.h projects/zfsd/head/contrib/binutils/libiberty/Makefile.in projects/zfsd/head/contrib/binutils/opcodes/i386-dis.c projects/zfsd/head/contrib/binutils/opcodes/i386-opc.h projects/zfsd/head/contrib/binutils/opcodes/i386-tbl.h projects/zfsd/head/contrib/bmake/ChangeLog projects/zfsd/head/contrib/bmake/FILES projects/zfsd/head/contrib/bmake/bmake.1 projects/zfsd/head/contrib/bmake/bmake.cat1 projects/zfsd/head/contrib/bmake/boot-strap projects/zfsd/head/contrib/bmake/bsd.after-import.mk projects/zfsd/head/contrib/bmake/compat.c projects/zfsd/head/contrib/bmake/configure projects/zfsd/head/contrib/bmake/configure.in projects/zfsd/head/contrib/bmake/job.c projects/zfsd/head/contrib/bmake/main.c projects/zfsd/head/contrib/bmake/make-bootstrap.sh.in projects/zfsd/head/contrib/bmake/make.1 projects/zfsd/head/contrib/bmake/meta.c projects/zfsd/head/contrib/bmake/realpath.c projects/zfsd/head/contrib/bmake/unit-tests/Makefile.in projects/zfsd/head/contrib/bmake/var.c projects/zfsd/head/contrib/compiler-rt/LICENSE.TXT projects/zfsd/head/contrib/compiler-rt/lib/arm/aeabi_uldivmod.S projects/zfsd/head/contrib/compiler-rt/lib/arm/divsi3.S projects/zfsd/head/contrib/compiler-rt/lib/arm/udivsi3.S projects/zfsd/head/contrib/compiler-rt/lib/cmpdi2.c projects/zfsd/head/contrib/compiler-rt/lib/fixsfdi.c projects/zfsd/head/contrib/compiler-rt/lib/int_endianness.h projects/zfsd/head/contrib/compiler-rt/lib/int_lib.h projects/zfsd/head/contrib/compiler-rt/lib/ucmpdi2.c projects/zfsd/head/contrib/cvs/diff/Makefile.in projects/zfsd/head/contrib/cvs/lib/Makefile.in projects/zfsd/head/contrib/dialog/CHANGES projects/zfsd/head/contrib/dialog/VERSION projects/zfsd/head/contrib/dialog/aclocal.m4 projects/zfsd/head/contrib/dialog/arrows.c projects/zfsd/head/contrib/dialog/buttons.c projects/zfsd/head/contrib/dialog/calendar.c projects/zfsd/head/contrib/dialog/checklist.c projects/zfsd/head/contrib/dialog/columns.c projects/zfsd/head/contrib/dialog/configure projects/zfsd/head/contrib/dialog/configure.in projects/zfsd/head/contrib/dialog/dialog.1 projects/zfsd/head/contrib/dialog/dialog.3 projects/zfsd/head/contrib/dialog/dialog.c projects/zfsd/head/contrib/dialog/dialog.h projects/zfsd/head/contrib/dialog/dlg_colors.h projects/zfsd/head/contrib/dialog/dlg_keys.c projects/zfsd/head/contrib/dialog/dlg_keys.h projects/zfsd/head/contrib/dialog/editbox.c projects/zfsd/head/contrib/dialog/formbox.c projects/zfsd/head/contrib/dialog/fselect.c projects/zfsd/head/contrib/dialog/guage.c projects/zfsd/head/contrib/dialog/headers-sh.in projects/zfsd/head/contrib/dialog/inputbox.c projects/zfsd/head/contrib/dialog/inputstr.c projects/zfsd/head/contrib/dialog/makefile.in projects/zfsd/head/contrib/dialog/menubox.c projects/zfsd/head/contrib/dialog/mixedform.c projects/zfsd/head/contrib/dialog/mixedgauge.c projects/zfsd/head/contrib/dialog/msgbox.c projects/zfsd/head/contrib/dialog/package/debian/changelog projects/zfsd/head/contrib/dialog/package/dialog.spec projects/zfsd/head/contrib/dialog/pause.c projects/zfsd/head/contrib/dialog/po/cs.po projects/zfsd/head/contrib/dialog/po/el.po projects/zfsd/head/contrib/dialog/po/hr.po projects/zfsd/head/contrib/dialog/po/sr.po projects/zfsd/head/contrib/dialog/prgbox.c projects/zfsd/head/contrib/dialog/progressbox.c projects/zfsd/head/contrib/dialog/rc.c projects/zfsd/head/contrib/dialog/samples/copifuncs/admin.funcs projects/zfsd/head/contrib/dialog/samples/copifuncs/common.funcs (contents, props changed) projects/zfsd/head/contrib/dialog/samples/copifuncs/copi.funcs projects/zfsd/head/contrib/dialog/samples/copifuncs/copi.ifman2 (contents, props changed) projects/zfsd/head/contrib/dialog/samples/copifuncs/copi.ifpoll2 (contents, props changed) projects/zfsd/head/contrib/dialog/samples/copifuncs/copi.ifreq2 (contents, props changed) projects/zfsd/head/contrib/dialog/samples/copifuncs/copi.sendifm1 projects/zfsd/head/contrib/dialog/samples/copifuncs/copi.wheel projects/zfsd/head/contrib/dialog/samples/copismall projects/zfsd/head/contrib/dialog/samples/debian.rc projects/zfsd/head/contrib/dialog/samples/dialog.py projects/zfsd/head/contrib/dialog/samples/form1 projects/zfsd/head/contrib/dialog/samples/inputmenu projects/zfsd/head/contrib/dialog/samples/inputmenu-stdout projects/zfsd/head/contrib/dialog/samples/inputmenu1 projects/zfsd/head/contrib/dialog/samples/inputmenu2 projects/zfsd/head/contrib/dialog/samples/inputmenu3 projects/zfsd/head/contrib/dialog/samples/inputmenu4 projects/zfsd/head/contrib/dialog/samples/killall projects/zfsd/head/contrib/dialog/samples/prgbox projects/zfsd/head/contrib/dialog/samples/prgbox2 projects/zfsd/head/contrib/dialog/samples/report-button projects/zfsd/head/contrib/dialog/samples/report-edit projects/zfsd/head/contrib/dialog/samples/report-string projects/zfsd/head/contrib/dialog/samples/report-tempfile projects/zfsd/head/contrib/dialog/samples/report-yesno projects/zfsd/head/contrib/dialog/samples/setup-edit projects/zfsd/head/contrib/dialog/samples/setup-tempfile projects/zfsd/head/contrib/dialog/samples/setup-utf8 projects/zfsd/head/contrib/dialog/samples/setup-vars projects/zfsd/head/contrib/dialog/samples/slackware.rc projects/zfsd/head/contrib/dialog/samples/sourcemage.rc projects/zfsd/head/contrib/dialog/samples/suse.rc projects/zfsd/head/contrib/dialog/samples/tailboxbg projects/zfsd/head/contrib/dialog/samples/tailboxbg1 projects/zfsd/head/contrib/dialog/samples/tailboxbg2 projects/zfsd/head/contrib/dialog/samples/testdata-8bit projects/zfsd/head/contrib/dialog/samples/wheel projects/zfsd/head/contrib/dialog/samples/whiptail.rc projects/zfsd/head/contrib/dialog/tailbox.c projects/zfsd/head/contrib/dialog/textbox.c projects/zfsd/head/contrib/dialog/timebox.c projects/zfsd/head/contrib/dialog/trace.c projects/zfsd/head/contrib/dialog/ui_getc.c projects/zfsd/head/contrib/dialog/util.c projects/zfsd/head/contrib/dialog/yesno.c projects/zfsd/head/contrib/dtc/Makefile projects/zfsd/head/contrib/expat/Changes (contents, props changed) projects/zfsd/head/contrib/expat/MANIFEST (contents, props changed) projects/zfsd/head/contrib/expat/Makefile.in (contents, props changed) projects/zfsd/head/contrib/expat/README (contents, props changed) projects/zfsd/head/contrib/expat/configure.in (contents, props changed) projects/zfsd/head/contrib/expat/doc/reference.html (contents, props changed) projects/zfsd/head/contrib/expat/doc/xmlwf.sgml (contents, props changed) projects/zfsd/head/contrib/expat/expat_config.h.in (contents, props changed) projects/zfsd/head/contrib/expat/lib/expat.h (contents, props changed) projects/zfsd/head/contrib/expat/lib/xmlparse.c (contents, props changed) projects/zfsd/head/contrib/expat/lib/xmlrole.c (contents, props changed) projects/zfsd/head/contrib/expat/lib/xmltok.c (contents, props changed) projects/zfsd/head/contrib/expat/lib/xmltok_impl.c (contents, props changed) projects/zfsd/head/contrib/expat/tests/README.txt (contents, props changed) projects/zfsd/head/contrib/expat/tests/minicheck.h (contents, props changed) projects/zfsd/head/contrib/expat/tests/runtests.c (contents, props changed) projects/zfsd/head/contrib/expat/tests/xmltest.sh (contents, props changed) projects/zfsd/head/contrib/expat/xmlwf/readfilemap.c (contents, props changed) projects/zfsd/head/contrib/expat/xmlwf/xmlwf.c (contents, props changed) projects/zfsd/head/contrib/file/Magdir/lua projects/zfsd/head/contrib/gcc/Makefile.in projects/zfsd/head/contrib/gcc/config/arm/arm.h projects/zfsd/head/contrib/gcc/config/arm/freebsd.h projects/zfsd/head/contrib/gcc/config/arm/unwind-arm.h projects/zfsd/head/contrib/gcc/dwarf2out.c projects/zfsd/head/contrib/gcc/longlong.h projects/zfsd/head/contrib/gcc/unwind-dw2.c projects/zfsd/head/contrib/gcclibs/libcpp/Makefile.in projects/zfsd/head/contrib/gcclibs/libdecnumber/Makefile.in projects/zfsd/head/contrib/gcclibs/libiberty/Makefile.in projects/zfsd/head/contrib/gdb/gdb/dwarf2read.c projects/zfsd/head/contrib/gdb/gdb/gdbtypes.c projects/zfsd/head/contrib/gdb/gdb/gdbtypes.h projects/zfsd/head/contrib/gdb/gdb/hpread.c projects/zfsd/head/contrib/gdb/gdb/osabi.c projects/zfsd/head/contrib/gdb/gdb/parse.c projects/zfsd/head/contrib/gdb/gdb/stabsread.c projects/zfsd/head/contrib/gdtoa/makefile projects/zfsd/head/contrib/gperf/lib/Makefile.in projects/zfsd/head/contrib/ipfilter/ipsend/44arp.c projects/zfsd/head/contrib/jemalloc/COPYING projects/zfsd/head/contrib/jemalloc/ChangeLog projects/zfsd/head/contrib/jemalloc/FREEBSD-diffs projects/zfsd/head/contrib/jemalloc/FREEBSD-upgrade projects/zfsd/head/contrib/jemalloc/VERSION projects/zfsd/head/contrib/jemalloc/doc/jemalloc.3 projects/zfsd/head/contrib/jemalloc/include/jemalloc/internal/arena.h projects/zfsd/head/contrib/jemalloc/include/jemalloc/internal/ckh.h projects/zfsd/head/contrib/jemalloc/include/jemalloc/internal/hash.h projects/zfsd/head/contrib/jemalloc/include/jemalloc/internal/jemalloc_internal.h projects/zfsd/head/contrib/jemalloc/include/jemalloc/internal/private_namespace.h projects/zfsd/head/contrib/jemalloc/include/jemalloc/internal/tcache.h projects/zfsd/head/contrib/jemalloc/include/jemalloc/jemalloc.h projects/zfsd/head/contrib/jemalloc/include/jemalloc/jemalloc_defs.h projects/zfsd/head/contrib/jemalloc/src/arena.c projects/zfsd/head/contrib/jemalloc/src/chunk.c projects/zfsd/head/contrib/jemalloc/src/chunk_dss.c projects/zfsd/head/contrib/jemalloc/src/ckh.c projects/zfsd/head/contrib/jemalloc/src/ctl.c projects/zfsd/head/contrib/jemalloc/src/jemalloc.c projects/zfsd/head/contrib/jemalloc/src/prof.c projects/zfsd/head/contrib/jemalloc/src/tcache.c projects/zfsd/head/contrib/less/NEWS projects/zfsd/head/contrib/less/README projects/zfsd/head/contrib/less/configure.ac projects/zfsd/head/contrib/less/defines.h.in projects/zfsd/head/contrib/less/less.man projects/zfsd/head/contrib/less/less.nro projects/zfsd/head/contrib/less/lessecho.man projects/zfsd/head/contrib/less/lessecho.nro projects/zfsd/head/contrib/less/lesskey.man projects/zfsd/head/contrib/less/lesskey.nro projects/zfsd/head/contrib/less/option.c projects/zfsd/head/contrib/less/version.c projects/zfsd/head/contrib/libarchive/libarchive/archive_getdate.c projects/zfsd/head/contrib/libarchive/libarchive/test/test_archive_getdate.c projects/zfsd/head/contrib/libc++/include/__config projects/zfsd/head/contrib/libc++/include/algorithm projects/zfsd/head/contrib/libc++/include/array projects/zfsd/head/contrib/libc++/include/atomic projects/zfsd/head/contrib/libc++/include/cmath projects/zfsd/head/contrib/libc++/include/exception projects/zfsd/head/contrib/libc++/include/functional projects/zfsd/head/contrib/libc++/include/future projects/zfsd/head/contrib/libc++/include/istream projects/zfsd/head/contrib/libc++/include/iterator projects/zfsd/head/contrib/libc++/include/limits projects/zfsd/head/contrib/libc++/include/locale projects/zfsd/head/contrib/libc++/include/memory projects/zfsd/head/contrib/libc++/include/ostream projects/zfsd/head/contrib/libc++/include/random projects/zfsd/head/contrib/libc++/include/regex projects/zfsd/head/contrib/libc++/include/string projects/zfsd/head/contrib/libc++/include/type_traits projects/zfsd/head/contrib/libc++/include/vector projects/zfsd/head/contrib/libc++/src/chrono.cpp projects/zfsd/head/contrib/libc++/src/debug.cpp projects/zfsd/head/contrib/libc++/src/exception.cpp projects/zfsd/head/contrib/libc++/src/future.cpp projects/zfsd/head/contrib/libc++/src/hash.cpp projects/zfsd/head/contrib/libc++/src/locale.cpp projects/zfsd/head/contrib/libc++/src/string.cpp projects/zfsd/head/contrib/libc++/src/thread.cpp projects/zfsd/head/contrib/libcxxrt/exception.cc projects/zfsd/head/contrib/libcxxrt/memory.cc projects/zfsd/head/contrib/libcxxrt/typeinfo.h projects/zfsd/head/contrib/libstdc++/include/std/std_limits.h projects/zfsd/head/contrib/libstdc++/libsupc++/unwind-cxx.h projects/zfsd/head/contrib/llvm/include/llvm-c/Core.h projects/zfsd/head/contrib/llvm/include/llvm-c/Disassembler.h projects/zfsd/head/contrib/llvm/include/llvm-c/Target.h projects/zfsd/head/contrib/llvm/include/llvm-c/TargetMachine.h projects/zfsd/head/contrib/llvm/include/llvm-c/Transforms/Vectorize.h projects/zfsd/head/contrib/llvm/include/llvm/ADT/APFloat.h projects/zfsd/head/contrib/llvm/include/llvm/ADT/APInt.h projects/zfsd/head/contrib/llvm/include/llvm/ADT/ArrayRef.h projects/zfsd/head/contrib/llvm/include/llvm/ADT/BitVector.h projects/zfsd/head/contrib/llvm/include/llvm/ADT/DAGDeltaAlgorithm.h projects/zfsd/head/contrib/llvm/include/llvm/ADT/DeltaAlgorithm.h projects/zfsd/head/contrib/llvm/include/llvm/ADT/DenseMap.h projects/zfsd/head/contrib/llvm/include/llvm/ADT/DenseMapInfo.h projects/zfsd/head/contrib/llvm/include/llvm/ADT/EquivalenceClasses.h projects/zfsd/head/contrib/llvm/include/llvm/ADT/FoldingSet.h projects/zfsd/head/contrib/llvm/include/llvm/ADT/Hashing.h projects/zfsd/head/contrib/llvm/include/llvm/ADT/ImmutableList.h projects/zfsd/head/contrib/llvm/include/llvm/ADT/ImmutableMap.h projects/zfsd/head/contrib/llvm/include/llvm/ADT/ImmutableSet.h projects/zfsd/head/contrib/llvm/include/llvm/ADT/Optional.h projects/zfsd/head/contrib/llvm/include/llvm/ADT/OwningPtr.h projects/zfsd/head/contrib/llvm/include/llvm/ADT/PackedVector.h projects/zfsd/head/contrib/llvm/include/llvm/ADT/PointerIntPair.h projects/zfsd/head/contrib/llvm/include/llvm/ADT/ScopedHashTable.h projects/zfsd/head/contrib/llvm/include/llvm/ADT/SetVector.h projects/zfsd/head/contrib/llvm/include/llvm/ADT/SmallBitVector.h projects/zfsd/head/contrib/llvm/include/llvm/ADT/SmallPtrSet.h projects/zfsd/head/contrib/llvm/include/llvm/ADT/SmallString.h projects/zfsd/head/contrib/llvm/include/llvm/ADT/SmallVector.h projects/zfsd/head/contrib/llvm/include/llvm/ADT/SparseBitVector.h projects/zfsd/head/contrib/llvm/include/llvm/ADT/SparseSet.h projects/zfsd/head/contrib/llvm/include/llvm/ADT/StringExtras.h projects/zfsd/head/contrib/llvm/include/llvm/ADT/StringRef.h projects/zfsd/head/contrib/llvm/include/llvm/ADT/StringSet.h projects/zfsd/head/contrib/llvm/include/llvm/ADT/Triple.h projects/zfsd/head/contrib/llvm/include/llvm/ADT/Twine.h projects/zfsd/head/contrib/llvm/include/llvm/ADT/ValueMap.h projects/zfsd/head/contrib/llvm/include/llvm/ADT/ilist.h projects/zfsd/head/contrib/llvm/include/llvm/Analysis/AliasAnalysis.h projects/zfsd/head/contrib/llvm/include/llvm/Analysis/AliasSetTracker.h projects/zfsd/head/contrib/llvm/include/llvm/Analysis/BranchProbabilityInfo.h projects/zfsd/head/contrib/llvm/include/llvm/Analysis/CallGraph.h projects/zfsd/head/contrib/llvm/include/llvm/Analysis/CaptureTracking.h projects/zfsd/head/contrib/llvm/include/llvm/Analysis/CodeMetrics.h projects/zfsd/head/contrib/llvm/include/llvm/Analysis/ConstantFolding.h projects/zfsd/head/contrib/llvm/include/llvm/Analysis/Dominators.h projects/zfsd/head/contrib/llvm/include/llvm/Analysis/IVUsers.h projects/zfsd/head/contrib/llvm/include/llvm/Analysis/InlineCost.h projects/zfsd/head/contrib/llvm/include/llvm/Analysis/InstructionSimplify.h projects/zfsd/head/contrib/llvm/include/llvm/Analysis/IntervalPartition.h projects/zfsd/head/contrib/llvm/include/llvm/Analysis/LazyValueInfo.h projects/zfsd/head/contrib/llvm/include/llvm/Analysis/Loads.h projects/zfsd/head/contrib/llvm/include/llvm/Analysis/LoopInfo.h projects/zfsd/head/contrib/llvm/include/llvm/Analysis/LoopInfoImpl.h projects/zfsd/head/contrib/llvm/include/llvm/Analysis/MemoryBuiltins.h projects/zfsd/head/contrib/llvm/include/llvm/Analysis/MemoryDependenceAnalysis.h projects/zfsd/head/contrib/llvm/include/llvm/Analysis/PHITransAddr.h projects/zfsd/head/contrib/llvm/include/llvm/Analysis/Passes.h projects/zfsd/head/contrib/llvm/include/llvm/Analysis/ProfileInfoTypes.h projects/zfsd/head/contrib/llvm/include/llvm/Analysis/RegionInfo.h projects/zfsd/head/contrib/llvm/include/llvm/Analysis/ScalarEvolution.h projects/zfsd/head/contrib/llvm/include/llvm/Analysis/ScalarEvolutionExpressions.h projects/zfsd/head/contrib/llvm/include/llvm/Analysis/SparsePropagation.h projects/zfsd/head/contrib/llvm/include/llvm/Analysis/ValueTracking.h projects/zfsd/head/contrib/llvm/include/llvm/Argument.h projects/zfsd/head/contrib/llvm/include/llvm/Attributes.h projects/zfsd/head/contrib/llvm/include/llvm/BasicBlock.h projects/zfsd/head/contrib/llvm/include/llvm/Bitcode/Archive.h projects/zfsd/head/contrib/llvm/include/llvm/Bitcode/BitstreamReader.h projects/zfsd/head/contrib/llvm/include/llvm/Bitcode/BitstreamWriter.h projects/zfsd/head/contrib/llvm/include/llvm/Bitcode/LLVMBitCodes.h projects/zfsd/head/contrib/llvm/include/llvm/CallingConv.h projects/zfsd/head/contrib/llvm/include/llvm/CodeGen/AsmPrinter.h projects/zfsd/head/contrib/llvm/include/llvm/CodeGen/CallingConvLower.h projects/zfsd/head/contrib/llvm/include/llvm/CodeGen/FastISel.h projects/zfsd/head/contrib/llvm/include/llvm/CodeGen/GCMetadata.h projects/zfsd/head/contrib/llvm/include/llvm/CodeGen/GCMetadataPrinter.h projects/zfsd/head/contrib/llvm/include/llvm/CodeGen/ISDOpcodes.h projects/zfsd/head/contrib/llvm/include/llvm/CodeGen/IntrinsicLowering.h projects/zfsd/head/contrib/llvm/include/llvm/CodeGen/LiveInterval.h projects/zfsd/head/contrib/llvm/include/llvm/CodeGen/LiveIntervalAnalysis.h projects/zfsd/head/contrib/llvm/include/llvm/CodeGen/LiveVariables.h projects/zfsd/head/contrib/llvm/include/llvm/CodeGen/MachineBasicBlock.h projects/zfsd/head/contrib/llvm/include/llvm/CodeGen/MachineBranchProbabilityInfo.h projects/zfsd/head/contrib/llvm/include/llvm/CodeGen/MachineConstantPool.h projects/zfsd/head/contrib/llvm/include/llvm/CodeGen/MachineFrameInfo.h projects/zfsd/head/contrib/llvm/include/llvm/CodeGen/MachineFunction.h projects/zfsd/head/contrib/llvm/include/llvm/CodeGen/MachineInstr.h projects/zfsd/head/contrib/llvm/include/llvm/CodeGen/MachineInstrBuilder.h projects/zfsd/head/contrib/llvm/include/llvm/CodeGen/MachineInstrBundle.h projects/zfsd/head/contrib/llvm/include/llvm/CodeGen/MachineJumpTableInfo.h projects/zfsd/head/contrib/llvm/include/llvm/CodeGen/MachineLoopInfo.h projects/zfsd/head/contrib/llvm/include/llvm/CodeGen/MachineMemOperand.h projects/zfsd/head/contrib/llvm/include/llvm/CodeGen/MachineModuleInfoImpls.h projects/zfsd/head/contrib/llvm/include/llvm/CodeGen/MachineOperand.h projects/zfsd/head/contrib/llvm/include/llvm/CodeGen/MachineRegisterInfo.h projects/zfsd/head/contrib/llvm/include/llvm/CodeGen/MachineSSAUpdater.h projects/zfsd/head/contrib/llvm/include/llvm/CodeGen/MachineScheduler.h projects/zfsd/head/contrib/llvm/include/llvm/CodeGen/PBQP/Graph.h projects/zfsd/head/contrib/llvm/include/llvm/CodeGen/PBQP/HeuristicBase.h projects/zfsd/head/contrib/llvm/include/llvm/CodeGen/Passes.h projects/zfsd/head/contrib/llvm/include/llvm/CodeGen/PseudoSourceValue.h projects/zfsd/head/contrib/llvm/include/llvm/CodeGen/RegAllocPBQP.h projects/zfsd/head/contrib/llvm/include/llvm/CodeGen/RegisterClassInfo.h projects/zfsd/head/contrib/llvm/include/llvm/CodeGen/RegisterPressure.h projects/zfsd/head/contrib/llvm/include/llvm/CodeGen/RegisterScavenging.h projects/zfsd/head/contrib/llvm/include/llvm/CodeGen/ScheduleDAG.h projects/zfsd/head/contrib/llvm/include/llvm/CodeGen/ScheduleDAGInstrs.h projects/zfsd/head/contrib/llvm/include/llvm/CodeGen/SchedulerRegistry.h projects/zfsd/head/contrib/llvm/include/llvm/CodeGen/SelectionDAG.h projects/zfsd/head/contrib/llvm/include/llvm/CodeGen/SelectionDAGNodes.h projects/zfsd/head/contrib/llvm/include/llvm/CodeGen/ValueTypes.h projects/zfsd/head/contrib/llvm/include/llvm/CodeGen/ValueTypes.td projects/zfsd/head/contrib/llvm/include/llvm/Constant.h projects/zfsd/head/contrib/llvm/include/llvm/Constants.h projects/zfsd/head/contrib/llvm/include/llvm/DIBuilder.h projects/zfsd/head/contrib/llvm/include/llvm/DebugInfo.h projects/zfsd/head/contrib/llvm/include/llvm/DebugInfo/DIContext.h projects/zfsd/head/contrib/llvm/include/llvm/DefaultPasses.h projects/zfsd/head/contrib/llvm/include/llvm/DerivedTypes.h projects/zfsd/head/contrib/llvm/include/llvm/ExecutionEngine/ExecutionEngine.h projects/zfsd/head/contrib/llvm/include/llvm/ExecutionEngine/JITEventListener.h projects/zfsd/head/contrib/llvm/include/llvm/ExecutionEngine/JITMemoryManager.h projects/zfsd/head/contrib/llvm/include/llvm/ExecutionEngine/RuntimeDyld.h projects/zfsd/head/contrib/llvm/include/llvm/Function.h projects/zfsd/head/contrib/llvm/include/llvm/GlobalAlias.h projects/zfsd/head/contrib/llvm/include/llvm/GlobalValue.h projects/zfsd/head/contrib/llvm/include/llvm/GlobalVariable.h projects/zfsd/head/contrib/llvm/include/llvm/IRBuilder.h projects/zfsd/head/contrib/llvm/include/llvm/InitializePasses.h projects/zfsd/head/contrib/llvm/include/llvm/InlineAsm.h projects/zfsd/head/contrib/llvm/include/llvm/InstrTypes.h projects/zfsd/head/contrib/llvm/include/llvm/Instruction.h projects/zfsd/head/contrib/llvm/include/llvm/Instructions.h projects/zfsd/head/contrib/llvm/include/llvm/IntrinsicInst.h projects/zfsd/head/contrib/llvm/include/llvm/Intrinsics.h projects/zfsd/head/contrib/llvm/include/llvm/Intrinsics.td projects/zfsd/head/contrib/llvm/include/llvm/IntrinsicsARM.td projects/zfsd/head/contrib/llvm/include/llvm/IntrinsicsMips.td projects/zfsd/head/contrib/llvm/include/llvm/IntrinsicsX86.td projects/zfsd/head/contrib/llvm/include/llvm/LLVMContext.h projects/zfsd/head/contrib/llvm/include/llvm/LinkAllPasses.h projects/zfsd/head/contrib/llvm/include/llvm/MC/MCAsmBackend.h projects/zfsd/head/contrib/llvm/include/llvm/MC/MCAsmInfo.h projects/zfsd/head/contrib/llvm/include/llvm/MC/MCAssembler.h projects/zfsd/head/contrib/llvm/include/llvm/MC/MCCodeEmitter.h projects/zfsd/head/contrib/llvm/include/llvm/MC/MCContext.h projects/zfsd/head/contrib/llvm/include/llvm/MC/MCDwarf.h projects/zfsd/head/contrib/llvm/include/llvm/MC/MCELFObjectWriter.h projects/zfsd/head/contrib/llvm/include/llvm/MC/MCExpr.h projects/zfsd/head/contrib/llvm/include/llvm/MC/MCInst.h projects/zfsd/head/contrib/llvm/include/llvm/MC/MCInstPrinter.h projects/zfsd/head/contrib/llvm/include/llvm/MC/MCInstrDesc.h projects/zfsd/head/contrib/llvm/include/llvm/MC/MCLabel.h projects/zfsd/head/contrib/llvm/include/llvm/MC/MCMachObjectWriter.h projects/zfsd/head/contrib/llvm/include/llvm/MC/MCObjectFileInfo.h projects/zfsd/head/contrib/llvm/include/llvm/MC/MCObjectStreamer.h projects/zfsd/head/contrib/llvm/include/llvm/MC/MCObjectWriter.h projects/zfsd/head/contrib/llvm/include/llvm/MC/MCParser/AsmLexer.h projects/zfsd/head/contrib/llvm/include/llvm/MC/MCParser/MCAsmLexer.h projects/zfsd/head/contrib/llvm/include/llvm/MC/MCParser/MCAsmParser.h projects/zfsd/head/contrib/llvm/include/llvm/MC/MCParser/MCAsmParserExtension.h projects/zfsd/head/contrib/llvm/include/llvm/MC/MCParser/MCParsedAsmOperand.h projects/zfsd/head/contrib/llvm/include/llvm/MC/MCRegisterInfo.h projects/zfsd/head/contrib/llvm/include/llvm/MC/MCSchedule.h projects/zfsd/head/contrib/llvm/include/llvm/MC/MCSection.h projects/zfsd/head/contrib/llvm/include/llvm/MC/MCSectionCOFF.h projects/zfsd/head/contrib/llvm/include/llvm/MC/MCSectionELF.h projects/zfsd/head/contrib/llvm/include/llvm/MC/MCSectionMachO.h projects/zfsd/head/contrib/llvm/include/llvm/MC/MCStreamer.h projects/zfsd/head/contrib/llvm/include/llvm/MC/MCSubtargetInfo.h projects/zfsd/head/contrib/llvm/include/llvm/MC/MCSymbol.h projects/zfsd/head/contrib/llvm/include/llvm/MC/MCTargetAsmLexer.h projects/zfsd/head/contrib/llvm/include/llvm/MC/MCTargetAsmParser.h projects/zfsd/head/contrib/llvm/include/llvm/MC/MCValue.h projects/zfsd/head/contrib/llvm/include/llvm/MC/SubtargetFeature.h projects/zfsd/head/contrib/llvm/include/llvm/MDBuilder.h projects/zfsd/head/contrib/llvm/include/llvm/Metadata.h projects/zfsd/head/contrib/llvm/include/llvm/Object/Archive.h projects/zfsd/head/contrib/llvm/include/llvm/Object/Binary.h projects/zfsd/head/contrib/llvm/include/llvm/Object/COFF.h projects/zfsd/head/contrib/llvm/include/llvm/Object/ELF.h projects/zfsd/head/contrib/llvm/include/llvm/Object/MachO.h projects/zfsd/head/contrib/llvm/include/llvm/Object/MachOFormat.h projects/zfsd/head/contrib/llvm/include/llvm/Object/ObjectFile.h projects/zfsd/head/contrib/llvm/include/llvm/Operator.h projects/zfsd/head/contrib/llvm/include/llvm/Pass.h projects/zfsd/head/contrib/llvm/include/llvm/PassAnalysisSupport.h projects/zfsd/head/contrib/llvm/include/llvm/PassSupport.h projects/zfsd/head/contrib/llvm/include/llvm/Support/AlignOf.h projects/zfsd/head/contrib/llvm/include/llvm/Support/Allocator.h projects/zfsd/head/contrib/llvm/include/llvm/Support/CallSite.h projects/zfsd/head/contrib/llvm/include/llvm/Support/Casting.h projects/zfsd/head/contrib/llvm/include/llvm/Support/CommandLine.h projects/zfsd/head/contrib/llvm/include/llvm/Support/Compiler.h projects/zfsd/head/contrib/llvm/include/llvm/Support/DataExtractor.h projects/zfsd/head/contrib/llvm/include/llvm/Support/ELF.h projects/zfsd/head/contrib/llvm/include/llvm/Support/FileOutputBuffer.h projects/zfsd/head/contrib/llvm/include/llvm/Support/FileSystem.h projects/zfsd/head/contrib/llvm/include/llvm/Support/Format.h projects/zfsd/head/contrib/llvm/include/llvm/Support/FormattedStream.h projects/zfsd/head/contrib/llvm/include/llvm/Support/GCOV.h projects/zfsd/head/contrib/llvm/include/llvm/Support/InstVisitor.h projects/zfsd/head/contrib/llvm/include/llvm/Support/IntegersSubset.h projects/zfsd/head/contrib/llvm/include/llvm/Support/IntegersSubsetMapping.h projects/zfsd/head/contrib/llvm/include/llvm/Support/LEB128.h projects/zfsd/head/contrib/llvm/include/llvm/Support/LockFileManager.h projects/zfsd/head/contrib/llvm/include/llvm/Support/MathExtras.h projects/zfsd/head/contrib/llvm/include/llvm/Support/Memory.h projects/zfsd/head/contrib/llvm/include/llvm/Support/MemoryBuffer.h projects/zfsd/head/contrib/llvm/include/llvm/Support/Mutex.h projects/zfsd/head/contrib/llvm/include/llvm/Support/MutexGuard.h projects/zfsd/head/contrib/llvm/include/llvm/Support/PathV1.h projects/zfsd/head/contrib/llvm/include/llvm/Support/PathV2.h projects/zfsd/head/contrib/llvm/include/llvm/Support/PrettyStackTrace.h projects/zfsd/head/contrib/llvm/include/llvm/Support/Program.h projects/zfsd/head/contrib/llvm/include/llvm/Support/RWMutex.h projects/zfsd/head/contrib/llvm/include/llvm/Support/Regex.h projects/zfsd/head/contrib/llvm/include/llvm/Support/Registry.h projects/zfsd/head/contrib/llvm/include/llvm/Support/SourceMgr.h projects/zfsd/head/contrib/llvm/include/llvm/Support/StreamableMemoryObject.h projects/zfsd/head/contrib/llvm/include/llvm/Support/TargetFolder.h projects/zfsd/head/contrib/llvm/include/llvm/Support/TargetRegistry.h projects/zfsd/head/contrib/llvm/include/llvm/Support/Threading.h projects/zfsd/head/contrib/llvm/include/llvm/Support/TimeValue.h projects/zfsd/head/contrib/llvm/include/llvm/Support/Timer.h projects/zfsd/head/contrib/llvm/include/llvm/Support/ValueHandle.h projects/zfsd/head/contrib/llvm/include/llvm/Support/YAMLParser.h projects/zfsd/head/contrib/llvm/include/llvm/Support/circular_raw_ostream.h projects/zfsd/head/contrib/llvm/include/llvm/Support/raw_os_ostream.h projects/zfsd/head/contrib/llvm/include/llvm/Support/raw_ostream.h projects/zfsd/head/contrib/llvm/include/llvm/Support/system_error.h projects/zfsd/head/contrib/llvm/include/llvm/Support/type_traits.h projects/zfsd/head/contrib/llvm/include/llvm/SymbolTableListTraits.h projects/zfsd/head/contrib/llvm/include/llvm/TableGen/Error.h projects/zfsd/head/contrib/llvm/include/llvm/TableGen/Main.h projects/zfsd/head/contrib/llvm/include/llvm/TableGen/Record.h projects/zfsd/head/contrib/llvm/include/llvm/Target/Mangler.h projects/zfsd/head/contrib/llvm/include/llvm/Target/Target.td projects/zfsd/head/contrib/llvm/include/llvm/Target/TargetCallingConv.h projects/zfsd/head/contrib/llvm/include/llvm/Target/TargetInstrInfo.h projects/zfsd/head/contrib/llvm/include/llvm/Target/TargetIntrinsicInfo.h projects/zfsd/head/contrib/llvm/include/llvm/Target/TargetLibraryInfo.h projects/zfsd/head/contrib/llvm/include/llvm/Target/TargetLowering.h projects/zfsd/head/contrib/llvm/include/llvm/Target/TargetLoweringObjectFile.h projects/zfsd/head/contrib/llvm/include/llvm/Target/TargetMachine.h projects/zfsd/head/contrib/llvm/include/llvm/Target/TargetOpcodes.h projects/zfsd/head/contrib/llvm/include/llvm/Target/TargetOptions.h projects/zfsd/head/contrib/llvm/include/llvm/Target/TargetRegisterInfo.h projects/zfsd/head/contrib/llvm/include/llvm/Target/TargetSchedule.td projects/zfsd/head/contrib/llvm/include/llvm/Target/TargetSelectionDAG.td projects/zfsd/head/contrib/llvm/include/llvm/Target/TargetSelectionDAGInfo.h projects/zfsd/head/contrib/llvm/include/llvm/Target/TargetSubtargetInfo.h projects/zfsd/head/contrib/llvm/include/llvm/Transforms/IPO.h projects/zfsd/head/contrib/llvm/include/llvm/Transforms/IPO/InlinerPass.h projects/zfsd/head/contrib/llvm/include/llvm/Transforms/IPO/PassManagerBuilder.h projects/zfsd/head/contrib/llvm/include/llvm/Transforms/Instrumentation.h projects/zfsd/head/contrib/llvm/include/llvm/Transforms/Scalar.h projects/zfsd/head/contrib/llvm/include/llvm/Transforms/Utils/AddrModeMatcher.h projects/zfsd/head/contrib/llvm/include/llvm/Transforms/Utils/BasicBlockUtils.h projects/zfsd/head/contrib/llvm/include/llvm/Transforms/Utils/BuildLibCalls.h projects/zfsd/head/contrib/llvm/include/llvm/Transforms/Utils/Cloning.h projects/zfsd/head/contrib/llvm/include/llvm/Transforms/Utils/Local.h projects/zfsd/head/contrib/llvm/include/llvm/Transforms/Utils/SSAUpdater.h projects/zfsd/head/contrib/llvm/include/llvm/Transforms/Utils/SimplifyIndVar.h projects/zfsd/head/contrib/llvm/include/llvm/Transforms/Utils/ValueMapper.h projects/zfsd/head/contrib/llvm/include/llvm/Transforms/Vectorize.h projects/zfsd/head/contrib/llvm/include/llvm/Type.h projects/zfsd/head/contrib/llvm/include/llvm/Use.h projects/zfsd/head/contrib/llvm/include/llvm/User.h projects/zfsd/head/contrib/llvm/include/llvm/Value.h projects/zfsd/head/contrib/llvm/lib/Analysis/AliasAnalysis.cpp projects/zfsd/head/contrib/llvm/lib/Analysis/AliasSetTracker.cpp projects/zfsd/head/contrib/llvm/lib/Analysis/Analysis.cpp projects/zfsd/head/contrib/llvm/lib/Analysis/BasicAliasAnalysis.cpp projects/zfsd/head/contrib/llvm/lib/Analysis/BranchProbabilityInfo.cpp projects/zfsd/head/contrib/llvm/lib/Analysis/CaptureTracking.cpp projects/zfsd/head/contrib/llvm/lib/Analysis/CodeMetrics.cpp projects/zfsd/head/contrib/llvm/lib/Analysis/ConstantFolding.cpp projects/zfsd/head/contrib/llvm/lib/Analysis/DominanceFrontier.cpp projects/zfsd/head/contrib/llvm/lib/Analysis/IPA/CallGraph.cpp projects/zfsd/head/contrib/llvm/lib/Analysis/IPA/GlobalsModRef.cpp projects/zfsd/head/contrib/llvm/lib/Analysis/IVUsers.cpp projects/zfsd/head/contrib/llvm/lib/Analysis/InlineCost.cpp projects/zfsd/head/contrib/llvm/lib/Analysis/InstructionSimplify.cpp projects/zfsd/head/contrib/llvm/lib/Analysis/LazyValueInfo.cpp projects/zfsd/head/contrib/llvm/lib/Analysis/Lint.cpp projects/zfsd/head/contrib/llvm/lib/Analysis/Loads.cpp projects/zfsd/head/contrib/llvm/lib/Analysis/LoopInfo.cpp projects/zfsd/head/contrib/llvm/lib/Analysis/MemoryBuiltins.cpp projects/zfsd/head/contrib/llvm/lib/Analysis/MemoryDependenceAnalysis.cpp projects/zfsd/head/contrib/llvm/lib/Analysis/NoAliasAnalysis.cpp projects/zfsd/head/contrib/llvm/lib/Analysis/PHITransAddr.cpp projects/zfsd/head/contrib/llvm/lib/Analysis/ProfileEstimatorPass.cpp projects/zfsd/head/contrib/llvm/lib/Analysis/ProfileInfo.cpp projects/zfsd/head/contrib/llvm/lib/Analysis/RegionInfo.cpp projects/zfsd/head/contrib/llvm/lib/Analysis/RegionPass.cpp projects/zfsd/head/contrib/llvm/lib/Analysis/ScalarEvolution.cpp projects/zfsd/head/contrib/llvm/lib/Analysis/ScalarEvolutionExpander.cpp projects/zfsd/head/contrib/llvm/lib/Analysis/Trace.cpp projects/zfsd/head/contrib/llvm/lib/Analysis/ValueTracking.cpp projects/zfsd/head/contrib/llvm/lib/Archive/ArchiveInternals.h projects/zfsd/head/contrib/llvm/lib/Archive/ArchiveReader.cpp projects/zfsd/head/contrib/llvm/lib/AsmParser/LLLexer.cpp projects/zfsd/head/contrib/llvm/lib/AsmParser/LLParser.cpp projects/zfsd/head/contrib/llvm/lib/AsmParser/LLParser.h projects/zfsd/head/contrib/llvm/lib/AsmParser/LLToken.h projects/zfsd/head/contrib/llvm/lib/Bitcode/Reader/BitcodeReader.cpp projects/zfsd/head/contrib/llvm/lib/Bitcode/Reader/BitcodeReader.h projects/zfsd/head/contrib/llvm/lib/Bitcode/Writer/BitcodeWriter.cpp projects/zfsd/head/contrib/llvm/lib/Bitcode/Writer/ValueEnumerator.h projects/zfsd/head/contrib/llvm/lib/CodeGen/AggressiveAntiDepBreaker.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/AllocationOrder.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/Analysis.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/AsmPrinter/ARMException.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/AsmPrinter/AsmPrinterDwarf.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/AsmPrinter/AsmPrinterInlineAsm.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/AsmPrinter/DIE.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/AsmPrinter/DIE.h projects/zfsd/head/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfAccelTable.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfAccelTable.h projects/zfsd/head/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfCFIException.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h projects/zfsd/head/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.h projects/zfsd/head/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfException.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfException.h projects/zfsd/head/contrib/llvm/lib/CodeGen/AsmPrinter/OcamlGCPrinter.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/AsmPrinter/Win64Exception.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/BranchFolding.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/CalcSpillWeights.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/CallingConvLower.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/CodeGen.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/CodePlacementOpt.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/CriticalAntiDepBreaker.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/DeadMachineInstructionElim.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/EarlyIfConversion.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/ExecutionDepsFix.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/ExpandPostRAPseudos.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/GCStrategy.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/IfConversion.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/InlineSpiller.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/IntrinsicLowering.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/LiveDebugVariables.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/LiveInterval.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/LiveIntervalAnalysis.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/LiveIntervalUnion.h projects/zfsd/head/contrib/llvm/lib/CodeGen/LiveRangeCalc.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/LiveRangeEdit.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/LiveRegMatrix.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/LiveRegMatrix.h projects/zfsd/head/contrib/llvm/lib/CodeGen/LiveStackAnalysis.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/LiveVariables.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/MachineBasicBlock.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/MachineBlockPlacement.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/MachineBranchProbabilityInfo.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/MachineCSE.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/MachineCopyPropagation.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/MachineFunction.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/MachineFunctionPrinterPass.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/MachineInstr.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/MachineInstrBundle.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/MachineLICM.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/MachineLoopInfo.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/MachineModuleInfo.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/MachineModuleInfoImpls.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/MachineRegisterInfo.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/MachineScheduler.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/MachineSink.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/MachineTraceMetrics.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/MachineTraceMetrics.h projects/zfsd/head/contrib/llvm/lib/CodeGen/MachineVerifier.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/Passes.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/PeepholeOptimizer.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/PostRASchedulerList.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/ProcessImplicitDefs.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/PrologEpilogInserter.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/RegAllocBasic.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/RegAllocFast.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/RegAllocGreedy.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/RegAllocPBQP.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/RegisterClassInfo.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/RegisterCoalescer.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/RegisterCoalescer.h projects/zfsd/head/contrib/llvm/lib/CodeGen/RegisterPressure.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/RegisterScavenging.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/ScheduleDAG.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/ScheduleDAGInstrs.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/ScheduleDAGPrinter.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/ScoreboardHazardRecognizer.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/SelectionDAG/FastISel.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/SelectionDAG/InstrEmitter.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h projects/zfsd/head/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeTypesGeneric.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/SelectionDAG/SDNodeOrdering.h projects/zfsd/head/contrib/llvm/lib/CodeGen/SelectionDAG/ScheduleDAGFast.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/SelectionDAG/ScheduleDAGRRList.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.h projects/zfsd/head/contrib/llvm/lib/CodeGen/SelectionDAG/ScheduleDAGVLIW.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h projects/zfsd/head/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAGPrinter.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/SelectionDAG/TargetSelectionDAGInfo.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/ShrinkWrapping.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/SjLjEHPrepare.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/SlotIndexes.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/SplitKit.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/StackProtector.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/StackSlotColoring.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/StrongPHIElimination.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/TailDuplication.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/TargetInstrInfoImpl.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/TwoAddressInstructionPass.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/VirtRegMap.cpp projects/zfsd/head/contrib/llvm/lib/CodeGen/VirtRegMap.h projects/zfsd/head/contrib/llvm/lib/DebugInfo/DIContext.cpp projects/zfsd/head/contrib/llvm/lib/DebugInfo/DWARFCompileUnit.cpp projects/zfsd/head/contrib/llvm/lib/DebugInfo/DWARFCompileUnit.h projects/zfsd/head/contrib/llvm/lib/DebugInfo/DWARFContext.cpp projects/zfsd/head/contrib/llvm/lib/DebugInfo/DWARFContext.h projects/zfsd/head/contrib/llvm/lib/DebugInfo/DWARFDebugAranges.cpp projects/zfsd/head/contrib/llvm/lib/DebugInfo/DWARFDebugInfoEntry.cpp projects/zfsd/head/contrib/llvm/lib/DebugInfo/DWARFDebugInfoEntry.h projects/zfsd/head/contrib/llvm/lib/DebugInfo/DWARFDebugLine.cpp projects/zfsd/head/contrib/llvm/lib/DebugInfo/DWARFDebugLine.h projects/zfsd/head/contrib/llvm/lib/DebugInfo/DWARFFormValue.cpp projects/zfsd/head/contrib/llvm/lib/DebugInfo/DWARFFormValue.h projects/zfsd/head/contrib/llvm/lib/ExecutionEngine/ExecutionEngine.cpp projects/zfsd/head/contrib/llvm/lib/ExecutionEngine/ExecutionEngineBindings.cpp projects/zfsd/head/contrib/llvm/lib/ExecutionEngine/IntelJITEvents/IntelJITEventListener.cpp projects/zfsd/head/contrib/llvm/lib/ExecutionEngine/Interpreter/ExternalFunctions.cpp projects/zfsd/head/contrib/llvm/lib/ExecutionEngine/Interpreter/Interpreter.cpp projects/zfsd/head/contrib/llvm/lib/ExecutionEngine/Interpreter/Interpreter.h projects/zfsd/head/contrib/llvm/lib/ExecutionEngine/JIT/JIT.cpp projects/zfsd/head/contrib/llvm/lib/ExecutionEngine/JIT/JITDwarfEmitter.cpp projects/zfsd/head/contrib/llvm/lib/ExecutionEngine/JIT/JITDwarfEmitter.h projects/zfsd/head/contrib/llvm/lib/ExecutionEngine/JIT/JITEmitter.cpp projects/zfsd/head/contrib/llvm/lib/ExecutionEngine/MCJIT/MCJIT.cpp projects/zfsd/head/contrib/llvm/lib/ExecutionEngine/MCJIT/MCJIT.h projects/zfsd/head/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/GDBRegistrar.cpp projects/zfsd/head/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/JITRegistrar.h projects/zfsd/head/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyld.cpp projects/zfsd/head/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.cpp projects/zfsd/head/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.h projects/zfsd/head/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldImpl.h projects/zfsd/head/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldMachO.cpp projects/zfsd/head/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldMachO.h projects/zfsd/head/contrib/llvm/lib/ExecutionEngine/TargetSelect.cpp projects/zfsd/head/contrib/llvm/lib/MC/ELFObjectWriter.cpp projects/zfsd/head/contrib/llvm/lib/MC/MCAsmBackend.cpp projects/zfsd/head/contrib/llvm/lib/MC/MCAsmInfo.cpp projects/zfsd/head/contrib/llvm/lib/MC/MCAsmInfoCOFF.cpp projects/zfsd/head/contrib/llvm/lib/MC/MCAsmInfoDarwin.cpp projects/zfsd/head/contrib/llvm/lib/MC/MCAsmStreamer.cpp projects/zfsd/head/contrib/llvm/lib/MC/MCAssembler.cpp projects/zfsd/head/contrib/llvm/lib/MC/MCContext.cpp projects/zfsd/head/contrib/llvm/lib/MC/MCDisassembler/Disassembler.cpp projects/zfsd/head/contrib/llvm/lib/MC/MCDisassembler/EDDisassembler.cpp projects/zfsd/head/contrib/llvm/lib/MC/MCDwarf.cpp projects/zfsd/head/contrib/llvm/lib/MC/MCELFObjectTargetWriter.cpp projects/zfsd/head/contrib/llvm/lib/MC/MCELFStreamer.cpp projects/zfsd/head/contrib/llvm/lib/MC/MCExpr.cpp projects/zfsd/head/contrib/llvm/lib/MC/MCInst.cpp projects/zfsd/head/contrib/llvm/lib/MC/MCInstPrinter.cpp projects/zfsd/head/contrib/llvm/lib/MC/MCLabel.cpp projects/zfsd/head/contrib/llvm/lib/MC/MCMachOStreamer.cpp projects/zfsd/head/contrib/llvm/lib/MC/MCObjectFileInfo.cpp projects/zfsd/head/contrib/llvm/lib/MC/MCObjectStreamer.cpp projects/zfsd/head/contrib/llvm/lib/MC/MCParser/AsmLexer.cpp projects/zfsd/head/contrib/llvm/lib/MC/MCParser/AsmParser.cpp projects/zfsd/head/contrib/llvm/lib/MC/MCParser/ELFAsmParser.cpp projects/zfsd/head/contrib/llvm/lib/MC/MCParser/MCAsmLexer.cpp projects/zfsd/head/contrib/llvm/lib/MC/MCParser/MCAsmParser.cpp projects/zfsd/head/contrib/llvm/lib/MC/MCParser/MCTargetAsmParser.cpp projects/zfsd/head/contrib/llvm/lib/MC/MCRegisterInfo.cpp projects/zfsd/head/contrib/llvm/lib/MC/MCStreamer.cpp projects/zfsd/head/contrib/llvm/lib/MC/MCSubtargetInfo.cpp projects/zfsd/head/contrib/llvm/lib/MC/MCSymbol.cpp projects/zfsd/head/contrib/llvm/lib/MC/MCValue.cpp projects/zfsd/head/contrib/llvm/lib/MC/MachObjectWriter.cpp projects/zfsd/head/contrib/llvm/lib/MC/SubtargetFeature.cpp projects/zfsd/head/contrib/llvm/lib/MC/WinCOFFStreamer.cpp projects/zfsd/head/contrib/llvm/lib/Object/COFFObjectFile.cpp projects/zfsd/head/contrib/llvm/lib/Object/MachOObjectFile.cpp projects/zfsd/head/contrib/llvm/lib/Support/APFloat.cpp projects/zfsd/head/contrib/llvm/lib/Support/Atomic.cpp projects/zfsd/head/contrib/llvm/lib/Support/CommandLine.cpp projects/zfsd/head/contrib/llvm/lib/Support/DAGDeltaAlgorithm.cpp projects/zfsd/head/contrib/llvm/lib/Support/DataExtractor.cpp projects/zfsd/head/contrib/llvm/lib/Support/DataStream.cpp projects/zfsd/head/contrib/llvm/lib/Support/DynamicLibrary.cpp projects/zfsd/head/contrib/llvm/lib/Support/Errno.cpp projects/zfsd/head/contrib/llvm/lib/Support/FoldingSet.cpp projects/zfsd/head/contrib/llvm/lib/Support/Host.cpp projects/zfsd/head/contrib/llvm/lib/Support/LockFileManager.cpp projects/zfsd/head/contrib/llvm/lib/Support/Memory.cpp projects/zfsd/head/contrib/llvm/lib/Support/MemoryBuffer.cpp projects/zfsd/head/contrib/llvm/lib/Support/SmallVector.cpp projects/zfsd/head/contrib/llvm/lib/Support/StreamableMemoryObject.cpp projects/zfsd/head/contrib/llvm/lib/Support/StringMap.cpp projects/zfsd/head/contrib/llvm/lib/Support/StringRef.cpp projects/zfsd/head/contrib/llvm/lib/Support/Triple.cpp projects/zfsd/head/contrib/llvm/lib/Support/Unix/Memory.inc projects/zfsd/head/contrib/llvm/lib/Support/Unix/Path.inc projects/zfsd/head/contrib/llvm/lib/Support/Unix/Signals.inc projects/zfsd/head/contrib/llvm/lib/Support/Windows/Memory.inc projects/zfsd/head/contrib/llvm/lib/Support/Windows/PathV2.inc projects/zfsd/head/contrib/llvm/lib/Support/YAMLParser.cpp projects/zfsd/head/contrib/llvm/lib/Support/raw_ostream.cpp projects/zfsd/head/contrib/llvm/lib/Support/regexec.c projects/zfsd/head/contrib/llvm/lib/Support/system_error.cpp projects/zfsd/head/contrib/llvm/lib/TableGen/Error.cpp projects/zfsd/head/contrib/llvm/lib/TableGen/Main.cpp projects/zfsd/head/contrib/llvm/lib/TableGen/Record.cpp projects/zfsd/head/contrib/llvm/lib/TableGen/TGParser.cpp projects/zfsd/head/contrib/llvm/lib/TableGen/TGParser.h projects/zfsd/head/contrib/llvm/lib/Target/ARM/ARM.h projects/zfsd/head/contrib/llvm/lib/Target/ARM/ARM.td projects/zfsd/head/contrib/llvm/lib/Target/ARM/ARMAsmPrinter.cpp projects/zfsd/head/contrib/llvm/lib/Target/ARM/ARMAsmPrinter.h projects/zfsd/head/contrib/llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp projects/zfsd/head/contrib/llvm/lib/Target/ARM/ARMBaseInstrInfo.h projects/zfsd/head/contrib/llvm/lib/Target/ARM/ARMBaseRegisterInfo.cpp projects/zfsd/head/contrib/llvm/lib/Target/ARM/ARMBaseRegisterInfo.h projects/zfsd/head/contrib/llvm/lib/Target/ARM/ARMCallingConv.td projects/zfsd/head/contrib/llvm/lib/Target/ARM/ARMCodeEmitter.cpp projects/zfsd/head/contrib/llvm/lib/Target/ARM/ARMConstantIslandPass.cpp projects/zfsd/head/contrib/llvm/lib/Target/ARM/ARMConstantPoolValue.h projects/zfsd/head/contrib/llvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp projects/zfsd/head/contrib/llvm/lib/Target/ARM/ARMFastISel.cpp projects/zfsd/head/contrib/llvm/lib/Target/ARM/ARMFrameLowering.cpp projects/zfsd/head/contrib/llvm/lib/Target/ARM/ARMHazardRecognizer.cpp projects/zfsd/head/contrib/llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp projects/zfsd/head/contrib/llvm/lib/Target/ARM/ARMISelLowering.cpp projects/zfsd/head/contrib/llvm/lib/Target/ARM/ARMISelLowering.h projects/zfsd/head/contrib/llvm/lib/Target/ARM/ARMInstrFormats.td projects/zfsd/head/contrib/llvm/lib/Target/ARM/ARMInstrInfo.cpp projects/zfsd/head/contrib/llvm/lib/Target/ARM/ARMInstrInfo.td projects/zfsd/head/contrib/llvm/lib/Target/ARM/ARMInstrNEON.td projects/zfsd/head/contrib/llvm/lib/Target/ARM/ARMInstrThumb.td projects/zfsd/head/contrib/llvm/lib/Target/ARM/ARMInstrThumb2.td projects/zfsd/head/contrib/llvm/lib/Target/ARM/ARMInstrVFP.td projects/zfsd/head/contrib/llvm/lib/Target/ARM/ARMJITInfo.cpp projects/zfsd/head/contrib/llvm/lib/Target/ARM/ARMLoadStoreOptimizer.cpp projects/zfsd/head/contrib/llvm/lib/Target/ARM/ARMMachineFunctionInfo.h projects/zfsd/head/contrib/llvm/lib/Target/ARM/ARMRegisterInfo.td projects/zfsd/head/contrib/llvm/lib/Target/ARM/ARMSchedule.td projects/zfsd/head/contrib/llvm/lib/Target/ARM/ARMScheduleA9.td projects/zfsd/head/contrib/llvm/lib/Target/ARM/ARMSelectionDAGInfo.cpp projects/zfsd/head/contrib/llvm/lib/Target/ARM/ARMSubtarget.cpp projects/zfsd/head/contrib/llvm/lib/Target/ARM/ARMSubtarget.h projects/zfsd/head/contrib/llvm/lib/Target/ARM/ARMTargetMachine.cpp projects/zfsd/head/contrib/llvm/lib/Target/ARM/ARMTargetMachine.h projects/zfsd/head/contrib/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp projects/zfsd/head/contrib/llvm/lib/Target/ARM/Disassembler/ARMDisassembler.cpp projects/zfsd/head/contrib/llvm/lib/Target/ARM/InstPrinter/ARMInstPrinter.cpp projects/zfsd/head/contrib/llvm/lib/Target/ARM/InstPrinter/ARMInstPrinter.h projects/zfsd/head/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp projects/zfsd/head/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMELFObjectWriter.cpp projects/zfsd/head/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMMCAsmInfo.cpp projects/zfsd/head/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMMCCodeEmitter.cpp projects/zfsd/head/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMMCExpr.h projects/zfsd/head/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMMCTargetDesc.cpp projects/zfsd/head/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMMachObjectWriter.cpp projects/zfsd/head/contrib/llvm/lib/Target/ARM/MLxExpansionPass.cpp projects/zfsd/head/contrib/llvm/lib/Target/CellSPU/SPUAsmPrinter.cpp projects/zfsd/head/contrib/llvm/lib/Target/CellSPU/SPUFrameLowering.cpp projects/zfsd/head/contrib/llvm/lib/Target/CellSPU/SPUISelDAGToDAG.cpp projects/zfsd/head/contrib/llvm/lib/Target/CellSPU/SPUSubtarget.h projects/zfsd/head/contrib/llvm/lib/Target/CellSPU/SPUTargetMachine.cpp projects/zfsd/head/contrib/llvm/lib/Target/CellSPU/SPUTargetMachine.h projects/zfsd/head/contrib/llvm/lib/Target/CppBackend/CPPBackend.cpp projects/zfsd/head/contrib/llvm/lib/Target/CppBackend/CPPTargetMachine.h projects/zfsd/head/contrib/llvm/lib/Target/Hexagon/HexagonAsmPrinter.cpp projects/zfsd/head/contrib/llvm/lib/Target/Hexagon/HexagonCallingConvLower.cpp projects/zfsd/head/contrib/llvm/lib/Target/Hexagon/HexagonISelLowering.cpp projects/zfsd/head/contrib/llvm/lib/Target/Hexagon/HexagonInstrFormats.td projects/zfsd/head/contrib/llvm/lib/Target/Hexagon/HexagonInstrInfo.cpp projects/zfsd/head/contrib/llvm/lib/Target/Hexagon/HexagonInstrInfo.td projects/zfsd/head/contrib/llvm/lib/Target/Hexagon/HexagonNewValueJump.cpp projects/zfsd/head/contrib/llvm/lib/Target/Hexagon/HexagonPeephole.cpp projects/zfsd/head/contrib/llvm/lib/Target/Hexagon/HexagonRegisterInfo.cpp projects/zfsd/head/contrib/llvm/lib/Target/Hexagon/HexagonRegisterInfo.h projects/zfsd/head/contrib/llvm/lib/Target/Hexagon/HexagonRemoveSZExtArgs.cpp projects/zfsd/head/contrib/llvm/lib/Target/Hexagon/HexagonSchedule.td projects/zfsd/head/contrib/llvm/lib/Target/Hexagon/HexagonScheduleV4.td projects/zfsd/head/contrib/llvm/lib/Target/Hexagon/HexagonSubtarget.cpp projects/zfsd/head/contrib/llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp projects/zfsd/head/contrib/llvm/lib/Target/Hexagon/HexagonTargetMachine.h projects/zfsd/head/contrib/llvm/lib/Target/Hexagon/HexagonTargetObjectFile.cpp projects/zfsd/head/contrib/llvm/lib/Target/Hexagon/HexagonVLIWPacketizer.cpp projects/zfsd/head/contrib/llvm/lib/Target/Hexagon/HexagonVarargsCallingConvention.h projects/zfsd/head/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCAsmInfo.cpp projects/zfsd/head/contrib/llvm/lib/Target/MBlaze/AsmParser/MBlazeAsmParser.cpp projects/zfsd/head/contrib/llvm/lib/Target/MBlaze/MBlazeAsmPrinter.cpp projects/zfsd/head/contrib/llvm/lib/Target/MBlaze/MBlazeFrameLowering.cpp projects/zfsd/head/contrib/llvm/lib/Target/MBlaze/MBlazeIntrinsicInfo.cpp projects/zfsd/head/contrib/llvm/lib/Target/MBlaze/MBlazeRegisterInfo.cpp projects/zfsd/head/contrib/llvm/lib/Target/MBlaze/MBlazeTargetMachine.cpp projects/zfsd/head/contrib/llvm/lib/Target/MBlaze/MBlazeTargetMachine.h projects/zfsd/head/contrib/llvm/lib/Target/MBlaze/MBlazeTargetObjectFile.cpp projects/zfsd/head/contrib/llvm/lib/Target/MBlaze/MCTargetDesc/MBlazeMCCodeEmitter.cpp projects/zfsd/head/contrib/llvm/lib/Target/MSP430/MSP430FrameLowering.cpp projects/zfsd/head/contrib/llvm/lib/Target/MSP430/MSP430FrameLowering.h projects/zfsd/head/contrib/llvm/lib/Target/MSP430/MSP430ISelDAGToDAG.cpp projects/zfsd/head/contrib/llvm/lib/Target/MSP430/MSP430ISelLowering.cpp projects/zfsd/head/contrib/llvm/lib/Target/MSP430/MSP430ISelLowering.h projects/zfsd/head/contrib/llvm/lib/Target/MSP430/MSP430RegisterInfo.cpp projects/zfsd/head/contrib/llvm/lib/Target/MSP430/MSP430RegisterInfo.h projects/zfsd/head/contrib/llvm/lib/Target/MSP430/MSP430TargetMachine.cpp projects/zfsd/head/contrib/llvm/lib/Target/MSP430/MSP430TargetMachine.h projects/zfsd/head/contrib/llvm/lib/Target/Mangler.cpp projects/zfsd/head/contrib/llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp projects/zfsd/head/contrib/llvm/lib/Target/Mips/Disassembler/MipsDisassembler.cpp projects/zfsd/head/contrib/llvm/lib/Target/Mips/InstPrinter/MipsInstPrinter.cpp projects/zfsd/head/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsAsmBackend.cpp projects/zfsd/head/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsBaseInfo.h projects/zfsd/head/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsELFObjectWriter.cpp projects/zfsd/head/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsFixupKinds.h projects/zfsd/head/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsMCCodeEmitter.cpp projects/zfsd/head/contrib/llvm/lib/Target/Mips/Mips.td projects/zfsd/head/contrib/llvm/lib/Target/Mips/Mips16FrameLowering.cpp projects/zfsd/head/contrib/llvm/lib/Target/Mips/Mips16FrameLowering.h projects/zfsd/head/contrib/llvm/lib/Target/Mips/Mips16InstrInfo.cpp projects/zfsd/head/contrib/llvm/lib/Target/Mips/Mips16InstrInfo.h projects/zfsd/head/contrib/llvm/lib/Target/Mips/Mips16InstrInfo.td projects/zfsd/head/contrib/llvm/lib/Target/Mips/Mips16RegisterInfo.cpp projects/zfsd/head/contrib/llvm/lib/Target/Mips/Mips16RegisterInfo.h projects/zfsd/head/contrib/llvm/lib/Target/Mips/Mips64InstrInfo.td projects/zfsd/head/contrib/llvm/lib/Target/Mips/MipsAnalyzeImmediate.cpp projects/zfsd/head/contrib/llvm/lib/Target/Mips/MipsAsmPrinter.cpp projects/zfsd/head/contrib/llvm/lib/Target/Mips/MipsAsmPrinter.h projects/zfsd/head/contrib/llvm/lib/Target/Mips/MipsCallingConv.td projects/zfsd/head/contrib/llvm/lib/Target/Mips/MipsCodeEmitter.cpp projects/zfsd/head/contrib/llvm/lib/Target/Mips/MipsDelaySlotFiller.cpp projects/zfsd/head/contrib/llvm/lib/Target/Mips/MipsFrameLowering.cpp projects/zfsd/head/contrib/llvm/lib/Target/Mips/MipsFrameLowering.h projects/zfsd/head/contrib/llvm/lib/Target/Mips/MipsISelDAGToDAG.cpp projects/zfsd/head/contrib/llvm/lib/Target/Mips/MipsISelLowering.cpp projects/zfsd/head/contrib/llvm/lib/Target/Mips/MipsISelLowering.h projects/zfsd/head/contrib/llvm/lib/Target/Mips/MipsInstrFPU.td projects/zfsd/head/contrib/llvm/lib/Target/Mips/MipsInstrFormats.td projects/zfsd/head/contrib/llvm/lib/Target/Mips/MipsInstrInfo.cpp projects/zfsd/head/contrib/llvm/lib/Target/Mips/MipsInstrInfo.h projects/zfsd/head/contrib/llvm/lib/Target/Mips/MipsInstrInfo.td projects/zfsd/head/contrib/llvm/lib/Target/Mips/MipsJITInfo.cpp projects/zfsd/head/contrib/llvm/lib/Target/Mips/MipsJITInfo.h projects/zfsd/head/contrib/llvm/lib/Target/Mips/MipsLongBranch.cpp projects/zfsd/head/contrib/llvm/lib/Target/Mips/MipsMCInstLower.cpp projects/zfsd/head/contrib/llvm/lib/Target/Mips/MipsMCInstLower.h projects/zfsd/head/contrib/llvm/lib/Target/Mips/MipsMachineFunction.cpp projects/zfsd/head/contrib/llvm/lib/Target/Mips/MipsMachineFunction.h projects/zfsd/head/contrib/llvm/lib/Target/Mips/MipsRegisterInfo.cpp projects/zfsd/head/contrib/llvm/lib/Target/Mips/MipsRegisterInfo.h projects/zfsd/head/contrib/llvm/lib/Target/Mips/MipsRegisterInfo.td projects/zfsd/head/contrib/llvm/lib/Target/Mips/MipsSEFrameLowering.cpp projects/zfsd/head/contrib/llvm/lib/Target/Mips/MipsSEInstrInfo.cpp projects/zfsd/head/contrib/llvm/lib/Target/Mips/MipsSEInstrInfo.h projects/zfsd/head/contrib/llvm/lib/Target/Mips/MipsSERegisterInfo.cpp projects/zfsd/head/contrib/llvm/lib/Target/Mips/MipsSERegisterInfo.h projects/zfsd/head/contrib/llvm/lib/Target/Mips/MipsSubtarget.cpp projects/zfsd/head/contrib/llvm/lib/Target/Mips/MipsSubtarget.h projects/zfsd/head/contrib/llvm/lib/Target/Mips/MipsTargetMachine.cpp projects/zfsd/head/contrib/llvm/lib/Target/Mips/MipsTargetMachine.h projects/zfsd/head/contrib/llvm/lib/Target/Mips/MipsTargetObjectFile.cpp projects/zfsd/head/contrib/llvm/lib/Target/NVPTX/NVPTX.td projects/zfsd/head/contrib/llvm/lib/Target/NVPTX/NVPTXAllocaHoisting.h projects/zfsd/head/contrib/llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp projects/zfsd/head/contrib/llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp projects/zfsd/head/contrib/llvm/lib/Target/NVPTX/NVPTXISelLowering.h projects/zfsd/head/contrib/llvm/lib/Target/NVPTX/NVPTXLowerAggrCopies.cpp projects/zfsd/head/contrib/llvm/lib/Target/NVPTX/NVPTXLowerAggrCopies.h projects/zfsd/head/contrib/llvm/lib/Target/NVPTX/NVPTXSubtarget.cpp projects/zfsd/head/contrib/llvm/lib/Target/NVPTX/NVPTXSubtarget.h projects/zfsd/head/contrib/llvm/lib/Target/NVPTX/NVPTXTargetMachine.cpp projects/zfsd/head/contrib/llvm/lib/Target/NVPTX/NVPTXTargetMachine.h projects/zfsd/head/contrib/llvm/lib/Target/PowerPC/InstPrinter/PPCInstPrinter.cpp projects/zfsd/head/contrib/llvm/lib/Target/PowerPC/MCTargetDesc/PPCAsmBackend.cpp projects/zfsd/head/contrib/llvm/lib/Target/PowerPC/MCTargetDesc/PPCELFObjectWriter.cpp projects/zfsd/head/contrib/llvm/lib/Target/PowerPC/MCTargetDesc/PPCFixupKinds.h projects/zfsd/head/contrib/llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCAsmInfo.cpp projects/zfsd/head/contrib/llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCCodeEmitter.cpp projects/zfsd/head/contrib/llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCTargetDesc.cpp projects/zfsd/head/contrib/llvm/lib/Target/PowerPC/PPC.td projects/zfsd/head/contrib/llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp projects/zfsd/head/contrib/llvm/lib/Target/PowerPC/PPCCallingConv.td projects/zfsd/head/contrib/llvm/lib/Target/PowerPC/PPCFrameLowering.cpp projects/zfsd/head/contrib/llvm/lib/Target/PowerPC/PPCFrameLowering.h projects/zfsd/head/contrib/llvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp projects/zfsd/head/contrib/llvm/lib/Target/PowerPC/PPCISelLowering.cpp projects/zfsd/head/contrib/llvm/lib/Target/PowerPC/PPCISelLowering.h projects/zfsd/head/contrib/llvm/lib/Target/PowerPC/PPCInstr64Bit.td projects/zfsd/head/contrib/llvm/lib/Target/PowerPC/PPCInstrAltivec.td projects/zfsd/head/contrib/llvm/lib/Target/PowerPC/PPCInstrFormats.td projects/zfsd/head/contrib/llvm/lib/Target/PowerPC/PPCInstrInfo.cpp projects/zfsd/head/contrib/llvm/lib/Target/PowerPC/PPCInstrInfo.td projects/zfsd/head/contrib/llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp projects/zfsd/head/contrib/llvm/lib/Target/PowerPC/PPCRegisterInfo.h projects/zfsd/head/contrib/llvm/lib/Target/PowerPC/PPCSchedule.td projects/zfsd/head/contrib/llvm/lib/Target/PowerPC/PPCSchedule440.td projects/zfsd/head/contrib/llvm/lib/Target/PowerPC/PPCScheduleA2.td projects/zfsd/head/contrib/llvm/lib/Target/PowerPC/PPCScheduleG3.td projects/zfsd/head/contrib/llvm/lib/Target/PowerPC/PPCScheduleG4.td projects/zfsd/head/contrib/llvm/lib/Target/PowerPC/PPCScheduleG4Plus.td projects/zfsd/head/contrib/llvm/lib/Target/PowerPC/PPCScheduleG5.td projects/zfsd/head/contrib/llvm/lib/Target/PowerPC/PPCSubtarget.cpp projects/zfsd/head/contrib/llvm/lib/Target/PowerPC/PPCSubtarget.h projects/zfsd/head/contrib/llvm/lib/Target/PowerPC/PPCTargetMachine.cpp projects/zfsd/head/contrib/llvm/lib/Target/PowerPC/PPCTargetMachine.h projects/zfsd/head/contrib/llvm/lib/Target/Sparc/SparcFrameLowering.cpp projects/zfsd/head/contrib/llvm/lib/Target/Sparc/SparcISelLowering.cpp projects/zfsd/head/contrib/llvm/lib/Target/Sparc/SparcInstrInfo.td projects/zfsd/head/contrib/llvm/lib/Target/Sparc/SparcTargetMachine.cpp projects/zfsd/head/contrib/llvm/lib/Target/Sparc/SparcTargetMachine.h projects/zfsd/head/contrib/llvm/lib/Target/Target.cpp projects/zfsd/head/contrib/llvm/lib/Target/TargetLibraryInfo.cpp projects/zfsd/head/contrib/llvm/lib/Target/TargetLoweringObjectFile.cpp projects/zfsd/head/contrib/llvm/lib/Target/TargetMachineC.cpp projects/zfsd/head/contrib/llvm/lib/Target/TargetRegisterInfo.cpp projects/zfsd/head/contrib/llvm/lib/Target/X86/AsmParser/X86AsmLexer.cpp projects/zfsd/head/contrib/llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp projects/zfsd/head/contrib/llvm/lib/Target/X86/Disassembler/X86Disassembler.cpp projects/zfsd/head/contrib/llvm/lib/Target/X86/Disassembler/X86Disassembler.h projects/zfsd/head/contrib/llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoder.c projects/zfsd/head/contrib/llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoder.h projects/zfsd/head/contrib/llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoderCommon.h projects/zfsd/head/contrib/llvm/lib/Target/X86/InstPrinter/X86ATTInstPrinter.cpp projects/zfsd/head/contrib/llvm/lib/Target/X86/InstPrinter/X86ATTInstPrinter.h projects/zfsd/head/contrib/llvm/lib/Target/X86/InstPrinter/X86IntelInstPrinter.cpp projects/zfsd/head/contrib/llvm/lib/Target/X86/InstPrinter/X86IntelInstPrinter.h projects/zfsd/head/contrib/llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp projects/zfsd/head/contrib/llvm/lib/Target/X86/MCTargetDesc/X86BaseInfo.h projects/zfsd/head/contrib/llvm/lib/Target/X86/MCTargetDesc/X86ELFObjectWriter.cpp projects/zfsd/head/contrib/llvm/lib/Target/X86/MCTargetDesc/X86MCAsmInfo.cpp projects/zfsd/head/contrib/llvm/lib/Target/X86/MCTargetDesc/X86MCCodeEmitter.cpp projects/zfsd/head/contrib/llvm/lib/Target/X86/MCTargetDesc/X86MCTargetDesc.cpp projects/zfsd/head/contrib/llvm/lib/Target/X86/MCTargetDesc/X86MCTargetDesc.h projects/zfsd/head/contrib/llvm/lib/Target/X86/MCTargetDesc/X86MachObjectWriter.cpp projects/zfsd/head/contrib/llvm/lib/Target/X86/X86.td projects/zfsd/head/contrib/llvm/lib/Target/X86/X86AsmPrinter.cpp projects/zfsd/head/contrib/llvm/lib/Target/X86/X86AsmPrinter.h projects/zfsd/head/contrib/llvm/lib/Target/X86/X86COFFMachineModuleInfo.h projects/zfsd/head/contrib/llvm/lib/Target/X86/X86CallingConv.td projects/zfsd/head/contrib/llvm/lib/Target/X86/X86CodeEmitter.cpp projects/zfsd/head/contrib/llvm/lib/Target/X86/X86FastISel.cpp projects/zfsd/head/contrib/llvm/lib/Target/X86/X86FloatingPoint.cpp projects/zfsd/head/contrib/llvm/lib/Target/X86/X86FrameLowering.cpp projects/zfsd/head/contrib/llvm/lib/Target/X86/X86ISelDAGToDAG.cpp projects/zfsd/head/contrib/llvm/lib/Target/X86/X86ISelLowering.cpp projects/zfsd/head/contrib/llvm/lib/Target/X86/X86ISelLowering.h projects/zfsd/head/contrib/llvm/lib/Target/X86/X86InstrCompiler.td projects/zfsd/head/contrib/llvm/lib/Target/X86/X86InstrControl.td projects/zfsd/head/contrib/llvm/lib/Target/X86/X86InstrFMA.td projects/zfsd/head/contrib/llvm/lib/Target/X86/X86InstrFormats.td projects/zfsd/head/contrib/llvm/lib/Target/X86/X86InstrFragmentsSIMD.td projects/zfsd/head/contrib/llvm/lib/Target/X86/X86InstrInfo.cpp projects/zfsd/head/contrib/llvm/lib/Target/X86/X86InstrInfo.h projects/zfsd/head/contrib/llvm/lib/Target/X86/X86InstrInfo.td projects/zfsd/head/contrib/llvm/lib/Target/X86/X86InstrMMX.td projects/zfsd/head/contrib/llvm/lib/Target/X86/X86InstrSSE.td projects/zfsd/head/contrib/llvm/lib/Target/X86/X86InstrShiftRotate.td projects/zfsd/head/contrib/llvm/lib/Target/X86/X86InstrXOP.td projects/zfsd/head/contrib/llvm/lib/Target/X86/X86JITInfo.cpp projects/zfsd/head/contrib/llvm/lib/Target/X86/X86MCInstLower.cpp projects/zfsd/head/contrib/llvm/lib/Target/X86/X86RegisterInfo.cpp projects/zfsd/head/contrib/llvm/lib/Target/X86/X86RegisterInfo.h projects/zfsd/head/contrib/llvm/lib/Target/X86/X86RegisterInfo.td projects/zfsd/head/contrib/llvm/lib/Target/X86/X86SelectionDAGInfo.cpp projects/zfsd/head/contrib/llvm/lib/Target/X86/X86Subtarget.cpp projects/zfsd/head/contrib/llvm/lib/Target/X86/X86Subtarget.h projects/zfsd/head/contrib/llvm/lib/Target/X86/X86TargetMachine.cpp projects/zfsd/head/contrib/llvm/lib/Target/X86/X86TargetMachine.h projects/zfsd/head/contrib/llvm/lib/Target/X86/X86VZeroUpper.cpp projects/zfsd/head/contrib/llvm/lib/Target/XCore/XCoreAsmPrinter.cpp projects/zfsd/head/contrib/llvm/lib/Target/XCore/XCoreFrameLowering.cpp projects/zfsd/head/contrib/llvm/lib/Target/XCore/XCoreISelLowering.cpp projects/zfsd/head/contrib/llvm/lib/Target/XCore/XCoreInstrInfo.td projects/zfsd/head/contrib/llvm/lib/Target/XCore/XCoreRegisterInfo.cpp projects/zfsd/head/contrib/llvm/lib/Target/XCore/XCoreTargetMachine.cpp projects/zfsd/head/contrib/llvm/lib/Target/XCore/XCoreTargetMachine.h projects/zfsd/head/contrib/llvm/lib/Transforms/IPO/ArgumentPromotion.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/IPO/ConstantMerge.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/IPO/DeadArgumentElimination.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/IPO/ExtractGV.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/IPO/FunctionAttrs.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/IPO/GlobalOpt.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/IPO/IPO.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/IPO/InlineAlways.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/IPO/InlineSimple.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/IPO/Inliner.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/IPO/Internalize.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/IPO/MergeFunctions.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/IPO/PassManagerBuilder.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/IPO/PruneEH.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/InstCombine/InstCombine.h projects/zfsd/head/contrib/llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/InstCombine/InstCombineLoadStoreAlloca.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/InstCombine/InstCombineMulDivRem.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/InstCombine/InstCombinePHI.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/InstCombine/InstCombineShifts.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/InstCombine/InstCombineWorklist.h projects/zfsd/head/contrib/llvm/lib/Transforms/InstCombine/InstructionCombining.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/Instrumentation/BoundsChecking.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/Instrumentation/GCOVProfiling.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/Instrumentation/MaximumSpanningTree.h projects/zfsd/head/contrib/llvm/lib/Transforms/Instrumentation/ThreadSanitizer.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/Scalar/CodeGenPrepare.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/Scalar/ConstantProp.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/Scalar/CorrelatedValuePropagation.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/Scalar/DCE.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/Scalar/EarlyCSE.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/Scalar/GVN.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/Scalar/GlobalMerge.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/Scalar/IndVarSimplify.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/Scalar/JumpThreading.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/Scalar/LICM.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/Scalar/LoopInstSimplify.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/Scalar/LoopRotation.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/Scalar/LoopUnswitch.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/Scalar/ObjCARC.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/Scalar/Reassociate.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/Scalar/SCCP.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/Scalar/Scalar.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/Scalar/ScalarReplAggregates.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/Scalar/SimplifyCFGPass.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/Scalar/SimplifyLibCalls.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/Utils/AddrModeMatcher.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/Utils/BasicBlockUtils.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/Utils/BuildLibCalls.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/Utils/CloneFunction.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/Utils/CodeExtractor.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/Utils/InlineFunction.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/Utils/LCSSA.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/Utils/Local.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/Utils/LoopSimplify.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/Utils/PromoteMemoryToRegister.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/Utils/SSAUpdater.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/Utils/SimplifyCFG.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/Utils/SimplifyIndVar.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/Utils/SimplifyInstructions.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/Utils/Utils.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/Utils/ValueMapper.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/Vectorize/BBVectorize.cpp projects/zfsd/head/contrib/llvm/lib/Transforms/Vectorize/Vectorize.cpp projects/zfsd/head/contrib/llvm/lib/VMCore/AsmWriter.cpp projects/zfsd/head/contrib/llvm/lib/VMCore/Attributes.cpp projects/zfsd/head/contrib/llvm/lib/VMCore/AutoUpgrade.cpp projects/zfsd/head/contrib/llvm/lib/VMCore/ConstantFold.cpp projects/zfsd/head/contrib/llvm/lib/VMCore/Constants.cpp projects/zfsd/head/contrib/llvm/lib/VMCore/ConstantsContext.h projects/zfsd/head/contrib/llvm/lib/VMCore/Core.cpp projects/zfsd/head/contrib/llvm/lib/VMCore/DIBuilder.cpp projects/zfsd/head/contrib/llvm/lib/VMCore/DebugInfo.cpp projects/zfsd/head/contrib/llvm/lib/VMCore/Dominators.cpp projects/zfsd/head/contrib/llvm/lib/VMCore/Function.cpp projects/zfsd/head/contrib/llvm/lib/VMCore/GCOV.cpp projects/zfsd/head/contrib/llvm/lib/VMCore/IRBuilder.cpp projects/zfsd/head/contrib/llvm/lib/VMCore/InlineAsm.cpp projects/zfsd/head/contrib/llvm/lib/VMCore/Instructions.cpp projects/zfsd/head/contrib/llvm/lib/VMCore/LLVMContext.cpp projects/zfsd/head/contrib/llvm/lib/VMCore/LLVMContextImpl.cpp projects/zfsd/head/contrib/llvm/lib/VMCore/LLVMContextImpl.h projects/zfsd/head/contrib/llvm/lib/VMCore/PassManager.cpp projects/zfsd/head/contrib/llvm/lib/VMCore/Type.cpp projects/zfsd/head/contrib/llvm/lib/VMCore/User.cpp projects/zfsd/head/contrib/llvm/lib/VMCore/Value.cpp projects/zfsd/head/contrib/llvm/lib/VMCore/ValueTypes.cpp projects/zfsd/head/contrib/llvm/lib/VMCore/Verifier.cpp projects/zfsd/head/contrib/llvm/tools/bugpoint/ExtractFunction.cpp projects/zfsd/head/contrib/llvm/tools/bugpoint/OptimizerDriver.cpp projects/zfsd/head/contrib/llvm/tools/clang/include/clang-c/Index.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/ARCMigrate/ARCMT.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/AST/ASTConsumer.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/AST/ASTContext.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/AST/ASTMutationListener.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/AST/Attr.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/AST/BuiltinTypes.def projects/zfsd/head/contrib/llvm/tools/clang/include/clang/AST/CXXInheritance.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/AST/CanonicalType.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/AST/CharUnits.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/AST/Comment.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/AST/CommentBriefParser.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/AST/CommentCommandTraits.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/AST/CommentLexer.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/AST/CommentParser.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/AST/CommentSema.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/AST/Decl.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/AST/DeclBase.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/AST/DeclCXX.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/AST/DeclFriend.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/AST/DeclObjC.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/AST/DeclTemplate.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/AST/DeclarationName.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/AST/Expr.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/AST/ExprCXX.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/AST/ExprObjC.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/AST/ExternalASTSource.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/AST/NSAPI.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/AST/NestedNameSpecifier.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/AST/OperationKinds.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/AST/PrettyPrinter.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/AST/RawCommentList.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/AST/RecordLayout.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/AST/RecursiveASTVisitor.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/AST/SelectorLocationsKind.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/AST/Stmt.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/AST/StmtCXX.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/AST/StmtObjC.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/AST/TemplateBase.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/AST/Type.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/AST/TypeLoc.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/AST/UnresolvedSet.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/AST/VTableBuilder.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/ASTMatchers/ASTMatchFinder.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/ASTMatchers/ASTMatchers.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/ASTMatchers/ASTMatchersInternal.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/ASTMatchers/ASTMatchersMacros.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/FormatString.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/ThreadSafety.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Analysis/AnalysisContext.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Analysis/CFG.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Analysis/ProgramPoint.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Basic/Attr.td projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Basic/Builtins.def projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Basic/BuiltinsMips.def projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Basic/BuiltinsNVPTX.def projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Basic/BuiltinsX86.def projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Basic/ConvertUTF.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Basic/Diagnostic.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticASTKinds.td projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticCommentKinds.td projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticCommonKinds.td projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticDriverKinds.td projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticFrontendKinds.td projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticGroups.td projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticLexKinds.td projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticParseKinds.td projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticSemaKinds.td projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticSerializationKinds.td projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Basic/FileManager.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Basic/IdentifierTable.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Basic/LangOptions.def projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Basic/Module.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Basic/ObjCRuntime.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Basic/OnDiskHashTable.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Basic/SourceLocation.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Basic/SourceManager.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Basic/Specifiers.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Basic/StmtNodes.td projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Basic/TargetInfo.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Basic/TargetOptions.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Basic/TokenKinds.def projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Basic/TokenKinds.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Basic/TypeTraits.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Basic/arm_neon.td projects/zfsd/head/contrib/llvm/tools/clang/include/clang/CodeGen/CodeGenAction.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Driver/Action.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Driver/Arg.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Driver/ArgList.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Driver/CC1AsOptions.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Driver/CC1AsOptions.td projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Driver/CC1Options.td projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Driver/Compilation.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Driver/Driver.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Driver/Job.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Driver/OptParser.td projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Driver/OptTable.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Driver/Option.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Driver/Options.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Driver/Options.td projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Driver/Tool.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Driver/ToolChain.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Driver/Types.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Frontend/ASTUnit.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Frontend/CodeGenOptions.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Frontend/CompilerInstance.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Frontend/CompilerInvocation.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Frontend/DiagnosticRenderer.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Frontend/FrontendAction.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Frontend/FrontendOptions.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Frontend/LangStandard.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Frontend/LangStandards.def projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Frontend/LogDiagnosticPrinter.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Frontend/MultiplexConsumer.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Frontend/SerializedDiagnosticPrinter.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Frontend/TextDiagnostic.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Frontend/TextDiagnosticPrinter.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Frontend/VerifyDiagnosticConsumer.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Lex/ExternalPreprocessorSource.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Lex/HeaderMap.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Lex/HeaderSearch.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Lex/Lexer.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Lex/LiteralSupport.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Lex/MacroInfo.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Lex/ModuleMap.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Lex/PPCallbacks.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Lex/PTHLexer.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Lex/PTHManager.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Lex/PreprocessingRecord.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Lex/Preprocessor.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Lex/PreprocessorLexer.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Lex/Token.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Lex/TokenLexer.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Parse/Parser.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Sema/AttributeList.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Sema/CodeCompleteConsumer.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Sema/DeclSpec.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Sema/DelayedDiagnostic.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Sema/ExternalSemaSource.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Sema/Initialization.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Sema/LocInfoType.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Sema/Overload.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Sema/Ownership.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Sema/ParsedTemplate.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Sema/Scope.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Sema/ScopeInfo.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Sema/Sema.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Sema/SemaConsumer.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Sema/Template.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Sema/TemplateDeduction.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Sema/TypoCorrection.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Serialization/ASTBitCodes.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Serialization/ASTDeserializationListener.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Serialization/ASTReader.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Serialization/ASTWriter.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Serialization/ContinuousRangeMap.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Serialization/Module.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Serialization/ModuleManager.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporter.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporterVisitor.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/BugReporter/PathDiagnostic.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/Checker.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/CheckerManager.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/APSIntType.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/AnalysisManager.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/BasicValueFactory.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/CheckerContext.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ConstraintManager.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/CoreEngine.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/Environment.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExplodedGraph.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ProgramState.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ProgramStateTrait.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SValBuilder.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SVals.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/Store.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SubEngine.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SymbolManager.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/TaintManager.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Tooling/CompilationDatabase.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Tooling/Refactoring.h projects/zfsd/head/contrib/llvm/tools/clang/include/clang/Tooling/Tooling.h projects/zfsd/head/contrib/llvm/tools/clang/lib/ARCMigrate/ARCMT.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/ARCMigrate/FileRemapper.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/ARCMigrate/Internals.h projects/zfsd/head/contrib/llvm/tools/clang/lib/ARCMigrate/ObjCMT.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/ARCMigrate/Transforms.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/AST/ASTConsumer.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/AST/ASTContext.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/AST/ASTDiagnostic.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/AST/ASTImporter.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/AST/CXXInheritance.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/AST/Comment.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/AST/CommentBriefParser.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/AST/CommentCommandTraits.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/AST/CommentDumper.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/AST/CommentLexer.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/AST/CommentParser.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/AST/CommentSema.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/AST/Decl.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/AST/DeclBase.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/AST/DeclCXX.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/AST/DeclObjC.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/AST/DeclPrinter.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/AST/DeclTemplate.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/AST/DumpXML.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/AST/Expr.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/AST/ExprCXX.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/AST/ExprClassification.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/AST/ExprConstant.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/AST/ItaniumMangle.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/AST/MicrosoftMangle.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/AST/NSAPI.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/AST/ParentMap.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/AST/RawCommentList.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/AST/RecordLayoutBuilder.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/AST/Stmt.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/AST/StmtDumper.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/AST/StmtPrinter.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/AST/StmtProfile.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/AST/TemplateBase.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/AST/Type.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/AST/TypeLoc.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/AST/TypePrinter.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/AST/VTableBuilder.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/ASTMatchers/ASTMatchFinder.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/ASTMatchers/ASTMatchersInternal.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Analysis/AnalysisDeclContext.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Analysis/CFG.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Analysis/FormatString.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Analysis/PrintfFormatString.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Analysis/ReachableCode.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Analysis/ScanfFormatString.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Analysis/ThreadSafety.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Analysis/UninitializedValues.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Basic/ConvertUTF.c projects/zfsd/head/contrib/llvm/tools/clang/lib/Basic/ConvertUTFWrapper.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Basic/Diagnostic.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Basic/DiagnosticIDs.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Basic/FileManager.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Basic/IdentifierTable.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Basic/Module.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Basic/SourceLocation.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Basic/SourceManager.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Basic/TargetInfo.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Basic/Targets.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Basic/Version.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/CodeGen/ABIInfo.h projects/zfsd/head/contrib/llvm/tools/clang/lib/CodeGen/BackendUtil.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/CodeGen/CGBlocks.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/CodeGen/CGBlocks.h projects/zfsd/head/contrib/llvm/tools/clang/lib/CodeGen/CGBuiltin.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/CodeGen/CGCXXABI.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/CodeGen/CGCXXABI.h projects/zfsd/head/contrib/llvm/tools/clang/lib/CodeGen/CGCall.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/CodeGen/CGClass.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/CodeGen/CGDebugInfo.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/CodeGen/CGDebugInfo.h projects/zfsd/head/contrib/llvm/tools/clang/lib/CodeGen/CGDecl.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/CodeGen/CGDeclCXX.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/CodeGen/CGException.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/CodeGen/CGExpr.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/CodeGen/CGExprAgg.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/CodeGen/CGExprCXX.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/CodeGen/CGExprComplex.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/CodeGen/CGExprConstant.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/CodeGen/CGExprScalar.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/CodeGen/CGObjC.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/CodeGen/CGObjCGNU.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/CodeGen/CGObjCMac.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/CodeGen/CGObjCRuntime.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/CodeGen/CGObjCRuntime.h projects/zfsd/head/contrib/llvm/tools/clang/lib/CodeGen/CGRTTI.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/CodeGen/CGRecordLayout.h projects/zfsd/head/contrib/llvm/tools/clang/lib/CodeGen/CGRecordLayoutBuilder.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/CodeGen/CGStmt.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/CodeGen/CGVTables.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/CodeGen/CodeGenAction.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/CodeGen/CodeGenFunction.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/CodeGen/CodeGenFunction.h projects/zfsd/head/contrib/llvm/tools/clang/lib/CodeGen/CodeGenModule.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/CodeGen/CodeGenModule.h projects/zfsd/head/contrib/llvm/tools/clang/lib/CodeGen/CodeGenTBAA.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/CodeGen/CodeGenTBAA.h projects/zfsd/head/contrib/llvm/tools/clang/lib/CodeGen/CodeGenTypes.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/CodeGen/CodeGenTypes.h projects/zfsd/head/contrib/llvm/tools/clang/lib/CodeGen/ItaniumCXXABI.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/CodeGen/MicrosoftCXXABI.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/CodeGen/ModuleBuilder.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/CodeGen/TargetInfo.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Driver/Arg.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Driver/ArgList.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Driver/CC1AsOptions.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Driver/Compilation.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Driver/Driver.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Driver/DriverOptions.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Driver/OptTable.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Driver/Option.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Driver/ToolChain.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Driver/ToolChains.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Driver/ToolChains.h projects/zfsd/head/contrib/llvm/tools/clang/lib/Driver/Tools.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Driver/Tools.h projects/zfsd/head/contrib/llvm/tools/clang/lib/Driver/Types.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Driver/WindowsToolChain.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Edit/RewriteObjCFoundationAPI.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Frontend/ASTConsumers.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Frontend/ASTMerge.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Frontend/ASTUnit.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Frontend/ChainedDiagnosticConsumer.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Frontend/ChainedIncludesSource.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Frontend/CompilerInstance.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Frontend/CompilerInvocation.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Frontend/CreateInvocationFromCommandLine.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Frontend/DependencyFile.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Frontend/DependencyGraph.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Frontend/DiagnosticRenderer.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Frontend/FrontendAction.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Frontend/FrontendActions.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Frontend/InitHeaderSearch.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Frontend/InitPreprocessor.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Frontend/LogDiagnosticPrinter.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Frontend/PrintPreprocessedOutput.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Frontend/SerializedDiagnosticPrinter.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Frontend/TextDiagnostic.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Frontend/TextDiagnosticPrinter.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Frontend/VerifyDiagnosticConsumer.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Frontend/Warnings.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Headers/altivec.h projects/zfsd/head/contrib/llvm/tools/clang/lib/Headers/bmi2intrin.h projects/zfsd/head/contrib/llvm/tools/clang/lib/Headers/cpuid.h projects/zfsd/head/contrib/llvm/tools/clang/lib/Headers/immintrin.h projects/zfsd/head/contrib/llvm/tools/clang/lib/Headers/module.map projects/zfsd/head/contrib/llvm/tools/clang/lib/Headers/unwind.h projects/zfsd/head/contrib/llvm/tools/clang/lib/Headers/wmmintrin.h projects/zfsd/head/contrib/llvm/tools/clang/lib/Headers/x86intrin.h projects/zfsd/head/contrib/llvm/tools/clang/lib/Headers/xmmintrin.h projects/zfsd/head/contrib/llvm/tools/clang/lib/Lex/HeaderMap.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Lex/HeaderSearch.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Lex/Lexer.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Lex/LiteralSupport.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Lex/MacroArgs.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Lex/MacroInfo.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Lex/ModuleMap.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Lex/PPDirectives.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Lex/PPExpressions.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Lex/PPLexerChange.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Lex/PPMacroExpansion.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Lex/PTHLexer.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Lex/Pragma.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Lex/PreprocessingRecord.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Lex/Preprocessor.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Lex/TokenLexer.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Parse/ParseAST.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Parse/ParseCXXInlineMethods.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Parse/ParseDecl.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Parse/ParseDeclCXX.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Parse/ParseExpr.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Parse/ParseExprCXX.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Parse/ParseInit.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Parse/ParseObjc.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Parse/ParsePragma.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Parse/ParsePragma.h projects/zfsd/head/contrib/llvm/tools/clang/lib/Parse/ParseStmt.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Parse/ParseTemplate.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Parse/ParseTentative.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Parse/Parser.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Parse/RAIIObjectsForParser.h projects/zfsd/head/contrib/llvm/tools/clang/lib/Sema/AnalysisBasedWarnings.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Sema/CodeCompleteConsumer.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Sema/DeclSpec.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Sema/DelayedDiagnostic.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Sema/IdentifierResolver.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Sema/JumpDiagnostics.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Sema/Sema.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Sema/SemaAccess.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Sema/SemaAttr.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Sema/SemaCXXScopeSpec.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Sema/SemaCast.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Sema/SemaChecking.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Sema/SemaCodeComplete.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Sema/SemaDecl.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Sema/SemaDeclAttr.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Sema/SemaDeclCXX.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Sema/SemaDeclObjC.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Sema/SemaExceptionSpec.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Sema/SemaExpr.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Sema/SemaExprCXX.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Sema/SemaExprMember.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Sema/SemaExprObjC.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Sema/SemaInit.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Sema/SemaLambda.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Sema/SemaLookup.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Sema/SemaObjCProperty.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Sema/SemaOverload.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Sema/SemaPseudoObject.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Sema/SemaStmt.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Sema/SemaStmtAttr.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Sema/SemaTemplate.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Sema/SemaTemplateDeduction.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Sema/SemaTemplateInstantiate.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Sema/SemaTemplateInstantiateDecl.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Sema/SemaTemplateVariadic.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Sema/SemaType.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Sema/TreeTransform.h projects/zfsd/head/contrib/llvm/tools/clang/lib/Serialization/ASTCommon.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Serialization/ASTReader.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Serialization/ASTReaderDecl.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Serialization/ASTReaderStmt.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Serialization/ASTWriter.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Serialization/ASTWriterDecl.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Serialization/ASTWriterStmt.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Serialization/GeneratePCH.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Serialization/Module.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Serialization/ModuleManager.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ArrayBoundChecker.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ArrayBoundCheckerV2.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/AttrNonNullChecker.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/BasicObjCFoundationChecks.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/BoolAssignmentChecker.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/BuiltinFunctionChecker.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CStringSyntaxChecker.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CallAndMessageChecker.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CastSizeChecker.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CastToStructChecker.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CheckObjCDealloc.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CheckSecuritySyntaxOnly.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CheckerDocumentation.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/Checkers.td projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ChrootChecker.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/DeadStoresChecker.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/DebugCheckers.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/DereferenceChecker.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/DivZeroChecker.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/DynamicTypePropagation.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ExprInspectionChecker.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/FixedAddressChecker.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/GenericTaintChecker.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/IdempotentOperationChecker.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MacOSKeychainAPIChecker.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MacOSXAPIChecker.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MallocSizeofChecker.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/NSAutoreleasePoolChecker.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/NSErrorChecker.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ObjCAtSyncChecker.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ObjCContainersASTChecker.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ObjCContainersChecker.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ObjCSelfInitChecker.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/PointerArithChecker.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/PointerSubChecker.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/PthreadLockChecker.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/RetainCountChecker.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ReturnPointerRangeChecker.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ReturnUndefChecker.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/StackAddrEscapeChecker.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/TaintTesterChecker.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/UndefBranchChecker.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/UndefCapturedBlockVarChecker.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/UndefResultChecker.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/UndefinedArraySubscriptChecker.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/UndefinedAssignmentChecker.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/UnixAPIChecker.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/VLASizeChecker.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/AnalysisManager.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/BasicValueFactory.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/BugReporter.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/CallEvent.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/CheckerContext.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/CheckerManager.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/CoreEngine.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/Environment.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/ExplodedGraph.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/ExprEngine.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/ExprEngineC.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/ExprEngineCallAndReturn.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/ExprEngineObjC.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/HTMLDiagnostics.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/MemRegion.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/PathDiagnostic.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/PlistDiagnostics.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/ProgramState.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/RangeConstraintManager.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/RegionStore.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/SValBuilder.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/SVals.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/SimpleConstraintManager.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/SimpleConstraintManager.h projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/SimpleSValBuilder.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/Store.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/SymbolManager.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/TextPathDiagnostics.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.h projects/zfsd/head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Frontend/CheckerRegistration.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Tooling/CompilationDatabase.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Tooling/Refactoring.cpp projects/zfsd/head/contrib/llvm/tools/clang/lib/Tooling/Tooling.cpp projects/zfsd/head/contrib/llvm/tools/clang/tools/driver/cc1_main.cpp projects/zfsd/head/contrib/llvm/tools/clang/tools/driver/cc1as_main.cpp projects/zfsd/head/contrib/llvm/tools/clang/tools/driver/driver.cpp projects/zfsd/head/contrib/llvm/tools/clang/utils/TableGen/ClangAttrEmitter.cpp projects/zfsd/head/contrib/llvm/tools/clang/utils/TableGen/ClangDiagnosticsEmitter.cpp projects/zfsd/head/contrib/llvm/tools/clang/utils/TableGen/ClangSACheckersEmitter.cpp projects/zfsd/head/contrib/llvm/tools/clang/utils/TableGen/NeonEmitter.cpp projects/zfsd/head/contrib/llvm/tools/clang/utils/TableGen/OptParserEmitter.cpp projects/zfsd/head/contrib/llvm/tools/clang/utils/TableGen/TableGen.cpp projects/zfsd/head/contrib/llvm/tools/clang/utils/TableGen/TableGenBackends.h projects/zfsd/head/contrib/llvm/tools/llc/llc.cpp projects/zfsd/head/contrib/llvm/tools/lli/lli.cpp projects/zfsd/head/contrib/llvm/tools/llvm-ar/llvm-ar.cpp projects/zfsd/head/contrib/llvm/tools/llvm-bcanalyzer/llvm-bcanalyzer.cpp projects/zfsd/head/contrib/llvm/tools/llvm-extract/llvm-extract.cpp projects/zfsd/head/contrib/llvm/tools/llvm-mc/llvm-mc.cpp projects/zfsd/head/contrib/llvm/tools/llvm-nm/llvm-nm.cpp projects/zfsd/head/contrib/llvm/tools/llvm-objdump/llvm-objdump.cpp projects/zfsd/head/contrib/llvm/tools/llvm-ranlib/llvm-ranlib.cpp projects/zfsd/head/contrib/llvm/tools/llvm-rtdyld/llvm-rtdyld.cpp projects/zfsd/head/contrib/llvm/tools/llvm-stress/llvm-stress.cpp projects/zfsd/head/contrib/llvm/tools/opt/opt.cpp projects/zfsd/head/contrib/llvm/utils/TableGen/AsmMatcherEmitter.cpp projects/zfsd/head/contrib/llvm/utils/TableGen/AsmWriterEmitter.cpp projects/zfsd/head/contrib/llvm/utils/TableGen/AsmWriterInst.cpp projects/zfsd/head/contrib/llvm/utils/TableGen/CallingConvEmitter.cpp projects/zfsd/head/contrib/llvm/utils/TableGen/CodeEmitterGen.cpp projects/zfsd/head/contrib/llvm/utils/TableGen/CodeGenDAGPatterns.cpp projects/zfsd/head/contrib/llvm/utils/TableGen/CodeGenDAGPatterns.h projects/zfsd/head/contrib/llvm/utils/TableGen/CodeGenInstruction.cpp projects/zfsd/head/contrib/llvm/utils/TableGen/CodeGenInstruction.h projects/zfsd/head/contrib/llvm/utils/TableGen/CodeGenRegisters.cpp projects/zfsd/head/contrib/llvm/utils/TableGen/CodeGenRegisters.h projects/zfsd/head/contrib/llvm/utils/TableGen/CodeGenSchedule.cpp projects/zfsd/head/contrib/llvm/utils/TableGen/CodeGenSchedule.h projects/zfsd/head/contrib/llvm/utils/TableGen/CodeGenTarget.cpp projects/zfsd/head/contrib/llvm/utils/TableGen/CodeGenTarget.h projects/zfsd/head/contrib/llvm/utils/TableGen/DAGISelMatcher.h projects/zfsd/head/contrib/llvm/utils/TableGen/DAGISelMatcherEmitter.cpp projects/zfsd/head/contrib/llvm/utils/TableGen/DAGISelMatcherGen.cpp projects/zfsd/head/contrib/llvm/utils/TableGen/DFAPacketizerEmitter.cpp projects/zfsd/head/contrib/llvm/utils/TableGen/DisassemblerEmitter.cpp projects/zfsd/head/contrib/llvm/utils/TableGen/EDEmitter.cpp projects/zfsd/head/contrib/llvm/utils/TableGen/FastISelEmitter.cpp projects/zfsd/head/contrib/llvm/utils/TableGen/FixedLenDecoderEmitter.cpp projects/zfsd/head/contrib/llvm/utils/TableGen/InstrInfoEmitter.cpp projects/zfsd/head/contrib/llvm/utils/TableGen/IntrinsicEmitter.cpp projects/zfsd/head/contrib/llvm/utils/TableGen/PseudoLoweringEmitter.cpp projects/zfsd/head/contrib/llvm/utils/TableGen/RegisterInfoEmitter.cpp projects/zfsd/head/contrib/llvm/utils/TableGen/SequenceToOffsetTable.h projects/zfsd/head/contrib/llvm/utils/TableGen/SetTheory.cpp projects/zfsd/head/contrib/llvm/utils/TableGen/SetTheory.h projects/zfsd/head/contrib/llvm/utils/TableGen/SubtargetEmitter.cpp projects/zfsd/head/contrib/llvm/utils/TableGen/TGValueTypes.cpp projects/zfsd/head/contrib/llvm/utils/TableGen/TableGen.cpp projects/zfsd/head/contrib/llvm/utils/TableGen/TableGenBackends.h projects/zfsd/head/contrib/llvm/utils/TableGen/X86DisassemblerTables.cpp projects/zfsd/head/contrib/llvm/utils/TableGen/X86ModRMFilters.h projects/zfsd/head/contrib/llvm/utils/TableGen/X86RecognizableInstr.cpp projects/zfsd/head/contrib/llvm/utils/TableGen/X86RecognizableInstr.h projects/zfsd/head/contrib/ntp/arlib/Makefile.in projects/zfsd/head/contrib/ntp/libntp/Makefile.in projects/zfsd/head/contrib/ntp/libparse/Makefile.in projects/zfsd/head/contrib/ntp/ntpd/Makefile.in projects/zfsd/head/contrib/nvi/ex/ex_txt.c projects/zfsd/head/contrib/nvi/vi/v_txt.c projects/zfsd/head/contrib/one-true-awk/FIXES projects/zfsd/head/contrib/one-true-awk/main.c projects/zfsd/head/contrib/one-true-awk/makefile projects/zfsd/head/contrib/one-true-awk/proto.h projects/zfsd/head/contrib/one-true-awk/run.c projects/zfsd/head/contrib/one-true-awk/tran.c projects/zfsd/head/contrib/openbsm/CREDITS projects/zfsd/head/contrib/openbsm/INSTALL projects/zfsd/head/contrib/openbsm/LICENSE projects/zfsd/head/contrib/openbsm/Makefile.am projects/zfsd/head/contrib/openbsm/Makefile.in projects/zfsd/head/contrib/openbsm/NEWS projects/zfsd/head/contrib/openbsm/README projects/zfsd/head/contrib/openbsm/TODO projects/zfsd/head/contrib/openbsm/VERSION projects/zfsd/head/contrib/openbsm/aclocal.m4 projects/zfsd/head/contrib/openbsm/autogen.sh projects/zfsd/head/contrib/openbsm/bin/Makefile.am projects/zfsd/head/contrib/openbsm/bin/Makefile.in projects/zfsd/head/contrib/openbsm/bin/audit/Makefile.am projects/zfsd/head/contrib/openbsm/bin/audit/Makefile.in projects/zfsd/head/contrib/openbsm/bin/audit/audit.8 projects/zfsd/head/contrib/openbsm/bin/auditd/Makefile.am projects/zfsd/head/contrib/openbsm/bin/auditd/Makefile.in projects/zfsd/head/contrib/openbsm/bin/auditd/auditd.8 projects/zfsd/head/contrib/openbsm/bin/auditd/auditd.c projects/zfsd/head/contrib/openbsm/bin/auditfilterd/Makefile.am projects/zfsd/head/contrib/openbsm/bin/auditfilterd/Makefile.in projects/zfsd/head/contrib/openbsm/bin/auditreduce/Makefile.am projects/zfsd/head/contrib/openbsm/bin/auditreduce/Makefile.in projects/zfsd/head/contrib/openbsm/bin/auditreduce/auditreduce.1 projects/zfsd/head/contrib/openbsm/bin/praudit/Makefile.am projects/zfsd/head/contrib/openbsm/bin/praudit/Makefile.in projects/zfsd/head/contrib/openbsm/bin/praudit/praudit.1 projects/zfsd/head/contrib/openbsm/bin/praudit/praudit.c projects/zfsd/head/contrib/openbsm/bsm/Makefile.am projects/zfsd/head/contrib/openbsm/bsm/Makefile.in projects/zfsd/head/contrib/openbsm/bsm/auditd_lib.h projects/zfsd/head/contrib/openbsm/bsm/libbsm.h projects/zfsd/head/contrib/openbsm/compat/endian.h projects/zfsd/head/contrib/openbsm/config/config.h projects/zfsd/head/contrib/openbsm/config/config.h.in projects/zfsd/head/contrib/openbsm/config/ltmain.sh projects/zfsd/head/contrib/openbsm/configure projects/zfsd/head/contrib/openbsm/configure.ac projects/zfsd/head/contrib/openbsm/etc/audit_control projects/zfsd/head/contrib/openbsm/etc/audit_event projects/zfsd/head/contrib/openbsm/libauditd/Makefile.am projects/zfsd/head/contrib/openbsm/libauditd/Makefile.in projects/zfsd/head/contrib/openbsm/libauditd/auditd_lib.c projects/zfsd/head/contrib/openbsm/libbsm/Makefile.am projects/zfsd/head/contrib/openbsm/libbsm/Makefile.in projects/zfsd/head/contrib/openbsm/libbsm/au_control.3 projects/zfsd/head/contrib/openbsm/libbsm/au_fcntl_cmd.3 projects/zfsd/head/contrib/openbsm/libbsm/au_io.3 projects/zfsd/head/contrib/openbsm/libbsm/audit_submit.3 projects/zfsd/head/contrib/openbsm/libbsm/bsm_audit.c projects/zfsd/head/contrib/openbsm/libbsm/bsm_class.c projects/zfsd/head/contrib/openbsm/libbsm/bsm_control.c projects/zfsd/head/contrib/openbsm/libbsm/bsm_errno.c projects/zfsd/head/contrib/openbsm/libbsm/bsm_io.c projects/zfsd/head/contrib/openbsm/libbsm/bsm_token.c projects/zfsd/head/contrib/openbsm/libbsm/bsm_user.c projects/zfsd/head/contrib/openbsm/libbsm/bsm_wrappers.c projects/zfsd/head/contrib/openbsm/man/Makefile.am projects/zfsd/head/contrib/openbsm/man/Makefile.in projects/zfsd/head/contrib/openbsm/man/audit.log.5 projects/zfsd/head/contrib/openbsm/man/audit_control.5 projects/zfsd/head/contrib/openbsm/man/auditon.2 projects/zfsd/head/contrib/openbsm/man/getaudit.2 projects/zfsd/head/contrib/openbsm/man/setaudit.2 projects/zfsd/head/contrib/openbsm/modules/Makefile.am projects/zfsd/head/contrib/openbsm/modules/Makefile.in projects/zfsd/head/contrib/openbsm/modules/auditfilter_noop/Makefile.am projects/zfsd/head/contrib/openbsm/modules/auditfilter_noop/Makefile.in projects/zfsd/head/contrib/openbsm/sys/Makefile.am projects/zfsd/head/contrib/openbsm/sys/Makefile.in projects/zfsd/head/contrib/openbsm/sys/bsm/Makefile.am projects/zfsd/head/contrib/openbsm/sys/bsm/Makefile.in projects/zfsd/head/contrib/openbsm/sys/bsm/audit_errno.h projects/zfsd/head/contrib/openbsm/sys/bsm/audit_internal.h projects/zfsd/head/contrib/openbsm/sys/bsm/audit_kevents.h projects/zfsd/head/contrib/openbsm/sys/bsm/audit_record.h projects/zfsd/head/contrib/openbsm/test/Makefile.am projects/zfsd/head/contrib/openbsm/test/Makefile.in projects/zfsd/head/contrib/openbsm/test/bsm/Makefile.am projects/zfsd/head/contrib/openbsm/test/bsm/Makefile.in projects/zfsd/head/contrib/openbsm/tools/Makefile.am projects/zfsd/head/contrib/openbsm/tools/Makefile.in projects/zfsd/head/contrib/opie/libmissing/Makefile.in projects/zfsd/head/contrib/opie/libopie/Makefile.in projects/zfsd/head/contrib/opie/opiekey.c projects/zfsd/head/contrib/sendmail/FREEBSD-upgrade projects/zfsd/head/contrib/sendmail/LICENSE projects/zfsd/head/contrib/sendmail/PGPKEYS projects/zfsd/head/contrib/sendmail/RELEASE_NOTES projects/zfsd/head/contrib/sendmail/cf/README projects/zfsd/head/contrib/sendmail/cf/cf/submit.cf projects/zfsd/head/contrib/sendmail/cf/feature/ldap_routing.m4 projects/zfsd/head/contrib/sendmail/cf/m4/proto.m4 projects/zfsd/head/contrib/sendmail/cf/m4/version.m4 projects/zfsd/head/contrib/sendmail/doc/op/op.me projects/zfsd/head/contrib/sendmail/include/libmilter/mfapi.h projects/zfsd/head/contrib/sendmail/include/sm/clock.h projects/zfsd/head/contrib/sendmail/include/sm/tailq.h projects/zfsd/head/contrib/sendmail/libmilter/Makefile.m4 projects/zfsd/head/contrib/sendmail/libmilter/docs/api.html projects/zfsd/head/contrib/sendmail/libmilter/docs/smfi_setsymlist.html projects/zfsd/head/contrib/sendmail/libmilter/docs/smfi_settimeout.html projects/zfsd/head/contrib/sendmail/libmilter/worker.c projects/zfsd/head/contrib/sendmail/src/Makefile.m4 projects/zfsd/head/contrib/sendmail/src/TRACEFLAGS projects/zfsd/head/contrib/sendmail/src/collect.c projects/zfsd/head/contrib/sendmail/src/conf.c projects/zfsd/head/contrib/sendmail/src/daemon.c projects/zfsd/head/contrib/sendmail/src/deliver.c projects/zfsd/head/contrib/sendmail/src/headers.c projects/zfsd/head/contrib/sendmail/src/main.c projects/zfsd/head/contrib/sendmail/src/map.c projects/zfsd/head/contrib/sendmail/src/milter.c projects/zfsd/head/contrib/sendmail/src/parseaddr.c projects/zfsd/head/contrib/sendmail/src/queue.c projects/zfsd/head/contrib/sendmail/src/sasl.c projects/zfsd/head/contrib/sendmail/src/savemail.c projects/zfsd/head/contrib/sendmail/src/sendmail.h projects/zfsd/head/contrib/sendmail/src/srvrsmtp.c projects/zfsd/head/contrib/sendmail/src/stab.c projects/zfsd/head/contrib/sendmail/src/util.c projects/zfsd/head/contrib/sendmail/src/version.c projects/zfsd/head/contrib/tcp_wrappers/Makefile projects/zfsd/head/contrib/tcpdump/Makefile.in projects/zfsd/head/contrib/top/top.h projects/zfsd/head/contrib/wpa/src/crypto/md5-internal.c projects/zfsd/head/contrib/xz/AUTHORS projects/zfsd/head/contrib/xz/ChangeLog projects/zfsd/head/contrib/xz/README projects/zfsd/head/contrib/xz/THANKS projects/zfsd/head/contrib/xz/po/de.po projects/zfsd/head/contrib/xz/po/fr.po projects/zfsd/head/contrib/xz/po/it.po projects/zfsd/head/contrib/xz/po/pl.po projects/zfsd/head/contrib/xz/src/common/sysdefs.h projects/zfsd/head/contrib/xz/src/liblzma/api/lzma/version.h projects/zfsd/head/contrib/xz/src/liblzma/simple/simple_coder.c projects/zfsd/head/contrib/xz/src/liblzma/simple/simple_private.h projects/zfsd/head/contrib/xz/src/xz/args.c projects/zfsd/head/contrib/xz/src/xz/coder.c projects/zfsd/head/contrib/xz/src/xz/message.c projects/zfsd/head/contrib/xz/src/xz/xz.1 projects/zfsd/head/crypto/heimdal/appl/ftp/common/Makefile.in projects/zfsd/head/crypto/heimdal/appl/telnet/libtelnet/Makefile.in projects/zfsd/head/crypto/heimdal/kcm/cache.c projects/zfsd/head/crypto/openssl/CHANGES projects/zfsd/head/crypto/openssl/Configure projects/zfsd/head/crypto/openssl/FAQ projects/zfsd/head/crypto/openssl/Makefile projects/zfsd/head/crypto/openssl/Makefile.org projects/zfsd/head/crypto/openssl/NEWS projects/zfsd/head/crypto/openssl/PROBLEMS projects/zfsd/head/crypto/openssl/README projects/zfsd/head/crypto/openssl/apps/apps.c projects/zfsd/head/crypto/openssl/apps/ca.c projects/zfsd/head/crypto/openssl/apps/cms.c projects/zfsd/head/crypto/openssl/apps/dgst.c projects/zfsd/head/crypto/openssl/apps/dhparam.c projects/zfsd/head/crypto/openssl/apps/dsaparam.c projects/zfsd/head/crypto/openssl/apps/genrsa.c projects/zfsd/head/crypto/openssl/apps/ocsp.c projects/zfsd/head/crypto/openssl/apps/s_cb.c projects/zfsd/head/crypto/openssl/apps/s_client.c projects/zfsd/head/crypto/openssl/apps/s_server.c projects/zfsd/head/crypto/openssl/apps/speed.c projects/zfsd/head/crypto/openssl/apps/srp.c projects/zfsd/head/crypto/openssl/apps/verify.c projects/zfsd/head/crypto/openssl/apps/x509.c projects/zfsd/head/crypto/openssl/crypto/Makefile projects/zfsd/head/crypto/openssl/crypto/aes/asm/aes-mips.pl projects/zfsd/head/crypto/openssl/crypto/aes/asm/aes-s390x.pl projects/zfsd/head/crypto/openssl/crypto/aes/asm/aes-x86_64.pl projects/zfsd/head/crypto/openssl/crypto/aes/asm/aesni-sha1-x86_64.pl projects/zfsd/head/crypto/openssl/crypto/aes/asm/aesni-x86_64.pl projects/zfsd/head/crypto/openssl/crypto/aes/asm/bsaes-x86_64.pl projects/zfsd/head/crypto/openssl/crypto/aes/asm/vpaes-x86_64.pl projects/zfsd/head/crypto/openssl/crypto/asn1/a_strex.c projects/zfsd/head/crypto/openssl/crypto/asn1/a_verify.c projects/zfsd/head/crypto/openssl/crypto/asn1/x_pubkey.c projects/zfsd/head/crypto/openssl/crypto/bio/bss_dgram.c projects/zfsd/head/crypto/openssl/crypto/bn/asm/mips.pl projects/zfsd/head/crypto/openssl/crypto/bn/asm/modexp512-x86_64.pl projects/zfsd/head/crypto/openssl/crypto/bn/asm/x86_64-gf2m.pl projects/zfsd/head/crypto/openssl/crypto/bn/asm/x86_64-mont.pl projects/zfsd/head/crypto/openssl/crypto/bn/asm/x86_64-mont5.pl projects/zfsd/head/crypto/openssl/crypto/bn/bn_div.c projects/zfsd/head/crypto/openssl/crypto/bn/bn_gcd.c projects/zfsd/head/crypto/openssl/crypto/bn/bn_lcl.h projects/zfsd/head/crypto/openssl/crypto/bn/bn_word.c projects/zfsd/head/crypto/openssl/crypto/camellia/asm/cmll-x86_64.pl projects/zfsd/head/crypto/openssl/crypto/cms/cms_cd.c projects/zfsd/head/crypto/openssl/crypto/cms/cms_enc.c projects/zfsd/head/crypto/openssl/crypto/cms/cms_lib.c projects/zfsd/head/crypto/openssl/crypto/conf/conf_mall.c projects/zfsd/head/crypto/openssl/crypto/cryptlib.c projects/zfsd/head/crypto/openssl/crypto/cryptlib.h projects/zfsd/head/crypto/openssl/crypto/crypto.h projects/zfsd/head/crypto/openssl/crypto/des/set_key.c projects/zfsd/head/crypto/openssl/crypto/des/str2key.c projects/zfsd/head/crypto/openssl/crypto/ec/ec.h projects/zfsd/head/crypto/openssl/crypto/ec/ec_key.c projects/zfsd/head/crypto/openssl/crypto/ec/ec_pmeth.c projects/zfsd/head/crypto/openssl/crypto/ec/ecp_mont.c projects/zfsd/head/crypto/openssl/crypto/ec/ectest.c projects/zfsd/head/crypto/openssl/crypto/ecdh/Makefile projects/zfsd/head/crypto/openssl/crypto/ecdh/ech_key.c projects/zfsd/head/crypto/openssl/crypto/ecdh/ech_lib.c projects/zfsd/head/crypto/openssl/crypto/ecdsa/ecs_lib.c projects/zfsd/head/crypto/openssl/crypto/err/err_all.c projects/zfsd/head/crypto/openssl/crypto/evp/Makefile projects/zfsd/head/crypto/openssl/crypto/evp/digest.c projects/zfsd/head/crypto/openssl/crypto/evp/e_aes.c projects/zfsd/head/crypto/openssl/crypto/evp/e_aes_cbc_hmac_sha1.c projects/zfsd/head/crypto/openssl/crypto/evp/evp.h projects/zfsd/head/crypto/openssl/crypto/evp/evp_err.c projects/zfsd/head/crypto/openssl/crypto/evp/m_dss.c projects/zfsd/head/crypto/openssl/crypto/evp/m_dss1.c projects/zfsd/head/crypto/openssl/crypto/evp/m_sha1.c projects/zfsd/head/crypto/openssl/crypto/evp/p_sign.c projects/zfsd/head/crypto/openssl/crypto/evp/p_verify.c projects/zfsd/head/crypto/openssl/crypto/md4/md4_dgst.c projects/zfsd/head/crypto/openssl/crypto/md4/md4_locl.h projects/zfsd/head/crypto/openssl/crypto/md5/asm/md5-x86_64.pl projects/zfsd/head/crypto/openssl/crypto/md5/md5_locl.h projects/zfsd/head/crypto/openssl/crypto/mdc2/mdc2dgst.c projects/zfsd/head/crypto/openssl/crypto/mem.c projects/zfsd/head/crypto/openssl/crypto/modes/asm/ghash-x86.pl projects/zfsd/head/crypto/openssl/crypto/modes/asm/ghash-x86_64.pl projects/zfsd/head/crypto/openssl/crypto/modes/gcm128.c projects/zfsd/head/crypto/openssl/crypto/objects/o_names.c projects/zfsd/head/crypto/openssl/crypto/ocsp/ocsp_vfy.c projects/zfsd/head/crypto/openssl/crypto/opensslv.h projects/zfsd/head/crypto/openssl/crypto/pem/pem_all.c projects/zfsd/head/crypto/openssl/crypto/pem/pem_lib.c projects/zfsd/head/crypto/openssl/crypto/pem/pem_seal.c projects/zfsd/head/crypto/openssl/crypto/perlasm/cbc.pl projects/zfsd/head/crypto/openssl/crypto/perlasm/x86masm.pl projects/zfsd/head/crypto/openssl/crypto/pkcs12/p12_key.c projects/zfsd/head/crypto/openssl/crypto/pkcs7/bio_pk7.c projects/zfsd/head/crypto/openssl/crypto/ppccap.c projects/zfsd/head/crypto/openssl/crypto/rand/md_rand.c projects/zfsd/head/crypto/openssl/crypto/rand/rand_lib.c projects/zfsd/head/crypto/openssl/crypto/rand/rand_unix.c projects/zfsd/head/crypto/openssl/crypto/rand/randfile.c projects/zfsd/head/crypto/openssl/crypto/rc4/asm/rc4-md5-x86_64.pl projects/zfsd/head/crypto/openssl/crypto/rc4/asm/rc4-x86_64.pl projects/zfsd/head/crypto/openssl/crypto/ripemd/rmd_dgst.c projects/zfsd/head/crypto/openssl/crypto/ripemd/rmd_locl.h projects/zfsd/head/crypto/openssl/crypto/rsa/rsa.h projects/zfsd/head/crypto/openssl/crypto/rsa/rsa_eay.c projects/zfsd/head/crypto/openssl/crypto/rsa/rsa_oaep.c projects/zfsd/head/crypto/openssl/crypto/sha/asm/sha1-armv4-large.pl projects/zfsd/head/crypto/openssl/crypto/sha/asm/sha1-ia64.pl projects/zfsd/head/crypto/openssl/crypto/sha/asm/sha1-sparcv9a.pl projects/zfsd/head/crypto/openssl/crypto/sha/asm/sha1-x86_64.pl projects/zfsd/head/crypto/openssl/crypto/sha/asm/sha512-586.pl projects/zfsd/head/crypto/openssl/crypto/sha/asm/sha512-x86_64.pl projects/zfsd/head/crypto/openssl/crypto/sha/sha1_one.c projects/zfsd/head/crypto/openssl/crypto/sha/sha1dgst.c projects/zfsd/head/crypto/openssl/crypto/sha/sha256.c projects/zfsd/head/crypto/openssl/crypto/sha/sha_dgst.c projects/zfsd/head/crypto/openssl/crypto/sha/sha_locl.h projects/zfsd/head/crypto/openssl/crypto/sparccpuid.S projects/zfsd/head/crypto/openssl/crypto/srp/srp_vfy.c projects/zfsd/head/crypto/openssl/crypto/symhacks.h projects/zfsd/head/crypto/openssl/crypto/ui/ui_openssl.c projects/zfsd/head/crypto/openssl/crypto/whrlpool/asm/wp-mmx.pl projects/zfsd/head/crypto/openssl/crypto/whrlpool/asm/wp-x86_64.pl projects/zfsd/head/crypto/openssl/crypto/x509/x509_cmp.c projects/zfsd/head/crypto/openssl/crypto/x509/x509_vfy.c projects/zfsd/head/crypto/openssl/crypto/x509v3/v3_purp.c projects/zfsd/head/crypto/openssl/crypto/x86_64cpuid.pl projects/zfsd/head/crypto/openssl/crypto/x86cpuid.pl projects/zfsd/head/crypto/openssl/doc/apps/CA.pl.pod projects/zfsd/head/crypto/openssl/doc/apps/dgst.pod projects/zfsd/head/crypto/openssl/doc/apps/verify.pod projects/zfsd/head/crypto/openssl/doc/apps/x509.pod projects/zfsd/head/crypto/openssl/doc/crypto/EVP_PKEY_CTX_ctrl.pod projects/zfsd/head/crypto/openssl/doc/crypto/EVP_PKEY_decrypt.pod projects/zfsd/head/crypto/openssl/doc/crypto/EVP_PKEY_derive.pod projects/zfsd/head/crypto/openssl/doc/crypto/EVP_PKEY_encrypt.pod projects/zfsd/head/crypto/openssl/doc/crypto/EVP_PKEY_get_default_digest.pod projects/zfsd/head/crypto/openssl/doc/crypto/EVP_PKEY_keygen.pod projects/zfsd/head/crypto/openssl/doc/crypto/EVP_PKEY_sign.pod projects/zfsd/head/crypto/openssl/doc/crypto/EVP_PKEY_verify.pod projects/zfsd/head/crypto/openssl/engines/ccgost/gost89.c projects/zfsd/head/crypto/openssl/engines/ccgost/gost_crypt.c projects/zfsd/head/crypto/openssl/engines/ccgost/gost_eng.c projects/zfsd/head/crypto/openssl/engines/ccgost/gost_lcl.h projects/zfsd/head/crypto/openssl/engines/ccgost/gosthash.c projects/zfsd/head/crypto/openssl/engines/e_capi.c projects/zfsd/head/crypto/openssl/ssl/Makefile projects/zfsd/head/crypto/openssl/ssl/d1_enc.c projects/zfsd/head/crypto/openssl/ssl/d1_pkt.c projects/zfsd/head/crypto/openssl/ssl/d1_srtp.c projects/zfsd/head/crypto/openssl/ssl/dtls1.h projects/zfsd/head/crypto/openssl/ssl/s2_clnt.c projects/zfsd/head/crypto/openssl/ssl/s2_pkt.c projects/zfsd/head/crypto/openssl/ssl/s2_srvr.c projects/zfsd/head/crypto/openssl/ssl/s3_both.c projects/zfsd/head/crypto/openssl/ssl/s3_clnt.c projects/zfsd/head/crypto/openssl/ssl/s3_enc.c projects/zfsd/head/crypto/openssl/ssl/s3_lib.c projects/zfsd/head/crypto/openssl/ssl/s3_pkt.c projects/zfsd/head/crypto/openssl/ssl/s3_srvr.c projects/zfsd/head/crypto/openssl/ssl/ssl.h projects/zfsd/head/crypto/openssl/ssl/ssl3.h projects/zfsd/head/crypto/openssl/ssl/ssl_algs.c projects/zfsd/head/crypto/openssl/ssl/ssl_cert.c projects/zfsd/head/crypto/openssl/ssl/ssl_ciph.c projects/zfsd/head/crypto/openssl/ssl/ssl_err.c projects/zfsd/head/crypto/openssl/ssl/ssl_lib.c projects/zfsd/head/crypto/openssl/ssl/ssl_locl.h projects/zfsd/head/crypto/openssl/ssl/ssl_rsa.c projects/zfsd/head/crypto/openssl/ssl/ssltest.c projects/zfsd/head/crypto/openssl/ssl/t1_enc.c projects/zfsd/head/crypto/openssl/ssl/t1_lib.c projects/zfsd/head/crypto/openssl/ssl/tls_srp.c projects/zfsd/head/crypto/openssl/util/libeay.num (contents, props changed) projects/zfsd/head/crypto/openssl/util/pl/VC-32.pl projects/zfsd/head/etc/Makefile projects/zfsd/head/etc/defaults/rc.conf projects/zfsd/head/etc/devd/usb.conf projects/zfsd/head/etc/ftpusers projects/zfsd/head/etc/login.conf projects/zfsd/head/etc/mail/aliases projects/zfsd/head/etc/master.passwd projects/zfsd/head/etc/mtree/BSD.include.dist projects/zfsd/head/etc/mtree/BSD.usr.dist projects/zfsd/head/etc/mtree/BSD.var.dist projects/zfsd/head/etc/namedb/named.root projects/zfsd/head/etc/newsyslog.conf projects/zfsd/head/etc/periodic/daily/Makefile projects/zfsd/head/etc/pf.os projects/zfsd/head/etc/rc.d/Makefile projects/zfsd/head/etc/rc.d/ip6addrctl projects/zfsd/head/etc/rc.d/jail projects/zfsd/head/etc/rc.d/pfsync projects/zfsd/head/etc/rc.d/rtadvd projects/zfsd/head/etc/rc.d/savecore projects/zfsd/head/etc/rc.d/sysctl projects/zfsd/head/etc/rc.resume projects/zfsd/head/etc/rc.subr projects/zfsd/head/etc/regdomain.xml projects/zfsd/head/etc/root/dot.cshrc projects/zfsd/head/etc/sendmail/freebsd.mc projects/zfsd/head/etc/sendmail/freebsd.submit.mc projects/zfsd/head/etc/sendmail/freefall.mc projects/zfsd/head/games/fortune/datfiles/fortunes projects/zfsd/head/games/fortune/datfiles/fortunes-o.real projects/zfsd/head/gnu/lib/csu/Makefile projects/zfsd/head/gnu/lib/libdialog/dlg_config.h projects/zfsd/head/gnu/lib/libgcc/Makefile projects/zfsd/head/gnu/lib/libgcov/Makefile projects/zfsd/head/gnu/lib/libstdc++/Makefile projects/zfsd/head/gnu/lib/libstdc++/config.h projects/zfsd/head/gnu/lib/libsupc++/Version.map projects/zfsd/head/gnu/usr.bin/Makefile projects/zfsd/head/gnu/usr.bin/binutils/as/Makefile projects/zfsd/head/gnu/usr.bin/binutils/ld/armelf_fbsd.sh projects/zfsd/head/gnu/usr.bin/binutils/ld/armelfb_fbsd.sh projects/zfsd/head/gnu/usr.bin/cc/Makefile.inc projects/zfsd/head/gnu/usr.bin/cc/c++/Makefile projects/zfsd/head/gnu/usr.bin/cc/c++filt/Makefile projects/zfsd/head/gnu/usr.bin/cc/cc1/Makefile projects/zfsd/head/gnu/usr.bin/cc/cc1plus/Makefile projects/zfsd/head/gnu/usr.bin/cc/cc_int/Makefile projects/zfsd/head/gnu/usr.bin/cc/cc_tools/Makefile projects/zfsd/head/gnu/usr.bin/cc/doc/Makefile projects/zfsd/head/gnu/usr.bin/cc/gcov/Makefile projects/zfsd/head/gnu/usr.bin/cc/include/Makefile projects/zfsd/head/gnu/usr.bin/cc/libcpp/Makefile projects/zfsd/head/gnu/usr.bin/cc/libdecnumber/Makefile projects/zfsd/head/gnu/usr.bin/cc/libiberty/Makefile projects/zfsd/head/gnu/usr.bin/dialog/Makefile projects/zfsd/head/gnu/usr.bin/gdb/kgdb/kgdb.1 projects/zfsd/head/gnu/usr.bin/gdb/kgdb/kgdb.h projects/zfsd/head/gnu/usr.bin/gdb/kgdb/kthr.c projects/zfsd/head/gnu/usr.bin/gdb/kgdb/main.c projects/zfsd/head/gnu/usr.bin/gdb/kgdb/trgt.c projects/zfsd/head/gnu/usr.bin/gdb/kgdb/trgt_amd64.c projects/zfsd/head/gnu/usr.bin/gdb/kgdb/trgt_arm.c projects/zfsd/head/gnu/usr.bin/gdb/kgdb/trgt_i386.c projects/zfsd/head/gnu/usr.bin/gdb/kgdb/trgt_ia64.c projects/zfsd/head/gnu/usr.bin/gdb/kgdb/trgt_mips.c projects/zfsd/head/gnu/usr.bin/gdb/kgdb/trgt_powerpc.c projects/zfsd/head/gnu/usr.bin/gdb/kgdb/trgt_powerpc64.c projects/zfsd/head/gnu/usr.bin/gdb/kgdb/trgt_sparc64.c projects/zfsd/head/gnu/usr.bin/grep/grep.c projects/zfsd/head/gnu/usr.bin/patch/Makefile projects/zfsd/head/include/Makefile projects/zfsd/head/include/arpa/Makefile projects/zfsd/head/include/stdio.h (contents, props changed) projects/zfsd/head/include/string.h projects/zfsd/head/include/time.h projects/zfsd/head/kerberos5/lib/libkrb5/Makefile projects/zfsd/head/kerberos5/libexec/digest-service/Makefile projects/zfsd/head/lib/Makefile projects/zfsd/head/lib/bind/config.h projects/zfsd/head/lib/bind/dns/Makefile projects/zfsd/head/lib/bind/isc/isc/platform.h projects/zfsd/head/lib/clang/Makefile projects/zfsd/head/lib/clang/clang.build.mk projects/zfsd/head/lib/clang/include/Makefile projects/zfsd/head/lib/clang/include/clang/Basic/Version.inc projects/zfsd/head/lib/clang/include/llvm/Config/config.h projects/zfsd/head/lib/clang/libclanganalysis/Makefile projects/zfsd/head/lib/clang/libclangarcmigrate/Makefile projects/zfsd/head/lib/clang/libclangast/Makefile projects/zfsd/head/lib/clang/libclangbasic/Makefile projects/zfsd/head/lib/clang/libclangcodegen/Makefile projects/zfsd/head/lib/clang/libclangdriver/Makefile projects/zfsd/head/lib/clang/libclangedit/Makefile projects/zfsd/head/lib/clang/libclangfrontend/Makefile projects/zfsd/head/lib/clang/libclangfrontendtool/Makefile projects/zfsd/head/lib/clang/libclanglex/Makefile projects/zfsd/head/lib/clang/libclangparse/Makefile projects/zfsd/head/lib/clang/libclangsema/Makefile projects/zfsd/head/lib/clang/libclangserialization/Makefile projects/zfsd/head/lib/clang/libclangstaticanalyzercheckers/Makefile projects/zfsd/head/lib/clang/libclangstaticanalyzercore/Makefile projects/zfsd/head/lib/clang/libclangstaticanalyzerfrontend/Makefile projects/zfsd/head/lib/clang/libllvmanalysis/Makefile projects/zfsd/head/lib/clang/libllvmarchive/Makefile projects/zfsd/head/lib/clang/libllvmarmasmparser/Makefile projects/zfsd/head/lib/clang/libllvmarmcodegen/Makefile projects/zfsd/head/lib/clang/libllvmarmdesc/Makefile projects/zfsd/head/lib/clang/libllvmarmdisassembler/Makefile projects/zfsd/head/lib/clang/libllvmarminfo/Makefile projects/zfsd/head/lib/clang/libllvmarminstprinter/Makefile projects/zfsd/head/lib/clang/libllvmasmparser/Makefile projects/zfsd/head/lib/clang/libllvmasmprinter/Makefile projects/zfsd/head/lib/clang/libllvmbitreader/Makefile projects/zfsd/head/lib/clang/libllvmbitwriter/Makefile projects/zfsd/head/lib/clang/libllvmcodegen/Makefile projects/zfsd/head/lib/clang/libllvmcore/Makefile projects/zfsd/head/lib/clang/libllvmdebuginfo/Makefile projects/zfsd/head/lib/clang/libllvmexecutionengine/Makefile projects/zfsd/head/lib/clang/libllvminstcombine/Makefile projects/zfsd/head/lib/clang/libllvminstrumentation/Makefile projects/zfsd/head/lib/clang/libllvminterpreter/Makefile projects/zfsd/head/lib/clang/libllvmipo/Makefile projects/zfsd/head/lib/clang/libllvmjit/Makefile projects/zfsd/head/lib/clang/libllvmlinker/Makefile projects/zfsd/head/lib/clang/libllvmmcdisassembler/Makefile projects/zfsd/head/lib/clang/libllvmmcjit/Makefile projects/zfsd/head/lib/clang/libllvmmcparser/Makefile projects/zfsd/head/lib/clang/libllvmmipsasmparser/Makefile projects/zfsd/head/lib/clang/libllvmmipscodegen/Makefile projects/zfsd/head/lib/clang/libllvmmipsdesc/Makefile projects/zfsd/head/lib/clang/libllvmmipsdisassembler/Makefile projects/zfsd/head/lib/clang/libllvmmipsinfo/Makefile projects/zfsd/head/lib/clang/libllvmmipsinstprinter/Makefile projects/zfsd/head/lib/clang/libllvmobject/Makefile projects/zfsd/head/lib/clang/libllvmpowerpccodegen/Makefile projects/zfsd/head/lib/clang/libllvmpowerpcdesc/Makefile projects/zfsd/head/lib/clang/libllvmpowerpcinfo/Makefile projects/zfsd/head/lib/clang/libllvmpowerpcinstprinter/Makefile projects/zfsd/head/lib/clang/libllvmruntimedyld/Makefile projects/zfsd/head/lib/clang/libllvmscalaropts/Makefile projects/zfsd/head/lib/clang/libllvmselectiondag/Makefile projects/zfsd/head/lib/clang/libllvmtablegen/Makefile projects/zfsd/head/lib/clang/libllvmtarget/Makefile projects/zfsd/head/lib/clang/libllvmtransformutils/Makefile projects/zfsd/head/lib/clang/libllvmvectorize/Makefile projects/zfsd/head/lib/clang/libllvmx86asmparser/Makefile projects/zfsd/head/lib/clang/libllvmx86codegen/Makefile projects/zfsd/head/lib/clang/libllvmx86desc/Makefile projects/zfsd/head/lib/clang/libllvmx86info/Makefile projects/zfsd/head/lib/clang/libllvmx86instprinter/Makefile projects/zfsd/head/lib/clang/libllvmx86utils/Makefile projects/zfsd/head/lib/csu/amd64/crt1.c projects/zfsd/head/lib/csu/arm/crt1.c projects/zfsd/head/lib/csu/common/ignore_init.c projects/zfsd/head/lib/csu/i386-elf/crt1_c.c projects/zfsd/head/lib/csu/mips/crt1.c projects/zfsd/head/lib/csu/powerpc/crt1.c projects/zfsd/head/lib/csu/powerpc64/crt1.c projects/zfsd/head/lib/csu/sparc64/crt1.c projects/zfsd/head/lib/libarchive/Makefile projects/zfsd/head/lib/libbsnmp/libbsnmp/Makefile projects/zfsd/head/lib/libc/amd64/sys/__vdso_gettc.c projects/zfsd/head/lib/libc/arm/Makefile.inc projects/zfsd/head/lib/libc/arm/SYS.h projects/zfsd/head/lib/libc/arm/Symbol.map projects/zfsd/head/lib/libc/arm/gen/Makefile.inc projects/zfsd/head/lib/libc/arm/softfloat/arm-gcc.h projects/zfsd/head/lib/libc/arm/sys/Makefile.inc projects/zfsd/head/lib/libc/gen/Makefile.inc projects/zfsd/head/lib/libc/gen/Symbol.map projects/zfsd/head/lib/libc/gen/check_utility_compat.c projects/zfsd/head/lib/libc/gen/fmtmsg.c projects/zfsd/head/lib/libc/gen/fstab.c projects/zfsd/head/lib/libc/gen/fts.c projects/zfsd/head/lib/libc/gen/getcap.c projects/zfsd/head/lib/libc/gen/getgrent.c projects/zfsd/head/lib/libc/gen/getnetgrent.c projects/zfsd/head/lib/libc/gen/getttyent.c projects/zfsd/head/lib/libc/gen/getusershell.c projects/zfsd/head/lib/libc/gen/getutxent.c projects/zfsd/head/lib/libc/gen/glob.c projects/zfsd/head/lib/libc/gen/opendir.c projects/zfsd/head/lib/libc/gen/sem_new.c projects/zfsd/head/lib/libc/gen/sysctlbyname.c projects/zfsd/head/lib/libc/i386/sys/__vdso_gettc.c projects/zfsd/head/lib/libc/ia64/sys/Makefile.inc projects/zfsd/head/lib/libc/iconv/citrus_mmap.c projects/zfsd/head/lib/libc/locale/collate.c projects/zfsd/head/lib/libc/locale/setrunelocale.c projects/zfsd/head/lib/libc/mips/sys/Makefile.inc projects/zfsd/head/lib/libc/net/getaddrinfo.3 projects/zfsd/head/lib/libc/net/getnameinfo.3 projects/zfsd/head/lib/libc/net/name6.c projects/zfsd/head/lib/libc/net/sctp_sys_calls.c projects/zfsd/head/lib/libc/nls/Makefile.inc projects/zfsd/head/lib/libc/nls/msgcat.c projects/zfsd/head/lib/libc/powerpc/Makefile.inc projects/zfsd/head/lib/libc/powerpc64/Makefile.inc projects/zfsd/head/lib/libc/quad/Makefile.inc projects/zfsd/head/lib/libc/sparc64/Makefile.inc projects/zfsd/head/lib/libc/stdio/Makefile.inc (contents, props changed) projects/zfsd/head/lib/libc/stdio/Symbol.map (contents, props changed) projects/zfsd/head/lib/libc/stdio/fdopen.c projects/zfsd/head/lib/libc/stdio/flags.c projects/zfsd/head/lib/libc/stdio/fopen.3 (contents, props changed) projects/zfsd/head/lib/libc/stdio/freopen.c projects/zfsd/head/lib/libc/stdio/getline.3 projects/zfsd/head/lib/libc/stdio/setbuf.3 projects/zfsd/head/lib/libc/stdlib/bsearch.3 projects/zfsd/head/lib/libc/stdlib/qsort.3 projects/zfsd/head/lib/libc/string/Makefile.inc projects/zfsd/head/lib/libc/string/Symbol.map projects/zfsd/head/lib/libc/string/strchr.3 projects/zfsd/head/lib/libc/sys/Makefile.inc projects/zfsd/head/lib/libc/sys/__vdso_gettimeofday.c projects/zfsd/head/lib/libc/sys/bind.2 projects/zfsd/head/lib/libc/sys/chflags.2 projects/zfsd/head/lib/libc/sys/chroot.2 projects/zfsd/head/lib/libc/sys/fcntl.2 projects/zfsd/head/lib/libc/sys/gettimeofday.c projects/zfsd/head/lib/libc/sys/kqueue.2 projects/zfsd/head/lib/libc/sys/mlock.2 projects/zfsd/head/lib/libc/sys/mlockall.2 projects/zfsd/head/lib/libc/sys/open.2 projects/zfsd/head/lib/libc/sys/posix_fadvise.2 projects/zfsd/head/lib/libc/sys/ptrace.2 projects/zfsd/head/lib/libc/sys/sigqueue.2 projects/zfsd/head/lib/libc/sys/socket.2 projects/zfsd/head/lib/libcompiler_rt/Makefile projects/zfsd/head/lib/libcxxrt/Version.map projects/zfsd/head/lib/libdevstat/devstat.3 projects/zfsd/head/lib/libdevstat/devstat.c projects/zfsd/head/lib/libdevstat/devstat.h projects/zfsd/head/lib/libedit/editline.3 projects/zfsd/head/lib/libedit/editrc.5 projects/zfsd/head/lib/libedit/map.c projects/zfsd/head/lib/libelf/elf_data.c projects/zfsd/head/lib/libelf/elf_getdata.3 projects/zfsd/head/lib/libelf/elf_update.c projects/zfsd/head/lib/libexpat/expat_config.h projects/zfsd/head/lib/libexpat/libbsdxml.3 projects/zfsd/head/lib/libipsec/policy_parse.y projects/zfsd/head/lib/libkiconv/kiconv.3 projects/zfsd/head/lib/libnetgraph/sock.c projects/zfsd/head/lib/libpmc/Makefile projects/zfsd/head/lib/libpmc/libpmc.c projects/zfsd/head/lib/libpmc/pmc.ivybridge.3 projects/zfsd/head/lib/libpmc/pmc.sandybridge.3 projects/zfsd/head/lib/libpmc/pmc.sandybridgexeon.3 projects/zfsd/head/lib/libpmc/pmc.soft.3 projects/zfsd/head/lib/libproc/proc_rtld.c projects/zfsd/head/lib/libproc/test/t1-bkpt/t1-bkpt.c projects/zfsd/head/lib/libradius/Makefile projects/zfsd/head/lib/libradius/libradius.3 projects/zfsd/head/lib/libradius/radius.conf.5 projects/zfsd/head/lib/libradius/radlib.c projects/zfsd/head/lib/libradius/radlib.h projects/zfsd/head/lib/libradius/radlib_private.h projects/zfsd/head/lib/libradius/radlib_vs.h projects/zfsd/head/lib/libsm/Makefile projects/zfsd/head/lib/libstand/Makefile projects/zfsd/head/lib/libstand/stand.h projects/zfsd/head/lib/libthr/thread/thr_init.c projects/zfsd/head/lib/libthr/thread/thr_kern.c projects/zfsd/head/lib/libusb/Makefile projects/zfsd/head/lib/libusb/libusb20.3 projects/zfsd/head/lib/libusb/libusb20.c projects/zfsd/head/lib/libusb/libusb20.h projects/zfsd/head/lib/libusb/libusb20_int.h projects/zfsd/head/lib/libusb/libusb20_ugen20.c projects/zfsd/head/lib/libutil/gr_util.c projects/zfsd/head/lib/libutil/libutil.h projects/zfsd/head/lib/libutil/pw_util.c projects/zfsd/head/lib/ncurses/form/Makefile projects/zfsd/head/lib/ncurses/menu/Makefile projects/zfsd/head/lib/ncurses/ncurses/Makefile projects/zfsd/head/lib/ncurses/panel/Makefile projects/zfsd/head/libexec/bootpd/rtmsg.c projects/zfsd/head/libexec/mail.local/Makefile projects/zfsd/head/libexec/rtld-elf/Makefile projects/zfsd/head/libexec/rtld-elf/powerpc64/reloc.c projects/zfsd/head/libexec/smrsh/Makefile projects/zfsd/head/libexec/tftpd/tftp-io.c projects/zfsd/head/libexec/tftpd/tftp-options.c projects/zfsd/head/libexec/tftpd/tftp-utils.h projects/zfsd/head/libexec/tftpd/tftpd.c projects/zfsd/head/release/Makefile projects/zfsd/head/release/amd64/mkisoimages.sh projects/zfsd/head/release/generate-release.sh projects/zfsd/head/release/i386/mkisoimages.sh projects/zfsd/head/release/ia64/mkisoimages.sh projects/zfsd/head/release/pc98/mkisoimages.sh projects/zfsd/head/release/picobsd/bridge/crunch.conf projects/zfsd/head/release/picobsd/build/picobsd projects/zfsd/head/release/picobsd/floppy.tree/etc/ppp/ppp.conf projects/zfsd/head/release/picobsd/mfs_tree/etc/remote projects/zfsd/head/release/picobsd/qemu/crunch.conf projects/zfsd/head/release/powerpc/mkisoimages.sh projects/zfsd/head/release/rc.local projects/zfsd/head/release/sparc64/mkisoimages.sh projects/zfsd/head/sbin/comcontrol/comcontrol.8 projects/zfsd/head/sbin/devd/devd.8 projects/zfsd/head/sbin/devd/devd.cc projects/zfsd/head/sbin/devd/devd.conf.5 projects/zfsd/head/sbin/devd/devd.hh projects/zfsd/head/sbin/dump/dump.h projects/zfsd/head/sbin/fsck_ffs/dir.c projects/zfsd/head/sbin/fsck_ffs/ea.c projects/zfsd/head/sbin/fsck_ffs/fsck.h projects/zfsd/head/sbin/fsck_ffs/fsutil.c projects/zfsd/head/sbin/fsck_ffs/inode.c projects/zfsd/head/sbin/fsck_ffs/main.c projects/zfsd/head/sbin/fsck_ffs/setup.c projects/zfsd/head/sbin/fsdb/fsdbutil.c projects/zfsd/head/sbin/geom/class/eli/geom_eli.c projects/zfsd/head/sbin/geom/class/journal/geom_journal_ufs.c projects/zfsd/head/sbin/geom/class/part/gpart.8 projects/zfsd/head/sbin/geom/class/raid/graid.8 projects/zfsd/head/sbin/geom/class/raid3/geom_raid3.c projects/zfsd/head/sbin/geom/class/raid3/graid3.8 projects/zfsd/head/sbin/growfs/growfs.c projects/zfsd/head/sbin/hastctl/hastctl.c projects/zfsd/head/sbin/hastd/control.c projects/zfsd/head/sbin/hastd/hast.conf.5 projects/zfsd/head/sbin/hastd/hast.h projects/zfsd/head/sbin/hastd/hast_proto.c projects/zfsd/head/sbin/hastd/hastd.c projects/zfsd/head/sbin/hastd/parse.y projects/zfsd/head/sbin/hastd/primary.c projects/zfsd/head/sbin/hastd/secondary.c projects/zfsd/head/sbin/ifconfig/af_inet6.c projects/zfsd/head/sbin/ifconfig/af_nd6.c projects/zfsd/head/sbin/ifconfig/ifconfig.8 projects/zfsd/head/sbin/ifconfig/ifconfig.c projects/zfsd/head/sbin/ifconfig/ifieee80211.c projects/zfsd/head/sbin/mount_nfs/mount_nfs.8 projects/zfsd/head/sbin/mount_nullfs/mount_nullfs.c projects/zfsd/head/sbin/newfs_msdos/newfs_msdos.c projects/zfsd/head/sbin/pflogd/Makefile projects/zfsd/head/sbin/recoverdisk/recoverdisk.c projects/zfsd/head/sbin/route/route.c projects/zfsd/head/sbin/savecore/savecore.8 projects/zfsd/head/sbin/savecore/savecore.c projects/zfsd/head/sbin/setkey/Makefile projects/zfsd/head/sbin/setkey/setkey.8 projects/zfsd/head/sbin/sysctl/sysctl.8 projects/zfsd/head/sbin/sysctl/sysctl.c projects/zfsd/head/secure/lib/libcrypto/Makefile projects/zfsd/head/secure/lib/libcrypto/Makefile.inc projects/zfsd/head/secure/lib/libcrypto/Makefile.man projects/zfsd/head/secure/lib/libcrypto/man/ASN1_OBJECT_new.3 projects/zfsd/head/secure/lib/libcrypto/man/ASN1_STRING_length.3 projects/zfsd/head/secure/lib/libcrypto/man/ASN1_STRING_new.3 projects/zfsd/head/secure/lib/libcrypto/man/ASN1_STRING_print_ex.3 projects/zfsd/head/secure/lib/libcrypto/man/ASN1_generate_nconf.3 projects/zfsd/head/secure/lib/libcrypto/man/BIO_ctrl.3 projects/zfsd/head/secure/lib/libcrypto/man/BIO_f_base64.3 projects/zfsd/head/secure/lib/libcrypto/man/BIO_f_buffer.3 projects/zfsd/head/secure/lib/libcrypto/man/BIO_f_cipher.3 projects/zfsd/head/secure/lib/libcrypto/man/BIO_f_md.3 projects/zfsd/head/secure/lib/libcrypto/man/BIO_f_null.3 projects/zfsd/head/secure/lib/libcrypto/man/BIO_f_ssl.3 projects/zfsd/head/secure/lib/libcrypto/man/BIO_find_type.3 projects/zfsd/head/secure/lib/libcrypto/man/BIO_new.3 projects/zfsd/head/secure/lib/libcrypto/man/BIO_new_CMS.3 projects/zfsd/head/secure/lib/libcrypto/man/BIO_push.3 projects/zfsd/head/secure/lib/libcrypto/man/BIO_read.3 projects/zfsd/head/secure/lib/libcrypto/man/BIO_s_accept.3 projects/zfsd/head/secure/lib/libcrypto/man/BIO_s_bio.3 projects/zfsd/head/secure/lib/libcrypto/man/BIO_s_connect.3 projects/zfsd/head/secure/lib/libcrypto/man/BIO_s_fd.3 projects/zfsd/head/secure/lib/libcrypto/man/BIO_s_file.3 projects/zfsd/head/secure/lib/libcrypto/man/BIO_s_mem.3 projects/zfsd/head/secure/lib/libcrypto/man/BIO_s_null.3 projects/zfsd/head/secure/lib/libcrypto/man/BIO_s_socket.3 projects/zfsd/head/secure/lib/libcrypto/man/BIO_set_callback.3 projects/zfsd/head/secure/lib/libcrypto/man/BIO_should_retry.3 projects/zfsd/head/secure/lib/libcrypto/man/BN_BLINDING_new.3 projects/zfsd/head/secure/lib/libcrypto/man/BN_CTX_new.3 projects/zfsd/head/secure/lib/libcrypto/man/BN_CTX_start.3 projects/zfsd/head/secure/lib/libcrypto/man/BN_add.3 projects/zfsd/head/secure/lib/libcrypto/man/BN_add_word.3 projects/zfsd/head/secure/lib/libcrypto/man/BN_bn2bin.3 projects/zfsd/head/secure/lib/libcrypto/man/BN_cmp.3 projects/zfsd/head/secure/lib/libcrypto/man/BN_copy.3 projects/zfsd/head/secure/lib/libcrypto/man/BN_generate_prime.3 projects/zfsd/head/secure/lib/libcrypto/man/BN_mod_inverse.3 projects/zfsd/head/secure/lib/libcrypto/man/BN_mod_mul_montgomery.3 projects/zfsd/head/secure/lib/libcrypto/man/BN_mod_mul_reciprocal.3 projects/zfsd/head/secure/lib/libcrypto/man/BN_new.3 projects/zfsd/head/secure/lib/libcrypto/man/BN_num_bytes.3 projects/zfsd/head/secure/lib/libcrypto/man/BN_rand.3 projects/zfsd/head/secure/lib/libcrypto/man/BN_set_bit.3 projects/zfsd/head/secure/lib/libcrypto/man/BN_swap.3 projects/zfsd/head/secure/lib/libcrypto/man/BN_zero.3 projects/zfsd/head/secure/lib/libcrypto/man/CMS_add0_cert.3 projects/zfsd/head/secure/lib/libcrypto/man/CMS_add1_recipient_cert.3 projects/zfsd/head/secure/lib/libcrypto/man/CMS_compress.3 projects/zfsd/head/secure/lib/libcrypto/man/CMS_decrypt.3 projects/zfsd/head/secure/lib/libcrypto/man/CMS_encrypt.3 projects/zfsd/head/secure/lib/libcrypto/man/CMS_final.3 projects/zfsd/head/secure/lib/libcrypto/man/CMS_get0_RecipientInfos.3 projects/zfsd/head/secure/lib/libcrypto/man/CMS_get0_SignerInfos.3 projects/zfsd/head/secure/lib/libcrypto/man/CMS_get0_type.3 projects/zfsd/head/secure/lib/libcrypto/man/CMS_get1_ReceiptRequest.3 projects/zfsd/head/secure/lib/libcrypto/man/CMS_sign.3 projects/zfsd/head/secure/lib/libcrypto/man/CMS_sign_add1_signer.3 projects/zfsd/head/secure/lib/libcrypto/man/CMS_sign_receipt.3 projects/zfsd/head/secure/lib/libcrypto/man/CMS_uncompress.3 projects/zfsd/head/secure/lib/libcrypto/man/CMS_verify.3 projects/zfsd/head/secure/lib/libcrypto/man/CMS_verify_receipt.3 projects/zfsd/head/secure/lib/libcrypto/man/CONF_modules_free.3 projects/zfsd/head/secure/lib/libcrypto/man/CONF_modules_load_file.3 projects/zfsd/head/secure/lib/libcrypto/man/CRYPTO_set_ex_data.3 projects/zfsd/head/secure/lib/libcrypto/man/DH_generate_key.3 projects/zfsd/head/secure/lib/libcrypto/man/DH_generate_parameters.3 projects/zfsd/head/secure/lib/libcrypto/man/DH_get_ex_new_index.3 projects/zfsd/head/secure/lib/libcrypto/man/DH_new.3 projects/zfsd/head/secure/lib/libcrypto/man/DH_set_method.3 projects/zfsd/head/secure/lib/libcrypto/man/DH_size.3 projects/zfsd/head/secure/lib/libcrypto/man/DSA_SIG_new.3 projects/zfsd/head/secure/lib/libcrypto/man/DSA_do_sign.3 projects/zfsd/head/secure/lib/libcrypto/man/DSA_dup_DH.3 projects/zfsd/head/secure/lib/libcrypto/man/DSA_generate_key.3 projects/zfsd/head/secure/lib/libcrypto/man/DSA_generate_parameters.3 projects/zfsd/head/secure/lib/libcrypto/man/DSA_get_ex_new_index.3 projects/zfsd/head/secure/lib/libcrypto/man/DSA_new.3 projects/zfsd/head/secure/lib/libcrypto/man/DSA_set_method.3 projects/zfsd/head/secure/lib/libcrypto/man/DSA_sign.3 projects/zfsd/head/secure/lib/libcrypto/man/DSA_size.3 projects/zfsd/head/secure/lib/libcrypto/man/ERR_GET_LIB.3 projects/zfsd/head/secure/lib/libcrypto/man/ERR_clear_error.3 projects/zfsd/head/secure/lib/libcrypto/man/ERR_error_string.3 projects/zfsd/head/secure/lib/libcrypto/man/ERR_get_error.3 projects/zfsd/head/secure/lib/libcrypto/man/ERR_load_crypto_strings.3 projects/zfsd/head/secure/lib/libcrypto/man/ERR_load_strings.3 projects/zfsd/head/secure/lib/libcrypto/man/ERR_print_errors.3 projects/zfsd/head/secure/lib/libcrypto/man/ERR_put_error.3 projects/zfsd/head/secure/lib/libcrypto/man/ERR_remove_state.3 projects/zfsd/head/secure/lib/libcrypto/man/ERR_set_mark.3 projects/zfsd/head/secure/lib/libcrypto/man/EVP_BytesToKey.3 projects/zfsd/head/secure/lib/libcrypto/man/EVP_DigestInit.3 projects/zfsd/head/secure/lib/libcrypto/man/EVP_DigestSignInit.3 projects/zfsd/head/secure/lib/libcrypto/man/EVP_DigestVerifyInit.3 projects/zfsd/head/secure/lib/libcrypto/man/EVP_EncryptInit.3 projects/zfsd/head/secure/lib/libcrypto/man/EVP_OpenInit.3 projects/zfsd/head/secure/lib/libcrypto/man/EVP_PKEY_CTX_ctrl.3 projects/zfsd/head/secure/lib/libcrypto/man/EVP_PKEY_CTX_new.3 projects/zfsd/head/secure/lib/libcrypto/man/EVP_PKEY_cmp.3 projects/zfsd/head/secure/lib/libcrypto/man/EVP_PKEY_decrypt.3 projects/zfsd/head/secure/lib/libcrypto/man/EVP_PKEY_derive.3 projects/zfsd/head/secure/lib/libcrypto/man/EVP_PKEY_encrypt.3 projects/zfsd/head/secure/lib/libcrypto/man/EVP_PKEY_get_default_digest.3 projects/zfsd/head/secure/lib/libcrypto/man/EVP_PKEY_keygen.3 projects/zfsd/head/secure/lib/libcrypto/man/EVP_PKEY_new.3 projects/zfsd/head/secure/lib/libcrypto/man/EVP_PKEY_print_private.3 projects/zfsd/head/secure/lib/libcrypto/man/EVP_PKEY_set1_RSA.3 projects/zfsd/head/secure/lib/libcrypto/man/EVP_PKEY_sign.3 projects/zfsd/head/secure/lib/libcrypto/man/EVP_PKEY_verify.3 projects/zfsd/head/secure/lib/libcrypto/man/EVP_SealInit.3 projects/zfsd/head/secure/lib/libcrypto/man/EVP_SignInit.3 projects/zfsd/head/secure/lib/libcrypto/man/EVP_VerifyInit.3 projects/zfsd/head/secure/lib/libcrypto/man/OBJ_nid2obj.3 projects/zfsd/head/secure/lib/libcrypto/man/OPENSSL_Applink.3 projects/zfsd/head/secure/lib/libcrypto/man/OPENSSL_VERSION_NUMBER.3 projects/zfsd/head/secure/lib/libcrypto/man/OPENSSL_config.3 projects/zfsd/head/secure/lib/libcrypto/man/OPENSSL_ia32cap.3 projects/zfsd/head/secure/lib/libcrypto/man/OPENSSL_load_builtin_modules.3 projects/zfsd/head/secure/lib/libcrypto/man/OpenSSL_add_all_algorithms.3 projects/zfsd/head/secure/lib/libcrypto/man/PEM_write_bio_CMS_stream.3 projects/zfsd/head/secure/lib/libcrypto/man/PEM_write_bio_PKCS7_stream.3 projects/zfsd/head/secure/lib/libcrypto/man/PKCS12_create.3 projects/zfsd/head/secure/lib/libcrypto/man/PKCS12_parse.3 projects/zfsd/head/secure/lib/libcrypto/man/PKCS7_decrypt.3 projects/zfsd/head/secure/lib/libcrypto/man/PKCS7_encrypt.3 projects/zfsd/head/secure/lib/libcrypto/man/PKCS7_sign.3 projects/zfsd/head/secure/lib/libcrypto/man/PKCS7_sign_add_signer.3 projects/zfsd/head/secure/lib/libcrypto/man/PKCS7_verify.3 projects/zfsd/head/secure/lib/libcrypto/man/RAND_add.3 projects/zfsd/head/secure/lib/libcrypto/man/RAND_bytes.3 projects/zfsd/head/secure/lib/libcrypto/man/RAND_cleanup.3 projects/zfsd/head/secure/lib/libcrypto/man/RAND_egd.3 projects/zfsd/head/secure/lib/libcrypto/man/RAND_load_file.3 projects/zfsd/head/secure/lib/libcrypto/man/RAND_set_rand_method.3 projects/zfsd/head/secure/lib/libcrypto/man/RSA_blinding_on.3 projects/zfsd/head/secure/lib/libcrypto/man/RSA_check_key.3 projects/zfsd/head/secure/lib/libcrypto/man/RSA_generate_key.3 projects/zfsd/head/secure/lib/libcrypto/man/RSA_get_ex_new_index.3 projects/zfsd/head/secure/lib/libcrypto/man/RSA_new.3 projects/zfsd/head/secure/lib/libcrypto/man/RSA_padding_add_PKCS1_type_1.3 projects/zfsd/head/secure/lib/libcrypto/man/RSA_print.3 projects/zfsd/head/secure/lib/libcrypto/man/RSA_private_encrypt.3 projects/zfsd/head/secure/lib/libcrypto/man/RSA_public_encrypt.3 projects/zfsd/head/secure/lib/libcrypto/man/RSA_set_method.3 projects/zfsd/head/secure/lib/libcrypto/man/RSA_sign.3 projects/zfsd/head/secure/lib/libcrypto/man/RSA_sign_ASN1_OCTET_STRING.3 projects/zfsd/head/secure/lib/libcrypto/man/RSA_size.3 projects/zfsd/head/secure/lib/libcrypto/man/SMIME_read_CMS.3 projects/zfsd/head/secure/lib/libcrypto/man/SMIME_read_PKCS7.3 projects/zfsd/head/secure/lib/libcrypto/man/SMIME_write_CMS.3 projects/zfsd/head/secure/lib/libcrypto/man/SMIME_write_PKCS7.3 projects/zfsd/head/secure/lib/libcrypto/man/X509_NAME_ENTRY_get_object.3 projects/zfsd/head/secure/lib/libcrypto/man/X509_NAME_add_entry_by_txt.3 projects/zfsd/head/secure/lib/libcrypto/man/X509_NAME_get_index_by_NID.3 projects/zfsd/head/secure/lib/libcrypto/man/X509_NAME_print_ex.3 projects/zfsd/head/secure/lib/libcrypto/man/X509_STORE_CTX_get_error.3 projects/zfsd/head/secure/lib/libcrypto/man/X509_STORE_CTX_get_ex_new_index.3 projects/zfsd/head/secure/lib/libcrypto/man/X509_STORE_CTX_new.3 projects/zfsd/head/secure/lib/libcrypto/man/X509_STORE_CTX_set_verify_cb.3 projects/zfsd/head/secure/lib/libcrypto/man/X509_STORE_set_verify_cb_func.3 projects/zfsd/head/secure/lib/libcrypto/man/X509_VERIFY_PARAM_set_flags.3 projects/zfsd/head/secure/lib/libcrypto/man/X509_new.3 projects/zfsd/head/secure/lib/libcrypto/man/X509_verify_cert.3 projects/zfsd/head/secure/lib/libcrypto/man/bio.3 projects/zfsd/head/secure/lib/libcrypto/man/blowfish.3 projects/zfsd/head/secure/lib/libcrypto/man/bn.3 projects/zfsd/head/secure/lib/libcrypto/man/bn_internal.3 projects/zfsd/head/secure/lib/libcrypto/man/buffer.3 projects/zfsd/head/secure/lib/libcrypto/man/crypto.3 projects/zfsd/head/secure/lib/libcrypto/man/d2i_ASN1_OBJECT.3 projects/zfsd/head/secure/lib/libcrypto/man/d2i_DHparams.3 projects/zfsd/head/secure/lib/libcrypto/man/d2i_DSAPublicKey.3 projects/zfsd/head/secure/lib/libcrypto/man/d2i_PKCS8PrivateKey.3 projects/zfsd/head/secure/lib/libcrypto/man/d2i_RSAPublicKey.3 projects/zfsd/head/secure/lib/libcrypto/man/d2i_X509.3 projects/zfsd/head/secure/lib/libcrypto/man/d2i_X509_ALGOR.3 projects/zfsd/head/secure/lib/libcrypto/man/d2i_X509_CRL.3 projects/zfsd/head/secure/lib/libcrypto/man/d2i_X509_NAME.3 projects/zfsd/head/secure/lib/libcrypto/man/d2i_X509_REQ.3 projects/zfsd/head/secure/lib/libcrypto/man/d2i_X509_SIG.3 projects/zfsd/head/secure/lib/libcrypto/man/des.3 projects/zfsd/head/secure/lib/libcrypto/man/dh.3 projects/zfsd/head/secure/lib/libcrypto/man/dsa.3 projects/zfsd/head/secure/lib/libcrypto/man/ecdsa.3 projects/zfsd/head/secure/lib/libcrypto/man/engine.3 projects/zfsd/head/secure/lib/libcrypto/man/err.3 projects/zfsd/head/secure/lib/libcrypto/man/evp.3 projects/zfsd/head/secure/lib/libcrypto/man/hmac.3 projects/zfsd/head/secure/lib/libcrypto/man/i2d_CMS_bio_stream.3 projects/zfsd/head/secure/lib/libcrypto/man/i2d_PKCS7_bio_stream.3 projects/zfsd/head/secure/lib/libcrypto/man/lh_stats.3 projects/zfsd/head/secure/lib/libcrypto/man/lhash.3 projects/zfsd/head/secure/lib/libcrypto/man/md5.3 projects/zfsd/head/secure/lib/libcrypto/man/mdc2.3 projects/zfsd/head/secure/lib/libcrypto/man/pem.3 projects/zfsd/head/secure/lib/libcrypto/man/rand.3 projects/zfsd/head/secure/lib/libcrypto/man/rc4.3 projects/zfsd/head/secure/lib/libcrypto/man/ripemd.3 projects/zfsd/head/secure/lib/libcrypto/man/rsa.3 projects/zfsd/head/secure/lib/libcrypto/man/sha.3 projects/zfsd/head/secure/lib/libcrypto/man/threads.3 projects/zfsd/head/secure/lib/libcrypto/man/ui.3 projects/zfsd/head/secure/lib/libcrypto/man/ui_compat.3 projects/zfsd/head/secure/lib/libcrypto/man/x509.3 projects/zfsd/head/secure/lib/libssh/Makefile projects/zfsd/head/secure/lib/libssl/Makefile projects/zfsd/head/secure/lib/libssl/man/SSL_CIPHER_get_name.3 projects/zfsd/head/secure/lib/libssl/man/SSL_COMP_add_compression_method.3 projects/zfsd/head/secure/lib/libssl/man/SSL_CTX_add_extra_chain_cert.3 projects/zfsd/head/secure/lib/libssl/man/SSL_CTX_add_session.3 projects/zfsd/head/secure/lib/libssl/man/SSL_CTX_ctrl.3 projects/zfsd/head/secure/lib/libssl/man/SSL_CTX_flush_sessions.3 projects/zfsd/head/secure/lib/libssl/man/SSL_CTX_free.3 projects/zfsd/head/secure/lib/libssl/man/SSL_CTX_get_ex_new_index.3 projects/zfsd/head/secure/lib/libssl/man/SSL_CTX_get_verify_mode.3 projects/zfsd/head/secure/lib/libssl/man/SSL_CTX_load_verify_locations.3 projects/zfsd/head/secure/lib/libssl/man/SSL_CTX_new.3 projects/zfsd/head/secure/lib/libssl/man/SSL_CTX_sess_number.3 projects/zfsd/head/secure/lib/libssl/man/SSL_CTX_sess_set_cache_size.3 projects/zfsd/head/secure/lib/libssl/man/SSL_CTX_sess_set_get_cb.3 projects/zfsd/head/secure/lib/libssl/man/SSL_CTX_sessions.3 projects/zfsd/head/secure/lib/libssl/man/SSL_CTX_set_cert_store.3 projects/zfsd/head/secure/lib/libssl/man/SSL_CTX_set_cert_verify_callback.3 projects/zfsd/head/secure/lib/libssl/man/SSL_CTX_set_cipher_list.3 projects/zfsd/head/secure/lib/libssl/man/SSL_CTX_set_client_CA_list.3 projects/zfsd/head/secure/lib/libssl/man/SSL_CTX_set_client_cert_cb.3 projects/zfsd/head/secure/lib/libssl/man/SSL_CTX_set_default_passwd_cb.3 projects/zfsd/head/secure/lib/libssl/man/SSL_CTX_set_generate_session_id.3 projects/zfsd/head/secure/lib/libssl/man/SSL_CTX_set_info_callback.3 projects/zfsd/head/secure/lib/libssl/man/SSL_CTX_set_max_cert_list.3 projects/zfsd/head/secure/lib/libssl/man/SSL_CTX_set_mode.3 projects/zfsd/head/secure/lib/libssl/man/SSL_CTX_set_msg_callback.3 projects/zfsd/head/secure/lib/libssl/man/SSL_CTX_set_options.3 projects/zfsd/head/secure/lib/libssl/man/SSL_CTX_set_psk_client_callback.3 projects/zfsd/head/secure/lib/libssl/man/SSL_CTX_set_quiet_shutdown.3 projects/zfsd/head/secure/lib/libssl/man/SSL_CTX_set_session_cache_mode.3 projects/zfsd/head/secure/lib/libssl/man/SSL_CTX_set_session_id_context.3 projects/zfsd/head/secure/lib/libssl/man/SSL_CTX_set_ssl_version.3 projects/zfsd/head/secure/lib/libssl/man/SSL_CTX_set_timeout.3 projects/zfsd/head/secure/lib/libssl/man/SSL_CTX_set_tmp_dh_callback.3 projects/zfsd/head/secure/lib/libssl/man/SSL_CTX_set_tmp_rsa_callback.3 projects/zfsd/head/secure/lib/libssl/man/SSL_CTX_set_verify.3 projects/zfsd/head/secure/lib/libssl/man/SSL_CTX_use_certificate.3 projects/zfsd/head/secure/lib/libssl/man/SSL_CTX_use_psk_identity_hint.3 projects/zfsd/head/secure/lib/libssl/man/SSL_SESSION_free.3 projects/zfsd/head/secure/lib/libssl/man/SSL_SESSION_get_ex_new_index.3 projects/zfsd/head/secure/lib/libssl/man/SSL_SESSION_get_time.3 projects/zfsd/head/secure/lib/libssl/man/SSL_accept.3 projects/zfsd/head/secure/lib/libssl/man/SSL_alert_type_string.3 projects/zfsd/head/secure/lib/libssl/man/SSL_clear.3 projects/zfsd/head/secure/lib/libssl/man/SSL_connect.3 projects/zfsd/head/secure/lib/libssl/man/SSL_do_handshake.3 projects/zfsd/head/secure/lib/libssl/man/SSL_free.3 projects/zfsd/head/secure/lib/libssl/man/SSL_get_SSL_CTX.3 projects/zfsd/head/secure/lib/libssl/man/SSL_get_ciphers.3 projects/zfsd/head/secure/lib/libssl/man/SSL_get_client_CA_list.3 projects/zfsd/head/secure/lib/libssl/man/SSL_get_current_cipher.3 projects/zfsd/head/secure/lib/libssl/man/SSL_get_default_timeout.3 projects/zfsd/head/secure/lib/libssl/man/SSL_get_error.3 projects/zfsd/head/secure/lib/libssl/man/SSL_get_ex_data_X509_STORE_CTX_idx.3 projects/zfsd/head/secure/lib/libssl/man/SSL_get_ex_new_index.3 projects/zfsd/head/secure/lib/libssl/man/SSL_get_fd.3 projects/zfsd/head/secure/lib/libssl/man/SSL_get_peer_cert_chain.3 projects/zfsd/head/secure/lib/libssl/man/SSL_get_peer_certificate.3 projects/zfsd/head/secure/lib/libssl/man/SSL_get_psk_identity.3 projects/zfsd/head/secure/lib/libssl/man/SSL_get_rbio.3 projects/zfsd/head/secure/lib/libssl/man/SSL_get_session.3 projects/zfsd/head/secure/lib/libssl/man/SSL_get_verify_result.3 projects/zfsd/head/secure/lib/libssl/man/SSL_get_version.3 projects/zfsd/head/secure/lib/libssl/man/SSL_library_init.3 projects/zfsd/head/secure/lib/libssl/man/SSL_load_client_CA_file.3 projects/zfsd/head/secure/lib/libssl/man/SSL_new.3 projects/zfsd/head/secure/lib/libssl/man/SSL_pending.3 projects/zfsd/head/secure/lib/libssl/man/SSL_read.3 projects/zfsd/head/secure/lib/libssl/man/SSL_rstate_string.3 projects/zfsd/head/secure/lib/libssl/man/SSL_session_reused.3 projects/zfsd/head/secure/lib/libssl/man/SSL_set_bio.3 projects/zfsd/head/secure/lib/libssl/man/SSL_set_connect_state.3 projects/zfsd/head/secure/lib/libssl/man/SSL_set_fd.3 projects/zfsd/head/secure/lib/libssl/man/SSL_set_session.3 projects/zfsd/head/secure/lib/libssl/man/SSL_set_shutdown.3 projects/zfsd/head/secure/lib/libssl/man/SSL_set_verify_result.3 projects/zfsd/head/secure/lib/libssl/man/SSL_shutdown.3 projects/zfsd/head/secure/lib/libssl/man/SSL_state_string.3 projects/zfsd/head/secure/lib/libssl/man/SSL_want.3 projects/zfsd/head/secure/lib/libssl/man/SSL_write.3 projects/zfsd/head/secure/lib/libssl/man/d2i_SSL_SESSION.3 projects/zfsd/head/secure/lib/libssl/man/ssl.3 projects/zfsd/head/secure/usr.bin/openssl/man/CA.pl.1 projects/zfsd/head/secure/usr.bin/openssl/man/asn1parse.1 projects/zfsd/head/secure/usr.bin/openssl/man/ca.1 projects/zfsd/head/secure/usr.bin/openssl/man/ciphers.1 projects/zfsd/head/secure/usr.bin/openssl/man/cms.1 projects/zfsd/head/secure/usr.bin/openssl/man/crl.1 projects/zfsd/head/secure/usr.bin/openssl/man/crl2pkcs7.1 projects/zfsd/head/secure/usr.bin/openssl/man/dgst.1 projects/zfsd/head/secure/usr.bin/openssl/man/dhparam.1 projects/zfsd/head/secure/usr.bin/openssl/man/dsa.1 projects/zfsd/head/secure/usr.bin/openssl/man/dsaparam.1 projects/zfsd/head/secure/usr.bin/openssl/man/ec.1 projects/zfsd/head/secure/usr.bin/openssl/man/ecparam.1 projects/zfsd/head/secure/usr.bin/openssl/man/enc.1 projects/zfsd/head/secure/usr.bin/openssl/man/errstr.1 projects/zfsd/head/secure/usr.bin/openssl/man/gendsa.1 projects/zfsd/head/secure/usr.bin/openssl/man/genpkey.1 projects/zfsd/head/secure/usr.bin/openssl/man/genrsa.1 projects/zfsd/head/secure/usr.bin/openssl/man/nseq.1 projects/zfsd/head/secure/usr.bin/openssl/man/ocsp.1 projects/zfsd/head/secure/usr.bin/openssl/man/openssl.1 projects/zfsd/head/secure/usr.bin/openssl/man/passwd.1 projects/zfsd/head/secure/usr.bin/openssl/man/pkcs12.1 projects/zfsd/head/secure/usr.bin/openssl/man/pkcs7.1 projects/zfsd/head/secure/usr.bin/openssl/man/pkcs8.1 projects/zfsd/head/secure/usr.bin/openssl/man/pkey.1 projects/zfsd/head/secure/usr.bin/openssl/man/pkeyparam.1 projects/zfsd/head/secure/usr.bin/openssl/man/pkeyutl.1 projects/zfsd/head/secure/usr.bin/openssl/man/rand.1 projects/zfsd/head/secure/usr.bin/openssl/man/req.1 projects/zfsd/head/secure/usr.bin/openssl/man/rsa.1 projects/zfsd/head/secure/usr.bin/openssl/man/rsautl.1 projects/zfsd/head/secure/usr.bin/openssl/man/s_client.1 projects/zfsd/head/secure/usr.bin/openssl/man/s_server.1 projects/zfsd/head/secure/usr.bin/openssl/man/s_time.1 projects/zfsd/head/secure/usr.bin/openssl/man/sess_id.1 projects/zfsd/head/secure/usr.bin/openssl/man/smime.1 projects/zfsd/head/secure/usr.bin/openssl/man/speed.1 projects/zfsd/head/secure/usr.bin/openssl/man/spkac.1 projects/zfsd/head/secure/usr.bin/openssl/man/ts.1 projects/zfsd/head/secure/usr.bin/openssl/man/tsget.1 projects/zfsd/head/secure/usr.bin/openssl/man/verify.1 projects/zfsd/head/secure/usr.bin/openssl/man/version.1 projects/zfsd/head/secure/usr.bin/openssl/man/x509.1 projects/zfsd/head/secure/usr.bin/openssl/man/x509v3_config.1 projects/zfsd/head/secure/usr.bin/ssh/Makefile projects/zfsd/head/secure/usr.sbin/sshd/Makefile projects/zfsd/head/share/examples/Makefile projects/zfsd/head/share/examples/cvsup/README projects/zfsd/head/share/examples/cvsup/cvs-supfile projects/zfsd/head/share/examples/cvsup/ports-supfile projects/zfsd/head/share/examples/cvsup/stable-supfile projects/zfsd/head/share/examples/cvsup/standard-supfile projects/zfsd/head/share/examples/etc/make.conf projects/zfsd/head/share/examples/ppp/ppp.conf.sample projects/zfsd/head/share/examples/ppp/ppp.conf.span-isp projects/zfsd/head/share/i18n/csmapper/Makefile.part projects/zfsd/head/share/info/Makefile projects/zfsd/head/share/man/man4/Makefile projects/zfsd/head/share/man/man4/arcmsr.4 projects/zfsd/head/share/man/man4/audit.4 projects/zfsd/head/share/man/man4/carp.4 projects/zfsd/head/share/man/man4/cxgbe.4 projects/zfsd/head/share/man/man4/gdb.4 projects/zfsd/head/share/man/man4/mfi.4 projects/zfsd/head/share/man/man4/mouse.4 projects/zfsd/head/share/man/man4/mps.4 projects/zfsd/head/share/man/man4/ng_netflow.4 projects/zfsd/head/share/man/man4/ng_ubt.4 projects/zfsd/head/share/man/man4/rl.4 projects/zfsd/head/share/man/man4/run.4 projects/zfsd/head/share/man/man4/stf.4 projects/zfsd/head/share/man/man4/wbwd.4 projects/zfsd/head/share/man/man5/group.5 projects/zfsd/head/share/man/man5/make.conf.5 projects/zfsd/head/share/man/man5/rc.conf.5 projects/zfsd/head/share/man/man5/remote.5 projects/zfsd/head/share/man/man5/src.conf.5 projects/zfsd/head/share/man/man7/release.7 projects/zfsd/head/share/man/man7/tuning.7 projects/zfsd/head/share/man/man9/Makefile projects/zfsd/head/share/man/man9/VFS_SET.9 projects/zfsd/head/share/man/man9/domain.9 projects/zfsd/head/share/man/man9/lock.9 projects/zfsd/head/share/man/man9/make_dev.9 projects/zfsd/head/share/man/man9/mbuf_tags.9 projects/zfsd/head/share/man/man9/sleep.9 projects/zfsd/head/share/man/man9/taskqueue.9 projects/zfsd/head/share/man/man9/timeout.9 projects/zfsd/head/share/man/man9/vfs_busy.9 projects/zfsd/head/share/man/man9/vm_map_insert.9 projects/zfsd/head/share/man/man9/vm_map_stack.9 projects/zfsd/head/share/man/man9/zone.9 projects/zfsd/head/share/misc/Makefile projects/zfsd/head/share/misc/committers-doc.dot projects/zfsd/head/share/misc/committers-ports.dot projects/zfsd/head/share/misc/committers-src.dot projects/zfsd/head/share/misc/iso639 projects/zfsd/head/share/misc/organization.dot projects/zfsd/head/share/mk/Makefile projects/zfsd/head/share/mk/bsd.README projects/zfsd/head/share/mk/bsd.cpu.mk projects/zfsd/head/share/mk/bsd.incs.mk projects/zfsd/head/share/mk/bsd.info.mk projects/zfsd/head/share/mk/bsd.init.mk projects/zfsd/head/share/mk/bsd.lib.mk projects/zfsd/head/share/mk/bsd.libnames.mk projects/zfsd/head/share/mk/bsd.links.mk projects/zfsd/head/share/mk/bsd.man.mk projects/zfsd/head/share/mk/bsd.own.mk projects/zfsd/head/share/mk/bsd.prog.mk projects/zfsd/head/share/mk/bsd.sys.mk projects/zfsd/head/share/mk/sys.mk projects/zfsd/head/share/monetdef/Makefile projects/zfsd/head/share/msgdef/Makefile projects/zfsd/head/share/numericdef/Makefile projects/zfsd/head/share/skel/dot.cshrc projects/zfsd/head/share/syscons/keymaps/INDEX.keymaps projects/zfsd/head/share/syscons/keymaps/Makefile projects/zfsd/head/share/syscons/keymaps/spanish.dvorak.kbd projects/zfsd/head/share/zoneinfo/Makefile projects/zfsd/head/sys/Makefile projects/zfsd/head/sys/amd64/acpica/acpi_machdep.c projects/zfsd/head/sys/amd64/amd64/db_trace.c projects/zfsd/head/sys/amd64/amd64/fpu.c projects/zfsd/head/sys/amd64/amd64/minidump_machdep.c projects/zfsd/head/sys/amd64/amd64/mp_machdep.c projects/zfsd/head/sys/amd64/amd64/pmap.c projects/zfsd/head/sys/amd64/amd64/vm_machdep.c projects/zfsd/head/sys/amd64/conf/GENERIC projects/zfsd/head/sys/amd64/conf/NOTES projects/zfsd/head/sys/amd64/include/elf.h projects/zfsd/head/sys/amd64/include/fpu.h projects/zfsd/head/sys/amd64/include/frame.h projects/zfsd/head/sys/amd64/include/intr_machdep.h projects/zfsd/head/sys/amd64/include/pmap.h projects/zfsd/head/sys/amd64/include/sigframe.h projects/zfsd/head/sys/amd64/include/signal.h projects/zfsd/head/sys/amd64/include/ucontext.h projects/zfsd/head/sys/amd64/linux32/linux.h projects/zfsd/head/sys/amd64/linux32/linux32_sysvec.c projects/zfsd/head/sys/amd64/pci/pci_cfgreg.c projects/zfsd/head/sys/arm/arm/busdma_machdep-v6.c projects/zfsd/head/sys/arm/arm/busdma_machdep.c projects/zfsd/head/sys/arm/arm/cpufunc.c projects/zfsd/head/sys/arm/arm/cpufunc_asm_arm10.S projects/zfsd/head/sys/arm/arm/cpufunc_asm_arm9.S projects/zfsd/head/sys/arm/arm/db_trace.c projects/zfsd/head/sys/arm/arm/elf_trampoline.c projects/zfsd/head/sys/arm/arm/identcpu.c projects/zfsd/head/sys/arm/arm/intr.c projects/zfsd/head/sys/arm/arm/locore.S projects/zfsd/head/sys/arm/arm/machdep.c projects/zfsd/head/sys/arm/arm/mp_machdep.c projects/zfsd/head/sys/arm/arm/pl310.c projects/zfsd/head/sys/arm/arm/pmap-v6.c projects/zfsd/head/sys/arm/arm/pmap.c projects/zfsd/head/sys/arm/arm/swtch.S projects/zfsd/head/sys/arm/arm/trap.c projects/zfsd/head/sys/arm/arm/vfp.c projects/zfsd/head/sys/arm/arm/vm_machdep.c projects/zfsd/head/sys/arm/at91/at91_machdep.c projects/zfsd/head/sys/arm/at91/if_ate.c projects/zfsd/head/sys/arm/at91/if_macb.c projects/zfsd/head/sys/arm/broadcom/bcm2835/bcm2835_fb.c projects/zfsd/head/sys/arm/broadcom/bcm2835/bcm2835_gpio.c projects/zfsd/head/sys/arm/broadcom/bcm2835/bcm2835_machdep.c projects/zfsd/head/sys/arm/broadcom/bcm2835/bcm2835_sdhci.c projects/zfsd/head/sys/arm/broadcom/bcm2835/bcm2835_systimer.c projects/zfsd/head/sys/arm/broadcom/bcm2835/bcm2835_vcbus.h projects/zfsd/head/sys/arm/broadcom/bcm2835/files.bcm2835 projects/zfsd/head/sys/arm/conf/BEAGLEBONE projects/zfsd/head/sys/arm/conf/DOCKSTAR projects/zfsd/head/sys/arm/conf/NOTES projects/zfsd/head/sys/arm/conf/PANDABOARD projects/zfsd/head/sys/arm/conf/RPI-B projects/zfsd/head/sys/arm/conf/SHEEVAPLUG projects/zfsd/head/sys/arm/econa/econa_machdep.c projects/zfsd/head/sys/arm/econa/if_ece.c projects/zfsd/head/sys/arm/include/armreg.h projects/zfsd/head/sys/arm/include/atomic.h projects/zfsd/head/sys/arm/include/cpuconf.h projects/zfsd/head/sys/arm/include/cpufunc.h projects/zfsd/head/sys/arm/include/intr.h projects/zfsd/head/sys/arm/include/machdep.h projects/zfsd/head/sys/arm/include/pcpu.h projects/zfsd/head/sys/arm/include/pl310.h projects/zfsd/head/sys/arm/include/pmap.h projects/zfsd/head/sys/arm/include/proc.h projects/zfsd/head/sys/arm/include/vfp.h projects/zfsd/head/sys/arm/include/vm.h projects/zfsd/head/sys/arm/include/vmparam.h projects/zfsd/head/sys/arm/lpc/if_lpe.c projects/zfsd/head/sys/arm/mv/mv_machdep.c projects/zfsd/head/sys/arm/s3c2xx0/s3c24x0_machdep.c projects/zfsd/head/sys/arm/sa11x0/assabet_machdep.c projects/zfsd/head/sys/arm/ti/am335x/am335x_scm_padconf.c projects/zfsd/head/sys/arm/ti/cpsw/if_cpsw.c projects/zfsd/head/sys/arm/ti/cpsw/if_cpswreg.h projects/zfsd/head/sys/arm/ti/cpsw/if_cpswvar.h projects/zfsd/head/sys/arm/ti/omap4/omap4_l2cache.c projects/zfsd/head/sys/arm/ti/omap4/omap4_smc.h projects/zfsd/head/sys/arm/ti/omap4/std.omap4 projects/zfsd/head/sys/arm/ti/ti_cpuid.c projects/zfsd/head/sys/arm/ti/ti_cpuid.h projects/zfsd/head/sys/arm/ti/ti_gpio.c projects/zfsd/head/sys/arm/ti/ti_scm.c projects/zfsd/head/sys/arm/xscale/i80321/ep80219_machdep.c projects/zfsd/head/sys/arm/xscale/i80321/iq31244_machdep.c projects/zfsd/head/sys/arm/xscale/i8134x/crb_machdep.c projects/zfsd/head/sys/arm/xscale/ixp425/avila_machdep.c projects/zfsd/head/sys/arm/xscale/ixp425/if_npe.c projects/zfsd/head/sys/arm/xscale/pxa/pxa_machdep.c projects/zfsd/head/sys/boot/arm/uboot/Makefile projects/zfsd/head/sys/boot/common/interp_forth.c projects/zfsd/head/sys/boot/common/load_elf.c projects/zfsd/head/sys/boot/common/module.c projects/zfsd/head/sys/boot/common/part.c projects/zfsd/head/sys/boot/efi/libefi/libefi.c projects/zfsd/head/sys/boot/fdt/dts/bcm2835-rpi-b.dts projects/zfsd/head/sys/boot/fdt/dts/beaglebone.dts projects/zfsd/head/sys/boot/fdt/dts/pandaboard.dts projects/zfsd/head/sys/boot/fdt/fdt_loader_cmd.c projects/zfsd/head/sys/boot/ficl/Makefile projects/zfsd/head/sys/boot/forth/beastie.4th.8 projects/zfsd/head/sys/boot/forth/check-password.4th projects/zfsd/head/sys/boot/forth/check-password.4th.8 projects/zfsd/head/sys/boot/forth/frames.4th projects/zfsd/head/sys/boot/forth/loader.4th.8 projects/zfsd/head/sys/boot/forth/loader.conf.5 projects/zfsd/head/sys/boot/forth/menu-commands.4th projects/zfsd/head/sys/boot/forth/menu.4th.8 projects/zfsd/head/sys/boot/forth/menu.rc projects/zfsd/head/sys/boot/forth/support.4th projects/zfsd/head/sys/boot/i386/efi/Makefile projects/zfsd/head/sys/boot/i386/efi/exec.c projects/zfsd/head/sys/boot/i386/efi/ldscript.amd64 projects/zfsd/head/sys/boot/i386/efi/reloc.c projects/zfsd/head/sys/boot/i386/libi386/bootinfo64.c projects/zfsd/head/sys/boot/i386/libi386/comconsole.c projects/zfsd/head/sys/boot/i386/libi386/devicename.c projects/zfsd/head/sys/boot/i386/libi386/pxe.c projects/zfsd/head/sys/boot/powerpc/ps3/Makefile projects/zfsd/head/sys/boot/powerpc/uboot/Makefile projects/zfsd/head/sys/boot/sparc64/boot1/boot1.c projects/zfsd/head/sys/boot/sparc64/loader/main.c projects/zfsd/head/sys/boot/uboot/common/metadata.c projects/zfsd/head/sys/boot/uboot/lib/copy.c projects/zfsd/head/sys/boot/uboot/lib/elf_freebsd.c projects/zfsd/head/sys/boot/userboot/libstand/Makefile projects/zfsd/head/sys/boot/userboot/userboot/Makefile projects/zfsd/head/sys/boot/userboot/userboot/conf.c projects/zfsd/head/sys/boot/userboot/userboot/elf32_freebsd.c projects/zfsd/head/sys/boot/userboot/userboot/main.c projects/zfsd/head/sys/bsm/audit_errno.h projects/zfsd/head/sys/bsm/audit_internal.h projects/zfsd/head/sys/bsm/audit_kevents.h projects/zfsd/head/sys/bsm/audit_record.h projects/zfsd/head/sys/cam/ata/ata_pmp.c projects/zfsd/head/sys/cam/cam_ccb.h projects/zfsd/head/sys/cam/cam_periph.c projects/zfsd/head/sys/cam/cam_xpt.c projects/zfsd/head/sys/cam/ctl/ctl.c projects/zfsd/head/sys/cam/ctl/ctl_frontend_cam_sim.c projects/zfsd/head/sys/cam/ctl/scsi_ctl.c projects/zfsd/head/sys/cam/scsi/scsi_all.c projects/zfsd/head/sys/cam/scsi/scsi_cd.c projects/zfsd/head/sys/cam/scsi/scsi_ch.c projects/zfsd/head/sys/cam/scsi/scsi_da.c projects/zfsd/head/sys/cam/scsi/scsi_enc.c projects/zfsd/head/sys/cam/scsi/scsi_enc_internal.h projects/zfsd/head/sys/cam/scsi/scsi_enc_ses.c projects/zfsd/head/sys/cam/scsi/scsi_pass.c projects/zfsd/head/sys/cam/scsi/scsi_sg.c projects/zfsd/head/sys/cam/scsi/scsi_target.c projects/zfsd/head/sys/cddl/boot/zfs/README projects/zfsd/head/sys/cddl/boot/zfs/zfsimpl.h projects/zfsd/head/sys/cddl/boot/zfs/zfssubr.c projects/zfsd/head/sys/cddl/compat/opensolaris/kern/opensolaris_kstat.c projects/zfsd/head/sys/cddl/compat/opensolaris/sys/byteorder.h projects/zfsd/head/sys/cddl/compat/opensolaris/sys/kmem.h projects/zfsd/head/sys/cddl/compat/opensolaris/sys/kstat.h projects/zfsd/head/sys/cddl/compat/opensolaris/sys/time.h projects/zfsd/head/sys/cddl/contrib/opensolaris/common/zfs/zfeature_common.c projects/zfsd/head/sys/cddl/contrib/opensolaris/common/zfs/zfeature_common.h projects/zfsd/head/sys/cddl/contrib/opensolaris/common/zfs/zfs_prop.c projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/Makefile.files projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/dtrace/fasttrap.c projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/gfs.c projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/bptree.c projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dbuf.c projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/ddt.c projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/ddt_zap.c projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu.c projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_diff.c projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_objset.c projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_send.c projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_traverse.c projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_tx.c projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_dataset.c projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_scan.c projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/lzjb.c projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/metaslab.c projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/refcount.c projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sa.c projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_misc.c projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/arc.h projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/ddt.h projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dmu_traverse.h projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dsl_pool.h projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/refcount.h projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/spa.h projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/spa_boot.h projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/spa_impl.h projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/vdev.h projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/vdev_impl.h projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zfs_context.h projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zfs_ioctl.h projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zfs_vfsops.h projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zio.h projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zio_compress.h projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/trim_map.c projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/txg.c projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_geom.c projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_label.c projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_queue.c projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_raidz.c projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zap_leaf.c projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_byteswap.c projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_fuid.c projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_log.c projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_rlock.c projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zil.c projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zio.c projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zio_compress.c projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zio_inject.c projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zvol.c projects/zfsd/head/sys/cddl/dev/dtrace/dtrace_debug.c projects/zfsd/head/sys/cddl/dev/dtrace/dtrace_ioctl.c projects/zfsd/head/sys/cddl/dev/dtrace/powerpc/dtrace_asm.S projects/zfsd/head/sys/cddl/dev/dtrace/powerpc/dtrace_isa.c projects/zfsd/head/sys/compat/linprocfs/linprocfs.c projects/zfsd/head/sys/compat/linux/linux_emul.c projects/zfsd/head/sys/compat/linux/linux_file.c projects/zfsd/head/sys/compat/linux/linux_file.h projects/zfsd/head/sys/compat/linux/linux_fork.c projects/zfsd/head/sys/compat/linux/linux_futex.c projects/zfsd/head/sys/compat/linux/linux_ioctl.h projects/zfsd/head/sys/compat/linux/linux_ipc.h projects/zfsd/head/sys/compat/linux/linux_mib.c projects/zfsd/head/sys/compat/linux/linux_misc.h projects/zfsd/head/sys/compat/linux/linux_signal.h projects/zfsd/head/sys/compat/linux/linux_socket.c projects/zfsd/head/sys/compat/linux/linux_socket.h projects/zfsd/head/sys/compat/linux/linux_sysctl.c projects/zfsd/head/sys/compat/linux/linux_time.c projects/zfsd/head/sys/compat/ndis/kern_ndis.c projects/zfsd/head/sys/conf/Makefile.arm projects/zfsd/head/sys/conf/NOTES projects/zfsd/head/sys/conf/files projects/zfsd/head/sys/conf/files.amd64 projects/zfsd/head/sys/conf/files.arm projects/zfsd/head/sys/conf/files.i386 projects/zfsd/head/sys/conf/files.mips projects/zfsd/head/sys/conf/kern.pre.mk projects/zfsd/head/sys/conf/ldscript.arm projects/zfsd/head/sys/conf/newvers.sh projects/zfsd/head/sys/conf/options projects/zfsd/head/sys/conf/options.arm projects/zfsd/head/sys/conf/options.mips projects/zfsd/head/sys/contrib/dev/acpica/changes.txt (contents, props changed) projects/zfsd/head/sys/contrib/dev/acpica/common/adfile.c projects/zfsd/head/sys/contrib/dev/acpica/common/adisasm.c projects/zfsd/head/sys/contrib/dev/acpica/common/adwalk.c projects/zfsd/head/sys/contrib/dev/acpica/common/ahpredef.c projects/zfsd/head/sys/contrib/dev/acpica/common/dmextern.c projects/zfsd/head/sys/contrib/dev/acpica/common/dmrestag.c projects/zfsd/head/sys/contrib/dev/acpica/common/dmtable.c projects/zfsd/head/sys/contrib/dev/acpica/common/dmtbdump.c projects/zfsd/head/sys/contrib/dev/acpica/common/dmtbinfo.c projects/zfsd/head/sys/contrib/dev/acpica/common/getopt.c projects/zfsd/head/sys/contrib/dev/acpica/compiler/aslanalyze.c projects/zfsd/head/sys/contrib/dev/acpica/compiler/aslbtypes.c projects/zfsd/head/sys/contrib/dev/acpica/compiler/aslcodegen.c projects/zfsd/head/sys/contrib/dev/acpica/compiler/aslcompile.c projects/zfsd/head/sys/contrib/dev/acpica/compiler/aslcompiler.h projects/zfsd/head/sys/contrib/dev/acpica/compiler/aslcompiler.l projects/zfsd/head/sys/contrib/dev/acpica/compiler/aslcompiler.y projects/zfsd/head/sys/contrib/dev/acpica/compiler/asldefine.h projects/zfsd/head/sys/contrib/dev/acpica/compiler/aslerror.c projects/zfsd/head/sys/contrib/dev/acpica/compiler/aslfiles.c projects/zfsd/head/sys/contrib/dev/acpica/compiler/aslfold.c projects/zfsd/head/sys/contrib/dev/acpica/compiler/aslglobal.h projects/zfsd/head/sys/contrib/dev/acpica/compiler/asllength.c projects/zfsd/head/sys/contrib/dev/acpica/compiler/asllisting.c projects/zfsd/head/sys/contrib/dev/acpica/compiler/aslload.c projects/zfsd/head/sys/contrib/dev/acpica/compiler/asllookup.c projects/zfsd/head/sys/contrib/dev/acpica/compiler/aslmain.c projects/zfsd/head/sys/contrib/dev/acpica/compiler/aslmap.c projects/zfsd/head/sys/contrib/dev/acpica/compiler/aslmessages.h projects/zfsd/head/sys/contrib/dev/acpica/compiler/aslopcodes.c projects/zfsd/head/sys/contrib/dev/acpica/compiler/asloperands.c projects/zfsd/head/sys/contrib/dev/acpica/compiler/aslopt.c projects/zfsd/head/sys/contrib/dev/acpica/compiler/aslpredef.c projects/zfsd/head/sys/contrib/dev/acpica/compiler/aslresource.c projects/zfsd/head/sys/contrib/dev/acpica/compiler/aslrestype1.c projects/zfsd/head/sys/contrib/dev/acpica/compiler/aslrestype1i.c projects/zfsd/head/sys/contrib/dev/acpica/compiler/aslrestype2.c projects/zfsd/head/sys/contrib/dev/acpica/compiler/aslrestype2d.c projects/zfsd/head/sys/contrib/dev/acpica/compiler/aslrestype2e.c projects/zfsd/head/sys/contrib/dev/acpica/compiler/aslrestype2q.c projects/zfsd/head/sys/contrib/dev/acpica/compiler/aslrestype2s.c projects/zfsd/head/sys/contrib/dev/acpica/compiler/aslrestype2w.c projects/zfsd/head/sys/contrib/dev/acpica/compiler/aslstartup.c projects/zfsd/head/sys/contrib/dev/acpica/compiler/aslstubs.c projects/zfsd/head/sys/contrib/dev/acpica/compiler/aslsupport.l projects/zfsd/head/sys/contrib/dev/acpica/compiler/asltransform.c projects/zfsd/head/sys/contrib/dev/acpica/compiler/asltree.c projects/zfsd/head/sys/contrib/dev/acpica/compiler/asltypes.h projects/zfsd/head/sys/contrib/dev/acpica/compiler/aslutils.c projects/zfsd/head/sys/contrib/dev/acpica/compiler/asluuid.c projects/zfsd/head/sys/contrib/dev/acpica/compiler/aslwalks.c projects/zfsd/head/sys/contrib/dev/acpica/compiler/dtcompile.c projects/zfsd/head/sys/contrib/dev/acpica/compiler/dtcompiler.h projects/zfsd/head/sys/contrib/dev/acpica/compiler/dtexpress.c projects/zfsd/head/sys/contrib/dev/acpica/compiler/dtfield.c projects/zfsd/head/sys/contrib/dev/acpica/compiler/dtio.c projects/zfsd/head/sys/contrib/dev/acpica/compiler/dtparser.l projects/zfsd/head/sys/contrib/dev/acpica/compiler/dtparser.y projects/zfsd/head/sys/contrib/dev/acpica/compiler/dtsubtable.c projects/zfsd/head/sys/contrib/dev/acpica/compiler/dttable.c projects/zfsd/head/sys/contrib/dev/acpica/compiler/dttemplate.c projects/zfsd/head/sys/contrib/dev/acpica/compiler/dttemplate.h projects/zfsd/head/sys/contrib/dev/acpica/compiler/dtutils.c projects/zfsd/head/sys/contrib/dev/acpica/compiler/preprocess.h projects/zfsd/head/sys/contrib/dev/acpica/compiler/prexpress.c projects/zfsd/head/sys/contrib/dev/acpica/compiler/prmacros.c projects/zfsd/head/sys/contrib/dev/acpica/compiler/prparser.l projects/zfsd/head/sys/contrib/dev/acpica/compiler/prparser.y projects/zfsd/head/sys/contrib/dev/acpica/compiler/prscan.c projects/zfsd/head/sys/contrib/dev/acpica/compiler/prutils.c projects/zfsd/head/sys/contrib/dev/acpica/components/debugger/dbcmds.c projects/zfsd/head/sys/contrib/dev/acpica/components/debugger/dbdisply.c projects/zfsd/head/sys/contrib/dev/acpica/components/debugger/dbexec.c projects/zfsd/head/sys/contrib/dev/acpica/components/debugger/dbfileio.c projects/zfsd/head/sys/contrib/dev/acpica/components/debugger/dbhistry.c projects/zfsd/head/sys/contrib/dev/acpica/components/debugger/dbinput.c projects/zfsd/head/sys/contrib/dev/acpica/components/debugger/dbmethod.c projects/zfsd/head/sys/contrib/dev/acpica/components/debugger/dbnames.c projects/zfsd/head/sys/contrib/dev/acpica/components/debugger/dbstats.c projects/zfsd/head/sys/contrib/dev/acpica/components/debugger/dbutils.c projects/zfsd/head/sys/contrib/dev/acpica/components/debugger/dbxface.c projects/zfsd/head/sys/contrib/dev/acpica/components/disassembler/dmbuffer.c projects/zfsd/head/sys/contrib/dev/acpica/components/disassembler/dmdeferred.c projects/zfsd/head/sys/contrib/dev/acpica/components/disassembler/dmnames.c projects/zfsd/head/sys/contrib/dev/acpica/components/disassembler/dmobject.c projects/zfsd/head/sys/contrib/dev/acpica/components/disassembler/dmopcode.c projects/zfsd/head/sys/contrib/dev/acpica/components/disassembler/dmresrc.c projects/zfsd/head/sys/contrib/dev/acpica/components/disassembler/dmresrcl.c projects/zfsd/head/sys/contrib/dev/acpica/components/disassembler/dmresrcl2.c projects/zfsd/head/sys/contrib/dev/acpica/components/disassembler/dmresrcs.c projects/zfsd/head/sys/contrib/dev/acpica/components/disassembler/dmutils.c projects/zfsd/head/sys/contrib/dev/acpica/components/disassembler/dmwalk.c projects/zfsd/head/sys/contrib/dev/acpica/components/dispatcher/dsargs.c projects/zfsd/head/sys/contrib/dev/acpica/components/dispatcher/dscontrol.c projects/zfsd/head/sys/contrib/dev/acpica/components/dispatcher/dsfield.c projects/zfsd/head/sys/contrib/dev/acpica/components/dispatcher/dsinit.c projects/zfsd/head/sys/contrib/dev/acpica/components/dispatcher/dsmethod.c projects/zfsd/head/sys/contrib/dev/acpica/components/dispatcher/dsmthdat.c projects/zfsd/head/sys/contrib/dev/acpica/components/dispatcher/dsobject.c projects/zfsd/head/sys/contrib/dev/acpica/components/dispatcher/dsopcode.c projects/zfsd/head/sys/contrib/dev/acpica/components/dispatcher/dsutils.c projects/zfsd/head/sys/contrib/dev/acpica/components/dispatcher/dswexec.c projects/zfsd/head/sys/contrib/dev/acpica/components/dispatcher/dswload.c projects/zfsd/head/sys/contrib/dev/acpica/components/dispatcher/dswload2.c projects/zfsd/head/sys/contrib/dev/acpica/components/dispatcher/dswscope.c projects/zfsd/head/sys/contrib/dev/acpica/components/dispatcher/dswstate.c projects/zfsd/head/sys/contrib/dev/acpica/components/events/evevent.c projects/zfsd/head/sys/contrib/dev/acpica/components/events/evglock.c projects/zfsd/head/sys/contrib/dev/acpica/components/events/evgpe.c projects/zfsd/head/sys/contrib/dev/acpica/components/events/evgpeblk.c projects/zfsd/head/sys/contrib/dev/acpica/components/events/evgpeinit.c projects/zfsd/head/sys/contrib/dev/acpica/components/events/evgpeutil.c projects/zfsd/head/sys/contrib/dev/acpica/components/events/evmisc.c projects/zfsd/head/sys/contrib/dev/acpica/components/events/evregion.c projects/zfsd/head/sys/contrib/dev/acpica/components/events/evrgnini.c projects/zfsd/head/sys/contrib/dev/acpica/components/events/evsci.c projects/zfsd/head/sys/contrib/dev/acpica/components/events/evxface.c projects/zfsd/head/sys/contrib/dev/acpica/components/events/evxfevnt.c projects/zfsd/head/sys/contrib/dev/acpica/components/events/evxfgpe.c projects/zfsd/head/sys/contrib/dev/acpica/components/events/evxfregn.c projects/zfsd/head/sys/contrib/dev/acpica/components/executer/exconfig.c projects/zfsd/head/sys/contrib/dev/acpica/components/executer/exconvrt.c projects/zfsd/head/sys/contrib/dev/acpica/components/executer/excreate.c projects/zfsd/head/sys/contrib/dev/acpica/components/executer/exdebug.c projects/zfsd/head/sys/contrib/dev/acpica/components/executer/exdump.c projects/zfsd/head/sys/contrib/dev/acpica/components/executer/exfield.c projects/zfsd/head/sys/contrib/dev/acpica/components/executer/exfldio.c projects/zfsd/head/sys/contrib/dev/acpica/components/executer/exmisc.c projects/zfsd/head/sys/contrib/dev/acpica/components/executer/exmutex.c projects/zfsd/head/sys/contrib/dev/acpica/components/executer/exnames.c projects/zfsd/head/sys/contrib/dev/acpica/components/executer/exoparg1.c projects/zfsd/head/sys/contrib/dev/acpica/components/executer/exoparg2.c projects/zfsd/head/sys/contrib/dev/acpica/components/executer/exoparg3.c projects/zfsd/head/sys/contrib/dev/acpica/components/executer/exoparg6.c projects/zfsd/head/sys/contrib/dev/acpica/components/executer/exprep.c projects/zfsd/head/sys/contrib/dev/acpica/components/executer/exregion.c projects/zfsd/head/sys/contrib/dev/acpica/components/executer/exresnte.c projects/zfsd/head/sys/contrib/dev/acpica/components/executer/exresolv.c projects/zfsd/head/sys/contrib/dev/acpica/components/executer/exresop.c projects/zfsd/head/sys/contrib/dev/acpica/components/executer/exstore.c projects/zfsd/head/sys/contrib/dev/acpica/components/executer/exstoren.c projects/zfsd/head/sys/contrib/dev/acpica/components/executer/exstorob.c projects/zfsd/head/sys/contrib/dev/acpica/components/executer/exsystem.c projects/zfsd/head/sys/contrib/dev/acpica/components/executer/exutils.c projects/zfsd/head/sys/contrib/dev/acpica/components/hardware/hwacpi.c projects/zfsd/head/sys/contrib/dev/acpica/components/hardware/hwesleep.c projects/zfsd/head/sys/contrib/dev/acpica/components/hardware/hwgpe.c projects/zfsd/head/sys/contrib/dev/acpica/components/hardware/hwpci.c projects/zfsd/head/sys/contrib/dev/acpica/components/hardware/hwregs.c projects/zfsd/head/sys/contrib/dev/acpica/components/hardware/hwsleep.c projects/zfsd/head/sys/contrib/dev/acpica/components/hardware/hwtimer.c projects/zfsd/head/sys/contrib/dev/acpica/components/hardware/hwvalid.c projects/zfsd/head/sys/contrib/dev/acpica/components/hardware/hwxface.c projects/zfsd/head/sys/contrib/dev/acpica/components/hardware/hwxfsleep.c projects/zfsd/head/sys/contrib/dev/acpica/components/namespace/nsaccess.c projects/zfsd/head/sys/contrib/dev/acpica/components/namespace/nsalloc.c projects/zfsd/head/sys/contrib/dev/acpica/components/namespace/nsdump.c projects/zfsd/head/sys/contrib/dev/acpica/components/namespace/nsdumpdv.c projects/zfsd/head/sys/contrib/dev/acpica/components/namespace/nseval.c projects/zfsd/head/sys/contrib/dev/acpica/components/namespace/nsinit.c projects/zfsd/head/sys/contrib/dev/acpica/components/namespace/nsload.c projects/zfsd/head/sys/contrib/dev/acpica/components/namespace/nsnames.c projects/zfsd/head/sys/contrib/dev/acpica/components/namespace/nsobject.c projects/zfsd/head/sys/contrib/dev/acpica/components/namespace/nsparse.c projects/zfsd/head/sys/contrib/dev/acpica/components/namespace/nspredef.c projects/zfsd/head/sys/contrib/dev/acpica/components/namespace/nsrepair.c projects/zfsd/head/sys/contrib/dev/acpica/components/namespace/nsrepair2.c projects/zfsd/head/sys/contrib/dev/acpica/components/namespace/nssearch.c projects/zfsd/head/sys/contrib/dev/acpica/components/namespace/nsutils.c projects/zfsd/head/sys/contrib/dev/acpica/components/namespace/nswalk.c projects/zfsd/head/sys/contrib/dev/acpica/components/namespace/nsxfeval.c projects/zfsd/head/sys/contrib/dev/acpica/components/namespace/nsxfname.c projects/zfsd/head/sys/contrib/dev/acpica/components/namespace/nsxfobj.c projects/zfsd/head/sys/contrib/dev/acpica/components/parser/psargs.c projects/zfsd/head/sys/contrib/dev/acpica/components/parser/psloop.c projects/zfsd/head/sys/contrib/dev/acpica/components/parser/psopcode.c projects/zfsd/head/sys/contrib/dev/acpica/components/parser/psparse.c projects/zfsd/head/sys/contrib/dev/acpica/components/parser/psscope.c projects/zfsd/head/sys/contrib/dev/acpica/components/parser/pstree.c projects/zfsd/head/sys/contrib/dev/acpica/components/parser/psutils.c projects/zfsd/head/sys/contrib/dev/acpica/components/parser/pswalk.c projects/zfsd/head/sys/contrib/dev/acpica/components/parser/psxface.c projects/zfsd/head/sys/contrib/dev/acpica/components/resources/rsaddr.c projects/zfsd/head/sys/contrib/dev/acpica/components/resources/rscalc.c projects/zfsd/head/sys/contrib/dev/acpica/components/resources/rscreate.c projects/zfsd/head/sys/contrib/dev/acpica/components/resources/rsdump.c projects/zfsd/head/sys/contrib/dev/acpica/components/resources/rsinfo.c projects/zfsd/head/sys/contrib/dev/acpica/components/resources/rsio.c projects/zfsd/head/sys/contrib/dev/acpica/components/resources/rsirq.c projects/zfsd/head/sys/contrib/dev/acpica/components/resources/rslist.c projects/zfsd/head/sys/contrib/dev/acpica/components/resources/rsmemory.c projects/zfsd/head/sys/contrib/dev/acpica/components/resources/rsmisc.c projects/zfsd/head/sys/contrib/dev/acpica/components/resources/rsserial.c projects/zfsd/head/sys/contrib/dev/acpica/components/resources/rsutils.c projects/zfsd/head/sys/contrib/dev/acpica/components/resources/rsxface.c projects/zfsd/head/sys/contrib/dev/acpica/components/tables/tbfadt.c projects/zfsd/head/sys/contrib/dev/acpica/components/tables/tbfind.c projects/zfsd/head/sys/contrib/dev/acpica/components/tables/tbinstal.c projects/zfsd/head/sys/contrib/dev/acpica/components/tables/tbutils.c projects/zfsd/head/sys/contrib/dev/acpica/components/tables/tbxface.c projects/zfsd/head/sys/contrib/dev/acpica/components/tables/tbxfload.c projects/zfsd/head/sys/contrib/dev/acpica/components/tables/tbxfroot.c projects/zfsd/head/sys/contrib/dev/acpica/components/utilities/utaddress.c projects/zfsd/head/sys/contrib/dev/acpica/components/utilities/utalloc.c projects/zfsd/head/sys/contrib/dev/acpica/components/utilities/utcache.c projects/zfsd/head/sys/contrib/dev/acpica/components/utilities/utcopy.c projects/zfsd/head/sys/contrib/dev/acpica/components/utilities/utdebug.c projects/zfsd/head/sys/contrib/dev/acpica/components/utilities/utdecode.c projects/zfsd/head/sys/contrib/dev/acpica/components/utilities/utdelete.c projects/zfsd/head/sys/contrib/dev/acpica/components/utilities/uteval.c projects/zfsd/head/sys/contrib/dev/acpica/components/utilities/utexcep.c projects/zfsd/head/sys/contrib/dev/acpica/components/utilities/utglobal.c projects/zfsd/head/sys/contrib/dev/acpica/components/utilities/utids.c projects/zfsd/head/sys/contrib/dev/acpica/components/utilities/utinit.c projects/zfsd/head/sys/contrib/dev/acpica/components/utilities/utlock.c projects/zfsd/head/sys/contrib/dev/acpica/components/utilities/utmath.c projects/zfsd/head/sys/contrib/dev/acpica/components/utilities/utmisc.c projects/zfsd/head/sys/contrib/dev/acpica/components/utilities/utmutex.c projects/zfsd/head/sys/contrib/dev/acpica/components/utilities/utobject.c projects/zfsd/head/sys/contrib/dev/acpica/components/utilities/utosi.c projects/zfsd/head/sys/contrib/dev/acpica/components/utilities/utresrc.c projects/zfsd/head/sys/contrib/dev/acpica/components/utilities/utstate.c projects/zfsd/head/sys/contrib/dev/acpica/components/utilities/uttrack.c projects/zfsd/head/sys/contrib/dev/acpica/components/utilities/utxface.c projects/zfsd/head/sys/contrib/dev/acpica/components/utilities/utxferror.c projects/zfsd/head/sys/contrib/dev/acpica/components/utilities/utxfinit.c projects/zfsd/head/sys/contrib/dev/acpica/components/utilities/utxfmutex.c projects/zfsd/head/sys/contrib/dev/acpica/include/acapps.h projects/zfsd/head/sys/contrib/dev/acpica/include/acbuffer.h projects/zfsd/head/sys/contrib/dev/acpica/include/accommon.h projects/zfsd/head/sys/contrib/dev/acpica/include/acconfig.h projects/zfsd/head/sys/contrib/dev/acpica/include/acdebug.h projects/zfsd/head/sys/contrib/dev/acpica/include/acdisasm.h projects/zfsd/head/sys/contrib/dev/acpica/include/acdispat.h projects/zfsd/head/sys/contrib/dev/acpica/include/acevents.h projects/zfsd/head/sys/contrib/dev/acpica/include/acexcep.h projects/zfsd/head/sys/contrib/dev/acpica/include/acglobal.h projects/zfsd/head/sys/contrib/dev/acpica/include/achware.h projects/zfsd/head/sys/contrib/dev/acpica/include/acinterp.h projects/zfsd/head/sys/contrib/dev/acpica/include/aclocal.h projects/zfsd/head/sys/contrib/dev/acpica/include/acmacros.h projects/zfsd/head/sys/contrib/dev/acpica/include/acnames.h projects/zfsd/head/sys/contrib/dev/acpica/include/acnamesp.h projects/zfsd/head/sys/contrib/dev/acpica/include/acobject.h projects/zfsd/head/sys/contrib/dev/acpica/include/acopcode.h projects/zfsd/head/sys/contrib/dev/acpica/include/acoutput.h projects/zfsd/head/sys/contrib/dev/acpica/include/acparser.h projects/zfsd/head/sys/contrib/dev/acpica/include/acpi.h projects/zfsd/head/sys/contrib/dev/acpica/include/acpiosxf.h projects/zfsd/head/sys/contrib/dev/acpica/include/acpixf.h projects/zfsd/head/sys/contrib/dev/acpica/include/acpredef.h projects/zfsd/head/sys/contrib/dev/acpica/include/acresrc.h projects/zfsd/head/sys/contrib/dev/acpica/include/acrestyp.h projects/zfsd/head/sys/contrib/dev/acpica/include/acstruct.h projects/zfsd/head/sys/contrib/dev/acpica/include/actables.h projects/zfsd/head/sys/contrib/dev/acpica/include/actbl.h projects/zfsd/head/sys/contrib/dev/acpica/include/actbl1.h projects/zfsd/head/sys/contrib/dev/acpica/include/actbl2.h projects/zfsd/head/sys/contrib/dev/acpica/include/actbl3.h projects/zfsd/head/sys/contrib/dev/acpica/include/actypes.h projects/zfsd/head/sys/contrib/dev/acpica/include/acutils.h projects/zfsd/head/sys/contrib/dev/acpica/include/amlcode.h projects/zfsd/head/sys/contrib/dev/acpica/include/amlresrc.h projects/zfsd/head/sys/contrib/dev/acpica/include/platform/acenv.h projects/zfsd/head/sys/contrib/dev/acpica/include/platform/acfreebsd.h projects/zfsd/head/sys/contrib/dev/acpica/include/platform/acgcc.h projects/zfsd/head/sys/contrib/dev/acpica/os_specific/service_layers/osunixxf.c projects/zfsd/head/sys/contrib/octeon-sdk/cvmx-app-init.h projects/zfsd/head/sys/contrib/octeon-sdk/cvmx-helper-board.c projects/zfsd/head/sys/crypto/aesni/aesni_wrap.c projects/zfsd/head/sys/dev/aac/aac_cam.c projects/zfsd/head/sys/dev/acpi_support/acpi_asus_wmi.c projects/zfsd/head/sys/dev/acpi_support/acpi_fujitsu.c (contents, props changed) projects/zfsd/head/sys/dev/acpi_support/acpi_hp.c projects/zfsd/head/sys/dev/acpi_support/acpi_ibm.c (contents, props changed) projects/zfsd/head/sys/dev/acpi_support/acpi_panasonic.c (contents, props changed) projects/zfsd/head/sys/dev/acpi_support/acpi_sony.c (contents, props changed) projects/zfsd/head/sys/dev/acpi_support/acpi_toshiba.c (contents, props changed) projects/zfsd/head/sys/dev/acpica/Osd/OsdSchedule.c projects/zfsd/head/sys/dev/acpica/acpi.c (contents, props changed) projects/zfsd/head/sys/dev/acpica/acpi_acad.c (contents, props changed) projects/zfsd/head/sys/dev/acpica/acpi_button.c (contents, props changed) projects/zfsd/head/sys/dev/acpica/acpi_cmbat.c (contents, props changed) projects/zfsd/head/sys/dev/acpica/acpi_cpu.c projects/zfsd/head/sys/dev/acpica/acpi_dock.c (contents, props changed) projects/zfsd/head/sys/dev/acpica/acpi_ec.c (contents, props changed) projects/zfsd/head/sys/dev/acpica/acpi_hpet.c (contents, props changed) projects/zfsd/head/sys/dev/acpica/acpi_lid.c (contents, props changed) projects/zfsd/head/sys/dev/acpica/acpi_pci.c (contents, props changed) projects/zfsd/head/sys/dev/acpica/acpi_pci_link.c (contents, props changed) projects/zfsd/head/sys/dev/acpica/acpi_pcib.c projects/zfsd/head/sys/dev/acpica/acpi_pcib_pci.c (contents, props changed) projects/zfsd/head/sys/dev/acpica/acpi_perf.c (contents, props changed) projects/zfsd/head/sys/dev/acpica/acpi_resource.c (contents, props changed) projects/zfsd/head/sys/dev/acpica/acpi_smbat.c (contents, props changed) projects/zfsd/head/sys/dev/acpica/acpi_thermal.c (contents, props changed) projects/zfsd/head/sys/dev/acpica/acpi_throttle.c (contents, props changed) projects/zfsd/head/sys/dev/acpica/acpi_timer.c (contents, props changed) projects/zfsd/head/sys/dev/adlink/adlink.c (contents, props changed) projects/zfsd/head/sys/dev/advansys/advansys.c projects/zfsd/head/sys/dev/advansys/adwcam.c projects/zfsd/head/sys/dev/age/if_age.c projects/zfsd/head/sys/dev/age/if_agevar.h projects/zfsd/head/sys/dev/agp/agp_ali.c projects/zfsd/head/sys/dev/agp/agp_amd.c projects/zfsd/head/sys/dev/agp/agp_amd64.c projects/zfsd/head/sys/dev/agp/agp_ati.c projects/zfsd/head/sys/dev/agp/agp_i810.c projects/zfsd/head/sys/dev/agp/agp_intel.c projects/zfsd/head/sys/dev/agp/agp_sis.c projects/zfsd/head/sys/dev/agp/agp_via.c projects/zfsd/head/sys/dev/aha/aha.c projects/zfsd/head/sys/dev/ahb/ahb.c projects/zfsd/head/sys/dev/ahci/ahci.c projects/zfsd/head/sys/dev/aic/aic.c projects/zfsd/head/sys/dev/aic7xxx/aic79xx_osm.c projects/zfsd/head/sys/dev/aic7xxx/aic7xxx_osm.c projects/zfsd/head/sys/dev/aic7xxx/aicasm/aicasm_gram.y projects/zfsd/head/sys/dev/alc/if_alc.c projects/zfsd/head/sys/dev/ale/if_ale.c projects/zfsd/head/sys/dev/altera/avgen/altera_avgen.c projects/zfsd/head/sys/dev/altera/avgen/altera_avgen.h projects/zfsd/head/sys/dev/altera/jtag_uart/altera_jtag_uart.h projects/zfsd/head/sys/dev/altera/jtag_uart/altera_jtag_uart_cons.c projects/zfsd/head/sys/dev/altera/jtag_uart/altera_jtag_uart_nexus.c projects/zfsd/head/sys/dev/altera/sdcard/altera_sdcard.c projects/zfsd/head/sys/dev/altera/sdcard/altera_sdcard.h projects/zfsd/head/sys/dev/altera/sdcard/altera_sdcard_io.c projects/zfsd/head/sys/dev/altera/sdcard/altera_sdcard_nexus.c projects/zfsd/head/sys/dev/amdsbwd/amdsbwd.c projects/zfsd/head/sys/dev/amdtemp/amdtemp.c (contents, props changed) projects/zfsd/head/sys/dev/amr/amr_cam.c projects/zfsd/head/sys/dev/an/if_an.c projects/zfsd/head/sys/dev/arcmsr/arcmsr.c projects/zfsd/head/sys/dev/arcmsr/arcmsr.h projects/zfsd/head/sys/dev/ata/ata-all.c projects/zfsd/head/sys/dev/ata/ata-all.h projects/zfsd/head/sys/dev/ata/ata-dma.c projects/zfsd/head/sys/dev/ata/ata-lowlevel.c projects/zfsd/head/sys/dev/ata/ata-pci.h projects/zfsd/head/sys/dev/ata/ata-raid.c projects/zfsd/head/sys/dev/ata/atapi-cam.c projects/zfsd/head/sys/dev/ata/chipsets/ata-ati.c projects/zfsd/head/sys/dev/ata/chipsets/ata-intel.c projects/zfsd/head/sys/dev/ath/ath_dfs/null/dfs_null.c projects/zfsd/head/sys/dev/ath/ath_hal/ah.c projects/zfsd/head/sys/dev/ath/ath_hal/ah.h projects/zfsd/head/sys/dev/ath/ath_hal/ah_internal.h projects/zfsd/head/sys/dev/ath/ath_hal/ah_regdomain.c projects/zfsd/head/sys/dev/ath/ath_hal/ar5210/ar5210.h projects/zfsd/head/sys/dev/ath/ath_hal/ar5210/ar5210_attach.c projects/zfsd/head/sys/dev/ath/ath_hal/ar5210/ar5210_misc.c projects/zfsd/head/sys/dev/ath/ath_hal/ar5211/ar5211.h projects/zfsd/head/sys/dev/ath/ath_hal/ar5211/ar5211_attach.c projects/zfsd/head/sys/dev/ath/ath_hal/ar5211/ar5211_misc.c projects/zfsd/head/sys/dev/ath/ath_hal/ar5212/ar5212.h projects/zfsd/head/sys/dev/ath/ath_hal/ar5212/ar5212_attach.c projects/zfsd/head/sys/dev/ath/ath_hal/ar5212/ar5212_misc.c projects/zfsd/head/sys/dev/ath/ath_hal/ar5416/ar5416.h projects/zfsd/head/sys/dev/ath/ath_hal/ar5416/ar5416_attach.c projects/zfsd/head/sys/dev/ath/ath_hal/ar5416/ar5416_btcoex.c projects/zfsd/head/sys/dev/ath/ath_hal/ar5416/ar5416_interrupts.c projects/zfsd/head/sys/dev/ath/ath_hal/ar5416/ar5416_misc.c projects/zfsd/head/sys/dev/ath/ath_hal/ar5416/ar5416_reset.c projects/zfsd/head/sys/dev/ath/ath_hal/ar5416/ar5416_xmit.c projects/zfsd/head/sys/dev/ath/ath_hal/ar5416/ar5416phy.h projects/zfsd/head/sys/dev/ath/ath_hal/ar5416/ar5416reg.h projects/zfsd/head/sys/dev/ath/ath_hal/ar9002/ar9280_attach.c projects/zfsd/head/sys/dev/ath/ath_hal/ar9002/ar9285_attach.c projects/zfsd/head/sys/dev/ath/ath_hal/ar9002/ar9285_btcoex.c projects/zfsd/head/sys/dev/ath/ath_hal/ar9002/ar9287_attach.c projects/zfsd/head/sys/dev/ath/ath_rate/sample/sample.c projects/zfsd/head/sys/dev/ath/if_ath.c projects/zfsd/head/sys/dev/ath/if_ath_ahb.c projects/zfsd/head/sys/dev/ath/if_ath_alq.c projects/zfsd/head/sys/dev/ath/if_ath_alq.h projects/zfsd/head/sys/dev/ath/if_ath_beacon.c projects/zfsd/head/sys/dev/ath/if_ath_misc.h projects/zfsd/head/sys/dev/ath/if_ath_pci.c projects/zfsd/head/sys/dev/ath/if_ath_rx.c projects/zfsd/head/sys/dev/ath/if_ath_rx_edma.c projects/zfsd/head/sys/dev/ath/if_ath_sysctl.c projects/zfsd/head/sys/dev/ath/if_ath_tdma.c projects/zfsd/head/sys/dev/ath/if_ath_tx.c projects/zfsd/head/sys/dev/ath/if_ath_tx.h projects/zfsd/head/sys/dev/ath/if_ath_tx_edma.c projects/zfsd/head/sys/dev/ath/if_ath_tx_ht.c projects/zfsd/head/sys/dev/ath/if_athdfs.h projects/zfsd/head/sys/dev/ath/if_athioctl.h projects/zfsd/head/sys/dev/ath/if_athvar.h projects/zfsd/head/sys/dev/atkbdc/atkbd.c projects/zfsd/head/sys/dev/atkbdc/atkbd_atkbdc.c projects/zfsd/head/sys/dev/atkbdc/atkbdreg.h projects/zfsd/head/sys/dev/atkbdc/psm.c projects/zfsd/head/sys/dev/auxio/auxio.c (contents, props changed) projects/zfsd/head/sys/dev/bce/if_bce.c projects/zfsd/head/sys/dev/bfe/if_bfe.c projects/zfsd/head/sys/dev/bge/if_bge.c projects/zfsd/head/sys/dev/bge/if_bgereg.h projects/zfsd/head/sys/dev/bm/if_bm.c projects/zfsd/head/sys/dev/buslogic/bt.c projects/zfsd/head/sys/dev/bwi/if_bwi.c projects/zfsd/head/sys/dev/bwn/if_bwn.c projects/zfsd/head/sys/dev/bxe/if_bxe.c projects/zfsd/head/sys/dev/cas/if_cas.c projects/zfsd/head/sys/dev/ce/if_ce.c (contents, props changed) projects/zfsd/head/sys/dev/cfi/cfi_bus_fdt.c projects/zfsd/head/sys/dev/cfi/cfi_bus_ixp4xx.c projects/zfsd/head/sys/dev/ciss/ciss.c projects/zfsd/head/sys/dev/ciss/cissreg.h projects/zfsd/head/sys/dev/ciss/cissvar.h projects/zfsd/head/sys/dev/cm/smc90cx6.c projects/zfsd/head/sys/dev/coretemp/coretemp.c (contents, props changed) projects/zfsd/head/sys/dev/cp/if_cp.c (contents, props changed) projects/zfsd/head/sys/dev/cpufreq/ichss.c (contents, props changed) projects/zfsd/head/sys/dev/cs/if_cs.c projects/zfsd/head/sys/dev/ctau/if_ct.c (contents, props changed) projects/zfsd/head/sys/dev/cx/if_cx.c (contents, props changed) projects/zfsd/head/sys/dev/cxgb/cxgb_main.c projects/zfsd/head/sys/dev/cxgb/cxgb_sge.c projects/zfsd/head/sys/dev/cxgb/sys/uipc_mvec.c projects/zfsd/head/sys/dev/cxgbe/adapter.h projects/zfsd/head/sys/dev/cxgbe/common/common.h projects/zfsd/head/sys/dev/cxgbe/common/t4_hw.c projects/zfsd/head/sys/dev/cxgbe/common/t4_hw.h projects/zfsd/head/sys/dev/cxgbe/common/t4_msg.h projects/zfsd/head/sys/dev/cxgbe/firmware/t4fw_cfg.txt projects/zfsd/head/sys/dev/cxgbe/firmware/t4fw_interface.h projects/zfsd/head/sys/dev/cxgbe/offload.h projects/zfsd/head/sys/dev/cxgbe/t4_l2t.c projects/zfsd/head/sys/dev/cxgbe/t4_l2t.h projects/zfsd/head/sys/dev/cxgbe/t4_main.c projects/zfsd/head/sys/dev/cxgbe/t4_sge.c projects/zfsd/head/sys/dev/cxgbe/tom/t4_connect.c projects/zfsd/head/sys/dev/cxgbe/tom/t4_cpl_io.c projects/zfsd/head/sys/dev/cxgbe/tom/t4_ddp.c projects/zfsd/head/sys/dev/cxgbe/tom/t4_listen.c projects/zfsd/head/sys/dev/cxgbe/tom/t4_tom.c projects/zfsd/head/sys/dev/cxgbe/tom/t4_tom.h projects/zfsd/head/sys/dev/cxgbe/tom/t4_tom_l2t.c projects/zfsd/head/sys/dev/dc/if_dc.c projects/zfsd/head/sys/dev/dcons/dcons_os.c projects/zfsd/head/sys/dev/de/if_de.c projects/zfsd/head/sys/dev/digi/digi_isa.c (contents, props changed) projects/zfsd/head/sys/dev/digi/digi_pci.c (contents, props changed) projects/zfsd/head/sys/dev/dpt/dpt_scsi.c projects/zfsd/head/sys/dev/e1000/e1000_82571.c projects/zfsd/head/sys/dev/e1000/e1000_82575.c projects/zfsd/head/sys/dev/e1000/e1000_82575.h projects/zfsd/head/sys/dev/e1000/e1000_api.c projects/zfsd/head/sys/dev/e1000/e1000_api.h projects/zfsd/head/sys/dev/e1000/e1000_defines.h projects/zfsd/head/sys/dev/e1000/e1000_hw.h projects/zfsd/head/sys/dev/e1000/e1000_i210.c projects/zfsd/head/sys/dev/e1000/e1000_i210.h projects/zfsd/head/sys/dev/e1000/e1000_ich8lan.c projects/zfsd/head/sys/dev/e1000/e1000_ich8lan.h projects/zfsd/head/sys/dev/e1000/e1000_mac.c projects/zfsd/head/sys/dev/e1000/e1000_mac.h projects/zfsd/head/sys/dev/e1000/e1000_manage.c projects/zfsd/head/sys/dev/e1000/e1000_nvm.c projects/zfsd/head/sys/dev/e1000/e1000_nvm.h projects/zfsd/head/sys/dev/e1000/e1000_osdep.h projects/zfsd/head/sys/dev/e1000/e1000_phy.c projects/zfsd/head/sys/dev/e1000/e1000_phy.h projects/zfsd/head/sys/dev/e1000/e1000_regs.h projects/zfsd/head/sys/dev/e1000/if_em.c (contents, props changed) projects/zfsd/head/sys/dev/e1000/if_igb.c (contents, props changed) projects/zfsd/head/sys/dev/e1000/if_lem.c projects/zfsd/head/sys/dev/ed/if_ed.c projects/zfsd/head/sys/dev/en/midway.c projects/zfsd/head/sys/dev/ep/if_ep.c projects/zfsd/head/sys/dev/ep/if_ep_eisa.c (contents, props changed) projects/zfsd/head/sys/dev/ep/if_ep_isa.c (contents, props changed) projects/zfsd/head/sys/dev/ep/if_ep_mca.c (contents, props changed) projects/zfsd/head/sys/dev/ep/if_ep_pccard.c (contents, props changed) projects/zfsd/head/sys/dev/et/if_et.c projects/zfsd/head/sys/dev/ex/if_ex.c projects/zfsd/head/sys/dev/fatm/if_fatm.c projects/zfsd/head/sys/dev/fdc/fdc_acpi.c (contents, props changed) projects/zfsd/head/sys/dev/fdt/fdt_common.c projects/zfsd/head/sys/dev/fdt/fdt_common.h projects/zfsd/head/sys/dev/fdt/fdt_mips.c projects/zfsd/head/sys/dev/fdt/fdtbus.c projects/zfsd/head/sys/dev/fe/if_fe.c projects/zfsd/head/sys/dev/firewire/fwohci.c projects/zfsd/head/sys/dev/firewire/if_fwe.c projects/zfsd/head/sys/dev/firewire/if_fwip.c projects/zfsd/head/sys/dev/firewire/sbp.c projects/zfsd/head/sys/dev/fxp/if_fxp.c projects/zfsd/head/sys/dev/gem/if_gem.c projects/zfsd/head/sys/dev/gxemul/ether/if_gx.c projects/zfsd/head/sys/dev/hatm/if_hatm_intr.c projects/zfsd/head/sys/dev/hatm/if_hatm_tx.c projects/zfsd/head/sys/dev/hifn/hifn7751.c projects/zfsd/head/sys/dev/hme/if_hme.c projects/zfsd/head/sys/dev/hpt27xx/hpt27xx_config.c projects/zfsd/head/sys/dev/hpt27xx/os_bsd.h projects/zfsd/head/sys/dev/hpt27xx/osm_bsd.c projects/zfsd/head/sys/dev/hptiop/hptiop.c projects/zfsd/head/sys/dev/hptmv/entry.c projects/zfsd/head/sys/dev/hptrr/hptrr_osm_bsd.c projects/zfsd/head/sys/dev/hwpmc/hwpmc_core.c projects/zfsd/head/sys/dev/hwpmc/hwpmc_intel.c projects/zfsd/head/sys/dev/hwpmc/hwpmc_mod.c projects/zfsd/head/sys/dev/hwpmc/hwpmc_soft.c projects/zfsd/head/sys/dev/hwpmc/pmc_events.h projects/zfsd/head/sys/dev/ichsmb/ichsmb_pci.c projects/zfsd/head/sys/dev/ichwd/ichwd.c projects/zfsd/head/sys/dev/ichwd/ichwd.h projects/zfsd/head/sys/dev/ie/if_ie.c projects/zfsd/head/sys/dev/if_ndis/if_ndis.c projects/zfsd/head/sys/dev/iicbus/ad7418.c (contents, props changed) projects/zfsd/head/sys/dev/iicbus/ds133x.c (contents, props changed) projects/zfsd/head/sys/dev/iicbus/ds1672.c (contents, props changed) projects/zfsd/head/sys/dev/iicbus/icee.c (contents, props changed) projects/zfsd/head/sys/dev/iir/iir.c projects/zfsd/head/sys/dev/ipw/if_ipw.c projects/zfsd/head/sys/dev/isci/isci_io_request.c projects/zfsd/head/sys/dev/isf/isf.c projects/zfsd/head/sys/dev/isf/isf.h projects/zfsd/head/sys/dev/isf/isf_nexus.c projects/zfsd/head/sys/dev/isp/isp.c projects/zfsd/head/sys/dev/isp/isp_pci.c projects/zfsd/head/sys/dev/isp/isp_sbus.c projects/zfsd/head/sys/dev/iwi/if_iwi.c projects/zfsd/head/sys/dev/iwn/if_iwn.c projects/zfsd/head/sys/dev/ixgb/if_ixgb.c (contents, props changed) projects/zfsd/head/sys/dev/ixgbe/ixgbe.c (contents, props changed) projects/zfsd/head/sys/dev/ixgbe/ixgbe.h projects/zfsd/head/sys/dev/ixgbe/ixv.c projects/zfsd/head/sys/dev/jme/if_jme.c projects/zfsd/head/sys/dev/le/lance.c projects/zfsd/head/sys/dev/led/led.c projects/zfsd/head/sys/dev/lge/if_lge.c projects/zfsd/head/sys/dev/lmc/if_lmc.c projects/zfsd/head/sys/dev/malo/if_malo.c projects/zfsd/head/sys/dev/mcd/mcd.c projects/zfsd/head/sys/dev/mfi/mfi.c projects/zfsd/head/sys/dev/mfi/mfi_cam.c (contents, props changed) projects/zfsd/head/sys/dev/mfi/mfivar.h projects/zfsd/head/sys/dev/mge/if_mge.c projects/zfsd/head/sys/dev/mii/brgphy.c projects/zfsd/head/sys/dev/mii/miidevs projects/zfsd/head/sys/dev/mly/mly.c projects/zfsd/head/sys/dev/mly/mlyvar.h projects/zfsd/head/sys/dev/mmc/mmc.c projects/zfsd/head/sys/dev/mmc/mmcreg.h projects/zfsd/head/sys/dev/mn/if_mn.c (contents, props changed) projects/zfsd/head/sys/dev/mps/mps.c projects/zfsd/head/sys/dev/mps/mps_sas.c projects/zfsd/head/sys/dev/mps/mpsvar.h projects/zfsd/head/sys/dev/mpt/mpt_cam.c projects/zfsd/head/sys/dev/msk/if_msk.c projects/zfsd/head/sys/dev/mvs/mvs.c projects/zfsd/head/sys/dev/mwl/if_mwl.c projects/zfsd/head/sys/dev/mxge/if_mxge.c (contents, props changed) projects/zfsd/head/sys/dev/mxge/if_mxge_var.h projects/zfsd/head/sys/dev/my/if_my.c (contents, props changed) projects/zfsd/head/sys/dev/nand/nand_id.c projects/zfsd/head/sys/dev/netmap/if_em_netmap.h projects/zfsd/head/sys/dev/netmap/if_igb_netmap.h projects/zfsd/head/sys/dev/netmap/if_lem_netmap.h projects/zfsd/head/sys/dev/netmap/if_re_netmap.h projects/zfsd/head/sys/dev/netmap/ixgbe_netmap.h projects/zfsd/head/sys/dev/netmap/netmap.c projects/zfsd/head/sys/dev/netmap/netmap_kern.h projects/zfsd/head/sys/dev/netmap/netmap_mem2.c projects/zfsd/head/sys/dev/nfe/if_nfe.c projects/zfsd/head/sys/dev/nge/if_nge.c projects/zfsd/head/sys/dev/nve/if_nve.c projects/zfsd/head/sys/dev/nvme/nvme.c projects/zfsd/head/sys/dev/nvme/nvme_ctrlr.c projects/zfsd/head/sys/dev/nvme/nvme_private.h projects/zfsd/head/sys/dev/nvram2env/nvram2env.c (contents, props changed) projects/zfsd/head/sys/dev/nxge/if_nxge.c (contents, props changed) projects/zfsd/head/sys/dev/oce/oce_if.c (contents, props changed) projects/zfsd/head/sys/dev/oce/oce_if.h projects/zfsd/head/sys/dev/patm/if_patm_intr.c projects/zfsd/head/sys/dev/patm/if_patm_rx.c projects/zfsd/head/sys/dev/patm/if_patm_tx.c projects/zfsd/head/sys/dev/pci/pci.c projects/zfsd/head/sys/dev/pci/pci_user.c projects/zfsd/head/sys/dev/pcn/if_pcn.c projects/zfsd/head/sys/dev/pdq/pdq_freebsd.h projects/zfsd/head/sys/dev/pdq/pdq_ifsubr.c projects/zfsd/head/sys/dev/pdq/pdqvar.h projects/zfsd/head/sys/dev/ppc/ppc.c projects/zfsd/head/sys/dev/ppc/ppc_isa.c projects/zfsd/head/sys/dev/puc/puc.c projects/zfsd/head/sys/dev/qlxgb/qla_os.c projects/zfsd/head/sys/dev/ral/rt2560.c projects/zfsd/head/sys/dev/ral/rt2661.c projects/zfsd/head/sys/dev/ral/rt2860.c projects/zfsd/head/sys/dev/random/randomdev_soft.c projects/zfsd/head/sys/dev/re/if_re.c projects/zfsd/head/sys/dev/rt/if_rt.c projects/zfsd/head/sys/dev/safe/safe.c projects/zfsd/head/sys/dev/sbni/if_sbni.c projects/zfsd/head/sys/dev/sdhci/sdhci.c projects/zfsd/head/sys/dev/sdhci/sdhci.h projects/zfsd/head/sys/dev/sdhci/sdhci_if.m projects/zfsd/head/sys/dev/sdhci/sdhci_pci.c projects/zfsd/head/sys/dev/sf/if_sf.c projects/zfsd/head/sys/dev/sfxge/sfxge_dma.c projects/zfsd/head/sys/dev/sfxge/sfxge_tx.c projects/zfsd/head/sys/dev/sge/if_sge.c projects/zfsd/head/sys/dev/si/si.c projects/zfsd/head/sys/dev/siis/siis.c projects/zfsd/head/sys/dev/sis/if_sis.c projects/zfsd/head/sys/dev/sk/if_sk.c projects/zfsd/head/sys/dev/smc/if_smc.c projects/zfsd/head/sys/dev/sn/if_sn.c projects/zfsd/head/sys/dev/snc/dp83932.c projects/zfsd/head/sys/dev/sound/pci/emu10kx-midi.c (contents, props changed) projects/zfsd/head/sys/dev/sound/pci/emu10kx-pcm.c (contents, props changed) projects/zfsd/head/sys/dev/sound/pci/emu10kx.c (contents, props changed) projects/zfsd/head/sys/dev/sound/pci/hda/hdaa.c projects/zfsd/head/sys/dev/sound/pci/hda/hdaa_patches.c projects/zfsd/head/sys/dev/sound/pci/hda/hdac.c projects/zfsd/head/sys/dev/sound/pci/hda/hdac.h projects/zfsd/head/sys/dev/sound/pci/hda/hdacc.c projects/zfsd/head/sys/dev/sound/pcm/mixer.c projects/zfsd/head/sys/dev/sound/pcm/mixer.h projects/zfsd/head/sys/dev/sound/sbus/cs4231.c (contents, props changed) projects/zfsd/head/sys/dev/sound/usb/uaudio.c projects/zfsd/head/sys/dev/sound/usb/uaudio_pcm.c projects/zfsd/head/sys/dev/ste/if_ste.c projects/zfsd/head/sys/dev/stge/if_stge.c projects/zfsd/head/sys/dev/sym/sym_hipd.c projects/zfsd/head/sys/dev/syscons/syscons.c projects/zfsd/head/sys/dev/terasic/de4led/terasic_de4led.c projects/zfsd/head/sys/dev/terasic/de4led/terasic_de4led.h projects/zfsd/head/sys/dev/terasic/de4led/terasic_de4led_nexus.c projects/zfsd/head/sys/dev/terasic/mtl/terasic_mtl.c projects/zfsd/head/sys/dev/terasic/mtl/terasic_mtl.h projects/zfsd/head/sys/dev/terasic/mtl/terasic_mtl_nexus.c projects/zfsd/head/sys/dev/ti/if_ti.c projects/zfsd/head/sys/dev/tl/if_tl.c projects/zfsd/head/sys/dev/trm/trm.c projects/zfsd/head/sys/dev/tsec/if_tsec.c projects/zfsd/head/sys/dev/twa/tw_osl.h projects/zfsd/head/sys/dev/twa/tw_osl_cam.c projects/zfsd/head/sys/dev/twa/tw_osl_freebsd.c projects/zfsd/head/sys/dev/tws/tws.h projects/zfsd/head/sys/dev/tws/tws_cam.c projects/zfsd/head/sys/dev/tx/if_tx.c projects/zfsd/head/sys/dev/txp/if_txp.c projects/zfsd/head/sys/dev/uart/uart_bus.h projects/zfsd/head/sys/dev/uart/uart_bus_acpi.c projects/zfsd/head/sys/dev/uart/uart_bus_fdt.c projects/zfsd/head/sys/dev/uart/uart_bus_isa.c projects/zfsd/head/sys/dev/uart/uart_bus_pci.c projects/zfsd/head/sys/dev/uart/uart_core.c projects/zfsd/head/sys/dev/uart/uart_dev_ns8250.c projects/zfsd/head/sys/dev/ubsec/ubsec.c projects/zfsd/head/sys/dev/usb/controller/at91dci.c projects/zfsd/head/sys/dev/usb/controller/atmegadci.c projects/zfsd/head/sys/dev/usb/controller/avr32dci.c projects/zfsd/head/sys/dev/usb/controller/dwc_otg.c projects/zfsd/head/sys/dev/usb/controller/ehci.c projects/zfsd/head/sys/dev/usb/controller/musb_otg.c projects/zfsd/head/sys/dev/usb/controller/ohci.c projects/zfsd/head/sys/dev/usb/controller/uhci.c projects/zfsd/head/sys/dev/usb/controller/usb_controller.c projects/zfsd/head/sys/dev/usb/controller/uss820dci.c projects/zfsd/head/sys/dev/usb/controller/xhci.c projects/zfsd/head/sys/dev/usb/controller/xhci.h projects/zfsd/head/sys/dev/usb/input/uhid.c projects/zfsd/head/sys/dev/usb/input/ukbd.c projects/zfsd/head/sys/dev/usb/input/ums.c projects/zfsd/head/sys/dev/usb/misc/udbp.c projects/zfsd/head/sys/dev/usb/misc/ufm.c projects/zfsd/head/sys/dev/usb/net/if_axe.c projects/zfsd/head/sys/dev/usb/net/if_cdce.c projects/zfsd/head/sys/dev/usb/net/if_cue.c projects/zfsd/head/sys/dev/usb/net/if_ipheth.c projects/zfsd/head/sys/dev/usb/net/if_kue.c projects/zfsd/head/sys/dev/usb/net/if_smsc.c projects/zfsd/head/sys/dev/usb/net/if_usie.c projects/zfsd/head/sys/dev/usb/net/uhso.c projects/zfsd/head/sys/dev/usb/net/usb_ethernet.c projects/zfsd/head/sys/dev/usb/quirk/usb_quirk.c projects/zfsd/head/sys/dev/usb/serial/u3g.c projects/zfsd/head/sys/dev/usb/serial/uftdi.c projects/zfsd/head/sys/dev/usb/serial/usb_serial.c projects/zfsd/head/sys/dev/usb/serial/usb_serial.h projects/zfsd/head/sys/dev/usb/storage/umass.c projects/zfsd/head/sys/dev/usb/storage/urio.c projects/zfsd/head/sys/dev/usb/storage/ustorage_fs.c projects/zfsd/head/sys/dev/usb/template/usb_template.c projects/zfsd/head/sys/dev/usb/template/usb_template_audio.c projects/zfsd/head/sys/dev/usb/template/usb_template_cdce.c projects/zfsd/head/sys/dev/usb/template/usb_template_kbd.c projects/zfsd/head/sys/dev/usb/template/usb_template_modem.c projects/zfsd/head/sys/dev/usb/template/usb_template_mouse.c projects/zfsd/head/sys/dev/usb/template/usb_template_msc.c projects/zfsd/head/sys/dev/usb/template/usb_template_mtp.c projects/zfsd/head/sys/dev/usb/ufm_ioctl.h projects/zfsd/head/sys/dev/usb/usb.h projects/zfsd/head/sys/dev/usb/usb_bus.h projects/zfsd/head/sys/dev/usb/usb_busdma.c projects/zfsd/head/sys/dev/usb/usb_busdma.h projects/zfsd/head/sys/dev/usb/usb_compat_linux.c projects/zfsd/head/sys/dev/usb/usb_controller.h projects/zfsd/head/sys/dev/usb/usb_core.c projects/zfsd/head/sys/dev/usb/usb_core.h projects/zfsd/head/sys/dev/usb/usb_debug.c projects/zfsd/head/sys/dev/usb/usb_dev.c projects/zfsd/head/sys/dev/usb/usb_dev.h projects/zfsd/head/sys/dev/usb/usb_device.c projects/zfsd/head/sys/dev/usb/usb_device.h projects/zfsd/head/sys/dev/usb/usb_dynamic.c projects/zfsd/head/sys/dev/usb/usb_endian.h projects/zfsd/head/sys/dev/usb/usb_error.c projects/zfsd/head/sys/dev/usb/usb_freebsd.h projects/zfsd/head/sys/dev/usb/usb_generic.c projects/zfsd/head/sys/dev/usb/usb_handle_request.c projects/zfsd/head/sys/dev/usb/usb_hid.c projects/zfsd/head/sys/dev/usb/usb_hub.c projects/zfsd/head/sys/dev/usb/usb_ioctl.h projects/zfsd/head/sys/dev/usb/usb_lookup.c projects/zfsd/head/sys/dev/usb/usb_mbuf.c projects/zfsd/head/sys/dev/usb/usb_msctest.c projects/zfsd/head/sys/dev/usb/usb_parse.c projects/zfsd/head/sys/dev/usb/usb_pci.h projects/zfsd/head/sys/dev/usb/usb_pf.c projects/zfsd/head/sys/dev/usb/usb_process.c projects/zfsd/head/sys/dev/usb/usb_process.h projects/zfsd/head/sys/dev/usb/usb_request.c projects/zfsd/head/sys/dev/usb/usb_transfer.c projects/zfsd/head/sys/dev/usb/usb_util.c projects/zfsd/head/sys/dev/usb/usbdevs projects/zfsd/head/sys/dev/usb/usbdi.h projects/zfsd/head/sys/dev/usb/usbhid.h projects/zfsd/head/sys/dev/usb/wlan/if_rum.c projects/zfsd/head/sys/dev/usb/wlan/if_rumvar.h projects/zfsd/head/sys/dev/usb/wlan/if_run.c projects/zfsd/head/sys/dev/usb/wlan/if_runvar.h projects/zfsd/head/sys/dev/usb/wlan/if_uath.c projects/zfsd/head/sys/dev/usb/wlan/if_uathvar.h projects/zfsd/head/sys/dev/usb/wlan/if_upgt.c projects/zfsd/head/sys/dev/usb/wlan/if_upgtvar.h projects/zfsd/head/sys/dev/usb/wlan/if_ural.c projects/zfsd/head/sys/dev/usb/wlan/if_uralvar.h projects/zfsd/head/sys/dev/usb/wlan/if_urtw.c projects/zfsd/head/sys/dev/usb/wlan/if_urtwvar.h projects/zfsd/head/sys/dev/usb/wlan/if_zyd.c projects/zfsd/head/sys/dev/usb/wlan/if_zydreg.h projects/zfsd/head/sys/dev/vge/if_vge.c projects/zfsd/head/sys/dev/virtio/block/virtio_blk.c projects/zfsd/head/sys/dev/virtio/network/if_vtnet.c projects/zfsd/head/sys/dev/virtio/scsi/virtio_scsi.c projects/zfsd/head/sys/dev/vr/if_vr.c projects/zfsd/head/sys/dev/vte/if_vte.c projects/zfsd/head/sys/dev/vx/if_vx.c projects/zfsd/head/sys/dev/vx/if_vx_eisa.c (contents, props changed) projects/zfsd/head/sys/dev/vx/if_vx_pci.c (contents, props changed) projects/zfsd/head/sys/dev/vxge/vxge.c (contents, props changed) projects/zfsd/head/sys/dev/wb/if_wb.c projects/zfsd/head/sys/dev/wbwd/wbwd.c projects/zfsd/head/sys/dev/wds/wd7000.c projects/zfsd/head/sys/dev/wi/if_wi.c projects/zfsd/head/sys/dev/wl/if_wl.c projects/zfsd/head/sys/dev/wpi/if_wpi.c projects/zfsd/head/sys/dev/wtap/if_wtap.c projects/zfsd/head/sys/dev/wtap/plugins/visibility.c projects/zfsd/head/sys/dev/xe/if_xe.c projects/zfsd/head/sys/dev/xen/console/console.c projects/zfsd/head/sys/dev/xen/control/control.c projects/zfsd/head/sys/dev/xen/netfront/netfront.c projects/zfsd/head/sys/dev/xl/if_xl.c projects/zfsd/head/sys/fs/devfs/devfs_vnops.c projects/zfsd/head/sys/fs/ext2fs/ext2_alloc.c projects/zfsd/head/sys/fs/ext2fs/ext2_balloc.c projects/zfsd/head/sys/fs/ext2fs/ext2_bmap.c projects/zfsd/head/sys/fs/ext2fs/ext2_dinode.h (contents, props changed) projects/zfsd/head/sys/fs/ext2fs/ext2_dir.h (contents, props changed) projects/zfsd/head/sys/fs/ext2fs/ext2_inode.c projects/zfsd/head/sys/fs/ext2fs/ext2_inode_cnv.c projects/zfsd/head/sys/fs/ext2fs/ext2_lookup.c projects/zfsd/head/sys/fs/ext2fs/ext2_mount.h projects/zfsd/head/sys/fs/ext2fs/ext2_subr.c projects/zfsd/head/sys/fs/ext2fs/ext2_vfsops.c projects/zfsd/head/sys/fs/ext2fs/ext2_vnops.c projects/zfsd/head/sys/fs/ext2fs/ext2fs.h (contents, props changed) projects/zfsd/head/sys/fs/ext2fs/fs.h projects/zfsd/head/sys/fs/ext2fs/inode.h projects/zfsd/head/sys/fs/fuse/fuse_io.c projects/zfsd/head/sys/fs/msdosfs/msdosfs_fat.c projects/zfsd/head/sys/fs/msdosfs/msdosfs_vfsops.c projects/zfsd/head/sys/fs/msdosfs/msdosfs_vnops.c projects/zfsd/head/sys/fs/msdosfs/msdosfsmount.h projects/zfsd/head/sys/fs/nandfs/nandfs_segment.c projects/zfsd/head/sys/fs/nfs/nfs.h projects/zfsd/head/sys/fs/nfs/nfs_commonkrpc.c projects/zfsd/head/sys/fs/nfs/nfs_commonport.c projects/zfsd/head/sys/fs/nfs/nfs_commonsubs.c projects/zfsd/head/sys/fs/nfs/nfs_var.h projects/zfsd/head/sys/fs/nfs/nfscl.h projects/zfsd/head/sys/fs/nfs/nfsclstate.h projects/zfsd/head/sys/fs/nfs/nfsm_subs.h projects/zfsd/head/sys/fs/nfs/nfsport.h projects/zfsd/head/sys/fs/nfs/nfsproto.h projects/zfsd/head/sys/fs/nfsclient/nfs_clbio.c projects/zfsd/head/sys/fs/nfsclient/nfs_clcomsubs.c projects/zfsd/head/sys/fs/nfsclient/nfs_clkdtrace.c projects/zfsd/head/sys/fs/nfsclient/nfs_clkrpc.c projects/zfsd/head/sys/fs/nfsclient/nfs_clport.c projects/zfsd/head/sys/fs/nfsclient/nfs_clrpcops.c projects/zfsd/head/sys/fs/nfsclient/nfs_clstate.c projects/zfsd/head/sys/fs/nfsclient/nfs_clvfsops.c projects/zfsd/head/sys/fs/nfsclient/nfs_clvnops.c projects/zfsd/head/sys/fs/nfsclient/nfsmount.h projects/zfsd/head/sys/fs/nfsclient/nfsnode.h projects/zfsd/head/sys/fs/nfsserver/nfs_nfsdcache.c projects/zfsd/head/sys/fs/nfsserver/nfs_nfsdkrpc.c projects/zfsd/head/sys/fs/nfsserver/nfs_nfsdport.c projects/zfsd/head/sys/fs/nfsserver/nfs_nfsdserv.c projects/zfsd/head/sys/fs/nfsserver/nfs_nfsdstate.c projects/zfsd/head/sys/fs/nullfs/null.h projects/zfsd/head/sys/fs/nullfs/null_subr.c projects/zfsd/head/sys/fs/nullfs/null_vfsops.c projects/zfsd/head/sys/fs/nullfs/null_vnops.c projects/zfsd/head/sys/fs/tmpfs/tmpfs.h projects/zfsd/head/sys/fs/tmpfs/tmpfs_subr.c projects/zfsd/head/sys/fs/tmpfs/tmpfs_vfsops.c projects/zfsd/head/sys/fs/tmpfs/tmpfs_vnops.c projects/zfsd/head/sys/geom/geom_io.c projects/zfsd/head/sys/geom/geom_vfs.c projects/zfsd/head/sys/geom/journal/g_journal.c projects/zfsd/head/sys/geom/label/g_label.c projects/zfsd/head/sys/geom/mirror/g_mirror.c projects/zfsd/head/sys/geom/raid/g_raid.c projects/zfsd/head/sys/geom/raid/g_raid.h projects/zfsd/head/sys/geom/raid/md_intel.c projects/zfsd/head/sys/geom/raid/md_promise.c projects/zfsd/head/sys/geom/raid/tr_concat.c projects/zfsd/head/sys/geom/raid3/g_raid3.c projects/zfsd/head/sys/geom/raid3/g_raid3_ctl.c projects/zfsd/head/sys/i386/acpica/acpi_machdep.c projects/zfsd/head/sys/i386/conf/GENERIC projects/zfsd/head/sys/i386/conf/NOTES projects/zfsd/head/sys/i386/i386/db_trace.c projects/zfsd/head/sys/i386/i386/mp_machdep.c projects/zfsd/head/sys/i386/i386/pmap.c projects/zfsd/head/sys/i386/include/elf.h projects/zfsd/head/sys/i386/include/frame.h projects/zfsd/head/sys/i386/include/intr_machdep.h projects/zfsd/head/sys/i386/include/sigframe.h projects/zfsd/head/sys/i386/include/signal.h projects/zfsd/head/sys/i386/include/ucontext.h projects/zfsd/head/sys/i386/include/vmparam.h projects/zfsd/head/sys/i386/isa/pmtimer.c projects/zfsd/head/sys/i386/linux/linux.h projects/zfsd/head/sys/i386/linux/linux_ptrace.c projects/zfsd/head/sys/i386/linux/linux_sysvec.c projects/zfsd/head/sys/i386/pci/pci_cfgreg.c projects/zfsd/head/sys/i386/xen/pmap.c projects/zfsd/head/sys/i386/xen/xen_machdep.c projects/zfsd/head/sys/ia64/conf/GENERIC projects/zfsd/head/sys/ia64/ia64/busdma_machdep.c projects/zfsd/head/sys/ia64/ia64/dump_machdep.c projects/zfsd/head/sys/ia64/ia64/genassym.c projects/zfsd/head/sys/ia64/ia64/machdep.c projects/zfsd/head/sys/ia64/ia64/mem.c projects/zfsd/head/sys/ia64/ia64/pmap.c projects/zfsd/head/sys/ia64/ia64/support.S projects/zfsd/head/sys/ia64/ia64/syscall.S projects/zfsd/head/sys/ia64/include/proc.h projects/zfsd/head/sys/ia64/include/vmparam.h projects/zfsd/head/sys/kern/imgact_elf.c projects/zfsd/head/sys/kern/init_main.c projects/zfsd/head/sys/kern/kern_clock.c projects/zfsd/head/sys/kern/kern_clocksource.c projects/zfsd/head/sys/kern/kern_conf.c projects/zfsd/head/sys/kern/kern_descrip.c projects/zfsd/head/sys/kern/kern_exec.c projects/zfsd/head/sys/kern/kern_exit.c projects/zfsd/head/sys/kern/kern_fork.c projects/zfsd/head/sys/kern/kern_intr.c projects/zfsd/head/sys/kern/kern_jail.c projects/zfsd/head/sys/kern/kern_ktr.c projects/zfsd/head/sys/kern/kern_lock.c projects/zfsd/head/sys/kern/kern_malloc.c projects/zfsd/head/sys/kern/kern_mbuf.c projects/zfsd/head/sys/kern/kern_mib.c projects/zfsd/head/sys/kern/kern_mutex.c projects/zfsd/head/sys/kern/kern_priv.c projects/zfsd/head/sys/kern/kern_rmlock.c projects/zfsd/head/sys/kern/kern_rwlock.c projects/zfsd/head/sys/kern/kern_shutdown.c projects/zfsd/head/sys/kern/kern_sig.c projects/zfsd/head/sys/kern/kern_switch.c projects/zfsd/head/sys/kern/kern_sx.c projects/zfsd/head/sys/kern/kern_synch.c projects/zfsd/head/sys/kern/kern_sysctl.c projects/zfsd/head/sys/kern/kern_tc.c projects/zfsd/head/sys/kern/kern_thread.c projects/zfsd/head/sys/kern/kern_time.c projects/zfsd/head/sys/kern/kern_timeout.c projects/zfsd/head/sys/kern/subr_blist.c projects/zfsd/head/sys/kern/subr_bus.c projects/zfsd/head/sys/kern/subr_mchain.c projects/zfsd/head/sys/kern/subr_param.c projects/zfsd/head/sys/kern/subr_sleepqueue.c projects/zfsd/head/sys/kern/subr_smp.c projects/zfsd/head/sys/kern/subr_syscall.c projects/zfsd/head/sys/kern/subr_trap.c projects/zfsd/head/sys/kern/subr_turnstile.c projects/zfsd/head/sys/kern/subr_uio.c projects/zfsd/head/sys/kern/subr_witness.c projects/zfsd/head/sys/kern/sys_capability.c projects/zfsd/head/sys/kern/sys_generic.c projects/zfsd/head/sys/kern/sys_pipe.c projects/zfsd/head/sys/kern/sys_process.c projects/zfsd/head/sys/kern/uipc_domain.c projects/zfsd/head/sys/kern/uipc_mbuf.c projects/zfsd/head/sys/kern/uipc_mbuf2.c projects/zfsd/head/sys/kern/uipc_sockbuf.c projects/zfsd/head/sys/kern/uipc_socket.c projects/zfsd/head/sys/kern/uipc_syscalls.c projects/zfsd/head/sys/kern/uipc_usrreq.c projects/zfsd/head/sys/kern/vfs_acl.c projects/zfsd/head/sys/kern/vfs_bio.c projects/zfsd/head/sys/kern/vfs_cluster.c projects/zfsd/head/sys/kern/vfs_export.c projects/zfsd/head/sys/kern/vfs_hash.c projects/zfsd/head/sys/kern/vfs_init.c projects/zfsd/head/sys/kern/vfs_lookup.c projects/zfsd/head/sys/kern/vfs_mount.c projects/zfsd/head/sys/kern/vfs_mountroot.c projects/zfsd/head/sys/kern/vfs_subr.c projects/zfsd/head/sys/kern/vfs_syscalls.c projects/zfsd/head/sys/kern/vfs_vnops.c projects/zfsd/head/sys/kgssapi/gss_accept_sec_context.c projects/zfsd/head/sys/kgssapi/gss_acquire_cred.c projects/zfsd/head/sys/kgssapi/gss_canonicalize_name.c projects/zfsd/head/sys/kgssapi/gss_delete_sec_context.c projects/zfsd/head/sys/kgssapi/gss_display_status.c projects/zfsd/head/sys/kgssapi/gss_export_name.c projects/zfsd/head/sys/kgssapi/gss_impl.c projects/zfsd/head/sys/kgssapi/gss_import_name.c projects/zfsd/head/sys/kgssapi/gss_init_sec_context.c projects/zfsd/head/sys/kgssapi/gss_pname_to_uid.c projects/zfsd/head/sys/kgssapi/gss_release_cred.c projects/zfsd/head/sys/kgssapi/gss_release_name.c projects/zfsd/head/sys/kgssapi/gss_set_cred_option.c projects/zfsd/head/sys/kgssapi/gssapi_impl.h projects/zfsd/head/sys/libkern/arm/divsi3.S projects/zfsd/head/sys/libkern/quad.h projects/zfsd/head/sys/libkern/ucmpdi2.c projects/zfsd/head/sys/mips/adm5120/adm5120_machdep.c projects/zfsd/head/sys/mips/adm5120/if_admsw.c projects/zfsd/head/sys/mips/alchemy/alchemy_machdep.c projects/zfsd/head/sys/mips/atheros/ar71xx_pci.c projects/zfsd/head/sys/mips/atheros/if_arge.c projects/zfsd/head/sys/mips/beri/beri_machdep.c projects/zfsd/head/sys/mips/beri/files.beri projects/zfsd/head/sys/mips/cavium/if_octm.c projects/zfsd/head/sys/mips/cavium/octe/ethernet-mem.c projects/zfsd/head/sys/mips/cavium/octe/ethernet-rx.c projects/zfsd/head/sys/mips/cavium/octeon_machdep.c projects/zfsd/head/sys/mips/conf/OCTEON1 projects/zfsd/head/sys/mips/gxemul/gxemul_machdep.c projects/zfsd/head/sys/mips/idt/idt_machdep.c projects/zfsd/head/sys/mips/idt/if_kr.c projects/zfsd/head/sys/mips/include/bus.h projects/zfsd/head/sys/mips/include/fdt.h projects/zfsd/head/sys/mips/include/metadata.h projects/zfsd/head/sys/mips/include/param.h projects/zfsd/head/sys/mips/include/vmparam.h projects/zfsd/head/sys/mips/malta/malta_machdep.c projects/zfsd/head/sys/mips/mips/busdma_machdep.c projects/zfsd/head/sys/mips/nlm/dev/net/mdio.c projects/zfsd/head/sys/mips/nlm/dev/net/nae.c projects/zfsd/head/sys/mips/nlm/dev/net/sgmii.c projects/zfsd/head/sys/mips/nlm/dev/net/xlpge.c projects/zfsd/head/sys/mips/nlm/hal/fmn.c projects/zfsd/head/sys/mips/nlm/hal/mdio.h projects/zfsd/head/sys/mips/nlm/hal/sys.h projects/zfsd/head/sys/mips/nlm/hal/ucore_loader.h projects/zfsd/head/sys/mips/nlm/xlp_machdep.c projects/zfsd/head/sys/mips/nlm/xlp_pci.c projects/zfsd/head/sys/mips/rmi/dev/nlge/if_nlge.c projects/zfsd/head/sys/mips/rmi/dev/xlr/rge.c projects/zfsd/head/sys/mips/rt305x/rt305x_machdep.c projects/zfsd/head/sys/mips/sentry5/s5_machdep.c projects/zfsd/head/sys/mips/sibyte/sb_machdep.c projects/zfsd/head/sys/modules/Makefile projects/zfsd/head/sys/modules/acpi/acpi/Makefile projects/zfsd/head/sys/modules/ath/Makefile projects/zfsd/head/sys/modules/cxgbe/firmware/Makefile projects/zfsd/head/sys/modules/cxgbe/tom/Makefile projects/zfsd/head/sys/modules/hpt27xx/Makefile projects/zfsd/head/sys/modules/iwn/Makefile projects/zfsd/head/sys/modules/mxge/mxge/Makefile projects/zfsd/head/sys/modules/usb/Makefile projects/zfsd/head/sys/modules/usb/smsc/Makefile projects/zfsd/head/sys/modules/wlan/Makefile projects/zfsd/head/sys/net/bpf.c projects/zfsd/head/sys/net/bpf.h projects/zfsd/head/sys/net/bpf_buffer.c projects/zfsd/head/sys/net/bpfdesc.h projects/zfsd/head/sys/net/bridgestp.c projects/zfsd/head/sys/net/ieee8023ad_lacp.c projects/zfsd/head/sys/net/if.c projects/zfsd/head/sys/net/if_arcsubr.c projects/zfsd/head/sys/net/if_atmsubr.c projects/zfsd/head/sys/net/if_bridge.c projects/zfsd/head/sys/net/if_ef.c projects/zfsd/head/sys/net/if_ethersubr.c projects/zfsd/head/sys/net/if_fddisubr.c projects/zfsd/head/sys/net/if_fwsubr.c projects/zfsd/head/sys/net/if_gre.c projects/zfsd/head/sys/net/if_iso88025subr.c projects/zfsd/head/sys/net/if_lagg.c projects/zfsd/head/sys/net/if_llatbl.c projects/zfsd/head/sys/net/if_llatbl.h projects/zfsd/head/sys/net/if_pfsync.h projects/zfsd/head/sys/net/if_spppfr.c projects/zfsd/head/sys/net/if_spppsubr.c projects/zfsd/head/sys/net/if_stf.c projects/zfsd/head/sys/net/if_tap.c projects/zfsd/head/sys/net/if_tun.c projects/zfsd/head/sys/net/if_var.h projects/zfsd/head/sys/net/if_vlan.c projects/zfsd/head/sys/net/netmap.h projects/zfsd/head/sys/net/rtsock.c projects/zfsd/head/sys/net/zlib.c projects/zfsd/head/sys/net/zlib.h projects/zfsd/head/sys/net80211/ieee80211.h projects/zfsd/head/sys/net80211/ieee80211_action.c projects/zfsd/head/sys/net80211/ieee80211_adhoc.c projects/zfsd/head/sys/net80211/ieee80211_ddb.c projects/zfsd/head/sys/net80211/ieee80211_freebsd.c projects/zfsd/head/sys/net80211/ieee80211_hostap.c projects/zfsd/head/sys/net80211/ieee80211_hwmp.c projects/zfsd/head/sys/net80211/ieee80211_input.c projects/zfsd/head/sys/net80211/ieee80211_ioctl.h projects/zfsd/head/sys/net80211/ieee80211_mesh.c projects/zfsd/head/sys/net80211/ieee80211_mesh.h projects/zfsd/head/sys/net80211/ieee80211_node.c projects/zfsd/head/sys/net80211/ieee80211_node.h projects/zfsd/head/sys/net80211/ieee80211_output.c projects/zfsd/head/sys/net80211/ieee80211_power.c projects/zfsd/head/sys/net80211/ieee80211_proto.c projects/zfsd/head/sys/net80211/ieee80211_radiotap.h projects/zfsd/head/sys/net80211/ieee80211_regdomain.h projects/zfsd/head/sys/net80211/ieee80211_scan_sta.c projects/zfsd/head/sys/net80211/ieee80211_sta.c projects/zfsd/head/sys/net80211/ieee80211_sta.h projects/zfsd/head/sys/net80211/ieee80211_superg.c projects/zfsd/head/sys/net80211/ieee80211_superg.h projects/zfsd/head/sys/net80211/ieee80211_wds.c projects/zfsd/head/sys/netatalk/aarp.c projects/zfsd/head/sys/netatalk/ddp_output.c projects/zfsd/head/sys/netgraph/atm/ccatm/ng_ccatm.c projects/zfsd/head/sys/netgraph/atm/ng_atm.c projects/zfsd/head/sys/netgraph/bluetooth/drivers/bt3c/ng_bt3c_pccard.c projects/zfsd/head/sys/netgraph/bluetooth/drivers/h4/ng_h4.c projects/zfsd/head/sys/netgraph/bluetooth/drivers/ubt/ng_ubt.c projects/zfsd/head/sys/netgraph/bluetooth/hci/ng_hci_cmds.c projects/zfsd/head/sys/netgraph/bluetooth/hci/ng_hci_evnt.c projects/zfsd/head/sys/netgraph/bluetooth/hci/ng_hci_misc.c projects/zfsd/head/sys/netgraph/bluetooth/hci/ng_hci_ulpi.c projects/zfsd/head/sys/netgraph/bluetooth/l2cap/ng_l2cap_cmds.h projects/zfsd/head/sys/netgraph/bluetooth/l2cap/ng_l2cap_evnt.c projects/zfsd/head/sys/netgraph/bluetooth/l2cap/ng_l2cap_llpi.c projects/zfsd/head/sys/netgraph/bluetooth/l2cap/ng_l2cap_misc.c projects/zfsd/head/sys/netgraph/bluetooth/socket/ng_btsocket_hci_raw.c projects/zfsd/head/sys/netgraph/bluetooth/socket/ng_btsocket_l2cap.c projects/zfsd/head/sys/netgraph/bluetooth/socket/ng_btsocket_rfcomm.c projects/zfsd/head/sys/netgraph/bluetooth/socket/ng_btsocket_sco.c projects/zfsd/head/sys/netgraph/netflow/netflow.c projects/zfsd/head/sys/netgraph/netflow/netflow_v9.c projects/zfsd/head/sys/netgraph/ng_UI.c projects/zfsd/head/sys/netgraph/ng_atmllc.c projects/zfsd/head/sys/netgraph/ng_bridge.c projects/zfsd/head/sys/netgraph/ng_cisco.c projects/zfsd/head/sys/netgraph/ng_deflate.c projects/zfsd/head/sys/netgraph/ng_device.c projects/zfsd/head/sys/netgraph/ng_ether.c projects/zfsd/head/sys/netgraph/ng_frame_relay.c projects/zfsd/head/sys/netgraph/ng_gif.c projects/zfsd/head/sys/netgraph/ng_gif_demux.c projects/zfsd/head/sys/netgraph/ng_hub.c projects/zfsd/head/sys/netgraph/ng_iface.c projects/zfsd/head/sys/netgraph/ng_ipfw.c projects/zfsd/head/sys/netgraph/ng_l2tp.c projects/zfsd/head/sys/netgraph/ng_lmi.c projects/zfsd/head/sys/netgraph/ng_mppc.c projects/zfsd/head/sys/netgraph/ng_one2many.c projects/zfsd/head/sys/netgraph/ng_parse.c projects/zfsd/head/sys/netgraph/ng_ppp.c projects/zfsd/head/sys/netgraph/ng_pppoe.c projects/zfsd/head/sys/netgraph/ng_pptpgre.c projects/zfsd/head/sys/netgraph/ng_pred1.c projects/zfsd/head/sys/netgraph/ng_rfc1490.c projects/zfsd/head/sys/netgraph/ng_source.c projects/zfsd/head/sys/netgraph/ng_tee.c projects/zfsd/head/sys/netgraph/ng_tty.c projects/zfsd/head/sys/netgraph/ng_vjc.c projects/zfsd/head/sys/netgraph/ng_vlan.c projects/zfsd/head/sys/netinet/if_ether.c projects/zfsd/head/sys/netinet/if_ether.h projects/zfsd/head/sys/netinet/igmp.c projects/zfsd/head/sys/netinet/in.c projects/zfsd/head/sys/netinet/in_gif.c projects/zfsd/head/sys/netinet/in_pcb.c projects/zfsd/head/sys/netinet/ip_carp.c projects/zfsd/head/sys/netinet/ip_carp.h projects/zfsd/head/sys/netinet/ip_icmp.c projects/zfsd/head/sys/netinet/ip_input.c projects/zfsd/head/sys/netinet/ip_mroute.c projects/zfsd/head/sys/netinet/ip_options.c projects/zfsd/head/sys/netinet/ip_output.c projects/zfsd/head/sys/netinet/libalias/alias.c projects/zfsd/head/sys/netinet/libalias/libalias.3 projects/zfsd/head/sys/netinet/raw_ip.c projects/zfsd/head/sys/netinet/sctp.h projects/zfsd/head/sys/netinet/sctp_asconf.c projects/zfsd/head/sys/netinet/sctp_auth.c projects/zfsd/head/sys/netinet/sctp_indata.c projects/zfsd/head/sys/netinet/sctp_input.c projects/zfsd/head/sys/netinet/sctp_output.c projects/zfsd/head/sys/netinet/sctp_output.h projects/zfsd/head/sys/netinet/sctp_pcb.c projects/zfsd/head/sys/netinet/sctp_pcb.h projects/zfsd/head/sys/netinet/sctp_structs.h projects/zfsd/head/sys/netinet/sctp_sysctl.c projects/zfsd/head/sys/netinet/sctp_timer.c projects/zfsd/head/sys/netinet/sctp_usrreq.c projects/zfsd/head/sys/netinet/sctputil.c projects/zfsd/head/sys/netinet/tcp.h projects/zfsd/head/sys/netinet/tcp_input.c projects/zfsd/head/sys/netinet/tcp_lro.c projects/zfsd/head/sys/netinet/tcp_output.c projects/zfsd/head/sys/netinet/tcp_reass.c projects/zfsd/head/sys/netinet/tcp_subr.c projects/zfsd/head/sys/netinet/tcp_syncache.c projects/zfsd/head/sys/netinet/tcp_timer.c projects/zfsd/head/sys/netinet/tcp_timer.h projects/zfsd/head/sys/netinet/tcp_timewait.c projects/zfsd/head/sys/netinet/tcp_usrreq.c projects/zfsd/head/sys/netinet/toecore.c projects/zfsd/head/sys/netinet/udp.h projects/zfsd/head/sys/netinet/udp_usrreq.c projects/zfsd/head/sys/netinet6/frag6.c projects/zfsd/head/sys/netinet6/icmp6.c projects/zfsd/head/sys/netinet6/in6.c projects/zfsd/head/sys/netinet6/in6_gif.c projects/zfsd/head/sys/netinet6/in6_src.c projects/zfsd/head/sys/netinet6/in6_var.h projects/zfsd/head/sys/netinet6/ip6_input.c projects/zfsd/head/sys/netinet6/ip6_mroute.c projects/zfsd/head/sys/netinet6/ip6_output.c projects/zfsd/head/sys/netinet6/ip6_var.h projects/zfsd/head/sys/netinet6/mld6.c projects/zfsd/head/sys/netinet6/nd6.c projects/zfsd/head/sys/netinet6/nd6.h projects/zfsd/head/sys/netinet6/nd6_nbr.c projects/zfsd/head/sys/netinet6/raw_ip6.c projects/zfsd/head/sys/netinet6/scope6.c projects/zfsd/head/sys/netinet6/scope6_var.h projects/zfsd/head/sys/netinet6/udp6_usrreq.c projects/zfsd/head/sys/netipsec/ipsec_mbuf.c projects/zfsd/head/sys/netipsec/ipsec_output.c projects/zfsd/head/sys/netipsec/key.c projects/zfsd/head/sys/netipsec/keysock.c projects/zfsd/head/sys/netipsec/xform_ipip.c projects/zfsd/head/sys/netipx/ipx_outputfl.c projects/zfsd/head/sys/netipx/ipx_usrreq.c projects/zfsd/head/sys/netipx/spx_reass.c projects/zfsd/head/sys/netipx/spx_usrreq.c projects/zfsd/head/sys/netnatm/natm.c projects/zfsd/head/sys/netncp/ncp_sock.c projects/zfsd/head/sys/netpfil/ipfw/ip_dn_glue.c projects/zfsd/head/sys/netpfil/ipfw/ip_fw2.c projects/zfsd/head/sys/netpfil/ipfw/ip_fw_dynamic.c projects/zfsd/head/sys/netpfil/ipfw/ip_fw_log.c projects/zfsd/head/sys/netpfil/ipfw/ip_fw_pfil.c projects/zfsd/head/sys/netpfil/ipfw/ip_fw_private.h projects/zfsd/head/sys/netpfil/ipfw/ip_fw_sockopt.c projects/zfsd/head/sys/netpfil/pf/if_pflog.c projects/zfsd/head/sys/netpfil/pf/if_pfsync.c projects/zfsd/head/sys/netpfil/pf/pf.c projects/zfsd/head/sys/netpfil/pf/pf_if.c projects/zfsd/head/sys/netpfil/pf/pf_ioctl.c projects/zfsd/head/sys/netpfil/pf/pf_lb.c projects/zfsd/head/sys/netpfil/pf/pf_norm.c projects/zfsd/head/sys/netpfil/pf/pf_osfp.c projects/zfsd/head/sys/netpfil/pf/pf_ruleset.c projects/zfsd/head/sys/netpfil/pf/pf_table.c projects/zfsd/head/sys/netsmb/smb_iod.c projects/zfsd/head/sys/netsmb/smb_rq.c projects/zfsd/head/sys/netsmb/smb_trantcp.c projects/zfsd/head/sys/nfs/krpc_subr.c projects/zfsd/head/sys/nfs/nfs_common.c projects/zfsd/head/sys/nfs/nfs_common.h projects/zfsd/head/sys/nfs/nfs_nfssvc.c projects/zfsd/head/sys/nfs/nfssvc.h projects/zfsd/head/sys/nfsclient/nfs_krpc.c projects/zfsd/head/sys/nfsclient/nfs_subs.c projects/zfsd/head/sys/nfsclient/nfs_vfsops.c projects/zfsd/head/sys/nfsclient/nfs_vnops.c projects/zfsd/head/sys/nfsclient/nfsargs.h projects/zfsd/head/sys/nfsserver/nfs_fha.c projects/zfsd/head/sys/nfsserver/nfs_serv.c projects/zfsd/head/sys/nfsserver/nfs_srvkrpc.c projects/zfsd/head/sys/nfsserver/nfs_srvsubs.c projects/zfsd/head/sys/ofed/drivers/infiniband/ulp/ipoib/ipoib_ib.c projects/zfsd/head/sys/ofed/drivers/infiniband/ulp/ipoib/ipoib_main.c projects/zfsd/head/sys/ofed/drivers/infiniband/ulp/sdp/sdp_bcopy.c projects/zfsd/head/sys/ofed/drivers/infiniband/ulp/sdp/sdp_main.c projects/zfsd/head/sys/ofed/drivers/infiniband/ulp/sdp/sdp_tx.c projects/zfsd/head/sys/ofed/drivers/net/mlx4/en_tx.c projects/zfsd/head/sys/opencrypto/xform.c projects/zfsd/head/sys/pc98/cbus/pckbd.c projects/zfsd/head/sys/pc98/conf/GENERIC projects/zfsd/head/sys/pci/if_rl.c projects/zfsd/head/sys/pci/if_rlreg.h projects/zfsd/head/sys/pci/ncr.c projects/zfsd/head/sys/powerpc/aim/mmu_oea.c projects/zfsd/head/sys/powerpc/aim/mmu_oea64.c projects/zfsd/head/sys/powerpc/aim/moea64_native.c projects/zfsd/head/sys/powerpc/booke/platform_bare.c projects/zfsd/head/sys/powerpc/conf/GENERIC projects/zfsd/head/sys/powerpc/conf/GENERIC64 projects/zfsd/head/sys/powerpc/include/platformvar.h projects/zfsd/head/sys/powerpc/include/vmparam.h projects/zfsd/head/sys/powerpc/powermac/platform_powermac.c projects/zfsd/head/sys/powerpc/powerpc/busdma_machdep.c projects/zfsd/head/sys/powerpc/ps3/if_glc.c projects/zfsd/head/sys/powerpc/ps3/mmu_ps3.c projects/zfsd/head/sys/powerpc/ps3/platform_ps3.c projects/zfsd/head/sys/powerpc/ps3/ps3cdrom.c projects/zfsd/head/sys/powerpc/wii/platform_wii.c projects/zfsd/head/sys/powerpc/wii/wii_gpio.c projects/zfsd/head/sys/powerpc/wii/wii_ipc.c projects/zfsd/head/sys/powerpc/wii/wii_pic.c projects/zfsd/head/sys/rpc/clnt.h projects/zfsd/head/sys/rpc/clnt_dg.c projects/zfsd/head/sys/rpc/clnt_rc.c projects/zfsd/head/sys/rpc/clnt_vc.c projects/zfsd/head/sys/rpc/rpc_generic.c projects/zfsd/head/sys/rpc/rpcm_subs.h projects/zfsd/head/sys/rpc/rpcsec_gss/rpcsec_gss_prot.c projects/zfsd/head/sys/rpc/svc.c projects/zfsd/head/sys/rpc/svc.h projects/zfsd/head/sys/rpc/svc_dg.c projects/zfsd/head/sys/rpc/svc_vc.c projects/zfsd/head/sys/security/audit/audit.c projects/zfsd/head/sys/security/audit/audit.h projects/zfsd/head/sys/security/audit/audit_arg.c projects/zfsd/head/sys/security/audit/audit_bsm.c projects/zfsd/head/sys/security/audit/audit_bsm_klib.c projects/zfsd/head/sys/security/audit/audit_private.h projects/zfsd/head/sys/security/audit/audit_worker.c projects/zfsd/head/sys/sparc64/conf/GENERIC projects/zfsd/head/sys/sparc64/include/bus_dma.h projects/zfsd/head/sys/sparc64/include/smp.h projects/zfsd/head/sys/sparc64/include/vmparam.h projects/zfsd/head/sys/sparc64/sparc64/bus_machdep.c projects/zfsd/head/sys/sparc64/sparc64/interrupt.S projects/zfsd/head/sys/sparc64/sparc64/iommu.c projects/zfsd/head/sys/sparc64/sparc64/tick.c projects/zfsd/head/sys/sparc64/sparc64/tsb.c projects/zfsd/head/sys/sys/buf.h projects/zfsd/head/sys/sys/buf_ring.h projects/zfsd/head/sys/sys/bufobj.h projects/zfsd/head/sys/sys/bus_dma.h projects/zfsd/head/sys/sys/copyright.h projects/zfsd/head/sys/sys/diskmbr.h projects/zfsd/head/sys/sys/eventhandler.h projects/zfsd/head/sys/sys/file.h projects/zfsd/head/sys/sys/filedesc.h projects/zfsd/head/sys/sys/fnv_hash.h projects/zfsd/head/sys/sys/kdb.h projects/zfsd/head/sys/sys/kernel.h projects/zfsd/head/sys/sys/ktr.h projects/zfsd/head/sys/sys/mbuf.h projects/zfsd/head/sys/sys/mount.h projects/zfsd/head/sys/sys/namei.h projects/zfsd/head/sys/sys/param.h projects/zfsd/head/sys/sys/pmc.h projects/zfsd/head/sys/sys/proc.h projects/zfsd/head/sys/sys/protosw.h projects/zfsd/head/sys/sys/queue.h projects/zfsd/head/sys/sys/signalvar.h projects/zfsd/head/sys/sys/socket.h projects/zfsd/head/sys/sys/socketvar.h projects/zfsd/head/sys/sys/sysctl.h projects/zfsd/head/sys/sys/systm.h projects/zfsd/head/sys/sys/time.h projects/zfsd/head/sys/sys/uio.h projects/zfsd/head/sys/sys/un.h projects/zfsd/head/sys/sys/vdso.h projects/zfsd/head/sys/sys/vmmeter.h projects/zfsd/head/sys/sys/vnode.h projects/zfsd/head/sys/tools/vnode_if.awk projects/zfsd/head/sys/ufs/ffs/ffs_alloc.c projects/zfsd/head/sys/ufs/ffs/ffs_inode.c projects/zfsd/head/sys/ufs/ffs/ffs_snapshot.c projects/zfsd/head/sys/ufs/ffs/ffs_softdep.c projects/zfsd/head/sys/ufs/ffs/ffs_suspend.c projects/zfsd/head/sys/ufs/ffs/ffs_vfsops.c projects/zfsd/head/sys/ufs/ufs/inode.h projects/zfsd/head/sys/ufs/ufs/ufs_lookup.c projects/zfsd/head/sys/ufs/ufs/ufs_quota.c projects/zfsd/head/sys/vm/device_pager.c projects/zfsd/head/sys/vm/swap_pager.c projects/zfsd/head/sys/vm/uma.h projects/zfsd/head/sys/vm/uma_core.c projects/zfsd/head/sys/vm/uma_int.h projects/zfsd/head/sys/vm/vm.h projects/zfsd/head/sys/vm/vm_fault.c projects/zfsd/head/sys/vm/vm_kern.c projects/zfsd/head/sys/vm/vm_map.c projects/zfsd/head/sys/vm/vm_map.h projects/zfsd/head/sys/vm/vm_meter.c projects/zfsd/head/sys/vm/vm_mmap.c projects/zfsd/head/sys/vm/vm_object.c projects/zfsd/head/sys/vm/vm_object.h projects/zfsd/head/sys/vm/vm_page.c projects/zfsd/head/sys/vm/vm_pageout.c projects/zfsd/head/sys/vm/vm_phys.c projects/zfsd/head/sys/vm/vm_unix.c projects/zfsd/head/sys/vm/vnode_pager.c projects/zfsd/head/sys/x86/acpica/srat.c projects/zfsd/head/sys/x86/include/bus.h projects/zfsd/head/sys/x86/include/specialreg.h projects/zfsd/head/sys/x86/isa/atrtc.c projects/zfsd/head/sys/x86/isa/clock.c projects/zfsd/head/sys/x86/x86/busdma_machdep.c projects/zfsd/head/sys/x86/x86/intr_machdep.c projects/zfsd/head/sys/x86/x86/io_apic.c projects/zfsd/head/sys/x86/x86/local_apic.c projects/zfsd/head/sys/x86/x86/tsc.c projects/zfsd/head/tools/build/Makefile projects/zfsd/head/tools/build/make_check/Makefile projects/zfsd/head/tools/build/mk/OptionalObsoleteFiles.inc projects/zfsd/head/tools/debugscripts/dot.gdbinit projects/zfsd/head/tools/install.sh projects/zfsd/head/tools/regression/bin/test/regress.sh projects/zfsd/head/tools/regression/lib/libc/stdio/test-perror.c projects/zfsd/head/tools/regression/sockets/unix_cmsg/README projects/zfsd/head/tools/regression/sockets/unix_cmsg/unix_cmsg.c projects/zfsd/head/tools/regression/sockets/unix_cmsg/unix_cmsg.t projects/zfsd/head/tools/regression/usr.bin/printf/regress.sh projects/zfsd/head/tools/test/ppsapi/Makefile projects/zfsd/head/tools/test/ppsapi/README projects/zfsd/head/tools/test/pthread_vfork/pthread_vfork_test.c projects/zfsd/head/tools/tools/ath/Makefile projects/zfsd/head/tools/tools/ath/arcode/arcode.c projects/zfsd/head/tools/tools/ath/ath_prom_read/ath_prom_read.c projects/zfsd/head/tools/tools/ath/athalq/Makefile projects/zfsd/head/tools/tools/ath/athalq/ar5210_ds.c projects/zfsd/head/tools/tools/ath/athalq/ar5211_ds.c projects/zfsd/head/tools/tools/ath/athalq/ar5212_ds.c projects/zfsd/head/tools/tools/ath/athalq/ar5416_ds.c projects/zfsd/head/tools/tools/ath/athalq/main.c projects/zfsd/head/tools/tools/ath/athdebug/athdebug.c projects/zfsd/head/tools/tools/ath/athdecode/main.c projects/zfsd/head/tools/tools/ath/athkey/athkey.c projects/zfsd/head/tools/tools/ath/athprom/athprom.c projects/zfsd/head/tools/tools/ath/athratestats/main.c projects/zfsd/head/tools/tools/ath/athstats/Makefile projects/zfsd/head/tools/tools/ath/athstats/athstats.c projects/zfsd/head/tools/tools/ath/athsurvey/athsurvey.c projects/zfsd/head/tools/tools/cxgbetool/cxgbetool.c projects/zfsd/head/tools/tools/netmap/Makefile projects/zfsd/head/tools/tools/netmap/bridge.c projects/zfsd/head/tools/tools/netmap/pcap.c projects/zfsd/head/tools/tools/netmap/pkt-gen.c projects/zfsd/head/tools/tools/netrate/netreceive/Makefile projects/zfsd/head/tools/tools/netrate/netreceive/netreceive.c projects/zfsd/head/tools/tools/netrate/netsend/netsend.c projects/zfsd/head/tools/tools/notescheck/notescheck.py projects/zfsd/head/tools/tools/sysbuild/sysbuild.sh projects/zfsd/head/usr.bin/Makefile projects/zfsd/head/usr.bin/apply/apply.c projects/zfsd/head/usr.bin/bmake/Makefile projects/zfsd/head/usr.bin/bmake/config.h projects/zfsd/head/usr.bin/bmake/unit-tests/Makefile projects/zfsd/head/usr.bin/calendar/calendars/calendar.freebsd projects/zfsd/head/usr.bin/calendar/parsedata.c projects/zfsd/head/usr.bin/clang/bugpoint/Makefile projects/zfsd/head/usr.bin/clang/clang-tblgen/Makefile projects/zfsd/head/usr.bin/clang/clang/Makefile projects/zfsd/head/usr.bin/clang/clang/clang.1 projects/zfsd/head/usr.bin/clang/llc/Makefile projects/zfsd/head/usr.bin/clang/lli/Makefile projects/zfsd/head/usr.bin/clang/llvm-ar/Makefile projects/zfsd/head/usr.bin/clang/llvm-as/Makefile projects/zfsd/head/usr.bin/clang/llvm-bcanalyzer/Makefile projects/zfsd/head/usr.bin/clang/llvm-diff/Makefile projects/zfsd/head/usr.bin/clang/llvm-dis/Makefile projects/zfsd/head/usr.bin/clang/llvm-extract/Makefile projects/zfsd/head/usr.bin/clang/llvm-link/Makefile projects/zfsd/head/usr.bin/clang/llvm-mc/Makefile projects/zfsd/head/usr.bin/clang/llvm-nm/Makefile projects/zfsd/head/usr.bin/clang/llvm-objdump/Makefile projects/zfsd/head/usr.bin/clang/llvm-prof/Makefile projects/zfsd/head/usr.bin/clang/llvm-ranlib/Makefile projects/zfsd/head/usr.bin/clang/llvm-rtdyld/Makefile projects/zfsd/head/usr.bin/clang/macho-dump/Makefile projects/zfsd/head/usr.bin/clang/opt/Makefile projects/zfsd/head/usr.bin/clang/tblgen/Makefile projects/zfsd/head/usr.bin/csup/csup.1 projects/zfsd/head/usr.bin/dc/bcode.c projects/zfsd/head/usr.bin/dc/bcode.h projects/zfsd/head/usr.bin/dc/inout.c projects/zfsd/head/usr.bin/ee/Makefile projects/zfsd/head/usr.bin/fetch/fetch.c projects/zfsd/head/usr.bin/find/function.c projects/zfsd/head/usr.bin/find/main.c projects/zfsd/head/usr.bin/gprof/aout.c projects/zfsd/head/usr.bin/gprof/arcs.c projects/zfsd/head/usr.bin/gprof/dfn.c projects/zfsd/head/usr.bin/gprof/gprof.c projects/zfsd/head/usr.bin/gprof/gprof.h projects/zfsd/head/usr.bin/gprof/hertz.c projects/zfsd/head/usr.bin/gprof/kernel.c projects/zfsd/head/usr.bin/gprof/lookup.c projects/zfsd/head/usr.bin/gprof/printgprof.c projects/zfsd/head/usr.bin/gprof/printlist.c projects/zfsd/head/usr.bin/grep/Makefile projects/zfsd/head/usr.bin/grep/file.c projects/zfsd/head/usr.bin/grep/grep.c projects/zfsd/head/usr.bin/grep/grep.h projects/zfsd/head/usr.bin/grep/regex/tre-fastmatch.c projects/zfsd/head/usr.bin/grep/util.c projects/zfsd/head/usr.bin/indent/indent_globs.h projects/zfsd/head/usr.bin/join/join.c projects/zfsd/head/usr.bin/kdump/kdump.c projects/zfsd/head/usr.bin/kdump/mksubr projects/zfsd/head/usr.bin/keylogin/keylogin.c projects/zfsd/head/usr.bin/less/zless.sh projects/zfsd/head/usr.bin/locate/locate/locate.c projects/zfsd/head/usr.bin/m4/Makefile projects/zfsd/head/usr.bin/mail/util.c projects/zfsd/head/usr.bin/make/main.c projects/zfsd/head/usr.bin/man/man.1 projects/zfsd/head/usr.bin/man/man.sh projects/zfsd/head/usr.bin/netstat/inet.c projects/zfsd/head/usr.bin/netstat/inet6.c projects/zfsd/head/usr.bin/netstat/main.c projects/zfsd/head/usr.bin/netstat/netisr.c projects/zfsd/head/usr.bin/netstat/sctp.c projects/zfsd/head/usr.bin/netstat/unix.c projects/zfsd/head/usr.bin/newgrp/newgrp.1 projects/zfsd/head/usr.bin/newgrp/newgrp.c projects/zfsd/head/usr.bin/nfsstat/nfsstat.1 projects/zfsd/head/usr.bin/nfsstat/nfsstat.c projects/zfsd/head/usr.bin/printf/printf.c projects/zfsd/head/usr.bin/procstat/procstat.c projects/zfsd/head/usr.bin/procstat/procstat_files.c projects/zfsd/head/usr.bin/rctl/rctl.8 projects/zfsd/head/usr.bin/sort/sort.c projects/zfsd/head/usr.bin/sort/sort.h projects/zfsd/head/usr.bin/stdbuf/stdbuf.c projects/zfsd/head/usr.bin/systat/ifcmds.c projects/zfsd/head/usr.bin/systat/ifstat.c projects/zfsd/head/usr.bin/systat/main.c projects/zfsd/head/usr.bin/systat/systat.1 projects/zfsd/head/usr.bin/systat/vmstat.c projects/zfsd/head/usr.bin/tail/read.c projects/zfsd/head/usr.bin/time/time.c projects/zfsd/head/usr.bin/tip/tip/cu.1 projects/zfsd/head/usr.bin/tr/tr.c projects/zfsd/head/usr.bin/truss/main.c projects/zfsd/head/usr.bin/ul/ul.c projects/zfsd/head/usr.bin/vacation/Makefile projects/zfsd/head/usr.bin/vmstat/vmstat.c projects/zfsd/head/usr.bin/w/w.c projects/zfsd/head/usr.bin/xargs/strnsubst.c projects/zfsd/head/usr.bin/xinstall/Makefile projects/zfsd/head/usr.bin/xinstall/install.1 projects/zfsd/head/usr.bin/xinstall/xinstall.c projects/zfsd/head/usr.sbin/Makefile projects/zfsd/head/usr.sbin/Makefile.amd64 projects/zfsd/head/usr.sbin/Makefile.i386 projects/zfsd/head/usr.sbin/Makefile.sparc64 projects/zfsd/head/usr.sbin/acpi/acpidb/Makefile projects/zfsd/head/usr.sbin/acpi/acpidump/acpi.c projects/zfsd/head/usr.sbin/acpi/acpidump/acpidump.8 projects/zfsd/head/usr.sbin/acpi/iasl/Makefile projects/zfsd/head/usr.sbin/arp/arp.8 projects/zfsd/head/usr.sbin/arp/arp.c projects/zfsd/head/usr.sbin/bluetooth/hcseriald/hcseriald.8 projects/zfsd/head/usr.sbin/bluetooth/hcseriald/hcseriald.c projects/zfsd/head/usr.sbin/bsdconfig/Makefile projects/zfsd/head/usr.sbin/bsdconfig/USAGE projects/zfsd/head/usr.sbin/bsdconfig/bsdconfig projects/zfsd/head/usr.sbin/bsdconfig/bsdconfig.8 projects/zfsd/head/usr.sbin/bsdconfig/console/console projects/zfsd/head/usr.sbin/bsdconfig/console/font projects/zfsd/head/usr.sbin/bsdconfig/console/keymap projects/zfsd/head/usr.sbin/bsdconfig/console/repeat projects/zfsd/head/usr.sbin/bsdconfig/console/saver projects/zfsd/head/usr.sbin/bsdconfig/console/screenmap projects/zfsd/head/usr.sbin/bsdconfig/console/ttys projects/zfsd/head/usr.sbin/bsdconfig/diskmgmt/diskmgmt projects/zfsd/head/usr.sbin/bsdconfig/docsinstall/docsinstall projects/zfsd/head/usr.sbin/bsdconfig/dot/dot projects/zfsd/head/usr.sbin/bsdconfig/examples/bsdconfigrc projects/zfsd/head/usr.sbin/bsdconfig/include/Makefile projects/zfsd/head/usr.sbin/bsdconfig/include/messages.subr projects/zfsd/head/usr.sbin/bsdconfig/mouse/disable projects/zfsd/head/usr.sbin/bsdconfig/mouse/enable projects/zfsd/head/usr.sbin/bsdconfig/mouse/flags projects/zfsd/head/usr.sbin/bsdconfig/mouse/mouse projects/zfsd/head/usr.sbin/bsdconfig/mouse/port projects/zfsd/head/usr.sbin/bsdconfig/mouse/type projects/zfsd/head/usr.sbin/bsdconfig/networking/defaultrouter projects/zfsd/head/usr.sbin/bsdconfig/networking/devices projects/zfsd/head/usr.sbin/bsdconfig/networking/hostname projects/zfsd/head/usr.sbin/bsdconfig/networking/include/Makefile projects/zfsd/head/usr.sbin/bsdconfig/networking/nameservers projects/zfsd/head/usr.sbin/bsdconfig/networking/networking projects/zfsd/head/usr.sbin/bsdconfig/networking/share/common.subr projects/zfsd/head/usr.sbin/bsdconfig/networking/share/device.subr projects/zfsd/head/usr.sbin/bsdconfig/networking/share/hostname.subr projects/zfsd/head/usr.sbin/bsdconfig/networking/share/ipaddr.subr projects/zfsd/head/usr.sbin/bsdconfig/networking/share/media.subr projects/zfsd/head/usr.sbin/bsdconfig/networking/share/netmask.subr projects/zfsd/head/usr.sbin/bsdconfig/networking/share/resolv.subr projects/zfsd/head/usr.sbin/bsdconfig/networking/share/routing.subr projects/zfsd/head/usr.sbin/bsdconfig/password/password projects/zfsd/head/usr.sbin/bsdconfig/password/share/password.subr projects/zfsd/head/usr.sbin/bsdconfig/security/kern_securelevel projects/zfsd/head/usr.sbin/bsdconfig/security/security projects/zfsd/head/usr.sbin/bsdconfig/share/Makefile projects/zfsd/head/usr.sbin/bsdconfig/share/common.subr projects/zfsd/head/usr.sbin/bsdconfig/share/dialog.subr projects/zfsd/head/usr.sbin/bsdconfig/share/mustberoot.subr projects/zfsd/head/usr.sbin/bsdconfig/share/strings.subr projects/zfsd/head/usr.sbin/bsdconfig/share/sysrc.subr projects/zfsd/head/usr.sbin/bsdconfig/startup/misc projects/zfsd/head/usr.sbin/bsdconfig/startup/rcadd projects/zfsd/head/usr.sbin/bsdconfig/startup/rcconf projects/zfsd/head/usr.sbin/bsdconfig/startup/rcdelete projects/zfsd/head/usr.sbin/bsdconfig/startup/rcedit projects/zfsd/head/usr.sbin/bsdconfig/startup/rcvar projects/zfsd/head/usr.sbin/bsdconfig/startup/share/rcconf.subr projects/zfsd/head/usr.sbin/bsdconfig/startup/share/rcedit.subr projects/zfsd/head/usr.sbin/bsdconfig/startup/share/rcvar.subr projects/zfsd/head/usr.sbin/bsdconfig/startup/startup projects/zfsd/head/usr.sbin/bsdconfig/timezone/share/continents.subr projects/zfsd/head/usr.sbin/bsdconfig/timezone/share/countries.subr projects/zfsd/head/usr.sbin/bsdconfig/timezone/share/iso3166.subr projects/zfsd/head/usr.sbin/bsdconfig/timezone/share/menus.subr projects/zfsd/head/usr.sbin/bsdconfig/timezone/share/zones.subr projects/zfsd/head/usr.sbin/bsdconfig/timezone/timezone projects/zfsd/head/usr.sbin/bsdconfig/ttys/ttys projects/zfsd/head/usr.sbin/bsdconfig/usermgmt/groupadd projects/zfsd/head/usr.sbin/bsdconfig/usermgmt/groupdel projects/zfsd/head/usr.sbin/bsdconfig/usermgmt/groupedit projects/zfsd/head/usr.sbin/bsdconfig/usermgmt/groupinput projects/zfsd/head/usr.sbin/bsdconfig/usermgmt/share/group_input.subr projects/zfsd/head/usr.sbin/bsdconfig/usermgmt/share/user_input.subr projects/zfsd/head/usr.sbin/bsdconfig/usermgmt/useradd projects/zfsd/head/usr.sbin/bsdconfig/usermgmt/userdel projects/zfsd/head/usr.sbin/bsdconfig/usermgmt/useredit projects/zfsd/head/usr.sbin/bsdconfig/usermgmt/userinput projects/zfsd/head/usr.sbin/bsdconfig/usermgmt/usermgmt projects/zfsd/head/usr.sbin/bsdinstall/bsdinstall.8 projects/zfsd/head/usr.sbin/bsdinstall/partedit/Makefile projects/zfsd/head/usr.sbin/bsdinstall/partedit/diskeditor.c projects/zfsd/head/usr.sbin/bsdinstall/partedit/part_wizard.c projects/zfsd/head/usr.sbin/bsdinstall/partedit/partedit.c projects/zfsd/head/usr.sbin/bsdinstall/partedit/partedit.h projects/zfsd/head/usr.sbin/bsdinstall/scripts/Makefile projects/zfsd/head/usr.sbin/bsdinstall/scripts/mirrorselect projects/zfsd/head/usr.sbin/bsdinstall/scripts/services projects/zfsd/head/usr.sbin/bsdinstall/scripts/wlanconfig projects/zfsd/head/usr.sbin/cpucontrol/intel.c projects/zfsd/head/usr.sbin/cpucontrol/via.c projects/zfsd/head/usr.sbin/crunch/crunchgen/crunchgen.c projects/zfsd/head/usr.sbin/crunch/crunchide/exec_elf32.c projects/zfsd/head/usr.sbin/crunch/examples/really-big.conf projects/zfsd/head/usr.sbin/daemon/daemon.c projects/zfsd/head/usr.sbin/extattr/rmextattr.c projects/zfsd/head/usr.sbin/gssd/Makefile projects/zfsd/head/usr.sbin/gssd/gssd.8 projects/zfsd/head/usr.sbin/gssd/gssd.c projects/zfsd/head/usr.sbin/ifmcstat/ifmcstat.c projects/zfsd/head/usr.sbin/inetd/inetd.c projects/zfsd/head/usr.sbin/iostat/iostat.8 projects/zfsd/head/usr.sbin/iostat/iostat.c projects/zfsd/head/usr.sbin/jail/command.c projects/zfsd/head/usr.sbin/kgmon/kgmon.c projects/zfsd/head/usr.sbin/makefs/makefs.8 projects/zfsd/head/usr.sbin/makefs/makefs.c projects/zfsd/head/usr.sbin/makefs/makefs.h projects/zfsd/head/usr.sbin/makefs/mtree.c projects/zfsd/head/usr.sbin/makefs/walk.c projects/zfsd/head/usr.sbin/mergemaster/mergemaster.sh projects/zfsd/head/usr.sbin/mountd/exports.5 projects/zfsd/head/usr.sbin/mountd/mountd.c projects/zfsd/head/usr.sbin/moused/moused.8 projects/zfsd/head/usr.sbin/mptable/mptable.c projects/zfsd/head/usr.sbin/mtest/mtest.c projects/zfsd/head/usr.sbin/mtree/Makefile projects/zfsd/head/usr.sbin/named/Makefile projects/zfsd/head/usr.sbin/ndiscvt/inf-parse.y projects/zfsd/head/usr.sbin/ndp/ndp.8 projects/zfsd/head/usr.sbin/ndp/ndp.c projects/zfsd/head/usr.sbin/newsyslog/newsyslog.8 projects/zfsd/head/usr.sbin/newsyslog/newsyslog.c projects/zfsd/head/usr.sbin/nfsd/nfsd.8 projects/zfsd/head/usr.sbin/nfsd/nfsd.c projects/zfsd/head/usr.sbin/nfsd/nfsv4.4 projects/zfsd/head/usr.sbin/pciconf/Makefile projects/zfsd/head/usr.sbin/pciconf/cap.c projects/zfsd/head/usr.sbin/pciconf/pciconf.c projects/zfsd/head/usr.sbin/pkg/Makefile projects/zfsd/head/usr.sbin/pkg/pkg.c projects/zfsd/head/usr.sbin/pkg_install/lib/lib.h projects/zfsd/head/usr.sbin/pkg_install/lib/pkgng.c projects/zfsd/head/usr.sbin/portsnap/portsnap/portsnap.sh projects/zfsd/head/usr.sbin/ppp/README.changes projects/zfsd/head/usr.sbin/ppp/arp.c projects/zfsd/head/usr.sbin/ppp/defs.h projects/zfsd/head/usr.sbin/ppp/ppp.8.m4 projects/zfsd/head/usr.sbin/pw/bitmap.c projects/zfsd/head/usr.sbin/pw/grupd.c projects/zfsd/head/usr.sbin/pw/pw_group.c projects/zfsd/head/usr.sbin/pw/pw_log.c projects/zfsd/head/usr.sbin/pw/pw_user.c projects/zfsd/head/usr.sbin/pw/pw_vpw.c projects/zfsd/head/usr.sbin/pw/pwupd.c projects/zfsd/head/usr.sbin/pw/rm_r.c projects/zfsd/head/usr.sbin/rarpd/rarpd.c projects/zfsd/head/usr.sbin/rpcbind/rpcbind.c projects/zfsd/head/usr.sbin/rtadvd/rtadvd.8 projects/zfsd/head/usr.sbin/rtadvd/rtadvd.c projects/zfsd/head/usr.sbin/sendmail/Makefile projects/zfsd/head/usr.sbin/service/service.8 projects/zfsd/head/usr.sbin/service/service.sh projects/zfsd/head/usr.sbin/syslogd/syslogd.c projects/zfsd/head/usr.sbin/sysrc/Makefile projects/zfsd/head/usr.sbin/tcpdrop/tcpdrop.8 projects/zfsd/head/usr.sbin/tcpdrop/tcpdrop.c projects/zfsd/head/usr.sbin/timed/timed/acksend.c projects/zfsd/head/usr.sbin/timed/timed/byteorder.c projects/zfsd/head/usr.sbin/timed/timed/candidate.c projects/zfsd/head/usr.sbin/timed/timed/cksum.c projects/zfsd/head/usr.sbin/timed/timed/correct.c projects/zfsd/head/usr.sbin/timed/timed/master.c projects/zfsd/head/usr.sbin/timed/timed/measure.c projects/zfsd/head/usr.sbin/timed/timed/networkdelta.c projects/zfsd/head/usr.sbin/timed/timed/readmsg.c projects/zfsd/head/usr.sbin/timed/timed/slave.c projects/zfsd/head/usr.sbin/timed/timed/timed.c projects/zfsd/head/usr.sbin/timed/timedc/cmds.c projects/zfsd/head/usr.sbin/timed/timedc/timedc.c projects/zfsd/head/usr.sbin/usbconfig/dump.c projects/zfsd/head/usr.sbin/watchdogd/watchdogd.c projects/zfsd/head/usr.sbin/ypserv/yp_main.c Directory Properties: projects/zfsd/head/ (props changed) projects/zfsd/head/cddl/contrib/opensolaris/ (props changed) projects/zfsd/head/cddl/contrib/opensolaris/cmd/zfs/ (props changed) projects/zfsd/head/cddl/contrib/opensolaris/lib/libzfs/ (props changed) projects/zfsd/head/contrib/bind9/ (props changed) projects/zfsd/head/contrib/binutils/ (props changed) projects/zfsd/head/contrib/binutils/config/acinclude.m4 (props changed) projects/zfsd/head/contrib/bmake/ (props changed) projects/zfsd/head/contrib/bsnmp/lib/tc.def (props changed) projects/zfsd/head/contrib/bsnmp/snmp_target/snmp_target.3 (props changed) projects/zfsd/head/contrib/bsnmp/snmp_target/target_snmp.c (props changed) projects/zfsd/head/contrib/bsnmp/snmp_target/target_tree.def (props changed) projects/zfsd/head/contrib/bsnmp/snmp_usm/snmp_usm.3 (props changed) projects/zfsd/head/contrib/bsnmp/snmp_usm/usm_snmp.c (props changed) projects/zfsd/head/contrib/bsnmp/snmp_usm/usm_tree.def (props changed) projects/zfsd/head/contrib/bsnmp/snmp_vacm/snmp_vacm.3 (props changed) projects/zfsd/head/contrib/bsnmp/snmp_vacm/vacm_snmp.c (props changed) projects/zfsd/head/contrib/bsnmp/snmp_vacm/vacm_tree.def (props changed) projects/zfsd/head/contrib/compiler-rt/ (props changed) projects/zfsd/head/contrib/dialog/ (props changed) projects/zfsd/head/contrib/dialog/samples/copifuncs/copi.ifman1 (props changed) projects/zfsd/head/contrib/dialog/samples/copifuncs/copi.ifmcfg2 (props changed) projects/zfsd/head/contrib/dialog/samples/copifuncs/copi.ifmcfg4 (props changed) projects/zfsd/head/contrib/dialog/samples/copifuncs/copi.ifmcfg5 (props changed) projects/zfsd/head/contrib/dialog/samples/copifuncs/copi.sendifm2 (props changed) projects/zfsd/head/contrib/dtc/ (props changed) projects/zfsd/head/contrib/ee/ (props changed) projects/zfsd/head/contrib/ee/Makefile (props changed) projects/zfsd/head/contrib/ee/ee.c (props changed) projects/zfsd/head/contrib/expat/ (props changed) projects/zfsd/head/contrib/expat/COPYING (props changed) projects/zfsd/head/contrib/expat/doc/expat.png (props changed) projects/zfsd/head/contrib/expat/doc/style.css (props changed) projects/zfsd/head/contrib/expat/doc/xmlwf.1 (props changed) projects/zfsd/head/contrib/expat/examples/elements.c (props changed) projects/zfsd/head/contrib/expat/examples/outline.c (props changed) projects/zfsd/head/contrib/expat/lib/ascii.h (props changed) projects/zfsd/head/contrib/expat/lib/asciitab.h (props changed) projects/zfsd/head/contrib/expat/lib/expat_external.h (props changed) projects/zfsd/head/contrib/expat/lib/iasciitab.h (props changed) projects/zfsd/head/contrib/expat/lib/internal.h (props changed) projects/zfsd/head/contrib/expat/lib/latin1tab.h (props changed) projects/zfsd/head/contrib/expat/lib/nametab.h (props changed) projects/zfsd/head/contrib/expat/lib/utf8tab.h (props changed) projects/zfsd/head/contrib/expat/lib/xmlrole.h (props changed) projects/zfsd/head/contrib/expat/lib/xmltok.h (props changed) projects/zfsd/head/contrib/expat/lib/xmltok_impl.h (props changed) projects/zfsd/head/contrib/expat/lib/xmltok_ns.c (props changed) projects/zfsd/head/contrib/expat/tests/benchmark/README.txt (props changed) projects/zfsd/head/contrib/expat/tests/benchmark/benchmark.c (props changed) projects/zfsd/head/contrib/expat/tests/chardata.c (props changed) projects/zfsd/head/contrib/expat/tests/chardata.h (props changed) projects/zfsd/head/contrib/expat/tests/minicheck.c (props changed) projects/zfsd/head/contrib/expat/tests/runtestspp.cpp (props changed) projects/zfsd/head/contrib/expat/xmlwf/codepage.c (props changed) projects/zfsd/head/contrib/expat/xmlwf/codepage.h (props changed) projects/zfsd/head/contrib/expat/xmlwf/ct.c (props changed) projects/zfsd/head/contrib/expat/xmlwf/filemap.h (props changed) projects/zfsd/head/contrib/expat/xmlwf/unixfilemap.c (props changed) projects/zfsd/head/contrib/expat/xmlwf/win32filemap.c (props changed) projects/zfsd/head/contrib/expat/xmlwf/xmlfile.c (props changed) projects/zfsd/head/contrib/expat/xmlwf/xmlfile.h (props changed) projects/zfsd/head/contrib/expat/xmlwf/xmlmime.c (props changed) projects/zfsd/head/contrib/expat/xmlwf/xmlmime.h (props changed) projects/zfsd/head/contrib/expat/xmlwf/xmltchar.h (props changed) projects/zfsd/head/contrib/expat/xmlwf/xmlurl.h (props changed) projects/zfsd/head/contrib/expat/xmlwf/xmlwin32url.cxx (props changed) projects/zfsd/head/contrib/file/ (props changed) projects/zfsd/head/contrib/gcc/ (props changed) projects/zfsd/head/contrib/gcc/config/i386/host-cygwin.c (props changed) projects/zfsd/head/contrib/gcc/config/i386/winnt-cxx.c (props changed) projects/zfsd/head/contrib/gcc/config/i386/winnt-stubs.c (props changed) projects/zfsd/head/contrib/gdb/ (props changed) projects/zfsd/head/contrib/gdb/gdb/config/i386/nm-nto.h (props changed) projects/zfsd/head/contrib/gdb/gdb/config/i386/nto.mh (props changed) projects/zfsd/head/contrib/gdb/gdb/config/i386/nto.mt (props changed) projects/zfsd/head/contrib/gdb/gdb/config/i386/tm-nto.h (props changed) projects/zfsd/head/contrib/gdb/gdb/config/tm-nto.h (props changed) projects/zfsd/head/contrib/gdb/gdb/i386-nto-tdep.c (props changed) projects/zfsd/head/contrib/gdb/gdb/nto-procfs.c (props changed) projects/zfsd/head/contrib/gdb/gdb/nto-tdep.c (props changed) projects/zfsd/head/contrib/gdb/gdb/nto-tdep.h (props changed) projects/zfsd/head/contrib/gdb/gdb/proc-api.c (props changed) projects/zfsd/head/contrib/gdb/gdb/proc-events.c (props changed) projects/zfsd/head/contrib/gdb/gdb/proc-flags.c (props changed) projects/zfsd/head/contrib/gdb/gdb/proc-why.c (props changed) projects/zfsd/head/contrib/gdb/gdb/uw-thread.c (props changed) projects/zfsd/head/contrib/gdtoa/ (props changed) projects/zfsd/head/contrib/ipfilter/FreeBSD-4.0/ipv6-patch (props changed) projects/zfsd/head/contrib/ipfilter/FreeBSD-4.0/ipv6-patch-4.0 (props changed) projects/zfsd/head/contrib/less/ (props changed) projects/zfsd/head/contrib/libarchive/ (props changed) projects/zfsd/head/contrib/libarchive/libarchive/ (props changed) projects/zfsd/head/contrib/libc++/ (props changed) projects/zfsd/head/contrib/libcxxrt/ (props changed) projects/zfsd/head/contrib/libpcap/ (props changed) projects/zfsd/head/contrib/libpcap/configure.in (props changed) projects/zfsd/head/contrib/libstdc++/ (props changed) projects/zfsd/head/contrib/llvm/ (props changed) projects/zfsd/head/contrib/llvm/lib/Target/Hexagon/HexagonAsmPrinter.h (props changed) projects/zfsd/head/contrib/llvm/tools/clang/ (props changed) projects/zfsd/head/contrib/ntp/ (props changed) projects/zfsd/head/contrib/ntp/html/drivers/driver44.html (props changed) projects/zfsd/head/contrib/ntp/include/icom.h (props changed) projects/zfsd/head/contrib/ntp/readme.y2kfixes (props changed) projects/zfsd/head/contrib/ntp/scripts/stats/clock.awk (props changed) projects/zfsd/head/contrib/ntp/scripts/stats/dupe.awk (props changed) projects/zfsd/head/contrib/ntp/scripts/stats/ensemble.S (props changed) projects/zfsd/head/contrib/ntp/scripts/stats/ensemble.awk (props changed) projects/zfsd/head/contrib/ntp/scripts/stats/etf.S (props changed) projects/zfsd/head/contrib/ntp/scripts/stats/etf.awk (props changed) projects/zfsd/head/contrib/ntp/scripts/stats/itf.S (props changed) projects/zfsd/head/contrib/ntp/scripts/stats/itf.awk (props changed) projects/zfsd/head/contrib/ntp/scripts/stats/loop.S (props changed) projects/zfsd/head/contrib/ntp/scripts/stats/loop.awk (props changed) projects/zfsd/head/contrib/ntp/scripts/stats/loop_summary (props changed) projects/zfsd/head/contrib/ntp/scripts/stats/peer.awk (props changed) projects/zfsd/head/contrib/ntp/scripts/stats/psummary.awk (props changed) projects/zfsd/head/contrib/ntp/scripts/stats/tdata.S (props changed) projects/zfsd/head/contrib/ntp/scripts/stats/tdata.awk (props changed) projects/zfsd/head/contrib/one-true-awk/ (props changed) projects/zfsd/head/contrib/openbsm/ (props changed) projects/zfsd/head/contrib/sendmail/ (props changed) projects/zfsd/head/contrib/tcpdump/ (props changed) projects/zfsd/head/contrib/tcpdump/bgp.h (props changed) projects/zfsd/head/contrib/tcpdump/configure.in (props changed) projects/zfsd/head/contrib/tcpdump/ipproto.c (props changed) projects/zfsd/head/contrib/tcpdump/l2vpn.c (props changed) projects/zfsd/head/contrib/tcpdump/l2vpn.h (props changed) projects/zfsd/head/contrib/tcpdump/nlpid.c (props changed) projects/zfsd/head/contrib/tcpdump/print-syslog.c (props changed) projects/zfsd/head/contrib/top/ (props changed) projects/zfsd/head/contrib/wpa/ (props changed) projects/zfsd/head/contrib/xz/ (props changed) projects/zfsd/head/crypto/heimdal/ (props changed) projects/zfsd/head/crypto/heimdal/doc/vars.texi (props changed) projects/zfsd/head/crypto/openssl/ (props changed) projects/zfsd/head/crypto/openssl/crypto/bn/asm/s390x.S (props changed) projects/zfsd/head/crypto/openssl/crypto/bn/bn_const.c (props changed) projects/zfsd/head/crypto/openssl/crypto/ocsp/ocsp_cl.c (props changed) projects/zfsd/head/crypto/openssl/crypto/ocsp/ocsp_ext.c (props changed) projects/zfsd/head/crypto/openssl/crypto/ocsp/ocsp_lib.c (props changed) projects/zfsd/head/crypto/openssl/crypto/ocsp/ocsp_srv.c (props changed) projects/zfsd/head/crypto/openssl/crypto/rand/rand_lcl.h (props changed) projects/zfsd/head/crypto/openssl/crypto/vms_rms.h (props changed) projects/zfsd/head/crypto/openssl/util/ssleay.num (props changed) projects/zfsd/head/gnu/lib/ (props changed) projects/zfsd/head/gnu/usr.bin/binutils/ (props changed) projects/zfsd/head/gnu/usr.bin/cc/cc_tools/ (props changed) projects/zfsd/head/gnu/usr.bin/gdb/ (props changed) projects/zfsd/head/lib/libc/ (props changed) projects/zfsd/head/lib/libutil/ (props changed) projects/zfsd/head/sbin/ (props changed) projects/zfsd/head/share/man/man4/ (props changed) projects/zfsd/head/share/zoneinfo/ (props changed) projects/zfsd/head/sys/ (props changed) projects/zfsd/head/sys/boot/ (props changed) projects/zfsd/head/sys/boot/i386/efi/ (props changed) projects/zfsd/head/sys/cddl/contrib/opensolaris/ (props changed) projects/zfsd/head/sys/conf/ (props changed) projects/zfsd/head/sys/contrib/dev/acpica/ (props changed) projects/zfsd/head/sys/contrib/dev/acpica/common/ (props changed) projects/zfsd/head/sys/contrib/dev/acpica/compiler/ (props changed) projects/zfsd/head/sys/contrib/dev/acpica/components/debugger/ (props changed) projects/zfsd/head/sys/contrib/dev/acpica/components/disassembler/ (props changed) projects/zfsd/head/sys/contrib/dev/acpica/components/dispatcher/ (props changed) projects/zfsd/head/sys/contrib/dev/acpica/components/events/ (props changed) projects/zfsd/head/sys/contrib/dev/acpica/components/executer/ (props changed) projects/zfsd/head/sys/contrib/dev/acpica/components/hardware/ (props changed) projects/zfsd/head/sys/contrib/dev/acpica/components/namespace/ (props changed) projects/zfsd/head/sys/contrib/dev/acpica/components/parser/ (props changed) projects/zfsd/head/sys/contrib/dev/acpica/components/resources/ (props changed) projects/zfsd/head/sys/contrib/dev/acpica/components/tables/ (props changed) projects/zfsd/head/sys/contrib/dev/acpica/components/utilities/ (props changed) projects/zfsd/head/sys/contrib/dev/acpica/include/ (props changed) projects/zfsd/head/sys/contrib/dev/acpica/os_specific/ (props changed) projects/zfsd/head/sys/contrib/octeon-sdk/ (props changed) projects/zfsd/head/sys/dev/ath/ath_hal/ar5211/boss.ini (props changed) projects/zfsd/head/sys/dev/bktr/CHANGELOG.TXT (props changed) projects/zfsd/head/sys/dev/ixgbe/ixgbe_82598.h (props changed) projects/zfsd/head/sys/dev/ixgbe/ixgbe_82599.h (props changed) projects/zfsd/head/sys/dev/ixgbe/ixgbe_x540.c (props changed) projects/zfsd/head/sys/dev/ixgbe/ixgbe_x540.h (props changed) projects/zfsd/head/sys/mips/rmi/msgring_xls.cfg (props changed) projects/zfsd/head/sys/modules/digi/Makefile (props changed) projects/zfsd/head/sys/modules/digi/Makefile.inc (props changed) projects/zfsd/head/sys/modules/isci/Makefile (props changed) projects/zfsd/head/sys/modules/sound/driver/ich/Makefile (props changed) projects/zfsd/head/sys/powerpc/wii/locore.S (props changed) projects/zfsd/head/usr.bin/calendar/ (props changed) projects/zfsd/head/usr.bin/csup/ (props changed) projects/zfsd/head/usr.bin/procstat/ (props changed) projects/zfsd/head/usr.sbin/bsnmpd/modules/snmp_target/Makefile (props changed) projects/zfsd/head/usr.sbin/bsnmpd/modules/snmp_usm/Makefile (props changed) projects/zfsd/head/usr.sbin/bsnmpd/modules/snmp_vacm/Makefile (props changed) projects/zfsd/head/usr.sbin/bsnmpd/tools/libbsnmptools/bsnmptools.c (props changed) projects/zfsd/head/usr.sbin/jail/ (props changed) projects/zfsd/head/usr.sbin/ndiscvt/ (props changed) projects/zfsd/head/usr.sbin/rtadvd/ (props changed) Modified: projects/zfsd/head/COPYRIGHT ============================================================================== --- projects/zfsd/head/COPYRIGHT Tue Feb 26 21:13:09 2013 (r247352) +++ projects/zfsd/head/COPYRIGHT Tue Feb 26 21:16:10 2013 (r247353) @@ -4,7 +4,7 @@ The compilation of software known as FreeBSD is distributed under the following terms: -Copyright (c) 1992-2012 The FreeBSD Project. All rights reserved. +Copyright (c) 1992-2013 The FreeBSD Project. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions Modified: projects/zfsd/head/LOCKS ============================================================================== --- projects/zfsd/head/LOCKS Tue Feb 26 21:13:09 2013 (r247352) +++ projects/zfsd/head/LOCKS Tue Feb 26 21:16:10 2013 (r247353) @@ -11,3 +11,4 @@ releng/4.* Requires Security Officer app releng/5.* Requires Security Officer approval. releng/6.* Requires Security Officer approval. releng/7.* Requires Security Officer approval. +releng/8.* Requires Security Officer approval. Modified: projects/zfsd/head/Makefile.inc1 ============================================================================== --- projects/zfsd/head/Makefile.inc1 Tue Feb 26 21:13:09 2013 (r247352) +++ projects/zfsd/head/Makefile.inc1 Tue Feb 26 21:16:10 2013 (r247353) @@ -4,6 +4,8 @@ # Make command line options: # -DNO_CLEANDIR run ${MAKE} clean, instead of ${MAKE} cleandir # -DNO_CLEAN do not clean at all +# -DDB_FROM_SRC use the user/group databases in src/etc instead of +# the system database when installing. # -DNO_SHARE do not go into share subdir # -DKERNFAST define NO_KERNEL{CONFIG,CLEAN,DEPEND,OBJ} # -DNO_KERNELCONFIG do not run config in ${MAKE} buildkernel @@ -11,8 +13,8 @@ # -DNO_KERNELDEPEND do not run ${MAKE} depend in ${MAKE} buildkernel # -DNO_KERNELOBJ do not run ${MAKE} obj in ${MAKE} buildkernel # -DNO_PORTSUPDATE do not update ports in ${MAKE} update +# -DNO_ROOT install without using root privilege # -DNO_DOCUPDATE do not update doc in ${MAKE} update -# -DNO_WWWUPDATE do not update www in ${MAKE} update # -DNO_CTF do not run the DTrace CTF conversion tools on built objects # LOCAL_DIRS="list of dirs" to add additional dirs to the SUBDIR list # LOCAL_LIB_DIRS="list of dirs" to add additional dirs to libraries target @@ -20,9 +22,13 @@ # to be created before files are installed # LOCAL_TOOL_DIRS="list of dirs" to add additional dirs to the build-tools # list +# METALOG="path to metadata log" to write permission and ownership +# when NO_ROOT is set. (default: ${DESTDIR}/METALOG) # TARGET="machine" to crossbuild world for a different machine type # TARGET_ARCH= may be required when a TARGET supports multiple endians # BUILDENV_SHELL= shell to launch for the buildenv target (def:/bin/sh) +# WORLD_FLAGS= additional flags to pass to make(1) during buildworld +# KERNEL_FLAGS= additional flags to pass to make(1) during buildkernel # # The intended user-driven targets are: @@ -181,7 +187,7 @@ OBJTREE= ${MAKEOBJDIRPREFIX}/${TARGET}.$ .endif WORLDTMP= ${OBJTREE}${.CURDIR}/tmp # /usr/games added for fortune which depend on strfile -BPATH= ${WORLDTMP}/legacy/usr/sbin:${WORLDTMP}/legacy/usr/bin:${WORLDTMP}/legacy/usr/games +BPATH= ${WORLDTMP}/legacy/usr/sbin:${WORLDTMP}/legacy/usr/bin:${WORLDTMP}/legacy/usr/games:${WORLDTMP}/legacy/bin XPATH= ${WORLDTMP}/usr/sbin:${WORLDTMP}/usr/bin:${WORLDTMP}/usr/games STRICTTMPPATH= ${BPATH}:${XPATH} TMPPATH= ${STRICTTMPPATH}:${PATH} @@ -241,7 +247,7 @@ BMAKEENV= INSTALL="sh ${.CURDIR}/tools/i MAKEFLAGS="-m ${.CURDIR}/tools/build/mk ${.MAKEFLAGS}" \ COMPILER_TYPE=${COMPILER_TYPE} BMAKE= MAKEOBJDIRPREFIX=${WORLDTMP} \ - ${BMAKEENV} ${MAKE} -f Makefile.inc1 \ + ${BMAKEENV} ${MAKE} ${WORLD_FLAGS} -f Makefile.inc1 \ DESTDIR= \ BOOTSTRAPPING=${OSRELDATE} \ SSP_CFLAGS= \ @@ -251,7 +257,7 @@ BMAKE= MAKEOBJDIRPREFIX=${WORLDTMP} \ # build-tools stage TMAKE= MAKEOBJDIRPREFIX=${OBJTREE} \ - ${BMAKEENV} ${MAKE} -f Makefile.inc1 \ + ${BMAKEENV} ${MAKE} ${WORLD_FLAGS} -f Makefile.inc1 \ TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \ DESTDIR= \ BOOTSTRAPPING=${OSRELDATE} \ @@ -284,7 +290,7 @@ WMAKE_COMPILER_TYPE= gcc WMAKE_COMPILER_TYPE= clang .endif WMAKEENV+= COMPILER_TYPE=${WMAKE_COMPILER_TYPE} -WMAKE= ${WMAKEENV} ${MAKE} -f Makefile.inc1 DESTDIR=${WORLDTMP} +WMAKE= ${WMAKEENV} ${MAKE} ${WORLD_FLAGS} -f Makefile.inc1 DESTDIR=${WORLDTMP} .if ${TARGET_ARCH} == "amd64" || ${TARGET_ARCH} == "powerpc64" # 32 bit world @@ -334,18 +340,20 @@ LIB32WMAKEFLAGS+= \ CXX="${CXX} ${LIB32FLAGS}" \ DESTDIR=${LIB32TMP} \ -DCOMPAT_32BIT \ + -DLIBRARIES_ONLY \ -DNO_CPU_CFLAGS \ -DNO_CTF \ -DNO_LINT LIB32WMAKE= ${LIB32WMAKEENV} ${MAKE} ${LIB32WMAKEFLAGS} \ -DWITHOUT_BIND -DWITHOUT_MAN -DWITHOUT_INFO -DWITHOUT_HTML -LIB32IMAKE= ${LIB32WMAKE:NINSTALL=*:NDESTDIR=*:N_LDSCRIPTROOT=*} -DNO_INCS +LIB32IMAKE= ${LIB32WMAKE:NINSTALL=*:NDESTDIR=*:N_LDSCRIPTROOT=*} -DNO_INCS \ + ${IMAKE_INSTALL} .endif -# install stage IMAKEENV= ${CROSSENV:N_LDSCRIPTROOT=*} -IMAKE= ${IMAKEENV} ${MAKE} -f Makefile.inc1 +IMAKE= ${IMAKEENV} ${MAKE} -f Makefile.inc1 \ + ${IMAKE_INSTALL} ${IMAKE_MTREE} .if empty(.MAKEFLAGS:M-n) IMAKEENV+= PATH=${STRICTTMPPATH}:${INSTALLTMP} \ LD_LIBRARY_PATH=${INSTALLTMP} \ @@ -354,10 +362,25 @@ IMAKE+= __MAKE_SHELL=${INSTALLTMP}/sh .else IMAKEENV+= PATH=${TMPPATH}:${INSTALLTMP} .endif +.if defined(DB_FROM_SRC) +INSTALLFLAGS+= -N ${.CURDIR}/etc +MTREEFLAGS+= -N ${.CURDIR}/etc +.endif +.if defined(NO_ROOT) +METALOG?= ${DESTDIR}/${DISTDIR}/METALOG +IMAKE+= -DNO_ROOT METALOG=${METALOG} +INSTALL_DDIR= ${DESTDIR}/${DISTDIR} +INSTALLFLAGS+= -U -M ${METALOG} -D ${INSTALL_DDIR:S://:/:g:C:/$::} +MTREEFLAGS+= -W +.endif +.if defined(DB_FROM_SRC) || defined(NO_ROOT) +IMAKE_INSTALL= INSTALL="install ${INSTALLFLAGS}" +IMAKE_MTREE= MTREE_CMD="nmtree ${MTREEFLAGS}" +.endif # kernel stage KMAKEENV= ${WMAKEENV} -KMAKE= ${KMAKEENV} ${MAKE} KERNEL=${INSTKERNNAME} +KMAKE= ${KMAKEENV} ${MAKE} ${KERNEL_FLAGS} KERNEL=${INSTKERNNAME} # # buildworld @@ -391,7 +414,7 @@ _worldtmp: rm -f ${OBJTREE}${.CURDIR}/usr.bin/truss/ioctl.c .endif .for _dir in \ - lib usr legacy/usr + lib usr legacy/bin legacy/usr mkdir -p ${WORLDTMP}/${_dir} .endfor mtree -deU -f ${.CURDIR}/etc/mtree/BSD.usr.dist \ @@ -511,6 +534,8 @@ build32: .endfor .for _dir in lib/ncurses/ncurses lib/ncurses/ncursesw lib/libmagic cd ${.CURDIR}/${_dir}; \ + WORLDTMP=${WORLDTMP} \ + MAKEFLAGS="-m ${.CURDIR}/tools/build/mk ${.MAKEFLAGS}" \ MAKEOBJDIRPREFIX=${OBJTREE}/lib32 ${MAKE} SSP_CFLAGS= DESTDIR= \ DIRPRFX=${_dir}/ -DNO_LINT -DNO_CPU_CFLAGS -DNO_WARNS -DNO_CTF \ -DEARLY_BUILD build-tools @@ -593,9 +618,11 @@ kernel-toolchain: ${TOOLCHAIN_TGTS:N_inc installcheck: # -# Require DESTDIR to be set if installing for a different architecture. +# Require DESTDIR to be set if installing for a different architecture or +# using the user/group database in the source tree. # -.if ${TARGET_ARCH} != ${MACHINE_ARCH} || ${TARGET} != ${MACHINE} +.if ${TARGET_ARCH} != ${MACHINE_ARCH} || ${TARGET} != ${MACHINE} || \ + defined(DB_FROM_SRC) .if !make(distributeworld) installcheck: installcheck_DESTDIR installcheck_DESTDIR: @@ -606,10 +633,11 @@ installcheck_DESTDIR: .endif .endif +.if !defined(DB_FROM_SRC) # # Check for missing UIDs/GIDs. # -CHECK_UIDS= +CHECK_UIDS= auditdistd CHECK_GIDS= audit .if ${MK_SENDMAIL} != "no" CHECK_UIDS+= smmsp @@ -633,6 +661,7 @@ installcheck_UGID: false; \ fi .endfor +.endif # # Required install tools to be saved in a scratch dir for safety. @@ -644,10 +673,14 @@ _install-info= install-info _zoneinfo= zic tzsetup .endif +.if exists(/usr/sbin/nmtree) +_nmtree_itools= nmtree +.endif + ITOOLS= [ awk cap_mkdb cat chflags chmod chown \ - date echo egrep find grep ${_install-info} \ - ln lockf make mkdir mtree mv pwd_mkdb rm sed sh sysctl \ - test true uname wc ${_zoneinfo} + date echo egrep find grep id install ${_install-info} \ + ln lockf make mkdir mtree ${_nmtree_itools} mv pwd_mkdb \ + rm sed sh sysctl test true uname wc ${_zoneinfo} # # distributeworld @@ -668,6 +701,8 @@ EXTRA_DISTRIBUTIONS+= games EXTRA_DISTRIBUTIONS+= lib32 .endif +MTREE_MAGIC?= mtree 2.0 + distributeworld installworld: installcheck mkdir -p ${INSTALLTMP} progs=$$(for prog in ${ITOOLS}; do \ @@ -690,6 +725,9 @@ distributeworld installworld: installche done); \ cp $$libs $$progs ${INSTALLTMP} cp -R $${PATH_LOCALE:-"/usr/share/locale"} ${INSTALLTMP}/locale +.if defined(NO_ROOT) + echo "#${MTREE_MAGIC}" > ${METALOG} +.endif .if make(distributeworld) .for dist in ${EXTRA_DISTRIBUTIONS} -mkdir ${DESTDIR}/${DISTDIR}/${dist} @@ -699,10 +737,20 @@ distributeworld installworld: installche -p ${DESTDIR}/${DISTDIR}/${dist}/usr >/dev/null mtree -deU -f ${.CURDIR}/etc/mtree/BSD.include.dist \ -p ${DESTDIR}/${DISTDIR}/${dist}/usr/include >/dev/null +.if defined(NO_ROOT) + ${IMAKEENV} nmtree -C -f ${.CURDIR}/etc/mtree/BSD.root.dist | \ + sed -e 's#^\./#./${dist}/#' >> ${METALOG} + ${IMAKEENV} nmtree -C -f ${.CURDIR}/etc/mtree/BSD.usr.dist | \ + sed -e 's#^\./#./${dist}/usr/#' >> ${METALOG} + ${IMAKEENV} nmtree -C -f ${.CURDIR}/etc/mtree/BSD.include.dist | \ + sed -e 's#^\./#./${dist}/usr/include/#' >> ${METALOG} +.endif .endfor -mkdir ${DESTDIR}/${DISTDIR}/base - ${_+_}cd ${.CURDIR}; ${IMAKE} distrib-dirs \ - DESTDIR=${DESTDIR}/${DISTDIR}/base + cd ${.CURDIR}/etc; ${CROSSENV} PATH=${TMPPATH} ${MAKE} \ + METALOG=${METALOG} ${IMAKE_INSTALL} ${IMAKE_MTREE} \ + DISTBASE=/base DESTDIR=${DESTDIR}/${DISTDIR}/base \ + LOCAL_MTREE=${LOCAL_MTREE} distrib-dirs .endif ${_+_}cd ${.CURDIR}; ${IMAKE} re${.TARGET:S/world$//}; \ ${IMAKEENV} rm -rf ${INSTALLTMP} @@ -710,12 +758,30 @@ distributeworld installworld: installche .for dist in ${EXTRA_DISTRIBUTIONS} find ${DESTDIR}/${DISTDIR}/${dist} -empty -delete .endfor +.if defined(NO_ROOT) +.for dist in base ${EXTRA_DISTRIBUTIONS} + @# For each file that exists in this dist, print the corresponding + @# line from the METALOG. This relies on the fact that + @# a line containing only the filename will sort immediatly before + @# the relevant mtree line. + cd ${DESTDIR}/${DISTDIR}; \ + find ./${dist} | sort -u ${METALOG} - | \ + awk 'BEGIN { print "#${MTREE_MAGIC}" } !/ type=/ { file = $$1 } / type=/ { if ($$1 == file) { sub(/^\.\/${dist}\//, "./"); print } }' > \ + ${DESTDIR}/${DISTDIR}/${dist}.meta +.endfor +.endif .endif packageworld: .for dist in base ${EXTRA_DISTRIBUTIONS} +.if defined(NO_ROOT) + ${_+_}cd ${DESTDIR}/${DISTDIR}/${dist}; \ + tar cvJf ${DESTDIR}/${DISTDIR}/${dist}.txz \ + @${DESTDIR}/${DISTDIR}/${dist}.meta +.else ${_+_}cd ${DESTDIR}/${DISTDIR}/${dist}; \ tar cvJf ${DESTDIR}/${DISTDIR}/${dist}.txz . +.endif .endfor # @@ -751,7 +817,8 @@ redistribute: .endif distrib-dirs distribution: - cd ${.CURDIR}/etc; ${CROSSENV} PATH=${TMPPATH} ${MAKE} ${.TARGET} + cd ${.CURDIR}/etc; ${CROSSENV} PATH=${TMPPATH} ${MAKE} \ + ${IMAKE_INSTALL} ${IMAKE_MTREE} METALOG=${METALOG} ${.TARGET} # # buildkernel and installkernel @@ -903,7 +970,7 @@ reinstallkernel reinstallkernel.debug: i @echo "--------------------------------------------------------------" cd ${KRNLOBJDIR}/${INSTALLKERNEL}; \ ${CROSSENV} PATH=${TMPPATH} \ - ${MAKE} KERNEL=${INSTKERNNAME} ${.TARGET:S/kernel//} + ${MAKE} ${IMAKE_INSTALL} KERNEL=${INSTKERNNAME} ${.TARGET:S/kernel//} distributekernel distributekernel.debug: .if empty(INSTALLKERNEL) @@ -953,6 +1020,13 @@ update: @echo "--------------------------------------------------------------" @echo ">>> Running ${SUP}" @echo "--------------------------------------------------------------" + @echo "!! WARNING WARNING WARNING WARNING WARNING WARNING WARNING !!" + @echo "!! Update methods with ${SUP} are deprecated." + @echo "!! Please see http://www.freebsd.org/handbook/svn.html" + @echo "!! and convert your update method to SVN_UPDATE or" + @echo "!! freebsd-update(8)." + @echo "!! WARNING WARNING WARNING WARNING WARNING WARNING WARNING !!" + @sleep 5 .if defined(SUPFILE) @${SUP} ${SUPFLAGS} ${SUPFILE} .endif @@ -968,9 +1042,6 @@ update: .if defined(DOCSUPFILE) && !defined(NO_DOCUPDATE) @${SUP} ${SUPFLAGS} ${DOCSUPFILE} .endif -.if defined(WWWSUPFILE) && !defined(NO_WWWUPDATE) - @${SUP} ${SUPFLAGS} ${WWWSUPFILE} -.endif .endif .if defined(CVS_UPDATE) @cd ${.CURDIR} ; \ @@ -978,6 +1049,13 @@ update: echo "--------------------------------------------------------------" ; \ echo ">>> Updating ${.CURDIR} from CVS repository" ${CVSROOT} ; \ echo "--------------------------------------------------------------" ; \ + echo "!! WARNING WARNING WARNING WARNING WARNING WARNING WARNING !!" ; \ + echo "!! Update methods with CVS are deprecated." ; \ + echo "!! Please see http://www.freebsd.org/handbook/svn.html" ; \ + echo "!! and convert your update method to SVN_UPDATE or" ; \ + echo "!! freebsd-update(8)." ; \ + echo "!! WARNING WARNING WARNING WARNING WARNING WARNING WARNING !!" ; \ + sleep 5 ; \ echo ${CVS} -R -q update ${CVSFLAGS} ; \ ${CVS} -R -q update ${CVSFLAGS} ; \ fi @@ -1054,7 +1132,17 @@ _lex= usr.bin/lex .endif .if ${BOOTSTRAPPING} < 1000013 -_yacc= usr.bin/yacc +_yacc= lib/liby \ + usr.bin/yacc +.endif + +.if ${BOOTSTRAPPING} < 1000026 +_nmtree= lib/libnetbsd \ + usr.sbin/nmtree +.endif + +.if ${BOOTSTRAPPING} < 1000027 +_cat= bin/cat .endif .if ${BOOTSTRAPPING} >= 900040 && ${BOOTSTRAPPING} < 900041 @@ -1082,7 +1170,10 @@ _dtrace_tools= cddl/usr.bin/sgsmsg cddl/ lib/libdwarf cddl/usr.bin/ctfconvert cddl/usr.bin/ctfmerge .endif -.if ${MK_FDT} != "no" +# Default to building the BSDL DTC, but build the GPL one if users explicitly +# request it. +_dtc= usr.bin/dtc +.if ${MK_GPL_DTC} != "no" _dtc= gnu/usr.bin/dtc .endif @@ -1109,6 +1200,7 @@ bootstrap-tools: ${_ar} \ ${_dtc} \ ${_awk} \ + ${_cat} \ usr.bin/lorder \ usr.bin/makewhatis \ ${_mklocale} \ @@ -1116,9 +1208,11 @@ bootstrap-tools: ${_sed} \ ${_yacc} \ ${_lex} \ + lib/libmd \ usr.bin/xinstall \ ${_gensnmptree} \ - usr.sbin/config + usr.sbin/config \ + ${_nmtree} ${_+_}@${ECHODIR} "===> ${_tool} (obj,depend,all,install)"; \ cd ${.CURDIR}/${_tool}; \ ${MAKE} DIRPRFX=${_tool}/ obj; \ @@ -1226,11 +1320,12 @@ cross-tools: # hierarchy - ensure that all the needed directories are present # hierarchy hier: - cd ${.CURDIR}/etc; ${MAKE} distrib-dirs -.for _mtree in ${LOCAL_MTREE} - mtree -eU ${MTREE_FOLLOWS_SYMLINKS} -f ${.CURDIR}/${_mtree} \ - -p ${DESTDIR}/ -.endfor +.if defined(NO_ROOT) + cd ${.CURDIR}/etc; ${MAKE} LOCAL_MTREE=${LOCAL_MTREE} \ + -DNO_ROOT METALOG=${METALOG} distrib-dirs +.else + cd ${.CURDIR}/etc; ${MAKE} LOCAL_MTREE=${LOCAL_MTREE} distrib-dirs +.endif # # libraries - build all libraries, and install them under ${DESTDIR}. @@ -1642,7 +1737,8 @@ NOFUN=-DNO_FSCHG -DWITHOUT_HTML -DWITHOU XDDIR=${XDEV_ARCH}-freebsd XDTP=/usr/${XDDIR} -CDBENV=MAKEOBJDIRPREFIX=${MAKEOBJDIRPREFIX}/${XDDIR} +CDBENV=MAKEOBJDIRPREFIX=${MAKEOBJDIRPREFIX}/${XDDIR} \ + INSTALL="sh ${.CURDIR}/tools/install.sh" CDENV= ${CDBENV} \ _SHLIBDIRPREFIX=${XDTP} \ TOOLS_PREFIX=${XDTP} Modified: projects/zfsd/head/ObsoleteFiles.inc ============================================================================== --- projects/zfsd/head/ObsoleteFiles.inc Tue Feb 26 21:13:09 2013 (r247352) +++ projects/zfsd/head/ObsoleteFiles.inc Tue Feb 26 21:16:10 2013 (r247353) @@ -38,6 +38,23 @@ # xargs -n1 | sort | uniq -d; # done +# 20130116: removed long unused directories for .1aout section manpages +OLD_FILES+=usr/share/man/en.ISO8859-1/man1aout +OLD_FILES+=usr/share/man/en.UTF-8/man1aout +OLD_DIRS+=usr/share/man/man1aout +OLD_DIRS+=usr/share/man/cat1aout +OLD_DIRS+=usr/share/man/en.ISO8859-1/cat1aout +OLD_DIRS+=usr/share/man/en.UTF-8/cat1aout +# 20130110: bsd.compat.mk removed +OLD_FILES+=usr/share/mk/bsd.compat.mk +# 20130103: gnats-supfile removed +OLD_FILES+=usr/share/examples/cvsup/gnats-supfile +# 20121230: libdisk removed +OLD_FILES+=usr/share/man/man3/libdisk.3.gz usr/include/libdisk.h +OLD_FILES+=usr/lib/libdisk.a usr/lib32/libdisk.a +# 20121230: remove wrongly created directories for auditdistd +OLD_DIRS+=var/dist +OLD_DIRS+=var/remote # 20121114: zpool-features manual page moved from section 5 to 7 OLD_FILES+=usr/share/man/man5/zpool-features.5.gz # 20121022: remove harp, hfa and idt man page @@ -52,6 +69,9 @@ OLD_FILES+=usr/include/clang/3.2/unwind. # 20120910: NetBSD compat shims removed OLD_FILES+=usr/include/cam/scsi/scsi_low_pisa.h OLD_FILES+=usr/include/sys/device_port.h +# 20120909: doc and www supfiles removed +OLD_FILES+=usr/share/examples/cvsup/doc-supfile +OLD_FILES+=usr/share/examples/cvsup/www-supfile # 20120908: pf cleanup OLD_FILES+=usr/include/net/if_pflow.h # 20120816: new clang import which bumps version from 3.1 to 3.2 @@ -1192,12 +1212,6 @@ OLD_FILES+=usr/include/sys/linedisc.h OLD_FILES+=usr/share/man/man3/posix_openpt.3.gz # 20080725: sgtty.h removed OLD_FILES+=usr/include/sgtty.h -# 20080719: sade(8) removed on all but amd64, i386 and sparc64 -.if ${TARGET_ARCH} != "amd64" && ${TARGET_ARCH} != "i386" && \ - ${TARGET_ARCH} != "sparc64" -OLD_FILES+=usr/sbin/sade -OLD_FILES+=usr/share/man/man8/sade.8.gz -.endif # 20080706: bsdlabel(8) removed on powerpc .if ${TARGET_ARCH} == "powerpc" OLD_FILES+=sbin/bsdlabel Modified: projects/zfsd/head/UPDATING ============================================================================== --- projects/zfsd/head/UPDATING Tue Feb 26 21:13:09 2013 (r247352) +++ projects/zfsd/head/UPDATING Tue Feb 26 21:16:10 2013 (r247353) @@ -4,7 +4,9 @@ This file is maintained and copyrighted See end of file for further details. For commonly done items, please see the COMMON ITEMS: section later in the file. These instructions assume that you basically know what you are doing. If not, then please consult the FreeBSD -handbook. +handbook: + + http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/makeworld.html Items affecting the ports and packages system can be found in /usr/ports/UPDATING. Please read that file before running portupgrade. @@ -24,6 +26,45 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 10 disable the most expensive debugging functionality run "ln -s 'abort:false,junk:false' /etc/malloc.conf".) +20130129: + A BSD-licensed patch(1) variant has been added and is installed + as bsdpatch, being the GNU version the default patch. + To inverse the logic and use the BSD-licensed one as default, + while having the GNU version installed as gnupatch, rebuild + and install world with the WITH_BSD_PATCH knob set. + +20130118: + The install(1) option -M has changed meaning and now takes an + argument that is a file or path to append logs to. In the + unlikely event that -M was the last option on the command line + and the command line contained at least two files and a target + directory the first file will have logs appended to it. The -M + option served little practical purpose in the last decade so it's + used expected to be extremely rare. + +20121223: + After switching to Clang as the default compiler some users of ZFS + on i386 systems started to experience stack overflow kernel panics. + Please consider using 'options KSTACK_PAGES=4' in such configurations. + +20121222: + GEOM_LABEL now mangles label names read from file system metadata. + Mangling affect labels containing spaces, non-printable characters, + '%' or '"'. Device names in /etc/fstab and other places may need to + be updated. + +20121217: + By default, only the 10 most recent kernel dumps will be saved. To + restore the previous behaviour (no limit on the number of kernel dumps + stored in the dump directory) add the following line to /etc/rc.conf: + + savecore_flags="" + +20121201: + With the addition of auditdistd(8), a new auditdistd user is now + depended on during installworld. "mergemaster -p" can be used to add + the user prior to installworld, as documented in the handbook. + 20121117: The sin6_scope_id member variable in struct sockaddr_in6 is now filled by the kernel before passing the structure to the userland via Modified: projects/zfsd/head/bin/cat/cat.1 ============================================================================== --- projects/zfsd/head/bin/cat/cat.1 Tue Feb 26 21:13:09 2013 (r247352) +++ projects/zfsd/head/bin/cat/cat.1 Tue Feb 26 21:16:10 2013 (r247353) @@ -32,7 +32,7 @@ .\" @(#)cat.1 8.3 (Berkeley) 5/2/95 .\" $FreeBSD$ .\" -.Dd March 21, 2004 +.Dd January 29, 2013 .Dt CAT 1 .Os .Sh NAME @@ -40,7 +40,7 @@ .Nd concatenate and print files .Sh SYNOPSIS .Nm -.Op Fl benstuv +.Op Fl belnstuv .Op Ar .Sh DESCRIPTION The @@ -79,6 +79,16 @@ Display non-printing characters (see the option), and display a dollar sign .Pq Ql \&$ at the end of each line. +.It Fl l +Set an exclusive advisory lock on the standard output file descriptor. +This lock is set using +.Xr fcntl 2 +with the +.Dv F_SETLKW +command. +If the output file is already locked, +.Nm +will block until the lock is acquired. .It Fl n Number the output lines, starting at 1. .It Fl s @@ -160,6 +170,7 @@ operand. .Xr tail 1 , .Xr vis 1 , .Xr zcat 1 , +.Xr fcntl 2 , .Xr setbuf 3 .Rs .%A Rob Pike @@ -175,7 +186,7 @@ utility is compliant with the specification. .Pp The flags -.Op Fl benstv +.Op Fl belnstv are extensions to the specification. .Sh HISTORY A Modified: projects/zfsd/head/bin/cat/cat.c ============================================================================== --- projects/zfsd/head/bin/cat/cat.c Tue Feb 26 21:13:09 2013 (r247352) +++ projects/zfsd/head/bin/cat/cat.c Tue Feb 26 21:16:10 2013 (r247353) @@ -64,7 +64,7 @@ __FBSDID("$FreeBSD$"); #include #include -static int bflag, eflag, nflag, sflag, tflag, vflag; +static int bflag, eflag, lflag, nflag, sflag, tflag, vflag; static int rval; static const char *filename; @@ -96,10 +96,11 @@ int main(int argc, char *argv[]) { int ch; + struct flock stdout_lock; setlocale(LC_CTYPE, ""); - while ((ch = getopt(argc, argv, "benstuv")) != -1) + while ((ch = getopt(argc, argv, "belnstuv")) != -1) switch (ch) { case 'b': bflag = nflag = 1; /* -b implies -n */ @@ -107,6 +108,9 @@ main(int argc, char *argv[]) case 'e': eflag = vflag = 1; /* -e implies -v */ break; + case 'l': + lflag = 1; + break; case 'n': nflag = 1; break; @@ -127,6 +131,15 @@ main(int argc, char *argv[]) } argv += optind; + if (lflag) { + stdout_lock.l_len = 0; + stdout_lock.l_start = 0; + stdout_lock.l_type = F_WRLCK; + stdout_lock.l_whence = SEEK_SET; + if (fcntl(STDOUT_FILENO, F_SETLKW, &stdout_lock) == -1) + err(EXIT_FAILURE, "stdout"); + } + if (bflag || eflag || nflag || sflag || tflag || vflag) scanfiles(argv, 1); else @@ -140,7 +153,7 @@ main(int argc, char *argv[]) static void usage(void) { - fprintf(stderr, "usage: cat [-benstuv] [file ...]\n"); + fprintf(stderr, "usage: cat [-belnstuv] [file ...]\n"); exit(1); /* NOTREACHED */ } Modified: projects/zfsd/head/bin/cp/cp.c ============================================================================== --- projects/zfsd/head/bin/cp/cp.c Tue Feb 26 21:13:09 2013 (r247352) +++ projects/zfsd/head/bin/cp/cp.c Tue Feb 26 21:16:10 2013 (r247353) @@ -98,30 +98,28 @@ main(int argc, char *argv[]) { struct stat to_stat, tmp_stat; enum op type; - int Hflag, Lflag, Pflag, ch, fts_options, r, have_trailing_slash; + int Hflag, Lflag, ch, fts_options, r, have_trailing_slash; char *target; fts_options = FTS_NOCHDIR | FTS_PHYSICAL; - Hflag = Lflag = Pflag = 0; + Hflag = Lflag = 0; while ((ch = getopt(argc, argv, "HLPRafilnprvx")) != -1) switch (ch) { case 'H': Hflag = 1; - Lflag = Pflag = 0; + Lflag = 0; break; case 'L': Lflag = 1; - Hflag = Pflag = 0; + Hflag = 0; break; case 'P': - Pflag = 1; Hflag = Lflag = 0; break; case 'R': Rflag = 1; break; case 'a': - Pflag = 1; pflag = 1; Rflag = 1; Hflag = Lflag = 0; @@ -146,7 +144,7 @@ main(int argc, char *argv[]) break; case 'r': rflag = Lflag = 1; - Hflag = Pflag = 0; + Hflag = 0; break; case 'v': vflag = 1; Modified: projects/zfsd/head/bin/cp/utils.c ============================================================================== --- projects/zfsd/head/bin/cp/utils.c Tue Feb 26 21:13:09 2013 (r247352) +++ projects/zfsd/head/bin/cp/utils.c Tue Feb 26 21:16:10 2013 (r247353) @@ -104,7 +104,7 @@ copy_file(const FTSENT *entp, int dne) if (vflag) printf("%s not overwritten\n", to.p_path); (void)close(from_fd); - return (0); + return (1); } else if (iflag) { (void)fprintf(stderr, "overwrite %s? %s", to.p_path, YESNO); @@ -266,6 +266,11 @@ copy_link(const FTSENT *p, int exists) int len; char llink[PATH_MAX]; + if (exists && nflag) { + if (vflag) + printf("%s not overwritten\n", to.p_path); + return (1); + } if ((len = readlink(p->fts_path, llink, sizeof(llink) - 1)) == -1) { warn("readlink: %s", p->fts_path); return (1); @@ -285,6 +290,12 @@ copy_link(const FTSENT *p, int exists) int copy_fifo(struct stat *from_stat, int exists) { + + if (exists && nflag) { + if (vflag) + printf("%s not overwritten\n", to.p_path); + return (1); + } if (exists && unlink(to.p_path)) { warn("unlink: %s", to.p_path); return (1); @@ -299,6 +310,12 @@ copy_fifo(struct stat *from_stat, int ex int copy_special(struct stat *from_stat, int exists) { + + if (exists && nflag) { + if (vflag) + printf("%s not overwritten\n", to.p_path); + return (1); + } if (exists && unlink(to.p_path)) { warn("unlink: %s", to.p_path); return (1); Modified: projects/zfsd/head/bin/date/netdate.c ============================================================================== --- projects/zfsd/head/bin/date/netdate.c Tue Feb 26 21:13:09 2013 (r247352) +++ projects/zfsd/head/bin/date/netdate.c Tue Feb 26 21:16:10 2013 (r247353) @@ -85,7 +85,7 @@ netsettime(time_t tval) dest.sin_addr.s_addr = htonl((u_long)INADDR_ANY); s = socket(AF_INET, SOCK_DGRAM, 0); if (s < 0) { - if (errno != EPROTONOSUPPORT) + if (errno != EAFNOSUPPORT) warn("timed"); return (retval = 2); } Modified: projects/zfsd/head/bin/df/df.1 ============================================================================== --- projects/zfsd/head/bin/df/df.1 Tue Feb 26 21:13:09 2013 (r247352) +++ projects/zfsd/head/bin/df/df.1 Tue Feb 26 21:16:10 2013 (r247353) @@ -29,7 +29,7 @@ .\" @(#)df.1 8.3 (Berkeley) 5/8/95 .\" $FreeBSD$ .\" -.Dd November 16, 2012 +.Dd January 24, 2013 .Dt DF 1 .Os .Sh NAME @@ -39,6 +39,7 @@ .Nm .Op Fl b | g | H | h | k | m | P .Op Fl acilnT +.Op Fl \&, .Op Fl t Ar type .Op Ar file | filesystem ... .Sh DESCRIPTION Modified: projects/zfsd/head/bin/df/df.c ============================================================================== --- projects/zfsd/head/bin/df/df.c Tue Feb 26 21:13:09 2013 (r247352) +++ projects/zfsd/head/bin/df/df.c Tue Feb 26 21:16:10 2013 (r247353) @@ -397,7 +397,7 @@ prthumanvalinode(int64_t bytes) static intmax_t fsbtoblk(int64_t num, uint64_t fsbs, u_long bs) { - return (num * (intmax_t) fsbs / bs); + return (num * (intmax_t) fsbs / (int64_t) bs); } /* @@ -564,7 +564,8 @@ usage(void) { (void)fprintf(stderr, -"usage: df [-b | -g | -H | -h | -k | -m | -P] [-acilnT] [-t type] [-,] [file | filesystem ...]\n"); +"usage: df [-b | -g | -H | -h | -k | -m | -P] [-acilnT] [-t type] [-,]\n" +" [file | filesystem ...]\n"); exit(EX_USAGE); } Modified: projects/zfsd/head/bin/ln/ln.1 ============================================================================== --- projects/zfsd/head/bin/ln/ln.1 Tue Feb 26 21:13:09 2013 (r247352) +++ projects/zfsd/head/bin/ln/ln.1 Tue Feb 26 21:16:10 2013 (r247353) @@ -291,7 +291,7 @@ implementations. .Pp The .Fl F -option is +option is a .Fx extension and should not be used in portable scripts. .Sh SEE ALSO Modified: projects/zfsd/head/bin/ls/util.c ============================================================================== --- projects/zfsd/head/bin/ls/util.c Tue Feb 26 21:13:09 2013 (r247352) +++ projects/zfsd/head/bin/ls/util.c Tue Feb 26 21:16:10 2013 (r247353) @@ -184,7 +184,10 @@ prn_octal(const char *s) for (i = 0; i < (int)clen; i++) putchar((unsigned char)s[i]); len += wcwidth(wc); - } else if (goodchar && f_octal_escape && wc >= 0 && + } else if (goodchar && f_octal_escape && +#if WCHAR_MIN < 0 + wc >= 0 && +#endif wc <= (wchar_t)UCHAR_MAX && (p = strchr(esc, (char)wc)) != NULL) { putchar('\\'); Modified: projects/zfsd/head/bin/ps/extern.h ============================================================================== --- projects/zfsd/head/bin/ps/extern.h Tue Feb 26 21:13:09 2013 (r247352) +++ projects/zfsd/head/bin/ps/extern.h Tue Feb 26 21:16:10 2013 (r247353) @@ -51,7 +51,7 @@ char *elapsed(KINFO *, VARENT *); char *elapseds(KINFO *, VARENT *); char *emulname(KINFO *, VARENT *); VARENT *find_varentry(VAR *); -const char *fmt_argv(char **, char *, size_t); +const char *fmt_argv(char **, char *, char *, size_t); double getpcpu(const KINFO *); char *kvar(KINFO *, VARENT *); char *label(KINFO *, VARENT *); Modified: projects/zfsd/head/bin/ps/fmt.c ============================================================================== --- projects/zfsd/head/bin/ps/fmt.c Tue Feb 26 21:13:09 2013 (r247352) +++ projects/zfsd/head/bin/ps/fmt.c Tue Feb 26 21:16:10 2013 (r247353) @@ -105,7 +105,7 @@ cmdpart(char *arg0) } const char * -fmt_argv(char **argv, char *cmd, size_t maxlen) +fmt_argv(char **argv, char *cmd, char *thread, size_t maxlen) { size_t len; char *ap, *cp; @@ -122,9 +122,14 @@ fmt_argv(char **argv, char *cmd, size_t cp = malloc(len); if (cp == NULL) errx(1, "malloc failed"); - if (ap == NULL) - sprintf(cp, "[%.*s]", (int)maxlen, cmd); - else if (strncmp(cmdpart(argv[0]), cmd, maxlen) != 0) + if (ap == NULL) { + if (thread != NULL) { + asprintf(&ap, "%s/%s", cmd, thread); + sprintf(cp, "[%.*s]", (int)maxlen, ap); + free(ap); + } else + sprintf(cp, "[%.*s]", (int)maxlen, cmd); + } else if (strncmp(cmdpart(argv[0]), cmd, maxlen) != 0) sprintf(cp, "%s (%.*s)", ap, (int)maxlen, cmd); else strcpy(cp, ap); Modified: projects/zfsd/head/bin/ps/ps.1 ============================================================================== --- projects/zfsd/head/bin/ps/ps.1 Tue Feb 26 21:13:09 2013 (r247352) +++ projects/zfsd/head/bin/ps/ps.1 Tue Feb 26 21:16:10 2013 (r247353) @@ -29,7 +29,7 @@ .\" @(#)ps.1 8.3 (Berkeley) 4/18/94 .\" $FreeBSD$ .\" -.Dd September 18, 2012 +.Dd February 7, 2013 .Dt PS 1 .Os .Sh NAME @@ -323,6 +323,7 @@ the include file .It Dv "P_INMEM" Ta No "0x10000000" Ta "Loaded into memory" .It Dv "P_SWAPPINGOUT" Ta No "0x20000000" Ta "Process is being swapped out" .It Dv "P_SWAPPINGIN" Ta No "0x40000000" Ta "Process is being swapped in" +.It Dv "P_PPTRACE" Ta No "0x80000000" Ta "Vforked child issued ptrace(PT_TRACEME)" .El .It Cm label The MAC label of the process. Modified: projects/zfsd/head/bin/ps/ps.c ============================================================================== --- projects/zfsd/head/bin/ps/ps.c Tue Feb 26 21:13:09 2013 (r247352) +++ projects/zfsd/head/bin/ps/ps.c Tue Feb 26 21:16:10 2013 (r247353) @@ -109,6 +109,7 @@ static int needcomm; /* -o "command" */ static int needenv; /* -e */ static int needuser; /* -o "user" */ static int optfatal; /* Fatal error parsing some list-option. */ +static int pid_max; /* kern.max_pid */ static enum sort { DEFAULT, SORTMEM, SORTCPU } sortby = DEFAULT; @@ -140,7 +141,7 @@ static void format_output(KINFO *); static void *expand_list(struct listinfo *); static const char * fmt(char **(*)(kvm_t *, const struct kinfo_proc *, int), - KINFO *, char *, int); + KINFO *, char *, char *, int); static void free_list(struct listinfo *); static void init_list(struct listinfo *, addelem_rtn, int, const char *); static char *kludge_oldps_options(const char *, char *, const char *); @@ -148,6 +149,7 @@ static int pscomp(const void *, const v static void saveuser(KINFO *); static void scanvars(void); static void sizevars(void); +static void pidmax_init(void); static void usage(void); static char dfmt[] = "pid,tt,state,time,command"; @@ -200,6 +202,8 @@ main(int argc, char *argv[]) if (argc > 1) argv[1] = kludge_oldps_options(PS_ARGS, argv[1], argv[2]); + pidmax_init(); + all = descendancy = _fmt = nselectors = optfatal = 0; prtheader = showthreads = wflag = xkeep_implied = 0; xkeep = -1; /* Neither -x nor -X. */ @@ -722,7 +726,6 @@ addelem_gid(struct listinfo *inf, const return (1); } -#define BSD_PID_MAX 99999 /* Copy of PID_MAX from sys/proc.h. */ static int addelem_pid(struct listinfo *inf, const char *elem) { @@ -740,7 +743,7 @@ addelem_pid(struct listinfo *inf, const if (*endp != '\0' || tempid < 0 || elem == endp) { warnx("Invalid %s: %s", inf->lname, elem); errno = ERANGE; - } else if (errno != 0 || tempid > BSD_PID_MAX) { + } else if (errno != 0 || tempid > pid_max) { warnx("%s too large: %s", inf->lname, elem); errno = ERANGE; } @@ -753,7 +756,6 @@ addelem_pid(struct listinfo *inf, const inf->l.pids[(inf->count)++] = tempid; return (1); } -#undef BSD_PID_MAX /*- * The user can specify a device via one of three formats: @@ -1161,11 +1163,12 @@ sizevars(void) static const char * fmt(char **(*fn)(kvm_t *, const struct kinfo_proc *, int), KINFO *ki, - char *comm, int maxlen) + char *comm, char *thread, int maxlen) { const char *s; - s = fmt_argv((*fn)(kd, ki->ki_p, termwidth), comm, maxlen); + s = fmt_argv((*fn)(kd, ki->ki_p, termwidth), comm, + showthreads && ki->ki_p->ki_numthreads > 1 ? thread : NULL, maxlen); return (s); } @@ -1193,7 +1196,7 @@ saveuser(KINFO *ki) ki->ki_args = strdup(""); else if (UREADOK(ki) || (ki->ki_p->ki_args != NULL)) ki->ki_args = strdup(fmt(kvm_getargv, ki, - ki->ki_p->ki_comm, MAXCOMLEN)); + ki->ki_p->ki_comm, ki->ki_p->ki_tdname, MAXCOMLEN)); else asprintf(&ki->ki_args, "(%s)", ki->ki_p->ki_comm); if (ki->ki_args == NULL) @@ -1204,7 +1207,7 @@ saveuser(KINFO *ki) if (needenv) { if (UREADOK(ki)) ki->ki_env = strdup(fmt(kvm_getenvv, ki, - (char *)NULL, 0)); + (char *)NULL, (char *)NULL, 0)); else ki->ki_env = strdup("()"); if (ki->ki_env == NULL) @@ -1352,6 +1355,18 @@ kludge_oldps_options(const char *optlist } static void +pidmax_init(void) +{ + size_t intsize; + + intsize = sizeof(pid_max); + if (sysctlbyname("kern.pid_max", &pid_max, &intsize, NULL, 0) < 0) { + warn("unable to read kern.pid_max"); + pid_max = 99999; + } +} + +static void usage(void) { #define SINGLE_OPTS "[-aCcde" OPT_LAZY_f "HhjlmrSTuvwXxZ]" Modified: projects/zfsd/head/bin/pwait/pwait.c ============================================================================== --- projects/zfsd/head/bin/pwait/pwait.c Tue Feb 26 21:13:09 2013 (r247352) +++ projects/zfsd/head/bin/pwait/pwait.c Tue Feb 26 21:16:10 2013 (r247353) @@ -141,5 +141,5 @@ main(int argc, char *argv[]) nleft -= n; } - return 0; + exit(EX_OK); } Modified: projects/zfsd/head/bin/setfacl/setfacl.1 ============================================================================== --- projects/zfsd/head/bin/setfacl/setfacl.1 Tue Feb 26 21:13:09 2013 (r247352) +++ projects/zfsd/head/bin/setfacl/setfacl.1 Tue Feb 26 21:16:10 2013 (r247353) @@ -26,7 +26,7 @@ .\" .\" $FreeBSD$ .\" *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-projects@FreeBSD.ORG Wed Feb 27 04:33:08 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 5F715875; Wed, 27 Feb 2013 04:33:08 +0000 (UTC) (envelope-from benno@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 516938AC; Wed, 27 Feb 2013 04:33:08 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r1R4X8PL002688; Wed, 27 Feb 2013 04:33:08 GMT (envelope-from benno@svn.freebsd.org) Received: (from benno@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r1R4X8Jl002687; Wed, 27 Feb 2013 04:33:08 GMT (envelope-from benno@svn.freebsd.org) Message-Id: <201302270433.r1R4X8Jl002687@svn.freebsd.org> From: Benno Rice Date: Wed, 27 Feb 2013 04:33:08 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247373 - projects/uefi/sys/boot/i386/efi X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 27 Feb 2013 04:33:08 -0000 Author: benno Date: Wed Feb 27 04:33:07 2013 New Revision: 247373 URL: http://svnweb.freebsd.org/changeset/base/247373 Log: Remove a debugging printf. Modified: projects/uefi/sys/boot/i386/efi/x86_efi_copy.c Modified: projects/uefi/sys/boot/i386/efi/x86_efi_copy.c ============================================================================== --- projects/uefi/sys/boot/i386/efi/x86_efi_copy.c Wed Feb 27 04:33:06 2013 (r247372) +++ projects/uefi/sys/boot/i386/efi/x86_efi_copy.c Wed Feb 27 04:33:07 2013 (r247373) @@ -56,7 +56,6 @@ x86_efi_copy_init(void) return (status); } - printf("x86_efi_copyinit>>> staging=0x%016x\n", staging); return (0); } From owner-svn-src-projects@FreeBSD.ORG Wed Feb 27 04:35:12 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id C2242B15; Wed, 27 Feb 2013 04:35:12 +0000 (UTC) (envelope-from benno@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id B3D118C5; Wed, 27 Feb 2013 04:35:12 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r1R4ZCdp003016; Wed, 27 Feb 2013 04:35:12 GMT (envelope-from benno@svn.freebsd.org) Received: (from benno@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r1R4ZCBI003015; Wed, 27 Feb 2013 04:35:12 GMT (envelope-from benno@svn.freebsd.org) Message-Id: <201302270435.r1R4ZCBI003015@svn.freebsd.org> From: Benno Rice Date: Wed, 27 Feb 2013 04:35:12 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247374 - projects/uefi/sys/conf X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 27 Feb 2013 04:35:12 -0000 Author: benno Date: Wed Feb 27 04:35:12 2013 New Revision: 247374 URL: http://svnweb.freebsd.org/changeset/base/247374 Log: Remove static from font declaration so we can use it in the EFI framebuffer. Modified: projects/uefi/sys/conf/files.amd64 Modified: projects/uefi/sys/conf/files.amd64 ============================================================================== --- projects/uefi/sys/conf/files.amd64 Wed Feb 27 04:33:07 2013 (r247373) +++ projects/uefi/sys/conf/files.amd64 Wed Feb 27 04:35:12 2013 (r247374) @@ -33,7 +33,7 @@ ia32_assym.h standard \ clean "ia32_assym.h" # font.h optional sc_dflt_font \ - compile-with "uudecode < /usr/share/syscons/fonts/${SC_DFLT_FONT}-8x16.fnt && file2c 'static u_char dflt_font_16[16*256] = {' '};' < ${SC_DFLT_FONT}-8x16 > font.h && uudecode < /usr/share/syscons/fonts/${SC_DFLT_FONT}-8x14.fnt && file2c 'static u_char dflt_font_14[14*256] = {' '};' < ${SC_DFLT_FONT}-8x14 >> font.h && uudecode < /usr/share/syscons/fonts/${SC_DFLT_FONT}-8x8.fnt && file2c 'static u_char dflt_font_8[8*256] = {' '};' < ${SC_DFLT_FONT}-8x8 >> font.h" \ + compile-with "uudecode < /usr/share/syscons/fonts/${SC_DFLT_FONT}-8x16.fnt && file2c 'u_char dflt_font_16[16*256] = {' '};' < ${SC_DFLT_FONT}-8x16 > font.h && uudecode < /usr/share/syscons/fonts/${SC_DFLT_FONT}-8x14.fnt && file2c 'u_char dflt_font_14[14*256] = {' '};' < ${SC_DFLT_FONT}-8x14 >> font.h && uudecode < /usr/share/syscons/fonts/${SC_DFLT_FONT}-8x8.fnt && file2c 'u_char dflt_font_8[8*256] = {' '};' < ${SC_DFLT_FONT}-8x8 >> font.h" \ no-obj no-implicit-rule before-depend \ clean "font.h ${SC_DFLT_FONT}-8x14 ${SC_DFLT_FONT}-8x16 ${SC_DFLT_FONT}-8x8" # From owner-svn-src-projects@FreeBSD.ORG Wed Feb 27 04:42:31 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 80ACEDA3; Wed, 27 Feb 2013 04:42:31 +0000 (UTC) (envelope-from benno@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 642D28F7; Wed, 27 Feb 2013 04:42:31 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r1R4gVJ2005576; Wed, 27 Feb 2013 04:42:31 GMT (envelope-from benno@svn.freebsd.org) Received: (from benno@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r1R4gUs3005570; Wed, 27 Feb 2013 04:42:30 GMT (envelope-from benno@svn.freebsd.org) Message-Id: <201302270442.r1R4gUs3005570@svn.freebsd.org> From: Benno Rice Date: Wed, 27 Feb 2013 04:42:30 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247376 - in projects/uefi/sys/boot: common i386/efi i386/efi/amd64 i386/efi/i386 X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 27 Feb 2013 04:42:31 -0000 Author: benno Date: Wed Feb 27 04:42:30 2013 New Revision: 247376 URL: http://svnweb.freebsd.org/changeset/base/247376 Log: Remove 32-bit support. This can be resurrected later if needed but I feel that concentrating on 64-bit is more worthwhile. Added: projects/uefi/sys/boot/i386/efi/start.S - copied unchanged from r247371, projects/uefi/sys/boot/i386/efi/amd64/start.S Deleted: projects/uefi/sys/boot/i386/efi/amd64/start.S projects/uefi/sys/boot/i386/efi/i386/ projects/uefi/sys/boot/i386/efi/ldscript.i386 Modified: projects/uefi/sys/boot/common/Makefile.inc projects/uefi/sys/boot/i386/efi/Makefile projects/uefi/sys/boot/i386/efi/conf.c Modified: projects/uefi/sys/boot/common/Makefile.inc ============================================================================== --- projects/uefi/sys/boot/common/Makefile.inc Wed Feb 27 04:37:09 2013 (r247375) +++ projects/uefi/sys/boot/common/Makefile.inc Wed Feb 27 04:42:30 2013 (r247376) @@ -4,9 +4,11 @@ SRCS+= boot.c commands.c console.c devop SRCS+= interp_backslash.c interp_parse.c ls.c misc.c SRCS+= module.c panic.c -.if ${MACHINE} == "i386" || ${MACHINE_CPUARCH} == "amd64" +.if ${MACHINE} == "i386" SRCS+= load_elf32.c load_elf32_obj.c reloc_elf32.c SRCS+= load_elf64.c load_elf64_obj.c reloc_elf64.c +.elif ${MACHINE_CPUARCH} == "amd64" +SRCS+= load_elf64.c load_elf64_obj.c reloc_elf64.c .elif ${MACHINE_CPUARCH} == "ia64" SRCS+= load_elf64.c load_elf64_obj.c reloc_elf64.c .elif ${MACHINE} == "pc98" Modified: projects/uefi/sys/boot/i386/efi/Makefile ============================================================================== --- projects/uefi/sys/boot/i386/efi/Makefile Wed Feb 27 04:37:09 2013 (r247375) +++ projects/uefi/sys/boot/i386/efi/Makefile Wed Feb 27 04:42:30 2013 (r247376) @@ -10,12 +10,9 @@ PROG= loader.sym INTERNALPROG= # architecture-specific loader code -SRCS= main.c exec.c conf.c vers.c reloc.c elf32_freebsd.c elf64_freebsd.c +SRCS= main.c exec.c conf.c vers.c reloc.c elf64_freebsd.c SRCS+= x86_efi_copy.c bootinfo.c bootinfo64.c autoload.c devicename.c efimd.c -SRCS+= efifb.c amd64_tramp.S - -.PATH: ${.CURDIR}/${MACHINE_CPUARCH} -SRCS+= start.S +SRCS+= efifb.c amd64_tramp.S start.S CFLAGS+= -fPIC CFLAGS+= -I. Modified: projects/uefi/sys/boot/i386/efi/conf.c ============================================================================== --- projects/uefi/sys/boot/i386/efi/conf.c Wed Feb 27 04:37:09 2013 (r247375) +++ projects/uefi/sys/boot/i386/efi/conf.c Wed Feb 27 04:42:30 2013 (r247376) @@ -54,14 +54,10 @@ struct netif_driver *netif_drivers[] = { extern struct file_format amd64_elf; extern struct file_format amd64_elf_obj; -extern struct file_format i386_elf; -extern struct file_format i386_elf_obj; struct file_format *file_formats[] = { &amd64_elf, &amd64_elf_obj, - &i386_elf, - &i386_elf_obj, NULL }; Copied: projects/uefi/sys/boot/i386/efi/start.S (from r247371, projects/uefi/sys/boot/i386/efi/amd64/start.S) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/uefi/sys/boot/i386/efi/start.S Wed Feb 27 04:42:30 2013 (r247376, copy of r247371, projects/uefi/sys/boot/i386/efi/amd64/start.S) @@ -0,0 +1,72 @@ +/* crt0-efi-x86_64.S - x86_64 EFI startup code. + Copyright (C) 1999 Hewlett-Packard Co. + Contributed by David Mosberger . + Copyright (C) 2005 Intel Co. + Contributed by Fenghua Yu . + + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials + provided with the distribution. + * Neither the name of Hewlett-Packard Co. nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS + BE LIABLE FOR ANYDIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, + OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR + TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF + THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + SUCH DAMAGE. +*/ + .text + .align 4 + + .globl _start +_start: + subq $8, %rsp + pushq %rcx + pushq %rdx + +0: + lea ImageBase(%rip), %rdi + lea _DYNAMIC(%rip), %rsi + + popq %rcx + popq %rdx + pushq %rcx + pushq %rdx + call _reloc + + popq %rdi + popq %rsi + + call efi_main + addq $8, %rsp + +.exit: + ret + + // hand-craft a dummy .reloc section so EFI knows it's a relocatable executable: + + .data + .section .reloc, "a" + .long 0 + .long 10 + .word 0 + From owner-svn-src-projects@FreeBSD.ORG Wed Feb 27 04:44:50 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 3964BED7; Wed, 27 Feb 2013 04:44:50 +0000 (UTC) (envelope-from benno@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 1C7F7908; Wed, 27 Feb 2013 04:44:50 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r1R4inXQ005928; Wed, 27 Feb 2013 04:44:49 GMT (envelope-from benno@svn.freebsd.org) Received: (from benno@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r1R4in6S005923; Wed, 27 Feb 2013 04:44:49 GMT (envelope-from benno@svn.freebsd.org) Message-Id: <201302270444.r1R4in6S005923@svn.freebsd.org> From: Benno Rice Date: Wed, 27 Feb 2013 04:44:49 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247377 - projects/uefi/sys/boot/i386/efi X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 27 Feb 2013 04:44:50 -0000 Author: benno Date: Wed Feb 27 04:44:48 2013 New Revision: 247377 URL: http://svnweb.freebsd.org/changeset/base/247377 Log: Remove all bootinfo support as amd64 doesn't use it. Modified: projects/uefi/sys/boot/i386/efi/bootinfo.c projects/uefi/sys/boot/i386/efi/bootinfo64.c projects/uefi/sys/boot/i386/efi/efimd.c projects/uefi/sys/boot/i386/efi/elf64_freebsd.c Modified: projects/uefi/sys/boot/i386/efi/bootinfo.c ============================================================================== --- projects/uefi/sys/boot/i386/efi/bootinfo.c Wed Feb 27 04:42:30 2013 (r247376) +++ projects/uefi/sys/boot/i386/efi/bootinfo.c Wed Feb 27 04:44:48 2013 (r247377) @@ -39,7 +39,6 @@ __FBSDID("$FreeBSD$"); #include "bootstrap.h" #include "libi386.h" -#include #include "x86_efi_copy.h" @@ -143,157 +142,3 @@ bi_copyenv(vm_offset_t start) last = start; return(last); } - -/* - * Copy module-related data into the load area, where it can be - * used as a directory for loaded modules. - * - * Module data is presented in a self-describing format. Each datum - * is preceded by a 32-bit identifier and a 32-bit size field. - * - * Currently, the following data are saved: - * - * MOD_NAME (variable) module name (string) - * MOD_TYPE (variable) module type (string) - * MOD_ARGS (variable) module parameters (string) - * MOD_ADDR sizeof(vm_offset_t) module load address - * MOD_SIZE sizeof(size_t) module size - * MOD_METADATA (variable) type-specific metadata - */ -#define COPY32(v, a) { \ - u_int32_t x = (v); \ - x86_efi_copyin(&x, a, sizeof(x)); \ - a += sizeof(x); \ -} - -#define MOD_STR(t, a, s) { \ - COPY32(t, a); \ - COPY32(strlen(s) + 1, a); \ - x86_efi_copyin(s, a, strlen(s) + 1); \ - a += roundup(strlen(s) + 1, sizeof(u_int64_t));\ -} - -#define MOD_NAME(a, s) MOD_STR(MODINFO_NAME, a, s) -#define MOD_TYPE(a, s) MOD_STR(MODINFO_TYPE, a, s) -#define MOD_ARGS(a, s) MOD_STR(MODINFO_ARGS, a, s) - -#define MOD_VAR(t, a, s) { \ - COPY32(t, a); \ - COPY32(sizeof(s), a); \ - x86_efi_copyin(&s, a, sizeof(s)); \ - a += roundup(sizeof(s), sizeof(u_int64_t)); \ -} - -#define MOD_ADDR(a, s) MOD_VAR(MODINFO_ADDR, a, s) -#define MOD_SIZE(a, s) MOD_VAR(MODINFO_SIZE, a, s) - -#define MOD_METADATA(a, mm) { \ - COPY32(MODINFO_METADATA | mm->md_type, a); \ - COPY32(mm->md_size, a); \ - x86_efi_copyin(mm->md_data, a, mm->md_size); \ - a += roundup(mm->md_size, sizeof(u_int64_t));\ -} - -#define MOD_END(a) { \ - COPY32(MODINFO_END, a); \ - COPY32(0, a); \ -} - -vm_offset_t -bi_copymodules(vm_offset_t addr) -{ - struct preloaded_file *fp; - struct file_metadata *md; - - /* Start with the first module on the list, should be the kernel. */ - for (fp = file_findfile(NULL, NULL); fp != NULL; fp = fp->f_next) { - /* The name field must come first. */ - MOD_NAME(addr, fp->f_name); - MOD_TYPE(addr, fp->f_type); - if (fp->f_args) - MOD_ARGS(addr, fp->f_args); - MOD_ADDR(addr, fp->f_addr); - MOD_SIZE(addr, fp->f_size); - for (md = fp->f_metadata; md != NULL; md = md->md_next) { - if (!(md->md_type & MODINFOMD_NOCOPY)) - MOD_METADATA(addr, md); - } - } - MOD_END(addr); - return(addr); -} - -/* - * Load the information expected by the kernel. - * - * - The kernel environment is copied into kernel space. - * - Module metadata are formatted and placed in kernel space. - */ -int -bi_load(struct preloaded_file *fp, uint64_t *bi_addr) -{ - struct bootinfo bi; - struct preloaded_file *xp; - struct file_metadata *md; - struct devdesc *rootdev; - char *rootdevname; - vm_offset_t addr, ssym, esym; - - bzero(&bi, sizeof(struct bootinfo)); - bi.bi_version = 1; -// bi.bi_boothowto = bi_getboothowto(fp->f_args); - - /* - * Allow the environment variable 'rootdev' to override the supplied - * device. This should perhaps go to MI code and/or have $rootdev - * tested/set by MI code before launching the kernel. - */ - rootdevname = getenv("rootdev"); - i386_getdev((void**)&rootdev, rootdevname, NULL); - if (rootdev != NULL) { - /* Try reading /etc/fstab to select the root device. */ - getrootmount(i386_fmtdev(rootdev)); - free(rootdev); - } - - md = file_findmetadata(fp, MODINFOMD_SSYM); - ssym = (md != NULL) ? *((vm_offset_t *)&(md->md_data)) : 0; - md = file_findmetadata(fp, MODINFOMD_ESYM); - esym = (md != NULL) ? *((vm_offset_t *)&(md->md_data)) : 0; - if (ssym != 0 && esym != 0) { - bi.bi_symtab = ssym; - bi.bi_esymtab = esym; - } - - /* Find the last module in the chain. */ - addr = 0; - for (xp = file_findfile(NULL, NULL); xp != NULL; xp = xp->f_next) { - if (addr < (xp->f_addr + xp->f_size)) - addr = xp->f_addr + xp->f_size; - } - - addr = (addr + 15) & ~15; - - /* Copy module list and metadata. */ - bi.bi_modulep = addr; - addr = bi_copymodules(addr); - if (addr <= bi.bi_modulep) { - addr = bi.bi_modulep; - bi.bi_modulep = 0; - } - - addr = (addr + 15) & ~15; - - /* Copy our environment. */ - bi.bi_envp = addr; - addr = bi_copyenv(addr); - if (addr <= bi.bi_envp) { - addr = bi.bi_envp; - bi.bi_envp = 0; - } - - addr = (addr + PAGE_MASK) & ~PAGE_MASK; - bi.bi_kernend = addr; - - return (ldr_bootinfo(&bi, bi_addr)); -} Modified: projects/uefi/sys/boot/i386/efi/bootinfo64.c ============================================================================== --- projects/uefi/sys/boot/i386/efi/bootinfo64.c Wed Feb 27 04:42:30 2013 (r247376) +++ projects/uefi/sys/boot/i386/efi/bootinfo64.c Wed Feb 27 04:44:48 2013 (r247377) @@ -31,7 +31,6 @@ __FBSDID("$FreeBSD$"); #include #include #include -#include #include #include #include Modified: projects/uefi/sys/boot/i386/efi/efimd.c ============================================================================== --- projects/uefi/sys/boot/i386/efi/efimd.c Wed Feb 27 04:42:30 2013 (r247376) +++ projects/uefi/sys/boot/i386/efi/efimd.c Wed Feb 27 04:44:48 2013 (r247377) @@ -32,7 +32,6 @@ __FBSDID("$FreeBSD$"); #include #include -#include #include #include Modified: projects/uefi/sys/boot/i386/efi/elf64_freebsd.c ============================================================================== --- projects/uefi/sys/boot/i386/efi/elf64_freebsd.c Wed Feb 27 04:42:30 2013 (r247376) +++ projects/uefi/sys/boot/i386/efi/elf64_freebsd.c Wed Feb 27 04:44:48 2013 (r247377) @@ -32,7 +32,6 @@ __FBSDID("$FreeBSD$"); #include #include #include -#include #include #include From owner-svn-src-projects@FreeBSD.ORG Wed Feb 27 04:50:28 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id E3D7A24F; Wed, 27 Feb 2013 04:50:28 +0000 (UTC) (envelope-from benno@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id D0F2E930; Wed, 27 Feb 2013 04:50:28 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r1R4oSAf006861; Wed, 27 Feb 2013 04:50:28 GMT (envelope-from benno@svn.freebsd.org) Received: (from benno@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r1R4oSnP006858; Wed, 27 Feb 2013 04:50:28 GMT (envelope-from benno@svn.freebsd.org) Message-Id: <201302270450.r1R4oSnP006858@svn.freebsd.org> From: Benno Rice Date: Wed, 27 Feb 2013 04:50:28 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247378 - in projects/uefi/sys/boot/efi: include libefi X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 27 Feb 2013 04:50:29 -0000 Author: benno Date: Wed Feb 27 04:50:27 2013 New Revision: 247378 URL: http://svnweb.freebsd.org/changeset/base/247378 Log: Add the ability for a device to have an "alias" handle. Modified: projects/uefi/sys/boot/efi/include/efilib.h projects/uefi/sys/boot/efi/libefi/efipart.c projects/uefi/sys/boot/efi/libefi/handles.c Modified: projects/uefi/sys/boot/efi/include/efilib.h ============================================================================== --- projects/uefi/sys/boot/efi/include/efilib.h Wed Feb 27 04:44:48 2013 (r247377) +++ projects/uefi/sys/boot/efi/include/efilib.h Wed Feb 27 04:50:27 2013 (r247378) @@ -41,7 +41,7 @@ extern struct netif_driver efinetif; void *efi_get_table(EFI_GUID *tbl); void efi_main(EFI_HANDLE image_handle, EFI_SYSTEM_TABLE *system_table); -int efi_register_handles(struct devsw *, EFI_HANDLE *, int); +int efi_register_handles(struct devsw *, EFI_HANDLE *, EFI_HANDLE *, int); EFI_HANDLE efi_find_handle(struct devsw *, int); int efi_handle_lookup(EFI_HANDLE, struct devsw **, int *); Modified: projects/uefi/sys/boot/efi/libefi/efipart.c ============================================================================== --- projects/uefi/sys/boot/efi/libefi/efipart.c Wed Feb 27 04:44:48 2013 (r247377) +++ projects/uefi/sys/boot/efi/libefi/efipart.c Wed Feb 27 04:50:27 2013 (r247378) @@ -62,7 +62,7 @@ static int efipart_init(void) { EFI_BLOCK_IO *blkio; - EFI_HANDLE *hin, *hout; + EFI_HANDLE *hin, *hout, *aliases; EFI_STATUS status; UINTN sz; u_int n, nin, nout; @@ -72,7 +72,7 @@ efipart_init(void) hin = NULL; status = BS->LocateHandle(ByProtocol, &blkio_guid, 0, &sz, 0); if (status == EFI_BUFFER_TOO_SMALL) { - hin = (EFI_HANDLE *)malloc(sz * 2); + hin = (EFI_HANDLE *)malloc(sz * 3); status = BS->LocateHandle(ByProtocol, &blkio_guid, 0, &sz, hin); if (EFI_ERROR(status)) @@ -84,8 +84,11 @@ efipart_init(void) /* Filter handles to only include FreeBSD partitions. */ nin = sz / sizeof(EFI_HANDLE); hout = hin + nin; + aliases = hout + nin; nout = 0; + bzero(aliases, nin * sizeof(EFI_HANDLE)); + for (n = 0; n < nin; n++) { status = BS->HandleProtocol(hin[n], &blkio_guid, &blkio); if (EFI_ERROR(status)) @@ -96,7 +99,7 @@ efipart_init(void) nout++; } - err = efi_register_handles(&efipart_dev, hout, nout); + err = efi_register_handles(&efipart_dev, hout, aliases, nout); free(hin); return (err); } Modified: projects/uefi/sys/boot/efi/libefi/handles.c ============================================================================== --- projects/uefi/sys/boot/efi/libefi/handles.c Wed Feb 27 04:44:48 2013 (r247377) +++ projects/uefi/sys/boot/efi/libefi/handles.c Wed Feb 27 04:50:27 2013 (r247378) @@ -32,6 +32,7 @@ __FBSDID("$FreeBSD$"); struct entry { EFI_HANDLE handle; + EFI_HANDLE alias; struct devsw *dev; int unit; }; @@ -40,7 +41,8 @@ struct entry *entry; int nentries; int -efi_register_handles(struct devsw *sw, EFI_HANDLE *handles, int count) +efi_register_handles(struct devsw *sw, EFI_HANDLE *handles, + EFI_HANDLE *aliases, int count) { size_t sz; int idx, unit; @@ -51,6 +53,7 @@ efi_register_handles(struct devsw *sw, E entry = (entry == NULL) ? malloc(sz) : realloc(entry, sz); for (unit = 0; idx < nentries; idx++, unit++) { entry[idx].handle = handles[unit]; + entry[idx].alias = aliases[unit]; entry[idx].dev = sw; entry[idx].unit = unit; } @@ -78,7 +81,7 @@ efi_handle_lookup(EFI_HANDLE h, struct d int idx; for (idx = 0; idx < nentries; idx++) { - if (entry[idx].handle != h) + if (entry[idx].handle != h && entry[idx].alias != h) continue; if (dev != NULL) *dev = entry[idx].dev; From owner-svn-src-projects@FreeBSD.ORG Wed Feb 27 04:55:56 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 33EA33BF; Wed, 27 Feb 2013 04:55:56 +0000 (UTC) (envelope-from benno@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 22B38956; Wed, 27 Feb 2013 04:55:56 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r1R4turx009055; Wed, 27 Feb 2013 04:55:56 GMT (envelope-from benno@svn.freebsd.org) Received: (from benno@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r1R4ttPH009053; Wed, 27 Feb 2013 04:55:55 GMT (envelope-from benno@svn.freebsd.org) Message-Id: <201302270455.r1R4ttPH009053@svn.freebsd.org> From: Benno Rice Date: Wed, 27 Feb 2013 04:55:55 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247379 - projects/uefi/sys/boot/efi/libefi X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 27 Feb 2013 04:55:56 -0000 Author: benno Date: Wed Feb 27 04:55:55 2013 New Revision: 247379 URL: http://svnweb.freebsd.org/changeset/base/247379 Log: Fix network device registration. Modified: projects/uefi/sys/boot/efi/libefi/efinet.c projects/uefi/sys/boot/efi/libefi/handles.c Modified: projects/uefi/sys/boot/efi/libefi/efinet.c ============================================================================== --- projects/uefi/sys/boot/efi/libefi/efinet.c Wed Feb 27 04:50:27 2013 (r247378) +++ projects/uefi/sys/boot/efi/libefi/efinet.c Wed Feb 27 04:55:55 2013 (r247379) @@ -274,7 +274,7 @@ efinet_dev_init() if (EFI_ERROR(status)) return (efi_status_to_errno(status)); nifs = sz / sizeof(EFI_HANDLE); - err = efi_register_handles(&efinet_dev, handles, nifs); + err = efi_register_handles(&efinet_dev, handles, NULL, nifs); free(handles); if (err != 0) return (err); Modified: projects/uefi/sys/boot/efi/libefi/handles.c ============================================================================== --- projects/uefi/sys/boot/efi/libefi/handles.c Wed Feb 27 04:50:27 2013 (r247378) +++ projects/uefi/sys/boot/efi/libefi/handles.c Wed Feb 27 04:55:55 2013 (r247379) @@ -53,7 +53,10 @@ efi_register_handles(struct devsw *sw, E entry = (entry == NULL) ? malloc(sz) : realloc(entry, sz); for (unit = 0; idx < nentries; idx++, unit++) { entry[idx].handle = handles[unit]; - entry[idx].alias = aliases[unit]; + if (aliases != NULL) + entry[idx].alias = aliases[unit]; + else + entry[idx].alias = NULL; entry[idx].dev = sw; entry[idx].unit = unit; } From owner-svn-src-projects@FreeBSD.ORG Wed Feb 27 05:01:09 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 3C59D516; Wed, 27 Feb 2013 05:01:09 +0000 (UTC) (envelope-from benno@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 20E3F976; Wed, 27 Feb 2013 05:01:09 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r1R519ix011537; Wed, 27 Feb 2013 05:01:09 GMT (envelope-from benno@svn.freebsd.org) Received: (from benno@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r1R519S4011536; Wed, 27 Feb 2013 05:01:09 GMT (envelope-from benno@svn.freebsd.org) Message-Id: <201302270501.r1R519S4011536@svn.freebsd.org> From: Benno Rice Date: Wed, 27 Feb 2013 05:01:08 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247380 - projects/uefi/sys/boot/efi/libefi X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 27 Feb 2013 05:01:09 -0000 Author: benno Date: Wed Feb 27 05:01:08 2013 New Revision: 247380 URL: http://svnweb.freebsd.org/changeset/base/247380 Log: Adjust our load device when we boot from CD under UEFI. The process for booting from a CD under UEFI involves adding a FAT filesystem containing your loader code as an El Torito boot image. When UEFI detects this, it provides a block IO instance that points at the FAT filesystem as a child of the device that represents the CD itself. The problem being that the CD device is flagged as a "raw device" while the boot image is flagged as a "logical partition". The existing EFI partition code only looks for logical partitions and so the CD filesystem was rendered invisible. To fix this, check the type of each block IO device. If it's found to be a CD, and thus an El Torito boot image, look up its parent device and add that instead so that the loader will then load the kernel from the CD filesystem. This is done by using the handle for the boot filesystem as an alias. Something similar to this will be required for booting from other media as well as the loader will live in the EFI system partition, not on the partition containing the kernel. Modified: projects/uefi/sys/boot/efi/libefi/efipart.c Modified: projects/uefi/sys/boot/efi/libefi/efipart.c ============================================================================== --- projects/uefi/sys/boot/efi/libefi/efipart.c Wed Feb 27 04:55:55 2013 (r247379) +++ projects/uefi/sys/boot/efi/libefi/efipart.c Wed Feb 27 05:01:08 2013 (r247380) @@ -39,6 +39,7 @@ __FBSDID("$FreeBSD$"); #include static EFI_GUID blkio_guid = BLOCK_IO_PROTOCOL; +static EFI_GUID devpath_guid = DEVICE_PATH_PROTOCOL; static int efipart_init(void); static int efipart_strategy(void *, int, daddr_t, size_t, char *, size_t *); @@ -62,9 +63,11 @@ static int efipart_init(void) { EFI_BLOCK_IO *blkio; - EFI_HANDLE *hin, *hout, *aliases; + EFI_DEVICE_PATH *devpath, *node; + EFI_HANDLE *hin, *hout, *aliases, handle; EFI_STATUS status; UINTN sz; + CHAR16 *path; u_int n, nin, nout; int err; @@ -90,12 +93,38 @@ efipart_init(void) bzero(aliases, nin * sizeof(EFI_HANDLE)); for (n = 0; n < nin; n++) { + status = BS->HandleProtocol(hin[n], &devpath_guid, &devpath); + if (EFI_ERROR(status)) { + continue; + } + node = devpath; + while (!IsDevicePathEnd(NextDevicePathNode(node))) + node = NextDevicePathNode(node); status = BS->HandleProtocol(hin[n], &blkio_guid, &blkio); if (EFI_ERROR(status)) continue; if (!blkio->Media->LogicalPartition) continue; - hout[nout] = hin[n]; + + /* + * If we come across a logical partition of subtype CDROM + * it doesn't refer to the CD filesystem itself, but rather + * to any usable El Torito boot image on it. In this case + * we try to find the parent device and add that instead as + * that will be the CD filesystem. + */ + if (DevicePathType(node) == MEDIA_DEVICE_PATH && + DevicePathSubType(node) == MEDIA_CDROM_DP) { + node->Type = END_DEVICE_PATH_TYPE; + node->SubType = END_ENTIRE_DEVICE_PATH_SUBTYPE; + status = BS->LocateDevicePath(&blkio_guid, &devpath, + &handle); + hout[nout] = handle; + aliases[nout] = hin[n]; + if (EFI_ERROR(status)) + printf("shit\n"); + } else + hout[nout] = hin[n]; nout++; } From owner-svn-src-projects@FreeBSD.ORG Wed Feb 27 05:02:41 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 96410635; Wed, 27 Feb 2013 05:02:41 +0000 (UTC) (envelope-from benno@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 7FBBC97B; Wed, 27 Feb 2013 05:02:41 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r1R52f3C011838; Wed, 27 Feb 2013 05:02:41 GMT (envelope-from benno@svn.freebsd.org) Received: (from benno@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r1R52foP011837; Wed, 27 Feb 2013 05:02:41 GMT (envelope-from benno@svn.freebsd.org) Message-Id: <201302270502.r1R52foP011837@svn.freebsd.org> From: Benno Rice Date: Wed, 27 Feb 2013 05:02:41 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247381 - projects/uefi/sys/boot/efi/libefi X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 27 Feb 2013 05:02:41 -0000 Author: benno Date: Wed Feb 27 05:02:40 2013 New Revision: 247381 URL: http://svnweb.freebsd.org/changeset/base/247381 Log: Remove a scatalogical debug printf that crept in. Modified: projects/uefi/sys/boot/efi/libefi/efipart.c Modified: projects/uefi/sys/boot/efi/libefi/efipart.c ============================================================================== --- projects/uefi/sys/boot/efi/libefi/efipart.c Wed Feb 27 05:01:08 2013 (r247380) +++ projects/uefi/sys/boot/efi/libefi/efipart.c Wed Feb 27 05:02:40 2013 (r247381) @@ -119,10 +119,10 @@ efipart_init(void) node->SubType = END_ENTIRE_DEVICE_PATH_SUBTYPE; status = BS->LocateDevicePath(&blkio_guid, &devpath, &handle); + if (EFI_ERROR(status)) + continue; hout[nout] = handle; aliases[nout] = hin[n]; - if (EFI_ERROR(status)) - printf("shit\n"); } else hout[nout] = hin[n]; nout++; From owner-svn-src-projects@FreeBSD.ORG Wed Feb 27 05:07:02 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 7CB23941; Wed, 27 Feb 2013 05:07:02 +0000 (UTC) (envelope-from benno@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 6AAAD9AC; Wed, 27 Feb 2013 05:07:02 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r1R5726G012681; Wed, 27 Feb 2013 05:07:02 GMT (envelope-from benno@svn.freebsd.org) Received: (from benno@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r1R570gE012662; Wed, 27 Feb 2013 05:07:00 GMT (envelope-from benno@svn.freebsd.org) Message-Id: <201302270507.r1R570gE012662@svn.freebsd.org> From: Benno Rice Date: Wed, 27 Feb 2013 05:07:00 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247383 - in projects/uefi: . bin/test cddl/contrib/opensolaris/cmd/zinject cddl/contrib/opensolaris/lib/libzpool/common cddl/contrib/opensolaris/lib/libzpool/common/sys contrib/expat c... X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 27 Feb 2013 05:07:02 -0000 Author: benno Date: Wed Feb 27 05:06:59 2013 New Revision: 247383 URL: http://svnweb.freebsd.org/changeset/base/247383 Log: MFH Added: projects/uefi/contrib/expat/FREEBSD-Xlist - copied unchanged from r247382, head/contrib/expat/FREEBSD-Xlist projects/uefi/sys/dev/cxgbe/firmware/t4fw-1.8.4.0.bin.uu - copied unchanged from r247382, head/sys/dev/cxgbe/firmware/t4fw-1.8.4.0.bin.uu projects/uefi/usr.sbin/bsdconfig/include/media.hlp - copied unchanged from r247382, head/usr.sbin/bsdconfig/include/media.hlp projects/uefi/usr.sbin/bsdconfig/include/network_device.hlp - copied unchanged from r247382, head/usr.sbin/bsdconfig/include/network_device.hlp projects/uefi/usr.sbin/bsdconfig/include/options.hlp - copied unchanged from r247382, head/usr.sbin/bsdconfig/include/options.hlp projects/uefi/usr.sbin/bsdconfig/include/tcp.hlp - copied unchanged from r247382, head/usr.sbin/bsdconfig/include/tcp.hlp projects/uefi/usr.sbin/bsdconfig/share/device.subr - copied unchanged from r247382, head/usr.sbin/bsdconfig/share/device.subr projects/uefi/usr.sbin/bsdconfig/share/media/ - copied from r247382, head/usr.sbin/bsdconfig/share/media/ projects/uefi/usr.sbin/bsdconfig/share/struct.subr - copied unchanged from r247382, head/usr.sbin/bsdconfig/share/struct.subr Deleted: projects/uefi/contrib/expat/FREEBSD-upgrade projects/uefi/contrib/expat/configure projects/uefi/contrib/expat/doc/valid-xhtml10.png projects/uefi/contrib/expat/lib/winconfig.h projects/uefi/contrib/expat/tests/benchmark/benchmark.dsp projects/uefi/contrib/expat/tests/benchmark/benchmark.dsw projects/uefi/sys/dev/cxgbe/firmware/t4fw-1.6.2.0.bin.uu projects/uefi/usr.sbin/bsdconfig/networking/include/tcp.hlp Modified: projects/uefi/Makefile.inc1 projects/uefi/bin/test/test.1 projects/uefi/bin/test/test.c projects/uefi/cddl/contrib/opensolaris/cmd/zinject/translate.c projects/uefi/cddl/contrib/opensolaris/cmd/zinject/zinject.c projects/uefi/cddl/contrib/opensolaris/lib/libzpool/common/kernel.c projects/uefi/cddl/contrib/opensolaris/lib/libzpool/common/sys/zfs_context.h projects/uefi/contrib/expat/Changes (contents, props changed) projects/uefi/contrib/expat/MANIFEST (contents, props changed) projects/uefi/contrib/expat/Makefile.in (contents, props changed) projects/uefi/contrib/expat/README (contents, props changed) projects/uefi/contrib/expat/configure.in (contents, props changed) projects/uefi/contrib/expat/doc/reference.html (contents, props changed) projects/uefi/contrib/expat/doc/xmlwf.sgml (contents, props changed) projects/uefi/contrib/expat/expat_config.h.in (contents, props changed) projects/uefi/contrib/expat/lib/expat.h (contents, props changed) projects/uefi/contrib/expat/lib/xmlparse.c (contents, props changed) projects/uefi/contrib/expat/lib/xmlrole.c (contents, props changed) projects/uefi/contrib/expat/lib/xmltok.c (contents, props changed) projects/uefi/contrib/expat/lib/xmltok_impl.c (contents, props changed) projects/uefi/contrib/expat/tests/README.txt (contents, props changed) projects/uefi/contrib/expat/tests/minicheck.h projects/uefi/contrib/expat/tests/runtests.c (contents, props changed) projects/uefi/contrib/expat/tests/xmltest.sh (contents, props changed) projects/uefi/contrib/expat/xmlwf/readfilemap.c (contents, props changed) projects/uefi/contrib/expat/xmlwf/xmlwf.c (contents, props changed) projects/uefi/etc/rc.d/rtadvd projects/uefi/lib/libexpat/expat_config.h projects/uefi/lib/libexpat/libbsdxml.3 projects/uefi/lib/libkiconv/kiconv.3 projects/uefi/lib/libpmc/pmc.soft.3 projects/uefi/sbin/fsck_ffs/fsutil.c projects/uefi/sbin/geom/class/part/gpart.8 projects/uefi/sbin/hastctl/hastctl.c projects/uefi/sbin/hastd/control.c projects/uefi/sbin/hastd/hast.h projects/uefi/sbin/hastd/primary.c projects/uefi/sbin/hastd/secondary.c projects/uefi/sbin/reboot/boot_i386.8 projects/uefi/share/man/man4/cxgbe.4 projects/uefi/sys/arm/arm/mp_machdep.c projects/uefi/sys/arm/arm/pmap-v6.c projects/uefi/sys/arm/arm/pmap.c projects/uefi/sys/arm/arm/vfp.c projects/uefi/sys/arm/at91/at91_machdep.c projects/uefi/sys/arm/conf/RPI-B projects/uefi/sys/arm/include/vfp.h projects/uefi/sys/arm/include/vmparam.h projects/uefi/sys/arm/sa11x0/assabet_machdep.c projects/uefi/sys/arm/ti/ti_gpio.c projects/uefi/sys/boot/common/bootstrap.h projects/uefi/sys/boot/common/load_elf.c projects/uefi/sys/boot/common/module.c projects/uefi/sys/boot/fdt/fdt_loader_cmd.c projects/uefi/sys/cddl/compat/opensolaris/sys/time.h projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_misc.c projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/spa.h projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/spa_boot.h projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/spa_impl.h projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/vdev.h projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/vdev_impl.h projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zfs_context.h projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zfs_ioctl.h projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zio.h projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_queue.c projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zio_inject.c projects/uefi/sys/conf/files projects/uefi/sys/dev/ath/ath_hal/ah.c projects/uefi/sys/dev/ath/ath_hal/ah.h projects/uefi/sys/dev/ath/ath_hal/ar5210/ar5210.h projects/uefi/sys/dev/ath/ath_hal/ar5210/ar5210_attach.c projects/uefi/sys/dev/ath/ath_hal/ar5210/ar5210_misc.c projects/uefi/sys/dev/ath/ath_hal/ar5211/ar5211.h projects/uefi/sys/dev/ath/ath_hal/ar5211/ar5211_attach.c projects/uefi/sys/dev/ath/ath_hal/ar5211/ar5211_misc.c projects/uefi/sys/dev/ath/ath_hal/ar5212/ar5212.h projects/uefi/sys/dev/ath/ath_hal/ar5212/ar5212_attach.c projects/uefi/sys/dev/ath/ath_hal/ar5212/ar5212_misc.c projects/uefi/sys/dev/ath/ath_hal/ar5416/ar5416.h projects/uefi/sys/dev/ath/ath_hal/ar5416/ar5416_attach.c projects/uefi/sys/dev/ath/ath_hal/ar5416/ar5416_misc.c projects/uefi/sys/dev/ath/ath_hal/ar5416/ar5416_reset.c projects/uefi/sys/dev/ath/ath_hal/ar5416/ar5416_xmit.c projects/uefi/sys/dev/ath/ath_rate/sample/sample.c projects/uefi/sys/dev/ath/if_ath.c projects/uefi/sys/dev/ath/if_ath_tx_ht.c projects/uefi/sys/dev/ath/if_athvar.h projects/uefi/sys/dev/ciss/ciss.c projects/uefi/sys/dev/cpufreq/ichss.c projects/uefi/sys/dev/cxgbe/adapter.h projects/uefi/sys/dev/cxgbe/common/common.h projects/uefi/sys/dev/cxgbe/common/t4_hw.c projects/uefi/sys/dev/cxgbe/common/t4_msg.h projects/uefi/sys/dev/cxgbe/firmware/t4fw_interface.h projects/uefi/sys/dev/cxgbe/t4_main.c projects/uefi/sys/dev/cxgbe/t4_sge.c projects/uefi/sys/dev/hwpmc/hwpmc_soft.c projects/uefi/sys/dev/isp/isp.c projects/uefi/sys/dev/isp/isp_freebsd.c projects/uefi/sys/dev/mfi/mfi.c projects/uefi/sys/dev/mfi/mfi_cam.c projects/uefi/sys/dev/mfi/mfi_debug.c projects/uefi/sys/dev/mfi/mfi_tbolt.c projects/uefi/sys/dev/mfi/mfireg.h projects/uefi/sys/dev/mfi/mfivar.h projects/uefi/sys/dev/msk/if_msk.c projects/uefi/sys/dev/mxge/if_mxge.c projects/uefi/sys/dev/random/randomdev_soft.c projects/uefi/sys/dev/sym/sym_hipd.c projects/uefi/sys/dev/usb/usb_pf.c projects/uefi/sys/dev/usb/usbdevs projects/uefi/sys/fs/fuse/fuse_io.c projects/uefi/sys/ia64/ia64/pmap.c projects/uefi/sys/ia64/include/vmparam.h projects/uefi/sys/kern/kern_clock.c projects/uefi/sys/kern/kern_clocksource.c projects/uefi/sys/kern/kern_descrip.c projects/uefi/sys/kern/sys_process.c projects/uefi/sys/mips/adm5120/adm5120_machdep.c projects/uefi/sys/mips/alchemy/alchemy_machdep.c projects/uefi/sys/mips/beri/beri_machdep.c projects/uefi/sys/mips/cavium/octeon_machdep.c projects/uefi/sys/mips/gxemul/gxemul_machdep.c projects/uefi/sys/mips/idt/idt_machdep.c projects/uefi/sys/mips/malta/malta_machdep.c projects/uefi/sys/mips/rt305x/rt305x_machdep.c projects/uefi/sys/mips/sentry5/s5_machdep.c projects/uefi/sys/mips/sibyte/sb_machdep.c projects/uefi/sys/modules/cxgbe/firmware/Makefile projects/uefi/sys/powerpc/aim/mmu_oea.c projects/uefi/sys/powerpc/aim/mmu_oea64.c projects/uefi/sys/powerpc/aim/moea64_native.c projects/uefi/sys/powerpc/booke/pmap.c projects/uefi/sys/powerpc/ps3/mmu_ps3.c projects/uefi/sys/sparc64/sparc64/tsb.c projects/uefi/sys/vm/swap_pager.c projects/uefi/sys/vm/uma.h projects/uefi/sys/vm/uma_core.c projects/uefi/sys/vm/uma_int.h projects/uefi/sys/vm/vm_map.c projects/uefi/sys/vm/vm_object.c projects/uefi/sys/vm/vm_object.h projects/uefi/sys/vm/vm_page.c projects/uefi/sys/vm/vnode_pager.c projects/uefi/tools/regression/bin/test/regress.sh projects/uefi/usr.bin/systat/systat.1 projects/uefi/usr.sbin/bhyve/pci_emul.h projects/uefi/usr.sbin/bhyve/pci_virtio_block.c projects/uefi/usr.sbin/bsdconfig/include/Makefile projects/uefi/usr.sbin/bsdconfig/include/messages.subr projects/uefi/usr.sbin/bsdconfig/networking/devices projects/uefi/usr.sbin/bsdconfig/networking/include/Makefile projects/uefi/usr.sbin/bsdconfig/networking/share/common.subr projects/uefi/usr.sbin/bsdconfig/networking/share/device.subr projects/uefi/usr.sbin/bsdconfig/networking/share/hostname.subr projects/uefi/usr.sbin/bsdconfig/networking/share/ipaddr.subr projects/uefi/usr.sbin/bsdconfig/networking/share/netmask.subr projects/uefi/usr.sbin/bsdconfig/networking/share/resolv.subr projects/uefi/usr.sbin/bsdconfig/networking/share/routing.subr projects/uefi/usr.sbin/bsdconfig/share/Makefile projects/uefi/usr.sbin/bsdconfig/share/common.subr projects/uefi/usr.sbin/bsdconfig/share/script.subr projects/uefi/usr.sbin/bsdconfig/share/strings.subr projects/uefi/usr.sbin/bsdconfig/share/variable.subr projects/uefi/usr.sbin/bsdconfig/startup/rcvar projects/uefi/usr.sbin/rtadvd/rtadvd.8 projects/uefi/usr.sbin/rtadvd/rtadvd.c Directory Properties: projects/uefi/ (props changed) projects/uefi/cddl/contrib/opensolaris/ (props changed) projects/uefi/contrib/expat/ (props changed) projects/uefi/contrib/expat/COPYING (props changed) projects/uefi/contrib/expat/doc/style.css (props changed) projects/uefi/contrib/expat/doc/xmlwf.1 (props changed) projects/uefi/contrib/expat/examples/elements.c (props changed) projects/uefi/contrib/expat/examples/outline.c (props changed) projects/uefi/contrib/expat/lib/ascii.h (props changed) projects/uefi/contrib/expat/lib/asciitab.h (props changed) projects/uefi/contrib/expat/lib/iasciitab.h (props changed) projects/uefi/contrib/expat/lib/internal.h (props changed) projects/uefi/contrib/expat/lib/latin1tab.h (props changed) projects/uefi/contrib/expat/lib/nametab.h (props changed) projects/uefi/contrib/expat/lib/utf8tab.h (props changed) projects/uefi/contrib/expat/lib/xmlrole.h (props changed) projects/uefi/contrib/expat/lib/xmltok.h (props changed) projects/uefi/contrib/expat/lib/xmltok_impl.h (props changed) projects/uefi/contrib/expat/lib/xmltok_ns.c (props changed) projects/uefi/contrib/expat/tests/chardata.c (props changed) projects/uefi/contrib/expat/tests/chardata.h (props changed) projects/uefi/contrib/expat/xmlwf/codepage.c (props changed) projects/uefi/contrib/expat/xmlwf/codepage.h (props changed) projects/uefi/contrib/expat/xmlwf/ct.c (props changed) projects/uefi/contrib/expat/xmlwf/filemap.h (props changed) projects/uefi/contrib/expat/xmlwf/unixfilemap.c (props changed) projects/uefi/contrib/expat/xmlwf/win32filemap.c (props changed) projects/uefi/contrib/expat/xmlwf/xmlfile.c (props changed) projects/uefi/contrib/expat/xmlwf/xmlfile.h (props changed) projects/uefi/contrib/expat/xmlwf/xmlmime.c (props changed) projects/uefi/contrib/expat/xmlwf/xmlmime.h (props changed) projects/uefi/contrib/expat/xmlwf/xmltchar.h (props changed) projects/uefi/contrib/expat/xmlwf/xmlurl.h (props changed) projects/uefi/contrib/expat/xmlwf/xmlwin32url.cxx (props changed) projects/uefi/sbin/ (props changed) projects/uefi/share/man/man4/ (props changed) projects/uefi/sys/ (props changed) projects/uefi/sys/boot/ (props changed) projects/uefi/sys/cddl/contrib/opensolaris/ (props changed) projects/uefi/sys/conf/ (props changed) projects/uefi/usr.sbin/bhyve/ (props changed) projects/uefi/usr.sbin/rtadvd/ (props changed) Modified: projects/uefi/Makefile.inc1 ============================================================================== --- projects/uefi/Makefile.inc1 Wed Feb 27 05:03:35 2013 (r247382) +++ projects/uefi/Makefile.inc1 Wed Feb 27 05:06:59 2013 (r247383) @@ -1132,7 +1132,8 @@ _lex= usr.bin/lex .endif .if ${BOOTSTRAPPING} < 1000013 -_yacc= usr.bin/yacc +_yacc= lib/liby \ + usr.bin/yacc .endif .if ${BOOTSTRAPPING} < 1000026 Modified: projects/uefi/bin/test/test.1 ============================================================================== --- projects/uefi/bin/test/test.1 Wed Feb 27 05:03:35 2013 (r247382) +++ projects/uefi/bin/test/test.1 Wed Feb 27 05:06:59 2013 (r247383) @@ -169,15 +169,65 @@ True if .Ar file exists and is a socket. .It Ar file1 Fl nt Ar file2 -True if +True if both +.Ar file1 +and +.Ar file2 +exist and +.Ar file1 +is newer than +.Ar file2 . +.It Ar file1 Fl nt Ns Ar X Ns Ar Y Ar file2 +True if both +.Ar file1 +and +.Ar file2 +exist and .Ar file1 -exists and is newer than +has a more recent last access time +.Pq Ar X Ns = Ns Cm a , +inode creation time +.Pq Ar X Ns = Ns Cm b , +change time +.Pq Ar X Ns = Ns Cm c , +or modification time +.Pq Ar X Ns = Ns Cm m +than the last access time +.Pq Ar Y Ns = Ns Cm a , +inode creation time +.Pq Ar Y Ns = Ns Cm b , +change time +.Pq Ar Y Ns = Ns Cm c , +or modification time +.Pq Ar Y Ns = Ns Cm m +of .Ar file2 . +Note that +.Ic -ntmm +is equivalent to +.Ic -nt . .It Ar file1 Fl ot Ar file2 -True if +True if both +.Ar file1 +and +.Ar file2 +exist and .Ar file1 -exists and is older than +is older than .Ar file2 . +Note that +.Ar file1 +.Ic -ot +.Ar file2 +is equivalent to +.Ar file2 +.Ic -nt +.Ar file1 +.It Ar file1 Fl ot Ns Ar X Ns Ar Y Ar file2 +Equivalent to +.Ar file2 +.Ic -nt Ns Ar Y Ns Ar X +.Ar file1 . .It Ar file1 Fl ef Ar file2 True if .Ar file1 Modified: projects/uefi/bin/test/test.c ============================================================================== --- projects/uefi/bin/test/test.c Wed Feb 27 05:03:35 2013 (r247382) +++ projects/uefi/bin/test/test.c Wed Feb 27 05:06:59 2013 (r247383) @@ -63,7 +63,7 @@ error(const char *msg, ...) "-u"|"-g"|"-k"|"-s"|"-t"|"-z"|"-n"|"-o"|"-O"|"-G"|"-L"|"-S"; binary-operator ::= "="|"!="|"-eq"|"-ne"|"-ge"|"-gt"|"-le"|"-lt"| - "-nt"|"-ot"|"-ef"; + "-nt"|"-nt[abcm][abcm]"|"-ot"|"-ot[abcm][abcm])"|"-ef"; operand ::= */ @@ -85,8 +85,38 @@ enum token { FILSUID, FILSGID, FILSTCK, - FILNT, - FILOT, + FILNTAA, + FILNTAB, + FILNTAC, + FILNTAM, + FILNTBA, + FILNTBB, + FILNTBC, + FILNTBM, + FILNTCA, + FILNTCB, + FILNTCC, + FILNTCM, + FILNTMA, + FILNTMB, + FILNTMC, + FILNTMM, + FILOTAA, + FILOTAB, + FILOTAC, + FILOTAM, + FILOTBA, + FILOTBB, + FILOTBC, + FILOTBM, + FILOTCA, + FILOTCB, + FILOTCC, + FILOTCM, + FILOTMA, + FILOTMB, + FILOTMC, + FILOTMM, FILEQ, FILUID, FILGID, @@ -118,9 +148,16 @@ enum token_types { PAREN }; +enum time_types { + ATIME, + BTIME, + CTIME, + MTIME +}; + static struct t_op { - char op_text[4]; - short op_num, op_type; + char op_text[6]; + char op_num, op_type; } const ops [] = { {"-r", FILRD, UNOP}, {"-w", FILWR, UNOP}, @@ -154,8 +191,40 @@ static struct t_op { {"-gt", INTGT, BINOP}, {"-le", INTLE, BINOP}, {"-lt", INTLT, BINOP}, - {"-nt", FILNT, BINOP}, - {"-ot", FILOT, BINOP}, + {"-nt", FILNTMM, BINOP}, + {"-ntaa", FILNTAA, BINOP}, + {"-ntab", FILNTAB, BINOP}, + {"-ntac", FILNTAC, BINOP}, + {"-ntam", FILNTAM, BINOP}, + {"-ntba", FILNTBA, BINOP}, + {"-ntbb", FILNTBB, BINOP}, + {"-ntbc", FILNTBC, BINOP}, + {"-ntbm", FILNTBM, BINOP}, + {"-ntca", FILNTCA, BINOP}, + {"-ntcb", FILNTCB, BINOP}, + {"-ntcc", FILNTCC, BINOP}, + {"-ntcm", FILNTCM, BINOP}, + {"-ntma", FILNTMA, BINOP}, + {"-ntmb", FILNTMB, BINOP}, + {"-ntmc", FILNTMC, BINOP}, + {"-ntmm", FILNTMM, BINOP}, + {"-ot", FILOTMM, BINOP}, + {"-otaa", FILOTAA, BINOP}, + {"-otab", FILOTBB, BINOP}, + {"-otac", FILOTAC, BINOP}, + {"-otam", FILOTAM, BINOP}, + {"-otba", FILOTBA, BINOP}, + {"-otbb", FILOTBB, BINOP}, + {"-otbc", FILOTBC, BINOP}, + {"-otbm", FILOTBM, BINOP}, + {"-otca", FILOTCA, BINOP}, + {"-otcb", FILOTCB, BINOP}, + {"-otcc", FILOTCC, BINOP}, + {"-otcm", FILOTCM, BINOP}, + {"-otma", FILOTMA, BINOP}, + {"-otmb", FILOTMB, BINOP}, + {"-otmc", FILOTMC, BINOP}, + {"-otmm", FILOTMM, BINOP}, {"-ef", FILEQ, BINOP}, {"!", UNOT, BUNOP}, {"-a", BAND, BBINOP}, @@ -180,10 +249,10 @@ static int intcmp(const char *, const ch static int isunopoperand(void); static int islparenoperand(void); static int isrparenoperand(void); -static int newerf(const char *, const char *); +static int newerf(const char *, const char *, enum time_types, + enum time_types); static int nexpr(enum token); static int oexpr(enum token); -static int olderf(const char *, const char *); static int primary(enum token); static void syntax(const char *, const char *); static enum token t_lex(char *); @@ -353,10 +422,70 @@ binop(void) return intcmp(opnd1, opnd2) <= 0; case INTLT: return intcmp(opnd1, opnd2) < 0; - case FILNT: - return newerf (opnd1, opnd2); - case FILOT: - return olderf (opnd1, opnd2); + case FILNTAA: + return newerf(opnd1, opnd2, ATIME, ATIME); + case FILNTAB: + return newerf(opnd1, opnd2, ATIME, BTIME); + case FILNTAC: + return newerf(opnd1, opnd2, ATIME, CTIME); + case FILNTAM: + return newerf(opnd1, opnd2, ATIME, MTIME); + case FILNTBA: + return newerf(opnd1, opnd2, BTIME, ATIME); + case FILNTBB: + return newerf(opnd1, opnd2, BTIME, BTIME); + case FILNTBC: + return newerf(opnd1, opnd2, BTIME, CTIME); + case FILNTBM: + return newerf(opnd1, opnd2, BTIME, MTIME); + case FILNTCA: + return newerf(opnd1, opnd2, CTIME, ATIME); + case FILNTCB: + return newerf(opnd1, opnd2, CTIME, BTIME); + case FILNTCC: + return newerf(opnd1, opnd2, CTIME, CTIME); + case FILNTCM: + return newerf(opnd1, opnd2, CTIME, MTIME); + case FILNTMA: + return newerf(opnd1, opnd2, MTIME, ATIME); + case FILNTMB: + return newerf(opnd1, opnd2, MTIME, BTIME); + case FILNTMC: + return newerf(opnd1, opnd2, MTIME, CTIME); + case FILNTMM: + return newerf(opnd1, opnd2, MTIME, MTIME); + case FILOTAA: + return newerf(opnd2, opnd1, ATIME, ATIME); + case FILOTAB: + return newerf(opnd2, opnd1, BTIME, ATIME); + case FILOTAC: + return newerf(opnd2, opnd1, CTIME, ATIME); + case FILOTAM: + return newerf(opnd2, opnd1, MTIME, ATIME); + case FILOTBA: + return newerf(opnd2, opnd1, ATIME, BTIME); + case FILOTBB: + return newerf(opnd2, opnd1, BTIME, BTIME); + case FILOTBC: + return newerf(opnd2, opnd1, CTIME, BTIME); + case FILOTBM: + return newerf(opnd2, opnd1, MTIME, BTIME); + case FILOTCA: + return newerf(opnd2, opnd1, ATIME, CTIME); + case FILOTCB: + return newerf(opnd2, opnd1, BTIME, CTIME); + case FILOTCC: + return newerf(opnd2, opnd1, CTIME, CTIME); + case FILOTCM: + return newerf(opnd2, opnd1, MTIME, CTIME); + case FILOTMA: + return newerf(opnd2, opnd1, ATIME, MTIME); + case FILOTMB: + return newerf(opnd2, opnd1, BTIME, MTIME); + case FILOTMC: + return newerf(opnd2, opnd1, CTIME, MTIME); + case FILOTMM: + return newerf(opnd2, opnd1, MTIME, MTIME); case FILEQ: return equalf (opnd1, opnd2); default: @@ -570,25 +699,34 @@ intcmp (const char *s1, const char *s2) } static int -newerf (const char *f1, const char *f2) +newerf (const char *f1, const char *f2, enum time_types t1, enum time_types t2) { struct stat b1, b2; + struct timespec *ts1, *ts2; if (stat(f1, &b1) != 0 || stat(f2, &b2) != 0) return 0; - if (b1.st_mtim.tv_sec > b2.st_mtim.tv_sec) + switch (t1) { + case ATIME: ts1 = &b1.st_atim; break; + case BTIME: ts1 = &b1.st_birthtim; break; + case CTIME: ts1 = &b1.st_ctim; break; + default: ts1 = &b1.st_mtim; break; + } + + switch (t2) { + case ATIME: ts2 = &b2.st_atim; break; + case BTIME: ts2 = &b2.st_birthtim; break; + case CTIME: ts2 = &b2.st_ctim; break; + default: ts2 = &b2.st_mtim; break; + } + + if (ts1->tv_sec > ts2->tv_sec) return 1; - if (b1.st_mtim.tv_sec < b2.st_mtim.tv_sec) + if (ts1->tv_sec < ts2->tv_sec) return 0; - return (b1.st_mtim.tv_nsec > b2.st_mtim.tv_nsec); -} - -static int -olderf (const char *f1, const char *f2) -{ - return (newerf(f2, f1)); + return (ts1->tv_nsec > ts2->tv_nsec); } static int Modified: projects/uefi/cddl/contrib/opensolaris/cmd/zinject/translate.c ============================================================================== --- projects/uefi/cddl/contrib/opensolaris/cmd/zinject/translate.c Wed Feb 27 05:03:35 2013 (r247382) +++ projects/uefi/cddl/contrib/opensolaris/cmd/zinject/translate.c Wed Feb 27 05:06:59 2013 (r247383) @@ -20,6 +20,7 @@ */ /* * Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2012 by Delphix. All rights reserved. */ #include @@ -455,6 +456,20 @@ translate_device(const char *pool, const &record->zi_guid) == 0); } + /* + * Device faults can take on three different forms: + * 1). delayed or hanging I/O + * 2). zfs label faults + * 3). generic disk faults + */ + if (record->zi_timer != 0) { + record->zi_cmd = ZINJECT_DELAY_IO; + } else if (label_type != TYPE_INVAL) { + record->zi_cmd = ZINJECT_LABEL_FAULT; + } else { + record->zi_cmd = ZINJECT_DEVICE_FAULT; + } + switch (label_type) { case TYPE_LABEL_UBERBLOCK: record->zi_start = offsetof(vdev_label_t, vl_uberblock[0]); Modified: projects/uefi/cddl/contrib/opensolaris/cmd/zinject/zinject.c ============================================================================== --- projects/uefi/cddl/contrib/opensolaris/cmd/zinject/zinject.c Wed Feb 27 05:03:35 2013 (r247382) +++ projects/uefi/cddl/contrib/opensolaris/cmd/zinject/zinject.c Wed Feb 27 05:06:59 2013 (r247383) @@ -20,6 +20,7 @@ */ /* * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2012 by Delphix. All rights reserved. */ /* @@ -603,7 +604,7 @@ main(int argc, char **argv) } while ((c = getopt(argc, argv, - ":aA:b:d:f:Fg:qhIc:t:T:l:mr:s:e:uL:p:")) != -1) { + ":aA:b:d:D:f:Fg:qhIc:t:T:l:mr:s:e:uL:p:")) != -1) { switch (c) { case 'a': flags |= ZINJECT_FLUSH_ARC; @@ -629,6 +630,15 @@ main(int argc, char **argv) case 'd': device = optarg; break; + case 'D': + record.zi_timer = strtoull(optarg, &end, 10); + if (errno != 0 || *end != '\0') { + (void) fprintf(stderr, "invalid i/o delay " + "value: '%s'\n", optarg); + usage(); + return (1); + } + break; case 'e': if (strcasecmp(optarg, "io") == 0) { error = EIO; @@ -693,6 +703,7 @@ main(int argc, char **argv) case 'p': (void) strlcpy(record.zi_func, optarg, sizeof (record.zi_func)); + record.zi_cmd = ZINJECT_PANIC; break; case 'q': quiet = 1; @@ -766,13 +777,15 @@ main(int argc, char **argv) argc -= optind; argv += optind; + if (record.zi_duration != 0) + record.zi_cmd = ZINJECT_IGNORED_WRITES; + if (cancel != NULL) { /* * '-c' is invalid with any other options. */ if (raw != NULL || range != NULL || type != TYPE_INVAL || - level != 0 || record.zi_func[0] != '\0' || - record.zi_duration != 0) { + level != 0 || record.zi_cmd != ZINJECT_UNINITIALIZED) { (void) fprintf(stderr, "cancel (-c) incompatible with " "any other options\n"); usage(); @@ -804,8 +817,7 @@ main(int argc, char **argv) * for doing injection, so handle it separately here. */ if (raw != NULL || range != NULL || type != TYPE_INVAL || - level != 0 || record.zi_func[0] != '\0' || - record.zi_duration != 0) { + level != 0 || record.zi_cmd != ZINJECT_UNINITIALIZED) { (void) fprintf(stderr, "device (-d) incompatible with " "data error injection\n"); usage(); @@ -839,7 +851,7 @@ main(int argc, char **argv) } else if (raw != NULL) { if (range != NULL || type != TYPE_INVAL || level != 0 || - record.zi_func[0] != '\0' || record.zi_duration != 0) { + record.zi_cmd != ZINJECT_UNINITIALIZED) { (void) fprintf(stderr, "raw (-b) format with " "any other options\n"); usage(); @@ -862,13 +874,14 @@ main(int argc, char **argv) return (1); } + record.zi_cmd = ZINJECT_DATA_FAULT; if (translate_raw(raw, &record) != 0) return (1); if (!error) error = EIO; - } else if (record.zi_func[0] != '\0') { + } else if (record.zi_cmd == ZINJECT_PANIC) { if (raw != NULL || range != NULL || type != TYPE_INVAL || - level != 0 || device != NULL || record.zi_duration != 0) { + level != 0 || device != NULL) { (void) fprintf(stderr, "panic (-p) incompatible with " "other options\n"); usage(); @@ -886,7 +899,7 @@ main(int argc, char **argv) if (argv[1] != NULL) record.zi_type = atoi(argv[1]); dataset[0] = '\0'; - } else if (record.zi_duration != 0) { + } else if (record.zi_cmd == ZINJECT_IGNORED_WRITES) { if (nowrites == 0) { (void) fprintf(stderr, "-s or -g meaningless " "without -I (ignore writes)\n"); @@ -940,6 +953,7 @@ main(int argc, char **argv) return (1); } + record.zi_cmd = ZINJECT_DATA_FAULT; if (translate_record(type, argv[0], range, level, &record, pool, dataset) != 0) return (1); Modified: projects/uefi/cddl/contrib/opensolaris/lib/libzpool/common/kernel.c ============================================================================== --- projects/uefi/cddl/contrib/opensolaris/lib/libzpool/common/kernel.c Wed Feb 27 05:03:35 2013 (r247382) +++ projects/uefi/cddl/contrib/opensolaris/lib/libzpool/common/kernel.c Wed Feb 27 05:06:59 2013 (r247383) @@ -45,6 +45,9 @@ int aok; uint64_t physmem; vnode_t *rootdir = (vnode_t *)0xabcd1234; char hw_serial[HW_HOSTID_LEN]; +#ifdef illumos +kmutex_t cpu_lock; +#endif struct utsname utsname = { "userland", "libzpool", "1", "1", "na" @@ -842,6 +845,28 @@ ddi_strtoull(const char *str, char **npt return (0); } +#ifdef illumos +/* ARGSUSED */ +cyclic_id_t +cyclic_add(cyc_handler_t *hdlr, cyc_time_t *when) +{ + return (1); +} + +/* ARGSUSED */ +void +cyclic_remove(cyclic_id_t id) +{ +} + +/* ARGSUSED */ +int +cyclic_reprogram(cyclic_id_t id, hrtime_t expiration) +{ + return (1); +} +#endif + /* * ========================================================================= * kernel emulation setup & teardown @@ -875,6 +900,10 @@ kernel_init(int mode) system_taskq_init(); +#ifdef illumos + mutex_init(&cpu_lock, NULL, MUTEX_DEFAULT, NULL); +#endif + spa_init(mode); } Modified: projects/uefi/cddl/contrib/opensolaris/lib/libzpool/common/sys/zfs_context.h ============================================================================== --- projects/uefi/cddl/contrib/opensolaris/lib/libzpool/common/sys/zfs_context.h Wed Feb 27 05:03:35 2013 (r247382) +++ projects/uefi/cddl/contrib/opensolaris/lib/libzpool/common/sys/zfs_context.h Wed Feb 27 05:06:59 2013 (r247383) @@ -457,6 +457,9 @@ extern vnode_t *rootdir; extern void delay(clock_t ticks); +#define SEC_TO_TICK(sec) ((sec) * hz) +#define NSEC_TO_TICK(usec) ((usec) / (NANOSEC / hz)) + #define gethrestime_sec() time(NULL) #define gethrestime(t) \ do {\ @@ -624,6 +627,36 @@ typedef uint32_t idmap_rid_t; #define ERESTART (-1) #endif +#ifdef illumos +/* + * Cyclic information + */ +extern kmutex_t cpu_lock; + +typedef uintptr_t cyclic_id_t; +typedef uint16_t cyc_level_t; +typedef void (*cyc_func_t)(void *); + +#define CY_LOW_LEVEL 0 +#define CY_INFINITY INT64_MAX +#define CYCLIC_NONE ((cyclic_id_t)0) + +typedef struct cyc_time { + hrtime_t cyt_when; + hrtime_t cyt_interval; +} cyc_time_t; + +typedef struct cyc_handler { + cyc_func_t cyh_func; + void *cyh_arg; + cyc_level_t cyh_level; +} cyc_handler_t; + +extern cyclic_id_t cyclic_add(cyc_handler_t *, cyc_time_t *); +extern void cyclic_remove(cyclic_id_t); +extern int cyclic_reprogram(cyclic_id_t, hrtime_t); +#endif /* illumos */ + #ifdef __cplusplus } #endif Modified: projects/uefi/contrib/expat/Changes ============================================================================== --- projects/uefi/contrib/expat/Changes Wed Feb 27 05:03:35 2013 (r247382) +++ projects/uefi/contrib/expat/Changes Wed Feb 27 05:06:59 2013 (r247383) @@ -1,5 +1,41 @@ +Release 2.1.0 Sat March 24 2012 + - Bug Fixes: + #1742315: Harmful XML_ParserCreateNS suggestion. + #2895533: CVE-2012-1147 - Resource leak in readfilemap.c. + #1785430: Expat build fails on linux-amd64 with gcc version>=4.1 -O3. + #1983953, 2517952, 2517962, 2649838: + Build modifications using autoreconf instead of buildconf.sh. + #2815947, #2884086: OBJEXT and EXEEXT support while building. + #1990430: CVE-2009-3720 - Parser crash with special UTF-8 sequences. + #2517938: xmlwf should return non-zero exit status if not well-formed. + #2517946: Wrong statement about XMLDecl in xmlwf.1 and xmlwf.sgml. + #2855609: Dangling positionPtr after error. + #2894085: CVE-2009-3560 - Buffer over-read and crash in big2_toUtf8(). + #2958794: CVE-2012-1148 - Memory leak in poolGrow. + #2990652: CMake support. + #3010819: UNEXPECTED_STATE with a trailing "%" in entity value. + #3206497: Unitialized memory returned from XML_Parse. + #3287849: make check fails on mingw-w64. + #3496608: CVE-2012-0876 - Hash DOS attack. + - Patches: + #1749198: pkg-config support. + #3010222: Fix for bug #3010819. + #3312568: CMake support. + #3446384: Report byte offsets for attr names and values. + - New Features / API changes: + Added new API member XML_SetHashSalt() that allows setting an intial + value (salt) for hash calculations. This is part of the fix for + bug #3496608 to randomize hash parameters. + When compiled with XML_ATTR_INFO defined, adds new API member + XML_GetAttributeInfo() that allows retrieving the byte + offsets for attribute names and values (patch #3446384). + Added CMake build system. + See bug #2990652 and patch #3312568. + Added run-benchmark target to Makefile.in - relies on testdata module + present in the same relative location as in the repository. + Release 2.0.1 Tue June 5 2007 - - Fixed bugs #1515266, 1515600: The character data handler's calling + - Fixed bugs #1515266, #1515600: The character data handler's calling of XML_StopParser() was not handled properly; if the parser was stopped and the handler set to NULL, the parser would segfault. - Fixed bug #1690883: Expat failed on EBCDIC systems as it assumed @@ -8,7 +44,7 @@ Release 2.0.1 Tue June 5 2007 - Fixed xmlwf bug #1513566: "out of memory" error on file size zero. - Fixed outline.c bug #1543233: missing a final XML_ParserFree() call. - Fixes and improvements for Windows platform: - bugs #1409451, #1476160, 1548182, 1602769, 1717322. + bugs #1409451, #1476160, #1548182, #1602769, #1717322. - Build fixes for various platforms: HP-UX, Tru64, Solaris 9: patch #1437840, bug #1196180. All Unix: #1554618 (refreshed config.sub/config.guess). @@ -30,8 +66,8 @@ Release 2.0.0 Wed Jan 11 2006 byte indexes and line/column numbers. - Updated to use libtool 1.5.22 (the most recent). - Added support for AmigaOS. - - Some mostly minor bug fixes. SF issues include: 1006708, - 1021776, 1023646, 1114960, 1156398, 1221160, 1271642. + - Some mostly minor bug fixes. SF issues include: #1006708, + #1021776, #1023646, #1114960, #1156398, #1221160, #1271642. Release 1.95.8 Fri Jul 23 2004 - Major new feature: suspend/resume. Handlers can now request @@ -40,8 +76,8 @@ Release 1.95.8 Fri Jul 23 2004 documentation for more details. - Some mostly minor bug fixes, but compilation should no longer generate warnings on most platforms. SF issues - include: 827319, 840173, 846309, 888329, 896188, 923913, - 928113, 961698, 985192. + include: #827319, #840173, #846309, #888329, #896188, #923913, + #928113, #961698, #985192. Release 1.95.7 Mon Oct 20 2003 - Fixed enum XML_Status issue (reported on SourceForge many @@ -54,19 +90,19 @@ Release 1.95.7 Mon Oct 20 2003 - Improved ability to build without the configure-generated expat_config.h header. This is useful for applications which embed Expat rather than linking in the library. - - Fixed a variety of bugs: see SF issues 458907, 609603, - 676844, 679754, 692878, 692964, 695401, 699323, 699487, - 820946. + - Fixed a variety of bugs: see SF issues #458907, #609603, + #676844, #679754, #692878, #692964, #695401, #699323, #699487, + #820946. - Improved hash table lookups. - Added more regression tests and improved documentation. Release 1.95.6 Tue Jan 28 2003 - Added XML_FreeContentModel(). - Added XML_MemMalloc(), XML_MemRealloc(), XML_MemFree(). - - Fixed a variety of bugs: see SF issues 615606, 616863, - 618199, 653180, 673791. + - Fixed a variety of bugs: see SF issues #615606, #616863, + #618199, #653180, #673791. - Enhanced the regression test suite. - - Man page improvements: includes SF issue 632146. + - Man page improvements: includes SF issue #632146. Release 1.95.5 Fri Sep 6 2002 - Added XML_UseForeignDTD() for improved SAX2 support. @@ -84,9 +120,9 @@ Release 1.95.5 Fri Sep 6 2002 - Reduced line-length for all source code and headers to be no longer than 80 characters, to help with AS/400 support. - Reduced memory copying during parsing (SF patch #600964). - - Fixed a variety of bugs: see SF issues 580793, 434664, - 483514, 580503, 581069, 584041, 584183, 584832, 585537, - 596555, 596678, 598352, 598944, 599715, 600479, 600971. + - Fixed a variety of bugs: see SF issues #580793, #434664, + #483514, #580503, #581069, #584041, #584183, #584832, #585537, + #596555, #596678, #598352, #598944, #599715, #600479, #600971. Release 1.95.4 Fri Jul 12 2002 - Added support for VMS, contributed by Craig Berry. See @@ -95,14 +131,14 @@ Release 1.95.4 Fri Jul 12 2002 contributed by Thomas Wegner and Daryle Walker. - Added Borland C++ Builder 5 / BCC 5.5 support, contributed by Patrick McConnell (SF patch #538032). - - Fixed a variety of bugs: see SF issues 441449, 563184, - 564342, 566334, 566901, 569461, 570263, 575168, 579196. + - Fixed a variety of bugs: see SF issues #441449, #563184, + #564342, #566334, #566901, #569461, #570263, #575168, #579196. - Made skippedEntityHandler conform to SAX2 (see source comment) - Re-implemented WFC: Entity Declared from XML 1.0 spec and added a new error "entity declared in parameter entity": - see SF bug report 569461 and SF patch 578161 + see SF bug report #569461 and SF patch #578161 - Re-implemented section 5.1 from XML 1.0 spec: - see SF bug report 570263 and SF patch 578161 + see SF bug report #570263 and SF patch #578161 Release 1.95.3 Mon Jun 3 2002 - Added a project to the MSVC workspace to create a wchar_t @@ -114,9 +150,9 @@ Release 1.95.3 Mon Jun 3 2002 - Made the XML_UNICODE builds usable (thanks, Karl!). - Allow xmlwf to read from standard input. - Install a man page for xmlwf on Unix systems. - - Fixed many bugs; see SF bug reports 231864, 461380, 464837, - 466885, 469226, 477667, 484419, 487840, 494749, 496505, - 547350. Other bugs which we can't test as easily may also + - Fixed many bugs; see SF bug reports #231864, #461380, #464837, + #466885, #469226, #477667, #484419, #487840, #494749, #496505, + #547350. Other bugs which we can't test as easily may also have been fixed, especially in the area of build support. Release 1.95.2 Fri Jul 27 2001 Copied: projects/uefi/contrib/expat/FREEBSD-Xlist (from r247382, head/contrib/expat/FREEBSD-Xlist) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/uefi/contrib/expat/FREEBSD-Xlist Wed Feb 27 05:06:59 2013 (r247383, copy of r247382, head/contrib/expat/FREEBSD-Xlist) @@ -0,0 +1,19 @@ +# $FreeBSD$ +*.MPW +*.cmake +*.def +*.dsp +*.dsw +*.m4 +*.pc.in +*config.h +CMake* +Configure* +amiga +bcb5 +configure +conftools +doc/valid-xhtml10.png +m4 +vms +win32 Modified: projects/uefi/contrib/expat/MANIFEST ============================================================================== --- projects/uefi/contrib/expat/MANIFEST Wed Feb 27 05:03:35 2013 (r247382) +++ projects/uefi/contrib/expat/MANIFEST Wed Feb 27 05:06:59 2013 (r247383) @@ -1,5 +1,8 @@ -amiga/stdlib.c amiga/launch.c +amiga/expat_68k.c +amiga/expat_68k.h +amiga/expat_68k_handler_stubs.c +amiga/expat_base.h amiga/expat_vectors.c amiga/expat_lib.c amiga/expat.xml @@ -42,25 +45,35 @@ doc/style.css doc/valid-xhtml10.png doc/xmlwf.1 doc/xmlwf.sgml +CMakeLists.txt +CMake.README COPYING Changes +ConfigureChecks.cmake MANIFEST Makefile.in README configure configure.in expat_config.h.in +expat_config.h.cmake +expat.pc.in expat.dsw +aclocal.m4 conftools/PrintPath conftools/ac_c_bigendian_cross.m4 -conftools/config.guess -conftools/config.sub conftools/expat.m4 conftools/get-version.sh +conftools/mkinstalldirs +conftools/config.guess +conftools/config.sub conftools/install-sh -conftools/libtool.m4 conftools/ltmain.sh -conftools/mkinstalldirs +m4/libtool.m4 +m4/ltversion.m4 +m4/ltoptions.m4 +m4/ltsugar.m4 +m4/lt~obsolete.m4 examples/elements.c examples/elements.dsp examples/outline.c Modified: projects/uefi/contrib/expat/Makefile.in ============================================================================== --- projects/uefi/contrib/expat/Makefile.in Wed Feb 27 05:03:35 2013 (r247382) +++ projects/uefi/contrib/expat/Makefile.in Wed Feb 27 05:06:59 2013 (r247383) @@ -31,6 +31,7 @@ bindir = @bindir@ libdir = @libdir@ includedir = @includedir@ man1dir = @mandir@/man1 +pkgconfigdir = $(libdir)/pkgconfig top_builddir = . @@ -46,18 +47,18 @@ LIBRARY = libexpat.la DESTDIR = $(INSTALL_ROOT) -default: buildlib xmlwf/xmlwf +default: buildlib xmlwf/xmlwf@EXEEXT@ -buildlib: $(LIBRARY) +buildlib: $(LIBRARY) expat.pc -all: $(LIBRARY) xmlwf/xmlwf examples/elements examples/outline +all: $(LIBRARY) expat.pc xmlwf/xmlwf@EXEEXT@ examples/elements examples/outline clean: - cd lib && rm -f $(LIBRARY) *.o *.lo && rm -rf .libs _libs - cd xmlwf && rm -f xmlwf *.o *.lo && rm -rf .libs _libs - cd examples && rm -f elements outline *.o *.lo && rm -rf .libs _libs - cd tests && rm -rf .libs runtests runtests.o runtestspp runtestspp.o - cd tests && rm -f chardata.o minicheck.o + cd lib && rm -f $(LIBRARY) *.@OBJEXT@ *.lo && rm -rf .libs _libs + cd xmlwf && rm -f xmlwf *.@OBJEXT@ *.lo && rm -rf .libs _libs + cd examples && rm -f elements outline *.@OBJEXT@ *.lo && rm -rf .libs _libs + cd tests && rm -rf .libs runtests runtests.@OBJEXT@ runtestspp runtestspp.@OBJEXT@ + cd tests && rm -f chardata.@OBJEXT@ minicheck.@OBJEXT@ rm -rf .libs libexpat.la rm -f examples/core tests/core xmlwf/core @@ -65,34 +66,37 @@ clobber: clean distclean: clean rm -f expat_config.h config.status config.log config.cache libtool - rm -f Makefile + rm -f Makefile expat.pc extraclean: distclean rm -f expat_config.h.in configure - rm -f conftools/ltconfig conftools/ltmain.sh conftools/libtool.m4 + rm -f aclocal.m4 m4/* + rm -f conftools/ltmain.sh conftools/install-sh conftools/config.guess conftools/config.sub check: tests/runtests tests/runtestspp tests/runtests tests/runtestspp -install: xmlwf/xmlwf installlib +install: xmlwf/xmlwf@EXEEXT@ installlib $(mkinstalldirs) $(DESTDIR)$(bindir) $(DESTDIR)$(man1dir) - $(LIBTOOL) --mode=install $(INSTALL_PROGRAM) xmlwf/xmlwf $(DESTDIR)$(bindir)/xmlwf + $(LIBTOOL) --mode=install $(INSTALL_PROGRAM) xmlwf/xmlwf@EXEEXT@ $(DESTDIR)$(bindir)/xmlwf $(INSTALL_DATA) $(MANFILE) $(DESTDIR)$(man1dir) -installlib: $(LIBRARY) $(APIHEADER) - $(mkinstalldirs) $(DESTDIR)$(libdir) $(DESTDIR)$(includedir) +installlib: $(LIBRARY) $(APIHEADER) expat.pc + $(mkinstalldirs) $(DESTDIR)$(libdir) $(DESTDIR)$(includedir) $(DESTDIR)$(pkgconfigdir) $(LIBTOOL) --mode=install $(INSTALL) $(LIBRARY) $(DESTDIR)$(libdir)/$(LIBRARY) for FN in $(APIHEADER) ; do $(INSTALL_DATA) $$FN $(DESTDIR)$(includedir) ; done + $(INSTALL_DATA) expat.pc $(DESTDIR)$(pkgconfigdir)/expat.pc uninstall: uninstalllib - $(LIBTOOL) --mode=uninstall rm -f $(DESTDIR)$(bindir)/xmlwf + $(LIBTOOL) --mode=uninstall rm -f $(DESTDIR)$(bindir)/xmlwf@EXEEXT@ rm -f $(DESTDIR)$(man1dir)/xmlwf.1 uninstalllib: $(LIBTOOL) --mode=uninstall rm -f $(DESTDIR)$(libdir)/$(LIBRARY) rm -f $(DESTDIR)$(includedir)/expat.h rm -f $(DESTDIR)$(includedir)/expat_external.h + rm -f $(DESTDIR)$(pkgconfigdir)/expat.pc # for VPATH builds (invoked by configure) mkdir-init: @@ -125,6 +129,9 @@ LIB_OBJS = lib/xmlparse.lo lib/xmltok.lo $(LIBRARY): $(LIB_OBJS) $(LINK_LIB) $(LIB_OBJS) +expat.pc: $(top_builddir)/config.status + cd $(top_builddir) && $(SHELL) ./config.status $@ + lib/xmlparse.lo: lib/xmlparse.c lib/expat.h lib/xmlrole.h lib/xmltok.h \ $(top_builddir)/expat_config.h lib/expat_external.h lib/internal.h @@ -137,46 +144,53 @@ lib/xmltok.lo: lib/xmltok.c lib/xmltok_i $(top_builddir)/expat_config.h lib/expat_external.h lib/internal.h -XMLWF_OBJS = xmlwf/xmlwf.o xmlwf/xmlfile.o xmlwf/codepage.o xmlwf/@FILEMAP@.o -xmlwf/xmlwf.o: xmlwf/xmlwf.c -xmlwf/xmlfile.o: xmlwf/xmlfile.c -xmlwf/codepage.o: xmlwf/codepage.c -xmlwf/@FILEMAP@.o: xmlwf/@FILEMAP@.c -xmlwf/xmlwf: $(XMLWF_OBJS) $(LIBRARY) +XMLWF_OBJS = xmlwf/xmlwf.@OBJEXT@ xmlwf/xmlfile.@OBJEXT@ xmlwf/codepage.@OBJEXT@ xmlwf/@FILEMAP@.@OBJEXT@ +xmlwf/xmlwf.@OBJEXT@: xmlwf/xmlwf.c +xmlwf/xmlfile.@OBJEXT@: xmlwf/xmlfile.c +xmlwf/codepage.@OBJEXT@: xmlwf/codepage.c +xmlwf/@FILEMAP@.@OBJEXT@: xmlwf/@FILEMAP@.c +xmlwf/xmlwf@EXEEXT@: $(XMLWF_OBJS) $(LIBRARY) $(LINK_EXE) $(XMLWF_OBJS) $(LIBRARY) -examples/elements.o: examples/elements.c -examples/elements: examples/elements.o $(LIBRARY) +examples/elements.@OBJEXT@: examples/elements.c +examples/elements: examples/elements.@OBJEXT@ $(LIBRARY) $(LINK_EXE) $< $(LIBRARY) -examples/outline.o: examples/outline.c -examples/outline: examples/outline.o $(LIBRARY) +examples/outline.@OBJEXT@: examples/outline.c +examples/outline: examples/outline.@OBJEXT@ $(LIBRARY) $(LINK_EXE) $< $(LIBRARY) -tests/chardata.o: tests/chardata.c tests/chardata.h -tests/minicheck.o: tests/minicheck.c tests/minicheck.h -tests/runtests.o: tests/runtests.c tests/chardata.h -tests/runtests: tests/runtests.o tests/chardata.o tests/minicheck.o $(LIBRARY) - $(LINK_EXE) tests/runtests.o tests/chardata.o tests/minicheck.o $(LIBRARY) -tests/runtestspp.o: tests/runtestspp.cpp tests/runtests.c tests/chardata.h -tests/runtestspp: tests/runtestspp.o tests/chardata.o tests/minicheck.o $(LIBRARY) - $(LINK_CXX_EXE) tests/runtestspp.o tests/chardata.o tests/minicheck.o $(LIBRARY) +tests/chardata.@OBJEXT@: tests/chardata.c tests/chardata.h +tests/minicheck.@OBJEXT@: tests/minicheck.c tests/minicheck.h +tests/runtests.@OBJEXT@: tests/runtests.c tests/chardata.h +tests/runtests: tests/runtests.@OBJEXT@ tests/chardata.@OBJEXT@ tests/minicheck.@OBJEXT@ $(LIBRARY) + $(LINK_EXE) tests/runtests.@OBJEXT@ tests/chardata.@OBJEXT@ tests/minicheck.@OBJEXT@ $(LIBRARY) +tests/runtestspp.@OBJEXT@: tests/runtestspp.cpp tests/runtests.c tests/chardata.h +tests/runtestspp: tests/runtestspp.@OBJEXT@ tests/chardata.@OBJEXT@ tests/minicheck.@OBJEXT@ $(LIBRARY) + $(LINK_CXX_EXE) tests/runtestspp.@OBJEXT@ tests/chardata.@OBJEXT@ tests/minicheck.@OBJEXT@ $(LIBRARY) + +tests/benchmark/benchmark.@OBJEXT@: tests/benchmark/benchmark.c +tests/benchmark/benchmark: tests/benchmark/benchmark.@OBJEXT@ $(LIBRARY) + $(LINK_EXE) tests/benchmark/benchmark.@OBJEXT@ $(LIBRARY) + +run-benchmark: tests/benchmark/benchmark + tests/benchmark/benchmark@EXEEXT@ -n $(top_srcdir)/../testdata/largefiles/recset.xml 65535 3 tests/xmlts.zip: wget --output-document=tests/xmlts.zip \ - http://www.w3.org/XML/Test/xmlts20020606.zip + http://www.w3.org/XML/Test/xmlts20080827.zip tests/XML-Test-Suite: tests/xmlts.zip cd tests && unzip -q xmlts.zip -run-xmltest: xmlwf/xmlwf tests/XML-Test-Suite +run-xmltest: xmlwf/xmlwf@EXEEXT@ tests/XML-Test-Suite tests/xmltest.sh -.SUFFIXES: .c .cpp .lo .o +.SUFFIXES: .c .cpp .lo .@OBJEXT@ -.cpp.o: +.cpp.@OBJEXT@: $(CXXCOMPILE) -o $@ -c $< -.c.o: +.c.@OBJEXT@: $(COMPILE) -o $@ -c $< .c.lo: $(LTCOMPILE) -o $@ -c $< Modified: projects/uefi/contrib/expat/README ============================================================================== --- projects/uefi/contrib/expat/README Wed Feb 27 05:03:35 2013 (r247382) +++ projects/uefi/contrib/expat/README Wed Feb 27 05:06:59 2013 (r247383) @@ -1,5 +1,5 @@ - Expat, Release 2.0.1 + Expat, Release 2.1.0 This is Expat, a C library for parsing XML, written by James Clark. Expat is a stream-oriented XML parser. This means that you register @@ -25,8 +25,7 @@ intended to be production grade software If you are building Expat from a check-out from the CVS repository, you need to run a script that generates the configure script using the GNU autoconf and libtool tools. To do this, you need to have -autoconf 2.52 or newer and libtool 1.4 or newer (1.5 or newer preferred). -Run the script like this: +autoconf 2.58 or newer. Run the script like this: ./buildconf.sh @@ -65,8 +64,8 @@ location. Have a look at the "Makefile" the directories into which things will be installed. If you are interested in building Expat to provide document -information in UTF-16 rather than the default UTF-8, follow these -instructions (after having run "make distclean"): +information in UTF-16 encoding rather than the default UTF-8, follow +these instructions (after having run "make distclean"): 1. For UTF-16 output as unsigned short (and version/error strings as char), run: @@ -106,7 +105,10 @@ use DESTDIR=$(INSTALL_ROOT), even if DES environment, because variable-setting priority is 1) commandline *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-projects@FreeBSD.ORG Wed Feb 27 11:42:32 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 2D727D96; Wed, 27 Feb 2013 11:42:32 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 1BDF9A60; Wed, 27 Feb 2013 11:42:32 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r1RBgWfD032680; Wed, 27 Feb 2013 11:42:32 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r1RBgS5a032657; Wed, 27 Feb 2013 11:42:28 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201302271142.r1RBgS5a032657@svn.freebsd.org> From: Alexander Motin Date: Wed, 27 Feb 2013 11:42:28 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247397 - in projects/calloutng: . bin/sh bin/test cddl/contrib/opensolaris/cmd/zinject cddl/contrib/opensolaris/lib/libzpool/common cddl/contrib/opensolaris/lib/libzpool/common/sys con... X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 27 Feb 2013 11:42:32 -0000 Author: mav Date: Wed Feb 27 11:42:28 2013 New Revision: 247397 URL: http://svnweb.freebsd.org/changeset/base/247397 Log: MFC @247396 Added: projects/calloutng/contrib/expat/FREEBSD-Xlist - copied unchanged from r247396, head/contrib/expat/FREEBSD-Xlist projects/calloutng/sys/dev/cxgbe/firmware/t4fw-1.8.4.0.bin.uu - copied unchanged from r247396, head/sys/dev/cxgbe/firmware/t4fw-1.8.4.0.bin.uu projects/calloutng/tools/regression/bin/sh/builtins/wait4.0 - copied unchanged from r247396, head/tools/regression/bin/sh/builtins/wait4.0 projects/calloutng/tools/regression/bin/sh/builtins/wait5.0 - copied unchanged from r247396, head/tools/regression/bin/sh/builtins/wait5.0 projects/calloutng/usr.sbin/bsdconfig/include/media.hlp - copied unchanged from r247396, head/usr.sbin/bsdconfig/include/media.hlp projects/calloutng/usr.sbin/bsdconfig/include/network_device.hlp - copied unchanged from r247396, head/usr.sbin/bsdconfig/include/network_device.hlp projects/calloutng/usr.sbin/bsdconfig/include/options.hlp - copied unchanged from r247396, head/usr.sbin/bsdconfig/include/options.hlp projects/calloutng/usr.sbin/bsdconfig/include/tcp.hlp - copied unchanged from r247396, head/usr.sbin/bsdconfig/include/tcp.hlp projects/calloutng/usr.sbin/bsdconfig/share/device.subr - copied unchanged from r247396, head/usr.sbin/bsdconfig/share/device.subr projects/calloutng/usr.sbin/bsdconfig/share/media/ - copied from r247396, head/usr.sbin/bsdconfig/share/media/ projects/calloutng/usr.sbin/bsdconfig/share/struct.subr - copied unchanged from r247396, head/usr.sbin/bsdconfig/share/struct.subr Deleted: projects/calloutng/contrib/expat/FREEBSD-upgrade projects/calloutng/contrib/expat/configure projects/calloutng/contrib/expat/doc/valid-xhtml10.png projects/calloutng/contrib/expat/lib/winconfig.h projects/calloutng/contrib/expat/tests/benchmark/benchmark.dsp projects/calloutng/contrib/expat/tests/benchmark/benchmark.dsw projects/calloutng/sys/dev/cxgbe/firmware/t4fw-1.6.2.0.bin.uu projects/calloutng/usr.sbin/bsdconfig/networking/include/tcp.hlp Modified: projects/calloutng/Makefile.inc1 projects/calloutng/bin/sh/eval.c projects/calloutng/bin/sh/jobs.c projects/calloutng/bin/sh/main.c projects/calloutng/bin/sh/trap.c projects/calloutng/bin/sh/trap.h projects/calloutng/bin/test/test.1 projects/calloutng/bin/test/test.c projects/calloutng/cddl/contrib/opensolaris/cmd/zinject/translate.c projects/calloutng/cddl/contrib/opensolaris/cmd/zinject/zinject.c projects/calloutng/cddl/contrib/opensolaris/lib/libzpool/common/kernel.c projects/calloutng/cddl/contrib/opensolaris/lib/libzpool/common/sys/zfs_context.h projects/calloutng/contrib/binutils/gas/config/tc-arm.c projects/calloutng/contrib/expat/Changes (contents, props changed) projects/calloutng/contrib/expat/MANIFEST (contents, props changed) projects/calloutng/contrib/expat/Makefile.in (contents, props changed) projects/calloutng/contrib/expat/README (contents, props changed) projects/calloutng/contrib/expat/configure.in (contents, props changed) projects/calloutng/contrib/expat/doc/reference.html (contents, props changed) projects/calloutng/contrib/expat/doc/xmlwf.sgml (contents, props changed) projects/calloutng/contrib/expat/expat_config.h.in (contents, props changed) projects/calloutng/contrib/expat/lib/expat.h (contents, props changed) projects/calloutng/contrib/expat/lib/xmlparse.c (contents, props changed) projects/calloutng/contrib/expat/lib/xmlrole.c (contents, props changed) projects/calloutng/contrib/expat/lib/xmltok.c (contents, props changed) projects/calloutng/contrib/expat/lib/xmltok_impl.c (contents, props changed) projects/calloutng/contrib/expat/tests/README.txt (contents, props changed) projects/calloutng/contrib/expat/tests/minicheck.h projects/calloutng/contrib/expat/tests/runtests.c (contents, props changed) projects/calloutng/contrib/expat/tests/xmltest.sh (contents, props changed) projects/calloutng/contrib/expat/xmlwf/readfilemap.c (contents, props changed) projects/calloutng/contrib/expat/xmlwf/xmlwf.c (contents, props changed) projects/calloutng/contrib/llvm/lib/Target/X86/X86InstrCompiler.td projects/calloutng/etc/rc.d/rtadvd projects/calloutng/lib/libc/gen/opendir.c projects/calloutng/lib/libelf/elf_update.c projects/calloutng/lib/libexpat/expat_config.h projects/calloutng/lib/libexpat/libbsdxml.3 projects/calloutng/lib/libkiconv/kiconv.3 projects/calloutng/lib/libpmc/pmc.soft.3 projects/calloutng/libexec/rtld-elf/map_object.c projects/calloutng/sbin/fsck_ffs/dir.c projects/calloutng/sbin/fsck_ffs/ea.c projects/calloutng/sbin/fsck_ffs/fsck.h projects/calloutng/sbin/fsck_ffs/fsutil.c projects/calloutng/sbin/fsck_ffs/inode.c projects/calloutng/sbin/fsck_ffs/main.c projects/calloutng/sbin/fsck_ffs/setup.c projects/calloutng/sbin/fsdb/fsdbutil.c projects/calloutng/sbin/geom/class/part/gpart.8 projects/calloutng/sbin/hastctl/hastctl.c projects/calloutng/sbin/hastd/control.c projects/calloutng/sbin/hastd/hast.h projects/calloutng/sbin/hastd/primary.c projects/calloutng/sbin/hastd/secondary.c projects/calloutng/sbin/reboot/boot_i386.8 projects/calloutng/share/man/man4/cxgbe.4 projects/calloutng/sys/arm/arm/mp_machdep.c projects/calloutng/sys/arm/arm/pmap-v6.c projects/calloutng/sys/arm/arm/pmap.c projects/calloutng/sys/arm/arm/vfp.c projects/calloutng/sys/arm/at91/at91_machdep.c projects/calloutng/sys/arm/broadcom/bcm2835/bcm2835_vcbus.h projects/calloutng/sys/arm/conf/RPI-B projects/calloutng/sys/arm/include/vfp.h projects/calloutng/sys/arm/include/vmparam.h projects/calloutng/sys/arm/sa11x0/assabet_machdep.c projects/calloutng/sys/arm/ti/ti_gpio.c projects/calloutng/sys/boot/common/bootstrap.h projects/calloutng/sys/boot/common/load_elf.c projects/calloutng/sys/boot/common/module.c projects/calloutng/sys/boot/fdt/dts/bcm2835-rpi-b.dts projects/calloutng/sys/boot/fdt/fdt_loader_cmd.c projects/calloutng/sys/boot/uboot/lib/elf_freebsd.c projects/calloutng/sys/cddl/compat/opensolaris/sys/time.h projects/calloutng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c projects/calloutng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_misc.c projects/calloutng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/spa.h projects/calloutng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/spa_boot.h projects/calloutng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/spa_impl.h projects/calloutng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/vdev.h projects/calloutng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/vdev_impl.h projects/calloutng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zfs_context.h projects/calloutng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zfs_ioctl.h projects/calloutng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zio.h projects/calloutng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c projects/calloutng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_queue.c projects/calloutng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zio_inject.c projects/calloutng/sys/conf/files projects/calloutng/sys/dev/ath/ath_hal/ah.c projects/calloutng/sys/dev/ath/ath_hal/ah.h projects/calloutng/sys/dev/ath/ath_hal/ar5210/ar5210.h projects/calloutng/sys/dev/ath/ath_hal/ar5210/ar5210_attach.c projects/calloutng/sys/dev/ath/ath_hal/ar5210/ar5210_misc.c projects/calloutng/sys/dev/ath/ath_hal/ar5211/ar5211.h projects/calloutng/sys/dev/ath/ath_hal/ar5211/ar5211_attach.c projects/calloutng/sys/dev/ath/ath_hal/ar5211/ar5211_misc.c projects/calloutng/sys/dev/ath/ath_hal/ar5212/ar5212.h projects/calloutng/sys/dev/ath/ath_hal/ar5212/ar5212_attach.c projects/calloutng/sys/dev/ath/ath_hal/ar5212/ar5212_misc.c projects/calloutng/sys/dev/ath/ath_hal/ar5416/ar5416.h projects/calloutng/sys/dev/ath/ath_hal/ar5416/ar5416_attach.c projects/calloutng/sys/dev/ath/ath_hal/ar5416/ar5416_misc.c projects/calloutng/sys/dev/ath/ath_hal/ar5416/ar5416_reset.c projects/calloutng/sys/dev/ath/ath_hal/ar5416/ar5416_xmit.c projects/calloutng/sys/dev/ath/ath_rate/sample/sample.c projects/calloutng/sys/dev/ath/if_ath.c projects/calloutng/sys/dev/ath/if_ath_tx_ht.c projects/calloutng/sys/dev/ath/if_athvar.h projects/calloutng/sys/dev/ciss/ciss.c projects/calloutng/sys/dev/cpufreq/ichss.c projects/calloutng/sys/dev/cxgbe/adapter.h projects/calloutng/sys/dev/cxgbe/common/common.h projects/calloutng/sys/dev/cxgbe/common/t4_hw.c projects/calloutng/sys/dev/cxgbe/common/t4_msg.h projects/calloutng/sys/dev/cxgbe/firmware/t4fw_interface.h projects/calloutng/sys/dev/cxgbe/t4_main.c projects/calloutng/sys/dev/cxgbe/t4_sge.c projects/calloutng/sys/dev/fdt/fdt_common.h projects/calloutng/sys/dev/hwpmc/hwpmc_soft.c projects/calloutng/sys/dev/isp/isp.c projects/calloutng/sys/dev/isp/isp_freebsd.c projects/calloutng/sys/dev/mfi/mfi.c projects/calloutng/sys/dev/mfi/mfi_cam.c projects/calloutng/sys/dev/mfi/mfi_debug.c projects/calloutng/sys/dev/mfi/mfi_tbolt.c projects/calloutng/sys/dev/mfi/mfireg.h projects/calloutng/sys/dev/mfi/mfivar.h projects/calloutng/sys/dev/msk/if_msk.c projects/calloutng/sys/dev/mxge/if_mxge.c projects/calloutng/sys/dev/random/randomdev_soft.c projects/calloutng/sys/dev/sym/sym_hipd.c projects/calloutng/sys/dev/usb/usb_pf.c projects/calloutng/sys/dev/usb/usbdevs projects/calloutng/sys/fs/fuse/fuse_io.c projects/calloutng/sys/ia64/conf/GENERIC projects/calloutng/sys/ia64/ia64/pmap.c projects/calloutng/sys/ia64/include/vmparam.h projects/calloutng/sys/kern/kern_clock.c projects/calloutng/sys/kern/kern_clocksource.c projects/calloutng/sys/kern/kern_descrip.c projects/calloutng/sys/kern/sys_process.c projects/calloutng/sys/kern/vfs_bio.c projects/calloutng/sys/mips/adm5120/adm5120_machdep.c projects/calloutng/sys/mips/alchemy/alchemy_machdep.c projects/calloutng/sys/mips/beri/beri_machdep.c projects/calloutng/sys/mips/cavium/octeon_machdep.c projects/calloutng/sys/mips/gxemul/gxemul_machdep.c projects/calloutng/sys/mips/idt/idt_machdep.c projects/calloutng/sys/mips/malta/malta_machdep.c projects/calloutng/sys/mips/rt305x/rt305x_machdep.c projects/calloutng/sys/mips/sentry5/s5_machdep.c projects/calloutng/sys/mips/sibyte/sb_machdep.c projects/calloutng/sys/modules/cxgbe/firmware/Makefile projects/calloutng/sys/powerpc/aim/mmu_oea.c projects/calloutng/sys/powerpc/aim/mmu_oea64.c projects/calloutng/sys/powerpc/aim/moea64_native.c projects/calloutng/sys/powerpc/booke/pmap.c projects/calloutng/sys/powerpc/ps3/mmu_ps3.c projects/calloutng/sys/sparc64/sparc64/tsb.c projects/calloutng/sys/sys/vnode.h projects/calloutng/sys/ufs/ffs/ffs_alloc.c projects/calloutng/sys/ufs/ffs/ffs_softdep.c projects/calloutng/sys/ufs/ffs/ffs_vfsops.c projects/calloutng/sys/ufs/ufs/ufs_quota.c projects/calloutng/sys/vm/swap_pager.c projects/calloutng/sys/vm/uma.h projects/calloutng/sys/vm/uma_core.c projects/calloutng/sys/vm/uma_int.h projects/calloutng/sys/vm/vm_map.c projects/calloutng/sys/vm/vm_object.c projects/calloutng/sys/vm/vm_object.h projects/calloutng/sys/vm/vm_page.c projects/calloutng/sys/vm/vnode_pager.c projects/calloutng/tools/regression/bin/test/regress.sh projects/calloutng/usr.bin/systat/systat.1 projects/calloutng/usr.sbin/bhyve/pci_emul.h projects/calloutng/usr.sbin/bhyve/pci_virtio_block.c projects/calloutng/usr.sbin/bsdconfig/include/Makefile projects/calloutng/usr.sbin/bsdconfig/include/messages.subr projects/calloutng/usr.sbin/bsdconfig/networking/devices projects/calloutng/usr.sbin/bsdconfig/networking/include/Makefile projects/calloutng/usr.sbin/bsdconfig/networking/share/common.subr projects/calloutng/usr.sbin/bsdconfig/networking/share/device.subr projects/calloutng/usr.sbin/bsdconfig/networking/share/hostname.subr projects/calloutng/usr.sbin/bsdconfig/networking/share/ipaddr.subr projects/calloutng/usr.sbin/bsdconfig/networking/share/netmask.subr projects/calloutng/usr.sbin/bsdconfig/networking/share/resolv.subr projects/calloutng/usr.sbin/bsdconfig/networking/share/routing.subr projects/calloutng/usr.sbin/bsdconfig/share/Makefile projects/calloutng/usr.sbin/bsdconfig/share/common.subr projects/calloutng/usr.sbin/bsdconfig/share/script.subr projects/calloutng/usr.sbin/bsdconfig/share/strings.subr projects/calloutng/usr.sbin/bsdconfig/share/variable.subr projects/calloutng/usr.sbin/bsdconfig/startup/rcvar projects/calloutng/usr.sbin/rtadvd/rtadvd.8 projects/calloutng/usr.sbin/rtadvd/rtadvd.c Directory Properties: projects/calloutng/ (props changed) projects/calloutng/cddl/contrib/opensolaris/ (props changed) projects/calloutng/contrib/binutils/ (props changed) projects/calloutng/contrib/expat/ (props changed) projects/calloutng/contrib/expat/COPYING (props changed) projects/calloutng/contrib/expat/doc/style.css (props changed) projects/calloutng/contrib/expat/doc/xmlwf.1 (props changed) projects/calloutng/contrib/expat/examples/elements.c (props changed) projects/calloutng/contrib/expat/examples/outline.c (props changed) projects/calloutng/contrib/expat/lib/ascii.h (props changed) projects/calloutng/contrib/expat/lib/asciitab.h (props changed) projects/calloutng/contrib/expat/lib/iasciitab.h (props changed) projects/calloutng/contrib/expat/lib/internal.h (props changed) projects/calloutng/contrib/expat/lib/latin1tab.h (props changed) projects/calloutng/contrib/expat/lib/nametab.h (props changed) projects/calloutng/contrib/expat/lib/utf8tab.h (props changed) projects/calloutng/contrib/expat/lib/xmlrole.h (props changed) projects/calloutng/contrib/expat/lib/xmltok.h (props changed) projects/calloutng/contrib/expat/lib/xmltok_impl.h (props changed) projects/calloutng/contrib/expat/lib/xmltok_ns.c (props changed) projects/calloutng/contrib/expat/tests/chardata.c (props changed) projects/calloutng/contrib/expat/tests/chardata.h (props changed) projects/calloutng/contrib/expat/xmlwf/codepage.c (props changed) projects/calloutng/contrib/expat/xmlwf/codepage.h (props changed) projects/calloutng/contrib/expat/xmlwf/ct.c (props changed) projects/calloutng/contrib/expat/xmlwf/filemap.h (props changed) projects/calloutng/contrib/expat/xmlwf/unixfilemap.c (props changed) projects/calloutng/contrib/expat/xmlwf/win32filemap.c (props changed) projects/calloutng/contrib/expat/xmlwf/xmlfile.c (props changed) projects/calloutng/contrib/expat/xmlwf/xmlfile.h (props changed) projects/calloutng/contrib/expat/xmlwf/xmlmime.c (props changed) projects/calloutng/contrib/expat/xmlwf/xmlmime.h (props changed) projects/calloutng/contrib/expat/xmlwf/xmltchar.h (props changed) projects/calloutng/contrib/expat/xmlwf/xmlurl.h (props changed) projects/calloutng/contrib/expat/xmlwf/xmlwin32url.cxx (props changed) projects/calloutng/contrib/llvm/ (props changed) projects/calloutng/lib/libc/ (props changed) projects/calloutng/sbin/ (props changed) projects/calloutng/share/man/man4/ (props changed) projects/calloutng/sys/ (props changed) projects/calloutng/sys/boot/ (props changed) projects/calloutng/sys/cddl/contrib/opensolaris/ (props changed) projects/calloutng/sys/conf/ (props changed) projects/calloutng/usr.sbin/bhyve/ (props changed) projects/calloutng/usr.sbin/rtadvd/ (props changed) Modified: projects/calloutng/Makefile.inc1 ============================================================================== --- projects/calloutng/Makefile.inc1 Wed Feb 27 09:34:09 2013 (r247396) +++ projects/calloutng/Makefile.inc1 Wed Feb 27 11:42:28 2013 (r247397) @@ -1132,7 +1132,8 @@ _lex= usr.bin/lex .endif .if ${BOOTSTRAPPING} < 1000013 -_yacc= usr.bin/yacc +_yacc= lib/liby \ + usr.bin/yacc .endif .if ${BOOTSTRAPPING} < 1000026 Modified: projects/calloutng/bin/sh/eval.c ============================================================================== --- projects/calloutng/bin/sh/eval.c Wed Feb 27 09:34:09 2013 (r247396) +++ projects/calloutng/bin/sh/eval.c Wed Feb 27 11:42:28 2013 (r247397) @@ -301,7 +301,7 @@ evaltree(union node *n, int flags) } while (n != NULL); out: popstackmark(&smark); - if (pendingsigs) + if (pendingsig) dotrap(); if (eflag && exitstatus != 0 && do_etest) exitshell(exitstatus); Modified: projects/calloutng/bin/sh/jobs.c ============================================================================== --- projects/calloutng/bin/sh/jobs.c Wed Feb 27 09:34:09 2013 (r247396) +++ projects/calloutng/bin/sh/jobs.c Wed Feb 27 11:42:28 2013 (r247397) @@ -521,7 +521,7 @@ waitcmd(int argc, char **argv) } while (dowait(DOWAIT_BLOCK | DOWAIT_SIG, (struct job *)NULL) != -1); in_waitcmd--; - return 0; + return pendingsig + 128; } Modified: projects/calloutng/bin/sh/main.c ============================================================================== --- projects/calloutng/bin/sh/main.c Wed Feb 27 09:34:09 2013 (r247396) +++ projects/calloutng/bin/sh/main.c Wed Feb 27 11:42:28 2013 (r247397) @@ -196,7 +196,7 @@ cmdloop(int top) TRACE(("cmdloop(%d) called\n", top)); setstackmark(&smark); for (;;) { - if (pendingsigs) + if (pendingsig) dotrap(); inter = 0; if (iflag && top) { Modified: projects/calloutng/bin/sh/trap.c ============================================================================== --- projects/calloutng/bin/sh/trap.c Wed Feb 27 09:34:09 2013 (r247396) +++ projects/calloutng/bin/sh/trap.c Wed Feb 27 11:42:28 2013 (r247397) @@ -73,7 +73,7 @@ __FBSDID("$FreeBSD$"); MKINIT char sigmode[NSIG]; /* current value of signal */ -int pendingsigs; /* indicates some signal received */ +volatile sig_atomic_t pendingsig; /* indicates some signal received */ int in_dotrap; /* do we execute in a trap handler? */ static char *volatile trap[NSIG]; /* trap handler commands */ static volatile sig_atomic_t gotsig[NSIG]; @@ -388,22 +388,25 @@ onsig(int signo) return; } - if (signo != SIGCHLD || !ignore_sigchld) - gotsig[signo] = 1; - pendingsigs++; - /* If we are currently in a wait builtin, prepare to break it */ - if ((signo == SIGINT || signo == SIGQUIT) && in_waitcmd != 0) - breakwaitcmd = 1; - /* - * If a trap is set, not ignored and not the null command, we need - * to make sure traps are executed even when a child blocks signals. - */ - if (Tflag && - trap[signo] != NULL && - ! (trap[signo][0] == '\0') && - ! (trap[signo][0] == ':' && trap[signo][1] == '\0')) + if ((signo == SIGINT || signo == SIGQUIT) && in_waitcmd != 0) { breakwaitcmd = 1; + pendingsig = signo; + } + + if (trap[signo] != NULL && trap[signo][0] != '\0' && + (signo != SIGCHLD || !ignore_sigchld)) { + gotsig[signo] = 1; + pendingsig = signo; + + /* + * If a trap is set, not ignored and not the null command, we + * need to make sure traps are executed even when a child + * blocks signals. + */ + if (Tflag && !(trap[signo][0] == ':' && trap[signo][1] == '\0')) + breakwaitcmd = 1; + } #ifndef NO_HISTORY if (signo == SIGWINCH) @@ -424,7 +427,7 @@ dotrap(void) in_dotrap++; for (;;) { - pendingsigs = 0; + pendingsig = 0; for (i = 1; i < NSIG; i++) { if (gotsig[i]) { gotsig[i] = 0; Modified: projects/calloutng/bin/sh/trap.h ============================================================================== --- projects/calloutng/bin/sh/trap.h Wed Feb 27 09:34:09 2013 (r247396) +++ projects/calloutng/bin/sh/trap.h Wed Feb 27 11:42:28 2013 (r247397) @@ -33,7 +33,7 @@ * $FreeBSD$ */ -extern int pendingsigs; +extern volatile sig_atomic_t pendingsig; extern int in_dotrap; extern volatile sig_atomic_t gotwinch; Modified: projects/calloutng/bin/test/test.1 ============================================================================== --- projects/calloutng/bin/test/test.1 Wed Feb 27 09:34:09 2013 (r247396) +++ projects/calloutng/bin/test/test.1 Wed Feb 27 11:42:28 2013 (r247397) @@ -169,15 +169,65 @@ True if .Ar file exists and is a socket. .It Ar file1 Fl nt Ar file2 -True if +True if both +.Ar file1 +and +.Ar file2 +exist and +.Ar file1 +is newer than +.Ar file2 . +.It Ar file1 Fl nt Ns Ar X Ns Ar Y Ar file2 +True if both +.Ar file1 +and +.Ar file2 +exist and .Ar file1 -exists and is newer than +has a more recent last access time +.Pq Ar X Ns = Ns Cm a , +inode creation time +.Pq Ar X Ns = Ns Cm b , +change time +.Pq Ar X Ns = Ns Cm c , +or modification time +.Pq Ar X Ns = Ns Cm m +than the last access time +.Pq Ar Y Ns = Ns Cm a , +inode creation time +.Pq Ar Y Ns = Ns Cm b , +change time +.Pq Ar Y Ns = Ns Cm c , +or modification time +.Pq Ar Y Ns = Ns Cm m +of .Ar file2 . +Note that +.Ic -ntmm +is equivalent to +.Ic -nt . .It Ar file1 Fl ot Ar file2 -True if +True if both +.Ar file1 +and +.Ar file2 +exist and .Ar file1 -exists and is older than +is older than .Ar file2 . +Note that +.Ar file1 +.Ic -ot +.Ar file2 +is equivalent to +.Ar file2 +.Ic -nt +.Ar file1 +.It Ar file1 Fl ot Ns Ar X Ns Ar Y Ar file2 +Equivalent to +.Ar file2 +.Ic -nt Ns Ar Y Ns Ar X +.Ar file1 . .It Ar file1 Fl ef Ar file2 True if .Ar file1 Modified: projects/calloutng/bin/test/test.c ============================================================================== --- projects/calloutng/bin/test/test.c Wed Feb 27 09:34:09 2013 (r247396) +++ projects/calloutng/bin/test/test.c Wed Feb 27 11:42:28 2013 (r247397) @@ -63,7 +63,7 @@ error(const char *msg, ...) "-u"|"-g"|"-k"|"-s"|"-t"|"-z"|"-n"|"-o"|"-O"|"-G"|"-L"|"-S"; binary-operator ::= "="|"!="|"-eq"|"-ne"|"-ge"|"-gt"|"-le"|"-lt"| - "-nt"|"-ot"|"-ef"; + "-nt"|"-nt[abcm][abcm]"|"-ot"|"-ot[abcm][abcm])"|"-ef"; operand ::= */ @@ -85,8 +85,38 @@ enum token { FILSUID, FILSGID, FILSTCK, - FILNT, - FILOT, + FILNTAA, + FILNTAB, + FILNTAC, + FILNTAM, + FILNTBA, + FILNTBB, + FILNTBC, + FILNTBM, + FILNTCA, + FILNTCB, + FILNTCC, + FILNTCM, + FILNTMA, + FILNTMB, + FILNTMC, + FILNTMM, + FILOTAA, + FILOTAB, + FILOTAC, + FILOTAM, + FILOTBA, + FILOTBB, + FILOTBC, + FILOTBM, + FILOTCA, + FILOTCB, + FILOTCC, + FILOTCM, + FILOTMA, + FILOTMB, + FILOTMC, + FILOTMM, FILEQ, FILUID, FILGID, @@ -118,9 +148,16 @@ enum token_types { PAREN }; +enum time_types { + ATIME, + BTIME, + CTIME, + MTIME +}; + static struct t_op { - char op_text[4]; - short op_num, op_type; + char op_text[6]; + char op_num, op_type; } const ops [] = { {"-r", FILRD, UNOP}, {"-w", FILWR, UNOP}, @@ -154,8 +191,40 @@ static struct t_op { {"-gt", INTGT, BINOP}, {"-le", INTLE, BINOP}, {"-lt", INTLT, BINOP}, - {"-nt", FILNT, BINOP}, - {"-ot", FILOT, BINOP}, + {"-nt", FILNTMM, BINOP}, + {"-ntaa", FILNTAA, BINOP}, + {"-ntab", FILNTAB, BINOP}, + {"-ntac", FILNTAC, BINOP}, + {"-ntam", FILNTAM, BINOP}, + {"-ntba", FILNTBA, BINOP}, + {"-ntbb", FILNTBB, BINOP}, + {"-ntbc", FILNTBC, BINOP}, + {"-ntbm", FILNTBM, BINOP}, + {"-ntca", FILNTCA, BINOP}, + {"-ntcb", FILNTCB, BINOP}, + {"-ntcc", FILNTCC, BINOP}, + {"-ntcm", FILNTCM, BINOP}, + {"-ntma", FILNTMA, BINOP}, + {"-ntmb", FILNTMB, BINOP}, + {"-ntmc", FILNTMC, BINOP}, + {"-ntmm", FILNTMM, BINOP}, + {"-ot", FILOTMM, BINOP}, + {"-otaa", FILOTAA, BINOP}, + {"-otab", FILOTBB, BINOP}, + {"-otac", FILOTAC, BINOP}, + {"-otam", FILOTAM, BINOP}, + {"-otba", FILOTBA, BINOP}, + {"-otbb", FILOTBB, BINOP}, + {"-otbc", FILOTBC, BINOP}, + {"-otbm", FILOTBM, BINOP}, + {"-otca", FILOTCA, BINOP}, + {"-otcb", FILOTCB, BINOP}, + {"-otcc", FILOTCC, BINOP}, + {"-otcm", FILOTCM, BINOP}, + {"-otma", FILOTMA, BINOP}, + {"-otmb", FILOTMB, BINOP}, + {"-otmc", FILOTMC, BINOP}, + {"-otmm", FILOTMM, BINOP}, {"-ef", FILEQ, BINOP}, {"!", UNOT, BUNOP}, {"-a", BAND, BBINOP}, @@ -180,10 +249,10 @@ static int intcmp(const char *, const ch static int isunopoperand(void); static int islparenoperand(void); static int isrparenoperand(void); -static int newerf(const char *, const char *); +static int newerf(const char *, const char *, enum time_types, + enum time_types); static int nexpr(enum token); static int oexpr(enum token); -static int olderf(const char *, const char *); static int primary(enum token); static void syntax(const char *, const char *); static enum token t_lex(char *); @@ -353,10 +422,70 @@ binop(void) return intcmp(opnd1, opnd2) <= 0; case INTLT: return intcmp(opnd1, opnd2) < 0; - case FILNT: - return newerf (opnd1, opnd2); - case FILOT: - return olderf (opnd1, opnd2); + case FILNTAA: + return newerf(opnd1, opnd2, ATIME, ATIME); + case FILNTAB: + return newerf(opnd1, opnd2, ATIME, BTIME); + case FILNTAC: + return newerf(opnd1, opnd2, ATIME, CTIME); + case FILNTAM: + return newerf(opnd1, opnd2, ATIME, MTIME); + case FILNTBA: + return newerf(opnd1, opnd2, BTIME, ATIME); + case FILNTBB: + return newerf(opnd1, opnd2, BTIME, BTIME); + case FILNTBC: + return newerf(opnd1, opnd2, BTIME, CTIME); + case FILNTBM: + return newerf(opnd1, opnd2, BTIME, MTIME); + case FILNTCA: + return newerf(opnd1, opnd2, CTIME, ATIME); + case FILNTCB: + return newerf(opnd1, opnd2, CTIME, BTIME); + case FILNTCC: + return newerf(opnd1, opnd2, CTIME, CTIME); + case FILNTCM: + return newerf(opnd1, opnd2, CTIME, MTIME); + case FILNTMA: + return newerf(opnd1, opnd2, MTIME, ATIME); + case FILNTMB: + return newerf(opnd1, opnd2, MTIME, BTIME); + case FILNTMC: + return newerf(opnd1, opnd2, MTIME, CTIME); + case FILNTMM: + return newerf(opnd1, opnd2, MTIME, MTIME); + case FILOTAA: + return newerf(opnd2, opnd1, ATIME, ATIME); + case FILOTAB: + return newerf(opnd2, opnd1, BTIME, ATIME); + case FILOTAC: + return newerf(opnd2, opnd1, CTIME, ATIME); + case FILOTAM: + return newerf(opnd2, opnd1, MTIME, ATIME); + case FILOTBA: + return newerf(opnd2, opnd1, ATIME, BTIME); + case FILOTBB: + return newerf(opnd2, opnd1, BTIME, BTIME); + case FILOTBC: + return newerf(opnd2, opnd1, CTIME, BTIME); + case FILOTBM: + return newerf(opnd2, opnd1, MTIME, BTIME); + case FILOTCA: + return newerf(opnd2, opnd1, ATIME, CTIME); + case FILOTCB: + return newerf(opnd2, opnd1, BTIME, CTIME); + case FILOTCC: + return newerf(opnd2, opnd1, CTIME, CTIME); + case FILOTCM: + return newerf(opnd2, opnd1, MTIME, CTIME); + case FILOTMA: + return newerf(opnd2, opnd1, ATIME, MTIME); + case FILOTMB: + return newerf(opnd2, opnd1, BTIME, MTIME); + case FILOTMC: + return newerf(opnd2, opnd1, CTIME, MTIME); + case FILOTMM: + return newerf(opnd2, opnd1, MTIME, MTIME); case FILEQ: return equalf (opnd1, opnd2); default: @@ -570,25 +699,34 @@ intcmp (const char *s1, const char *s2) } static int -newerf (const char *f1, const char *f2) +newerf (const char *f1, const char *f2, enum time_types t1, enum time_types t2) { struct stat b1, b2; + struct timespec *ts1, *ts2; if (stat(f1, &b1) != 0 || stat(f2, &b2) != 0) return 0; - if (b1.st_mtim.tv_sec > b2.st_mtim.tv_sec) + switch (t1) { + case ATIME: ts1 = &b1.st_atim; break; + case BTIME: ts1 = &b1.st_birthtim; break; + case CTIME: ts1 = &b1.st_ctim; break; + default: ts1 = &b1.st_mtim; break; + } + + switch (t2) { + case ATIME: ts2 = &b2.st_atim; break; + case BTIME: ts2 = &b2.st_birthtim; break; + case CTIME: ts2 = &b2.st_ctim; break; + default: ts2 = &b2.st_mtim; break; + } + + if (ts1->tv_sec > ts2->tv_sec) return 1; - if (b1.st_mtim.tv_sec < b2.st_mtim.tv_sec) + if (ts1->tv_sec < ts2->tv_sec) return 0; - return (b1.st_mtim.tv_nsec > b2.st_mtim.tv_nsec); -} - -static int -olderf (const char *f1, const char *f2) -{ - return (newerf(f2, f1)); + return (ts1->tv_nsec > ts2->tv_nsec); } static int Modified: projects/calloutng/cddl/contrib/opensolaris/cmd/zinject/translate.c ============================================================================== --- projects/calloutng/cddl/contrib/opensolaris/cmd/zinject/translate.c Wed Feb 27 09:34:09 2013 (r247396) +++ projects/calloutng/cddl/contrib/opensolaris/cmd/zinject/translate.c Wed Feb 27 11:42:28 2013 (r247397) @@ -20,6 +20,7 @@ */ /* * Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2012 by Delphix. All rights reserved. */ #include @@ -455,6 +456,20 @@ translate_device(const char *pool, const &record->zi_guid) == 0); } + /* + * Device faults can take on three different forms: + * 1). delayed or hanging I/O + * 2). zfs label faults + * 3). generic disk faults + */ + if (record->zi_timer != 0) { + record->zi_cmd = ZINJECT_DELAY_IO; + } else if (label_type != TYPE_INVAL) { + record->zi_cmd = ZINJECT_LABEL_FAULT; + } else { + record->zi_cmd = ZINJECT_DEVICE_FAULT; + } + switch (label_type) { case TYPE_LABEL_UBERBLOCK: record->zi_start = offsetof(vdev_label_t, vl_uberblock[0]); Modified: projects/calloutng/cddl/contrib/opensolaris/cmd/zinject/zinject.c ============================================================================== --- projects/calloutng/cddl/contrib/opensolaris/cmd/zinject/zinject.c Wed Feb 27 09:34:09 2013 (r247396) +++ projects/calloutng/cddl/contrib/opensolaris/cmd/zinject/zinject.c Wed Feb 27 11:42:28 2013 (r247397) @@ -20,6 +20,7 @@ */ /* * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2012 by Delphix. All rights reserved. */ /* @@ -603,7 +604,7 @@ main(int argc, char **argv) } while ((c = getopt(argc, argv, - ":aA:b:d:f:Fg:qhIc:t:T:l:mr:s:e:uL:p:")) != -1) { + ":aA:b:d:D:f:Fg:qhIc:t:T:l:mr:s:e:uL:p:")) != -1) { switch (c) { case 'a': flags |= ZINJECT_FLUSH_ARC; @@ -629,6 +630,15 @@ main(int argc, char **argv) case 'd': device = optarg; break; + case 'D': + record.zi_timer = strtoull(optarg, &end, 10); + if (errno != 0 || *end != '\0') { + (void) fprintf(stderr, "invalid i/o delay " + "value: '%s'\n", optarg); + usage(); + return (1); + } + break; case 'e': if (strcasecmp(optarg, "io") == 0) { error = EIO; @@ -693,6 +703,7 @@ main(int argc, char **argv) case 'p': (void) strlcpy(record.zi_func, optarg, sizeof (record.zi_func)); + record.zi_cmd = ZINJECT_PANIC; break; case 'q': quiet = 1; @@ -766,13 +777,15 @@ main(int argc, char **argv) argc -= optind; argv += optind; + if (record.zi_duration != 0) + record.zi_cmd = ZINJECT_IGNORED_WRITES; + if (cancel != NULL) { /* * '-c' is invalid with any other options. */ if (raw != NULL || range != NULL || type != TYPE_INVAL || - level != 0 || record.zi_func[0] != '\0' || - record.zi_duration != 0) { + level != 0 || record.zi_cmd != ZINJECT_UNINITIALIZED) { (void) fprintf(stderr, "cancel (-c) incompatible with " "any other options\n"); usage(); @@ -804,8 +817,7 @@ main(int argc, char **argv) * for doing injection, so handle it separately here. */ if (raw != NULL || range != NULL || type != TYPE_INVAL || - level != 0 || record.zi_func[0] != '\0' || - record.zi_duration != 0) { + level != 0 || record.zi_cmd != ZINJECT_UNINITIALIZED) { (void) fprintf(stderr, "device (-d) incompatible with " "data error injection\n"); usage(); @@ -839,7 +851,7 @@ main(int argc, char **argv) } else if (raw != NULL) { if (range != NULL || type != TYPE_INVAL || level != 0 || - record.zi_func[0] != '\0' || record.zi_duration != 0) { + record.zi_cmd != ZINJECT_UNINITIALIZED) { (void) fprintf(stderr, "raw (-b) format with " "any other options\n"); usage(); @@ -862,13 +874,14 @@ main(int argc, char **argv) return (1); } + record.zi_cmd = ZINJECT_DATA_FAULT; if (translate_raw(raw, &record) != 0) return (1); if (!error) error = EIO; - } else if (record.zi_func[0] != '\0') { + } else if (record.zi_cmd == ZINJECT_PANIC) { if (raw != NULL || range != NULL || type != TYPE_INVAL || - level != 0 || device != NULL || record.zi_duration != 0) { + level != 0 || device != NULL) { (void) fprintf(stderr, "panic (-p) incompatible with " "other options\n"); usage(); @@ -886,7 +899,7 @@ main(int argc, char **argv) if (argv[1] != NULL) record.zi_type = atoi(argv[1]); dataset[0] = '\0'; - } else if (record.zi_duration != 0) { + } else if (record.zi_cmd == ZINJECT_IGNORED_WRITES) { if (nowrites == 0) { (void) fprintf(stderr, "-s or -g meaningless " "without -I (ignore writes)\n"); @@ -940,6 +953,7 @@ main(int argc, char **argv) return (1); } + record.zi_cmd = ZINJECT_DATA_FAULT; if (translate_record(type, argv[0], range, level, &record, pool, dataset) != 0) return (1); Modified: projects/calloutng/cddl/contrib/opensolaris/lib/libzpool/common/kernel.c ============================================================================== --- projects/calloutng/cddl/contrib/opensolaris/lib/libzpool/common/kernel.c Wed Feb 27 09:34:09 2013 (r247396) +++ projects/calloutng/cddl/contrib/opensolaris/lib/libzpool/common/kernel.c Wed Feb 27 11:42:28 2013 (r247397) @@ -45,6 +45,9 @@ int aok; uint64_t physmem; vnode_t *rootdir = (vnode_t *)0xabcd1234; char hw_serial[HW_HOSTID_LEN]; +#ifdef illumos +kmutex_t cpu_lock; +#endif struct utsname utsname = { "userland", "libzpool", "1", "1", "na" @@ -842,6 +845,28 @@ ddi_strtoull(const char *str, char **npt return (0); } +#ifdef illumos +/* ARGSUSED */ +cyclic_id_t +cyclic_add(cyc_handler_t *hdlr, cyc_time_t *when) +{ + return (1); +} + +/* ARGSUSED */ +void +cyclic_remove(cyclic_id_t id) +{ +} + +/* ARGSUSED */ +int +cyclic_reprogram(cyclic_id_t id, hrtime_t expiration) +{ + return (1); +} +#endif + /* * ========================================================================= * kernel emulation setup & teardown @@ -875,6 +900,10 @@ kernel_init(int mode) system_taskq_init(); +#ifdef illumos + mutex_init(&cpu_lock, NULL, MUTEX_DEFAULT, NULL); +#endif + spa_init(mode); } Modified: projects/calloutng/cddl/contrib/opensolaris/lib/libzpool/common/sys/zfs_context.h ============================================================================== --- projects/calloutng/cddl/contrib/opensolaris/lib/libzpool/common/sys/zfs_context.h Wed Feb 27 09:34:09 2013 (r247396) +++ projects/calloutng/cddl/contrib/opensolaris/lib/libzpool/common/sys/zfs_context.h Wed Feb 27 11:42:28 2013 (r247397) @@ -457,6 +457,9 @@ extern vnode_t *rootdir; extern void delay(clock_t ticks); +#define SEC_TO_TICK(sec) ((sec) * hz) +#define NSEC_TO_TICK(usec) ((usec) / (NANOSEC / hz)) + #define gethrestime_sec() time(NULL) #define gethrestime(t) \ do {\ @@ -624,6 +627,36 @@ typedef uint32_t idmap_rid_t; #define ERESTART (-1) #endif +#ifdef illumos +/* + * Cyclic information + */ +extern kmutex_t cpu_lock; + +typedef uintptr_t cyclic_id_t; +typedef uint16_t cyc_level_t; +typedef void (*cyc_func_t)(void *); + +#define CY_LOW_LEVEL 0 +#define CY_INFINITY INT64_MAX +#define CYCLIC_NONE ((cyclic_id_t)0) + +typedef struct cyc_time { + hrtime_t cyt_when; + hrtime_t cyt_interval; +} cyc_time_t; + +typedef struct cyc_handler { + cyc_func_t cyh_func; + void *cyh_arg; + cyc_level_t cyh_level; +} cyc_handler_t; + +extern cyclic_id_t cyclic_add(cyc_handler_t *, cyc_time_t *); +extern void cyclic_remove(cyclic_id_t); +extern int cyclic_reprogram(cyclic_id_t, hrtime_t); +#endif /* illumos */ + #ifdef __cplusplus } #endif Modified: projects/calloutng/contrib/binutils/gas/config/tc-arm.c ============================================================================== --- projects/calloutng/contrib/binutils/gas/config/tc-arm.c Wed Feb 27 09:34:09 2013 (r247396) +++ projects/calloutng/contrib/binutils/gas/config/tc-arm.c Wed Feb 27 11:42:28 2013 (r247397) @@ -3079,6 +3079,7 @@ s_arm_unwind_fnend (int ignored ATTRIBUT record_alignment (now_seg, 2); ptr = frag_more (8); + memset(ptr, 0, 8); where = frag_now_fix () - 8; /* Self relative offset of the function start. */ @@ -17350,6 +17351,7 @@ create_unwind_entry (int have_data) /* Allocate the table entry. */ ptr = frag_more ((size << 2) + 4); + memset(ptr, 0, (size << 2) + 4); where = frag_now_fix () - ((size << 2) + 4); switch (unwind.personality_index) Modified: projects/calloutng/contrib/expat/Changes ============================================================================== --- projects/calloutng/contrib/expat/Changes Wed Feb 27 09:34:09 2013 (r247396) +++ projects/calloutng/contrib/expat/Changes Wed Feb 27 11:42:28 2013 (r247397) @@ -1,5 +1,41 @@ +Release 2.1.0 Sat March 24 2012 + - Bug Fixes: + #1742315: Harmful XML_ParserCreateNS suggestion. + #2895533: CVE-2012-1147 - Resource leak in readfilemap.c. + #1785430: Expat build fails on linux-amd64 with gcc version>=4.1 -O3. + #1983953, 2517952, 2517962, 2649838: + Build modifications using autoreconf instead of buildconf.sh. + #2815947, #2884086: OBJEXT and EXEEXT support while building. + #1990430: CVE-2009-3720 - Parser crash with special UTF-8 sequences. + #2517938: xmlwf should return non-zero exit status if not well-formed. + #2517946: Wrong statement about XMLDecl in xmlwf.1 and xmlwf.sgml. + #2855609: Dangling positionPtr after error. + #2894085: CVE-2009-3560 - Buffer over-read and crash in big2_toUtf8(). + #2958794: CVE-2012-1148 - Memory leak in poolGrow. + #2990652: CMake support. + #3010819: UNEXPECTED_STATE with a trailing "%" in entity value. + #3206497: Unitialized memory returned from XML_Parse. + #3287849: make check fails on mingw-w64. + #3496608: CVE-2012-0876 - Hash DOS attack. + - Patches: + #1749198: pkg-config support. + #3010222: Fix for bug #3010819. + #3312568: CMake support. + #3446384: Report byte offsets for attr names and values. + - New Features / API changes: + Added new API member XML_SetHashSalt() that allows setting an intial + value (salt) for hash calculations. This is part of the fix for + bug #3496608 to randomize hash parameters. + When compiled with XML_ATTR_INFO defined, adds new API member + XML_GetAttributeInfo() that allows retrieving the byte + offsets for attribute names and values (patch #3446384). + Added CMake build system. + See bug #2990652 and patch #3312568. + Added run-benchmark target to Makefile.in - relies on testdata module + present in the same relative location as in the repository. + Release 2.0.1 Tue June 5 2007 - - Fixed bugs #1515266, 1515600: The character data handler's calling + - Fixed bugs #1515266, #1515600: The character data handler's calling of XML_StopParser() was not handled properly; if the parser was stopped and the handler set to NULL, the parser would segfault. - Fixed bug #1690883: Expat failed on EBCDIC systems as it assumed @@ -8,7 +44,7 @@ Release 2.0.1 Tue June 5 2007 - Fixed xmlwf bug #1513566: "out of memory" error on file size zero. - Fixed outline.c bug #1543233: missing a final XML_ParserFree() call. - Fixes and improvements for Windows platform: - bugs #1409451, #1476160, 1548182, 1602769, 1717322. + bugs #1409451, #1476160, #1548182, #1602769, #1717322. - Build fixes for various platforms: HP-UX, Tru64, Solaris 9: patch #1437840, bug #1196180. All Unix: #1554618 (refreshed config.sub/config.guess). @@ -30,8 +66,8 @@ Release 2.0.0 Wed Jan 11 2006 byte indexes and line/column numbers. - Updated to use libtool 1.5.22 (the most recent). - Added support for AmigaOS. - - Some mostly minor bug fixes. SF issues include: 1006708, - 1021776, 1023646, 1114960, 1156398, 1221160, 1271642. + - Some mostly minor bug fixes. SF issues include: #1006708, + #1021776, #1023646, #1114960, #1156398, #1221160, #1271642. Release 1.95.8 Fri Jul 23 2004 - Major new feature: suspend/resume. Handlers can now request @@ -40,8 +76,8 @@ Release 1.95.8 Fri Jul 23 2004 documentation for more details. - Some mostly minor bug fixes, but compilation should no longer generate warnings on most platforms. SF issues - include: 827319, 840173, 846309, 888329, 896188, 923913, - 928113, 961698, 985192. + include: #827319, #840173, #846309, #888329, #896188, #923913, + #928113, #961698, #985192. Release 1.95.7 Mon Oct 20 2003 - Fixed enum XML_Status issue (reported on SourceForge many @@ -54,19 +90,19 @@ Release 1.95.7 Mon Oct 20 2003 - Improved ability to build without the configure-generated expat_config.h header. This is useful for applications which embed Expat rather than linking in the library. - - Fixed a variety of bugs: see SF issues 458907, 609603, - 676844, 679754, 692878, 692964, 695401, 699323, 699487, - 820946. + - Fixed a variety of bugs: see SF issues #458907, #609603, + #676844, #679754, #692878, #692964, #695401, #699323, #699487, + #820946. - Improved hash table lookups. - Added more regression tests and improved documentation. Release 1.95.6 Tue Jan 28 2003 - Added XML_FreeContentModel(). - Added XML_MemMalloc(), XML_MemRealloc(), XML_MemFree(). - - Fixed a variety of bugs: see SF issues 615606, 616863, - 618199, 653180, 673791. + - Fixed a variety of bugs: see SF issues #615606, #616863, + #618199, #653180, #673791. - Enhanced the regression test suite. - - Man page improvements: includes SF issue 632146. + - Man page improvements: includes SF issue #632146. Release 1.95.5 Fri Sep 6 2002 - Added XML_UseForeignDTD() for improved SAX2 support. @@ -84,9 +120,9 @@ Release 1.95.5 Fri Sep 6 2002 - Reduced line-length for all source code and headers to be no longer than 80 characters, to help with AS/400 support. - Reduced memory copying during parsing (SF patch #600964). - - Fixed a variety of bugs: see SF issues 580793, 434664, - 483514, 580503, 581069, 584041, 584183, 584832, 585537, - 596555, 596678, 598352, 598944, 599715, 600479, 600971. + - Fixed a variety of bugs: see SF issues #580793, #434664, + #483514, #580503, #581069, #584041, #584183, #584832, #585537, + #596555, #596678, #598352, #598944, #599715, #600479, #600971. Release 1.95.4 Fri Jul 12 2002 - Added support for VMS, contributed by Craig Berry. See @@ -95,14 +131,14 @@ Release 1.95.4 Fri Jul 12 2002 contributed by Thomas Wegner and Daryle Walker. - Added Borland C++ Builder 5 / BCC 5.5 support, contributed by Patrick McConnell (SF patch #538032). - - Fixed a variety of bugs: see SF issues 441449, 563184, - 564342, 566334, 566901, 569461, 570263, 575168, 579196. + - Fixed a variety of bugs: see SF issues #441449, #563184, + #564342, #566334, #566901, #569461, #570263, #575168, #579196. - Made skippedEntityHandler conform to SAX2 (see source comment) - Re-implemented WFC: Entity Declared from XML 1.0 spec and added a new error "entity declared in parameter entity": - see SF bug report 569461 and SF patch 578161 + see SF bug report #569461 and SF patch #578161 - Re-implemented section 5.1 from XML 1.0 spec: - see SF bug report 570263 and SF patch 578161 + see SF bug report #570263 and SF patch #578161 Release 1.95.3 Mon Jun 3 2002 - Added a project to the MSVC workspace to create a wchar_t @@ -114,9 +150,9 @@ Release 1.95.3 Mon Jun 3 2002 - Made the XML_UNICODE builds usable (thanks, Karl!). - Allow xmlwf to read from standard input. - Install a man page for xmlwf on Unix systems. - - Fixed many bugs; see SF bug reports 231864, 461380, 464837, - 466885, 469226, 477667, 484419, 487840, 494749, 496505, - 547350. Other bugs which we can't test as easily may also + - Fixed many bugs; see SF bug reports #231864, #461380, #464837, + #466885, #469226, #477667, #484419, #487840, #494749, #496505, + #547350. Other bugs which we can't test as easily may also have been fixed, especially in the area of build support. Release 1.95.2 Fri Jul 27 2001 Copied: projects/calloutng/contrib/expat/FREEBSD-Xlist (from r247396, head/contrib/expat/FREEBSD-Xlist) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/calloutng/contrib/expat/FREEBSD-Xlist Wed Feb 27 11:42:28 2013 (r247397, copy of r247396, head/contrib/expat/FREEBSD-Xlist) @@ -0,0 +1,19 @@ +# $FreeBSD$ +*.MPW +*.cmake +*.def +*.dsp +*.dsw +*.m4 +*.pc.in +*config.h +CMake* +Configure* +amiga +bcb5 +configure +conftools +doc/valid-xhtml10.png +m4 +vms +win32 Modified: projects/calloutng/contrib/expat/MANIFEST ============================================================================== --- projects/calloutng/contrib/expat/MANIFEST Wed Feb 27 09:34:09 2013 (r247396) +++ projects/calloutng/contrib/expat/MANIFEST Wed Feb 27 11:42:28 2013 (r247397) @@ -1,5 +1,8 @@ -amiga/stdlib.c amiga/launch.c +amiga/expat_68k.c +amiga/expat_68k.h +amiga/expat_68k_handler_stubs.c +amiga/expat_base.h amiga/expat_vectors.c amiga/expat_lib.c amiga/expat.xml @@ -42,25 +45,35 @@ doc/style.css doc/valid-xhtml10.png doc/xmlwf.1 doc/xmlwf.sgml +CMakeLists.txt +CMake.README COPYING Changes +ConfigureChecks.cmake MANIFEST Makefile.in README configure configure.in expat_config.h.in +expat_config.h.cmake +expat.pc.in expat.dsw +aclocal.m4 conftools/PrintPath conftools/ac_c_bigendian_cross.m4 -conftools/config.guess -conftools/config.sub conftools/expat.m4 conftools/get-version.sh +conftools/mkinstalldirs +conftools/config.guess +conftools/config.sub conftools/install-sh -conftools/libtool.m4 conftools/ltmain.sh -conftools/mkinstalldirs +m4/libtool.m4 +m4/ltversion.m4 +m4/ltoptions.m4 +m4/ltsugar.m4 +m4/lt~obsolete.m4 examples/elements.c examples/elements.dsp examples/outline.c Modified: projects/calloutng/contrib/expat/Makefile.in ============================================================================== --- projects/calloutng/contrib/expat/Makefile.in Wed Feb 27 09:34:09 2013 (r247396) +++ projects/calloutng/contrib/expat/Makefile.in Wed Feb 27 11:42:28 2013 (r247397) @@ -31,6 +31,7 @@ bindir = @bindir@ libdir = @libdir@ includedir = @includedir@ man1dir = @mandir@/man1 +pkgconfigdir = $(libdir)/pkgconfig top_builddir = . @@ -46,18 +47,18 @@ LIBRARY = libexpat.la DESTDIR = $(INSTALL_ROOT) -default: buildlib xmlwf/xmlwf +default: buildlib xmlwf/xmlwf@EXEEXT@ -buildlib: $(LIBRARY) +buildlib: $(LIBRARY) expat.pc -all: $(LIBRARY) xmlwf/xmlwf examples/elements examples/outline +all: $(LIBRARY) expat.pc xmlwf/xmlwf@EXEEXT@ examples/elements examples/outline clean: - cd lib && rm -f $(LIBRARY) *.o *.lo && rm -rf .libs _libs - cd xmlwf && rm -f xmlwf *.o *.lo && rm -rf .libs _libs - cd examples && rm -f elements outline *.o *.lo && rm -rf .libs _libs - cd tests && rm -rf .libs runtests runtests.o runtestspp runtestspp.o - cd tests && rm -f chardata.o minicheck.o + cd lib && rm -f $(LIBRARY) *.@OBJEXT@ *.lo && rm -rf .libs _libs + cd xmlwf && rm -f xmlwf *.@OBJEXT@ *.lo && rm -rf .libs _libs + cd examples && rm -f elements outline *.@OBJEXT@ *.lo && rm -rf .libs _libs + cd tests && rm -rf .libs runtests runtests.@OBJEXT@ runtestspp runtestspp.@OBJEXT@ + cd tests && rm -f chardata.@OBJEXT@ minicheck.@OBJEXT@ rm -rf .libs libexpat.la rm -f examples/core tests/core xmlwf/core @@ -65,34 +66,37 @@ clobber: clean distclean: clean rm -f expat_config.h config.status config.log config.cache libtool - rm -f Makefile + rm -f Makefile expat.pc extraclean: distclean rm -f expat_config.h.in configure - rm -f conftools/ltconfig conftools/ltmain.sh conftools/libtool.m4 + rm -f aclocal.m4 m4/* + rm -f conftools/ltmain.sh conftools/install-sh conftools/config.guess conftools/config.sub check: tests/runtests tests/runtestspp tests/runtests tests/runtestspp -install: xmlwf/xmlwf installlib +install: xmlwf/xmlwf@EXEEXT@ installlib $(mkinstalldirs) $(DESTDIR)$(bindir) $(DESTDIR)$(man1dir) - $(LIBTOOL) --mode=install $(INSTALL_PROGRAM) xmlwf/xmlwf $(DESTDIR)$(bindir)/xmlwf + $(LIBTOOL) --mode=install $(INSTALL_PROGRAM) xmlwf/xmlwf@EXEEXT@ $(DESTDIR)$(bindir)/xmlwf $(INSTALL_DATA) $(MANFILE) $(DESTDIR)$(man1dir) -installlib: $(LIBRARY) $(APIHEADER) - $(mkinstalldirs) $(DESTDIR)$(libdir) $(DESTDIR)$(includedir) +installlib: $(LIBRARY) $(APIHEADER) expat.pc + $(mkinstalldirs) $(DESTDIR)$(libdir) $(DESTDIR)$(includedir) $(DESTDIR)$(pkgconfigdir) $(LIBTOOL) --mode=install $(INSTALL) $(LIBRARY) $(DESTDIR)$(libdir)/$(LIBRARY) for FN in $(APIHEADER) ; do $(INSTALL_DATA) $$FN $(DESTDIR)$(includedir) ; done + $(INSTALL_DATA) expat.pc $(DESTDIR)$(pkgconfigdir)/expat.pc uninstall: uninstalllib - $(LIBTOOL) --mode=uninstall rm -f $(DESTDIR)$(bindir)/xmlwf + $(LIBTOOL) --mode=uninstall rm -f $(DESTDIR)$(bindir)/xmlwf@EXEEXT@ rm -f $(DESTDIR)$(man1dir)/xmlwf.1 uninstalllib: $(LIBTOOL) --mode=uninstall rm -f $(DESTDIR)$(libdir)/$(LIBRARY) rm -f $(DESTDIR)$(includedir)/expat.h rm -f $(DESTDIR)$(includedir)/expat_external.h + rm -f $(DESTDIR)$(pkgconfigdir)/expat.pc *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-projects@FreeBSD.ORG Wed Feb 27 19:49:15 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 7DFBF4B8; Wed, 27 Feb 2013 19:49:15 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 59F80A65; Wed, 27 Feb 2013 19:49:15 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r1RJnFm4079831; Wed, 27 Feb 2013 19:49:15 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r1RJnFle079830; Wed, 27 Feb 2013 19:49:15 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201302271949.r1RJnFle079830@svn.freebsd.org> From: Alexander Motin Date: Wed, 27 Feb 2013 19:49:15 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247410 - projects/calloutng/sys/kern X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 27 Feb 2013 19:49:15 -0000 Author: mav Date: Wed Feb 27 19:49:14 2013 New Revision: 247410 URL: http://svnweb.freebsd.org/changeset/base/247410 Log: Remove some comparisons by using INT64_MAX instead of -1 for unset times. Modified: projects/calloutng/sys/kern/kern_clocksource.c Modified: projects/calloutng/sys/kern/kern_clocksource.c ============================================================================== --- projects/calloutng/sys/kern/kern_clocksource.c Wed Feb 27 19:38:33 2013 (r247409) +++ projects/calloutng/sys/kern/kern_clocksource.c Wed Feb 27 19:49:14 2013 (r247410) @@ -221,16 +221,14 @@ handleevents(sbintime_t now, int fake) } } else state->nextprof = state->nextstat; - if (now >= state->nextcallopt && state->nextcallopt != -1) { - state->nextcall = -1; - state->nextcallopt = -1; + if (now >= state->nextcallopt) { + state->nextcall = state->nextcallopt = INT64_MAX; callout_process(now); } #ifdef KDTRACE_HOOKS - if (fake == 0 && cyclic_clock_func != NULL && - state->nextcyc != -1 && now >= state->nextcyc) { - state->nextcyc = -1; + if (fake == 0 && now >= state->nextcyc && cyclic_clock_func != NULL) { + state->nextcyc = INT64_MAX; (*cyclic_clock_func)(frame); } #endif @@ -271,7 +269,7 @@ getnextcpuevent(int idle) event += tick_sbt * (hardfreq - 1); } /* Handle callout events. */ - if (state->nextcall != -1 && event > state->nextcall) + if (event > state->nextcall) event = state->nextcall; if (!idle) { /* If CPU is active - handle other types of events. */ if (event > state->nextstat) @@ -280,7 +278,7 @@ getnextcpuevent(int idle) event = state->nextprof; } #ifdef KDTRACE_HOOKS - if (state->nextcyc != -1 && event > state->nextcyc) + if (event > state->nextcyc) event = state->nextcyc; #endif return (event); @@ -603,10 +601,10 @@ cpu_initclocks_bsp(void) state = DPCPU_ID_PTR(cpu, timerstate); mtx_init(&state->et_hw_mtx, "et_hw_mtx", NULL, MTX_SPIN); #ifdef KDTRACE_HOOKS - state->nextcyc = -1; + state->nextcyc = INT64_MAX; #endif - state->nextcall = -1; - state->nextcallopt = -1; + state->nextcall = INT64_MAX; + state->nextcallopt = INT64_MAX; } periodic = want_periodic; /* Grab requested timer or the best of present. */ @@ -831,11 +829,11 @@ clocksource_cyc_set(const struct bintime return; } state->nextcyc = t; - if (state->nextcyc >= state->nextevent) { + if (t >= state->nextevent) { ET_HW_UNLOCK(state); return; } - state->nextevent = state->nextcyc; + state->nextevent = t; if (!periodic) loadtimer(now, 0); ET_HW_UNLOCK(state); @@ -865,17 +863,17 @@ cpu_new_callout(int cpu, sbintime_t bt, * and scheduling. */ state->nextcallopt = bt_opt; - if (state->nextcall != -1 && bt >= state->nextcall) { + if (bt >= state->nextcall) { ET_HW_UNLOCK(state); return; } state->nextcall = bt; - /* If there is some some other event set earlier -- do nothing. */ - if (state->nextcall >= state->nextevent) { + /* If there is some other event set earlier -- do nothing. */ + if (bt >= state->nextevent) { ET_HW_UNLOCK(state); return; } - state->nextevent = state->nextcall; + state->nextevent = bt; /* If timer is periodic -- there is nothing to reprogram. */ if (periodic) { ET_HW_UNLOCK(state); From owner-svn-src-projects@FreeBSD.ORG Wed Feb 27 20:20:22 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 473D98E1; Wed, 27 Feb 2013 20:20:22 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 37269D21; Wed, 27 Feb 2013 20:20:22 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r1RKKLPC089978; Wed, 27 Feb 2013 20:20:21 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r1RKKLPD089977; Wed, 27 Feb 2013 20:20:21 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201302272020.r1RKKLPD089977@svn.freebsd.org> From: Alexander Motin Date: Wed, 27 Feb 2013 20:20:21 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247418 - projects/calloutng/sys/kern X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 27 Feb 2013 20:20:22 -0000 Author: mav Date: Wed Feb 27 20:20:21 2013 New Revision: 247418 URL: http://svnweb.freebsd.org/changeset/base/247418 Log: Use INT64_MAX for unset cc_firstevent to remove extra comparison. Modified: projects/calloutng/sys/kern/kern_timeout.c Modified: projects/calloutng/sys/kern/kern_timeout.c ============================================================================== --- projects/calloutng/sys/kern/kern_timeout.c Wed Feb 27 20:16:30 2013 (r247417) +++ projects/calloutng/sys/kern/kern_timeout.c Wed Feb 27 20:20:21 2013 (r247418) @@ -128,7 +128,7 @@ struct cc_exec { }; /* - * There is one struct callou_cpu per cpu, holding all relevant + * There is one struct callout_cpu per cpu, holding all relevant * state for the callout processing thread on the individual CPU. */ struct callout_cpu { @@ -277,6 +277,7 @@ callout_cpu_init(struct callout_cpu *cc) TAILQ_INIT(&cc->cc_callwheel[i]); } TAILQ_INIT(&cc->cc_expireq); + cc->cc_firstevent = INT64_MAX; for (i = 0; i < 2; i++) cc_cme_cleanup(cc, i); if (cc->cc_callout == NULL) @@ -560,7 +561,7 @@ callout_cc_add(struct callout *c, struct * that has been inserted, but only if really required. */ sbt = c->c_time + c->c_precision; - if (sbt < cc->cc_firstevent || cc->cc_firstevent == 0) { + if (sbt < cc->cc_firstevent) { cc->cc_firstevent = sbt; cpu_new_callout(cpu, sbt, c->c_time); } From owner-svn-src-projects@FreeBSD.ORG Wed Feb 27 20:54:46 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 488A994; Wed, 27 Feb 2013 20:54:46 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 3A8C2EAA; Wed, 27 Feb 2013 20:54:46 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r1RKskB2000871; Wed, 27 Feb 2013 20:54:46 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r1RKsk3X000870; Wed, 27 Feb 2013 20:54:46 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201302272054.r1RKsk3X000870@svn.freebsd.org> From: Alexander Motin Date: Wed, 27 Feb 2013 20:54:46 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247419 - projects/calloutng/sys/kern X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 27 Feb 2013 20:54:46 -0000 Author: mav Date: Wed Feb 27 20:54:45 2013 New Revision: 247419 URL: http://svnweb.freebsd.org/changeset/base/247419 Log: Close the hypothetical race when new callout inserted into the callwheel bucket, that now executes its last callout in direct mode, and so dropped the lock, caching NULL as the next callout pointer. Modified: projects/calloutng/sys/kern/kern_timeout.c Modified: projects/calloutng/sys/kern/kern_timeout.c ============================================================================== --- projects/calloutng/sys/kern/kern_timeout.c Wed Feb 27 20:20:21 2013 (r247418) +++ projects/calloutng/sys/kern/kern_timeout.c Wed Feb 27 20:54:45 2013 (r247419) @@ -489,7 +489,6 @@ next: * Stop if we looked far enough into the future. */ } while (firstb <= lastb); - cc->cc_exec_next_dir = NULL; cc->cc_firstevent = last; #ifndef NO_EVENTTIMERS cpu_new_callout(curcpu, last, first); @@ -555,6 +554,8 @@ callout_cc_add(struct callout *c, struct c, (int)(c->c_precision >> 32), (u_int)(c->c_precision & 0xffffffff)); TAILQ_INSERT_TAIL(&cc->cc_callwheel[bucket], c, c_links.tqe); + if (cc->cc_exec_next_dir == NULL) + cc->cc_exec_next_dir = c; #ifndef NO_EVENTTIMERS /* * Inform the eventtimers(4) subsystem there's a new callout From owner-svn-src-projects@FreeBSD.ORG Wed Feb 27 23:02:48 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 2DC5AFAB; Wed, 27 Feb 2013 23:02:48 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 07156922; Wed, 27 Feb 2013 23:02:48 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r1RN2l4u040116; Wed, 27 Feb 2013 23:02:47 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r1RN2lpf040115; Wed, 27 Feb 2013 23:02:47 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201302272302.r1RN2lpf040115@svn.freebsd.org> From: Alexander Motin Date: Wed, 27 Feb 2013 23:02:47 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247425 - projects/calloutng/sys/kern X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 27 Feb 2013 23:02:48 -0000 Author: mav Date: Wed Feb 27 23:02:47 2013 New Revision: 247425 URL: http://svnweb.freebsd.org/changeset/base/247425 Log: Removal of masking at r247319 require small additional polishing of math, otherwise it would explode in 49 days of runtime after u_int wrap. Modified: projects/calloutng/sys/kern/kern_timeout.c Modified: projects/calloutng/sys/kern/kern_timeout.c ============================================================================== --- projects/calloutng/sys/kern/kern_timeout.c Wed Feb 27 22:08:18 2013 (r247424) +++ projects/calloutng/sys/kern/kern_timeout.c Wed Feb 27 23:02:47 2013 (r247425) @@ -102,7 +102,7 @@ SYSCTL_INT(_debug, OID_AUTO, to_avg_mpca * TODO: * allocate more timeout table slots when table overflows. */ -int callwheelsize, callwheelmask; +u_int callwheelsize, callwheelmask; /* * The callout cpu exec entities represent informations necessary for @@ -369,18 +369,18 @@ SYSINIT(start_softclock, SI_SUB_SOFTINTR #define CC_HASH_SHIFT 10 -static inline int +static inline u_int callout_hash(sbintime_t sbt) { - - return (int)(sbt >> (32 - CC_HASH_SHIFT)); + + return (sbt >> (32 - CC_HASH_SHIFT)); } -static inline int +static inline u_int callout_get_bucket(sbintime_t sbt) { - return callout_hash(sbt) & callwheelmask; + return (callout_hash(sbt) & callwheelmask); } void @@ -422,10 +422,11 @@ callout_process(sbintime_t now) * Check if we wrapped around the entire wheel from the last scan. * In case, we need to scan entirely the wheel for pending callouts. */ - if (lastb - firstb >= callwheelsize) - lastb = firstb - 1; - if (nowb - firstb >= callwheelsize) - nowb = firstb - 1; + if (lastb - firstb >= callwheelsize) { + lastb = firstb + callwheelsize - 1; + if (nowb - firstb >= callwheelsize) + nowb = lastb; + } /* Iterate callwheel from firstb to nowb and then up to lastb. */ do { @@ -488,7 +489,7 @@ next: * some event we can't execute at now. * Stop if we looked far enough into the future. */ - } while (firstb <= lastb); + } while (((int)(firstb - lastb)) <= 0); cc->cc_firstevent = last; #ifndef NO_EVENTTIMERS cpu_new_callout(curcpu, last, first); From owner-svn-src-projects@FreeBSD.ORG Thu Feb 28 00:14:04 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 943D1FEE; Thu, 28 Feb 2013 00:14:04 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 716A9B6D; Thu, 28 Feb 2013 00:14:04 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r1S0E30i061630; Thu, 28 Feb 2013 00:14:03 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r1S0E3ln061629; Thu, 28 Feb 2013 00:14:03 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201302280014.r1S0E3ln061629@svn.freebsd.org> From: Alexander Motin Date: Thu, 28 Feb 2013 00:14:03 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247427 - projects/calloutng/sys/dev/acpica X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 28 Feb 2013 00:14:04 -0000 Author: mav Date: Thu Feb 28 00:14:03 2013 New Revision: 247427 URL: http://svnweb.freebsd.org/changeset/base/247427 Log: We don't need any precision here. Let it be fast and dirty shift then slow and excessively precise 64-bit division. Modified: projects/calloutng/sys/dev/acpica/acpi_cpu.c Modified: projects/calloutng/sys/dev/acpica/acpi_cpu.c ============================================================================== --- projects/calloutng/sys/dev/acpica/acpi_cpu.c Wed Feb 27 23:17:45 2013 (r247426) +++ projects/calloutng/sys/dev/acpica/acpi_cpu.c Thu Feb 28 00:14:03 2013 (r247427) @@ -981,8 +981,8 @@ acpi_cpu_idle(sbintime_t sbt) /* Find the lowest state that has small enough latency. */ us = sc->cpu_prev_sleep; - if (sbt >= 0 && us > sbt / SBT_1US) - us = sbt / SBT_1US; + if (sbt >= 0 && us > (sbt >> 12)) + us = (sbt >> 12); cx_next_idx = 0; if (cpu_disable_deep_sleep) i = min(sc->cpu_cx_lowest, sc->cpu_non_c3); From owner-svn-src-projects@FreeBSD.ORG Thu Feb 28 00:49:01 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 4A73D4C8; Thu, 28 Feb 2013 00:49:01 +0000 (UTC) (envelope-from benno@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 25AE5E00; Thu, 28 Feb 2013 00:49:01 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r1S0n1KR071756; Thu, 28 Feb 2013 00:49:01 GMT (envelope-from benno@svn.freebsd.org) Received: (from benno@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r1S0n1UZ071755; Thu, 28 Feb 2013 00:49:01 GMT (envelope-from benno@svn.freebsd.org) Message-Id: <201302280049.r1S0n1UZ071755@svn.freebsd.org> From: Benno Rice Date: Thu, 28 Feb 2013 00:49:01 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247435 - projects/uefi/sys/boot/i386/efi X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 28 Feb 2013 00:49:01 -0000 Author: benno Date: Thu Feb 28 00:49:00 2013 New Revision: 247435 URL: http://svnweb.freebsd.org/changeset/base/247435 Log: This file is no longer used. Deleted: projects/uefi/sys/boot/i386/efi/exec.c From owner-svn-src-projects@FreeBSD.ORG Thu Feb 28 00:50:37 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id AE187620; Thu, 28 Feb 2013 00:50:37 +0000 (UTC) (envelope-from benno@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 9D3F6E10; Thu, 28 Feb 2013 00:50:37 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r1S0obBF072440; Thu, 28 Feb 2013 00:50:37 GMT (envelope-from benno@svn.freebsd.org) Received: (from benno@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r1S0obNS072431; Thu, 28 Feb 2013 00:50:37 GMT (envelope-from benno@svn.freebsd.org) Message-Id: <201302280050.r1S0obNS072431@svn.freebsd.org> From: Benno Rice Date: Thu, 28 Feb 2013 00:50:37 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247436 - projects/uefi/sys/boot/i386/efi X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 28 Feb 2013 00:50:37 -0000 Author: benno Date: Thu Feb 28 00:50:37 2013 New Revision: 247436 URL: http://svnweb.freebsd.org/changeset/base/247436 Log: Remove exec.c from here too. Modified: projects/uefi/sys/boot/i386/efi/Makefile Modified: projects/uefi/sys/boot/i386/efi/Makefile ============================================================================== --- projects/uefi/sys/boot/i386/efi/Makefile Thu Feb 28 00:49:00 2013 (r247435) +++ projects/uefi/sys/boot/i386/efi/Makefile Thu Feb 28 00:50:37 2013 (r247436) @@ -10,7 +10,7 @@ PROG= loader.sym INTERNALPROG= # architecture-specific loader code -SRCS= main.c exec.c conf.c vers.c reloc.c elf64_freebsd.c +SRCS= main.c conf.c vers.c reloc.c elf64_freebsd.c SRCS+= x86_efi_copy.c bootinfo.c bootinfo64.c autoload.c devicename.c efimd.c SRCS+= efifb.c amd64_tramp.S start.S From owner-svn-src-projects@FreeBSD.ORG Thu Feb 28 00:52:44 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id D028877E; Thu, 28 Feb 2013 00:52:44 +0000 (UTC) (envelope-from benno@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id C385AE24; Thu, 28 Feb 2013 00:52:44 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r1S0qiYR073916; Thu, 28 Feb 2013 00:52:44 GMT (envelope-from benno@svn.freebsd.org) Received: (from benno@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r1S0qiFQ073915; Thu, 28 Feb 2013 00:52:44 GMT (envelope-from benno@svn.freebsd.org) Message-Id: <201302280052.r1S0qiFQ073915@svn.freebsd.org> From: Benno Rice Date: Thu, 28 Feb 2013 00:52:44 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247437 - projects/uefi/sys/boot/i386/efi X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 28 Feb 2013 00:52:44 -0000 Author: benno Date: Thu Feb 28 00:52:44 2013 New Revision: 247437 URL: http://svnweb.freebsd.org/changeset/base/247437 Log: We need an x86 link along with our machine link. Modified: projects/uefi/sys/boot/i386/efi/Makefile Modified: projects/uefi/sys/boot/i386/efi/Makefile ============================================================================== --- projects/uefi/sys/boot/i386/efi/Makefile Thu Feb 28 00:50:37 2013 (r247436) +++ projects/uefi/sys/boot/i386/efi/Makefile Thu Feb 28 00:52:44 2013 (r247437) @@ -86,10 +86,12 @@ LDADD= ${LIBFICL} ${LIBEFI} ${LIBSTAND} .include +beforedepend ${OBJS}: machine x86 + +CLEANFILES+= machine x86 -.if ${MACHINE_CPUARCH} == "amd64" -beforedepend ${OBJS}: machine -CLEANFILES+= machine machine: ln -sf ${.CURDIR}/../../../amd64/include machine -.endif + +x86: + ln -sf ${.CURDIR}/../../../x86/include x86 From owner-svn-src-projects@FreeBSD.ORG Thu Feb 28 01:04:24 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 71FFFBF4; Thu, 28 Feb 2013 01:04:24 +0000 (UTC) (envelope-from benno@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 65AC9EA5; Thu, 28 Feb 2013 01:04:24 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r1S14Oc6077435; Thu, 28 Feb 2013 01:04:24 GMT (envelope-from benno@svn.freebsd.org) Received: (from benno@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r1S14O76077434; Thu, 28 Feb 2013 01:04:24 GMT (envelope-from benno@svn.freebsd.org) Message-Id: <201302280104.r1S14O76077434@svn.freebsd.org> From: Benno Rice Date: Thu, 28 Feb 2013 01:04:24 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247439 - projects/uefi/sys/boot/i386/efi X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 28 Feb 2013 01:04:24 -0000 Author: benno Date: Thu Feb 28 01:04:23 2013 New Revision: 247439 URL: http://svnweb.freebsd.org/changeset/base/247439 Log: Fix whitespace. Modified: projects/uefi/sys/boot/i386/efi/Makefile Modified: projects/uefi/sys/boot/i386/efi/Makefile ============================================================================== --- projects/uefi/sys/boot/i386/efi/Makefile Thu Feb 28 01:00:32 2013 (r247438) +++ projects/uefi/sys/boot/i386/efi/Makefile Thu Feb 28 01:04:23 2013 (r247439) @@ -21,7 +21,6 @@ CFLAGS+= -I${.CURDIR}/../../efi/include/ CFLAGS+= -I${.CURDIR}/../../../contrib/dev/acpica/include CFLAGS+= -I${.CURDIR}/../../.. - .if ${MK_FORTH} != "no" BOOT_FORTH= yes CFLAGS+= -DBOOT_FORTH From owner-svn-src-projects@FreeBSD.ORG Thu Feb 28 01:05:49 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id BF0E9D26; Thu, 28 Feb 2013 01:05:49 +0000 (UTC) (envelope-from benno@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 8FFD1EB0; Thu, 28 Feb 2013 01:05:49 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r1S15nOl077718; Thu, 28 Feb 2013 01:05:49 GMT (envelope-from benno@svn.freebsd.org) Received: (from benno@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r1S15nRZ077714; Thu, 28 Feb 2013 01:05:49 GMT (envelope-from benno@svn.freebsd.org) Message-Id: <201302280105.r1S15nRZ077714@svn.freebsd.org> From: Benno Rice Date: Thu, 28 Feb 2013 01:05:49 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247440 - projects/uefi/sys/boot/i386/efi X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 28 Feb 2013 01:05:49 -0000 Author: benno Date: Thu Feb 28 01:05:48 2013 New Revision: 247440 URL: http://svnweb.freebsd.org/changeset/base/247440 Log: This file is no longer used. Deleted: projects/uefi/sys/boot/i386/efi/elf32_freebsd.c From owner-svn-src-projects@FreeBSD.ORG Thu Feb 28 04:43:47 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 3E44258E; Thu, 28 Feb 2013 04:43:47 +0000 (UTC) (envelope-from benno@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 305F797F; Thu, 28 Feb 2013 04:43:47 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r1S4hlQX045749; Thu, 28 Feb 2013 04:43:47 GMT (envelope-from benno@svn.freebsd.org) Received: (from benno@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r1S4hjOk045734; Thu, 28 Feb 2013 04:43:45 GMT (envelope-from benno@svn.freebsd.org) Message-Id: <201302280443.r1S4hjOk045734@svn.freebsd.org> From: Benno Rice Date: Thu, 28 Feb 2013 04:43:45 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247444 - projects/uefi/sys/boot/i386/efi X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 28 Feb 2013 04:43:47 -0000 Author: benno Date: Thu Feb 28 04:43:44 2013 New Revision: 247444 URL: http://svnweb.freebsd.org/changeset/base/247444 Log: Remove usage of i386_ prefixes and unneeded references to libi386. Added: projects/uefi/sys/boot/i386/efi/copy.c - copied unchanged from r247443, projects/uefi/sys/boot/i386/efi/x86_efi_copy.c projects/uefi/sys/boot/i386/efi/x86_efi.h - copied, changed from r247443, projects/uefi/sys/boot/i386/efi/x86_efi_copy.h Deleted: projects/uefi/sys/boot/i386/efi/x86_efi_copy.c projects/uefi/sys/boot/i386/efi/x86_efi_copy.h Modified: projects/uefi/sys/boot/i386/efi/Makefile projects/uefi/sys/boot/i386/efi/autoload.c projects/uefi/sys/boot/i386/efi/bootinfo.c projects/uefi/sys/boot/i386/efi/bootinfo64.c projects/uefi/sys/boot/i386/efi/devicename.c projects/uefi/sys/boot/i386/efi/elf64_freebsd.c projects/uefi/sys/boot/i386/efi/main.c Modified: projects/uefi/sys/boot/i386/efi/Makefile ============================================================================== --- projects/uefi/sys/boot/i386/efi/Makefile Thu Feb 28 04:16:47 2013 (r247443) +++ projects/uefi/sys/boot/i386/efi/Makefile Thu Feb 28 04:43:44 2013 (r247444) @@ -11,7 +11,7 @@ INTERNALPROG= # architecture-specific loader code SRCS= main.c conf.c vers.c reloc.c elf64_freebsd.c -SRCS+= x86_efi_copy.c bootinfo.c bootinfo64.c autoload.c devicename.c efimd.c +SRCS+= copy.c bootinfo.c bootinfo64.c autoload.c devicename.c efimd.c SRCS+= efifb.c amd64_tramp.S start.S CFLAGS+= -fPIC Modified: projects/uefi/sys/boot/i386/efi/autoload.c ============================================================================== --- projects/uefi/sys/boot/i386/efi/autoload.c Thu Feb 28 04:16:47 2013 (r247443) +++ projects/uefi/sys/boot/i386/efi/autoload.c Thu Feb 28 04:43:44 2013 (r247444) @@ -28,7 +28,7 @@ __FBSDID("$FreeBSD$"); int -i386_autoload(void) +x86_efi_autoload(void) { return (0); Modified: projects/uefi/sys/boot/i386/efi/bootinfo.c ============================================================================== --- projects/uefi/sys/boot/i386/efi/bootinfo.c Thu Feb 28 04:16:47 2013 (r247443) +++ projects/uefi/sys/boot/i386/efi/bootinfo.c Thu Feb 28 04:43:44 2013 (r247444) @@ -38,9 +38,7 @@ __FBSDID("$FreeBSD$"); #include #include "bootstrap.h" -#include "libi386.h" - -#include "x86_efi_copy.h" +#include "x86_efi.h" /* * Return a 'boothowto' value corresponding to the kernel arguments in Modified: projects/uefi/sys/boot/i386/efi/bootinfo64.c ============================================================================== --- projects/uefi/sys/boot/i386/efi/bootinfo64.c Thu Feb 28 04:16:47 2013 (r247443) +++ projects/uefi/sys/boot/i386/efi/bootinfo64.c Thu Feb 28 04:43:44 2013 (r247444) @@ -35,8 +35,7 @@ __FBSDID("$FreeBSD$"); #include #include #include "bootstrap.h" -#include "libi386.h" -#include "x86_efi_copy.h" +#include "x86_efi.h" /* * Copy module-related data into the load area, where it can be @@ -140,7 +139,7 @@ int bi_load64(char *args, vm_offset_t *modulep, vm_offset_t *kernendp) { struct preloaded_file *xp, *kfp; - struct i386_devdesc *rootdev; + struct devdesc *rootdev; struct file_metadata *md; vm_offset_t addr; u_int64_t kernend; @@ -157,14 +156,14 @@ bi_load64(char *args, vm_offset_t *modul * MI code before launching the kernel. */ rootdevname = getenv("rootdev"); - i386_getdev((void **)(&rootdev), rootdevname, NULL); + x86_efi_getdev((void **)(&rootdev), rootdevname, NULL); if (rootdev == NULL) { /* bad $rootdev/$currdev */ printf("can't determine root device\n"); return(EINVAL); } /* Try reading the /etc/fstab file to select the root device */ - getrootmount(i386_fmtdev((void *)rootdev)); + getrootmount(x86_efi_fmtdev((void *)rootdev)); /* find the last module in the chain */ addr = 0; Copied: projects/uefi/sys/boot/i386/efi/copy.c (from r247443, projects/uefi/sys/boot/i386/efi/x86_efi_copy.c) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/uefi/sys/boot/i386/efi/copy.c Thu Feb 28 04:43:44 2013 (r247444, copy of r247443, projects/uefi/sys/boot/i386/efi/x86_efi_copy.c) @@ -0,0 +1,102 @@ +/*- + * Copyright (c) 2013 The FreeBSD Foundation + * All rights reserved. + * + * This software was developed by Benno Rice under sponsorship from + * the FreeBSD Foundation. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include +__FBSDID("$FreeBSD$"); + +#include + +#include +#include + +#include +#include + +#define STAGE_PAGES 8192 /* 32MB */ + +EFI_PHYSICAL_ADDRESS staging; +int stage_offset_set = 0; +ssize_t stage_offset; + +int +x86_efi_copy_init(void) +{ + EFI_STATUS status; + + status = BS->AllocatePages(AllocateAnyPages, EfiLoaderData, + STAGE_PAGES, &staging); + if (EFI_ERROR(status)) { + printf("failed to allocate staging area: %d\n", + status & EFI_ERROR_MASK); + return (status); + } + + return (0); +} + +ssize_t +x86_efi_copyin(const void *src, vm_offset_t dest, const size_t len) +{ + + if (!stage_offset_set) { + stage_offset = (vm_offset_t)staging - dest; + stage_offset_set = 1; + } + + bcopy(src, (void *)(dest + stage_offset), len); + return (len); +} + +ssize_t +x86_efi_copyout(const vm_offset_t src, void *dest, const size_t len) +{ + + bcopy((void *)(src + stage_offset), dest, len); + return (len); +} + + +ssize_t +x86_efi_readin(const int fd, vm_offset_t dest, const size_t len) +{ + + return (read(fd, (void *)(dest + stage_offset), len)); +} + +void +x86_efi_copy_finish(void) +{ + uint64_t *src, *dst, *last; + + src = (uint64_t *)staging; + dst = (uint64_t *)(staging - stage_offset); + last = (uint64_t *)(staging + STAGE_PAGES * EFI_PAGE_SIZE); + + while (src < last) + *dst++ = *src++; +} Modified: projects/uefi/sys/boot/i386/efi/devicename.c ============================================================================== --- projects/uefi/sys/boot/i386/efi/devicename.c Thu Feb 28 04:16:47 2013 (r247443) +++ projects/uefi/sys/boot/i386/efi/devicename.c Thu Feb 28 04:43:44 2013 (r247444) @@ -36,7 +36,7 @@ __FBSDID("$FreeBSD$"); #include #include -static int i386_parsedev(struct devdesc **, const char *, const char **); +static int x86_efi_parsedev(struct devdesc **, const char *, const char **); /* * Point (dev) at an allocated device specifier for the device matching the @@ -44,7 +44,7 @@ static int i386_parsedev(struct devdesc * use that. If not, use the default device. */ int -i386_getdev(void **vdev, const char *devspec, const char **path) +x86_efi_getdev(void **vdev, const char *devspec, const char **path) { struct devdesc **dev = (struct devdesc **)vdev; int rv; @@ -54,14 +54,14 @@ i386_getdev(void **vdev, const char *dev * use the current device instead. */ if (devspec == NULL || *devspec == '/' || !strchr(devspec, ':')) { - rv = i386_parsedev(dev, getenv("currdev"), NULL); + rv = x86_efi_parsedev(dev, getenv("currdev"), NULL); if (rv == 0 && path != NULL) *path = devspec; return (rv); } /* Parse the device name off the beginning of the devspec. */ - return (i386_parsedev(dev, devspec, path)); + return (x86_efi_parsedev(dev, devspec, path)); } /* @@ -78,7 +78,7 @@ i386_getdev(void **vdev, const char *dev * fs: */ static int -i386_parsedev(struct devdesc **dev, const char *devspec, const char **path) +x86_efi_parsedev(struct devdesc **dev, const char *devspec, const char **path) { struct devdesc *idev; struct devsw *dv; @@ -132,7 +132,7 @@ i386_parsedev(struct devdesc **dev, cons } char * -i386_fmtdev(void *vdev) +x86_efi_fmtdev(void *vdev) { struct devdesc *dev = (struct devdesc *)vdev; static char buf[32]; /* XXX device length constant? */ @@ -154,12 +154,12 @@ i386_fmtdev(void *vdev) * Set currdev to suit the value being supplied in (value) */ int -i386_setcurrdev(struct env_var *ev, int flags, const void *value) +x86_efi_setcurrdev(struct env_var *ev, int flags, const void *value) { struct devdesc *ncurr; int rv; - rv = i386_parsedev(&ncurr, value, NULL); + rv = x86_efi_parsedev(&ncurr, value, NULL); if (rv != 0) return(rv); Modified: projects/uefi/sys/boot/i386/efi/elf64_freebsd.c ============================================================================== --- projects/uefi/sys/boot/i386/efi/elf64_freebsd.c Thu Feb 28 04:16:47 2013 (r247443) +++ projects/uefi/sys/boot/i386/efi/elf64_freebsd.c Thu Feb 28 04:43:44 2013 (r247444) @@ -48,7 +48,7 @@ __FBSDID("$FreeBSD$"); #include "actypes.h" #include "actbl.h" -#include "x86_efi_copy.h" +#include "x86_efi.h" static EFI_GUID acpi_guid = ACPI_TABLE_GUID; static EFI_GUID acpi20_guid = ACPI_20_TABLE_GUID; Modified: projects/uefi/sys/boot/i386/efi/main.c ============================================================================== --- projects/uefi/sys/boot/i386/efi/main.c Thu Feb 28 04:16:47 2013 (r247443) +++ projects/uefi/sys/boot/i386/efi/main.c Thu Feb 28 04:43:44 2013 (r247444) @@ -36,9 +36,7 @@ __FBSDID("$FreeBSD$"); #include #include -#include "../libi386/libi386.h" - -#include "x86_efi_copy.h" +#include "x86_efi.h" extern char bootprog_name[]; extern char bootprog_rev[]; @@ -113,15 +111,15 @@ main(int argc, CHAR16 *argv[]) */ BS->SetWatchdogTimer(0, 0, 0, NULL); - env_setenv("currdev", EV_VOLATILE, i386_fmtdev(&currdev), - i386_setcurrdev, env_nounset); - env_setenv("loaddev", EV_VOLATILE, i386_fmtdev(&currdev), env_noset, + env_setenv("currdev", EV_VOLATILE, x86_efi_fmtdev(&currdev), + x86_efi_setcurrdev, env_nounset); + env_setenv("loaddev", EV_VOLATILE, x86_efi_fmtdev(&currdev), env_noset, env_nounset); setenv("LINES", "24", 1); /* optional */ - archsw.arch_autoload = i386_autoload; - archsw.arch_getdev = i386_getdev; + archsw.arch_autoload = x86_efi_autoload; + archsw.arch_getdev = x86_efi_getdev; archsw.arch_copyin = x86_efi_copyin; archsw.arch_copyout = x86_efi_copyout; archsw.arch_readin = x86_efi_readin; Copied and modified: projects/uefi/sys/boot/i386/efi/x86_efi.h (from r247443, projects/uefi/sys/boot/i386/efi/x86_efi_copy.h) ============================================================================== --- projects/uefi/sys/boot/i386/efi/x86_efi_copy.h Thu Feb 28 04:16:47 2013 (r247443, copy source) +++ projects/uefi/sys/boot/i386/efi/x86_efi.h Thu Feb 28 04:43:44 2013 (r247444) @@ -31,6 +31,12 @@ #ifndef _X86_EFI_COPY_H_ #define _X86_EFI_COPY_H_ +int x86_efi_autoload(void); + +int x86_efi_getdev(void **vdev, const char *devspec, const char **path); +char *x86_efi_fmtdev(void *vdev); +int x86_efi_setcurrdev(struct env_var *ev, int flags, const void *value); + int x86_efi_copy_init(void); void x86_efi_copy_finish(void); From owner-svn-src-projects@FreeBSD.ORG Thu Feb 28 04:50:23 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 51E2E850; Thu, 28 Feb 2013 04:50:23 +0000 (UTC) (envelope-from benno@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 45B569BA; Thu, 28 Feb 2013 04:50:23 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r1S4oNfG048238; Thu, 28 Feb 2013 04:50:23 GMT (envelope-from benno@svn.freebsd.org) Received: (from benno@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r1S4oN63048237; Thu, 28 Feb 2013 04:50:23 GMT (envelope-from benno@svn.freebsd.org) Message-Id: <201302280450.r1S4oN63048237@svn.freebsd.org> From: Benno Rice Date: Thu, 28 Feb 2013 04:50:23 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247445 - projects/uefi/sys/boot/i386/efi X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 28 Feb 2013 04:50:23 -0000 Author: benno Date: Thu Feb 28 04:50:22 2013 New Revision: 247445 URL: http://svnweb.freebsd.org/changeset/base/247445 Log: Remove more libi386 along with some BTX. Modified: projects/uefi/sys/boot/i386/efi/elf64_freebsd.c Modified: projects/uefi/sys/boot/i386/efi/elf64_freebsd.c ============================================================================== --- projects/uefi/sys/boot/i386/efi/elf64_freebsd.c Thu Feb 28 04:43:44 2013 (r247444) +++ projects/uefi/sys/boot/i386/efi/elf64_freebsd.c Thu Feb 28 04:50:22 2013 (r247445) @@ -39,8 +39,6 @@ __FBSDID("$FreeBSD$"); #include #include "bootstrap.h" -#include "../libi386/libi386.h" -#include "../btx/lib/btxv86.h" #include "platform/acfreebsd.h" #include "acconfig.h" From owner-svn-src-projects@FreeBSD.ORG Thu Feb 28 05:02:56 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 86DF4CC5; Thu, 28 Feb 2013 05:02:56 +0000 (UTC) (envelope-from benno@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 5DE68A37; Thu, 28 Feb 2013 05:02:56 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r1S52uYc051761; Thu, 28 Feb 2013 05:02:56 GMT (envelope-from benno@svn.freebsd.org) Received: (from benno@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r1S52suB051740; Thu, 28 Feb 2013 05:02:54 GMT (envelope-from benno@svn.freebsd.org) Message-Id: <201302280502.r1S52suB051740@svn.freebsd.org> From: Benno Rice Date: Thu, 28 Feb 2013 05:02:54 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247446 - in projects/uefi/sys/boot: amd64 amd64/efi amd64/efi/amd64 i386/efi X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 28 Feb 2013 05:02:56 -0000 Author: benno Date: Thu Feb 28 05:02:53 2013 New Revision: 247446 URL: http://svnweb.freebsd.org/changeset/base/247446 Log: Move UEFI loader to amd64. Added: projects/uefi/sys/boot/amd64/ projects/uefi/sys/boot/amd64/Makefile projects/uefi/sys/boot/amd64/Makefile.inc projects/uefi/sys/boot/amd64/efi/ projects/uefi/sys/boot/amd64/efi/Makefile - copied unchanged from r247444, projects/uefi/sys/boot/i386/efi/Makefile projects/uefi/sys/boot/amd64/efi/amd64/ - copied from r247443, projects/uefi/sys/boot/i386/efi/amd64/ projects/uefi/sys/boot/amd64/efi/amd64_tramp.S - copied unchanged from r247443, projects/uefi/sys/boot/i386/efi/amd64_tramp.S projects/uefi/sys/boot/amd64/efi/autoload.c - copied unchanged from r247444, projects/uefi/sys/boot/i386/efi/autoload.c projects/uefi/sys/boot/amd64/efi/bootinfo.c - copied unchanged from r247444, projects/uefi/sys/boot/i386/efi/bootinfo.c projects/uefi/sys/boot/amd64/efi/bootinfo64.c - copied unchanged from r247444, projects/uefi/sys/boot/i386/efi/bootinfo64.c projects/uefi/sys/boot/amd64/efi/conf.c - copied unchanged from r247443, projects/uefi/sys/boot/i386/efi/conf.c projects/uefi/sys/boot/amd64/efi/copy.c - copied unchanged from r247444, projects/uefi/sys/boot/i386/efi/copy.c projects/uefi/sys/boot/amd64/efi/devicename.c - copied unchanged from r247444, projects/uefi/sys/boot/i386/efi/devicename.c projects/uefi/sys/boot/amd64/efi/efifb.c - copied unchanged from r247443, projects/uefi/sys/boot/i386/efi/efifb.c projects/uefi/sys/boot/amd64/efi/efifb.h - copied unchanged from r247443, projects/uefi/sys/boot/i386/efi/efifb.h projects/uefi/sys/boot/amd64/efi/efimd.c - copied unchanged from r247443, projects/uefi/sys/boot/i386/efi/efimd.c projects/uefi/sys/boot/amd64/efi/elf64_freebsd.c - copied unchanged from r247445, projects/uefi/sys/boot/i386/efi/elf64_freebsd.c projects/uefi/sys/boot/amd64/efi/ldscript.amd64 - copied unchanged from r247443, projects/uefi/sys/boot/i386/efi/ldscript.amd64 projects/uefi/sys/boot/amd64/efi/main.c - copied unchanged from r247444, projects/uefi/sys/boot/i386/efi/main.c projects/uefi/sys/boot/amd64/efi/reloc.c - copied unchanged from r247443, projects/uefi/sys/boot/i386/efi/reloc.c projects/uefi/sys/boot/amd64/efi/start.S - copied unchanged from r247443, projects/uefi/sys/boot/i386/efi/start.S projects/uefi/sys/boot/amd64/efi/version - copied unchanged from r247443, projects/uefi/sys/boot/i386/efi/version projects/uefi/sys/boot/amd64/efi/x86_efi.h - copied unchanged from r247444, projects/uefi/sys/boot/i386/efi/x86_efi.h Deleted: projects/uefi/sys/boot/i386/efi/ Added: projects/uefi/sys/boot/amd64/Makefile ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/uefi/sys/boot/amd64/Makefile Thu Feb 28 05:02:53 2013 (r247446) @@ -0,0 +1,7 @@ +# $FreeBSD$ + +.include + +SUBDIR= efi + +.include Added: projects/uefi/sys/boot/amd64/Makefile.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/uefi/sys/boot/amd64/Makefile.inc Thu Feb 28 05:02:53 2013 (r247446) @@ -0,0 +1,11 @@ +# Common defines for all of /sys/boot/i386/ +# +# $FreeBSD$ + +BINDIR?= /boot + +CFLAGS+= -ffreestanding -mno-mmx -mno-3dnow -mno-sse -mno-sse2 \ + -mno-sse3 -msoft-float +LDFLAGS+= -nostdlib + +.include "../Makefile.inc" Copied: projects/uefi/sys/boot/amd64/efi/Makefile (from r247444, projects/uefi/sys/boot/i386/efi/Makefile) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/uefi/sys/boot/amd64/efi/Makefile Thu Feb 28 05:02:53 2013 (r247446, copy of r247444, projects/uefi/sys/boot/i386/efi/Makefile) @@ -0,0 +1,96 @@ +# $FreeBSD$ + +NO_MAN= +WITHOUT_SSP= +BUILDING_EFI= + +.include + +PROG= loader.sym +INTERNALPROG= + +# architecture-specific loader code +SRCS= main.c conf.c vers.c reloc.c elf64_freebsd.c +SRCS+= copy.c bootinfo.c bootinfo64.c autoload.c devicename.c efimd.c +SRCS+= efifb.c amd64_tramp.S start.S + +CFLAGS+= -fPIC +CFLAGS+= -I. +CFLAGS+= -I${.CURDIR}/../../efi/include +CFLAGS+= -I${.CURDIR}/../../efi/include/${MACHINE_CPUARCH} +CFLAGS+= -I${.CURDIR}/../../../contrib/dev/acpica/include +CFLAGS+= -I${.CURDIR}/../../.. + +.if ${MK_FORTH} != "no" +BOOT_FORTH= yes +CFLAGS+= -DBOOT_FORTH +CFLAGS+= -I${.CURDIR}/../../ficl +CFLAGS+= -I${.CURDIR}/../../ficl/${MACHINE_CPUARCH} +.if ${MACHINE_CPUARCH} == "amd64" +LIBFICL= ${.OBJDIR}/../../ficl64/libficl.a +.else +LIBFICL= ${.OBJDIR}/../../ficl/libficl.a +.endif +.endif + +# Include bcache code. +HAVE_BCACHE= yes + +# Always add MI sources +.PATH: ${.CURDIR}/../../common +.include "${.CURDIR}/../../common/Makefile.inc" +CFLAGS+= -I${.CURDIR}/../../common + +FILES= loader.efi +FILESMODE_loader.efi= ${BINMODE} + +LDSCRIPT= ${.CURDIR}/ldscript.${MACHINE_CPUARCH} +LDFLAGS= -Wl,-T${LDSCRIPT} -Wl,-Bsymbolic -shared -Wl,-znocombreloc + +${PROG}: ${LDSCRIPT} + +CLEANFILES= vers.c loader.efi + +NEWVERSWHAT= "EFI loader" ${MACHINE_CPUARCH} + +vers.c: ${.CURDIR}/../../common/newvers.sh ${.CURDIR}/version + sh ${.CURDIR}/../../common/newvers.sh ${.CURDIR}/version ${NEWVERSWHAT} + +OBJCOPY?= objcopy +OBJDUMP?= objdump + +.if ${MACHINE_CPUARCH} == "amd64" +EFI_TARGET= efi-app-x86_64 +.else +EFI_TARGET= efi-app-ia32 +.endif + +loader.efi: loader.sym + if [ `${OBJDUMP} -t ${.ALLSRC} | fgrep '*UND*' | wc -l` != 0 ]; then \ + ${OBJDUMP} -t ${.ALLSRC} | fgrep '*UND*'; \ + exit 1; \ + fi + ${OBJCOPY} -j .text -j .sdata -j .data \ + -j .dynamic -j .dynsym -j .rel.dyn \ + -j .rela.dyn -j .reloc -j .eh_frame -j set_Xcommand_set \ + --target=${EFI_TARGET} ${.ALLSRC} ${.TARGET} + +LIBEFI= ${.OBJDIR}/../../efi/libefi/libefi.a +CFLAGS+= -I${.CURDIR}/../libi386 +CFLAGS+= -I${.CURDIR}/../btx/lib +CFLAGS+= -I${.CURDIR}/../../common + +DPADD= ${LIBFICL} ${LIBEFI} ${LIBSTAND} +LDADD= ${LIBFICL} ${LIBEFI} ${LIBSTAND} + +.include + +beforedepend ${OBJS}: machine x86 + +CLEANFILES+= machine x86 + +machine: + ln -sf ${.CURDIR}/../../../amd64/include machine + +x86: + ln -sf ${.CURDIR}/../../../x86/include x86 Copied: projects/uefi/sys/boot/amd64/efi/amd64_tramp.S (from r247443, projects/uefi/sys/boot/i386/efi/amd64_tramp.S) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/uefi/sys/boot/amd64/efi/amd64_tramp.S Thu Feb 28 05:02:53 2013 (r247446, copy of r247443, projects/uefi/sys/boot/i386/efi/amd64_tramp.S) @@ -0,0 +1,34 @@ +#include + + .text + .globl amd64_tramp + +/* + * void amd64_tramp(uint64_t stack, void *copy_finish, uint64_t kernend, + * uint64_t modulep, uint64_t pagetable, uint64_t entry) + */ +amd64_tramp: + cli /* Make sure we don't get interrupted. */ + movq %rdi,%rsp /* Switch to our temporary stack. */ + + movq %rdx,%r12 /* Stash the kernel values for later. */ + movq %rcx,%r13 + movq %r8,%r14 + movq %r9,%r15 + + call %rsi /* Call copy_finish so we're all ready to go. */ + + pushq %r12 /* Push kernend. */ + salq $32,%r13 /* Shift modulep and push it. */ + pushq %r13 + pushq %r15 /* Push the entry address. */ + movq %r14,%cr3 /* Switch page tables. */ + ret /* "Return" to kernel entry. */ + + ALIGN_TEXT +amd64_tramp_end: + + .data + .globl amd64_tramp_size +amd64_tramp_size: + .long amd64_tramp_end-amd64_tramp Copied: projects/uefi/sys/boot/amd64/efi/autoload.c (from r247444, projects/uefi/sys/boot/i386/efi/autoload.c) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/uefi/sys/boot/amd64/efi/autoload.c Thu Feb 28 05:02:53 2013 (r247446, copy of r247444, projects/uefi/sys/boot/i386/efi/autoload.c) @@ -0,0 +1,35 @@ +/*- + * Copyright (c) 2010 Rui Paulo + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR + * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES + * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF + * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include +__FBSDID("$FreeBSD$"); + +int +x86_efi_autoload(void) +{ + + return (0); +} Copied: projects/uefi/sys/boot/amd64/efi/bootinfo.c (from r247444, projects/uefi/sys/boot/i386/efi/bootinfo.c) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/uefi/sys/boot/amd64/efi/bootinfo.c Thu Feb 28 05:02:53 2013 (r247446, copy of r247444, projects/uefi/sys/boot/i386/efi/bootinfo.c) @@ -0,0 +1,142 @@ +/*- + * Copyright (c) 1998 Michael Smith + * Copyright (c) 2006 Marcel Moolenaar + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include +__FBSDID("$FreeBSD$"); + +#include +#include +#include +#include +#include + +#include +#include + +#include "bootstrap.h" +#include "x86_efi.h" + +/* + * Return a 'boothowto' value corresponding to the kernel arguments in + * (kargs) and any relevant environment variables. + */ +static struct +{ + const char *ev; + int mask; +} howto_names[] = { + { "boot_askname", RB_ASKNAME}, + { "boot_cdrom", RB_CDROM}, + { "boot_ddb", RB_KDB}, + { "boot_dfltroot", RB_DFLTROOT}, + { "boot_gdb", RB_GDB}, + { "boot_multicons", RB_MULTIPLE}, + { "boot_mute", RB_MUTE}, + { "boot_pause", RB_PAUSE}, + { "boot_serial", RB_SERIAL}, + { "boot_single", RB_SINGLE}, + { "boot_verbose", RB_VERBOSE}, + { NULL, 0} +}; + +static const char howto_switches[] = "aCdrgDmphsv"; +static int howto_masks[] = { + RB_ASKNAME, RB_CDROM, RB_KDB, RB_DFLTROOT, RB_GDB, RB_MULTIPLE, + RB_MUTE, RB_PAUSE, RB_SERIAL, RB_SINGLE, RB_VERBOSE +}; + +int +bi_getboothowto(char *kargs) +{ + const char *sw; + char *opts; + int howto, i; + + howto = 0; + + /* Get the boot options from the environment first. */ + for (i = 0; howto_names[i].ev != NULL; i++) { + if (getenv(howto_names[i].ev) != NULL) + howto |= howto_names[i].mask; + } + + /* Parse kargs */ + if (kargs == NULL) + return (howto); + + opts = strchr(kargs, '-'); + while (opts != NULL) { + while (*(++opts) != '\0') { + sw = strchr(howto_switches, *opts); + if (sw == NULL) + break; + howto |= howto_masks[sw - howto_switches]; + } + opts = strchr(opts, '-'); + } + + return (howto); +} + +/* + * Copy the environment into the load area starting at (addr). + * Each variable is formatted as =, with a single nul + * separating each variable, and a double nul terminating the environment. + */ +vm_offset_t +bi_copyenv(vm_offset_t start) +{ + struct env_var *ep; + vm_offset_t addr, last; + size_t len; + + addr = last = start; + + /* Traverse the environment. */ + for (ep = environ; ep != NULL; ep = ep->ev_next) { + len = strlen(ep->ev_name); + if (x86_efi_copyin(ep->ev_name, addr, len) != len) + break; + addr += len; + if (x86_efi_copyin("=", addr, 1) != 1) + break; + addr++; + if (ep->ev_value != NULL) { + len = strlen(ep->ev_value); + if (x86_efi_copyin(ep->ev_value, addr, len) != len) + break; + addr += len; + } + if (x86_efi_copyin("", addr, 1) != 1) + break; + last = ++addr; + } + + if (x86_efi_copyin("", last++, 1) != 1) + last = start; + return(last); +} Copied: projects/uefi/sys/boot/amd64/efi/bootinfo64.c (from r247444, projects/uefi/sys/boot/i386/efi/bootinfo64.c) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/uefi/sys/boot/amd64/efi/bootinfo64.c Thu Feb 28 05:02:53 2013 (r247446, copy of r247444, projects/uefi/sys/boot/i386/efi/bootinfo64.c) @@ -0,0 +1,209 @@ +/*- + * Copyright (c) 1998 Michael Smith + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include +__FBSDID("$FreeBSD$"); + +#include +#include +#include +#include +#include +#include +#include +#include "bootstrap.h" +#include "x86_efi.h" + +/* + * Copy module-related data into the load area, where it can be + * used as a directory for loaded modules. + * + * Module data is presented in a self-describing format. Each datum + * is preceded by a 32-bit identifier and a 32-bit size field. + * + * Currently, the following data are saved: + * + * MOD_NAME (variable) module name (string) + * MOD_TYPE (variable) module type (string) + * MOD_ARGS (variable) module parameters (string) + * MOD_ADDR sizeof(vm_offset_t) module load address + * MOD_SIZE sizeof(size_t) module size + * MOD_METADATA (variable) type-specific metadata + */ +#define COPY32(v, a, c) { \ + u_int32_t x = (v); \ + if (c) \ + x86_efi_copyin(&x, a, sizeof(x)); \ + a += sizeof(x); \ +} + +#define MOD_STR(t, a, s, c) { \ + COPY32(t, a, c); \ + COPY32(strlen(s) + 1, a, c); \ + if (c) \ + x86_efi_copyin(s, a, strlen(s) + 1); \ + a += roundup(strlen(s) + 1, sizeof(u_int64_t));\ +} + +#define MOD_NAME(a, s, c) MOD_STR(MODINFO_NAME, a, s, c) +#define MOD_TYPE(a, s, c) MOD_STR(MODINFO_TYPE, a, s, c) +#define MOD_ARGS(a, s, c) MOD_STR(MODINFO_ARGS, a, s, c) + +#define MOD_VAR(t, a, s, c) { \ + COPY32(t, a, c); \ + COPY32(sizeof(s), a, c); \ + if (c) \ + x86_efi_copyin(&s, a, sizeof(s)); \ + a += roundup(sizeof(s), sizeof(u_int64_t)); \ +} + +#define MOD_ADDR(a, s, c) MOD_VAR(MODINFO_ADDR, a, s, c) +#define MOD_SIZE(a, s, c) MOD_VAR(MODINFO_SIZE, a, s, c) + +#define MOD_METADATA(a, mm, c) { \ + COPY32(MODINFO_METADATA | mm->md_type, a, c); \ + COPY32(mm->md_size, a, c); \ + if (c) \ + x86_efi_copyin(mm->md_data, a, mm->md_size); \ + a += roundup(mm->md_size, sizeof(u_int64_t));\ +} + +#define MOD_END(a, c) { \ + COPY32(MODINFO_END, a, c); \ + COPY32(0, a, c); \ +} + +static vm_offset_t +bi_copymodules64(vm_offset_t addr) +{ + struct preloaded_file *fp; + struct file_metadata *md; + int c; + u_int64_t v; + + c = addr != 0; + /* start with the first module on the list, should be the kernel */ + for (fp = file_findfile(NULL, NULL); fp != NULL; fp = fp->f_next) { + + MOD_NAME(addr, fp->f_name, c); /* this field must come first */ + MOD_TYPE(addr, fp->f_type, c); + if (fp->f_args) + MOD_ARGS(addr, fp->f_args, c); + v = fp->f_addr; + MOD_ADDR(addr, v, c); + v = fp->f_size; + MOD_SIZE(addr, v, c); + for (md = fp->f_metadata; md != NULL; md = md->md_next) + if (!(md->md_type & MODINFOMD_NOCOPY)) + MOD_METADATA(addr, md, c); + } + MOD_END(addr, c); + return(addr); +} + +extern int ldr_bootinfo(struct preloaded_file *kfp); + +/* + * Load the information expected by an amd64 kernel. + * + * - The 'boothowto' argument is constructed + * - The 'bootdev' argument is constructed + * - The 'bootinfo' struct is constructed, and copied into the kernel space. + * - The kernel environment is copied into kernel space. + * - Module metadata are formatted and placed in kernel space. + */ +int +bi_load64(char *args, vm_offset_t *modulep, vm_offset_t *kernendp) +{ + struct preloaded_file *xp, *kfp; + struct devdesc *rootdev; + struct file_metadata *md; + vm_offset_t addr; + u_int64_t kernend; + u_int64_t envp; + vm_offset_t size; + char *rootdevname; + int howto; + + howto = bi_getboothowto(args); + + /* + * Allow the environment variable 'rootdev' to override the supplied device + * This should perhaps go to MI code and/or have $rootdev tested/set by + * MI code before launching the kernel. + */ + rootdevname = getenv("rootdev"); + x86_efi_getdev((void **)(&rootdev), rootdevname, NULL); + if (rootdev == NULL) { /* bad $rootdev/$currdev */ + printf("can't determine root device\n"); + return(EINVAL); + } + + /* Try reading the /etc/fstab file to select the root device */ + getrootmount(x86_efi_fmtdev((void *)rootdev)); + + /* find the last module in the chain */ + addr = 0; + for (xp = file_findfile(NULL, NULL); xp != NULL; xp = xp->f_next) { + if (addr < (xp->f_addr + xp->f_size)) + addr = xp->f_addr + xp->f_size; + } + /* pad to a page boundary */ + addr = roundup(addr, PAGE_SIZE); + + /* copy our environment */ + envp = addr; + addr = bi_copyenv(addr); + + /* pad to a page boundary */ + addr = roundup(addr, PAGE_SIZE); + + kfp = file_findfile(NULL, "elf kernel"); + if (kfp == NULL) + kfp = file_findfile(NULL, "elf64 kernel"); + if (kfp == NULL) + panic("can't find kernel file"); + kernend = 0; /* fill it in later */ + file_addmetadata(kfp, MODINFOMD_HOWTO, sizeof howto, &howto); + file_addmetadata(kfp, MODINFOMD_ENVP, sizeof envp, &envp); + file_addmetadata(kfp, MODINFOMD_KERNEND, sizeof kernend, &kernend); + ldr_bootinfo(kfp); + + /* Figure out the size and location of the metadata */ + *modulep = addr; + size = bi_copymodules64(0); + kernend = roundup(addr + size, PAGE_SIZE); + *kernendp = kernend; + + /* patch MODINFOMD_KERNEND */ + md = file_findmetadata(kfp, MODINFOMD_KERNEND); + bcopy(&kernend, md->md_data, sizeof kernend); + + /* copy module list and metadata */ + (void)bi_copymodules64(addr); + + return(0); +} Copied: projects/uefi/sys/boot/amd64/efi/conf.c (from r247443, projects/uefi/sys/boot/i386/efi/conf.c) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/uefi/sys/boot/amd64/efi/conf.c Thu Feb 28 05:02:53 2013 (r247446, copy of r247443, projects/uefi/sys/boot/i386/efi/conf.c) @@ -0,0 +1,69 @@ +/*- + * Copyright (c) 2006 Marcel Moolenaar + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR + * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES + * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF + * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include +__FBSDID("$FreeBSD$"); + +#include +#include +#include +#include + +struct devsw *devsw[] = { + &efipart_dev, + &efinet_dev, + NULL +}; + +struct fs_ops *file_system[] = { + &dosfs_fsops, + &ufs_fsops, + &cd9660_fsops, + &nfs_fsops, + &gzipfs_fsops, + NULL +}; + +struct netif_driver *netif_drivers[] = { + &efinetif, + NULL +}; + +extern struct file_format amd64_elf; +extern struct file_format amd64_elf_obj; + +struct file_format *file_formats[] = { + &amd64_elf, + &amd64_elf_obj, + NULL +}; + +extern struct console efi_console; + +struct console *consoles[] = { + &efi_console, + NULL +}; Copied: projects/uefi/sys/boot/amd64/efi/copy.c (from r247444, projects/uefi/sys/boot/i386/efi/copy.c) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/uefi/sys/boot/amd64/efi/copy.c Thu Feb 28 05:02:53 2013 (r247446, copy of r247444, projects/uefi/sys/boot/i386/efi/copy.c) @@ -0,0 +1,102 @@ +/*- + * Copyright (c) 2013 The FreeBSD Foundation + * All rights reserved. + * + * This software was developed by Benno Rice under sponsorship from + * the FreeBSD Foundation. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include +__FBSDID("$FreeBSD$"); + +#include + +#include +#include + +#include +#include + +#define STAGE_PAGES 8192 /* 32MB */ + +EFI_PHYSICAL_ADDRESS staging; +int stage_offset_set = 0; +ssize_t stage_offset; + +int +x86_efi_copy_init(void) +{ + EFI_STATUS status; + + status = BS->AllocatePages(AllocateAnyPages, EfiLoaderData, + STAGE_PAGES, &staging); + if (EFI_ERROR(status)) { + printf("failed to allocate staging area: %d\n", + status & EFI_ERROR_MASK); + return (status); + } + + return (0); +} + +ssize_t +x86_efi_copyin(const void *src, vm_offset_t dest, const size_t len) +{ + + if (!stage_offset_set) { + stage_offset = (vm_offset_t)staging - dest; + stage_offset_set = 1; + } + + bcopy(src, (void *)(dest + stage_offset), len); + return (len); +} + +ssize_t +x86_efi_copyout(const vm_offset_t src, void *dest, const size_t len) +{ + + bcopy((void *)(src + stage_offset), dest, len); + return (len); +} + + +ssize_t +x86_efi_readin(const int fd, vm_offset_t dest, const size_t len) +{ + + return (read(fd, (void *)(dest + stage_offset), len)); +} + +void +x86_efi_copy_finish(void) +{ + uint64_t *src, *dst, *last; + + src = (uint64_t *)staging; + dst = (uint64_t *)(staging - stage_offset); + last = (uint64_t *)(staging + STAGE_PAGES * EFI_PAGE_SIZE); + + while (src < last) + *dst++ = *src++; +} Copied: projects/uefi/sys/boot/amd64/efi/devicename.c (from r247444, projects/uefi/sys/boot/i386/efi/devicename.c) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/uefi/sys/boot/amd64/efi/devicename.c Thu Feb 28 05:02:53 2013 (r247446, copy of r247444, projects/uefi/sys/boot/i386/efi/devicename.c) @@ -0,0 +1,169 @@ +/*- + * Copyright (c) 1998 Michael Smith + * Copyright (c) 2006 Marcel Moolenaar + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include +__FBSDID("$FreeBSD$"); + +#include +#include +#include +#include "bootstrap.h" + +#include +#include + +static int x86_efi_parsedev(struct devdesc **, const char *, const char **); + +/* + * Point (dev) at an allocated device specifier for the device matching the + * path in (devspec). If it contains an explicit device specification, + * use that. If not, use the default device. + */ +int +x86_efi_getdev(void **vdev, const char *devspec, const char **path) +{ + struct devdesc **dev = (struct devdesc **)vdev; + int rv; + + /* + * If it looks like this is just a path and no device, then + * use the current device instead. + */ + if (devspec == NULL || *devspec == '/' || !strchr(devspec, ':')) { + rv = x86_efi_parsedev(dev, getenv("currdev"), NULL); + if (rv == 0 && path != NULL) + *path = devspec; + return (rv); + } + + /* Parse the device name off the beginning of the devspec. */ + return (x86_efi_parsedev(dev, devspec, path)); +} + +/* + * Point (dev) at an allocated device specifier matching the string version + * at the beginning of (devspec). Return a pointer to the remaining + * text in (path). + * + * In all cases, the beginning of (devspec) is compared to the names + * of known devices in the device switch, and then any following text + * is parsed according to the rules applied to the device type. + * + * For disk-type devices, the syntax is: + * + * fs: + */ +static int +x86_efi_parsedev(struct devdesc **dev, const char *devspec, const char **path) +{ + struct devdesc *idev; + struct devsw *dv; + char *cp; + const char *np; + int i, err; + + /* minimum length check */ + if (strlen(devspec) < 2) + return (EINVAL); + + /* look for a device that matches */ + for (i = 0; devsw[i] != NULL; i++) { + dv = devsw[i]; + if (!strncmp(devspec, dv->dv_name, strlen(dv->dv_name))) + break; + } + if (devsw[i] == NULL) + return (ENOENT); + + idev = malloc(sizeof(struct devdesc)); + if (idev == NULL) + return (ENOMEM); + + idev->d_dev = dv; + idev->d_type = dv->dv_type; + idev->d_unit = -1; + + err = 0; + np = devspec + strlen(dv->dv_name); + if (*np != '\0' && *np != ':') { + idev->d_unit = strtol(np, &cp, 0); + if (cp == np) { + idev->d_unit = -1; + free(idev); + return (EUNIT); + } + } + if (*cp != '\0' && *cp != ':') { + free(idev); + return (EINVAL); + } + + if (path != NULL) + *path = (*cp == 0) ? cp : cp + 1; + if (dev != NULL) + *dev = idev; + else + free(idev); + return (0); +} + +char * +x86_efi_fmtdev(void *vdev) +{ + struct devdesc *dev = (struct devdesc *)vdev; + static char buf[32]; /* XXX device length constant? */ + + switch(dev->d_type) { + case DEVT_NONE: + strcpy(buf, "(no device)"); + break; + + default: + sprintf(buf, "%s%d:", dev->d_dev->dv_name, dev->d_unit); + break; + } + + return(buf); +} + +/* + * Set currdev to suit the value being supplied in (value) + */ +int +x86_efi_setcurrdev(struct env_var *ev, int flags, const void *value) +{ + struct devdesc *ncurr; + int rv; + + rv = x86_efi_parsedev(&ncurr, value, NULL); + if (rv != 0) + return(rv); + + free(ncurr); + env_setenv(ev->ev_name, flags | EV_NOHOOK, value, NULL, NULL); + return (0); +} Copied: projects/uefi/sys/boot/amd64/efi/efifb.c (from r247443, projects/uefi/sys/boot/i386/efi/efifb.c) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/uefi/sys/boot/amd64/efi/efifb.c Thu Feb 28 05:02:53 2013 (r247446, copy of r247443, projects/uefi/sys/boot/i386/efi/efifb.c) @@ -0,0 +1,88 @@ +/*- + * Copyright (c) 2013 The FreeBSD Foundation + * All rights reserved. + * + * This software was developed by Benno Rice under sponsorship from + * the FreeBSD Foundation. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include +__FBSDID("$FreeBSD$"); + +#include + +#include +#include + +#include + +static EFI_GUID gop_guid = EFI_GRAPHICS_OUTPUT_PROTOCOL_GUID; + +void +efi_find_framebuffer(struct efi_header *efihdr) +{ + EFI_GRAPHICS_OUTPUT *gop; + EFI_STATUS status; + EFI_GRAPHICS_OUTPUT_PROTOCOL_MODE *mode; + EFI_GRAPHICS_OUTPUT_MODE_INFORMATION *info; + + status = BS->LocateProtocol(&gop_guid, NULL, (VOID **)&gop); + if (EFI_ERROR(status)) { + efihdr->fb.fb_present = 0; + return; + } + + mode = gop->Mode; + info = gop->Mode->Info; + + efihdr->fb.fb_present = 1; + efihdr->fb.fb_addr = mode->FrameBufferBase; + efihdr->fb.fb_size = mode->FrameBufferSize; + efihdr->fb.fb_height = info->VerticalResolution; + efihdr->fb.fb_width = info->HorizontalResolution; + efihdr->fb.fb_stride = info->PixelsPerScanLine; + + switch (info->PixelFormat) { + case PixelRedGreenBlueReserved8BitPerColor: + efihdr->fb.fb_mask_red = 0x000000ff; + efihdr->fb.fb_mask_green = 0x0000ff00; + efihdr->fb.fb_mask_blue = 0x00ff0000; + efihdr->fb.fb_mask_reserved = 0xff000000; + break; + case PixelBlueGreenRedReserved8BitPerColor: + efihdr->fb.fb_mask_red = 0x00ff0000; + efihdr->fb.fb_mask_green = 0x0000ff00; + efihdr->fb.fb_mask_blue = 0x000000ff; + efihdr->fb.fb_mask_reserved = 0xff000000; + break; + case PixelBitMask: + efihdr->fb.fb_mask_red = info->PixelInformation.RedMask; + efihdr->fb.fb_mask_green = info->PixelInformation.GreenMask; + efihdr->fb.fb_mask_blue = info->PixelInformation.BlueMask; + efihdr->fb.fb_mask_reserved = + info->PixelInformation.ReservedMask; + break; + default: + efihdr->fb.fb_present = 0; + } +} Copied: projects/uefi/sys/boot/amd64/efi/efifb.h (from r247443, projects/uefi/sys/boot/i386/efi/efifb.h) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/uefi/sys/boot/amd64/efi/efifb.h Thu Feb 28 05:02:53 2013 (r247446, copy of r247443, projects/uefi/sys/boot/i386/efi/efifb.h) @@ -0,0 +1,6 @@ +#ifndef _EFIFB_H_ +#define _EFIFB_H_ *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-projects@FreeBSD.ORG Thu Feb 28 05:18:17 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 39C72539; Thu, 28 Feb 2013 05:18:17 +0000 (UTC) (envelope-from benno@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 1DF8DAE7; Thu, 28 Feb 2013 05:18:17 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r1S5IGov055787; Thu, 28 Feb 2013 05:18:16 GMT (envelope-from benno@svn.freebsd.org) Received: (from benno@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r1S5IG4D055783; Thu, 28 Feb 2013 05:18:16 GMT (envelope-from benno@svn.freebsd.org) Message-Id: <201302280518.r1S5IG4D055783@svn.freebsd.org> From: Benno Rice Date: Thu, 28 Feb 2013 05:18:16 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247447 - projects/uefi/sys/boot/amd64/efi X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 28 Feb 2013 05:18:17 -0000 Author: benno Date: Thu Feb 28 05:18:15 2013 New Revision: 247447 URL: http://svnweb.freebsd.org/changeset/base/247447 Log: Rename efifb.* to framebuffer.*, making it a bit more obvious what it's for. Added: projects/uefi/sys/boot/amd64/efi/framebuffer.c - copied unchanged from r247446, projects/uefi/sys/boot/amd64/efi/efifb.c projects/uefi/sys/boot/amd64/efi/framebuffer.h - copied unchanged from r247446, projects/uefi/sys/boot/amd64/efi/efifb.h Deleted: projects/uefi/sys/boot/amd64/efi/efifb.c projects/uefi/sys/boot/amd64/efi/efifb.h Modified: projects/uefi/sys/boot/amd64/efi/Makefile projects/uefi/sys/boot/amd64/efi/efimd.c Modified: projects/uefi/sys/boot/amd64/efi/Makefile ============================================================================== --- projects/uefi/sys/boot/amd64/efi/Makefile Thu Feb 28 05:02:53 2013 (r247446) +++ projects/uefi/sys/boot/amd64/efi/Makefile Thu Feb 28 05:18:15 2013 (r247447) @@ -12,7 +12,7 @@ INTERNALPROG= # architecture-specific loader code SRCS= main.c conf.c vers.c reloc.c elf64_freebsd.c SRCS+= copy.c bootinfo.c bootinfo64.c autoload.c devicename.c efimd.c -SRCS+= efifb.c amd64_tramp.S start.S +SRCS+= framebuffer.c amd64_tramp.S start.S CFLAGS+= -fPIC CFLAGS+= -I. Modified: projects/uefi/sys/boot/amd64/efi/efimd.c ============================================================================== --- projects/uefi/sys/boot/amd64/efi/efimd.c Thu Feb 28 05:02:53 2013 (r247446) +++ projects/uefi/sys/boot/amd64/efi/efimd.c Thu Feb 28 05:18:15 2013 (r247447) @@ -36,7 +36,7 @@ __FBSDID("$FreeBSD$"); #include #include "bootstrap.h" -#include "efifb.h" +#include "framebuffer.h" static UINTN mapkey; Copied: projects/uefi/sys/boot/amd64/efi/framebuffer.c (from r247446, projects/uefi/sys/boot/amd64/efi/efifb.c) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/uefi/sys/boot/amd64/efi/framebuffer.c Thu Feb 28 05:18:15 2013 (r247447, copy of r247446, projects/uefi/sys/boot/amd64/efi/efifb.c) @@ -0,0 +1,88 @@ +/*- + * Copyright (c) 2013 The FreeBSD Foundation + * All rights reserved. + * + * This software was developed by Benno Rice under sponsorship from + * the FreeBSD Foundation. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include +__FBSDID("$FreeBSD$"); + +#include + +#include +#include + +#include + +static EFI_GUID gop_guid = EFI_GRAPHICS_OUTPUT_PROTOCOL_GUID; + +void +efi_find_framebuffer(struct efi_header *efihdr) +{ + EFI_GRAPHICS_OUTPUT *gop; + EFI_STATUS status; + EFI_GRAPHICS_OUTPUT_PROTOCOL_MODE *mode; + EFI_GRAPHICS_OUTPUT_MODE_INFORMATION *info; + + status = BS->LocateProtocol(&gop_guid, NULL, (VOID **)&gop); + if (EFI_ERROR(status)) { + efihdr->fb.fb_present = 0; + return; + } + + mode = gop->Mode; + info = gop->Mode->Info; + + efihdr->fb.fb_present = 1; + efihdr->fb.fb_addr = mode->FrameBufferBase; + efihdr->fb.fb_size = mode->FrameBufferSize; + efihdr->fb.fb_height = info->VerticalResolution; + efihdr->fb.fb_width = info->HorizontalResolution; + efihdr->fb.fb_stride = info->PixelsPerScanLine; + + switch (info->PixelFormat) { + case PixelRedGreenBlueReserved8BitPerColor: + efihdr->fb.fb_mask_red = 0x000000ff; + efihdr->fb.fb_mask_green = 0x0000ff00; + efihdr->fb.fb_mask_blue = 0x00ff0000; + efihdr->fb.fb_mask_reserved = 0xff000000; + break; + case PixelBlueGreenRedReserved8BitPerColor: + efihdr->fb.fb_mask_red = 0x00ff0000; + efihdr->fb.fb_mask_green = 0x0000ff00; + efihdr->fb.fb_mask_blue = 0x000000ff; + efihdr->fb.fb_mask_reserved = 0xff000000; + break; + case PixelBitMask: + efihdr->fb.fb_mask_red = info->PixelInformation.RedMask; + efihdr->fb.fb_mask_green = info->PixelInformation.GreenMask; + efihdr->fb.fb_mask_blue = info->PixelInformation.BlueMask; + efihdr->fb.fb_mask_reserved = + info->PixelInformation.ReservedMask; + break; + default: + efihdr->fb.fb_present = 0; + } +} Copied: projects/uefi/sys/boot/amd64/efi/framebuffer.h (from r247446, projects/uefi/sys/boot/amd64/efi/efifb.h) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/uefi/sys/boot/amd64/efi/framebuffer.h Thu Feb 28 05:18:15 2013 (r247447, copy of r247446, projects/uefi/sys/boot/amd64/efi/efifb.h) @@ -0,0 +1,6 @@ +#ifndef _EFIFB_H_ +#define _EFIFB_H_ + +void efi_find_framebuffer(struct efi_header *efihdr); + +#endif /* _EFIFB_H_ */ From owner-svn-src-projects@FreeBSD.ORG Thu Feb 28 10:45:17 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 1C14BD5A; Thu, 28 Feb 2013 10:45:17 +0000 (UTC) (envelope-from benno@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id F40421A8C; Thu, 28 Feb 2013 10:45:16 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r1SAjGBA054520; Thu, 28 Feb 2013 10:45:16 GMT (envelope-from benno@svn.freebsd.org) Received: (from benno@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r1SAjGvR054519; Thu, 28 Feb 2013 10:45:16 GMT (envelope-from benno@svn.freebsd.org) Message-Id: <201302281045.r1SAjGvR054519@svn.freebsd.org> From: Benno Rice Date: Thu, 28 Feb 2013 10:45:16 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247453 - projects/uefi/sys/boot/amd64/efi X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 28 Feb 2013 10:45:17 -0000 Author: benno Date: Thu Feb 28 10:45:16 2013 New Revision: 247453 URL: http://svnweb.freebsd.org/changeset/base/247453 Log: Reindent with tabs. Modified: projects/uefi/sys/boot/amd64/efi/bootinfo64.c Modified: projects/uefi/sys/boot/amd64/efi/bootinfo64.c ============================================================================== --- projects/uefi/sys/boot/amd64/efi/bootinfo64.c Thu Feb 28 10:21:04 2013 (r247452) +++ projects/uefi/sys/boot/amd64/efi/bootinfo64.c Thu Feb 28 10:45:16 2013 (r247453) @@ -53,75 +53,74 @@ __FBSDID("$FreeBSD$"); * MOD_SIZE sizeof(size_t) module size * MOD_METADATA (variable) type-specific metadata */ -#define COPY32(v, a, c) { \ - u_int32_t x = (v); \ - if (c) \ - x86_efi_copyin(&x, a, sizeof(x)); \ - a += sizeof(x); \ +#define COPY32(v, a, c) { \ + u_int32_t x = (v); \ + if (c) \ + x86_efi_copyin(&x, a, sizeof(x)); \ + a += sizeof(x); \ } -#define MOD_STR(t, a, s, c) { \ - COPY32(t, a, c); \ - COPY32(strlen(s) + 1, a, c); \ - if (c) \ - x86_efi_copyin(s, a, strlen(s) + 1); \ - a += roundup(strlen(s) + 1, sizeof(u_int64_t));\ +#define MOD_STR(t, a, s, c) { \ + COPY32(t, a, c); \ + COPY32(strlen(s) + 1, a, c); \ + if (c) \ + x86_efi_copyin(s, a, strlen(s) + 1); \ + a += roundup(strlen(s) + 1, sizeof(u_int64_t)); \ } #define MOD_NAME(a, s, c) MOD_STR(MODINFO_NAME, a, s, c) #define MOD_TYPE(a, s, c) MOD_STR(MODINFO_TYPE, a, s, c) #define MOD_ARGS(a, s, c) MOD_STR(MODINFO_ARGS, a, s, c) -#define MOD_VAR(t, a, s, c) { \ - COPY32(t, a, c); \ - COPY32(sizeof(s), a, c); \ - if (c) \ - x86_efi_copyin(&s, a, sizeof(s)); \ - a += roundup(sizeof(s), sizeof(u_int64_t)); \ +#define MOD_VAR(t, a, s, c) { \ + COPY32(t, a, c); \ + COPY32(sizeof(s), a, c); \ + if (c) \ + x86_efi_copyin(&s, a, sizeof(s)); \ + a += roundup(sizeof(s), sizeof(u_int64_t)); \ } #define MOD_ADDR(a, s, c) MOD_VAR(MODINFO_ADDR, a, s, c) #define MOD_SIZE(a, s, c) MOD_VAR(MODINFO_SIZE, a, s, c) -#define MOD_METADATA(a, mm, c) { \ - COPY32(MODINFO_METADATA | mm->md_type, a, c); \ - COPY32(mm->md_size, a, c); \ - if (c) \ - x86_efi_copyin(mm->md_data, a, mm->md_size); \ - a += roundup(mm->md_size, sizeof(u_int64_t));\ +#define MOD_METADATA(a, mm, c) { \ + COPY32(MODINFO_METADATA | mm->md_type, a, c); \ + COPY32(mm->md_size, a, c); \ + if (c) \ + x86_efi_copyin(mm->md_data, a, mm->md_size); \ + a += roundup(mm->md_size, sizeof(u_int64_t)); \ } -#define MOD_END(a, c) { \ - COPY32(MODINFO_END, a, c); \ - COPY32(0, a, c); \ +#define MOD_END(a, c) { \ + COPY32(MODINFO_END, a, c); \ + COPY32(0, a, c); \ } static vm_offset_t bi_copymodules64(vm_offset_t addr) { - struct preloaded_file *fp; - struct file_metadata *md; - int c; - u_int64_t v; - - c = addr != 0; - /* start with the first module on the list, should be the kernel */ - for (fp = file_findfile(NULL, NULL); fp != NULL; fp = fp->f_next) { - - MOD_NAME(addr, fp->f_name, c); /* this field must come first */ - MOD_TYPE(addr, fp->f_type, c); - if (fp->f_args) - MOD_ARGS(addr, fp->f_args, c); - v = fp->f_addr; - MOD_ADDR(addr, v, c); - v = fp->f_size; - MOD_SIZE(addr, v, c); - for (md = fp->f_metadata; md != NULL; md = md->md_next) - if (!(md->md_type & MODINFOMD_NOCOPY)) - MOD_METADATA(addr, md, c); - } - MOD_END(addr, c); - return(addr); + struct preloaded_file *fp; + struct file_metadata *md; + int c; + u_int64_t v; + + c = addr != 0; + /* start with the first module on the list, should be the kernel */ + for (fp = file_findfile(NULL, NULL); fp != NULL; fp = fp->f_next) { + MOD_NAME(addr, fp->f_name, c); /* this field must come first */ + MOD_TYPE(addr, fp->f_type, c); + if (fp->f_args) + MOD_ARGS(addr, fp->f_args, c); + v = fp->f_addr; + MOD_ADDR(addr, v, c); + v = fp->f_size; + MOD_SIZE(addr, v, c); + for (md = fp->f_metadata; md != NULL; md = md->md_next) + if (!(md->md_type & MODINFOMD_NOCOPY)) + MOD_METADATA(addr, md, c); + } + MOD_END(addr, c); + return(addr); } extern int ldr_bootinfo(struct preloaded_file *kfp); @@ -138,72 +137,72 @@ extern int ldr_bootinfo(struct preloaded int bi_load64(char *args, vm_offset_t *modulep, vm_offset_t *kernendp) { - struct preloaded_file *xp, *kfp; - struct devdesc *rootdev; - struct file_metadata *md; - vm_offset_t addr; - u_int64_t kernend; - u_int64_t envp; - vm_offset_t size; - char *rootdevname; - int howto; - - howto = bi_getboothowto(args); - - /* - * Allow the environment variable 'rootdev' to override the supplied device - * This should perhaps go to MI code and/or have $rootdev tested/set by - * MI code before launching the kernel. - */ - rootdevname = getenv("rootdev"); - x86_efi_getdev((void **)(&rootdev), rootdevname, NULL); - if (rootdev == NULL) { /* bad $rootdev/$currdev */ - printf("can't determine root device\n"); - return(EINVAL); - } - - /* Try reading the /etc/fstab file to select the root device */ - getrootmount(x86_efi_fmtdev((void *)rootdev)); - - /* find the last module in the chain */ - addr = 0; - for (xp = file_findfile(NULL, NULL); xp != NULL; xp = xp->f_next) { + struct preloaded_file *xp, *kfp; + struct devdesc *rootdev; + struct file_metadata *md; + vm_offset_t addr; + u_int64_t kernend; + u_int64_t envp; + vm_offset_t size; + char *rootdevname; + int howto; + + howto = bi_getboothowto(args); + + /* + * Allow the environment variable 'rootdev' to override the supplied + * device. This should perhaps go to MI code and/or have $rootdev + * tested/set by MI code before launching the kernel. + */ + rootdevname = getenv("rootdev"); + x86_efi_getdev((void **)(&rootdev), rootdevname, NULL); + if (rootdev == NULL) { /* bad $rootdev/$currdev */ + printf("can't determine root device\n"); + return(EINVAL); + } + + /* Try reading the /etc/fstab file to select the root device */ + getrootmount(x86_efi_fmtdev((void *)rootdev)); + + /* find the last module in the chain */ + addr = 0; + for (xp = file_findfile(NULL, NULL); xp != NULL; xp = xp->f_next) { if (addr < (xp->f_addr + xp->f_size)) - addr = xp->f_addr + xp->f_size; - } - /* pad to a page boundary */ - addr = roundup(addr, PAGE_SIZE); - - /* copy our environment */ - envp = addr; - addr = bi_copyenv(addr); - - /* pad to a page boundary */ - addr = roundup(addr, PAGE_SIZE); - - kfp = file_findfile(NULL, "elf kernel"); - if (kfp == NULL) - kfp = file_findfile(NULL, "elf64 kernel"); - if (kfp == NULL) + addr = xp->f_addr + xp->f_size; + } + /* pad to a page boundary */ + addr = roundup(addr, PAGE_SIZE); + + /* copy our environment */ + envp = addr; + addr = bi_copyenv(addr); + + /* pad to a page boundary */ + addr = roundup(addr, PAGE_SIZE); + + kfp = file_findfile(NULL, "elf kernel"); + if (kfp == NULL) + kfp = file_findfile(NULL, "elf64 kernel"); + if (kfp == NULL) panic("can't find kernel file"); - kernend = 0; /* fill it in later */ - file_addmetadata(kfp, MODINFOMD_HOWTO, sizeof howto, &howto); - file_addmetadata(kfp, MODINFOMD_ENVP, sizeof envp, &envp); - file_addmetadata(kfp, MODINFOMD_KERNEND, sizeof kernend, &kernend); - ldr_bootinfo(kfp); - - /* Figure out the size and location of the metadata */ - *modulep = addr; - size = bi_copymodules64(0); - kernend = roundup(addr + size, PAGE_SIZE); - *kernendp = kernend; - - /* patch MODINFOMD_KERNEND */ - md = file_findmetadata(kfp, MODINFOMD_KERNEND); - bcopy(&kernend, md->md_data, sizeof kernend); + kernend = 0; /* fill it in later */ + file_addmetadata(kfp, MODINFOMD_HOWTO, sizeof howto, &howto); + file_addmetadata(kfp, MODINFOMD_ENVP, sizeof envp, &envp); + file_addmetadata(kfp, MODINFOMD_KERNEND, sizeof kernend, &kernend); + ldr_bootinfo(kfp); + + /* Figure out the size and location of the metadata */ + *modulep = addr; + size = bi_copymodules64(0); + kernend = roundup(addr + size, PAGE_SIZE); + *kernendp = kernend; + + /* patch MODINFOMD_KERNEND */ + md = file_findmetadata(kfp, MODINFOMD_KERNEND); + bcopy(&kernend, md->md_data, sizeof kernend); - /* copy module list and metadata */ - (void)bi_copymodules64(addr); + /* copy module list and metadata */ + (void)bi_copymodules64(addr); - return(0); + return(0); } From owner-svn-src-projects@FreeBSD.ORG Thu Feb 28 10:48:29 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id CFD84158; Thu, 28 Feb 2013 10:48:29 +0000 (UTC) (envelope-from benno@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id C1B9B1AAA; Thu, 28 Feb 2013 10:48:29 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r1SAmT7O055224; Thu, 28 Feb 2013 10:48:29 GMT (envelope-from benno@svn.freebsd.org) Received: (from benno@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r1SAmTog055222; Thu, 28 Feb 2013 10:48:29 GMT (envelope-from benno@svn.freebsd.org) Message-Id: <201302281048.r1SAmTog055222@svn.freebsd.org> From: Benno Rice Date: Thu, 28 Feb 2013 10:48:29 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247455 - projects/uefi/sys/boot/amd64/efi X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 28 Feb 2013 10:48:29 -0000 Author: benno Date: Thu Feb 28 10:48:29 2013 New Revision: 247455 URL: http://svnweb.freebsd.org/changeset/base/247455 Log: Merge bootinfo.c into bootinfo64.c Deleted: projects/uefi/sys/boot/amd64/efi/bootinfo.c Modified: projects/uefi/sys/boot/amd64/efi/Makefile projects/uefi/sys/boot/amd64/efi/bootinfo64.c Modified: projects/uefi/sys/boot/amd64/efi/Makefile ============================================================================== --- projects/uefi/sys/boot/amd64/efi/Makefile Thu Feb 28 10:46:54 2013 (r247454) +++ projects/uefi/sys/boot/amd64/efi/Makefile Thu Feb 28 10:48:29 2013 (r247455) @@ -11,7 +11,7 @@ INTERNALPROG= # architecture-specific loader code SRCS= main.c conf.c vers.c reloc.c elf64_freebsd.c -SRCS+= copy.c bootinfo.c bootinfo64.c autoload.c devicename.c efimd.c +SRCS+= copy.c bootinfo64.c autoload.c devicename.c efimd.c SRCS+= framebuffer.c amd64_tramp.S start.S CFLAGS+= -fPIC Modified: projects/uefi/sys/boot/amd64/efi/bootinfo64.c ============================================================================== --- projects/uefi/sys/boot/amd64/efi/bootinfo64.c Thu Feb 28 10:46:54 2013 (r247454) +++ projects/uefi/sys/boot/amd64/efi/bootinfo64.c Thu Feb 28 10:48:29 2013 (r247455) @@ -28,16 +28,122 @@ __FBSDID("$FreeBSD$"); #include +#include #include #include #include #include #include #include + +#include +#include + #include "bootstrap.h" #include "x86_efi.h" /* + * Return a 'boothowto' value corresponding to the kernel arguments in + * (kargs) and any relevant environment variables. + */ +static struct +{ + const char *ev; + int mask; +} howto_names[] = { + { "boot_askname", RB_ASKNAME}, + { "boot_cdrom", RB_CDROM}, + { "boot_ddb", RB_KDB}, + { "boot_dfltroot", RB_DFLTROOT}, + { "boot_gdb", RB_GDB}, + { "boot_multicons", RB_MULTIPLE}, + { "boot_mute", RB_MUTE}, + { "boot_pause", RB_PAUSE}, + { "boot_serial", RB_SERIAL}, + { "boot_single", RB_SINGLE}, + { "boot_verbose", RB_VERBOSE}, + { NULL, 0} +}; + +static const char howto_switches[] = "aCdrgDmphsv"; +static int howto_masks[] = { + RB_ASKNAME, RB_CDROM, RB_KDB, RB_DFLTROOT, RB_GDB, RB_MULTIPLE, + RB_MUTE, RB_PAUSE, RB_SERIAL, RB_SINGLE, RB_VERBOSE +}; + +static int +bi_getboothowto(char *kargs) +{ + const char *sw; + char *opts; + int howto, i; + + howto = 0; + + /* Get the boot options from the environment first. */ + for (i = 0; howto_names[i].ev != NULL; i++) { + if (getenv(howto_names[i].ev) != NULL) + howto |= howto_names[i].mask; + } + + /* Parse kargs */ + if (kargs == NULL) + return (howto); + + opts = strchr(kargs, '-'); + while (opts != NULL) { + while (*(++opts) != '\0') { + sw = strchr(howto_switches, *opts); + if (sw == NULL) + break; + howto |= howto_masks[sw - howto_switches]; + } + opts = strchr(opts, '-'); + } + + return (howto); +} + +/* + * Copy the environment into the load area starting at (addr). + * Each variable is formatted as =, with a single nul + * separating each variable, and a double nul terminating the environment. + */ +static vm_offset_t +bi_copyenv(vm_offset_t start) +{ + struct env_var *ep; + vm_offset_t addr, last; + size_t len; + + addr = last = start; + + /* Traverse the environment. */ + for (ep = environ; ep != NULL; ep = ep->ev_next) { + len = strlen(ep->ev_name); + if (x86_efi_copyin(ep->ev_name, addr, len) != len) + break; + addr += len; + if (x86_efi_copyin("=", addr, 1) != 1) + break; + addr++; + if (ep->ev_value != NULL) { + len = strlen(ep->ev_value); + if (x86_efi_copyin(ep->ev_value, addr, len) != len) + break; + addr += len; + } + if (x86_efi_copyin("", addr, 1) != 1) + break; + last = ++addr; + } + + if (x86_efi_copyin("", last++, 1) != 1) + last = start; + return(last); +} + +/* * Copy module-related data into the load area, where it can be * used as a directory for loaded modules. * From owner-svn-src-projects@FreeBSD.ORG Thu Feb 28 10:50:10 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 1F79431E; Thu, 28 Feb 2013 10:50:10 +0000 (UTC) (envelope-from benno@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 033B61AC2; Thu, 28 Feb 2013 10:50:10 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r1SAo9w8055525; Thu, 28 Feb 2013 10:50:09 GMT (envelope-from benno@svn.freebsd.org) Received: (from benno@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r1SAo9vT055523; Thu, 28 Feb 2013 10:50:09 GMT (envelope-from benno@svn.freebsd.org) Message-Id: <201302281050.r1SAo9vT055523@svn.freebsd.org> From: Benno Rice Date: Thu, 28 Feb 2013 10:50:09 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247456 - projects/uefi/sys/boot/amd64/efi X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 28 Feb 2013 10:50:10 -0000 Author: benno Date: Thu Feb 28 10:50:09 2013 New Revision: 247456 URL: http://svnweb.freebsd.org/changeset/base/247456 Log: Rename bootinfo64.c to bootinfo.c Added: projects/uefi/sys/boot/amd64/efi/bootinfo.c - copied unchanged from r247455, projects/uefi/sys/boot/amd64/efi/bootinfo64.c Deleted: projects/uefi/sys/boot/amd64/efi/bootinfo64.c Modified: projects/uefi/sys/boot/amd64/efi/Makefile Modified: projects/uefi/sys/boot/amd64/efi/Makefile ============================================================================== --- projects/uefi/sys/boot/amd64/efi/Makefile Thu Feb 28 10:48:29 2013 (r247455) +++ projects/uefi/sys/boot/amd64/efi/Makefile Thu Feb 28 10:50:09 2013 (r247456) @@ -11,7 +11,7 @@ INTERNALPROG= # architecture-specific loader code SRCS= main.c conf.c vers.c reloc.c elf64_freebsd.c -SRCS+= copy.c bootinfo64.c autoload.c devicename.c efimd.c +SRCS+= copy.c bootinfo.c autoload.c devicename.c efimd.c SRCS+= framebuffer.c amd64_tramp.S start.S CFLAGS+= -fPIC Copied: projects/uefi/sys/boot/amd64/efi/bootinfo.c (from r247455, projects/uefi/sys/boot/amd64/efi/bootinfo64.c) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/uefi/sys/boot/amd64/efi/bootinfo.c Thu Feb 28 10:50:09 2013 (r247456, copy of r247455, projects/uefi/sys/boot/amd64/efi/bootinfo64.c) @@ -0,0 +1,314 @@ +/*- + * Copyright (c) 1998 Michael Smith + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include +__FBSDID("$FreeBSD$"); + +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include + +#include "bootstrap.h" +#include "x86_efi.h" + +/* + * Return a 'boothowto' value corresponding to the kernel arguments in + * (kargs) and any relevant environment variables. + */ +static struct +{ + const char *ev; + int mask; +} howto_names[] = { + { "boot_askname", RB_ASKNAME}, + { "boot_cdrom", RB_CDROM}, + { "boot_ddb", RB_KDB}, + { "boot_dfltroot", RB_DFLTROOT}, + { "boot_gdb", RB_GDB}, + { "boot_multicons", RB_MULTIPLE}, + { "boot_mute", RB_MUTE}, + { "boot_pause", RB_PAUSE}, + { "boot_serial", RB_SERIAL}, + { "boot_single", RB_SINGLE}, + { "boot_verbose", RB_VERBOSE}, + { NULL, 0} +}; + +static const char howto_switches[] = "aCdrgDmphsv"; +static int howto_masks[] = { + RB_ASKNAME, RB_CDROM, RB_KDB, RB_DFLTROOT, RB_GDB, RB_MULTIPLE, + RB_MUTE, RB_PAUSE, RB_SERIAL, RB_SINGLE, RB_VERBOSE +}; + +static int +bi_getboothowto(char *kargs) +{ + const char *sw; + char *opts; + int howto, i; + + howto = 0; + + /* Get the boot options from the environment first. */ + for (i = 0; howto_names[i].ev != NULL; i++) { + if (getenv(howto_names[i].ev) != NULL) + howto |= howto_names[i].mask; + } + + /* Parse kargs */ + if (kargs == NULL) + return (howto); + + opts = strchr(kargs, '-'); + while (opts != NULL) { + while (*(++opts) != '\0') { + sw = strchr(howto_switches, *opts); + if (sw == NULL) + break; + howto |= howto_masks[sw - howto_switches]; + } + opts = strchr(opts, '-'); + } + + return (howto); +} + +/* + * Copy the environment into the load area starting at (addr). + * Each variable is formatted as =, with a single nul + * separating each variable, and a double nul terminating the environment. + */ +static vm_offset_t +bi_copyenv(vm_offset_t start) +{ + struct env_var *ep; + vm_offset_t addr, last; + size_t len; + + addr = last = start; + + /* Traverse the environment. */ + for (ep = environ; ep != NULL; ep = ep->ev_next) { + len = strlen(ep->ev_name); + if (x86_efi_copyin(ep->ev_name, addr, len) != len) + break; + addr += len; + if (x86_efi_copyin("=", addr, 1) != 1) + break; + addr++; + if (ep->ev_value != NULL) { + len = strlen(ep->ev_value); + if (x86_efi_copyin(ep->ev_value, addr, len) != len) + break; + addr += len; + } + if (x86_efi_copyin("", addr, 1) != 1) + break; + last = ++addr; + } + + if (x86_efi_copyin("", last++, 1) != 1) + last = start; + return(last); +} + +/* + * Copy module-related data into the load area, where it can be + * used as a directory for loaded modules. + * + * Module data is presented in a self-describing format. Each datum + * is preceded by a 32-bit identifier and a 32-bit size field. + * + * Currently, the following data are saved: + * + * MOD_NAME (variable) module name (string) + * MOD_TYPE (variable) module type (string) + * MOD_ARGS (variable) module parameters (string) + * MOD_ADDR sizeof(vm_offset_t) module load address + * MOD_SIZE sizeof(size_t) module size + * MOD_METADATA (variable) type-specific metadata + */ +#define COPY32(v, a, c) { \ + u_int32_t x = (v); \ + if (c) \ + x86_efi_copyin(&x, a, sizeof(x)); \ + a += sizeof(x); \ +} + +#define MOD_STR(t, a, s, c) { \ + COPY32(t, a, c); \ + COPY32(strlen(s) + 1, a, c); \ + if (c) \ + x86_efi_copyin(s, a, strlen(s) + 1); \ + a += roundup(strlen(s) + 1, sizeof(u_int64_t)); \ +} + +#define MOD_NAME(a, s, c) MOD_STR(MODINFO_NAME, a, s, c) +#define MOD_TYPE(a, s, c) MOD_STR(MODINFO_TYPE, a, s, c) +#define MOD_ARGS(a, s, c) MOD_STR(MODINFO_ARGS, a, s, c) + +#define MOD_VAR(t, a, s, c) { \ + COPY32(t, a, c); \ + COPY32(sizeof(s), a, c); \ + if (c) \ + x86_efi_copyin(&s, a, sizeof(s)); \ + a += roundup(sizeof(s), sizeof(u_int64_t)); \ +} + +#define MOD_ADDR(a, s, c) MOD_VAR(MODINFO_ADDR, a, s, c) +#define MOD_SIZE(a, s, c) MOD_VAR(MODINFO_SIZE, a, s, c) + +#define MOD_METADATA(a, mm, c) { \ + COPY32(MODINFO_METADATA | mm->md_type, a, c); \ + COPY32(mm->md_size, a, c); \ + if (c) \ + x86_efi_copyin(mm->md_data, a, mm->md_size); \ + a += roundup(mm->md_size, sizeof(u_int64_t)); \ +} + +#define MOD_END(a, c) { \ + COPY32(MODINFO_END, a, c); \ + COPY32(0, a, c); \ +} + +static vm_offset_t +bi_copymodules64(vm_offset_t addr) +{ + struct preloaded_file *fp; + struct file_metadata *md; + int c; + u_int64_t v; + + c = addr != 0; + /* start with the first module on the list, should be the kernel */ + for (fp = file_findfile(NULL, NULL); fp != NULL; fp = fp->f_next) { + MOD_NAME(addr, fp->f_name, c); /* this field must come first */ + MOD_TYPE(addr, fp->f_type, c); + if (fp->f_args) + MOD_ARGS(addr, fp->f_args, c); + v = fp->f_addr; + MOD_ADDR(addr, v, c); + v = fp->f_size; + MOD_SIZE(addr, v, c); + for (md = fp->f_metadata; md != NULL; md = md->md_next) + if (!(md->md_type & MODINFOMD_NOCOPY)) + MOD_METADATA(addr, md, c); + } + MOD_END(addr, c); + return(addr); +} + +extern int ldr_bootinfo(struct preloaded_file *kfp); + +/* + * Load the information expected by an amd64 kernel. + * + * - The 'boothowto' argument is constructed + * - The 'bootdev' argument is constructed + * - The 'bootinfo' struct is constructed, and copied into the kernel space. + * - The kernel environment is copied into kernel space. + * - Module metadata are formatted and placed in kernel space. + */ +int +bi_load64(char *args, vm_offset_t *modulep, vm_offset_t *kernendp) +{ + struct preloaded_file *xp, *kfp; + struct devdesc *rootdev; + struct file_metadata *md; + vm_offset_t addr; + u_int64_t kernend; + u_int64_t envp; + vm_offset_t size; + char *rootdevname; + int howto; + + howto = bi_getboothowto(args); + + /* + * Allow the environment variable 'rootdev' to override the supplied + * device. This should perhaps go to MI code and/or have $rootdev + * tested/set by MI code before launching the kernel. + */ + rootdevname = getenv("rootdev"); + x86_efi_getdev((void **)(&rootdev), rootdevname, NULL); + if (rootdev == NULL) { /* bad $rootdev/$currdev */ + printf("can't determine root device\n"); + return(EINVAL); + } + + /* Try reading the /etc/fstab file to select the root device */ + getrootmount(x86_efi_fmtdev((void *)rootdev)); + + /* find the last module in the chain */ + addr = 0; + for (xp = file_findfile(NULL, NULL); xp != NULL; xp = xp->f_next) { + if (addr < (xp->f_addr + xp->f_size)) + addr = xp->f_addr + xp->f_size; + } + /* pad to a page boundary */ + addr = roundup(addr, PAGE_SIZE); + + /* copy our environment */ + envp = addr; + addr = bi_copyenv(addr); + + /* pad to a page boundary */ + addr = roundup(addr, PAGE_SIZE); + + kfp = file_findfile(NULL, "elf kernel"); + if (kfp == NULL) + kfp = file_findfile(NULL, "elf64 kernel"); + if (kfp == NULL) + panic("can't find kernel file"); + kernend = 0; /* fill it in later */ + file_addmetadata(kfp, MODINFOMD_HOWTO, sizeof howto, &howto); + file_addmetadata(kfp, MODINFOMD_ENVP, sizeof envp, &envp); + file_addmetadata(kfp, MODINFOMD_KERNEND, sizeof kernend, &kernend); + ldr_bootinfo(kfp); + + /* Figure out the size and location of the metadata */ + *modulep = addr; + size = bi_copymodules64(0); + kernend = roundup(addr + size, PAGE_SIZE); + *kernendp = kernend; + + /* patch MODINFOMD_KERNEND */ + md = file_findmetadata(kfp, MODINFOMD_KERNEND); + bcopy(&kernend, md->md_data, sizeof kernend); + + /* copy module list and metadata */ + (void)bi_copymodules64(addr); + + return(0); +} From owner-svn-src-projects@FreeBSD.ORG Thu Feb 28 10:54:21 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 1013E62A; Thu, 28 Feb 2013 10:54:21 +0000 (UTC) (envelope-from benno@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id E7B7F1AEA; Thu, 28 Feb 2013 10:54:20 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r1SAsKPA058439; Thu, 28 Feb 2013 10:54:20 GMT (envelope-from benno@svn.freebsd.org) Received: (from benno@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r1SAsKxU058435; Thu, 28 Feb 2013 10:54:20 GMT (envelope-from benno@svn.freebsd.org) Message-Id: <201302281054.r1SAsKxU058435@svn.freebsd.org> From: Benno Rice Date: Thu, 28 Feb 2013 10:54:20 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247457 - projects/uefi/sys/boot/amd64/efi X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 28 Feb 2013 10:54:21 -0000 Author: benno Date: Thu Feb 28 10:54:19 2013 New Revision: 247457 URL: http://svnweb.freebsd.org/changeset/base/247457 Log: Split efimd.c up and place parts into bootinfo.c and parts into elf64_freebsd.c Deleted: projects/uefi/sys/boot/amd64/efi/efimd.c Modified: projects/uefi/sys/boot/amd64/efi/Makefile projects/uefi/sys/boot/amd64/efi/bootinfo.c projects/uefi/sys/boot/amd64/efi/elf64_freebsd.c projects/uefi/sys/boot/amd64/efi/x86_efi.h Modified: projects/uefi/sys/boot/amd64/efi/Makefile ============================================================================== --- projects/uefi/sys/boot/amd64/efi/Makefile Thu Feb 28 10:50:09 2013 (r247456) +++ projects/uefi/sys/boot/amd64/efi/Makefile Thu Feb 28 10:54:19 2013 (r247457) @@ -11,7 +11,7 @@ INTERNALPROG= # architecture-specific loader code SRCS= main.c conf.c vers.c reloc.c elf64_freebsd.c -SRCS+= copy.c bootinfo.c autoload.c devicename.c efimd.c +SRCS+= copy.c bootinfo.c autoload.c devicename.c SRCS+= framebuffer.c amd64_tramp.S start.S CFLAGS+= -fPIC Modified: projects/uefi/sys/boot/amd64/efi/bootinfo.c ============================================================================== --- projects/uefi/sys/boot/amd64/efi/bootinfo.c Thu Feb 28 10:50:09 2013 (r247456) +++ projects/uefi/sys/boot/amd64/efi/bootinfo.c Thu Feb 28 10:54:19 2013 (r247457) @@ -1,5 +1,6 @@ /*- * Copyright (c) 1998 Michael Smith + * Copyright (c) 2004, 2006 Marcel Moolenaar * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -33,6 +34,8 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include +#include #include #include @@ -40,8 +43,11 @@ __FBSDID("$FreeBSD$"); #include #include "bootstrap.h" +#include "framebuffer.h" #include "x86_efi.h" +UINTN x86_efi_mapkey; + /* * Return a 'boothowto' value corresponding to the kernel arguments in * (kargs) and any relevant environment variables. @@ -229,7 +235,66 @@ bi_copymodules64(vm_offset_t addr) return(addr); } -extern int ldr_bootinfo(struct preloaded_file *kfp); +static int +ldr_bootinfo(struct preloaded_file *kfp) +{ + EFI_MEMORY_DESCRIPTOR *mm; + EFI_PHYSICAL_ADDRESS addr; + EFI_STATUS status; + size_t efisz; + UINTN mmsz, pages, sz; + UINT32 mmver; + struct efi_header *efihdr; + + efisz = (sizeof(struct efi_header) + 0xf) & ~0xf; + + /* + * Allocate enough pages to hold the bootinfo block and the memory + * map EFI will return to us. The memory map has an unknown size, + * so we have to determine that first. Note that the AllocatePages + * call can itself modify the memory map, so we have to take that + * into account as well. The changes to the memory map are caused + * by splitting a range of free memory into two (AFAICT), so that + * one is marked as being loader data. + */ + sz = 0; + BS->GetMemoryMap(&sz, NULL, &x86_efi_mapkey, &mmsz, &mmver); + sz += mmsz; + sz = (sz + 0xf) & ~0xf; + pages = EFI_SIZE_TO_PAGES(sz + efisz); + status = BS->AllocatePages(AllocateAnyPages, EfiLoaderData, pages, + &addr); + if (EFI_ERROR(status)) { + printf("%s: AllocatePages() returned 0x%lx\n", __func__, + (long)status); + return (ENOMEM); + } + + /* + * Read the memory map and stash it after bootinfo. Align the + * memory map on a 16-byte boundary (the bootinfo block is page + * aligned). + */ + efihdr = (struct efi_header *)addr; + mm = (void *)((uint8_t *)efihdr + efisz); + sz = (EFI_PAGE_SIZE * pages) - efisz; + status = BS->GetMemoryMap(&sz, mm, &x86_efi_mapkey, &mmsz, &mmver); + if (EFI_ERROR(status)) { + printf("%s: GetMemoryMap() returned 0x%lx\n", __func__, + (long)status); + return (EINVAL); + } + + efihdr->memory_size = sz; + efihdr->descriptor_size = mmsz; + efihdr->descriptor_version = mmver; + + efi_find_framebuffer(efihdr); + + file_addmetadata(kfp, MODINFOMD_EFI, efisz + sz, efihdr); + + return (0); +} /* * Load the information expected by an amd64 kernel. Modified: projects/uefi/sys/boot/amd64/efi/elf64_freebsd.c ============================================================================== --- projects/uefi/sys/boot/amd64/efi/elf64_freebsd.c Thu Feb 28 10:50:09 2013 (r247456) +++ projects/uefi/sys/boot/amd64/efi/elf64_freebsd.c Thu Feb 28 10:54:19 2013 (r247457) @@ -93,6 +93,7 @@ elf64_exec(struct preloaded_file *fp) ACPI_TABLE_RSDP *rsdp; char buf[24]; int revision; + EFI_STATUS status; rsdp = efi_get_table(&acpi20_guid); if (rsdp == NULL) { @@ -164,7 +165,12 @@ elf64_exec(struct preloaded_file *fp) printf("Start @ 0x%lx ...\n", ehdr->e_entry); - ldr_enter(fp->f_name); + status = BS->ExitBootServices(IH, x86_efi_mapkey); + if (EFI_ERROR(status)) { + printf("%s: ExitBootServices() returned 0x%lx\n", __func__, + (long)status); + return (EINVAL); + } dev_cleanup(); Modified: projects/uefi/sys/boot/amd64/efi/x86_efi.h ============================================================================== --- projects/uefi/sys/boot/amd64/efi/x86_efi.h Thu Feb 28 10:50:09 2013 (r247456) +++ projects/uefi/sys/boot/amd64/efi/x86_efi.h Thu Feb 28 10:54:19 2013 (r247457) @@ -44,4 +44,6 @@ ssize_t x86_efi_copyin(const void *src, ssize_t x86_efi_copyout(const vm_offset_t src, void *dest, const size_t len); ssize_t x86_efi_readin(const int fd, vm_offset_t dest, const size_t len); +extern UINTN x86_efi_mapkey; + #endif /* _X86_EFI_COPY_H_ */ From owner-svn-src-projects@FreeBSD.ORG Thu Feb 28 10:56:22 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 2360E842; Thu, 28 Feb 2013 10:56:22 +0000 (UTC) (envelope-from benno@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id ED5E51B03; Thu, 28 Feb 2013 10:56:21 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r1SAuL4s058841; Thu, 28 Feb 2013 10:56:21 GMT (envelope-from benno@svn.freebsd.org) Received: (from benno@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r1SAuLX9058839; Thu, 28 Feb 2013 10:56:21 GMT (envelope-from benno@svn.freebsd.org) Message-Id: <201302281056.r1SAuLX9058839@svn.freebsd.org> From: Benno Rice Date: Thu, 28 Feb 2013 10:56:21 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247458 - projects/uefi/sys/boot/amd64/efi X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 28 Feb 2013 10:56:22 -0000 Author: benno Date: Thu Feb 28 10:56:21 2013 New Revision: 247458 URL: http://svnweb.freebsd.org/changeset/base/247458 Log: Give a few functions more appropriate names. Modified: projects/uefi/sys/boot/amd64/efi/bootinfo.c projects/uefi/sys/boot/amd64/efi/elf64_freebsd.c Modified: projects/uefi/sys/boot/amd64/efi/bootinfo.c ============================================================================== --- projects/uefi/sys/boot/amd64/efi/bootinfo.c Thu Feb 28 10:54:19 2013 (r247457) +++ projects/uefi/sys/boot/amd64/efi/bootinfo.c Thu Feb 28 10:56:21 2013 (r247458) @@ -209,7 +209,7 @@ bi_copyenv(vm_offset_t start) } static vm_offset_t -bi_copymodules64(vm_offset_t addr) +bi_copymodules(vm_offset_t addr) { struct preloaded_file *fp; struct file_metadata *md; @@ -236,7 +236,7 @@ bi_copymodules64(vm_offset_t addr) } static int -ldr_bootinfo(struct preloaded_file *kfp) +bi_load_efi_data(struct preloaded_file *kfp) { EFI_MEMORY_DESCRIPTOR *mm; EFI_PHYSICAL_ADDRESS addr; @@ -306,7 +306,7 @@ ldr_bootinfo(struct preloaded_file *kfp) * - Module metadata are formatted and placed in kernel space. */ int -bi_load64(char *args, vm_offset_t *modulep, vm_offset_t *kernendp) +bi_load(char *args, vm_offset_t *modulep, vm_offset_t *kernendp) { struct preloaded_file *xp, *kfp; struct devdesc *rootdev; @@ -360,11 +360,12 @@ bi_load64(char *args, vm_offset_t *modul file_addmetadata(kfp, MODINFOMD_HOWTO, sizeof howto, &howto); file_addmetadata(kfp, MODINFOMD_ENVP, sizeof envp, &envp); file_addmetadata(kfp, MODINFOMD_KERNEND, sizeof kernend, &kernend); - ldr_bootinfo(kfp); + + bi_load_efi_data(kfp); /* Figure out the size and location of the metadata */ *modulep = addr; - size = bi_copymodules64(0); + size = bi_copymodules(0); kernend = roundup(addr + size, PAGE_SIZE); *kernendp = kernend; @@ -373,7 +374,7 @@ bi_load64(char *args, vm_offset_t *modul bcopy(&kernend, md->md_data, sizeof kernend); /* copy module list and metadata */ - (void)bi_copymodules64(addr); + (void)bi_copymodules(addr); return(0); } Modified: projects/uefi/sys/boot/amd64/efi/elf64_freebsd.c ============================================================================== --- projects/uefi/sys/boot/amd64/efi/elf64_freebsd.c Thu Feb 28 10:54:19 2013 (r247457) +++ projects/uefi/sys/boot/amd64/efi/elf64_freebsd.c Thu Feb 28 10:56:21 2013 (r247458) @@ -51,7 +51,7 @@ __FBSDID("$FreeBSD$"); static EFI_GUID acpi_guid = ACPI_TABLE_GUID; static EFI_GUID acpi20_guid = ACPI_20_TABLE_GUID; -extern int bi_load64(char *args, vm_offset_t *modulep, vm_offset_t *kernendp); +extern int bi_load(char *args, vm_offset_t *modulep, vm_offset_t *kernendp); static int elf64_exec(struct preloaded_file *amp); static int elf64_obj_exec(struct preloaded_file *amp); @@ -159,7 +159,7 @@ elf64_exec(struct preloaded_file *fp) PT2[i] |= PG_V | PG_RW | PG_PS | PG_U; } - err = bi_load64(fp->f_args, &modulep, &kernend); + err = bi_load(fp->f_args, &modulep, &kernend); if (err != 0) return(err); From owner-svn-src-projects@FreeBSD.ORG Thu Feb 28 10:59:41 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 4642D979; Thu, 28 Feb 2013 10:59:41 +0000 (UTC) (envelope-from benno@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 229C41B12; Thu, 28 Feb 2013 10:59:41 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r1SAxfkl059277; Thu, 28 Feb 2013 10:59:41 GMT (envelope-from benno@svn.freebsd.org) Received: (from benno@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r1SAxfv5059276; Thu, 28 Feb 2013 10:59:41 GMT (envelope-from benno@svn.freebsd.org) Message-Id: <201302281059.r1SAxfv5059276@svn.freebsd.org> From: Benno Rice Date: Thu, 28 Feb 2013 10:59:40 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247459 - projects/uefi/sys/boot/amd64/efi X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 28 Feb 2013 10:59:41 -0000 Author: benno Date: Thu Feb 28 10:59:40 2013 New Revision: 247459 URL: http://svnweb.freebsd.org/changeset/base/247459 Log: Tidy up SRCS. Modified: projects/uefi/sys/boot/amd64/efi/Makefile Modified: projects/uefi/sys/boot/amd64/efi/Makefile ============================================================================== --- projects/uefi/sys/boot/amd64/efi/Makefile Thu Feb 28 10:56:21 2013 (r247458) +++ projects/uefi/sys/boot/amd64/efi/Makefile Thu Feb 28 10:59:40 2013 (r247459) @@ -10,9 +10,9 @@ PROG= loader.sym INTERNALPROG= # architecture-specific loader code -SRCS= main.c conf.c vers.c reloc.c elf64_freebsd.c -SRCS+= copy.c bootinfo.c autoload.c devicename.c -SRCS+= framebuffer.c amd64_tramp.S start.S +SRCS= autoload.c bootinfo.c conf.c copy.c devicename.c elf64_freebsd.c \ + framebuffer.c main.c reloc.c vers.c +SRCS+= amd64_tramp.S start.S CFLAGS+= -fPIC CFLAGS+= -I. From owner-svn-src-projects@FreeBSD.ORG Thu Feb 28 12:09:41 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id D58B89CE; Thu, 28 Feb 2013 12:09:41 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id C47351ED6; Thu, 28 Feb 2013 12:09:41 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r1SC9fDL080761; Thu, 28 Feb 2013 12:09:41 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r1SC9bNH080728; Thu, 28 Feb 2013 12:09:37 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201302281209.r1SC9bNH080728@svn.freebsd.org> From: Alexander Motin Date: Thu, 28 Feb 2013 12:09:37 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247462 - in projects/calloutng: . cddl/contrib/opensolaris/cmd/zdb contrib/openbsm/bin/auditdistd include lib/libc/stdio sbin/tunefs share/man/man4 sys/amd64/amd64 sys/arm/econa sys/ar... X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 28 Feb 2013 12:09:41 -0000 Author: mav Date: Thu Feb 28 12:09:36 2013 New Revision: 247462 URL: http://svnweb.freebsd.org/changeset/base/247462 Log: MFC @247459 and fix corresponding breakages. Added: projects/calloutng/lib/libc/stdio/open_memstream.3 - copied unchanged from r247459, head/lib/libc/stdio/open_memstream.3 projects/calloutng/lib/libc/stdio/open_memstream.c - copied unchanged from r247459, head/lib/libc/stdio/open_memstream.c projects/calloutng/lib/libc/stdio/open_wmemstream.c - copied unchanged from r247459, head/lib/libc/stdio/open_wmemstream.c projects/calloutng/tools/regression/lib/libc/stdio/test-open_memstream.c - copied unchanged from r247459, head/tools/regression/lib/libc/stdio/test-open_memstream.c projects/calloutng/tools/regression/lib/libc/stdio/test-open_memstream.t - copied unchanged from r247459, head/tools/regression/lib/libc/stdio/test-open_memstream.t projects/calloutng/tools/regression/lib/libc/stdio/test-open_wmemstream.c - copied unchanged from r247459, head/tools/regression/lib/libc/stdio/test-open_wmemstream.c projects/calloutng/tools/regression/lib/libc/stdio/test-open_wmemstream.t - copied unchanged from r247459, head/tools/regression/lib/libc/stdio/test-open_wmemstream.t Modified: projects/calloutng/UPDATING projects/calloutng/cddl/contrib/opensolaris/cmd/zdb/zdb.c projects/calloutng/contrib/openbsm/bin/auditdistd/sender.c projects/calloutng/include/stdio.h projects/calloutng/include/wchar.h projects/calloutng/lib/libc/stdio/Makefile.inc projects/calloutng/lib/libc/stdio/Symbol.map projects/calloutng/sbin/tunefs/tunefs.c projects/calloutng/share/man/man4/arcmsr.4 projects/calloutng/sys/amd64/amd64/pmap.c projects/calloutng/sys/arm/econa/econa_machdep.c projects/calloutng/sys/arm/s3c2xx0/s3c24x0_machdep.c projects/calloutng/sys/arm/xscale/i80321/ep80219_machdep.c projects/calloutng/sys/arm/xscale/i80321/iq31244_machdep.c projects/calloutng/sys/arm/xscale/i8134x/crb_machdep.c projects/calloutng/sys/arm/xscale/ixp425/avila_machdep.c projects/calloutng/sys/arm/xscale/pxa/pxa_machdep.c projects/calloutng/sys/boot/common/load_elf.c projects/calloutng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/metaslab.c projects/calloutng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/space_map.c projects/calloutng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/metaslab_impl.h projects/calloutng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/space_map.h projects/calloutng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c projects/calloutng/sys/dev/arcmsr/arcmsr.c projects/calloutng/sys/dev/arcmsr/arcmsr.h projects/calloutng/sys/dev/mfi/mfi.c projects/calloutng/sys/dev/pci/pci.c projects/calloutng/sys/dev/watchdog/watchdog.c projects/calloutng/sys/i386/i386/pmap.c projects/calloutng/sys/i386/xen/pmap.c projects/calloutng/sys/kern/kern_clock.c projects/calloutng/sys/kern/kern_clocksource.c projects/calloutng/sys/kern/kern_event.c projects/calloutng/sys/kern/kern_tc.c projects/calloutng/sys/kern/kern_time.c projects/calloutng/sys/kern/kern_timeout.c projects/calloutng/sys/kern/subr_param.c projects/calloutng/sys/kern/sys_generic.c projects/calloutng/sys/netinet/sctputil.c projects/calloutng/sys/netinet/tcp_timer.c projects/calloutng/sys/powerpc/aim/mmu_oea.c projects/calloutng/sys/powerpc/aim/mmu_oea64.c projects/calloutng/sys/powerpc/booke/pmap.c projects/calloutng/sys/sparc64/sparc64/pmap.c projects/calloutng/sys/sys/proc.h projects/calloutng/sys/sys/systm.h projects/calloutng/sys/sys/time.h projects/calloutng/sys/sys/watchdog.h projects/calloutng/sys/vm/vm_object.h projects/calloutng/tools/regression/lib/libc/stdio/Makefile projects/calloutng/tools/test/iconv/tablegen/cmp.sh projects/calloutng/usr.bin/dc/dc.c projects/calloutng/usr.sbin/watchdogd/watchdogd.8 projects/calloutng/usr.sbin/watchdogd/watchdogd.c Directory Properties: projects/calloutng/ (props changed) projects/calloutng/cddl/contrib/opensolaris/ (props changed) projects/calloutng/contrib/openbsm/ (props changed) projects/calloutng/lib/libc/ (props changed) projects/calloutng/sbin/ (props changed) projects/calloutng/share/man/man4/ (props changed) projects/calloutng/sys/ (props changed) projects/calloutng/sys/boot/ (props changed) projects/calloutng/sys/cddl/contrib/opensolaris/ (props changed) Modified: projects/calloutng/UPDATING ============================================================================== --- projects/calloutng/UPDATING Thu Feb 28 12:03:17 2013 (r247461) +++ projects/calloutng/UPDATING Thu Feb 28 12:09:36 2013 (r247462) @@ -26,6 +26,13 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 10 disable the most expensive debugging functionality run "ln -s 'abort:false,junk:false' /etc/malloc.conf".) +20130208: + A new compression method (lz4) has been merged to -HEAD. Please + refer to zpool-features(7) for more information. + + Please refer to the "ZFS notes" section of this file for information + on upgrading boot ZFS pools. + 20130129: A BSD-licensed patch(1) variant has been added and is installed as bsdpatch, being the GNU version the default patch. Modified: projects/calloutng/cddl/contrib/opensolaris/cmd/zdb/zdb.c ============================================================================== --- projects/calloutng/cddl/contrib/opensolaris/cmd/zdb/zdb.c Thu Feb 28 12:03:17 2013 (r247461) +++ projects/calloutng/cddl/contrib/opensolaris/cmd/zdb/zdb.c Thu Feb 28 12:09:36 2013 (r247462) @@ -545,7 +545,7 @@ static void dump_metaslab_stats(metaslab_t *msp) { char maxbuf[32]; - space_map_t *sm = &msp->ms_map; + space_map_t *sm = msp->ms_map; avl_tree_t *t = sm->sm_pp_root; int free_pct = sm->sm_space * 100 / sm->sm_size; @@ -561,7 +561,7 @@ dump_metaslab(metaslab_t *msp) { vdev_t *vd = msp->ms_group->mg_vd; spa_t *spa = vd->vdev_spa; - space_map_t *sm = &msp->ms_map; + space_map_t *sm = msp->ms_map; space_map_obj_t *smo = &msp->ms_smo; char freebuf[32]; @@ -2160,11 +2160,11 @@ zdb_leak_init(spa_t *spa, zdb_cb_t *zcb) for (int m = 0; m < vd->vdev_ms_count; m++) { metaslab_t *msp = vd->vdev_ms[m]; mutex_enter(&msp->ms_lock); - space_map_unload(&msp->ms_map); - VERIFY(space_map_load(&msp->ms_map, + space_map_unload(msp->ms_map); + VERIFY(space_map_load(msp->ms_map, &zdb_space_map_ops, SM_ALLOC, &msp->ms_smo, spa->spa_meta_objset) == 0); - msp->ms_map.sm_ppd = vd; + msp->ms_map->sm_ppd = vd; mutex_exit(&msp->ms_lock); } } @@ -2187,7 +2187,7 @@ zdb_leak_fini(spa_t *spa) for (int m = 0; m < vd->vdev_ms_count; m++) { metaslab_t *msp = vd->vdev_ms[m]; mutex_enter(&msp->ms_lock); - space_map_unload(&msp->ms_map); + space_map_unload(msp->ms_map); mutex_exit(&msp->ms_lock); } } Modified: projects/calloutng/contrib/openbsm/bin/auditdistd/sender.c ============================================================================== --- projects/calloutng/contrib/openbsm/bin/auditdistd/sender.c Thu Feb 28 12:03:17 2013 (r247461) +++ projects/calloutng/contrib/openbsm/bin/auditdistd/sender.c Thu Feb 28 12:09:36 2013 (r247462) @@ -394,6 +394,7 @@ read_thread_wait(void) mtx_lock(&adist_remote_mtx); if (adhost->adh_reset) { +reset: adhost->adh_reset = false; if (trail_filefd(adist_trail) != -1) trail_close(adist_trail); @@ -408,6 +409,14 @@ read_thread_wait(void) while (trail_filefd(adist_trail) == -1) { newfile = true; wait_for_dir(); + /* + * We may have been disconnected and reconnected in the + * meantime, check if reset is set. + */ + mtx_lock(&adist_remote_mtx); + if (adhost->adh_reset) + goto reset; + mtx_unlock(&adist_remote_mtx); if (trail_filefd(adist_trail) == -1) trail_next(adist_trail); } Modified: projects/calloutng/include/stdio.h ============================================================================== --- projects/calloutng/include/stdio.h Thu Feb 28 12:03:17 2013 (r247461) +++ projects/calloutng/include/stdio.h Thu Feb 28 12:09:36 2013 (r247462) @@ -346,6 +346,7 @@ char *tempnam(const char *, const char * FILE *fmemopen(void * __restrict, size_t, const char * __restrict); ssize_t getdelim(char ** __restrict, size_t * __restrict, int, FILE * __restrict); +FILE *open_memstream(char **, size_t *); int renameat(int, const char *, int, const char *); int vdprintf(int, const char * __restrict, __va_list); Modified: projects/calloutng/include/wchar.h ============================================================================== --- projects/calloutng/include/wchar.h Thu Feb 28 12:03:17 2013 (r247461) +++ projects/calloutng/include/wchar.h Thu Feb 28 12:09:36 2013 (r247462) @@ -207,6 +207,7 @@ int wcwidth(wchar_t); #if __POSIX_VISIBLE >= 200809 || __BSD_VISIBLE size_t mbsnrtowcs(wchar_t * __restrict, const char ** __restrict, size_t, size_t, mbstate_t * __restrict); +FILE *open_wmemstream(wchar_t **, size_t *); wchar_t *wcpcpy(wchar_t * __restrict, const wchar_t * __restrict); wchar_t *wcpncpy(wchar_t * __restrict, const wchar_t * __restrict, size_t); wchar_t *wcsdup(const wchar_t *) __malloc_like; Modified: projects/calloutng/lib/libc/stdio/Makefile.inc ============================================================================== --- projects/calloutng/lib/libc/stdio/Makefile.inc Thu Feb 28 12:03:17 2013 (r247461) +++ projects/calloutng/lib/libc/stdio/Makefile.inc Thu Feb 28 12:09:36 2013 (r247462) @@ -14,6 +14,7 @@ SRCS+= _flock_stub.c asprintf.c clrerr.c ftell.c funopen.c fvwrite.c fwalk.c fwide.c fwprintf.c fwscanf.c \ fwrite.c getc.c getchar.c getdelim.c getline.c \ gets.c getw.c getwc.c getwchar.c makebuf.c mktemp.c \ + open_memstream.c open_wmemstream.c \ perror.c printf.c printf-pos.c putc.c putchar.c \ puts.c putw.c putwc.c putwchar.c \ refill.c remove.c rewind.c rget.c scanf.c setbuf.c setbuffer.c \ @@ -36,7 +37,7 @@ MAN+= fclose.3 ferror.3 fflush.3 fgetln. flockfile.3 \ fopen.3 fputs.3 \ fputws.3 fread.3 fseek.3 funopen.3 fwide.3 getc.3 \ - getline.3 getwc.3 mktemp.3 \ + getline.3 getwc.3 mktemp.3 open_memstream.3 \ printf.3 printf_l.3 putc.3 putwc.3 remove.3 scanf.3 scanf_l.3 setbuf.3 \ stdio.3 tmpnam.3 \ ungetc.3 ungetwc.3 wprintf.3 wscanf.3 @@ -60,6 +61,7 @@ MLINKS+=getc.3 fgetc.3 getc.3 getc_unloc MLINKS+=getline.3 getdelim.3 MLINKS+=getwc.3 fgetwc.3 getwc.3 getwchar.3 MLINKS+=mktemp.3 mkdtemp.3 mktemp.3 mkstemp.3 mktemp.3 mkstemps.3 +MLINKS+=open_memstream.3 open_wmemstream.3 MLINKS+=printf.3 asprintf.3 printf.3 dprintf.3 printf.3 fprintf.3 \ printf.3 snprintf.3 printf.3 sprintf.3 \ printf.3 vasprintf.3 printf.3 vdprintf.3 \ Modified: projects/calloutng/lib/libc/stdio/Symbol.map ============================================================================== --- projects/calloutng/lib/libc/stdio/Symbol.map Thu Feb 28 12:03:17 2013 (r247461) +++ projects/calloutng/lib/libc/stdio/Symbol.map Thu Feb 28 12:09:36 2013 (r247462) @@ -156,6 +156,8 @@ FBSD_1.3 { putwc_l; putwchar_l; fmemopen; + open_memstream; + open_wmemstream; }; FBSDprivate_1.0 { Copied: projects/calloutng/lib/libc/stdio/open_memstream.3 (from r247459, head/lib/libc/stdio/open_memstream.3) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/calloutng/lib/libc/stdio/open_memstream.3 Thu Feb 28 12:09:36 2013 (r247462, copy of r247459, head/lib/libc/stdio/open_memstream.3) @@ -0,0 +1,155 @@ +.\" Copyright (c) 2013 Advanced Computing Technologies LLC +.\" Written by: John H. Baldwin +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" $FreeBSD$ +.\" +.Dd February 27, 2013 +.Dt OPEN_MEMSTREAM 3 +.Os +.Sh NAME +.Nm open_memstream , +.Nm open_wmemstream +.Nd dynamic memory buffer stream open functions +.Sh LIBRARY +.Lb libc +.Sh SYNOPSIS +.In stdio.h +.Ft FILE * +.Fn open_memstream "char **bufp" "size_t **sizep" +.In wchar.h +.Ft FILE * +.Fn open_wmemstream "wchar_t **bufp" "size_t **sizep" +.Sh DESCRIPTION +The +.Fn open_memstream +and +.Fn open_wmemstream +functions create a write-only, seekable stream backed by a dynamically +allocated memory buffer. +The +.Fn open_memstream +function creates a byte-oriented stream, +while the +.Fn open_wmemstream +function creates a wide-oriented stream. +.Pp +Each stream maintains a current position and size. +Initially, +the position and size are set to zero. +Each write begins at the current position and advances it the number of +successfully written bytes for +.Fn open_memstream +or wide characters for +.Fn open_wmemstream . +If a write moves the current position beyond the length of the buffer, +the length of the buffer is extended and a null character is appended to the +buffer. +.Pp +A stream's buffer always contains a null character at the end of the buffer +that is not included in the current length. +.Pp +If a stream's current position is moved beyond the current length via a +seek operation and a write is performed, +the characters between the current length and the current position are filled +with null characters before the write is performed. +.Pp +After a successful call to +.Xr fclose 3 +or +.Xr fflush 3 , +the pointer referenced by +.Fa bufp +will contain the start of the memory buffer and the variable referenced by +.Fa sizep +will contain the smaller of the current position and the current buffer length. +.Pp +After a successful call to +.Xr fflush 3, +the pointer referenced by +.Fa bufp +and the variable referenced by +.Fa sizep +are only valid until the next write operation or a call to +.Xr fclose 3. +.Pp +Once a stream is closed, +the allocated buffer referenced by +.Fa bufp +should be released via a call to +.Xr free 3 +when it is no longer needed. +.Sh IMPLEMENTATION NOTES +Internally all I/O streams are effectively byte-oriented, +so using wide-oriented operations to write to a stream opened via +.Fn open_wmemstream +results in wide characters being expanded to a stream of multibyte characters +in stdio's internal buffers. +These multibyte characters are then converted back to wide characters when +written into the stream. +As a result, +the wide-oriented streams maintain an internal multibyte character conversion +state that is cleared on any seek opertion that changes the current position. +This should have no effect as long as wide-oriented output operations are used +on a wide-oriented stream. +.Sh RETURN VALUES +Upon successful completion, +.Fn open_memstream +and +.Fn open_wmemstream +return a +.Tn FILE +pointer. +Otherwise, +.Dv NULL +is returned and the global variable +.Va errno +is set to indicate the error. +.Sh ERRORS +.Bl -tag -width Er +.It Bq Er EINVAL +The +.Fa bufp +or +.Fa sizep +argument was +.Dv NULL . +.It Bq Er ENOMEM +Memory for the stream or buffer could not be allocated. +.El +.Sh SEE ALSO +.Xr fclose 3 , +.Xr fflush 3 , +.Xr fopen 3 , +.Xr free 3 , +.Xr fseek 3 , +.Xr sbuf 3 , +.Xr stdio 3 +.Sh STANDARDS +The +.Fn open_memstream +and +.Fn open_wmemstream +functions conform to +.St -p1003.1-2008 . Copied: projects/calloutng/lib/libc/stdio/open_memstream.c (from r247459, head/lib/libc/stdio/open_memstream.c) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/calloutng/lib/libc/stdio/open_memstream.c Thu Feb 28 12:09:36 2013 (r247462, copy of r247459, head/lib/libc/stdio/open_memstream.c) @@ -0,0 +1,209 @@ +/*- + * Copyright (c) 2013 Advanced Computing Technologies LLC + * Written by: John H. Baldwin + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include +__FBSDID("$FreeBSD$"); + +#include "namespace.h" +#include +#include +#include +#include +#include +#include +#include +#include "un-namespace.h" + +/* XXX: There is no FPOS_MAX. This assumes fpos_t is an off_t. */ +#define FPOS_MAX OFF_MAX + +struct memstream { + char **bufp; + size_t *sizep; + ssize_t len; + fpos_t offset; +}; + +static int +memstream_grow(struct memstream *ms, fpos_t newoff) +{ + char *buf; + ssize_t newsize; + + if (newoff < 0 || newoff >= SSIZE_MAX) + newsize = SSIZE_MAX - 1; + else + newsize = newoff; + if (newsize > ms->len) { + buf = realloc(*ms->bufp, newsize + 1); + if (buf != NULL) { +#ifdef DEBUG + fprintf(stderr, "MS: %p growing from %zd to %zd\n", + ms, ms->len, newsize); +#endif + memset(buf + ms->len + 1, 0, newsize - ms->len); + *ms->bufp = buf; + ms->len = newsize; + return (1); + } + return (0); + } + return (1); +} + +static void +memstream_update(struct memstream *ms) +{ + + assert(ms->len >= 0 && ms->offset >= 0); + *ms->sizep = ms->len < ms->offset ? ms->len : ms->offset; +} + +static int +memstream_write(void *cookie, const char *buf, int len) +{ + struct memstream *ms; + ssize_t tocopy; + + ms = cookie; + if (!memstream_grow(ms, ms->offset + len)) + return (-1); + tocopy = ms->len - ms->offset; + if (len < tocopy) + tocopy = len; + memcpy(*ms->bufp + ms->offset, buf, tocopy); + ms->offset += tocopy; + memstream_update(ms); +#ifdef DEBUG + fprintf(stderr, "MS: write(%p, %d) = %zd\n", ms, len, tocopy); +#endif + return (tocopy); +} + +static fpos_t +memstream_seek(void *cookie, fpos_t pos, int whence) +{ + struct memstream *ms; +#ifdef DEBUG + fpos_t old; +#endif + + ms = cookie; +#ifdef DEBUG + old = ms->offset; +#endif + switch (whence) { + case SEEK_SET: + /* _fseeko() checks for negative offsets. */ + assert(pos >= 0); + ms->offset = pos; + break; + case SEEK_CUR: + /* This is only called by _ftello(). */ + assert(pos == 0); + break; + case SEEK_END: + if (pos < 0) { + if (pos + ms->len < 0) { +#ifdef DEBUG + fprintf(stderr, + "MS: bad SEEK_END: pos %jd, len %zd\n", + (intmax_t)pos, ms->len); +#endif + errno = EINVAL; + return (-1); + } + } else { + if (FPOS_MAX - ms->len < pos) { +#ifdef DEBUG + fprintf(stderr, + "MS: bad SEEK_END: pos %jd, len %zd\n", + (intmax_t)pos, ms->len); +#endif + errno = EOVERFLOW; + return (-1); + } + } + ms->offset = ms->len + pos; + break; + } + memstream_update(ms); +#ifdef DEBUG + fprintf(stderr, "MS: seek(%p, %jd, %d) %jd -> %jd\n", ms, (intmax_t)pos, + whence, (intmax_t)old, (intmax_t)ms->offset); +#endif + return (ms->offset); +} + +static int +memstream_close(void *cookie) +{ + + free(cookie); + return (0); +} + +FILE * +open_memstream(char **bufp, size_t *sizep) +{ + struct memstream *ms; + int save_errno; + FILE *fp; + + if (bufp == NULL || sizep == NULL) { + errno = EINVAL; + return (NULL); + } + *bufp = calloc(1, 1); + if (*bufp == NULL) + return (NULL); + ms = malloc(sizeof(*ms)); + if (ms == NULL) { + save_errno = errno; + free(*bufp); + *bufp = NULL; + errno = save_errno; + return (NULL); + } + ms->bufp = bufp; + ms->sizep = sizep; + ms->len = 0; + ms->offset = 0; + memstream_update(ms); + fp = funopen(ms, NULL, memstream_write, memstream_seek, + memstream_close); + if (fp == NULL) { + save_errno = errno; + free(ms); + free(*bufp); + *bufp = NULL; + errno = save_errno; + return (NULL); + } + fwide(fp, -1); + return (fp); +} Copied: projects/calloutng/lib/libc/stdio/open_wmemstream.c (from r247459, head/lib/libc/stdio/open_wmemstream.c) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/calloutng/lib/libc/stdio/open_wmemstream.c Thu Feb 28 12:09:36 2013 (r247462, copy of r247459, head/lib/libc/stdio/open_wmemstream.c) @@ -0,0 +1,271 @@ +/*- + * Copyright (c) 2013 Advanced Computing Technologies LLC + * Written by: John H. Baldwin + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include +__FBSDID("$FreeBSD$"); + +#include "namespace.h" +#include +#include +#include +#include +#include +#include +#include +#include "un-namespace.h" + +/* XXX: There is no FPOS_MAX. This assumes fpos_t is an off_t. */ +#define FPOS_MAX OFF_MAX + +struct wmemstream { + wchar_t **bufp; + size_t *sizep; + ssize_t len; + fpos_t offset; + mbstate_t mbstate; +}; + +static int +wmemstream_grow(struct wmemstream *ms, fpos_t newoff) +{ + wchar_t *buf; + ssize_t newsize; + + if (newoff < 0 || newoff >= SSIZE_MAX / sizeof(wchar_t)) + newsize = SSIZE_MAX / sizeof(wchar_t) - 1; + else + newsize = newoff; + if (newsize > ms->len) { + buf = realloc(*ms->bufp, (newsize + 1) * sizeof(wchar_t)); + if (buf != NULL) { +#ifdef DEBUG + fprintf(stderr, "WMS: %p growing from %zd to %zd\n", + ms, ms->len, newsize); +#endif + wmemset(buf + ms->len + 1, 0, newsize - ms->len); + *ms->bufp = buf; + ms->len = newsize; + return (1); + } + return (0); + } + return (1); +} + +static void +wmemstream_update(struct wmemstream *ms) +{ + + assert(ms->len >= 0 && ms->offset >= 0); + *ms->sizep = ms->len < ms->offset ? ms->len : ms->offset; +} + +/* + * Based on a starting multibyte state and an input buffer, determine + * how many wchar_t's would be output. This doesn't use mbsnrtowcs() + * so that it can handle embedded null characters. + */ +static size_t +wbuflen(const mbstate_t *state, const char *buf, int len) +{ + mbstate_t lenstate; + size_t charlen, count; + + count = 0; + lenstate = *state; + while (len > 0) { + charlen = mbrlen(buf, len, &lenstate); + if (charlen == (size_t)-1) + return (-1); + if (charlen == (size_t)-2) + break; + if (charlen == 0) + /* XXX: Not sure how else to handle this. */ + charlen = 1; + len -= charlen; + buf += charlen; + count++; + } + return (count); +} + +static int +wmemstream_write(void *cookie, const char *buf, int len) +{ + struct wmemstream *ms; + ssize_t consumed, wlen; + size_t charlen; + + ms = cookie; + wlen = wbuflen(&ms->mbstate, buf, len); + if (wlen < 0) { + errno = EILSEQ; + return (-1); + } + if (!wmemstream_grow(ms, ms->offset + wlen)) + return (-1); + + /* + * This copies characters one at a time rather than using + * mbsnrtowcs() so it can properly handle embedded null + * characters. + */ + consumed = 0; + while (len > 0 && ms->offset < ms->len) { + charlen = mbrtowc(*ms->bufp + ms->offset, buf, len, + &ms->mbstate); + if (charlen == (size_t)-1) { + if (consumed == 0) { + errno = EILSEQ; + return (-1); + } + /* Treat it as a successful short write. */ + break; + } + if (charlen == 0) + /* XXX: Not sure how else to handle this. */ + charlen = 1; + if (charlen == (size_t)-2) { + consumed += len; + len = 0; + } else { + consumed += charlen; + buf += charlen; + len -= charlen; + ms->offset++; + } + } + wmemstream_update(ms); +#ifdef DEBUG + fprintf(stderr, "WMS: write(%p, %d) = %zd\n", ms, len, consumed); +#endif + return (consumed); +} + +static fpos_t +wmemstream_seek(void *cookie, fpos_t pos, int whence) +{ + struct wmemstream *ms; + fpos_t old; + + ms = cookie; + old = ms->offset; + switch (whence) { + case SEEK_SET: + /* _fseeko() checks for negative offsets. */ + assert(pos >= 0); + ms->offset = pos; + break; + case SEEK_CUR: + /* This is only called by _ftello(). */ + assert(pos == 0); + break; + case SEEK_END: + if (pos < 0) { + if (pos + ms->len < 0) { +#ifdef DEBUG + fprintf(stderr, + "WMS: bad SEEK_END: pos %jd, len %zd\n", + (intmax_t)pos, ms->len); +#endif + errno = EINVAL; + return (-1); + } + } else { + if (FPOS_MAX - ms->len < pos) { +#ifdef DEBUG + fprintf(stderr, + "WMS: bad SEEK_END: pos %jd, len %zd\n", + (intmax_t)pos, ms->len); +#endif + errno = EOVERFLOW; + return (-1); + } + } + ms->offset = ms->len + pos; + break; + } + /* Reset the multibyte state if a seek changes the position. */ + if (ms->offset != old) + memset(&ms->mbstate, 0, sizeof(ms->mbstate)); + wmemstream_update(ms); +#ifdef DEBUG + fprintf(stderr, "WMS: seek(%p, %jd, %d) %jd -> %jd\n", ms, + (intmax_t)pos, whence, (intmax_t)old, (intmax_t)ms->offset); +#endif + return (ms->offset); +} + +static int +wmemstream_close(void *cookie) +{ + + free(cookie); + return (0); +} + +FILE * +open_wmemstream(wchar_t **bufp, size_t *sizep) +{ + struct wmemstream *ms; + int save_errno; + FILE *fp; + + if (bufp == NULL || sizep == NULL) { + errno = EINVAL; + return (NULL); + } + *bufp = calloc(1, sizeof(wchar_t)); + if (*bufp == NULL) + return (NULL); + ms = malloc(sizeof(*ms)); + if (ms == NULL) { + save_errno = errno; + free(*bufp); + *bufp = NULL; + errno = save_errno; + return (NULL); + } + ms->bufp = bufp; + ms->sizep = sizep; + ms->len = 0; + ms->offset = 0; + memset(&ms->mbstate, 0, sizeof(mbstate_t)); + wmemstream_update(ms); + fp = funopen(ms, NULL, wmemstream_write, wmemstream_seek, + wmemstream_close); + if (fp == NULL) { + save_errno = errno; + free(ms); + free(*bufp); + *bufp = NULL; + errno = save_errno; + return (NULL); + } + fwide(fp, 1); + return (fp); +} Modified: projects/calloutng/sbin/tunefs/tunefs.c ============================================================================== --- projects/calloutng/sbin/tunefs/tunefs.c Thu Feb 28 12:03:17 2013 (r247461) +++ projects/calloutng/sbin/tunefs/tunefs.c Thu Feb 28 12:09:36 2013 (r247462) @@ -671,7 +671,7 @@ journal_findfile(void) return (ino); } } else { - if ((off_t)dp1->di_size >= lblktosize(&sblock, NDADDR)) { + if ((off_t)dp2->di_size >= lblktosize(&sblock, NDADDR)) { warnx("ROOTINO extends beyond direct blocks."); return (-1); } Modified: projects/calloutng/share/man/man4/arcmsr.4 ============================================================================== --- projects/calloutng/share/man/man4/arcmsr.4 Thu Feb 28 12:03:17 2013 (r247461) +++ projects/calloutng/share/man/man4/arcmsr.4 Thu Feb 28 12:09:36 2013 (r247462) @@ -24,7 +24,7 @@ .\" .\" $FreeBSD$ .\" -.Dd December 18, 2012 +.Dd February 27, 2013 .Dt ARCMSR 4 .Os .Sh NAME @@ -108,6 +108,8 @@ ARC-1222 .It ARC-1223 .It +ARC-1224 +.It ARC-1230 .It ARC-1231 Modified: projects/calloutng/sys/amd64/amd64/pmap.c ============================================================================== --- projects/calloutng/sys/amd64/amd64/pmap.c Thu Feb 28 12:03:17 2013 (r247461) +++ projects/calloutng/sys/amd64/amd64/pmap.c Thu Feb 28 12:09:36 2013 (r247462) @@ -3492,9 +3492,8 @@ pmap_enter(pmap_t pmap, vm_offset_t va, KASSERT((m->oflags & VPO_UNMANAGED) != 0 || va < kmi.clean_sva || va >= kmi.clean_eva, ("pmap_enter: managed mapping within the clean submap")); - KASSERT((m->oflags & (VPO_UNMANAGED | VPO_BUSY)) != 0 || - VM_OBJECT_LOCKED(m->object), - ("pmap_enter: page %p is not busy", m)); + if ((m->oflags & (VPO_UNMANAGED | VPO_BUSY)) == 0) + VM_OBJECT_LOCK_ASSERT(m->object, MA_OWNED); pa = VM_PAGE_TO_PHYS(m); newpte = (pt_entry_t)(pa | PG_A | PG_V); if ((access & VM_PROT_WRITE) != 0) Modified: projects/calloutng/sys/arm/econa/econa_machdep.c ============================================================================== --- projects/calloutng/sys/arm/econa/econa_machdep.c Thu Feb 28 12:03:17 2013 (r247461) +++ projects/calloutng/sys/arm/econa/econa_machdep.c Thu Feb 28 12:09:36 2013 (r247462) @@ -67,9 +67,7 @@ __FBSDID("$FreeBSD$"); #include #include #include -#include #include -#include #include #include #include Modified: projects/calloutng/sys/arm/s3c2xx0/s3c24x0_machdep.c ============================================================================== --- projects/calloutng/sys/arm/s3c2xx0/s3c24x0_machdep.c Thu Feb 28 12:03:17 2013 (r247461) +++ projects/calloutng/sys/arm/s3c2xx0/s3c24x0_machdep.c Thu Feb 28 12:09:36 2013 (r247462) @@ -77,9 +77,7 @@ __FBSDID("$FreeBSD$"); #include #include #include -#include #include -#include #include #include #include Modified: projects/calloutng/sys/arm/xscale/i80321/ep80219_machdep.c ============================================================================== --- projects/calloutng/sys/arm/xscale/i80321/ep80219_machdep.c Thu Feb 28 12:03:17 2013 (r247461) +++ projects/calloutng/sys/arm/xscale/i80321/ep80219_machdep.c Thu Feb 28 12:09:36 2013 (r247462) @@ -77,9 +77,7 @@ __FBSDID("$FreeBSD$"); #include #include #include -#include #include -#include #include #include #include Modified: projects/calloutng/sys/arm/xscale/i80321/iq31244_machdep.c ============================================================================== --- projects/calloutng/sys/arm/xscale/i80321/iq31244_machdep.c Thu Feb 28 12:03:17 2013 (r247461) +++ projects/calloutng/sys/arm/xscale/i80321/iq31244_machdep.c Thu Feb 28 12:09:36 2013 (r247462) @@ -77,9 +77,7 @@ __FBSDID("$FreeBSD$"); #include #include #include -#include #include -#include #include #include #include Modified: projects/calloutng/sys/arm/xscale/i8134x/crb_machdep.c ============================================================================== --- projects/calloutng/sys/arm/xscale/i8134x/crb_machdep.c Thu Feb 28 12:03:17 2013 (r247461) +++ projects/calloutng/sys/arm/xscale/i8134x/crb_machdep.c Thu Feb 28 12:09:36 2013 (r247462) @@ -77,9 +77,7 @@ __FBSDID("$FreeBSD$"); #include #include #include -#include #include -#include #include #include #include Modified: projects/calloutng/sys/arm/xscale/ixp425/avila_machdep.c ============================================================================== --- projects/calloutng/sys/arm/xscale/ixp425/avila_machdep.c Thu Feb 28 12:03:17 2013 (r247461) +++ projects/calloutng/sys/arm/xscale/ixp425/avila_machdep.c Thu Feb 28 12:09:36 2013 (r247462) @@ -77,9 +77,7 @@ __FBSDID("$FreeBSD$"); #include #include #include -#include #include -#include #include #include #include Modified: projects/calloutng/sys/arm/xscale/pxa/pxa_machdep.c ============================================================================== --- projects/calloutng/sys/arm/xscale/pxa/pxa_machdep.c Thu Feb 28 12:03:17 2013 (r247461) +++ projects/calloutng/sys/arm/xscale/pxa/pxa_machdep.c Thu Feb 28 12:09:36 2013 (r247462) @@ -79,9 +79,7 @@ __FBSDID("$FreeBSD$"); #include #include #include -#include #include -#include #include #include #include Modified: projects/calloutng/sys/boot/common/load_elf.c ============================================================================== --- projects/calloutng/sys/boot/common/load_elf.c Thu Feb 28 12:03:17 2013 (r247461) +++ projects/calloutng/sys/boot/common/load_elf.c Thu Feb 28 12:09:36 2013 (r247462) @@ -304,7 +304,7 @@ __elfN(loadimage)(struct preloaded_file * only adjust the entry point if it's a virtual address to begin with. */ off = -0xc0000000u; - if ((ehdr->e_entry & 0xc0000000u) == 0xc000000u) + if ((ehdr->e_entry & 0xc0000000u) == 0xc0000000u) ehdr->e_entry += off; #ifdef ELF_VERBOSE printf("ehdr->e_entry 0x%08x, va<->pa off %llx\n", ehdr->e_entry, off); Modified: projects/calloutng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/metaslab.c ============================================================================== --- projects/calloutng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/metaslab.c Thu Feb 28 12:03:17 2013 (r247461) +++ projects/calloutng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/metaslab.c Thu Feb 28 12:09:36 2013 (r247462) @@ -48,6 +48,14 @@ uint64_t metaslab_aliquot = 512ULL << 10 uint64_t metaslab_gang_bang = SPA_MAXBLOCKSIZE + 1; /* force gang blocks */ /* + * The in-core space map representation is more compact than its on-disk form. + * The zfs_condense_pct determines how much more compact the in-core + * space_map representation must be before we compact it on-disk. + * Values should be greater than or equal to 100. + */ +int zfs_condense_pct = 200; + +/* * This value defines the number of allowed allocation failures per vdev. * If a device reaches this threshold in a given txg then we consider skipping * allocations on that device. @@ -215,9 +223,9 @@ metaslab_compare(const void *x1, const v /* * If the weights are identical, use the offset to force uniqueness. */ - if (m1->ms_map.sm_start < m2->ms_map.sm_start) + if (m1->ms_map->sm_start < m2->ms_map->sm_start) return (-1); - if (m1->ms_map.sm_start > m2->ms_map.sm_start) + if (m1->ms_map->sm_start > m2->ms_map->sm_start) return (1); ASSERT3P(m1, ==, m2); @@ -732,14 +740,15 @@ metaslab_init(metaslab_group_t *mg, spac * addition of new space; and for debugging, it ensures that we'd * data fault on any attempt to use this metaslab before it's ready. */ - space_map_create(&msp->ms_map, start, size, + msp->ms_map = kmem_zalloc(sizeof (space_map_t), KM_SLEEP); + space_map_create(msp->ms_map, start, size, vd->vdev_ashift, &msp->ms_lock); metaslab_group_add(mg, msp); if (metaslab_debug && smo->smo_object != 0) { mutex_enter(&msp->ms_lock); - VERIFY(space_map_load(&msp->ms_map, mg->mg_class->mc_ops, + VERIFY(space_map_load(msp->ms_map, mg->mg_class->mc_ops, SM_FREE, smo, spa_meta_objset(vd->vdev_spa)) == 0); mutex_exit(&msp->ms_lock); } @@ -767,22 +776,27 @@ metaslab_fini(metaslab_t *msp) metaslab_group_t *mg = msp->ms_group; vdev_space_update(mg->mg_vd, - -msp->ms_smo.smo_alloc, 0, -msp->ms_map.sm_size); + -msp->ms_smo.smo_alloc, 0, -msp->ms_map->sm_size); metaslab_group_remove(mg, msp); mutex_enter(&msp->ms_lock); - space_map_unload(&msp->ms_map); - space_map_destroy(&msp->ms_map); + space_map_unload(msp->ms_map); + space_map_destroy(msp->ms_map); + kmem_free(msp->ms_map, sizeof (*msp->ms_map)); for (int t = 0; t < TXG_SIZE; t++) { - space_map_destroy(&msp->ms_allocmap[t]); - space_map_destroy(&msp->ms_freemap[t]); + space_map_destroy(msp->ms_allocmap[t]); + space_map_destroy(msp->ms_freemap[t]); + kmem_free(msp->ms_allocmap[t], sizeof (*msp->ms_allocmap[t])); + kmem_free(msp->ms_freemap[t], sizeof (*msp->ms_freemap[t])); } *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-projects@FreeBSD.ORG Thu Feb 28 13:55:05 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id B914BDA0; Thu, 28 Feb 2013 13:55:05 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 941A06E1; Thu, 28 Feb 2013 13:55:05 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r1SDt5Hm013081; Thu, 28 Feb 2013 13:55:05 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r1SDt5ML013080; Thu, 28 Feb 2013 13:55:05 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201302281355.r1SDt5ML013080@svn.freebsd.org> From: Alexander Motin Date: Thu, 28 Feb 2013 13:55:05 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247464 - in projects/calloutng: . sys X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 28 Feb 2013 13:55:05 -0000 Author: mav Date: Thu Feb 28 13:55:05 2013 New Revision: 247464 URL: http://svnweb.freebsd.org/changeset/base/247464 Log: MFC @r247463 Modified: Directory Properties: projects/calloutng/ (props changed) projects/calloutng/sys/ (props changed) From owner-svn-src-projects@FreeBSD.ORG Thu Feb 28 17:30:21 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 05518A61; Thu, 28 Feb 2013 17:30:21 +0000 (UTC) (envelope-from davide@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id E0EA53EC; Thu, 28 Feb 2013 17:30:20 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r1SHUKsk080626; Thu, 28 Feb 2013 17:30:20 GMT (envelope-from davide@svn.freebsd.org) Received: (from davide@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r1SHUK54080623; Thu, 28 Feb 2013 17:30:20 GMT (envelope-from davide@svn.freebsd.org) Message-Id: <201302281730.r1SHUK54080623@svn.freebsd.org> From: Davide Italiano Date: Thu, 28 Feb 2013 17:30:20 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247477 - projects/calloutng/sys/sys X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 28 Feb 2013 17:30:21 -0000 Author: davide Date: Thu Feb 28 17:30:19 2013 New Revision: 247477 URL: http://svnweb.freebsd.org/changeset/base/247477 Log: Merge head r247464 through r247476 (with some minor modifications). Modified: projects/calloutng/sys/sys/_callout.h projects/calloutng/sys/sys/time.h projects/calloutng/sys/sys/types.h Modified: projects/calloutng/sys/sys/_callout.h ============================================================================== --- projects/calloutng/sys/sys/_callout.h Thu Feb 28 17:10:30 2013 (r247476) +++ projects/calloutng/sys/sys/_callout.h Thu Feb 28 17:30:19 2013 (r247477) @@ -39,7 +39,6 @@ #define _SYS__CALLOUT_H #include -#include struct lock_object; Modified: projects/calloutng/sys/sys/time.h ============================================================================== --- projects/calloutng/sys/sys/time.h Thu Feb 28 17:10:30 2013 (r247476) +++ projects/calloutng/sys/sys/time.h Thu Feb 28 17:30:19 2013 (r247477) @@ -124,7 +124,6 @@ bintime_shift(struct bintime *bt, int ex ((a)->frac cmp (b)->frac) : \ ((a)->sec cmp (b)->sec)) -typedef int64_t sbintime_t; #define SBT_1S ((sbintime_t)1 << 32) #define SBT_1M (SBT_1S * 60) #define SBT_1MS (SBT_1S / 1000) Modified: projects/calloutng/sys/sys/types.h ============================================================================== --- projects/calloutng/sys/sys/types.h Thu Feb 28 17:10:30 2013 (r247476) +++ projects/calloutng/sys/sys/types.h Thu Feb 28 17:30:19 2013 (r247477) @@ -188,6 +188,8 @@ typedef __rlim_t rlim_t; /* resource li #define _RLIM_T_DECLARED #endif +typedef __int64_t sbintime_t; + typedef __segsz_t segsz_t; /* segment size (in pages) */ #ifndef _SIZE_T_DECLARED From owner-svn-src-projects@FreeBSD.ORG Thu Feb 28 22:31:26 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id DABFA42E; Thu, 28 Feb 2013 22:31:26 +0000 (UTC) (envelope-from benno@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id C984B777; Thu, 28 Feb 2013 22:31:26 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r1SMVQje076065; Thu, 28 Feb 2013 22:31:26 GMT (envelope-from benno@svn.freebsd.org) Received: (from benno@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r1SMVQSW076064; Thu, 28 Feb 2013 22:31:26 GMT (envelope-from benno@svn.freebsd.org) Message-Id: <201302282231.r1SMVQSW076064@svn.freebsd.org> From: Benno Rice Date: Thu, 28 Feb 2013 22:31:26 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247504 - projects/uefi/sys/boot/amd64/efi X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 28 Feb 2013 22:31:26 -0000 Author: benno Date: Thu Feb 28 22:31:26 2013 New Revision: 247504 URL: http://svnweb.freebsd.org/changeset/base/247504 Log: Make this more palatable to clang/llvm. Modified: projects/uefi/sys/boot/amd64/efi/amd64_tramp.S Modified: projects/uefi/sys/boot/amd64/efi/amd64_tramp.S ============================================================================== --- projects/uefi/sys/boot/amd64/efi/amd64_tramp.S Thu Feb 28 21:58:07 2013 (r247503) +++ projects/uefi/sys/boot/amd64/efi/amd64_tramp.S Thu Feb 28 22:31:26 2013 (r247504) @@ -16,7 +16,7 @@ amd64_tramp: movq %r8,%r14 movq %r9,%r15 - call %rsi /* Call copy_finish so we're all ready to go. */ + callq *%rsi /* Call copy_finish so we're all ready to go. */ pushq %r12 /* Push kernend. */ salq $32,%r13 /* Shift modulep and push it. */ From owner-svn-src-projects@FreeBSD.ORG Fri Mar 1 00:16:02 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 5DD296E4; Fri, 1 Mar 2013 00:16:02 +0000 (UTC) (envelope-from benno@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 31760A81; Fri, 1 Mar 2013 00:16:02 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r210G2Vm007646; Fri, 1 Mar 2013 00:16:02 GMT (envelope-from benno@svn.freebsd.org) Received: (from benno@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r210Fwc4007612; Fri, 1 Mar 2013 00:15:58 GMT (envelope-from benno@svn.freebsd.org) Message-Id: <201303010015.r210Fwc4007612@svn.freebsd.org> From: Benno Rice Date: Fri, 1 Mar 2013 00:15:58 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247510 - in projects/uefi: . cddl/contrib/opensolaris/cmd/zdb contrib/binutils/gas/config contrib/openbsm/bin/auditdistd include lib/libc/stdio libexec/rtld-elf sbin/tunefs share/man/m... X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 01 Mar 2013 00:16:02 -0000 Author: benno Date: Fri Mar 1 00:15:58 2013 New Revision: 247510 URL: http://svnweb.freebsd.org/changeset/base/247510 Log: MFH Added: projects/uefi/lib/libc/stdio/open_memstream.3 - copied unchanged from r247509, head/lib/libc/stdio/open_memstream.3 projects/uefi/lib/libc/stdio/open_memstream.c - copied unchanged from r247509, head/lib/libc/stdio/open_memstream.c projects/uefi/lib/libc/stdio/open_wmemstream.c - copied unchanged from r247509, head/lib/libc/stdio/open_wmemstream.c projects/uefi/sys/arm/broadcom/bcm2835/bcm2835_dma.c - copied unchanged from r247509, head/sys/arm/broadcom/bcm2835/bcm2835_dma.c projects/uefi/sys/arm/broadcom/bcm2835/bcm2835_dma.h - copied unchanged from r247509, head/sys/arm/broadcom/bcm2835/bcm2835_dma.h projects/uefi/tools/regression/lib/libc/stdio/test-open_memstream.c - copied unchanged from r247509, head/tools/regression/lib/libc/stdio/test-open_memstream.c projects/uefi/tools/regression/lib/libc/stdio/test-open_memstream.t - copied unchanged from r247509, head/tools/regression/lib/libc/stdio/test-open_memstream.t projects/uefi/tools/regression/lib/libc/stdio/test-open_wmemstream.c - copied unchanged from r247509, head/tools/regression/lib/libc/stdio/test-open_wmemstream.c projects/uefi/tools/regression/lib/libc/stdio/test-open_wmemstream.t - copied unchanged from r247509, head/tools/regression/lib/libc/stdio/test-open_wmemstream.t Modified: projects/uefi/UPDATING projects/uefi/cddl/contrib/opensolaris/cmd/zdb/zdb.c projects/uefi/contrib/binutils/gas/config/tc-arm.c projects/uefi/contrib/openbsm/bin/auditdistd/sender.c projects/uefi/include/stdio.h projects/uefi/include/wchar.h projects/uefi/lib/libc/stdio/Makefile.inc projects/uefi/lib/libc/stdio/Symbol.map projects/uefi/libexec/rtld-elf/map_object.c projects/uefi/sbin/tunefs/tunefs.c projects/uefi/share/man/man4/arcmsr.4 projects/uefi/share/man/man9/eventtimers.9 projects/uefi/sys/amd64/amd64/machdep.c projects/uefi/sys/amd64/amd64/pmap.c projects/uefi/sys/arm/allwinner/timer.c projects/uefi/sys/arm/arm/mpcore_timer.c projects/uefi/sys/arm/broadcom/bcm2835/bcm2835_sdhci.c projects/uefi/sys/arm/broadcom/bcm2835/bcm2835_systimer.c projects/uefi/sys/arm/broadcom/bcm2835/files.bcm2835 projects/uefi/sys/arm/econa/econa_machdep.c projects/uefi/sys/arm/lpc/lpc_timer.c projects/uefi/sys/arm/mv/timer.c projects/uefi/sys/arm/s3c2xx0/s3c24x0_machdep.c projects/uefi/sys/arm/ti/am335x/am335x_dmtimer.c projects/uefi/sys/arm/ti/ti_gpio.c projects/uefi/sys/arm/versatile/sp804.c projects/uefi/sys/arm/xscale/i80321/ep80219_machdep.c projects/uefi/sys/arm/xscale/i80321/iq31244_machdep.c projects/uefi/sys/arm/xscale/i8134x/crb_machdep.c projects/uefi/sys/arm/xscale/ixp425/avila_machdep.c projects/uefi/sys/arm/xscale/pxa/pxa_machdep.c projects/uefi/sys/boot/common/load_elf.c projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/metaslab.c projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/space_map.c projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/metaslab_impl.h projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/space_map.h projects/uefi/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c projects/uefi/sys/dev/acpica/acpi_cpu.c projects/uefi/sys/dev/acpica/acpi_hpet.c projects/uefi/sys/dev/arcmsr/arcmsr.c projects/uefi/sys/dev/arcmsr/arcmsr.h projects/uefi/sys/dev/ath/if_ath_tx_ht.c projects/uefi/sys/dev/ath/if_athrate.h projects/uefi/sys/dev/mfi/mfi.c projects/uefi/sys/dev/pci/pci.c projects/uefi/sys/dev/sdhci/sdhci.c projects/uefi/sys/dev/sdhci/sdhci.h projects/uefi/sys/dev/sdhci/sdhci_if.m projects/uefi/sys/dev/watchdog/watchdog.c projects/uefi/sys/i386/i386/machdep.c projects/uefi/sys/i386/i386/pmap.c projects/uefi/sys/i386/xen/clock.c projects/uefi/sys/i386/xen/pmap.c projects/uefi/sys/ia64/ia64/clock.c projects/uefi/sys/ia64/ia64/machdep.c projects/uefi/sys/kern/kern_clocksource.c projects/uefi/sys/kern/kern_et.c projects/uefi/sys/kern/kern_timeout.c projects/uefi/sys/kern/vfs_bio.c projects/uefi/sys/mips/mips/tick.c projects/uefi/sys/mips/nlm/tick.c projects/uefi/sys/mips/rmi/tick.c projects/uefi/sys/modules/ixgbe/Makefile projects/uefi/sys/netinet/sctputil.c projects/uefi/sys/pc98/pc98/machdep.c projects/uefi/sys/powerpc/aim/clock.c projects/uefi/sys/powerpc/aim/mmu_oea.c projects/uefi/sys/powerpc/aim/mmu_oea64.c projects/uefi/sys/powerpc/booke/clock.c projects/uefi/sys/powerpc/booke/pmap.c projects/uefi/sys/powerpc/powerpc/cpu.c projects/uefi/sys/powerpc/ps3/platform_ps3.c projects/uefi/sys/powerpc/wii/platform_wii.c projects/uefi/sys/sparc64/sparc64/pmap.c projects/uefi/sys/sparc64/sparc64/tick.c projects/uefi/sys/sys/proc.h projects/uefi/sys/sys/systm.h projects/uefi/sys/sys/time.h projects/uefi/sys/sys/timeet.h projects/uefi/sys/sys/types.h projects/uefi/sys/sys/vnode.h projects/uefi/sys/sys/watchdog.h projects/uefi/sys/ufs/ffs/ffs_alloc.c projects/uefi/sys/ufs/ffs/ffs_softdep.c projects/uefi/sys/ufs/ffs/ffs_vfsops.c projects/uefi/sys/ufs/ufs/ufs_quota.c projects/uefi/sys/vm/vm_object.h projects/uefi/sys/x86/isa/atrtc.c projects/uefi/sys/x86/isa/clock.c projects/uefi/sys/x86/x86/local_apic.c projects/uefi/tools/regression/lib/libc/stdio/Makefile projects/uefi/tools/test/iconv/tablegen/cmp.sh projects/uefi/usr.bin/dc/dc.c projects/uefi/usr.sbin/watchdogd/watchdogd.8 projects/uefi/usr.sbin/watchdogd/watchdogd.c Directory Properties: projects/uefi/ (props changed) projects/uefi/cddl/contrib/opensolaris/ (props changed) projects/uefi/contrib/binutils/ (props changed) projects/uefi/contrib/openbsm/ (props changed) projects/uefi/lib/libc/ (props changed) projects/uefi/sbin/ (props changed) projects/uefi/share/man/man4/ (props changed) projects/uefi/sys/ (props changed) projects/uefi/sys/boot/ (props changed) projects/uefi/sys/cddl/contrib/opensolaris/ (props changed) Modified: projects/uefi/UPDATING ============================================================================== --- projects/uefi/UPDATING Thu Feb 28 23:45:41 2013 (r247509) +++ projects/uefi/UPDATING Fri Mar 1 00:15:58 2013 (r247510) @@ -26,6 +26,13 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 10 disable the most expensive debugging functionality run "ln -s 'abort:false,junk:false' /etc/malloc.conf".) +20130208: + A new compression method (lz4) has been merged to -HEAD. Please + refer to zpool-features(7) for more information. + + Please refer to the "ZFS notes" section of this file for information + on upgrading boot ZFS pools. + 20130129: A BSD-licensed patch(1) variant has been added and is installed as bsdpatch, being the GNU version the default patch. @@ -39,8 +46,8 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 10 unlikely event that -M was the last option on the command line and the command line contained at least two files and a target directory the first file will have logs appended to it. The -M - option served little practical purpose in the last decade so it's - used expected to be extremely rare. + option served little practical purpose in the last decade so its + use is expected to be extremely rare. 20121223: After switching to Clang as the default compiler some users of ZFS Modified: projects/uefi/cddl/contrib/opensolaris/cmd/zdb/zdb.c ============================================================================== --- projects/uefi/cddl/contrib/opensolaris/cmd/zdb/zdb.c Thu Feb 28 23:45:41 2013 (r247509) +++ projects/uefi/cddl/contrib/opensolaris/cmd/zdb/zdb.c Fri Mar 1 00:15:58 2013 (r247510) @@ -545,7 +545,7 @@ static void dump_metaslab_stats(metaslab_t *msp) { char maxbuf[32]; - space_map_t *sm = &msp->ms_map; + space_map_t *sm = msp->ms_map; avl_tree_t *t = sm->sm_pp_root; int free_pct = sm->sm_space * 100 / sm->sm_size; @@ -561,7 +561,7 @@ dump_metaslab(metaslab_t *msp) { vdev_t *vd = msp->ms_group->mg_vd; spa_t *spa = vd->vdev_spa; - space_map_t *sm = &msp->ms_map; + space_map_t *sm = msp->ms_map; space_map_obj_t *smo = &msp->ms_smo; char freebuf[32]; @@ -2160,11 +2160,11 @@ zdb_leak_init(spa_t *spa, zdb_cb_t *zcb) for (int m = 0; m < vd->vdev_ms_count; m++) { metaslab_t *msp = vd->vdev_ms[m]; mutex_enter(&msp->ms_lock); - space_map_unload(&msp->ms_map); - VERIFY(space_map_load(&msp->ms_map, + space_map_unload(msp->ms_map); + VERIFY(space_map_load(msp->ms_map, &zdb_space_map_ops, SM_ALLOC, &msp->ms_smo, spa->spa_meta_objset) == 0); - msp->ms_map.sm_ppd = vd; + msp->ms_map->sm_ppd = vd; mutex_exit(&msp->ms_lock); } } @@ -2187,7 +2187,7 @@ zdb_leak_fini(spa_t *spa) for (int m = 0; m < vd->vdev_ms_count; m++) { metaslab_t *msp = vd->vdev_ms[m]; mutex_enter(&msp->ms_lock); - space_map_unload(&msp->ms_map); + space_map_unload(msp->ms_map); mutex_exit(&msp->ms_lock); } } Modified: projects/uefi/contrib/binutils/gas/config/tc-arm.c ============================================================================== --- projects/uefi/contrib/binutils/gas/config/tc-arm.c Thu Feb 28 23:45:41 2013 (r247509) +++ projects/uefi/contrib/binutils/gas/config/tc-arm.c Fri Mar 1 00:15:58 2013 (r247510) @@ -3079,6 +3079,7 @@ s_arm_unwind_fnend (int ignored ATTRIBUT record_alignment (now_seg, 2); ptr = frag_more (8); + memset(ptr, 0, 8); where = frag_now_fix () - 8; /* Self relative offset of the function start. */ @@ -17350,6 +17351,7 @@ create_unwind_entry (int have_data) /* Allocate the table entry. */ ptr = frag_more ((size << 2) + 4); + memset(ptr, 0, (size << 2) + 4); where = frag_now_fix () - ((size << 2) + 4); switch (unwind.personality_index) Modified: projects/uefi/contrib/openbsm/bin/auditdistd/sender.c ============================================================================== --- projects/uefi/contrib/openbsm/bin/auditdistd/sender.c Thu Feb 28 23:45:41 2013 (r247509) +++ projects/uefi/contrib/openbsm/bin/auditdistd/sender.c Fri Mar 1 00:15:58 2013 (r247510) @@ -394,6 +394,7 @@ read_thread_wait(void) mtx_lock(&adist_remote_mtx); if (adhost->adh_reset) { +reset: adhost->adh_reset = false; if (trail_filefd(adist_trail) != -1) trail_close(adist_trail); @@ -408,6 +409,14 @@ read_thread_wait(void) while (trail_filefd(adist_trail) == -1) { newfile = true; wait_for_dir(); + /* + * We may have been disconnected and reconnected in the + * meantime, check if reset is set. + */ + mtx_lock(&adist_remote_mtx); + if (adhost->adh_reset) + goto reset; + mtx_unlock(&adist_remote_mtx); if (trail_filefd(adist_trail) == -1) trail_next(adist_trail); } Modified: projects/uefi/include/stdio.h ============================================================================== --- projects/uefi/include/stdio.h Thu Feb 28 23:45:41 2013 (r247509) +++ projects/uefi/include/stdio.h Fri Mar 1 00:15:58 2013 (r247510) @@ -346,6 +346,7 @@ char *tempnam(const char *, const char * FILE *fmemopen(void * __restrict, size_t, const char * __restrict); ssize_t getdelim(char ** __restrict, size_t * __restrict, int, FILE * __restrict); +FILE *open_memstream(char **, size_t *); int renameat(int, const char *, int, const char *); int vdprintf(int, const char * __restrict, __va_list); Modified: projects/uefi/include/wchar.h ============================================================================== --- projects/uefi/include/wchar.h Thu Feb 28 23:45:41 2013 (r247509) +++ projects/uefi/include/wchar.h Fri Mar 1 00:15:58 2013 (r247510) @@ -207,6 +207,7 @@ int wcwidth(wchar_t); #if __POSIX_VISIBLE >= 200809 || __BSD_VISIBLE size_t mbsnrtowcs(wchar_t * __restrict, const char ** __restrict, size_t, size_t, mbstate_t * __restrict); +FILE *open_wmemstream(wchar_t **, size_t *); wchar_t *wcpcpy(wchar_t * __restrict, const wchar_t * __restrict); wchar_t *wcpncpy(wchar_t * __restrict, const wchar_t * __restrict, size_t); wchar_t *wcsdup(const wchar_t *) __malloc_like; Modified: projects/uefi/lib/libc/stdio/Makefile.inc ============================================================================== --- projects/uefi/lib/libc/stdio/Makefile.inc Thu Feb 28 23:45:41 2013 (r247509) +++ projects/uefi/lib/libc/stdio/Makefile.inc Fri Mar 1 00:15:58 2013 (r247510) @@ -14,6 +14,7 @@ SRCS+= _flock_stub.c asprintf.c clrerr.c ftell.c funopen.c fvwrite.c fwalk.c fwide.c fwprintf.c fwscanf.c \ fwrite.c getc.c getchar.c getdelim.c getline.c \ gets.c getw.c getwc.c getwchar.c makebuf.c mktemp.c \ + open_memstream.c open_wmemstream.c \ perror.c printf.c printf-pos.c putc.c putchar.c \ puts.c putw.c putwc.c putwchar.c \ refill.c remove.c rewind.c rget.c scanf.c setbuf.c setbuffer.c \ @@ -36,7 +37,7 @@ MAN+= fclose.3 ferror.3 fflush.3 fgetln. flockfile.3 \ fopen.3 fputs.3 \ fputws.3 fread.3 fseek.3 funopen.3 fwide.3 getc.3 \ - getline.3 getwc.3 mktemp.3 \ + getline.3 getwc.3 mktemp.3 open_memstream.3 \ printf.3 printf_l.3 putc.3 putwc.3 remove.3 scanf.3 scanf_l.3 setbuf.3 \ stdio.3 tmpnam.3 \ ungetc.3 ungetwc.3 wprintf.3 wscanf.3 @@ -60,6 +61,7 @@ MLINKS+=getc.3 fgetc.3 getc.3 getc_unloc MLINKS+=getline.3 getdelim.3 MLINKS+=getwc.3 fgetwc.3 getwc.3 getwchar.3 MLINKS+=mktemp.3 mkdtemp.3 mktemp.3 mkstemp.3 mktemp.3 mkstemps.3 +MLINKS+=open_memstream.3 open_wmemstream.3 MLINKS+=printf.3 asprintf.3 printf.3 dprintf.3 printf.3 fprintf.3 \ printf.3 snprintf.3 printf.3 sprintf.3 \ printf.3 vasprintf.3 printf.3 vdprintf.3 \ Modified: projects/uefi/lib/libc/stdio/Symbol.map ============================================================================== --- projects/uefi/lib/libc/stdio/Symbol.map Thu Feb 28 23:45:41 2013 (r247509) +++ projects/uefi/lib/libc/stdio/Symbol.map Fri Mar 1 00:15:58 2013 (r247510) @@ -156,6 +156,8 @@ FBSD_1.3 { putwc_l; putwchar_l; fmemopen; + open_memstream; + open_wmemstream; }; FBSDprivate_1.0 { Copied: projects/uefi/lib/libc/stdio/open_memstream.3 (from r247509, head/lib/libc/stdio/open_memstream.3) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/uefi/lib/libc/stdio/open_memstream.3 Fri Mar 1 00:15:58 2013 (r247510, copy of r247509, head/lib/libc/stdio/open_memstream.3) @@ -0,0 +1,155 @@ +.\" Copyright (c) 2013 Advanced Computing Technologies LLC +.\" Written by: John H. Baldwin +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" $FreeBSD$ +.\" +.Dd February 27, 2013 +.Dt OPEN_MEMSTREAM 3 +.Os +.Sh NAME +.Nm open_memstream , +.Nm open_wmemstream +.Nd dynamic memory buffer stream open functions +.Sh LIBRARY +.Lb libc +.Sh SYNOPSIS +.In stdio.h +.Ft FILE * +.Fn open_memstream "char **bufp" "size_t **sizep" +.In wchar.h +.Ft FILE * +.Fn open_wmemstream "wchar_t **bufp" "size_t **sizep" +.Sh DESCRIPTION +The +.Fn open_memstream +and +.Fn open_wmemstream +functions create a write-only, seekable stream backed by a dynamically +allocated memory buffer. +The +.Fn open_memstream +function creates a byte-oriented stream, +while the +.Fn open_wmemstream +function creates a wide-oriented stream. +.Pp +Each stream maintains a current position and size. +Initially, +the position and size are set to zero. +Each write begins at the current position and advances it the number of +successfully written bytes for +.Fn open_memstream +or wide characters for +.Fn open_wmemstream . +If a write moves the current position beyond the length of the buffer, +the length of the buffer is extended and a null character is appended to the +buffer. +.Pp +A stream's buffer always contains a null character at the end of the buffer +that is not included in the current length. +.Pp +If a stream's current position is moved beyond the current length via a +seek operation and a write is performed, +the characters between the current length and the current position are filled +with null characters before the write is performed. +.Pp +After a successful call to +.Xr fclose 3 +or +.Xr fflush 3 , +the pointer referenced by +.Fa bufp +will contain the start of the memory buffer and the variable referenced by +.Fa sizep +will contain the smaller of the current position and the current buffer length. +.Pp +After a successful call to +.Xr fflush 3, +the pointer referenced by +.Fa bufp +and the variable referenced by +.Fa sizep +are only valid until the next write operation or a call to +.Xr fclose 3. +.Pp +Once a stream is closed, +the allocated buffer referenced by +.Fa bufp +should be released via a call to +.Xr free 3 +when it is no longer needed. +.Sh IMPLEMENTATION NOTES +Internally all I/O streams are effectively byte-oriented, +so using wide-oriented operations to write to a stream opened via +.Fn open_wmemstream +results in wide characters being expanded to a stream of multibyte characters +in stdio's internal buffers. +These multibyte characters are then converted back to wide characters when +written into the stream. +As a result, +the wide-oriented streams maintain an internal multibyte character conversion +state that is cleared on any seek opertion that changes the current position. +This should have no effect as long as wide-oriented output operations are used +on a wide-oriented stream. +.Sh RETURN VALUES +Upon successful completion, +.Fn open_memstream +and +.Fn open_wmemstream +return a +.Tn FILE +pointer. +Otherwise, +.Dv NULL +is returned and the global variable +.Va errno +is set to indicate the error. +.Sh ERRORS +.Bl -tag -width Er +.It Bq Er EINVAL +The +.Fa bufp +or +.Fa sizep +argument was +.Dv NULL . +.It Bq Er ENOMEM +Memory for the stream or buffer could not be allocated. +.El +.Sh SEE ALSO +.Xr fclose 3 , +.Xr fflush 3 , +.Xr fopen 3 , +.Xr free 3 , +.Xr fseek 3 , +.Xr sbuf 3 , +.Xr stdio 3 +.Sh STANDARDS +The +.Fn open_memstream +and +.Fn open_wmemstream +functions conform to +.St -p1003.1-2008 . Copied: projects/uefi/lib/libc/stdio/open_memstream.c (from r247509, head/lib/libc/stdio/open_memstream.c) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/uefi/lib/libc/stdio/open_memstream.c Fri Mar 1 00:15:58 2013 (r247510, copy of r247509, head/lib/libc/stdio/open_memstream.c) @@ -0,0 +1,209 @@ +/*- + * Copyright (c) 2013 Advanced Computing Technologies LLC + * Written by: John H. Baldwin + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include +__FBSDID("$FreeBSD$"); + +#include "namespace.h" +#include +#include +#include +#include +#include +#include +#include +#include "un-namespace.h" + +/* XXX: There is no FPOS_MAX. This assumes fpos_t is an off_t. */ +#define FPOS_MAX OFF_MAX + +struct memstream { + char **bufp; + size_t *sizep; + ssize_t len; + fpos_t offset; +}; + +static int +memstream_grow(struct memstream *ms, fpos_t newoff) +{ + char *buf; + ssize_t newsize; + + if (newoff < 0 || newoff >= SSIZE_MAX) + newsize = SSIZE_MAX - 1; + else + newsize = newoff; + if (newsize > ms->len) { + buf = realloc(*ms->bufp, newsize + 1); + if (buf != NULL) { +#ifdef DEBUG + fprintf(stderr, "MS: %p growing from %zd to %zd\n", + ms, ms->len, newsize); +#endif + memset(buf + ms->len + 1, 0, newsize - ms->len); + *ms->bufp = buf; + ms->len = newsize; + return (1); + } + return (0); + } + return (1); +} + +static void +memstream_update(struct memstream *ms) +{ + + assert(ms->len >= 0 && ms->offset >= 0); + *ms->sizep = ms->len < ms->offset ? ms->len : ms->offset; +} + +static int +memstream_write(void *cookie, const char *buf, int len) +{ + struct memstream *ms; + ssize_t tocopy; + + ms = cookie; + if (!memstream_grow(ms, ms->offset + len)) + return (-1); + tocopy = ms->len - ms->offset; + if (len < tocopy) + tocopy = len; + memcpy(*ms->bufp + ms->offset, buf, tocopy); + ms->offset += tocopy; + memstream_update(ms); +#ifdef DEBUG + fprintf(stderr, "MS: write(%p, %d) = %zd\n", ms, len, tocopy); +#endif + return (tocopy); +} + +static fpos_t +memstream_seek(void *cookie, fpos_t pos, int whence) +{ + struct memstream *ms; +#ifdef DEBUG + fpos_t old; +#endif + + ms = cookie; +#ifdef DEBUG + old = ms->offset; +#endif + switch (whence) { + case SEEK_SET: + /* _fseeko() checks for negative offsets. */ + assert(pos >= 0); + ms->offset = pos; + break; + case SEEK_CUR: + /* This is only called by _ftello(). */ + assert(pos == 0); + break; + case SEEK_END: + if (pos < 0) { + if (pos + ms->len < 0) { +#ifdef DEBUG + fprintf(stderr, + "MS: bad SEEK_END: pos %jd, len %zd\n", + (intmax_t)pos, ms->len); +#endif + errno = EINVAL; + return (-1); + } + } else { + if (FPOS_MAX - ms->len < pos) { +#ifdef DEBUG + fprintf(stderr, + "MS: bad SEEK_END: pos %jd, len %zd\n", + (intmax_t)pos, ms->len); +#endif + errno = EOVERFLOW; + return (-1); + } + } + ms->offset = ms->len + pos; + break; + } + memstream_update(ms); +#ifdef DEBUG + fprintf(stderr, "MS: seek(%p, %jd, %d) %jd -> %jd\n", ms, (intmax_t)pos, + whence, (intmax_t)old, (intmax_t)ms->offset); +#endif + return (ms->offset); +} + +static int +memstream_close(void *cookie) +{ + + free(cookie); + return (0); +} + +FILE * +open_memstream(char **bufp, size_t *sizep) +{ + struct memstream *ms; + int save_errno; + FILE *fp; + + if (bufp == NULL || sizep == NULL) { + errno = EINVAL; + return (NULL); + } + *bufp = calloc(1, 1); + if (*bufp == NULL) + return (NULL); + ms = malloc(sizeof(*ms)); + if (ms == NULL) { + save_errno = errno; + free(*bufp); + *bufp = NULL; + errno = save_errno; + return (NULL); + } + ms->bufp = bufp; + ms->sizep = sizep; + ms->len = 0; + ms->offset = 0; + memstream_update(ms); + fp = funopen(ms, NULL, memstream_write, memstream_seek, + memstream_close); + if (fp == NULL) { + save_errno = errno; + free(ms); + free(*bufp); + *bufp = NULL; + errno = save_errno; + return (NULL); + } + fwide(fp, -1); + return (fp); +} Copied: projects/uefi/lib/libc/stdio/open_wmemstream.c (from r247509, head/lib/libc/stdio/open_wmemstream.c) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/uefi/lib/libc/stdio/open_wmemstream.c Fri Mar 1 00:15:58 2013 (r247510, copy of r247509, head/lib/libc/stdio/open_wmemstream.c) @@ -0,0 +1,271 @@ +/*- + * Copyright (c) 2013 Advanced Computing Technologies LLC + * Written by: John H. Baldwin + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include +__FBSDID("$FreeBSD$"); + +#include "namespace.h" +#include +#include +#include +#include +#include +#include +#include +#include "un-namespace.h" + +/* XXX: There is no FPOS_MAX. This assumes fpos_t is an off_t. */ +#define FPOS_MAX OFF_MAX + +struct wmemstream { + wchar_t **bufp; + size_t *sizep; + ssize_t len; + fpos_t offset; + mbstate_t mbstate; +}; + +static int +wmemstream_grow(struct wmemstream *ms, fpos_t newoff) +{ + wchar_t *buf; + ssize_t newsize; + + if (newoff < 0 || newoff >= SSIZE_MAX / sizeof(wchar_t)) + newsize = SSIZE_MAX / sizeof(wchar_t) - 1; + else + newsize = newoff; + if (newsize > ms->len) { + buf = realloc(*ms->bufp, (newsize + 1) * sizeof(wchar_t)); + if (buf != NULL) { +#ifdef DEBUG + fprintf(stderr, "WMS: %p growing from %zd to %zd\n", + ms, ms->len, newsize); +#endif + wmemset(buf + ms->len + 1, 0, newsize - ms->len); + *ms->bufp = buf; + ms->len = newsize; + return (1); + } + return (0); + } + return (1); +} + +static void +wmemstream_update(struct wmemstream *ms) +{ + + assert(ms->len >= 0 && ms->offset >= 0); + *ms->sizep = ms->len < ms->offset ? ms->len : ms->offset; +} + +/* + * Based on a starting multibyte state and an input buffer, determine + * how many wchar_t's would be output. This doesn't use mbsnrtowcs() + * so that it can handle embedded null characters. + */ +static size_t +wbuflen(const mbstate_t *state, const char *buf, int len) +{ + mbstate_t lenstate; + size_t charlen, count; + + count = 0; + lenstate = *state; + while (len > 0) { + charlen = mbrlen(buf, len, &lenstate); + if (charlen == (size_t)-1) + return (-1); + if (charlen == (size_t)-2) + break; + if (charlen == 0) + /* XXX: Not sure how else to handle this. */ + charlen = 1; + len -= charlen; + buf += charlen; + count++; + } + return (count); +} + +static int +wmemstream_write(void *cookie, const char *buf, int len) +{ + struct wmemstream *ms; + ssize_t consumed, wlen; + size_t charlen; + + ms = cookie; + wlen = wbuflen(&ms->mbstate, buf, len); + if (wlen < 0) { + errno = EILSEQ; + return (-1); + } + if (!wmemstream_grow(ms, ms->offset + wlen)) + return (-1); + + /* + * This copies characters one at a time rather than using + * mbsnrtowcs() so it can properly handle embedded null + * characters. + */ + consumed = 0; + while (len > 0 && ms->offset < ms->len) { + charlen = mbrtowc(*ms->bufp + ms->offset, buf, len, + &ms->mbstate); + if (charlen == (size_t)-1) { + if (consumed == 0) { + errno = EILSEQ; + return (-1); + } + /* Treat it as a successful short write. */ + break; + } + if (charlen == 0) + /* XXX: Not sure how else to handle this. */ + charlen = 1; + if (charlen == (size_t)-2) { + consumed += len; + len = 0; + } else { + consumed += charlen; + buf += charlen; + len -= charlen; + ms->offset++; + } + } + wmemstream_update(ms); +#ifdef DEBUG + fprintf(stderr, "WMS: write(%p, %d) = %zd\n", ms, len, consumed); +#endif + return (consumed); +} + +static fpos_t +wmemstream_seek(void *cookie, fpos_t pos, int whence) +{ + struct wmemstream *ms; + fpos_t old; + + ms = cookie; + old = ms->offset; + switch (whence) { + case SEEK_SET: + /* _fseeko() checks for negative offsets. */ + assert(pos >= 0); + ms->offset = pos; + break; + case SEEK_CUR: + /* This is only called by _ftello(). */ + assert(pos == 0); + break; + case SEEK_END: + if (pos < 0) { + if (pos + ms->len < 0) { +#ifdef DEBUG + fprintf(stderr, + "WMS: bad SEEK_END: pos %jd, len %zd\n", + (intmax_t)pos, ms->len); +#endif + errno = EINVAL; + return (-1); + } + } else { + if (FPOS_MAX - ms->len < pos) { +#ifdef DEBUG + fprintf(stderr, + "WMS: bad SEEK_END: pos %jd, len %zd\n", + (intmax_t)pos, ms->len); +#endif + errno = EOVERFLOW; + return (-1); + } + } + ms->offset = ms->len + pos; + break; + } + /* Reset the multibyte state if a seek changes the position. */ + if (ms->offset != old) + memset(&ms->mbstate, 0, sizeof(ms->mbstate)); + wmemstream_update(ms); +#ifdef DEBUG + fprintf(stderr, "WMS: seek(%p, %jd, %d) %jd -> %jd\n", ms, + (intmax_t)pos, whence, (intmax_t)old, (intmax_t)ms->offset); +#endif + return (ms->offset); +} + +static int +wmemstream_close(void *cookie) +{ + + free(cookie); + return (0); +} + +FILE * +open_wmemstream(wchar_t **bufp, size_t *sizep) +{ + struct wmemstream *ms; + int save_errno; + FILE *fp; + + if (bufp == NULL || sizep == NULL) { + errno = EINVAL; + return (NULL); + } + *bufp = calloc(1, sizeof(wchar_t)); + if (*bufp == NULL) + return (NULL); + ms = malloc(sizeof(*ms)); + if (ms == NULL) { + save_errno = errno; + free(*bufp); + *bufp = NULL; + errno = save_errno; + return (NULL); + } + ms->bufp = bufp; + ms->sizep = sizep; + ms->len = 0; + ms->offset = 0; + memset(&ms->mbstate, 0, sizeof(mbstate_t)); + wmemstream_update(ms); + fp = funopen(ms, NULL, wmemstream_write, wmemstream_seek, + wmemstream_close); + if (fp == NULL) { + save_errno = errno; + free(ms); + free(*bufp); + *bufp = NULL; + errno = save_errno; + return (NULL); + } + fwide(fp, 1); + return (fp); +} Modified: projects/uefi/libexec/rtld-elf/map_object.c ============================================================================== --- projects/uefi/libexec/rtld-elf/map_object.c Thu Feb 28 23:45:41 2013 (r247509) +++ projects/uefi/libexec/rtld-elf/map_object.c Fri Mar 1 00:15:58 2013 (r247510) @@ -175,7 +175,7 @@ map_object(int fd, const char *path, con base_vaddr = trunc_page(segs[0]->p_vaddr); base_vlimit = round_page(segs[nsegs]->p_vaddr + segs[nsegs]->p_memsz); mapsize = base_vlimit - base_vaddr; - base_addr = hdr->e_type == ET_EXEC ? (caddr_t) base_vaddr : NULL; + base_addr = (caddr_t) base_vaddr; mapbase = mmap(base_addr, mapsize, PROT_NONE, MAP_ANON | MAP_PRIVATE | MAP_NOCORE, -1, 0); Modified: projects/uefi/sbin/tunefs/tunefs.c ============================================================================== --- projects/uefi/sbin/tunefs/tunefs.c Thu Feb 28 23:45:41 2013 (r247509) +++ projects/uefi/sbin/tunefs/tunefs.c Fri Mar 1 00:15:58 2013 (r247510) @@ -671,7 +671,7 @@ journal_findfile(void) return (ino); } } else { - if ((off_t)dp1->di_size >= lblktosize(&sblock, NDADDR)) { + if ((off_t)dp2->di_size >= lblktosize(&sblock, NDADDR)) { warnx("ROOTINO extends beyond direct blocks."); return (-1); } Modified: projects/uefi/share/man/man4/arcmsr.4 ============================================================================== --- projects/uefi/share/man/man4/arcmsr.4 Thu Feb 28 23:45:41 2013 (r247509) +++ projects/uefi/share/man/man4/arcmsr.4 Fri Mar 1 00:15:58 2013 (r247510) @@ -24,7 +24,7 @@ .\" .\" $FreeBSD$ .\" -.Dd December 18, 2012 +.Dd February 27, 2013 .Dt ARCMSR 4 .Os .Sh NAME @@ -108,6 +108,8 @@ ARC-1222 .It ARC-1223 .It +ARC-1224 +.It ARC-1230 .It ARC-1231 Modified: projects/uefi/share/man/man9/eventtimers.9 ============================================================================== --- projects/uefi/share/man/man9/eventtimers.9 Thu Feb 28 23:45:41 2013 (r247509) +++ projects/uefi/share/man/man9/eventtimers.9 Fri Mar 1 00:15:58 2013 (r247510) @@ -1,5 +1,5 @@ .\" -.\" Copyright (c) 2011 Alexander Motin +.\" Copyright (c) 2011-2013 Alexander Motin .\" All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without @@ -24,7 +24,7 @@ .\" .\" $FreeBSD$ .\" -.Dd December 14, 2011 +.Dd February 25, 2013 .Dt EVENTTIMERS 9 .Os .Sh NAME @@ -36,7 +36,7 @@ struct eventtimer; typedef int et_start_t(struct eventtimer *et, - struct bintime *first, struct bintime *period); + sbintime_t first, sbintime_t period); typedef int et_stop_t(struct eventtimer *et); typedef void et_event_cb_t(struct eventtimer *et, void *arg); typedef int et_deregister_cb_t(struct eventtimer *et, void *arg); @@ -53,8 +53,8 @@ struct eventtimer { int et_quality; int et_active; uint64_t et_frequency; - struct bintime et_min_period; - struct bintime et_max_period; + sbintime_t et_min_period; + sbintime_t et_max_period; et_start_t *et_start; et_stop_t *et_stop; et_event_cb_t *et_event_cb; @@ -75,7 +75,7 @@ struct eventtimer { .Ft int .Fn et_init "struct eventtimer *et" "et_event_cb_t *event" "et_deregister_cb_t *deregister" "void *arg" .Ft int -.Fn et_start "struct eventtimer *et" "struct bintime *first" "struct bintime *period" +.Fn et_start "struct eventtimer *et" "sbintime_t first" "sbintime_t period" .Ft int .Fn et_stop "struct eventtimer *et" .Ft int Modified: projects/uefi/sys/amd64/amd64/machdep.c ============================================================================== --- projects/uefi/sys/amd64/amd64/machdep.c Thu Feb 28 23:45:41 2013 (r247509) +++ projects/uefi/sys/amd64/amd64/machdep.c Fri Mar 1 00:15:58 2013 (r247510) @@ -692,7 +692,7 @@ cpu_halt(void) halt(); } -void (*cpu_idle_hook)(void) = NULL; /* ACPI idle hook. */ +void (*cpu_idle_hook)(sbintime_t) = NULL; /* ACPI idle hook. */ static int cpu_ident_amdc1e = 0; /* AMD C1E supported. */ static int idle_mwait = 1; /* Use MONITOR/MWAIT for short idle. */ TUNABLE_INT("machdep.idle_mwait", &idle_mwait); @@ -704,7 +704,7 @@ SYSCTL_INT(_machdep, OID_AUTO, idle_mwai #define STATE_SLEEPING 0x2 static void -cpu_idle_acpi(int busy) +cpu_idle_acpi(sbintime_t sbt) { int *state; @@ -716,14 +716,14 @@ cpu_idle_acpi(int busy) if (sched_runnable()) enable_intr(); else if (cpu_idle_hook) - cpu_idle_hook(); + cpu_idle_hook(sbt); else __asm __volatile("sti; hlt"); *state = STATE_RUNNING; } static void -cpu_idle_hlt(int busy) +cpu_idle_hlt(sbintime_t sbt) { int *state; @@ -764,7 +764,7 @@ cpu_idle_hlt(int busy) #define MWAIT_C4 0x30 static void -cpu_idle_mwait(int busy) +cpu_idle_mwait(sbintime_t sbt) { int *state; @@ -787,7 +787,7 @@ cpu_idle_mwait(int busy) } static void -cpu_idle_spin(int busy) +cpu_idle_spin(sbintime_t sbt) { int *state; int i; @@ -836,12 +836,13 @@ cpu_probe_amdc1e(void) } } -void (*cpu_idle_fn)(int) = cpu_idle_acpi; +void (*cpu_idle_fn)(sbintime_t) = cpu_idle_acpi; void cpu_idle(int busy) { uint64_t msr; + sbintime_t sbt = -1; CTR2(KTR_SPARE2, "cpu_idle(%d) at %d", busy, curcpu); @@ -859,7 +860,7 @@ cpu_idle(int busy) /* If we have time - switch timers into idle mode. */ if (!busy) { critical_enter(); - cpu_idleclock(); + sbt = cpu_idleclock(); } /* Apply AMD APIC timer C1E workaround. */ @@ -870,7 +871,7 @@ cpu_idle(int busy) } /* Call main idle method. */ - cpu_idle_fn(busy); + cpu_idle_fn(sbt); /* Switch timers mack into active mode. */ if (!busy) { Modified: projects/uefi/sys/amd64/amd64/pmap.c ============================================================================== --- projects/uefi/sys/amd64/amd64/pmap.c Thu Feb 28 23:45:41 2013 (r247509) +++ projects/uefi/sys/amd64/amd64/pmap.c Fri Mar 1 00:15:58 2013 (r247510) @@ -3487,9 +3487,8 @@ pmap_enter(pmap_t pmap, vm_offset_t va, KASSERT((m->oflags & VPO_UNMANAGED) != 0 || va < kmi.clean_sva || va >= kmi.clean_eva, ("pmap_enter: managed mapping within the clean submap")); - KASSERT((m->oflags & (VPO_UNMANAGED | VPO_BUSY)) != 0 || *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-projects@FreeBSD.ORG Fri Mar 1 02:59:57 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 46D52496; Fri, 1 Mar 2013 02:59:57 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 2266516C; Fri, 1 Mar 2013 02:59:57 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r212xugo057780; Fri, 1 Mar 2013 02:59:56 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r212xuFS057779; Fri, 1 Mar 2013 02:59:56 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201303010259.r212xuFS057779@svn.freebsd.org> From: Alexander Motin Date: Fri, 1 Mar 2013 02:59:56 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247524 - projects/calloutng/sys/kern X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 01 Mar 2013 02:59:57 -0000 Author: mav Date: Fri Mar 1 02:59:56 2013 New Revision: 247524 URL: http://svnweb.freebsd.org/changeset/base/247524 Log: Add statistics to better diagnose and tune callout subsystem parameters. Setting kern.callout_stat sysctl dumps to console statistics for callouts scheduled at that moment alike to this: Scheduled callouts statistic snapshot: Callouts: 69 Buckets/CPU: 32768 Bucket size: 0.000976s C/Bk: med 0 avg 0.000526 max 10 Time: med 1.000000s avg 1580.594786s max 84945.674598s Prec: med 0.250000s avg 106.280672s max 5379.937129s Distribution: buckets time tcum prec pcum 0.007812s 2**3 0 0 2 2 0.015625s 2**4 0 0 2 4 0.031250s 2**5 13 13 3 7 0.062500s 2**6 2 15 15 22 0.125000s 2**7 4 19 1 23 0.250000s 2**8 1 20 13 36 0.500000s 2**9 11 31 11 47 1.000000s 2**10 8 39 1 48 2.000000s 2**11 4 43 3 51 4.000000s 2**12 3 46 4 55 8.000000s 2**13 5 51 1 56 16.000000s 2**14 0 51 2 58 32.000000s 2**15 3 54 1 59 64.000000s 2**16 4 58 2 61 128.000000s 2**17 1 59 3 64 256.000000s 2**18 0 59 2 66 512.000000s 2**19 1 60 2 68 1024.000000s 2**20 4 64 0 68 2048.000000s 2**21 2 66 0 68 4096.000000s 2**22 0 66 1 69 8192.000000s 2**23 2 68 0 69 65536.000000s 2**26 1 69 0 69 It would be very interesting to analyze such dumps from systems with heavy load of different kinds to see how well callout subsystem is tuned for them by default. Modified: projects/calloutng/sys/kern/kern_timeout.c Modified: projects/calloutng/sys/kern/kern_timeout.c ============================================================================== --- projects/calloutng/sys/kern/kern_timeout.c Fri Mar 1 02:26:28 2013 (r247523) +++ projects/calloutng/sys/kern/kern_timeout.c Fri Mar 1 02:59:56 2013 (r247524) @@ -1307,3 +1307,121 @@ adjust_timeout_calltodo(time_change) return; } #endif /* APM_FIXUP_CALLTODO */ + +static int +flssbt(sbintime_t sbt) +{ + + sbt += (uint64_t)sbt >> 1; + if (sizeof(long) >= sizeof(sbintime_t)) + return (flsl(sbt)); + if (sbt >= SBT_1S) + return (flsl(((uint64_t)sbt) >> 32) + 32); + return (flsl(sbt)); +} + +/* + * Dump immediate statistic snapshot of the scheduled callouts. + */ +static int +sysctl_kern_callout_stat(SYSCTL_HANDLER_ARGS) +{ + struct callout *tmp; + struct callout_cpu *cc; + struct callout_tailq *sc; + sbintime_t maxpr, maxt, medpr, medt, now, spr, st, t; + int ct[64], cpr[64], ccpbk[32]; + int error, val, i, count, tcum, pcum, maxc, c, medc; +#ifdef SMP + int cpu; +#endif + + val = 0; + error = sysctl_handle_int(oidp, &val, 0, req); + if (error != 0 || req->newptr == NULL) + return (error); + count = maxc = 0; + st = spr = maxt = maxpr = 0; + bzero(ccpbk, sizeof(ccpbk)); + bzero(ct, sizeof(ct)); + bzero(cpr, sizeof(cpr)); + now = sbinuptime(); +#ifdef SMP + CPU_FOREACH(cpu) { + cc = CC_CPU(cpu); +#else + cc = CC_CPU(timeout_cpu); +#endif + CC_LOCK(cc); + for (i = 0; i < callwheelsize; i++) { + sc = &cc->cc_callwheel[i]; + c = 0; + TAILQ_FOREACH(tmp, sc, c_links.tqe) { + c++; + t = tmp->c_time - now; + if (t < 0) + t = 0; + st += t / SBT_1US; + spr += tmp->c_precision / SBT_1US; + if (t > maxt) + maxt = t; + if (tmp->c_precision > maxpr) + maxpr = tmp->c_precision; + ct[flssbt(t)]++; + cpr[flssbt(tmp->c_precision)]++; + } + if (c > maxc) + maxc = c; + ccpbk[fls(c + c / 2)]++; + count += c; + } + CC_UNLOCK(cc); +#ifdef SMP + } +#endif + + for (i = 0, tcum = 0; i < 64 && tcum < count / 2; i++) + tcum += ct[i]; + medt = (i >= 2) ? (((sbintime_t)1) << (i - 2)) : 0; + for (i = 0, pcum = 0; i < 64 && pcum < count / 2; i++) + pcum += cpr[i]; + medpr = (i >= 2) ? (((sbintime_t)1) << (i - 2)) : 0; + for (i = 0, c = 0; i < 32 && c < count / 2; i++) + c += ccpbk[i]; + medc = (i >= 2) ? (1 << (i - 2)) : 0; + + printf("Scheduled callouts statistic snapshot:\n"); + printf(" Callouts: %6d Buckets/CPU: %6d Bucket size: 0.%06ds\n", + count, callwheelsize, 1000000 >> CC_HASH_SHIFT); + printf(" C/Bk: med %5d avg %6d.%06jd max %6d\n", + medc, + count / callwheelsize / mp_ncpus, + (uint64_t)count * 1000000 / callwheelsize / mp_ncpus % 1000000, + maxc); + printf(" Time: med %5jd.%06jds avg %6jd.%06jds max %6jd.%06jds\n", + medt / SBT_1S, (medt & 0xffffffff) * 1000000 >> 32, + (st / count) / 1000000, (st / count) % 1000000, + maxt / SBT_1S, (maxt & 0xffffffff) * 1000000 >> 32); + printf(" Prec: med %5jd.%06jds avg %6jd.%06jds max %6jd.%06jds\n", + medpr / SBT_1S, (medpr & 0xffffffff) * 1000000 >> 32, + (spr / count) / 1000000, (spr / count) % 1000000, + maxpr / SBT_1S, (maxpr & 0xffffffff) * 1000000 >> 32); + printf(" Distribution: \tbuckets\t time\t tcum\t" + " prec\t pcum\n"); + for (i = 0, tcum = pcum = 0; i < 64; i++) { + if (ct[i] == 0 && cpr[i] == 0) + continue; + t = (i != 0) ? (((sbintime_t)1) << (i - 1)) : 0; + tcum += ct[i]; + pcum += cpr[i]; + printf(" %10jd.%06jds\t 2**%d\t%7d\t%7d\t%7d\t%7d\n", + t / SBT_1S, (t & 0xffffffff) * 1000000 >> 32, + i - 1 - (32 - CC_HASH_SHIFT), + ct[i], tcum, cpr[i], pcum); + } + return (error); +} +SYSCTL_PROC(_kern, OID_AUTO, callout_stat, + CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_MPSAFE, + 0, 0, sysctl_kern_callout_stat, "I", + "Dump immediate statistic snapshot of the scheduled callouts"); From owner-svn-src-projects@FreeBSD.ORG Fri Mar 1 06:57:46 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 17521296; Fri, 1 Mar 2013 06:57:46 +0000 (UTC) (envelope-from benno@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 07D95B79; Fri, 1 Mar 2013 06:57:46 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r216vjpc031981; Fri, 1 Mar 2013 06:57:45 GMT (envelope-from benno@svn.freebsd.org) Received: (from benno@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r216vjDD031980; Fri, 1 Mar 2013 06:57:45 GMT (envelope-from benno@svn.freebsd.org) Message-Id: <201303010657.r216vjDD031980@svn.freebsd.org> From: Benno Rice Date: Fri, 1 Mar 2013 06:57:45 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247531 - projects/uefi/sys/boot/amd64/efi X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 01 Mar 2013 06:57:46 -0000 Author: benno Date: Fri Mar 1 06:57:45 2013 New Revision: 247531 URL: http://svnweb.freebsd.org/changeset/base/247531 Log: Remove some things that are no longer needed. Modified: projects/uefi/sys/boot/amd64/efi/Makefile Modified: projects/uefi/sys/boot/amd64/efi/Makefile ============================================================================== --- projects/uefi/sys/boot/amd64/efi/Makefile Fri Mar 1 06:56:43 2013 (r247530) +++ projects/uefi/sys/boot/amd64/efi/Makefile Fri Mar 1 06:57:45 2013 (r247531) @@ -2,7 +2,6 @@ NO_MAN= WITHOUT_SSP= -BUILDING_EFI= .include @@ -76,8 +75,6 @@ loader.efi: loader.sym --target=${EFI_TARGET} ${.ALLSRC} ${.TARGET} LIBEFI= ${.OBJDIR}/../../efi/libefi/libefi.a -CFLAGS+= -I${.CURDIR}/../libi386 -CFLAGS+= -I${.CURDIR}/../btx/lib CFLAGS+= -I${.CURDIR}/../../common DPADD= ${LIBFICL} ${LIBEFI} ${LIBSTAND} From owner-svn-src-projects@FreeBSD.ORG Fri Mar 1 07:00:12 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id F2D2A4B6; Fri, 1 Mar 2013 07:00:11 +0000 (UTC) (envelope-from benno@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id E6074BF5; Fri, 1 Mar 2013 07:00:11 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r2170Brf033877; Fri, 1 Mar 2013 07:00:11 GMT (envelope-from benno@svn.freebsd.org) Received: (from benno@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r2170Bfi033876; Fri, 1 Mar 2013 07:00:11 GMT (envelope-from benno@svn.freebsd.org) Message-Id: <201303010700.r2170Bfi033876@svn.freebsd.org> From: Benno Rice Date: Fri, 1 Mar 2013 07:00:11 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247532 - projects/uefi/sys/boot/common X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 01 Mar 2013 07:00:12 -0000 Author: benno Date: Fri Mar 1 07:00:11 2013 New Revision: 247532 URL: http://svnweb.freebsd.org/changeset/base/247532 Log: Build both 32- and 64-bit ELF loaders on both amd64 and i386. This is needed because otherwise we don't build the 32-bit ELF loader for the i386 loader code used to boot amd64 under BIOS. Modified: projects/uefi/sys/boot/common/Makefile.inc Modified: projects/uefi/sys/boot/common/Makefile.inc ============================================================================== --- projects/uefi/sys/boot/common/Makefile.inc Fri Mar 1 06:57:45 2013 (r247531) +++ projects/uefi/sys/boot/common/Makefile.inc Fri Mar 1 07:00:11 2013 (r247532) @@ -4,11 +4,9 @@ SRCS+= boot.c commands.c console.c devop SRCS+= interp_backslash.c interp_parse.c ls.c misc.c SRCS+= module.c panic.c -.if ${MACHINE} == "i386" +.if ${MACHINE_CPUARCH} == "i386" || ${MACHINE_CPUARCH} == "amd64" SRCS+= load_elf32.c load_elf32_obj.c reloc_elf32.c SRCS+= load_elf64.c load_elf64_obj.c reloc_elf64.c -.elif ${MACHINE_CPUARCH} == "amd64" -SRCS+= load_elf64.c load_elf64_obj.c reloc_elf64.c .elif ${MACHINE_CPUARCH} == "ia64" SRCS+= load_elf64.c load_elf64_obj.c reloc_elf64.c .elif ${MACHINE} == "pc98" From owner-svn-src-projects@FreeBSD.ORG Fri Mar 1 07:01:25 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 0ED485EE; Fri, 1 Mar 2013 07:01:25 +0000 (UTC) (envelope-from benno@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id F1978C11; Fri, 1 Mar 2013 07:01:24 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r2171OgK034275; Fri, 1 Mar 2013 07:01:24 GMT (envelope-from benno@svn.freebsd.org) Received: (from benno@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r2171O5f034274; Fri, 1 Mar 2013 07:01:24 GMT (envelope-from benno@svn.freebsd.org) Message-Id: <201303010701.r2171O5f034274@svn.freebsd.org> From: Benno Rice Date: Fri, 1 Mar 2013 07:01:24 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247533 - projects/uefi/sys/boot X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 01 Mar 2013 07:01:25 -0000 Author: benno Date: Fri Mar 1 07:01:24 2013 New Revision: 247533 URL: http://svnweb.freebsd.org/changeset/base/247533 Log: Build the amd64 loader stuff as well as the i386 stuff if we're on amd64. Modified: projects/uefi/sys/boot/Makefile Modified: projects/uefi/sys/boot/Makefile ============================================================================== --- projects/uefi/sys/boot/Makefile Fri Mar 1 07:00:11 2013 (r247532) +++ projects/uefi/sys/boot/Makefile Fri Mar 1 07:01:24 2013 (r247533) @@ -9,9 +9,12 @@ SUBDIR+= ficl .endif # Pick the machine-dependent subdir based on the target architecture. -ADIR= ${MACHINE:S/amd64/i386/:S/powerpc64/powerpc/} +ADIR= ${MACHINE:S/powerpc64/powerpc/} .if exists(${.CURDIR}/${ADIR}/.) SUBDIR+= ${ADIR} .endif +.if ${MACHINE} == "amd64" +SUBDIR+= i386 +.endif .include From owner-svn-src-projects@FreeBSD.ORG Fri Mar 1 11:03:14 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 8F156E54; Fri, 1 Mar 2013 11:03:14 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 82842783; Fri, 1 Mar 2013 11:03:14 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r21B3ELT007774; Fri, 1 Mar 2013 11:03:14 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r21B3ER6007773; Fri, 1 Mar 2013 11:03:14 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201303011103.r21B3ER6007773@svn.freebsd.org> From: Alexander Motin Date: Fri, 1 Mar 2013 11:03:14 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247545 - projects/calloutng/sys/kern X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 01 Mar 2013 11:03:14 -0000 Author: mav Date: Fri Mar 1 11:03:13 2013 New Revision: 247545 URL: http://svnweb.freebsd.org/changeset/base/247545 Log: Print also number of CPUs. Modified: projects/calloutng/sys/kern/kern_timeout.c Modified: projects/calloutng/sys/kern/kern_timeout.c ============================================================================== --- projects/calloutng/sys/kern/kern_timeout.c Fri Mar 1 10:33:31 2013 (r247544) +++ projects/calloutng/sys/kern/kern_timeout.c Fri Mar 1 11:03:13 2013 (r247545) @@ -1391,8 +1391,8 @@ sysctl_kern_callout_stat(SYSCTL_HANDLER_ medc = (i >= 2) ? (1 << (i - 2)) : 0; printf("Scheduled callouts statistic snapshot:\n"); - printf(" Callouts: %6d Buckets/CPU: %6d Bucket size: 0.%06ds\n", - count, callwheelsize, 1000000 >> CC_HASH_SHIFT); + printf(" Callouts: %6d Buckets: %6d*%-3d Bucket size: 0.%06ds\n", + count, callwheelsize, mp_ncpus, 1000000 >> CC_HASH_SHIFT); printf(" C/Bk: med %5d avg %6d.%06jd max %6d\n", medc, count / callwheelsize / mp_ncpus, From owner-svn-src-projects@FreeBSD.ORG Fri Mar 1 13:27:33 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 1705F934; Fri, 1 Mar 2013 13:27:33 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id F25F7D8D; Fri, 1 Mar 2013 13:27:32 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r21DRWZE050882; Fri, 1 Mar 2013 13:27:32 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r21DRWaV050880; Fri, 1 Mar 2013 13:27:32 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201303011327.r21DRWaV050880@svn.freebsd.org> From: Alexander Motin Date: Fri, 1 Mar 2013 13:27:32 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247546 - in projects/calloutng/sys: kern sys X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 01 Mar 2013 13:27:33 -0000 Author: mav Date: Fri Mar 1 13:27:32 2013 New Revision: 247546 URL: http://svnweb.freebsd.org/changeset/base/247546 Log: Convert callwheel from array of TAILQs to array of LISTs. This in half reduces memory and possibly cache usage. Benchmarks show small performance improvement. Modified: projects/calloutng/sys/kern/kern_timeout.c projects/calloutng/sys/sys/_callout.h Modified: projects/calloutng/sys/kern/kern_timeout.c ============================================================================== --- projects/calloutng/sys/kern/kern_timeout.c Fri Mar 1 11:03:13 2013 (r247545) +++ projects/calloutng/sys/kern/kern_timeout.c Fri Mar 1 13:27:32 2013 (r247546) @@ -135,12 +135,13 @@ struct callout_cpu { struct mtx_padalign cc_lock; struct cc_exec cc_exec_entity[2]; struct callout *cc_callout; - struct callout_tailq *cc_callwheel; + struct callout_list *cc_callwheel; struct callout_tailq cc_expireq; - struct callout_list cc_callfree; + struct callout_slist cc_callfree; sbintime_t cc_firstevent; sbintime_t cc_lastscan; void *cc_cookie; + u_int cc_bucket; }; #define cc_exec_curr cc_exec_entity[0].cc_curr @@ -260,7 +261,7 @@ kern_timeout_callwheel_alloc(caddr_t v) cc->cc_callout = (struct callout *)v; v = (caddr_t)(cc->cc_callout + ncallout); - cc->cc_callwheel = (struct callout_tailq *)v; + cc->cc_callwheel = (struct callout_list *)v; v = (caddr_t)(cc->cc_callwheel + callwheelsize); return(v); } @@ -273,9 +274,8 @@ callout_cpu_init(struct callout_cpu *cc) mtx_init(&cc->cc_lock, "callout", NULL, MTX_SPIN | MTX_RECURSE); SLIST_INIT(&cc->cc_callfree); - for (i = 0; i < callwheelsize; i++) { - TAILQ_INIT(&cc->cc_callwheel[i]); - } + for (i = 0; i < callwheelsize; i++) + LIST_INIT(&cc->cc_callwheel[i]); TAILQ_INIT(&cc->cc_expireq); cc->cc_firstevent = INT64_MAX; for (i = 0; i < 2; i++) @@ -358,7 +358,7 @@ start_softclock(void *dummy) panic("died while creating standard software ithreads"); cc->cc_callout = NULL; /* Only cpu0 handles timeout(). */ cc->cc_callwheel = malloc( - sizeof(struct callout_tailq) * callwheelsize, M_CALLOUT, + sizeof(struct callout_list) * callwheelsize, M_CALLOUT, M_WAITOK); callout_cpu_init(cc); } @@ -388,7 +388,7 @@ callout_process(sbintime_t now) { struct callout *tmp, *tmpn; struct callout_cpu *cc; - struct callout_tailq *sc; + struct callout_list *sc; sbintime_t first, last, max, tmp_max; uint32_t lookahead; u_int firstb, lastb, nowb; @@ -431,7 +431,7 @@ callout_process(sbintime_t now) /* Iterate callwheel from firstb to nowb and then up to lastb. */ do { sc = &cc->cc_callwheel[firstb & callwheelmask]; - tmp = TAILQ_FIRST(sc); + tmp = LIST_FIRST(sc); while (tmp != NULL) { /* Run the callout if present time within allowed. */ if (tmp->c_time <= now) { @@ -444,8 +444,9 @@ callout_process(sbintime_t now) ++depth_dir; #endif cc->cc_exec_next_dir = - TAILQ_NEXT(tmp, c_links.tqe); - TAILQ_REMOVE(sc, tmp, c_links.tqe); + LIST_NEXT(tmp, c_links.le); + cc->cc_bucket = firstb & callwheelmask; + LIST_REMOVE(tmp, c_links.le); softclock_call_cc(tmp, cc, #ifdef CALLOUT_PROFILING &mpcalls_dir, &lockcalls_dir, NULL, @@ -453,8 +454,8 @@ callout_process(sbintime_t now) 1); tmp = cc->cc_exec_next_dir; } else { - tmpn = TAILQ_NEXT(tmp, c_links.tqe); - TAILQ_REMOVE(sc, tmp, c_links.tqe); + tmpn = LIST_NEXT(tmp, c_links.le); + LIST_REMOVE(tmp, c_links.le); TAILQ_INSERT_TAIL(&cc->cc_expireq, tmp, c_links.tqe); tmp->c_flags |= CALLOUT_PROCESSED; @@ -480,7 +481,7 @@ callout_process(sbintime_t now) if (tmp_max < last) last = tmp_max; next: - tmp = TAILQ_NEXT(tmp, c_links.tqe); + tmp = LIST_NEXT(tmp, c_links.le); } /* Proceed with the next bucket. */ firstb++; @@ -554,8 +555,8 @@ callout_cc_add(struct callout *c, struct CTR3(KTR_CALLOUT, "precision set for %p: %d.%08x", c, (int)(c->c_precision >> 32), (u_int)(c->c_precision & 0xffffffff)); - TAILQ_INSERT_TAIL(&cc->cc_callwheel[bucket], c, c_links.tqe); - if (cc->cc_exec_next_dir == NULL) + LIST_INSERT_HEAD(&cc->cc_callwheel[bucket], c, c_links.le); + if (cc->cc_bucket == bucket) cc->cc_exec_next_dir = c; #ifndef NO_EVENTTIMERS /* @@ -901,7 +902,7 @@ callout_reset_sbt_on(struct callout *c, { sbintime_t to_sbt, pr; struct callout_cpu *cc; - int bucket, cancelled, direct; + int cancelled, direct; cancelled = 0; if (flags & C_ABSOLUTE) { @@ -972,11 +973,8 @@ callout_reset_sbt_on(struct callout *c, if (c->c_flags & CALLOUT_PENDING) { if ((c->c_flags & CALLOUT_PROCESSED) == 0) { if (cc->cc_exec_next_dir == c) - cc->cc_exec_next_dir = TAILQ_NEXT(c, - c_links.tqe); - bucket = callout_get_bucket(c->c_time); - TAILQ_REMOVE(&cc->cc_callwheel[bucket], c, - c_links.tqe); + cc->cc_exec_next_dir = LIST_NEXT(c, c_links.le); + LIST_REMOVE(c, c_links.le); } else TAILQ_REMOVE(&cc->cc_expireq, c, c_links.tqe); cancelled = 1; @@ -1039,7 +1037,7 @@ _callout_stop_safe(c, safe) { struct callout_cpu *cc, *old_cc; struct lock_class *class; - int bucket, direct, sq_locked, use_lock; + int direct, sq_locked, use_lock; /* * Some old subsystems don't hold Giant while running a callout_stop(), @@ -1195,10 +1193,8 @@ again: c, c->c_func, c->c_arg); if ((c->c_flags & CALLOUT_PROCESSED) == 0) { if (cc->cc_exec_next_dir == c) - cc->cc_exec_next_dir = TAILQ_NEXT(c, c_links.tqe); - bucket = callout_get_bucket(c->c_time); - TAILQ_REMOVE(&cc->cc_callwheel[bucket], c, - c_links.tqe); + cc->cc_exec_next_dir = LIST_NEXT(c, c_links.le); + LIST_REMOVE(c, c_links.le); } else TAILQ_REMOVE(&cc->cc_expireq, c, c_links.tqe); callout_cc_del(c, cc); @@ -1328,7 +1324,7 @@ sysctl_kern_callout_stat(SYSCTL_HANDLER_ { struct callout *tmp; struct callout_cpu *cc; - struct callout_tailq *sc; + struct callout_list *sc; sbintime_t maxpr, maxt, medpr, medt, now, spr, st, t; int ct[64], cpr[64], ccpbk[32]; int error, val, i, count, tcum, pcum, maxc, c, medc; @@ -1356,7 +1352,7 @@ sysctl_kern_callout_stat(SYSCTL_HANDLER_ for (i = 0; i < callwheelsize; i++) { sc = &cc->cc_callwheel[i]; c = 0; - TAILQ_FOREACH(tmp, sc, c_links.tqe) { + LIST_FOREACH(tmp, sc, c_links.le) { c++; t = tmp->c_time - now; if (t < 0) Modified: projects/calloutng/sys/sys/_callout.h ============================================================================== --- projects/calloutng/sys/sys/_callout.h Fri Mar 1 11:03:13 2013 (r247545) +++ projects/calloutng/sys/sys/_callout.h Fri Mar 1 13:27:32 2013 (r247546) @@ -42,11 +42,13 @@ struct lock_object; -SLIST_HEAD(callout_list, callout); +LIST_HEAD(callout_list, callout); +SLIST_HEAD(callout_slist, callout); TAILQ_HEAD(callout_tailq, callout); struct callout { union { + LIST_ENTRY(callout) le; SLIST_ENTRY(callout) sle; TAILQ_ENTRY(callout) tqe; } c_links; From owner-svn-src-projects@FreeBSD.ORG Fri Mar 1 15:09:24 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 4ADD471C; Fri, 1 Mar 2013 15:09:24 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 3943A277; Fri, 1 Mar 2013 15:09:24 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r21F9OXk081094; Fri, 1 Mar 2013 15:09:24 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r21F9O4E081093; Fri, 1 Mar 2013 15:09:24 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201303011509.r21F9O4E081093@svn.freebsd.org> From: Alexander Motin Date: Fri, 1 Mar 2013 15:09:24 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247549 - projects/calloutng/sys/kern X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 01 Mar 2013 15:09:24 -0000 Author: mav Date: Fri Mar 1 15:09:23 2013 New Revision: 247549 URL: http://svnweb.freebsd.org/changeset/base/247549 Log: Change CC_HASH_SHIFT from 10 to 8, changing callwheel bucket size from 1ms to 4ms. This allows to reduce time consumed by callout_process() on linear travense through the array of empty buckets on systems with few callouts. On systems with many callouts result depends on callouts time and precision: smaller CC_HASH_SHIFT value improves handling of long callouts, while bigger value improves handling of short and precise (not aggregable) ones. Modified: projects/calloutng/sys/kern/kern_timeout.c Modified: projects/calloutng/sys/kern/kern_timeout.c ============================================================================== --- projects/calloutng/sys/kern/kern_timeout.c Fri Mar 1 14:54:37 2013 (r247548) +++ projects/calloutng/sys/kern/kern_timeout.c Fri Mar 1 15:09:23 2013 (r247549) @@ -367,7 +367,7 @@ start_softclock(void *dummy) SYSINIT(start_softclock, SI_SUB_SOFTINTR, SI_ORDER_FIRST, start_softclock, NULL); -#define CC_HASH_SHIFT 10 +#define CC_HASH_SHIFT 8 static inline u_int callout_hash(sbintime_t sbt) From owner-svn-src-projects@FreeBSD.ORG Fri Mar 1 19:54:26 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 83FAB1C2; Fri, 1 Mar 2013 19:54:26 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 76B7712C9; Fri, 1 Mar 2013 19:54:26 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r21JsQbo068937; Fri, 1 Mar 2013 19:54:26 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r21JsQvs068936; Fri, 1 Mar 2013 19:54:26 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201303011954.r21JsQvs068936@svn.freebsd.org> From: Alexander Motin Date: Fri, 1 Mar 2013 19:54:26 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247569 - projects/calloutng/sys/kern X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 01 Mar 2013 19:54:26 -0000 Author: mav Date: Fri Mar 1 19:54:25 2013 New Revision: 247569 URL: http://svnweb.freebsd.org/changeset/base/247569 Log: Don't disable interrupts on 64-bit arches to read the last hardclock time. This adds few more megabits in iperf test on Atom D525. Modified: projects/calloutng/sys/kern/kern_timeout.c Modified: projects/calloutng/sys/kern/kern_timeout.c ============================================================================== --- projects/calloutng/sys/kern/kern_timeout.c Fri Mar 1 19:42:50 2013 (r247568) +++ projects/calloutng/sys/kern/kern_timeout.c Fri Mar 1 19:54:25 2013 (r247569) @@ -924,10 +924,14 @@ callout_reset_sbt_on(struct callout *c, * This value is per-CPU, but it is equal for all * active ones. */ +#ifdef __LP64__ + to_sbt = DPCPU_GET(hardclocktime); +#else spinlock_enter(); to_sbt = DPCPU_GET(hardclocktime); spinlock_exit(); #endif +#endif if ((flags & C_HARDCLOCK) == 0) to_sbt += tick_sbt; } else From owner-svn-src-projects@FreeBSD.ORG Fri Mar 1 21:12:21 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 7F9CB961; Fri, 1 Mar 2013 21:12:21 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 5B989181C; Fri, 1 Mar 2013 21:12:21 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r21LCL2k094167; Fri, 1 Mar 2013 21:12:21 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r21LCLgc094166; Fri, 1 Mar 2013 21:12:21 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201303012112.r21LCLgc094166@svn.freebsd.org> From: Alexander Motin Date: Fri, 1 Mar 2013 21:12:21 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247581 - projects/calloutng/sys/kern X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 01 Mar 2013 21:12:21 -0000 Author: mav Date: Fri Mar 1 21:12:20 2013 New Revision: 247581 URL: http://svnweb.freebsd.org/changeset/base/247581 Log: Fix a stupid nasty bug that could cause silent memory corruptions. Modified: projects/calloutng/sys/kern/kern_timeout.c Modified: projects/calloutng/sys/kern/kern_timeout.c ============================================================================== --- projects/calloutng/sys/kern/kern_timeout.c Fri Mar 1 21:01:45 2013 (r247580) +++ projects/calloutng/sys/kern/kern_timeout.c Fri Mar 1 21:12:20 2013 (r247581) @@ -948,7 +948,7 @@ callout_reset_sbt_on(struct callout *c, */ if (c->c_flags & CALLOUT_LOCAL_ALLOC) cpu = c->c_cpu; - direct = c->c_flags & CALLOUT_DIRECT; + direct = !!(c->c_flags & CALLOUT_DIRECT); KASSERT(!direct || c->c_lock == NULL, ("%s: direct callout %p has lock", __func__, c)); cc = callout_lock(c); @@ -1057,7 +1057,7 @@ _callout_stop_safe(c, safe) } } else use_lock = 0; - direct = c->c_flags & CALLOUT_DIRECT; + direct = !!(c->c_flags & CALLOUT_DIRECT); sq_locked = 0; old_cc = NULL; again: From owner-svn-src-projects@FreeBSD.ORG Fri Mar 1 21:16:03 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 2C016A94; Fri, 1 Mar 2013 21:16:03 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 07F7B182E; Fri, 1 Mar 2013 21:16:03 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r21LG2ie094754; Fri, 1 Mar 2013 21:16:02 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r21LG27v094753; Fri, 1 Mar 2013 21:16:02 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201303012116.r21LG27v094753@svn.freebsd.org> From: Alexander Motin Date: Fri, 1 Mar 2013 21:16:02 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247582 - projects/calloutng/sys/kern X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 01 Mar 2013 21:16:03 -0000 Author: mav Date: Fri Mar 1 21:16:02 2013 New Revision: 247582 URL: http://svnweb.freebsd.org/changeset/base/247582 Log: Remove extra newlines. Modified: projects/calloutng/sys/kern/kern_timeout.c Modified: projects/calloutng/sys/kern/kern_timeout.c ============================================================================== --- projects/calloutng/sys/kern/kern_timeout.c Fri Mar 1 21:12:20 2013 (r247581) +++ projects/calloutng/sys/kern/kern_timeout.c Fri Mar 1 21:16:02 2013 (r247582) @@ -958,10 +958,8 @@ callout_reset_sbt_on(struct callout *c, * currently in progress. If there is a lock then we * can cancel the callout if it has not really started. */ - if (c->c_lock != NULL && - !cc->cc_exec_entity[direct].cc_cancel) - cancelled = - cc->cc_exec_entity[direct].cc_cancel = 1; + if (c->c_lock != NULL && !cc->cc_exec_entity[direct].cc_cancel) + cancelled = cc->cc_exec_entity[direct].cc_cancel = 1; if (cc->cc_exec_entity[direct].cc_waiting) { /* * Someone has called callout_drain to kill this From owner-svn-src-projects@FreeBSD.ORG Fri Mar 1 22:22:04 2013 Return-Path: Delivered-To: svn-src-projects@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 312195B5; Fri, 1 Mar 2013 22:22:04 +0000 (UTC) (envelope-from avg@FreeBSD.org) Received: from citadel.icyb.net.ua (citadel.icyb.net.ua [212.40.38.140]) by mx1.freebsd.org (Postfix) with ESMTP id 016DD1A5D; Fri, 1 Mar 2013 22:21:59 +0000 (UTC) Received: from porto.starpoint.kiev.ua (porto-e.starpoint.kiev.ua [212.40.38.100]) by citadel.icyb.net.ua (8.8.8p3/ICyb-2.3exp) with ESMTP id AAA12809; Sat, 02 Mar 2013 00:21:58 +0200 (EET) (envelope-from avg@FreeBSD.org) Received: from localhost ([127.0.0.1]) by porto.starpoint.kiev.ua with esmtp (Exim 4.34 (FreeBSD)) id 1UBYL0-0005XA-1Z; Sat, 02 Mar 2013 00:21:58 +0200 Message-ID: <51312A05.20802@FreeBSD.org> Date: Sat, 02 Mar 2013 00:21:57 +0200 From: Andriy Gapon User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:17.0) Gecko/20130220 Thunderbird/17.0.3 MIME-Version: 1.0 To: Alexander Motin Subject: Re: svn commit: r247581 - projects/calloutng/sys/kern References: <201303012112.r21LCLgc094166@svn.freebsd.org> In-Reply-To: <201303012112.r21LCLgc094166@svn.freebsd.org> X-Enigmail-Version: 1.5.1 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Cc: svn-src-projects@FreeBSD.org, src-committers@FreeBSD.org X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 01 Mar 2013 22:22:04 -0000 on 01/03/2013 23:12 Alexander Motin said the following: > + direct = !!(c->c_flags & CALLOUT_DIRECT); Please do not violate boundaries between FreeBSD kernel code and some other OS kernel code :-) In FreeBSD the above should look like: direct = (c->c_flags & CALLOUT_DIRECT) != 0; -- Andriy Gapon From owner-svn-src-projects@FreeBSD.ORG Fri Mar 1 22:40:30 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id E83A2C62; Fri, 1 Mar 2013 22:40:30 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id DA70F1AFD; Fri, 1 Mar 2013 22:40:30 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r21MeU1C021969; Fri, 1 Mar 2013 22:40:30 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r21MeU04021967; Fri, 1 Mar 2013 22:40:30 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201303012240.r21MeU04021967@svn.freebsd.org> From: Alexander Motin Date: Fri, 1 Mar 2013 22:40:30 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247593 - projects/calloutng/sys/kern X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 01 Mar 2013 22:40:31 -0000 Author: mav Date: Fri Mar 1 22:40:30 2013 New Revision: 247593 URL: http://svnweb.freebsd.org/changeset/base/247593 Log: Style fix. Submitted by: avg Modified: projects/calloutng/sys/kern/kern_timeout.c Modified: projects/calloutng/sys/kern/kern_timeout.c ============================================================================== --- projects/calloutng/sys/kern/kern_timeout.c Fri Mar 1 22:20:13 2013 (r247592) +++ projects/calloutng/sys/kern/kern_timeout.c Fri Mar 1 22:40:30 2013 (r247593) @@ -948,7 +948,7 @@ callout_reset_sbt_on(struct callout *c, */ if (c->c_flags & CALLOUT_LOCAL_ALLOC) cpu = c->c_cpu; - direct = !!(c->c_flags & CALLOUT_DIRECT); + direct = (c->c_flags & CALLOUT_DIRECT) != 0; KASSERT(!direct || c->c_lock == NULL, ("%s: direct callout %p has lock", __func__, c)); cc = callout_lock(c); @@ -1055,7 +1055,7 @@ _callout_stop_safe(c, safe) } } else use_lock = 0; - direct = !!(c->c_flags & CALLOUT_DIRECT); + direct = (c->c_flags & CALLOUT_DIRECT) != 0; sq_locked = 0; old_cc = NULL; again: From owner-svn-src-projects@FreeBSD.ORG Sat Mar 2 00:04:10 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 6AAB635F; Sat, 2 Mar 2013 00:04:10 +0000 (UTC) (envelope-from davide@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 5AABD1DC7; Sat, 2 Mar 2013 00:04:10 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r2204ANA047527; Sat, 2 Mar 2013 00:04:10 GMT (envelope-from davide@svn.freebsd.org) Received: (from davide@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r220488t047508; Sat, 2 Mar 2013 00:04:08 GMT (envelope-from davide@svn.freebsd.org) Message-Id: <201303020004.r220488t047508@svn.freebsd.org> From: Davide Italiano Date: Sat, 2 Mar 2013 00:04:08 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247597 - in projects/calloutng: . cddl/contrib/opensolaris/cmd/zfs cddl/contrib/opensolaris/lib/libzfs/common lib/libc/regex lib/libc/rpc lib/libutil share/mk sys/arm/allwinner sys/arm... X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 02 Mar 2013 00:04:10 -0000 Author: davide Date: Sat Mar 2 00:04:07 2013 New Revision: 247597 URL: http://svnweb.freebsd.org/changeset/base/247597 Log: Merge head r236314 through r247596. Added: projects/calloutng/sys/arm/broadcom/bcm2835/bcm2835_dma.c - copied unchanged from r247596, head/sys/arm/broadcom/bcm2835/bcm2835_dma.c projects/calloutng/sys/arm/broadcom/bcm2835/bcm2835_dma.h - copied unchanged from r247596, head/sys/arm/broadcom/bcm2835/bcm2835_dma.h Modified: projects/calloutng/UPDATING projects/calloutng/cddl/contrib/opensolaris/cmd/zfs/zfs.8 projects/calloutng/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_impl.h projects/calloutng/lib/libc/regex/regcomp.c projects/calloutng/lib/libc/rpc/clnt_vc.c projects/calloutng/lib/libutil/kinfo_getproc.3 projects/calloutng/share/mk/bsd.compiler.mk projects/calloutng/sys/arm/allwinner/files.a10 projects/calloutng/sys/arm/broadcom/bcm2835/bcm2835_sdhci.c projects/calloutng/sys/arm/broadcom/bcm2835/files.bcm2835 projects/calloutng/sys/arm/conf/CUBIEBOARD projects/calloutng/sys/arm/econa/econa_machdep.c projects/calloutng/sys/arm/include/vmparam.h projects/calloutng/sys/arm/s3c2xx0/s3c24x0_machdep.c projects/calloutng/sys/arm/xscale/i80321/ep80219_machdep.c projects/calloutng/sys/arm/xscale/i80321/iq31244_machdep.c projects/calloutng/sys/arm/xscale/i8134x/crb_machdep.c projects/calloutng/sys/arm/xscale/ixp425/avila_machdep.c projects/calloutng/sys/arm/xscale/pxa/pxa_machdep.c projects/calloutng/sys/boot/fdt/dts/cubieboard.dts projects/calloutng/sys/cddl/contrib/opensolaris/common/zfs/zfs_ioctl_compat.c projects/calloutng/sys/cddl/contrib/opensolaris/common/zfs/zfs_ioctl_compat.h projects/calloutng/sys/cddl/contrib/opensolaris/common/zfs/zfs_prop.c projects/calloutng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_dataset.c projects/calloutng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_dir.c projects/calloutng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c projects/calloutng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c projects/calloutng/sys/cddl/contrib/opensolaris/uts/common/sys/fs/zfs.h projects/calloutng/sys/compat/ndis/kern_ndis.c projects/calloutng/sys/dev/aac/aac.c projects/calloutng/sys/dev/aac/aac_cam.c projects/calloutng/sys/dev/aac/aac_disk.c projects/calloutng/sys/dev/aac/aac_pci.c projects/calloutng/sys/dev/aac/aac_tables.h projects/calloutng/sys/dev/aac/aacvar.h projects/calloutng/sys/dev/ath/if_ath_tx_ht.c projects/calloutng/sys/dev/ath/if_athrate.h projects/calloutng/sys/dev/bce/if_bce.c projects/calloutng/sys/dev/bce/if_bcereg.h projects/calloutng/sys/dev/cas/if_cas.c projects/calloutng/sys/dev/ic/ns16550.h projects/calloutng/sys/dev/mfi/mfi.c projects/calloutng/sys/dev/mps/mps.c projects/calloutng/sys/dev/puc/pucdata.c projects/calloutng/sys/dev/sdhci/sdhci.c projects/calloutng/sys/dev/sdhci/sdhci.h projects/calloutng/sys/dev/sdhci/sdhci_if.m projects/calloutng/sys/dev/tws/tws_hdm.c projects/calloutng/sys/dev/uart/uart_dev_ns8250.c projects/calloutng/sys/kern/kern_sysctl.c projects/calloutng/sys/kern/subr_sleepqueue.c projects/calloutng/sys/kern/subr_trap.c projects/calloutng/sys/kern/vfs_default.c projects/calloutng/sys/kern/vfs_syscalls.c projects/calloutng/sys/kern/vfs_vnops.c projects/calloutng/sys/modules/ixgbe/Makefile projects/calloutng/sys/sparc64/pci/ofw_pcib.c projects/calloutng/sys/sparc64/pci/sbbc.c projects/calloutng/sys/sys/proc.h projects/calloutng/sys/sys/rmlock.h projects/calloutng/usr.sbin/bhyve/acpi.c projects/calloutng/usr.sbin/bhyve/bhyverun.c projects/calloutng/usr.sbin/bhyve/bhyverun.h projects/calloutng/usr.sbin/bhyve/mptbl.c projects/calloutng/usr.sbin/bhyve/pci_virtio_block.c projects/calloutng/usr.sbin/bhyve/pci_virtio_net.c projects/calloutng/usr.sbin/bhyve/virtio.h Directory Properties: projects/calloutng/ (props changed) projects/calloutng/cddl/contrib/opensolaris/ (props changed) projects/calloutng/cddl/contrib/opensolaris/cmd/zfs/ (props changed) projects/calloutng/cddl/contrib/opensolaris/lib/libzfs/ (props changed) projects/calloutng/lib/libc/ (props changed) projects/calloutng/lib/libutil/ (props changed) projects/calloutng/sys/ (props changed) projects/calloutng/sys/boot/ (props changed) projects/calloutng/sys/cddl/contrib/opensolaris/ (props changed) projects/calloutng/usr.sbin/bhyve/ (props changed) Modified: projects/calloutng/UPDATING ============================================================================== --- projects/calloutng/UPDATING Fri Mar 1 23:26:13 2013 (r247596) +++ projects/calloutng/UPDATING Sat Mar 2 00:04:07 2013 (r247597) @@ -46,8 +46,8 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 10 unlikely event that -M was the last option on the command line and the command line contained at least two files and a target directory the first file will have logs appended to it. The -M - option served little practical purpose in the last decade so it's - used expected to be extremely rare. + option served little practical purpose in the last decade so its + use is expected to be extremely rare. 20121223: After switching to Clang as the default compiler some users of ZFS Modified: projects/calloutng/cddl/contrib/opensolaris/cmd/zfs/zfs.8 ============================================================================== --- projects/calloutng/cddl/contrib/opensolaris/cmd/zfs/zfs.8 Fri Mar 1 23:26:13 2013 (r247596) +++ projects/calloutng/cddl/contrib/opensolaris/cmd/zfs/zfs.8 Sat Mar 2 00:04:07 2013 (r247597) @@ -526,6 +526,39 @@ if the snapshot has been marked for defe .Qq Nm Cm destroy -d command. Otherwise, the property is .Cm off . +.It Sy logicalreferenced +The amount of space that is +.Qq logically +accessible by this dataset. +See the +.Sy referenced +property. +The logical space ignores the effect of the +.Sy compression +and +.Sy copies +properties, giving a quantity closer to the amount of data that applications +see. +However, it does include space consumed by metadata. +.Pp +This property can also be referred to by its shortened column name, +.Sy lrefer . +.It Sy logicalused +The amount of space that is +.Qq logically +consumed by this dataset and all its descendents. +See the +.Sy used +property. +The logical space ignores the effect of the +.Sy compression +and +.Sy copies +properties, giving a quantity closer to the amount of data that applications +see. +.Pp +This property can also be referred to by its shortened column name, +.Sy lused . .It Sy mounted For file systems, indicates whether the file system is currently mounted. This property can be either Modified: projects/calloutng/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_impl.h ============================================================================== --- projects/calloutng/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_impl.h Fri Mar 1 23:26:13 2013 (r247596) +++ projects/calloutng/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_impl.h Sat Mar 2 00:04:07 2013 (r247597) @@ -24,6 +24,7 @@ * Copyright (c) 2011 Pawel Jakub Dawidek . * All rights reserved. * Copyright (c) 2011 by Delphix. All rights reserved. + * Copyright (c) 2013 Martin Matuska . All rights reserved. */ #ifndef _LIBFS_IMPL_H @@ -216,6 +217,7 @@ extern void libzfs_fru_clear(libzfs_hand #ifndef sun static int zfs_kernel_version = 0; +static int zfs_ioctl_version = 0; /* * This is FreeBSD version of ioctl, because Solaris' ioctl() updates @@ -225,19 +227,34 @@ static int zfs_kernel_version = 0; static __inline int zcmd_ioctl(int fd, unsigned long cmd, zfs_cmd_t *zc) { - size_t oldsize, zfs_kernel_version_size; + size_t oldsize, zfs_kernel_version_size, zfs_ioctl_version_size; int version, ret, cflag = ZFS_CMD_COMPAT_NONE; - zfs_kernel_version_size = sizeof(zfs_kernel_version); - if (zfs_kernel_version == 0) { - sysctlbyname("vfs.zfs.version.spa", &zfs_kernel_version, - &zfs_kernel_version_size, NULL, 0); + zfs_ioctl_version_size = sizeof(zfs_ioctl_version); + if (zfs_ioctl_version == 0) { + sysctlbyname("vfs.zfs.version.ioctl", &zfs_ioctl_version, + &zfs_ioctl_version_size, NULL, 0); } - if (zfs_kernel_version == SPA_VERSION_15 || - zfs_kernel_version == SPA_VERSION_14 || - zfs_kernel_version == SPA_VERSION_13) - cflag = ZFS_CMD_COMPAT_V15; + /* + * If vfs.zfs.version.ioctl is not defined, assume we have v28 + * compatible binaries and use vfs.zfs.version.spa to test for v15 + */ + if (zfs_ioctl_version < ZFS_IOCVER_DEADMAN) { + cflag = ZFS_CMD_COMPAT_V28; + zfs_kernel_version_size = sizeof(zfs_kernel_version); + + if (zfs_kernel_version == 0) { + sysctlbyname("vfs.zfs.version.spa", + &zfs_kernel_version, + &zfs_kernel_version_size, NULL, 0); + } + + if (zfs_kernel_version == SPA_VERSION_15 || + zfs_kernel_version == SPA_VERSION_14 || + zfs_kernel_version == SPA_VERSION_13) + cflag = ZFS_CMD_COMPAT_V15; + } oldsize = zc->zc_nvlist_dst_size; ret = zcmd_ioctl_compat(fd, cmd, zc, cflag); Modified: projects/calloutng/lib/libc/regex/regcomp.c ============================================================================== --- projects/calloutng/lib/libc/regex/regcomp.c Fri Mar 1 23:26:13 2013 (r247596) +++ projects/calloutng/lib/libc/regex/regcomp.c Sat Mar 2 00:04:07 2013 (r247597) @@ -1212,7 +1212,7 @@ CHaddrange(struct parse *p, cset *cs, wi } cs->ranges = newranges; cs->ranges[cs->nranges].min = min; - cs->ranges[cs->nranges].min = max; + cs->ranges[cs->nranges].max = max; cs->nranges++; } Modified: projects/calloutng/lib/libc/rpc/clnt_vc.c ============================================================================== --- projects/calloutng/lib/libc/rpc/clnt_vc.c Fri Mar 1 23:26:13 2013 (r247596) +++ projects/calloutng/lib/libc/rpc/clnt_vc.c Sat Mar 2 00:04:07 2013 (r247597) @@ -260,7 +260,7 @@ clnt_vc_create(fd, raddr, prog, vers, se if (ct->ct_addr.buf == NULL) goto err; memcpy(ct->ct_addr.buf, raddr->buf, raddr->len); - ct->ct_addr.len = raddr->maxlen; + ct->ct_addr.len = raddr->len; ct->ct_addr.maxlen = raddr->maxlen; /* Modified: projects/calloutng/lib/libutil/kinfo_getproc.3 ============================================================================== --- projects/calloutng/lib/libutil/kinfo_getproc.3 Fri Mar 1 23:26:13 2013 (r247596) +++ projects/calloutng/lib/libutil/kinfo_getproc.3 Sat Mar 2 00:04:07 2013 (r247597) @@ -25,7 +25,7 @@ .\" .\" $FreeBSD$ .\" -.Dd February 25, 2012 +.Dd March 1, 2013 .Dt KINFO_GETPROC 3 .Os .Sh NAME @@ -37,7 +37,7 @@ .In sys/types.h .In libutil.h .Ft struct kinfo_proc * -.Fn kinfo_getproc "pid_t pid" "int *cntp" +.Fn kinfo_getproc "pid_t pid" .Sh DESCRIPTION This function is used for obtaining process information from the kernel. .Pp Modified: projects/calloutng/share/mk/bsd.compiler.mk ============================================================================== --- projects/calloutng/share/mk/bsd.compiler.mk Fri Mar 1 23:26:13 2013 (r247596) +++ projects/calloutng/share/mk/bsd.compiler.mk Sat Mar 2 00:04:07 2013 (r247597) @@ -14,7 +14,7 @@ COMPILER_TYPE:= gcc . elif ${_COMPILER_VERSION:Mclang} COMPILER_TYPE:= clang . else -.error Unable to determine compiler type for ${CC} +.error Unable to determine compiler type for ${CC}. Consider setting COMPILER_TYPE. . endif . undef _COMPILER_VERSION . endif Modified: projects/calloutng/sys/arm/allwinner/files.a10 ============================================================================== --- projects/calloutng/sys/arm/allwinner/files.a10 Fri Mar 1 23:26:13 2013 (r247596) +++ projects/calloutng/sys/arm/allwinner/files.a10 Sat Mar 2 00:04:07 2013 (r247597) @@ -17,5 +17,5 @@ arm/allwinner/timer.c standard arm/allwinner/aintc.c standard arm/allwinner/bus_space.c standard arm/allwinner/common.c standard -arm/allwinner/console.c standard +#arm/allwinner/console.c standard arm/allwinner/a10_machdep.c standard Copied: projects/calloutng/sys/arm/broadcom/bcm2835/bcm2835_dma.c (from r247596, head/sys/arm/broadcom/bcm2835/bcm2835_dma.c) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/calloutng/sys/arm/broadcom/bcm2835/bcm2835_dma.c Sat Mar 2 00:04:07 2013 (r247597, copy of r247596, head/sys/arm/broadcom/bcm2835/bcm2835_dma.c) @@ -0,0 +1,727 @@ +/* + * Copyright (c) 2013 Daisuke Aoyama + * Copyright (c) 2013 Oleksandr Tymoshenko + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + */ + +#include +__FBSDID("$FreeBSD$"); + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include + +#include +#include +#include +#include +#include +#include + +#include "bcm2835_dma.h" +#include "bcm2835_vcbus.h" + +#define MAX_REG 9 + +/* private flags */ +#define BCM_DMA_CH_USED 0x00000001 +#define BCM_DMA_CH_FREE 0x40000000 +#define BCM_DMA_CH_UNMAP 0x80000000 + +/* Register Map (4.2.1.2) */ +#define BCM_DMA_CS(n) (0x100*(n) + 0x00) +#define CS_ACTIVE (1 << 0) +#define CS_END (1 << 1) +#define CS_INT (1 << 2) +#define CS_DREQ (1 << 3) +#define CS_ISPAUSED (1 << 4) +#define CS_ISHELD (1 << 5) +#define CS_ISWAIT (1 << 6) +#define CS_ERR (1 << 8) +#define CS_WAITWRT (1 << 28) +#define CS_DISDBG (1 << 29) +#define CS_ABORT (1 << 30) +#define CS_RESET (1 << 31) +#define BCM_DMA_CBADDR(n) (0x100*(n) + 0x04) +#define BCM_DMA_INFO(n) (0x100*(n) + 0x08) +#define INFO_INT_EN (1 << 0) +#define INFO_TDMODE (1 << 1) +#define INFO_WAIT_RESP (1 << 3) +#define INFO_D_INC (1 << 4) +#define INFO_D_WIDTH (1 << 5) +#define INFO_D_DREQ (1 << 6) +#define INFO_S_INC (1 << 8) +#define INFO_S_WIDTH (1 << 9) +#define INFO_S_DREQ (1 << 10) +#define INFO_WAITS_SHIFT (21) +#define INFO_PERMAP_SHIFT (16) +#define INFO_PERMAP_MASK (0x1f << INFO_PERMAP_SHIFT) + +#define BCM_DMA_SRC(n) (0x100*(n) + 0x0C) +#define BCM_DMA_DST(n) (0x100*(n) + 0x10) +#define BCM_DMA_LEN(n) (0x100*(n) + 0x14) +#define BCM_DMA_STRIDE(n) (0x100*(n) + 0x18) +#define BCM_DMA_CBNEXT(n) (0x100*(n) + 0x1C) +#define BCM_DMA_DEBUG(n) (0x100*(n) + 0x20) +#define DEBUG_ERROR_MASK (7) + +#define BCM_DMA_INT_STATUS 0xfe0 +#define BCM_DMA_ENABLE 0xff0 + +/* relative offset from BCM_VC_DMA0_BASE (p.39) */ +#define BCM_DMA_CH(n) (0x100*(n)) + +/* DMA Control Block - 256bit aligned (p.40) */ +struct bcm_dma_cb { + uint32_t info; /* Transfer Information */ + uint32_t src; /* Source Address */ + uint32_t dst; /* Destination Address */ + uint32_t len; /* Transfer Length */ + uint32_t stride; /* 2D Mode Stride */ + uint32_t next; /* Next Control Block Address */ + uint32_t rsvd1; /* Reserved */ + uint32_t rsvd2; /* Reserved */ +}; + +#ifdef DEBUG +static void bcm_dma_cb_dump(struct bcm_dma_cb *cb); +static void bcm_dma_reg_dump(int ch); +#endif + +/* DMA channel private info */ +struct bcm_dma_ch { + int ch; + uint32_t flags; + struct bcm_dma_cb * cb; + uint32_t vc_cb; + bus_dmamap_t dma_map; + void (*intr_func)(int, void *); + void * intr_arg; +}; + +struct bcm_dma_softc { + device_t sc_dev; + struct mtx sc_mtx; + struct resource * sc_mem; + struct resource * sc_irq[BCM_DMA_CH_MAX]; + void * sc_intrhand[BCM_DMA_CH_MAX]; + struct bcm_dma_ch sc_dma_ch[BCM_DMA_CH_MAX]; + bus_dma_tag_t sc_dma_tag; +}; + +static struct bcm_dma_softc *bcm_dma_sc = NULL; + +static void +bcm_dmamap_cb(void *arg, bus_dma_segment_t *segs, + int nseg, int err) +{ + bus_addr_t *addr; + + if (err) + return; + + addr = (bus_addr_t*)arg; + *addr = PHYS_TO_VCBUS(segs[0].ds_addr); +} + +static void +bcm_dma_reset(device_t dev, int ch) +{ + struct bcm_dma_softc *sc = device_get_softc(dev); + struct bcm_dma_cb *cb; + uint32_t cs; + int count; + + if (ch < 0 || ch >= BCM_DMA_CH_MAX) + return; + + cs = bus_read_4(sc->sc_mem, BCM_DMA_CS(ch)); + + if (cs & CS_ACTIVE) { + /* pause current task */ + bus_write_4(sc->sc_mem, BCM_DMA_CS(ch), 0); + + count = 1000; + do { + cs = bus_read_4(sc->sc_mem, BCM_DMA_CS(ch)); + } while (!(cs & CS_ISPAUSED) && (count-- > 0)); + + if (!(cs & CS_ISPAUSED)) { + device_printf(dev, + "Can't abort DMA transfer at channel %d\n", ch); + } + + bus_write_4(sc->sc_mem, BCM_DMA_CBNEXT(ch), 0); + + /* Complete everything, clear interrupt */ + bus_write_4(sc->sc_mem, BCM_DMA_CS(ch), + CS_ABORT | CS_INT | CS_END| CS_ACTIVE); + } + + /* clear control blocks */ + bus_write_4(sc->sc_mem, BCM_DMA_CBADDR(ch), 0); + bus_write_4(sc->sc_mem, BCM_DMA_CBNEXT(ch), 0); + + /* Reset control block */ + cb = sc->sc_dma_ch[ch].cb; + bzero(cb, sizeof(cb)); +} + +static int +bcm_dma_init(device_t dev) +{ + struct bcm_dma_softc *sc = device_get_softc(dev); + uint32_t mask; + struct bcm_dma_ch *ch; + void *cb_virt; + vm_paddr_t cb_phys; + int err; + int i; + + /* disable and clear interrupt status */ + bus_write_4(sc->sc_mem, BCM_DMA_ENABLE, 0); + bus_write_4(sc->sc_mem, BCM_DMA_INT_STATUS, 0); + + /* Allocate DMA chunks control blocks */ + /* p.40 of spec - control block should be 32-bit aligned */ + err = bus_dma_tag_create(bus_get_dma_tag(dev), + 1, 0, BUS_SPACE_MAXADDR_32BIT, + BUS_SPACE_MAXADDR, NULL, NULL, + sizeof(struct bcm_dma_cb), 1, + sizeof(struct bcm_dma_cb), + BUS_DMA_ALLOCNOW, NULL, NULL, + &sc->sc_dma_tag); + + if (err) { + device_printf(dev, "failed allocate DMA tag"); + return (err); + } + + /* setup initial settings */ + for (i = 0; i < BCM_DMA_CH_MAX; i++) { + ch = &sc->sc_dma_ch[i]; + + err = bus_dmamem_alloc(sc->sc_dma_tag, &cb_virt, + BUS_DMA_WAITOK | BUS_DMA_COHERENT | BUS_DMA_ZERO, + &ch->dma_map); + if (err) { + device_printf(dev, "cannot allocate DMA memory\n"); + break; + } + + /* + * Least alignment for busdma-allocated stuff is cache + * line size, so just make sure nothing stupid happend + * and we got properly aligned address + */ + if ((uintptr_t)cb_virt & 0x1f) { + device_printf(dev, + "DMA address is not 32-bytes aligned: %p\n", + (void*)cb_virt); + break; + } + + err = bus_dmamap_load(sc->sc_dma_tag, ch->dma_map, cb_virt, + sizeof(struct bcm_dma_cb), bcm_dmamap_cb, &cb_phys, + BUS_DMA_WAITOK); + if (err) { + device_printf(dev, "cannot load DMA memory\n"); + break; + } + + bzero(ch, sizeof(struct bcm_dma_ch)); + ch->ch = i; + ch->cb = cb_virt; + ch->vc_cb = cb_phys; + ch->intr_func = NULL; + ch->intr_arg = NULL; + ch->flags = BCM_DMA_CH_UNMAP; + + ch->cb->info = INFO_WAIT_RESP; + + /* reset DMA engine */ + bcm_dma_reset(dev, i); + } + + /* now use DMA2/DMA3 only */ + sc->sc_dma_ch[2].flags = BCM_DMA_CH_FREE; + sc->sc_dma_ch[3].flags = BCM_DMA_CH_FREE; + + /* enable DMAs */ + mask = 0; + + for (i = 0; i < BCM_DMA_CH_MAX; i++) + if (sc->sc_dma_ch[i].flags & BCM_DMA_CH_FREE) + mask |= (1 << i); + + bus_write_4(sc->sc_mem, BCM_DMA_ENABLE, mask); + + return (0); +} + +/* + * Allocate DMA channel for further use, returns channel # or + * BCM_DMA_CH_INVALID + */ +int +bcm_dma_allocate(int req_ch) +{ + struct bcm_dma_softc *sc = bcm_dma_sc; + int ch = BCM_DMA_CH_INVALID; + int i; + + if (req_ch >= BCM_DMA_CH_MAX) + return (BCM_DMA_CH_INVALID); + + /* Auto(req_ch < 0) or CH specified */ + mtx_lock(&sc->sc_mtx); + + if (req_ch < 0) { + for (i = 0; i < BCM_DMA_CH_MAX; i++) { + if (sc->sc_dma_ch[i].flags & BCM_DMA_CH_FREE) { + ch = i; + sc->sc_dma_ch[ch].flags &= ~BCM_DMA_CH_FREE; + sc->sc_dma_ch[ch].flags |= BCM_DMA_CH_USED; + break; + } + } + } + else { + if (sc->sc_dma_ch[req_ch].flags & BCM_DMA_CH_FREE) { + ch = req_ch; + sc->sc_dma_ch[ch].flags &= ~BCM_DMA_CH_FREE; + sc->sc_dma_ch[ch].flags |= BCM_DMA_CH_USED; + } + } + + mtx_unlock(&sc->sc_mtx); + return (ch); +} + +/* + * Frees allocated channel. Returns 0 on success, -1 otherwise + */ +int +bcm_dma_free(int ch) +{ + struct bcm_dma_softc *sc = bcm_dma_sc; + + if (ch < 0 || ch >= BCM_DMA_CH_MAX) + return (-1); + + mtx_lock(&sc->sc_mtx); + if (sc->sc_dma_ch[ch].flags & BCM_DMA_CH_USED) { + sc->sc_dma_ch[ch].flags |= BCM_DMA_CH_FREE; + sc->sc_dma_ch[ch].flags &= ~BCM_DMA_CH_USED; + sc->sc_dma_ch[ch].intr_func = NULL; + sc->sc_dma_ch[ch].intr_arg = NULL; + + /* reset DMA engine */ + bcm_dma_reset(sc->sc_dev, ch); + } + + mtx_unlock(&sc->sc_mtx); + return (0); +} + +/* + * Assign handler function for channel interrupt + * Returns 0 on success, -1 otherwise + */ +int +bcm_dma_setup_intr(int ch, void (*func)(int, void *), void *arg) +{ + struct bcm_dma_softc *sc = bcm_dma_sc; + struct bcm_dma_cb *cb; + + if (ch < 0 || ch >= BCM_DMA_CH_MAX) + return (-1); + + if (!(sc->sc_dma_ch[ch].flags & BCM_DMA_CH_USED)) + return (-1); + + sc->sc_dma_ch[ch].intr_func = func; + sc->sc_dma_ch[ch].intr_arg = arg; + cb = sc->sc_dma_ch[ch].cb; + cb->info |= INFO_INT_EN; + + return (0); +} + +/* + * Setup DMA source parameters + * ch - channel number + * dreq - hardware DREQ # or BCM_DMA_DREQ_NONE if + * source is physical memory + * inc_addr - BCM_DMA_INC_ADDR if source address + * should be increased after each access or + * BCM_DMA_SAME_ADDR if address should remain + * the same + * width - size of read operation, BCM_DMA_32BIT + * for 32bit bursts, BCM_DMA_128BIT for 128 bits + * + * Returns 0 on success, -1 otherwise + */ +int +bcm_dma_setup_src(int ch, int dreq, int inc_addr, int width) +{ + struct bcm_dma_softc *sc = bcm_dma_sc; + uint32_t info; + + if (ch < 0 || ch >= BCM_DMA_CH_MAX) + return (-1); + + if (!(sc->sc_dma_ch[ch].flags & BCM_DMA_CH_USED)) + return (-1); + + info = sc->sc_dma_ch[ch].cb->info; + info &= ~INFO_PERMAP_MASK; + info |= (dreq << INFO_PERMAP_SHIFT) & INFO_PERMAP_MASK; + + if (dreq) + info |= INFO_S_DREQ; + else + info &= ~INFO_S_DREQ; + + if (width == BCM_DMA_128BIT) + info |= INFO_S_WIDTH; + else + info &= ~INFO_S_WIDTH; + + if (inc_addr == BCM_DMA_INC_ADDR) + info |= INFO_S_INC; + else + info &= ~INFO_S_INC; + + sc->sc_dma_ch[ch].cb->info = info; + + return (0); +} + +/* + * Setup DMA destination parameters + * ch - channel number + * dreq - hardware DREQ # or BCM_DMA_DREQ_NONE if + * destination is physical memory + * inc_addr - BCM_DMA_INC_ADDR if source address + * should be increased after each access or + * BCM_DMA_SAME_ADDR if address should remain + * the same + * width - size of write operation, BCM_DMA_32BIT + * for 32bit bursts, BCM_DMA_128BIT for 128 bits + * + * Returns 0 on success, -1 otherwise + */ +int +bcm_dma_setup_dst(int ch, int dreq, int inc_addr, int width) +{ + struct bcm_dma_softc *sc = bcm_dma_sc; + uint32_t info; + + if (ch < 0 || ch >= BCM_DMA_CH_MAX) + return (-1); + + if (!(sc->sc_dma_ch[ch].flags & BCM_DMA_CH_USED)) + return (-1); + + info = sc->sc_dma_ch[ch].cb->info; + info &= ~INFO_PERMAP_MASK; + info |= (dreq << INFO_PERMAP_SHIFT) & INFO_PERMAP_MASK; + + if (dreq) + info |= INFO_D_DREQ; + else + info &= ~INFO_D_DREQ; + + if (width == BCM_DMA_128BIT) + info |= INFO_D_WIDTH; + else + info &= ~INFO_D_WIDTH; + + if (inc_addr == BCM_DMA_INC_ADDR) + info |= INFO_D_INC; + else + info &= ~INFO_D_INC; + + sc->sc_dma_ch[ch].cb->info = info; + + return (0); +} + +#ifdef DEBUG +void +bcm_dma_cb_dump(struct bcm_dma_cb *cb) +{ + + printf("DMA CB "); + printf("INFO: %8.8x ", cb->info); + printf("SRC: %8.8x ", cb->src); + printf("DST: %8.8x ", cb->dst); + printf("LEN: %8.8x ", cb->len); + printf("\n"); + printf("STRIDE: %8.8x ", cb->stride); + printf("NEXT: %8.8x ", cb->next); + printf("RSVD1: %8.8x ", cb->rsvd1); + printf("RSVD2: %8.8x ", cb->rsvd2); + printf("\n"); +} + +void +bcm_dma_reg_dump(int ch) +{ + struct bcm_dma_softc *sc = bcm_dma_sc; + int i; + uint32_t reg; + + if (ch < 0 || ch >= BCM_DMA_CH_MAX) + return; + + printf("DMA%d: ", ch); + for (i = 0; i < MAX_REG; i++) { + reg = bus_read_4(sc->sc_mem, BCM_DMA_CH(ch) + i*4); + printf("%8.8x ", reg); + } + printf("\n"); +} +#endif + +/* + * Start DMA transaction + * ch - channel number + * src, dst - source and destination address in + * ARM physical memory address space. + * len - amount of bytes to be transfered + * + * Returns 0 on success, -1 otherwise + */ +int +bcm_dma_start(int ch, vm_paddr_t src, vm_paddr_t dst, int len) +{ + struct bcm_dma_softc *sc = bcm_dma_sc; + struct bcm_dma_cb *cb; + + if (ch < 0 || ch >= BCM_DMA_CH_MAX) + return (-1); + + if (!(sc->sc_dma_ch[ch].flags & BCM_DMA_CH_USED)) + return (-1); + + cb = sc->sc_dma_ch[ch].cb; + if (BCM2835_ARM_IS_IO(src)) + cb->src = IO_TO_VCBUS(src); + else + cb->src = PHYS_TO_VCBUS(src); + if (BCM2835_ARM_IS_IO(dst)) + cb->dst = IO_TO_VCBUS(dst); + else + cb->dst = PHYS_TO_VCBUS(dst); + cb->len = len; + + bus_dmamap_sync(sc->sc_dma_tag, + sc->sc_dma_ch[ch].dma_map, BUS_DMASYNC_PREWRITE); + + bus_write_4(sc->sc_mem, BCM_DMA_CBADDR(ch), + sc->sc_dma_ch[ch].vc_cb); + bus_write_4(sc->sc_mem, BCM_DMA_CS(ch), CS_ACTIVE); + +#ifdef DEBUG + bcm_dma_cb_dump(sc->sc_dma_ch[ch].cb); + bcm_dma_reg_dump(ch); +#endif + + return (0); +} + +/* + * Get length requested for DMA transaction + * ch - channel number + * + * Returns size of transaction, 0 if channel is invalid + */ +uint32_t +bcm_dma_length(int ch) +{ + struct bcm_dma_softc *sc = bcm_dma_sc; + struct bcm_dma_cb *cb; + + if (ch < 0 || ch >= BCM_DMA_CH_MAX) + return (0); + + if (!(sc->sc_dma_ch[ch].flags & BCM_DMA_CH_USED)) + return (0); + + cb = sc->sc_dma_ch[ch].cb; + + return (cb->len); +} + +static void +bcm_dma_intr(void *arg) +{ + struct bcm_dma_softc *sc = bcm_dma_sc; + struct bcm_dma_ch *ch = (struct bcm_dma_ch *)arg; + uint32_t cs, debug; + + /* my interrupt? */ + cs = bus_read_4(sc->sc_mem, BCM_DMA_CS(ch->ch)); + + if (!(cs & (CS_INT | CS_ERR))) + return; + + /* running? */ + if (!(ch->flags & BCM_DMA_CH_USED)) { + device_printf(sc->sc_dev, + "unused DMA intr CH=%d, CS=%x\n", ch->ch, cs); + return; + } + + if (cs & CS_ERR) { + debug = bus_read_4(sc->sc_mem, BCM_DMA_DEBUG(ch->ch)); + device_printf(sc->sc_dev, "DMA error %d on CH%d\n", + debug & DEBUG_ERROR_MASK, ch->ch); + bus_write_4(sc->sc_mem, BCM_DMA_DEBUG(ch->ch), + debug & DEBUG_ERROR_MASK); + } + + if (cs & CS_INT) { + /* acknowledge interrupt */ + bus_write_4(sc->sc_mem, BCM_DMA_CS(ch->ch), + CS_INT | CS_END); + + /* Prepare for possible access to len field */ + bus_dmamap_sync(sc->sc_dma_tag, ch->dma_map, + BUS_DMASYNC_POSTWRITE); + + /* save callback function and argument */ + if (ch->intr_func) + ch->intr_func(ch->ch, ch->intr_arg); + } +} + +static int +bcm_dma_probe(device_t dev) +{ + + if (!ofw_bus_is_compatible(dev, "broadcom,bcm2835-dma")) + return (ENXIO); + + device_set_desc(dev, "BCM2835 DMA Controller"); + return (BUS_PROBE_DEFAULT); +} + +static int +bcm_dma_attach(device_t dev) +{ + struct bcm_dma_softc *sc = device_get_softc(dev); + int rid, err = 0; + int i; + + sc->sc_dev = dev; + + if (bcm_dma_sc) + return (ENXIO); + + for (i = 0; i < BCM_DMA_CH_MAX; i++) { + sc->sc_irq[i] = NULL; + sc->sc_intrhand[i] = NULL; + } + + /* DMA0 - DMA14 */ + rid = 0; + sc->sc_mem = bus_alloc_resource_any(dev, SYS_RES_MEMORY, &rid, RF_ACTIVE); + if (sc->sc_mem == NULL) { + device_printf(dev, "could not allocate memory resource\n"); + return (ENXIO); + } + + /* IRQ DMA0 - DMA11 XXX NOT USE DMA12(spurious?) */ + for (rid = 0; rid < BCM_DMA_CH_MAX; rid++) { + sc->sc_irq[rid] = bus_alloc_resource_any(dev, SYS_RES_IRQ, &rid, + RF_ACTIVE); + if (sc->sc_irq[rid] == NULL) { + device_printf(dev, "cannot allocate interrupt\n"); + err = ENXIO; + goto fail; + } + if (bus_setup_intr(dev, sc->sc_irq[rid], INTR_TYPE_MISC | INTR_MPSAFE, + NULL, bcm_dma_intr, &sc->sc_dma_ch[rid], + &sc->sc_intrhand[rid])) { + device_printf(dev, "cannot setup interrupt handler\n"); + err = ENXIO; + goto fail; + } + } + + mtx_init(&sc->sc_mtx, "bcmdma", "bcmdma", MTX_DEF); + bcm_dma_sc = sc; + + err = bcm_dma_init(dev); + if (err) + goto fail; + + return (err); + +fail: + if (sc->sc_mem) + bus_release_resource(dev, SYS_RES_MEMORY, 0, sc->sc_mem); + + for (i = 0; i < BCM_DMA_CH_MAX; i++) { + if (sc->sc_intrhand[i]) + bus_teardown_intr(dev, sc->sc_irq[i], sc->sc_intrhand[i]); + if (sc->sc_irq[i]) + bus_release_resource(dev, SYS_RES_IRQ, 0, sc->sc_irq[i]); + } + + return (err); +} + +static device_method_t bcm_dma_methods[] = { + DEVMETHOD(device_probe, bcm_dma_probe), + DEVMETHOD(device_attach, bcm_dma_attach), + { 0, 0 } +}; + +static driver_t bcm_dma_driver = { + "bcm_dma", + bcm_dma_methods, + sizeof(struct bcm_dma_softc), +}; + +static devclass_t bcm_dma_devclass; + +DRIVER_MODULE(bcm_dma, simplebus, bcm_dma_driver, bcm_dma_devclass, 0, 0); +MODULE_VERSION(bcm_dma, 1); Copied: projects/calloutng/sys/arm/broadcom/bcm2835/bcm2835_dma.h (from r247596, head/sys/arm/broadcom/bcm2835/bcm2835_dma.h) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/calloutng/sys/arm/broadcom/bcm2835/bcm2835_dma.h Sat Mar 2 00:04:07 2013 (r247597, copy of r247596, head/sys/arm/broadcom/bcm2835/bcm2835_dma.h) @@ -0,0 +1,62 @@ +/* + * Copyright (c) 2013 Daisuke Aoyama + * Copyright (c) 2013 Oleksandr Tymoshenko + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef _BCM2835_DMA_H_ +#define _BCM2835_DMA_H_ + +#define BCM_DMA_BLOCK_SIZE 512 + +/* DMA0-DMA15 but DMA15 is special */ +#define BCM_DMA_CH_MAX 12 + +/* request CH for any nubmer */ +#define BCM_DMA_CH_INVALID (-1) +#define BCM_DMA_CH_ANY (-1) +#define BCM_DMA_CH_FAST1 (2) +#define BCM_DMA_CH_FAST2 (3) + +/* Peripheral DREQ Signals (4.2.1.3) */ +#define BCM_DMA_DREQ_NONE 0 +#define BCM_DMA_DREQ_EMMC 11 +#define BCM_DMA_DREQ_SDHOST 13 + +#define BCM_DMA_SAME_ADDR 0 +#define BCM_DMA_INC_ADDR 1 + +#define BCM_DMA_32BIT 0 +#define BCM_DMA_128BIT 1 + +int bcm_dma_allocate(int req_ch); +int bcm_dma_free(int ch); +int bcm_dma_setup_intr(int ch, void (*func)(int, void *), void *arg); +int bcm_dma_setup_src(int ch, int dreq, int inc_addr, int width); +int bcm_dma_setup_dst(int ch, int dreq, int inc_addr, int width); +int bcm_dma_start(int ch, vm_paddr_t src, vm_paddr_t dst, int len); +uint32_t bcm_dma_length(int ch); + +#endif /* _BCM2835_DMA_H_ */ Modified: projects/calloutng/sys/arm/broadcom/bcm2835/bcm2835_sdhci.c ============================================================================== --- projects/calloutng/sys/arm/broadcom/bcm2835/bcm2835_sdhci.c Fri Mar 1 23:26:13 2013 (r247596) +++ projects/calloutng/sys/arm/broadcom/bcm2835/bcm2835_sdhci.c Sat Mar 2 00:04:07 2013 (r247597) @@ -67,8 +67,13 @@ __FBSDID("$FreeBSD$"); #include #include "sdhci_if.h" +#include "bcm2835_dma.h" +#include "bcm2835_vcbus.h" + #define BCM2835_DEFAULT_SDHCI_FREQ 50 +#define BCM_SDHCI_BUFFER_SIZE 512 + #define DEBUG #ifdef DEBUG @@ -85,9 +90,11 @@ __FBSDID("$FreeBSD$"); */ static int bcm2835_sdhci_min_freq = 400000; static int bcm2835_sdhci_hs = 1; +static int bcm2835_sdhci_pio_mode = 0; TUNABLE_INT("hw.bcm2835.sdhci.min_freq", &bcm2835_sdhci_min_freq); TUNABLE_INT("hw.bcm2835.sdhci.hs", &bcm2835_sdhci_hs); +TUNABLE_INT("hw.bcm2835.sdhci.pio_mode", &bcm2835_sdhci_pio_mode); *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-projects@FreeBSD.ORG Sat Mar 2 00:21:30 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 9F0C66E8; Sat, 2 Mar 2013 00:21:30 +0000 (UTC) (envelope-from davide@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 7AA3A1E40; Sat, 2 Mar 2013 00:21:30 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r220LUTT053451; Sat, 2 Mar 2013 00:21:30 GMT (envelope-from davide@svn.freebsd.org) Received: (from davide@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r220LUHG053450; Sat, 2 Mar 2013 00:21:30 GMT (envelope-from davide@svn.freebsd.org) Message-Id: <201303020021.r220LUHG053450@svn.freebsd.org> From: Davide Italiano Date: Sat, 2 Mar 2013 00:21:30 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247599 - projects/calloutng/sys/kern X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 02 Mar 2013 00:21:30 -0000 Author: davide Date: Sat Mar 2 00:21:29 2013 New Revision: 247599 URL: http://svnweb.freebsd.org/changeset/base/247599 Log: Now that the macros THREAD_NO_SLEEPING() and THREAD_SLEEPING_OK() are allowed to nest, remove an old hack. Modified: projects/calloutng/sys/kern/kern_timeout.c Modified: projects/calloutng/sys/kern/kern_timeout.c ============================================================================== --- projects/calloutng/sys/kern/kern_timeout.c Sat Mar 2 00:11:27 2013 (r247598) +++ projects/calloutng/sys/kern/kern_timeout.c Sat Mar 2 00:21:29 2013 (r247599) @@ -658,13 +658,11 @@ softclock_call_cc(struct callout *c, str #ifdef DIAGNOSTIC sbt1 = sbinuptime(); #endif - if (!direct) - THREAD_NO_SLEEPING(); + THREAD_NO_SLEEPING(); SDT_PROBE(callout_execute, kernel, , callout_start, c, 0, 0, 0, 0); c_func(c_arg); SDT_PROBE(callout_execute, kernel, , callout_end, c, 0, 0, 0, 0); - if (!direct) - THREAD_SLEEPING_OK(); + THREAD_SLEEPING_OK(); #ifdef DIAGNOSTIC bt2 = sbinuptime(); bt2 -= bt1; From owner-svn-src-projects@FreeBSD.ORG Sat Mar 2 00:53:17 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 2477F7C; Sat, 2 Mar 2013 00:53:17 +0000 (UTC) (envelope-from davide@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 17B841F3D; Sat, 2 Mar 2013 00:53:17 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r220rGAY063489; Sat, 2 Mar 2013 00:53:16 GMT (envelope-from davide@svn.freebsd.org) Received: (from davide@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r220rG7x063488; Sat, 2 Mar 2013 00:53:16 GMT (envelope-from davide@svn.freebsd.org) Message-Id: <201303020053.r220rG7x063488@svn.freebsd.org> From: Davide Italiano Date: Sat, 2 Mar 2013 00:53:16 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247603 - projects/calloutng/sys/kern X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 02 Mar 2013 00:53:17 -0000 Author: davide Date: Sat Mar 2 00:53:16 2013 New Revision: 247603 URL: http://svnweb.freebsd.org/changeset/base/247603 Log: Try to use a better type for 'cc_waiting' and 'cc_cancel' fields of cc_exec structure. Their value has to be only 0 or 1 and this change try to make this more evident. Suggested by: attilio Modified: projects/calloutng/sys/kern/kern_timeout.c Modified: projects/calloutng/sys/kern/kern_timeout.c ============================================================================== --- projects/calloutng/sys/kern/kern_timeout.c Sat Mar 2 00:53:12 2013 (r247602) +++ projects/calloutng/sys/kern/kern_timeout.c Sat Mar 2 00:53:16 2013 (r247603) @@ -123,8 +123,8 @@ struct cc_exec { int ce_migration_cpu; sbintime_t ce_migration_time; #endif - int cc_cancel; - int cc_waiting; + boolean_t cc_cancel; + boolean_t cc_waiting; }; /* From owner-svn-src-projects@FreeBSD.ORG Sat Mar 2 00:57:23 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 5ED9E67E; Sat, 2 Mar 2013 00:57:23 +0000 (UTC) (envelope-from asmrookie@gmail.com) Received: from mail-ie0-x230.google.com (mail-ie0-x230.google.com [IPv6:2607:f8b0:4001:c03::230]) by mx1.freebsd.org (Postfix) with ESMTP id 2368D1F7C; Sat, 2 Mar 2013 00:57:23 +0000 (UTC) Received: by mail-ie0-f176.google.com with SMTP id k13so4258295iea.21 for ; Fri, 01 Mar 2013 16:57:22 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:x-received:reply-to:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:cc:content-type; bh=pZihT3cvB3aDlA8EpURwAq+d8CWrpNkl0nhT7WmCcM4=; b=dDhAfDDJnXxdRo+xJ6jUmoR7VjYp8hwqr9Uzf1Ezykq5KvvuWK0HOQKHrar0ahNAcJ VQf3yy9kouxVXCb9mzYbDyFHI5ElznA2VYSS5IrfcidUgWqq3WeKh6/udXgoY5GzH4Kf B4quuytWMsVulXWtkBooVC2m7hrdeSY0/nKpikPmq5mKHSlAE/7/A0WcvBkdLWpcnI4I RfNl/XBT9XCQmeJTt/X8UgEAKSgujMuro+CmvVRKoP8JRddNTiHw0vzmHMqnTcJpSVpv 2GZTJNl4DvE4WRhYarTfljkzm3ZqY5alJZp0y/W8inA6R3dv5ZeZUNCpOnPSRuRY5LsC x9aw== MIME-Version: 1.0 X-Received: by 10.43.45.195 with SMTP id ul3mr9014203icb.14.1362185842805; Fri, 01 Mar 2013 16:57:22 -0800 (PST) Sender: asmrookie@gmail.com Received: by 10.42.117.134 with HTTP; Fri, 1 Mar 2013 16:57:22 -0800 (PST) In-Reply-To: <201303020053.r220rG7x063488@svn.freebsd.org> References: <201303020053.r220rG7x063488@svn.freebsd.org> Date: Sat, 2 Mar 2013 01:57:22 +0100 X-Google-Sender-Auth: Ms0U8CgFLBd5P-Apkmtdzze97TQ Message-ID: Subject: Re: svn commit: r247603 - projects/calloutng/sys/kern From: Attilio Rao To: Davide Italiano Content-Type: text/plain; charset=UTF-8 Cc: svn-src-projects@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list Reply-To: attilio@FreeBSD.org List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 02 Mar 2013 00:57:23 -0000 On Sat, Mar 2, 2013 at 1:53 AM, Davide Italiano wrote: > Author: davide > Date: Sat Mar 2 00:53:16 2013 > New Revision: 247603 > URL: http://svnweb.freebsd.org/changeset/base/247603 > > Log: > Try to use a better type for 'cc_waiting' and 'cc_cancel' fields of > cc_exec structure. Their value has to be only 0 or 1 and this change > try to make this more evident. > > Suggested by: attilio Usually you may also use TRUE/FALSE, but in few places in the kernel they are checked against 0 (==0 or != 0) so that would be fine. I just wouldn't assing them directly 1 as I'm sure this is still the case somewhere in your kern_timeout.c. Attilio -- Peace can only be achieved by understanding - A. Einstein From owner-svn-src-projects@FreeBSD.ORG Sat Mar 2 11:33:22 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 3603AED7; Sat, 2 Mar 2013 11:33:22 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 246E575C; Sat, 2 Mar 2013 11:33:22 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r22BXMfu062902; Sat, 2 Mar 2013 11:33:22 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r22BXM4S062901; Sat, 2 Mar 2013 11:33:22 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201303021133.r22BXM4S062901@svn.freebsd.org> From: Alexander Motin Date: Sat, 2 Mar 2013 11:33:21 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247618 - projects/calloutng/sys/kern X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 02 Mar 2013 11:33:22 -0000 Author: mav Date: Sat Mar 2 11:33:21 2013 New Revision: 247618 URL: http://svnweb.freebsd.org/changeset/base/247618 Log: Remove extra curcpu reading. Modified: projects/calloutng/sys/kern/kern_clocksource.c Modified: projects/calloutng/sys/kern/kern_clocksource.c ============================================================================== --- projects/calloutng/sys/kern/kern_clocksource.c Sat Mar 2 09:58:47 2013 (r247617) +++ projects/calloutng/sys/kern/kern_clocksource.c Sat Mar 2 11:33:21 2013 (r247618) @@ -299,7 +299,7 @@ getnextevent(void) state = DPCPU_PTR(timerstate); event = state->nextevent; - c = curcpu; + c = -1; #ifdef SMP if ((timer->et_flags & ET_FLAGS_PERCPU) == 0) { CPU_FOREACH(cpu) { From owner-svn-src-projects@FreeBSD.ORG Sat Mar 2 15:33:07 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 2BF06128; Sat, 2 Mar 2013 15:33:07 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 1DB391BE; Sat, 2 Mar 2013 15:33:07 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r22FX6WL038111; Sat, 2 Mar 2013 15:33:06 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r22FX6Qi038110; Sat, 2 Mar 2013 15:33:06 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201303021533.r22FX6Qi038110@svn.freebsd.org> From: Alexander Motin Date: Sat, 2 Mar 2013 15:33:06 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247630 - projects/calloutng/sys/kern X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 02 Mar 2013 15:33:07 -0000 Author: mav Date: Sat Mar 2 15:33:06 2013 New Revision: 247630 URL: http://svnweb.freebsd.org/changeset/base/247630 Log: Remove extra variable. Modified: projects/calloutng/sys/kern/kern_clocksource.c Modified: projects/calloutng/sys/kern/kern_clocksource.c ============================================================================== --- projects/calloutng/sys/kern/kern_clocksource.c Sat Mar 2 15:11:20 2013 (r247629) +++ projects/calloutng/sys/kern/kern_clocksource.c Sat Mar 2 15:33:06 2013 (r247630) @@ -168,7 +168,6 @@ handleevents(sbintime_t now, int fake) sbintime_t t, *hct; struct trapframe *frame; struct pcpu_state *state; - uintfptr_t pc; int usermode; int done, runs; @@ -178,11 +177,9 @@ handleevents(sbintime_t now, int fake) if (fake) { frame = NULL; usermode = 0; - pc = 0; } else { frame = curthread->td_intr_frame; usermode = TRAPF_USERMODE(frame); - pc = TRAPF_PC(frame); } state = DPCPU_PTR(timerstate); @@ -216,7 +213,7 @@ handleevents(sbintime_t now, int fake) runs++; } if (runs && !fake) { - profclock_cnt(runs, usermode, pc); + profclock_cnt(runs, usermode, TRAPF_PC(frame)); done = 1; } } else From owner-svn-src-projects@FreeBSD.ORG Sat Mar 2 16:07:56 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 38500204; Sat, 2 Mar 2013 16:07:56 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 097C9372; Sat, 2 Mar 2013 16:07:56 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r22G7tnN048126; Sat, 2 Mar 2013 16:07:55 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r22G7tHt048125; Sat, 2 Mar 2013 16:07:55 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201303021607.r22G7tHt048125@svn.freebsd.org> From: Alexander Motin Date: Sat, 2 Mar 2013 16:07:55 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247633 - projects/calloutng/sys/kern X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 02 Mar 2013 16:07:56 -0000 Author: mav Date: Sat Mar 2 16:07:55 2013 New Revision: 247633 URL: http://svnweb.freebsd.org/changeset/base/247633 Log: Remove some code duplication due to ET_HW_UNLOCK() inlining. Modified: projects/calloutng/sys/kern/kern_clocksource.c Modified: projects/calloutng/sys/kern/kern_clocksource.c ============================================================================== --- projects/calloutng/sys/kern/kern_clocksource.c Sat Mar 2 15:54:02 2013 (r247632) +++ projects/calloutng/sys/kern/kern_clocksource.c Sat Mar 2 16:07:55 2013 (r247633) @@ -822,18 +822,15 @@ clocksource_cyc_set(const struct bintime (int)(t >> 32), (u_int)(t & 0xffffffff)); ET_HW_LOCK(state); - if (t == state->nextcyc) { - ET_HW_UNLOCK(state); - return; - } + if (t == state->nextcyc) + goto done; state->nextcyc = t; - if (t >= state->nextevent) { - ET_HW_UNLOCK(state); - return; - } + if (t >= state->nextevent) + goto done; state->nextevent = t; if (!periodic) loadtimer(now, 0); +done: ET_HW_UNLOCK(state); } #endif @@ -841,7 +838,6 @@ clocksource_cyc_set(const struct bintime void cpu_new_callout(int cpu, sbintime_t bt, sbintime_t bt_opt) { - sbintime_t now; struct pcpu_state *state; /* Do not touch anything if somebody reconfiguring timers. */ @@ -861,26 +857,20 @@ cpu_new_callout(int cpu, sbintime_t bt, * and scheduling. */ state->nextcallopt = bt_opt; - if (bt >= state->nextcall) { - ET_HW_UNLOCK(state); - return; - } + if (bt >= state->nextcall) + goto done; state->nextcall = bt; /* If there is some other event set earlier -- do nothing. */ - if (bt >= state->nextevent) { - ET_HW_UNLOCK(state); - return; - } + if (bt >= state->nextevent) + goto done; state->nextevent = bt; /* If timer is periodic -- there is nothing to reprogram. */ - if (periodic) { - ET_HW_UNLOCK(state); - return; - } + if (periodic) + goto done; /* If timer is global or of the current CPU -- reprogram it. */ if ((timer->et_flags & ET_FLAGS_PERCPU) == 0 || cpu == curcpu) { - now = sbinuptime(); - loadtimer(now, 0); + loadtimer(sbinuptime(), 0); +done: ET_HW_UNLOCK(state); return; } From owner-svn-src-projects@FreeBSD.ORG Sat Mar 2 17:23:48 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 36E9F49C; Sat, 2 Mar 2013 17:23:48 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 2967B8E6; Sat, 2 Mar 2013 17:23:48 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r22HNm04073939; Sat, 2 Mar 2013 17:23:48 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r22HNm9I073938; Sat, 2 Mar 2013 17:23:48 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201303021723.r22HNm9I073938@svn.freebsd.org> From: Alexander Motin Date: Sat, 2 Mar 2013 17:23:48 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247648 - projects/calloutng/lib/libprocstat X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 02 Mar 2013 17:23:48 -0000 Author: mav Date: Sat Mar 2 17:23:47 2013 New Revision: 247648 URL: http://svnweb.freebsd.org/changeset/base/247648 Log: Revert r237068. It is not needed after namespace pollution fixed. Modified: projects/calloutng/lib/libprocstat/zfs.c Modified: projects/calloutng/lib/libprocstat/zfs.c ============================================================================== --- projects/calloutng/lib/libprocstat/zfs.c Sat Mar 2 17:21:44 2013 (r247647) +++ projects/calloutng/lib/libprocstat/zfs.c Sat Mar 2 17:23:47 2013 (r247648) @@ -35,7 +35,6 @@ #undef lbolt #undef lbolt64 -#undef gethrestime #undef gethrestime_sec #include #include From owner-svn-src-projects@FreeBSD.ORG Sat Mar 2 22:24:44 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 549FDB62; Sat, 2 Mar 2013 22:24:44 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 47C75706; Sat, 2 Mar 2013 22:24:44 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r22MOil5067541; Sat, 2 Mar 2013 22:24:44 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r22MOiLM067539; Sat, 2 Mar 2013 22:24:44 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201303022224.r22MOiLM067539@svn.freebsd.org> From: Alexander Motin Date: Sat, 2 Mar 2013 22:24:44 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247672 - projects/calloutng/sys/powerpc/wii X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 02 Mar 2013 22:24:44 -0000 Author: mav Date: Sat Mar 2 22:24:43 2013 New Revision: 247672 URL: http://svnweb.freebsd.org/changeset/base/247672 Log: Minor sync with head. Modified: projects/calloutng/sys/powerpc/wii/platform_wii.c Modified: projects/calloutng/sys/powerpc/wii/platform_wii.c ============================================================================== --- projects/calloutng/sys/powerpc/wii/platform_wii.c Sat Mar 2 22:19:17 2013 (r247671) +++ projects/calloutng/sys/powerpc/wii/platform_wii.c Sat Mar 2 22:24:43 2013 (r247672) @@ -60,7 +60,7 @@ static void wii_mem_regions(platform_t, int *, struct mem_region **, int *); static unsigned long wii_timebase_freq(platform_t, struct cpuref *cpuref); static void wii_reset(platform_t); -static void wii_cpu_idle(sbintime_t); +static void wii_cpu_idle(sbintime_t sbt); static platform_method_t wii_methods[] = { PLATFORMMETHOD(platform_probe, wii_probe), From owner-svn-src-projects@FreeBSD.ORG Sat Mar 2 22:34:37 2013 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 0446C123; Sat, 2 Mar 2013 22:34:37 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id E8638756; Sat, 2 Mar 2013 22:34:36 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r22MYanp071039; Sat, 2 Mar 2013 22:34:36 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r22MYYrX071018; Sat, 2 Mar 2013 22:34:34 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201303022234.r22MYYrX071018@svn.freebsd.org> From: Alexander Motin Date: Sat, 2 Mar 2013 22:34:34 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r247674 - in projects/calloutng: . contrib/openbsm/etc etc lib/libc/gen lib/libc/include lib/libc/sys lib/libprocstat lib/libstand sbin/ipfw sbin/mount_hpfs sbin/mount_ntfs share/exampl... X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 02 Mar 2013 22:34:37 -0000 Author: mav Date: Sat Mar 2 22:34:33 2013 New Revision: 247674 URL: http://svnweb.freebsd.org/changeset/base/247674 Log: MFC @r247673 Added: projects/calloutng/lib/libc/gen/cap_sandboxed.3 - copied unchanged from r247673, head/lib/libc/gen/cap_sandboxed.3 projects/calloutng/lib/libc/gen/cap_sandboxed.c - copied unchanged from r247673, head/lib/libc/gen/cap_sandboxed.c projects/calloutng/lib/libc/sys/bindat.2 - copied unchanged from r247673, head/lib/libc/sys/bindat.2 projects/calloutng/lib/libc/sys/cap_fcntls_limit.2 - copied unchanged from r247673, head/lib/libc/sys/cap_fcntls_limit.2 projects/calloutng/lib/libc/sys/cap_ioctls_limit.2 - copied unchanged from r247673, head/lib/libc/sys/cap_ioctls_limit.2 projects/calloutng/lib/libc/sys/cap_rights_limit.2 - copied unchanged from r247673, head/lib/libc/sys/cap_rights_limit.2 projects/calloutng/lib/libc/sys/connectat.2 - copied unchanged from r247673, head/lib/libc/sys/connectat.2 projects/calloutng/tools/regression/capsicum/ - copied from r247673, head/tools/regression/capsicum/ Deleted: projects/calloutng/lib/libc/sys/cap_new.2 projects/calloutng/lib/libprocstat/ntfs.c projects/calloutng/sbin/mount_hpfs/ projects/calloutng/sbin/mount_ntfs/ projects/calloutng/share/examples/portal/ projects/calloutng/share/man/man4/coda.4 projects/calloutng/share/man/man5/xfs.5 projects/calloutng/sys/fs/coda/ projects/calloutng/sys/fs/hpfs/ projects/calloutng/sys/fs/ntfs/ projects/calloutng/sys/fs/portalfs/ projects/calloutng/sys/gnu/fs/xfs/ projects/calloutng/sys/modules/coda/ projects/calloutng/sys/modules/coda5/ projects/calloutng/sys/modules/hpfs/ projects/calloutng/sys/modules/ntfs/ projects/calloutng/sys/modules/ntfs_iconv/ projects/calloutng/sys/modules/portalfs/ projects/calloutng/sys/modules/xfs/ projects/calloutng/usr.sbin/mount_portalfs/ Modified: projects/calloutng/ObsoleteFiles.inc projects/calloutng/UPDATING projects/calloutng/contrib/openbsm/etc/audit_event projects/calloutng/etc/devd.conf projects/calloutng/lib/libc/gen/Makefile.inc projects/calloutng/lib/libc/include/compat.h projects/calloutng/lib/libc/sys/Makefile.inc projects/calloutng/lib/libc/sys/Symbol.map projects/calloutng/lib/libc/sys/cap_enter.2 projects/calloutng/lib/libc/sys/dup.2 projects/calloutng/lib/libprocstat/libprocstat.c projects/calloutng/lib/libprocstat/libprocstat.h projects/calloutng/lib/libstand/nandfs.c projects/calloutng/sbin/ipfw/ipfw2.c projects/calloutng/sys/amd64/amd64/pmap.c projects/calloutng/sys/amd64/conf/GENERIC projects/calloutng/sys/amd64/include/pmap.h projects/calloutng/sys/arm/arm/locore.S projects/calloutng/sys/arm/conf/RPI-B projects/calloutng/sys/arm/include/vmparam.h projects/calloutng/sys/bsm/audit_kevents.h projects/calloutng/sys/cddl/compat/opensolaris/sys/file.h projects/calloutng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c projects/calloutng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_onexit.c projects/calloutng/sys/compat/freebsd32/freebsd32_proto.h projects/calloutng/sys/compat/freebsd32/freebsd32_syscall.h projects/calloutng/sys/compat/freebsd32/freebsd32_syscalls.c projects/calloutng/sys/compat/freebsd32/freebsd32_sysent.c projects/calloutng/sys/compat/freebsd32/freebsd32_systrace_args.c projects/calloutng/sys/compat/freebsd32/syscalls.master projects/calloutng/sys/compat/linux/linux_file.c projects/calloutng/sys/compat/svr4/svr4_fcntl.c projects/calloutng/sys/compat/svr4/svr4_filio.c projects/calloutng/sys/compat/svr4/svr4_misc.c projects/calloutng/sys/compat/svr4/svr4_stream.c projects/calloutng/sys/conf/options.sparc64 projects/calloutng/sys/dev/iscsi/initiator/iscsi.c projects/calloutng/sys/dev/pci/pci.c projects/calloutng/sys/fs/fdescfs/fdesc_vfsops.c projects/calloutng/sys/fs/fdescfs/fdesc_vnops.c projects/calloutng/sys/fs/nfs/nfsdport.h projects/calloutng/sys/fs/nfsclient/nfs_clport.c projects/calloutng/sys/fs/nfsserver/nfs_nfsdport.c projects/calloutng/sys/fs/nullfs/null_vfsops.c projects/calloutng/sys/geom/label/g_label_ntfs.c projects/calloutng/sys/i386/conf/GENERIC projects/calloutng/sys/i386/i386/pmap.c projects/calloutng/sys/i386/ibcs2/ibcs2_misc.c projects/calloutng/sys/i386/include/pmap.h projects/calloutng/sys/kern/capabilities.conf projects/calloutng/sys/kern/init_sysent.c projects/calloutng/sys/kern/kern_descrip.c projects/calloutng/sys/kern/kern_exec.c projects/calloutng/sys/kern/kern_exit.c projects/calloutng/sys/kern/kern_fork.c projects/calloutng/sys/kern/sys_capability.c projects/calloutng/sys/kern/sys_generic.c projects/calloutng/sys/kern/syscalls.c projects/calloutng/sys/kern/syscalls.master projects/calloutng/sys/kern/systrace_args.c projects/calloutng/sys/kern/tty.c projects/calloutng/sys/kern/uipc_domain.c projects/calloutng/sys/kern/uipc_mqueue.c projects/calloutng/sys/kern/uipc_sem.c projects/calloutng/sys/kern/uipc_shm.c projects/calloutng/sys/kern/uipc_socket.c projects/calloutng/sys/kern/uipc_syscalls.c projects/calloutng/sys/kern/uipc_usrreq.c projects/calloutng/sys/kern/vfs_aio.c projects/calloutng/sys/kern/vfs_lookup.c projects/calloutng/sys/kern/vfs_syscalls.c projects/calloutng/sys/netpfil/ipfw/ip_fw_dynamic.c projects/calloutng/sys/netsmb/smb_dev.c projects/calloutng/sys/nfsserver/nfs_srvkrpc.c projects/calloutng/sys/ofed/include/linux/file.h projects/calloutng/sys/ofed/include/linux/timer.h projects/calloutng/sys/security/audit/audit.h projects/calloutng/sys/security/audit/audit_arg.c projects/calloutng/sys/security/audit/audit_bsm.c projects/calloutng/sys/security/audit/audit_private.h projects/calloutng/sys/sparc64/pci/psycho.c projects/calloutng/sys/sparc64/sbus/sbus.c projects/calloutng/sys/sys/capability.h projects/calloutng/sys/sys/file.h projects/calloutng/sys/sys/filedesc.h projects/calloutng/sys/sys/namei.h projects/calloutng/sys/sys/protosw.h projects/calloutng/sys/sys/socket.h projects/calloutng/sys/sys/socketvar.h projects/calloutng/sys/sys/syscall.h projects/calloutng/sys/sys/syscall.mk projects/calloutng/sys/sys/sysproto.h projects/calloutng/sys/sys/time.h projects/calloutng/sys/sys/user.h projects/calloutng/sys/vm/vm_mmap.c projects/calloutng/sys/vm/vm_object.c projects/calloutng/tools/regression/pjdfstest/Makefile projects/calloutng/tools/regression/pjdfstest/pjdfstest.c projects/calloutng/tools/regression/security/cap_test/cap_test_capabilities.c projects/calloutng/tools/regression/security/cap_test/cap_test_relative.c projects/calloutng/usr.bin/kdump/kdump.c projects/calloutng/usr.bin/kdump/mksubr projects/calloutng/usr.bin/procstat/procstat_files.c Directory Properties: projects/calloutng/ (props changed) projects/calloutng/contrib/openbsm/ (props changed) projects/calloutng/lib/libc/ (props changed) projects/calloutng/sbin/ (props changed) projects/calloutng/sbin/ipfw/ (props changed) projects/calloutng/share/man/man4/ (props changed) projects/calloutng/sys/ (props changed) projects/calloutng/sys/cddl/contrib/opensolaris/ (props changed) projects/calloutng/sys/conf/ (props changed) projects/calloutng/usr.bin/procstat/ (props changed) Modified: projects/calloutng/ObsoleteFiles.inc ============================================================================== --- projects/calloutng/ObsoleteFiles.inc Sat Mar 2 22:28:20 2013 (r247673) +++ projects/calloutng/ObsoleteFiles.inc Sat Mar 2 22:34:33 2013 (r247674) @@ -38,6 +38,27 @@ # xargs -n1 | sort | uniq -d; # done +# 20130302: NTFS support removed +OLD_FILES+=usr/include/fs/ntfs/ntfs.h +OLD_FILES+=usr/include/fs/ntfs/ntfs_compr.h +OLD_FILES+=usr/include/fs/ntfs/ntfs_ihash.h +OLD_FILES+=usr/include/fs/ntfs/ntfs_inode.h +OLD_FILES+=usr/include/fs/ntfs/ntfs_subr.h +OLD_FILES+=usr/include/fs/ntfs/ntfs_vfsops.h +OLD_FILES+=usr/include/fs/ntfs/ntfsmount.h +OLD_DIRS+=usr/include/fs/ntfs +OLD_FILES+=usr/share/man/man8/mount_ntfs.8.gz +# 20130302: PORTALFS support removed +OLD_FILES+=usr/include/fs/portalfs/portal.h +OLD_DIRS+=usr/include/fs/portalfs +OLD_FILES+=usr/share/examples/portal/README +OLD_FILES+=usr/share/examples/portal/portal.conf +OLD_DIRS+=usr/share/examples/portal +OLD_FILES+=usr/share/man/man8/mount_portalfs.8.gz +# 20130302: CODAFS support removed +OLD_FILES+=usr/share/man/man4/coda.4.gz +# 20130302: XFS support removed +OLD_FILES+=usr/share/man/man5/xfs.5.gz # 20130116: removed long unused directories for .1aout section manpages OLD_FILES+=usr/share/man/en.ISO8859-1/man1aout OLD_FILES+=usr/share/man/en.UTF-8/man1aout Modified: projects/calloutng/UPDATING ============================================================================== --- projects/calloutng/UPDATING Sat Mar 2 22:28:20 2013 (r247673) +++ projects/calloutng/UPDATING Sat Mar 2 22:34:33 2013 (r247674) @@ -26,6 +26,13 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 10 disable the most expensive debugging functionality run "ln -s 'abort:false,junk:false' /etc/malloc.conf".) +20130301: + The ctl device has been disabled in GENERIC for i386 and amd64. + This was done due to the extra memory being allocated at system + initialisation time by the ctl driver which was only used if + a CAM target device was created. This makes a FreeBSD system + unusable on 128MB or less of RAM. + 20130208: A new compression method (lz4) has been merged to -HEAD. Please refer to zpool-features(7) for more information. Modified: projects/calloutng/contrib/openbsm/etc/audit_event ============================================================================== --- projects/calloutng/contrib/openbsm/etc/audit_event Sat Mar 2 22:28:20 2013 (r247673) +++ projects/calloutng/contrib/openbsm/etc/audit_event Sat Mar 2 22:34:33 2013 (r247674) @@ -548,7 +548,7 @@ 43184:AUE_OPENAT:openat(2) - attr only:fa 43185:AUE_POSIX_OPENPT:posix_openpt(2):ip 43186:AUE_CAP_NEW:cap_new(2):fm -43187:AUE_CAP_GETRIGHTS:cap_getrights(2):fm +43187:AUE_CAP_RIGHTS_GET:cap_rights_get(2):fm 43188:AUE_CAP_ENTER:cap_enter(2):pc 43189:AUE_CAP_GETMODE:cap_getmode(2):pc 43190:AUE_POSIX_SPAWN:posix_spawn(2):pc @@ -563,6 +563,13 @@ 43199:AUE_PDGETPID:pdgetpid(2):pc 43200:AUE_PDWAIT:pdwait(2):pc 43201:AUE_WAIT6:wait6(2):pc +43202:AUE_CAP_RIGHTS_LIMIT:cap_rights_limit(2):fm +43203:AUE_CAP_IOCTLS_LIMIT:cap_ioctls_limit(2):fm +43204:AUE_CAP_IOCTLS_GET:cap_ioctls_get(2):fm +43205:AUE_CAP_FCNTLS_LIMIT:cap_fcntls_limit(2):fm +43206:AUE_CAP_FCNTLS_GET:cap_fcntls_get(2):fm +43207:AUE_BINDAT:bindat(2):nt +43208:AUE_CONNECTAT:connectat(2):nt # # Solaris userspace events. # Modified: projects/calloutng/etc/devd.conf ============================================================================== --- projects/calloutng/etc/devd.conf Sat Mar 2 22:28:20 2013 (r247673) +++ projects/calloutng/etc/devd.conf Sat Mar 2 22:34:33 2013 (r247674) @@ -34,7 +34,7 @@ options { # NB: DETACH events are ignored; the kernel should handle all cleanup # (routes, arp cache). Beware of races against immediate create # of a device with the same name; e.g. -# ifconfig bridge0 destroy; ifconfig bridge0 create +# ifconfig bridge0 destroy; ifconfig bridge0 create # notify 0 { match "system" "IFNET"; @@ -165,7 +165,7 @@ notify 100 { }; # -# Rescan scsi device-names on attach, but not detach. However, it is +# Rescan SCSI device-names on attach, but not detach. However, it is # disabled by default due to reports of problems. # attach 0 { @@ -305,13 +305,13 @@ detach 10 { # events. See the ACPI specification for more information about # notifies. Here is the information returned for each subsystem: # -# ACAD: AC line state (0 is offline, 1 is online) -# Button: Button pressed (0 for power, 1 for sleep) -# CMBAT: ACPI battery events -# Lid: Lid state (0 is closed, 1 is open) -# RCTL: Resource limits +# ACAD: AC line state (0 is offline, 1 is online) +# Button: Button pressed (0 for power, 1 for sleep) +# CMBAT: ACPI battery events +# Lid: Lid state (0 is closed, 1 is open) +# RCTL: Resource limits # Suspend, Resume: Suspend and resume notification -# Thermal: ACPI thermal zone events +# Thermal: ACPI thermal zone events # # This example calls a script when the AC state changes, passing the # notify value as the first argument. If the state is 0x00, it might Modified: projects/calloutng/lib/libc/gen/Makefile.inc ============================================================================== --- projects/calloutng/lib/libc/gen/Makefile.inc Sat Mar 2 22:28:20 2013 (r247673) +++ projects/calloutng/lib/libc/gen/Makefile.inc Sat Mar 2 22:34:33 2013 (r247674) @@ -16,6 +16,7 @@ SRCS+= __getosreldate.c \ assert.c \ auxv.c \ basename.c \ + cap_sandboxed.c \ check_utility_compat.c \ clock.c \ clock_getcpuclockid.c \ @@ -168,6 +169,7 @@ SYM_MAPS+=${.CURDIR}/gen/Symbol.map MAN+= alarm.3 \ arc4random.3 \ basename.3 \ + cap_sandboxed.3 \ check_utility_compat.3 \ clock.3 \ clock_getcpuclockid.3 \ Copied: projects/calloutng/lib/libc/gen/cap_sandboxed.3 (from r247673, head/lib/libc/gen/cap_sandboxed.3) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/calloutng/lib/libc/gen/cap_sandboxed.3 Sat Mar 2 22:34:33 2013 (r247674, copy of r247673, head/lib/libc/gen/cap_sandboxed.3) @@ -0,0 +1,70 @@ +.\" Copyright (c) 2012 The FreeBSD Foundation +.\" All rights reserved. +.\" +.\" This documentation was written by Pawel Jakub Dawidek under sponsorship +.\" from the FreeBSD Foundation. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" $FreeBSD$ +.\" +.Dd September 18, 2012 +.Dt CAP_SANDBOXED 3 +.Os +.Sh NAME +.Nm cap_sandboxed +.Nd Check if in a capability mode sandbox +.Sh LIBRARY +.Lb libc +.Sh SYNOPSIS +.In sys/capability.h +.In stdbool.h +.Ft bool +.Fn cap_sandboxed "void" +.Sh DESCRIPTION +.Fn cap_sandboxed +returns +.Va true +if the process is in a capability mode sandbox or +.Va false +if it is not. +This function is a more handy alternative to the +.Xr cap_getmode 2 +system call as it always succeeds, so there is no need for error checking. +If the support for capability mode is not compiled into the kernel, +.Fn cap_sandboxed +will always return +.Va false . +.Sh RETURN VALUES +Function +.Fn cap_sandboxed +is always successful and will return either +.Va true +or +.Va false . +.Sh SEE ALSO +.Xr cap_enter 2 , +.Xr capsicum 4 +.Sh AUTHORS +This function was implemented and manual page was written by +.An Pawel Jakub Dawidek Aq pawel@dawidek.net +under sponsorship of the FreeBSD Foundation. Copied: projects/calloutng/lib/libc/gen/cap_sandboxed.c (from r247673, head/lib/libc/gen/cap_sandboxed.c) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/calloutng/lib/libc/gen/cap_sandboxed.c Sat Mar 2 22:34:33 2013 (r247674, copy of r247673, head/lib/libc/gen/cap_sandboxed.c) @@ -0,0 +1,50 @@ +/*- + * Copyright (c) 2012 The FreeBSD Foundation + * All rights reserved. + * + * This software was developed by Pawel Jakub Dawidek under sponsorship from + * the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHORS AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include +__FBSDID("$FreeBSD$"); + +#include + +#include +#include +#include + +bool +cap_sandboxed(void) +{ + u_int mode; + + if (cap_getmode(&mode) != 0) { + assert(errno == ENOSYS); + return (false); + } + assert(mode == 0 || mode == 1); + return (mode == 1); +} Modified: projects/calloutng/lib/libc/include/compat.h ============================================================================== --- projects/calloutng/lib/libc/include/compat.h Sat Mar 2 22:28:20 2013 (r247673) +++ projects/calloutng/lib/libc/include/compat.h Sat Mar 2 22:34:33 2013 (r247674) @@ -42,6 +42,8 @@ __sym_compat(__semctl, freebsd7___semctl __sym_compat(msgctl, freebsd7_msgctl, FBSD_1.0); __sym_compat(shmctl, freebsd7_shmctl, FBSD_1.0); +__sym_compat(cap_getrights, cap_rights_get, FBSD_1.2); + #undef __sym_compat #endif /* __LIBC_COMPAT_H__ */ Modified: projects/calloutng/lib/libc/sys/Makefile.inc ============================================================================== --- projects/calloutng/lib/libc/sys/Makefile.inc Sat Mar 2 22:28:20 2013 (r247673) +++ projects/calloutng/lib/libc/sys/Makefile.inc Sat Mar 2 22:34:33 2013 (r247674) @@ -91,9 +91,12 @@ MAN+= abort2.2 \ aio_waitcomplete.2 \ aio_write.2 \ bind.2 \ + bindat.2 \ brk.2 \ cap_enter.2 \ - cap_new.2 \ + cap_fcntls_limit.2 \ + cap_ioctls_limit.2 \ + cap_rights_limit.2 \ chdir.2 \ chflags.2 \ chmod.2 \ @@ -103,6 +106,7 @@ MAN+= abort2.2 \ close.2 \ closefrom.2 \ connect.2 \ + connectat.2 \ cpuset.2 \ cpuset_getaffinity.2 \ dup.2 \ @@ -270,7 +274,9 @@ MLINKS+=access.2 eaccess.2 \ access.2 faccessat.2 MLINKS+=brk.2 sbrk.2 MLINKS+=cap_enter.2 cap_getmode.2 -MLINKS+=cap_new.2 cap_getrights.2 +MLINKS+=cap_fcntls_limit.2 cap_fcntls_get.2 +MLINKS+=cap_ioctls_limit.2 cap_ioctls_get.2 +MLINKS+=cap_rights_limit.2 cap_rights_get.2 MLINKS+=chdir.2 fchdir.2 MLINKS+=chflags.2 fchflags.2 \ chflags.2 lchflags.2 Modified: projects/calloutng/lib/libc/sys/Symbol.map ============================================================================== --- projects/calloutng/lib/libc/sys/Symbol.map Sat Mar 2 22:28:20 2013 (r247673) +++ projects/calloutng/lib/libc/sys/Symbol.map Sat Mar 2 22:34:33 2013 (r247674) @@ -364,7 +364,6 @@ FBSD_1.2 { cap_enter; cap_getmode; cap_new; - cap_getrights; getloginclass; pdfork; pdgetpid; @@ -379,7 +378,16 @@ FBSD_1.2 { }; FBSD_1.3 { + bindat; + cap_fcntls_get; + cap_fcntls_limit; + cap_ioctls_get; + cap_ioctls_limit; + cap_rights_get; + cap_rights_limit; + cap_sandboxed; clock_getcpuclockid2; + connectat; ffclock_getcounter; ffclock_getestimate; ffclock_setestimate; Copied: projects/calloutng/lib/libc/sys/bindat.2 (from r247673, head/lib/libc/sys/bindat.2) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/calloutng/lib/libc/sys/bindat.2 Sat Mar 2 22:34:33 2013 (r247674, copy of r247673, head/lib/libc/sys/bindat.2) @@ -0,0 +1,109 @@ +.\" Copyright (c) 2013 The FreeBSD Foundation +.\" All rights reserved. +.\" +.\" This documentation was written by Pawel Jakub Dawidek under sponsorship from +.\" the FreeBSD Foundation. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHORS AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" $FreeBSD$ +.\" +.Dd February 13, 2013 +.Dt BINDAT 2 +.Os +.Sh NAME +.Nm bindat +.Nd assign a local protocol address to a socket +.Sh LIBRARY +.Lb libc +.Sh SYNOPSIS +.In sys/types.h +.In sys/socket.h +.Pp +.In fcntl.h +.Ft int +.Fn bindat "int fd" "int s" "const struct sockaddr *addr" "socklen_t addrlen" +.Sh DESCRIPTION +The +.Fn bindat +system call assigns the local protocol address to a socket. +It works just like the +.Xr bind 2 +system call with two exceptions: +.Pp +.Bl -enum -offset indent -compact +.It +It is limited to sockets in the PF_LOCAL domain. +.Pp +.It +If the file path stored in the +.Fa sun_path +field of the sockaddr_un structure is a relative path, it is located relative +to the directory associated with the file descriptor +.Fa fd . +If +.Fn bindat +is passed the special value +.Dv AT_FDCWD +in the +.Fa fd +parameter, the current working directory is used and the behavior is identical +to a call to +.Xr bind 2 . +.El +.Sh RETURN VALUES +.Rv -std bindat +.Sh ERRORS +The +.Fn bindat +system call may fail with the same errors as the +.Xr bind 2 +system call for a UNIX domain socket or with the following errors: +.Bl -tag -width Er +.It Bq Er EBADF +The +.Fa sun_path +field does not specify an absolute path and the +.Fa fd +argument is neither +.Dv AT_FDCWD +nor a valid file descriptor. +.It Bq Er ENOTDIR +The +.Fa sun_path +field is not an absolute path and +.Fa fd +is neither +.Dv AT_FDCWD +nor a file descriptor associated with a directory. +.El +.Sh SEE ALSO +.Xr bind 2 , +.Xr connectat 2 , +.Xr socket 2 , +.Xr unix 4 +.Sh AUTHORS +The +.Nm +was developed by +.An Pawel Jakub Dawidek Aq pawel@dawidek.net +under sponsorship from the FreeBSD Foundation. Modified: projects/calloutng/lib/libc/sys/cap_enter.2 ============================================================================== --- projects/calloutng/lib/libc/sys/cap_enter.2 Sat Mar 2 22:28:20 2013 (r247673) +++ projects/calloutng/lib/libc/sys/cap_enter.2 Sat Mar 2 22:34:33 2013 (r247674) @@ -58,8 +58,10 @@ or .Xr pdfork 2 will be placed in capability mode from inception. .Pp -When combined with capabilities created with -.Xr cap_new 2 , +When combined with +.Xr cap_rights_limit 2 , +.Xr cap_ioctls_limit 2 , +.Xr cap_fcntls_limit 2 , .Fn cap_enter may be used to create kernel-enforced sandboxes in which appropriately-crafted applications or application components may be run. @@ -71,11 +73,6 @@ sandbox. Creating effective process sandboxes is a tricky process that involves identifying the least possible rights required by the process and then passing those rights into the process in a safe manner. -See the CAVEAT -section of -.Xr cap_new 2 -for why this is particularly tricky with UNIX file descriptors as the -canonical representation of a right. Consumers of .Fn cap_enter should also be aware of other inherited rights, such as access to VM @@ -87,9 +84,35 @@ to create a runtime environment inside t acquired rights as possible. .Sh RETURN VALUES .Rv -std cap_enter cap_getmode +.Sh ERRORS +The +.Fn cap_enter +and +.Fn cap_getmode +system calls +will fail if: +.Bl -tag -width Er +.It Bq Er ENOSYS +The kernel is compiled without: +.Pp +.Cd "options CAPABILITY_MODE" +.El +.Pp +The +.Fn cap_getmode +system call may also return the following error: +.Bl -tag -width Er +.It Bq Er EFAULT +Pointer +.Fa modep +points outside the process's allocated address space. +.El .Sh SEE ALSO -.Xr cap_new 2 , +.Xr cap_fcntls_limit 2 , +.Xr cap_ioctls_limit 2 , +.Xr cap_rights_limit 2 , .Xr fexecve 2 , +.Xr cap_sandboxed 3 , .Xr capsicum 4 .Sh HISTORY Support for capabilities and capabilities mode was developed as part of the Copied: projects/calloutng/lib/libc/sys/cap_fcntls_limit.2 (from r247673, head/lib/libc/sys/cap_fcntls_limit.2) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/calloutng/lib/libc/sys/cap_fcntls_limit.2 Sat Mar 2 22:34:33 2013 (r247674, copy of r247673, head/lib/libc/sys/cap_fcntls_limit.2) @@ -0,0 +1,126 @@ +.\" +.\" Copyright (c) 2012 The FreeBSD Foundation +.\" All rights reserved. +.\" +.\" This documentation was written by Pawel Jakub Dawidek under sponsorship +.\" the FreeBSD Foundation. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" $FreeBSD$ +.\" +.Dd September 20, 2012 +.Dt CAP_FCNTLS_LIMIT 2 +.Os +.Sh NAME +.Nm cap_fcntls_limit , +.Nm cap_fcntls_get +.Nd manage allowed fcntl commands +.Sh LIBRARY +.Lb libc +.Sh SYNOPSIS +.In sys/capability.h +.Ft int +.Fn cap_fcntls_limit "int fd" "uint32_t fcntlrights" +.Ft int +.Fn cap_fcntls_get "int fd" "uint32_t *fcntlrightsp" +.Sh DESCRIPTION +If a file descriptor is granted the +.Dv CAP_FCNTL +capability right, the list of allowed +.Xr fcntl 2 +commands can be selectively reduced (but never expanded) with the +.Fn cap_fcntls_limit +system call. +.Pp +A bitmask of allowed fcntls commands for a given file descriptor can be obtained +with the +.Fn cap_fcntls_get +system call. +.Sh FLAGS +The following flags may be specified in the +.Fa fcntlrights +argument or returned in the +.Fa fcntlrightsp +argument: +.Bl -tag -width CAP_FCNTL_GETOWN +.It Dv CAP_FCNTL_GETFL +Permit +.Dv F_GETFL +command. +.It Dv CAP_FCNTL_SETFL +Permit +.Dv F_SETFL +command. +.It Dv CAP_FCNTL_GETOWN +Permit +.Dv F_GETOWN +command. +.It Dv CAP_FCNTL_SETOWN +Permit +.Dv F_SETOWN +command. +.El +.Sh RETURN VALUES +.Rv -std +.Sh ERRORS +.Fn cap_fcntls_limit +succeeds unless: +.Bl -tag -width Er +.It Bq Er EBADF +The +.Fa fd +argument is not a valid descriptor. +.It Bq Er EINVAL +An invalid flag has been passed in +.Fa fcntlrights . +.It Bq Er ENOTCAPABLE +.Fa fcntlrights +would expand the list of allowed +.Xr fcntl 2 +commands. +.El +.Pp +.Fn cap_fcntls_get +succeeds unless: +.Bl -tag -width Er +.It Bq Er EBADF +The +.Fa fd +argument is not a valid descriptor. +.It Bq Er EFAULT +The +.Fa fcntlrightsp +argument points at an invalid address. +.El +.Sh SEE ALSO +.Xr cap_ioctls_limit 2 , +.Xr cap_rights_limit 2 , +.Xr fcntl 2 +.Sh HISTORY +Support for capabilities and capabilities mode was developed as part of the +.Tn TrustedBSD +Project. +.Sh AUTHORS +This function was created by +.An Pawel Jakub Dawidek Aq pawel@dawidek.net +under sponsorship of the FreeBSD Foundation. Copied: projects/calloutng/lib/libc/sys/cap_ioctls_limit.2 (from r247673, head/lib/libc/sys/cap_ioctls_limit.2) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/calloutng/lib/libc/sys/cap_ioctls_limit.2 Sat Mar 2 22:34:33 2013 (r247674, copy of r247673, head/lib/libc/sys/cap_ioctls_limit.2) @@ -0,0 +1,157 @@ +.\" +.\" Copyright (c) 2012 The FreeBSD Foundation +.\" All rights reserved. +.\" +.\" This documentation was written by Pawel Jakub Dawidek under sponsorship +.\" the FreeBSD Foundation. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" $FreeBSD$ +.\" +.Dd September 20, 2012 +.Dt CAP_IOCTLS_LIMIT 2 +.Os +.Sh NAME +.Nm cap_ioctls_limit , +.Nm cap_ioctls_get +.Nd manage allowed ioctl commands +.Sh LIBRARY +.Lb libc +.Sh SYNOPSIS +.In sys/capability.h +.Ft int +.Fn cap_ioctls_limit "int fd" "const unsigned long *cmds" "size_t ncmds" +.Ft ssize_t +.Fn cap_ioctls_get "int fd" "unsigned long *cmds" "size_t maxcmds" +.Sh DESCRIPTION +If a file descriptor is granted the +.Dv CAP_IOCTL +capability right, the list of allowed +.Xr ioctl 2 +commands can be selectively reduced (but never expanded) with the +.Fn cap_ioctls_limit +system call. +The +.Fa cmds +argument is an array of +.Xr ioctl 2 +commands and the +.Fa ncmds +argument specifies the number of elements in the array. +There might be up to +.Va 256 +elements in the array. +.Pp +The list of allowed ioctl commands for a given file descriptor can be obtained +with the +.Fn cap_ioctls_get +system call. +The +.Fa cmds +argument points at memory that can hold up to +.Fa maxcmds +values. +The function populates the provided buffer with up to +.Fa maxcmds +elements, but always returns the total number of ioctl commands allowed for the +given file descriptor. +The total number of ioctls commands for the given file descriptor can be +obtained by passing +.Dv NULL as the +.Fa cmds +argument and +.Va 0 +as the +.Fa maxcmds +argument. +If all ioctl commands are allowed +.Dv ( CAP_IOCTL +capability right is assigned to the file descriptor and the +.Fn cap_ioctls_limit +system call was never called for this file descriptor), the +.Fn cap_ioctls_get +system call will return +.Dv CAP_IOCTLS_ALL +and won't modify the buffer pointed out by the +.Fa cmds +argument. +.Sh RETURN VALUES +.Rv -std cap_ioctls_limit +.Pp +The +.Fn cap_ioctls_limit +function, if successfull, returns the total number of allowed ioctl commands or +the value +.Dv INT_MAX +if all ioctls commands are allowed. +On failure the value +.Va -1 +is returned and the global variable errno is set to indicate the error. +.Sh ERRORS +.Fn cap_ioctls_limit +succeeds unless: +.Bl -tag -width Er +.It Bq Er EBADF +The +.Fa fd +argument is not a valid descriptor. +.It Bq Er EFAULT +The +.Fa cmds +argument points at an invalid address. +.It Bq Er EINVAL +The +.Fa ncmds +argument is greater than +.Va 256 . +.It Bq Er ENOTCAPABLE +.Fa cmds +would expand the list of allowed +.Xr ioctl 2 +commands. +.El +.Pp +.Fn cap_ioctls_get +succeeds unless: +.Bl -tag -width Er +.It Bq Er EBADF +The +.Fa fd +argument is not a valid descriptor. +.It Bq Er EFAULT +The +.Fa cmds +argument points at invalid address. +.El +.Sh SEE ALSO +.Xr cap_fcntls_limit 2 , +.Xr cap_rights_limit 2 , +.Xr ioctl 2 +.Sh HISTORY +Support for capabilities and capabilities mode was developed as part of the +.Tn TrustedBSD +Project. +.Sh AUTHORS +This function was created by +.An Pawel Jakub Dawidek Aq pawel@dawidek.net +under sponsorship of the FreeBSD Foundation. Copied: projects/calloutng/lib/libc/sys/cap_rights_limit.2 (from r247673, head/lib/libc/sys/cap_rights_limit.2) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/calloutng/lib/libc/sys/cap_rights_limit.2 Sat Mar 2 22:34:33 2013 (r247674, copy of r247673, head/lib/libc/sys/cap_rights_limit.2) @@ -0,0 +1,612 @@ +.\" +.\" Copyright (c) 2008-2010 Robert N. M. Watson +.\" Copyright (c) 2012-2013 The FreeBSD Foundation +.\" All rights reserved. +.\" +.\" This software was developed at the University of Cambridge Computer +.\" Laboratory with support from a grant from Google, Inc. +.\" +.\" Portions of this documentation were written by Pawel Jakub Dawidek +.\" under sponsorship from the FreeBSD Foundation. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" $FreeBSD$ +.\" +.Dd February 23, 2013 +.Dt CAP_RIGHTS_LIMIT 2 +.Os +.Sh NAME +.Nm cap_rights_limit , +.Nm cap_rights_get +.Nd manage capability rights +.Sh LIBRARY +.Lb libc +.Sh SYNOPSIS +.In sys/capability.h +.Ft int +.Fn cap_rights_limit "int fd" "cap_rights_t rights" +.Ft int +.Fn cap_rights_get "int fd" "cap_rights_t *rightsp" +.Sh DESCRIPTION +When a file descriptor is created by a function such as +.Xr fhopen 2 , +.Xr kqueue 2 , +.Xr mq_open 2 , +.Xr open 2 , +.Xr openat 2 , +.Xr pdfork 2 , +.Xr pipe 2 , +.Xr shm_open 2 , +.Xr socket 2 , +or +.Xr socketpair 2 , +it is assigned all capability rights. +Those rights can be reduced (but never expanded) by using the +.Fn cap_rights_limit +system call. +Once capability rights are reduced, operations on the file descriptor will be +limited to those permitted by +.Fa rights . +.Pp +A bitmask of capability rights assigned to a file descriptor can be obtained with +the +.Fn cap_rights_get +system call. +.Sh RIGHTS +The following rights may be specified in a rights mask: +.Bl -tag -width CAP_EXTATTR_DELETE +.It Dv CAP_ACCEPT +Permit +.Xr accept 2 . +.It Dv CAP_ACL_CHECK +Permit checking of an ACL on a file descriptor; there is no cross-reference +for this system call. +.It Dv CAP_ACL_DELETE +Permit +.Xr acl_delete_fd_np 3 . +.It Dv CAP_ACL_GET +Permit +.Xr acl_get_fd 3 +and +.Xr acl_get_fd_np 3 . +.It Dv CAP_ACL_SET +Permit +.Xr acl_set_fd 3 +and +.Xr acl_set_fd_np 3 . +.It Dv CAP_BIND +Permit +.Xr bind 2 . +Note that sockets can also become bound implicitly as a result of +.Xr connect 2 +or +.Xr send 2 , +and that socket options set with +.Xr setsockopt 2 +may also affect binding behavior. +.It Dv CAP_BINDAT +Permit +.Xr bindat 2 . +This right has to be present on the directory descriptor. +.It Dv CAP_CONNECT +Permit +.Xr connect 2 ; +also required for +.Xr sendto 2 +with a non-NULL destination address. +.It Dv CAP_CONNECTAT +Permit +.Xr connectat 2 . +This right has to be present on the directory descriptor. +.It Dv CAP_CREATE +Permit +.Xr openat 2 +with the +.Dv O_CREAT +flag. +.\" XXXPJD: Doesn't exist anymore. +.It Dv CAP_EVENT +Permit +.Xr select 2 , +.Xr poll 2 , +and +.Xr kevent 2 +to be used in monitoring the file descriptor for events. +.It Dv CAP_FEXECVE +Permit +.Xr fexecve 2 +and +.Xr openat 2 +with the +.Dv O_EXEC +flag; +.Dv CAP_READ +will also be required. +.It Dv CAP_EXTATTR_DELETE +Permit +.Xr extattr_delete_fd 2 . +.It Dv CAP_EXTATTR_GET +Permit +.Xr extattr_get_fd 2 . +.It Dv CAP_EXTATTR_LIST +Permit +.Xr extattr_list_fd 2 . +.It Dv CAP_EXTATTR_SET +Permit +.Xr extattr_set_fd 2 . +.It Dv CAP_FCHDIR +Permit +.Xr fchdir 2 . +.It Dv CAP_FCHFLAGS +Permit +.Xr fchflags 2 . +.It Dv CAP_FCHMOD +Permit +.Xr fchmod 2 +and +.Xr fchmodat 2 . +.It Dv CAP_FCHMODAT +An alias to +.Dv CAP_FCHMOD . +.It Dv CAP_FCHOWN +Permit +.Xr fchown 2 +and +.Xr fchownat 2 . +.It Dv CAP_FCHOWNAT +An alias to +.Dv CAP_FCHOWN . +.It Dv CAP_FCNTL +Permit +.Xr fcntl 2 . +Note that only the +.Dv F_GETFL , +.Dv F_SETFL , +.Dv F_GETOWN +and +.Dv F_SETOWN +commands require this capability right. +Also note that the list of permitted commands can be further limited with the +.Xr cap_fcntls_limit 2 +system call. +.It Dv CAP_FLOCK +Permit +.Xr flock 2 , +.Xr fcntl 2 +(with +.Dv F_GETLK , +.Dv F_SETLK +or +.Dv F_SETLKW +flag) and +.Xr openat 2 +(with +.Dv O_EXLOCK *** DIFF OUTPUT TRUNCATED AT 1000 LINES ***