svn commit: r292341 - stable/10/usr.bin/mkimg
Author: emaste Date: Wed Dec 16 16:44:56 2015 New Revision: 292341 URL: https://svnweb.freebsd.org/changeset/base/292341 Log: MFC r289349: mkimg: support fat16b partitions (MBR type 06h) Sponsored by: The FreeBSD Foundation Modified: stable/10/usr.bin/mkimg/ebr.c stable/10/usr.bin/mkimg/mbr.c stable/10/usr.bin/mkimg/scheme.c stable/10/usr.bin/mkimg/scheme.h Directory Properties: stable/10/ (props changed) Modified: stable/10/usr.bin/mkimg/ebr.c == --- stable/10/usr.bin/mkimg/ebr.c Wed Dec 16 16:42:24 2015 (r292340) +++ stable/10/usr.bin/mkimg/ebr.c Wed Dec 16 16:44:56 2015 (r292341) @@ -39,11 +39,15 @@ __FBSDID("$FreeBSD$"); #include "mkimg.h" #include "scheme.h" +#ifndef DOSPTYP_FAT16B +#defineDOSPTYP_FAT16B 0x06 +#endif #ifndef DOSPTYP_FAT32 #defineDOSPTYP_FAT32 0x0b #endif static struct mkimg_alias ebr_aliases[] = { +{ ALIAS_FAT16B, ALIAS_INT2TYPE(DOSPTYP_FAT16B) }, { ALIAS_FAT32, ALIAS_INT2TYPE(DOSPTYP_FAT32) }, { ALIAS_FREEBSD, ALIAS_INT2TYPE(DOSPTYP_386BSD) }, { ALIAS_NONE, 0 } Modified: stable/10/usr.bin/mkimg/mbr.c == --- stable/10/usr.bin/mkimg/mbr.c Wed Dec 16 16:42:24 2015 (r292340) +++ stable/10/usr.bin/mkimg/mbr.c Wed Dec 16 16:44:56 2015 (r292341) @@ -39,6 +39,9 @@ __FBSDID("$FreeBSD$"); #include "mkimg.h" #include "scheme.h" +#ifndef DOSPTYP_FAT16B +#defineDOSPTYP_FAT16B 0x06 +#endif #ifndef DOSPTYP_FAT32 #defineDOSPTYP_FAT32 0x0b #endif @@ -49,6 +52,7 @@ __FBSDID("$FreeBSD$"); static struct mkimg_alias mbr_aliases[] = { { ALIAS_EBR, ALIAS_INT2TYPE(DOSPTYP_EXT) }, { ALIAS_EFI, ALIAS_INT2TYPE(DOSPTYP_EFI) }, +{ ALIAS_FAT16B, ALIAS_INT2TYPE(DOSPTYP_FAT16B) }, { ALIAS_FAT32, ALIAS_INT2TYPE(DOSPTYP_FAT32) }, { ALIAS_FREEBSD, ALIAS_INT2TYPE(DOSPTYP_386BSD) }, { ALIAS_NTFS, ALIAS_INT2TYPE(DOSPTYP_NTFS) }, Modified: stable/10/usr.bin/mkimg/scheme.c == --- stable/10/usr.bin/mkimg/scheme.cWed Dec 16 16:42:24 2015 (r292340) +++ stable/10/usr.bin/mkimg/scheme.cWed Dec 16 16:44:56 2015 (r292341) @@ -50,6 +50,7 @@ static struct { } scheme_alias[] = { { "ebr", ALIAS_EBR }, { "efi", ALIAS_EFI }, + { "fat16b", ALIAS_FAT16B }, { "fat32", ALIAS_FAT32 }, { "freebsd", ALIAS_FREEBSD }, { "freebsd-boot", ALIAS_FREEBSD_BOOT }, Modified: stable/10/usr.bin/mkimg/scheme.h == --- stable/10/usr.bin/mkimg/scheme.hWed Dec 16 16:42:24 2015 (r292340) +++ stable/10/usr.bin/mkimg/scheme.hWed Dec 16 16:44:56 2015 (r292341) @@ -36,6 +36,7 @@ enum alias { /* start */ ALIAS_EBR, ALIAS_EFI, + ALIAS_FAT16B, ALIAS_FAT32, ALIAS_FREEBSD, ALIAS_FREEBSD_BOOT, ___ svn-src-stable-10@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-stable-10 To unsubscribe, send any mail to "svn-src-stable-10-unsubscr...@freebsd.org"
svn commit: r292348 - in stable/10: share/man/man4 sys/cam sys/cam/ata sys/cam/scsi sys/dev/md sys/geom sys/ia64/include sys/kern sys/pc98/include sys/sys usr.sbin usr.sbin/camdd
Author: ken Date: Wed Dec 16 19:01:14 2015 New Revision: 292348 URL: https://svnweb.freebsd.org/changeset/base/292348 Log: MFC r291716, r291724, r291741, r291742 In addition to those revisions, add this change to a file that is not in head: sys/ia64/include/bus.h: Guard kernel-only parts of the ia64 machine/bus.h header with #ifdef _KERNEL. This allows userland programs to include to get the definition of bus_addr_t and bus_size_t. r291716 | ken | 2015-12-03 15:54:55 -0500 (Thu, 03 Dec 2015) | 257 lines Add asynchronous command support to the pass(4) driver, and the new camdd(8) utility. CCBs may be queued to the driver via the new CAMIOQUEUE ioctl, and completed CCBs may be retrieved via the CAMIOGET ioctl. User processes can use poll(2) or kevent(2) to get notification when I/O has completed. While the existing CAMIOCOMMAND blocking ioctl interface only supports user virtual data pointers in a CCB (generally only one per CCB), the new CAMIOQUEUE ioctl supports user virtual and physical address pointers, as well as user virtual and physical scatter/gather lists. This allows user applications to have more flexibility in their data handling operations. Kernel memory for data transferred via the queued interface is allocated from the zone allocator in MAXPHYS sized chunks, and user data is copied in and out. This is likely faster than the vmapbuf()/vunmapbuf() method used by the CAMIOCOMMAND ioctl in configurations with many processors (there are more TLB shootdowns caused by the mapping/unmapping operation) but may not be as fast as running with unmapped I/O. The new memory handling model for user requests also allows applications to send CCBs with request sizes that are larger than MAXPHYS. The pass(4) driver now limits queued requests to the I/O size listed by the SIM driver in the maxio field in the Path Inquiry (XPT_PATH_INQ) CCB. There are some things things would be good to add: 1. Come up with a way to do unmapped I/O on multiple buffers. Currently the unmapped I/O interface operates on a struct bio, which includes only one address and length. It would be nice to be able to send an unmapped scatter/gather list down to busdma. This would allow eliminating the copy we currently do for data. 2. Add an ioctl to list currently outstanding CCBs in the various queues. 3. Add an ioctl to cancel a request, or use the XPT_ABORT CCB to do that. 4. Test physical address support. Virtual pointers and scatter gather lists have been tested, but I have not yet tested physical addresses or scatter/gather lists. 5. Investigate multiple queue support. At the moment there is one queue of commands per pass(4) device. If multiple processes open the device, they will submit I/O into the same queue and get events for the same completions. This is probably the right model for most applications, but it is something that could be changed later on. Also, add a new utility, camdd(8) that uses the asynchronous pass(4) driver interface. This utility is intended to be a basic data transfer/copy utility, a simple benchmark utility, and an example of how to use the asynchronous pass(4) interface. It can copy data to and from pass(4) devices using any target queue depth, starting offset and blocksize for the input and ouptut devices. It currently only supports SCSI devices, but could be easily extended to support ATA devices. It can also copy data to and from regular files, block devices, tape devices, pipes, stdin, and stdout. It does not support queueing multiple commands to any of those targets, since it uses the standard read(2)/write(2)/writev(2)/readv(2) system calls. The I/O is done by two threads, one for the reader and one for the writer. The reader thread sends completed read requests to the writer thread in strictly sequential order, even if they complete out of order. That could be modified later on for random I/O patterns or slightly out of order I/O. camdd(8) uses kqueue(2)/kevent(2) to get I/O completion events from the pass(4) driver and also to send request notifications internally. For pass(4) devcies, camdd(8) uses a single buffer (CAM_DATA_VADDR) per CAM CCB on the reading side, and a scatter/gather list (CAM_DATA_SG) on the writing side. In addition to testing both interfaces, this makes any potential reblocking of I/O easier. No data is copied between the reader and the writer, but rather the reader's buffers are split into multiple I/O requests or combined into a single I/O request depending
svn commit: r292322 - in stable/10: share/man/man4 sys/dev/arcmsr
Author: delphij Date: Wed Dec 16 08:02:21 2015 New Revision: 292322 URL: https://svnweb.freebsd.org/changeset/base/292322 Log: MFC r259564,259565,291641: Update arcmsr(4) to 1.30.00.00 in order to add support of ARC-1203 SATA RAID controllers. Many thanks to Areca for continuing to support FreeBSD. Modified: stable/10/share/man/man4/arcmsr.4 stable/10/sys/dev/arcmsr/arcmsr.c stable/10/sys/dev/arcmsr/arcmsr.h Directory Properties: stable/10/ (props changed) Modified: stable/10/share/man/man4/arcmsr.4 == --- stable/10/share/man/man4/arcmsr.4 Wed Dec 16 06:21:26 2015 (r292321) +++ stable/10/share/man/man4/arcmsr.4 Wed Dec 16 08:02:21 2015 (r292322) @@ -24,7 +24,7 @@ .\" .\" $FreeBSD$ .\" -.Dd February 27, 2013 +.Dd December 18, 2013 .Dt ARCMSR 4 .Os .Sh NAME @@ -143,6 +143,8 @@ ARC-1681 ARC-1880 .It ARC-1882 +.It +ARC-1883 .El .Sh FILES .Bl -tag -width ".Pa /dev/arcmsr?" -compact Modified: stable/10/sys/dev/arcmsr/arcmsr.c == --- stable/10/sys/dev/arcmsr/arcmsr.c Wed Dec 16 06:21:26 2015 (r292321) +++ stable/10/sys/dev/arcmsr/arcmsr.c Wed Dec 16 08:02:21 2015 (r292322) @@ -75,6 +75,8 @@ ** 1.20.00.26 12/14/2012 Ching Huang Added support ARC1214,1224,1264,1284 ** 1.20.00.27 05/06/2013 Ching Huang Fixed out standing cmd full on ARC-12x4 ** 1.20.00.28 09/13/2013 Ching Huang Removed recursive mutex in arcmsr_abort_dr_ccbs +** 1.20.00.29 12/18/2013 Ching Huang Change simq allocation number, support ARC1883 +** 1.30.00.00 11/30/2015 Ching Huang Added support ARC1203 ** */ @@ -125,15 +127,15 @@ __FBSDID("$FreeBSD$"); ** */ #if __FreeBSD_version >= 55 -#include -#include -#include -#include -#include + #include + #include + #include + #include + #include #else -#include -#include -#include + #include + #include + #include #endif #if !defined(CAM_NEW_TRAN_CODE) && __FreeBSD_version >= 700025 @@ -146,7 +148,7 @@ __FBSDID("$FreeBSD$"); #define arcmsr_callout_init(a) callout_init(a); #endif -#define ARCMSR_DRIVER_VERSION "arcmsr version 1.20.00.28 2013-09-13" +#define ARCMSR_DRIVER_VERSION "arcmsr version 1.30.00.00 2015-11-30" #include /* ** @@ -180,8 +182,8 @@ static int arcmsr_iop_message_xfer(struc static int arcmsr_resume(device_t dev); static int arcmsr_suspend(device_t dev); static void arcmsr_rescanLun_cb(struct cam_periph *periph, union ccb *ccb); -static voidarcmsr_polling_devmap(void *arg); -static voidarcmsr_srb_timeout(void *arg); +static void arcmsr_polling_devmap(void *arg); +static void arcmsr_srb_timeout(void *arg); static void arcmsr_hbd_postqueue_isr(struct AdapterControlBlock *acb); #ifdef ARCMSR_DEBUG1 static void arcmsr_dump_data(struct AdapterControlBlock *acb); @@ -219,11 +221,11 @@ static device_method_t arcmsr_methods[]= { 0, 0 } #endif }; - + static driver_t arcmsr_driver={ "arcmsr", arcmsr_methods, sizeof(struct AdapterControlBlock) }; - + static devclass_t arcmsr_devclass; DRIVER_MODULE(arcmsr, pci, arcmsr_driver, arcmsr_devclass, 0, 0); MODULE_DEPEND(arcmsr, pci, 1, 1, 1); @@ -246,38 +248,38 @@ static struct cdevsw arcmsr_cdevsw={ }; #else #define ARCMSR_CDEV_MAJOR 180 - + static struct cdevsw arcmsr_cdevsw = { - arcmsr_open,/* open */ - arcmsr_close, /* close*/ - noread, /* read */ - nowrite,/* write*/ - arcmsr_ioctl, /* ioctl*/ - nopoll, /* poll */ - nommap, /* mmap */ - nostrategy, /* strategy */ - "arcmsr", /* name */ - ARCMSR_CDEV_MAJOR, /* major*/ - nodump, /* dump */ - nopsize,/* psize*/ - 0 /* flags*/ + arcmsr_open,/* open */ + arcmsr_close, /* close*/ + noread, /* read */ +
svn commit: r292339 - in stable/10: . lib
Author: emaste Date: Wed Dec 16 16:40:45 2015 New Revision: 292339 URL: https://svnweb.freebsd.org/changeset/base/292339 Log: MFC r282821: Remove redundant csu subdir logic The appropriate subdirectories are handled by lib/csu/Makefile. There's no need to duplicate this logic in Makefile.inc1 and lib/Makefile. Sponsored by: The FreeBSD Foundation Modified: stable/10/Makefile.inc1 stable/10/lib/Makefile Directory Properties: stable/10/ (props changed) Modified: stable/10/Makefile.inc1 == --- stable/10/Makefile.inc1 Wed Dec 16 16:19:18 2015(r292338) +++ stable/10/Makefile.inc1 Wed Dec 16 16:40:45 2015(r292339) @@ -1617,13 +1617,7 @@ _prereq_libs= gnu/lib/libssp/libssp_nons # all shared libraries for ELF. # _startup_libs= gnu/lib/csu -.if exists(${.CURDIR}/lib/csu/${MACHINE_ARCH}-elf) -_startup_libs+=lib/csu/${MACHINE_ARCH}-elf -.elif exists(${.CURDIR}/lib/csu/${MACHINE_ARCH}) -_startup_libs+=lib/csu/${MACHINE_ARCH} -.else -_startup_libs+=lib/csu/${MACHINE_CPUARCH} -.endif +_startup_libs+=lib/csu _startup_libs+=gnu/lib/libgcc _startup_libs+=lib/libcompiler_rt _startup_libs+=lib/libc Modified: stable/10/lib/Makefile == --- stable/10/lib/Makefile Wed Dec 16 16:19:18 2015(r292338) +++ stable/10/lib/Makefile Wed Dec 16 16:40:45 2015(r292339) @@ -8,7 +8,7 @@ # and the main list to avoid needing a SUBDIR_DEPEND line on every library # naming just these few items. -SUBDIR_ORDERED=${_csu} \ +SUBDIR_ORDERED=csu \ .WAIT \ libc \ libc_nonshared \ @@ -142,16 +142,6 @@ SUBDIR_DEPEND_libtacplus= libmd SUBDIR_DEPEND_libulog= libmd SUBDIR_DEPEND_libunbound= ${_libldns} -.if exists(${.CURDIR}/csu/${MACHINE_ARCH}-elf) -_csu=csu/${MACHINE_ARCH}-elf -.elif exists(${.CURDIR}/csu/${MACHINE_ARCH}) -_csu=csu/${MACHINE_ARCH} -.elif exists(${.CURDIR}/csu/${MACHINE_CPUARCH}/Makefile) -_csu=csu/${MACHINE_CPUARCH} -.else -_csu=csu -.endif - # NB: keep these sorted by MK_* knobs .if ${MK_ATM} != "no" ___ svn-src-stable-10@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-stable-10 To unsubscribe, send any mail to "svn-src-stable-10-unsubscr...@freebsd.org"
svn commit: r292340 - stable/10/contrib/binutils/gas/config
Author: emaste Date: Wed Dec 16 16:42:24 2015 New Revision: 292340 URL: https://svnweb.freebsd.org/changeset/base/292340 Log: MFC r256859: Don't force 64-bit DWARF2 on MIPS 64-bit debug data is only necessary for objects with greater than 4GB of debug data, and is not used on other 64-bit FreeBSD targets. Modified: stable/10/contrib/binutils/gas/config/tc-mips.c stable/10/contrib/binutils/gas/config/tc-mips.h Directory Properties: stable/10/ (props changed) Modified: stable/10/contrib/binutils/gas/config/tc-mips.c == --- stable/10/contrib/binutils/gas/config/tc-mips.c Wed Dec 16 16:40:45 2015(r292339) +++ stable/10/contrib/binutils/gas/config/tc-mips.c Wed Dec 16 16:42:24 2015(r292340) @@ -15420,21 +15420,6 @@ MIPS options:\n\ -mno-octeon-useun generate MIPS unaligned load/store instructions\n")); } -enum dwarf2_format -mips_dwarf2_format (void) -{ - if (HAVE_64BIT_SYMBOLS) -{ -#ifdef TE_IRIX - return dwarf2_format_64bit_irix; -#else - return dwarf2_format_64bit; -#endif -} - else -return dwarf2_format_32bit; -} - int mips_dwarf2_addr_size (void) { Modified: stable/10/contrib/binutils/gas/config/tc-mips.h == --- stable/10/contrib/binutils/gas/config/tc-mips.h Wed Dec 16 16:40:45 2015(r292339) +++ stable/10/contrib/binutils/gas/config/tc-mips.h Wed Dec 16 16:42:24 2015(r292340) @@ -155,10 +155,6 @@ extern void mips_emit_delays (void); extern void mips_enable_auto_align (void); #define md_elf_section_change_hook() mips_enable_auto_align() -enum dwarf2_format; -extern enum dwarf2_format mips_dwarf2_format (void); -#define DWARF2_FORMAT() mips_dwarf2_format () - extern int mips_dwarf2_addr_size (void); #define DWARF2_ADDR_SIZE(bfd) mips_dwarf2_addr_size () ___ svn-src-stable-10@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-stable-10 To unsubscribe, send any mail to "svn-src-stable-10-unsubscr...@freebsd.org"