summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Move uio enums to sys/_uio.h.brooks2018-08-242-11/+53
| | | | | | | | | | | | | | Include _uio.h instead of uio.h in several headers to reduce header polution. Fix a few places that relied on header polution to get the uio.h header. I have not moved struct uio as many more things that use it rely on header polution to get other definitions from uio.h. Reviewed by: cem, kib, markj Sponsored by: DARPA, AFRL Differential Revision: https://reviews.freebsd.org/D14811
* Add the "TCP Blackbox Recorder"jtl2018-08-241-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | which we discussed at the developer summits at BSDCan and BSDCam in 2017. The TCP Blackbox Recorder allows you to capture events on a TCP connection in a ring buffer. It stores metadata with the event. It optionally stores the TCP header associated with an event (if the event is associated with a packet) and also optionally stores information on the sockets. It supports setting a log ID on a TCP connection and using this to correlate multiple connections that share a common log ID. You can log connections in different modes. If you are doing a coordinated test with a particular connection, you may tell the system to put it in mode 4 (continuous dump). Or, if you just want to monitor for errors, you can put it in mode 1 (ring buffer) and dump all the ring buffers associated with the connection ID when we receive an error signal for that connection ID. You can set a default mode that will be applied to a particular ratio of incoming connections. You can also manually set a mode using a socket option. This commit includes only basic probes. rrs@ has added quite an abundance of probes in his TCP development work. He plans to commit those soon. There are user-space programs which we plan to commit as ports. These read the data from the log device and output pcapng files, and then let you analyze the data (and metadata) in the pcapng files. Reviewed by: gnn (previous version) Obtained from: Netflix, Inc. Relnotes: yes Differential Revision: https://reviews.freebsd.org/D11085
* Add _IOC_NEWLEN() and _IOC_NEWTYPE() macros.brooks2018-08-241-0/+4
| | | | | | | | | | | | These macros take an existing ioctl(2) command and replace the length with the specified length or length of the specified type respectively. These can be used to define commands for 32-bit compatibility with fewer opportunities for cut-and-paste errors then a whole new definition. Reviewed by: cem, kib Obtained from: CheriBSD Sponsored by: DARPA, AFRL Differential Revision: https://reviews.freebsd.org/D14706
* This is an implementation of the client side of TCP Fast Open (TFO)pkelsey2018-08-241-2/+14
| | | | | | | | | | | | | | [RFC7413]. It also includes a pre-shared key mode of operation in which the server requires the client to be in possession of a shared secret in order to successfully open TFO connections with that server. The names of some existing fastopen sysctls have changed (e.g., net.inet.tcp.fastopen.enabled -> net.inet.tcp.fastopen.server_enable). Reviewed by: tuexen MFC after: 1 month Sponsored by: Limelight Networks Differential Revision: https://reviews.freebsd.org/D14047
* Follow the RFC6980 and silently ignore following IPv6 NDP messagesae@FreeBSD.org2018-08-241-0/+1
| | | | | | | | | | | | | | | | that had the IPv6 fragmentation header: o Neighbor Solicitation o Neighbor Advertisement o Router Solicitation o Router Advertisement o Redirect Introduce M_FRAGMENTED mbuf flag, and set it after IPv6 fragment reassembly is completed. Then check the presence of this flag in correspondig ND6 handling routines. PR: 224247 MFC after: 2 weeks
* SPDX: license IDs for some ISC-related files.pfg2018-08-242-2/+2
|
* Garbage collect IFCAP_POLLING_NOCOUNT.glebius2018-08-241-1/+1
| | | | | It wasn't used since very beginning of polling(4). The module always ignored return value from driver polling handler.
* sys/sys: further adoption of SPDX licensing ID tags.pfg2018-08-243-0/+6
| | | | | | | | | | | | Mainly focus on files that use BSD 2-Clause license, however the tool I was using misidentified many licenses so this was mostly a manual - error prone - task. The Software Package Data Exchange (SPDX) group provides a specification to make it easier for automated tools to detect and summarize well known opensource licenses. We are gradually adopting the specification, noting that the tags are considered only advisory and do not, in any way, superceed or replace the license texts.
* include: further adoption of SPDX licensing ID tags.pfg2018-08-243-1/+7
| | | | | | | | | | | | | | Mainly focus on files that use BSD 3-Clause license. The Software Package Data Exchange (SPDX) group provides a specification to make it easier for automated tools to detect and summarize well known opensource licenses. We are gradually adopting the specification, noting that the tags are considered only advisory and do not, in any way, superceed or replace the license texts. Special thanks to Wind River for providing access to "The Duke of Highlander" tool: an older (2014) run over FreeBSD tree was useful as a starting point.
* sys: further adoption of SPDX licensing ID tags.pfg2018-08-2418-0/+36
| | | | | | | | | | | | | | Mainly focus on files that use BSD 3-Clause license. The Software Package Data Exchange (SPDX) group provides a specification to make it easier for automated tools to detect and summarize well known opensource licenses. We are gradually adopting the specification, noting that the tags are considered only advisory and do not, in any way, superceed or replace the license texts. Special thanks to Wind River for providing access to "The Duke of Highlander" tool: an older (2014) run over FreeBSD tree was useful as a starting point.
* Use hardware timestamps to report packet timestampskib2018-08-241-0/+11
| | | | | | | | | | | | | | | | for SO_TIMESTAMP and other similar socket options. Provide new control message SCM_TIME_INFO to supply information about timestamp. Currently it indicates that the timestamp was hardware-assisted and high-precision, for software timestamps the message is not returned. Reserved fields are added to ABI to report additional info about it, it is expected that raw hardware clock value might be useful for some applications. Reviewed by: gallatin (previous version), hselasky Sponsored by: Mellanox Technologies MFC after: 2 weeks X-Differential revision: https://reviews.freebsd.org/D12638
* Add a place for a driver to report rx timestampskib2018-08-241-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | in nanoseconds from boot for the received packets. The rcv_tstmp field overlaps the place of Ln header length indicators, not used by received packets. The basic pkthdr rearrangement change in sys/mbuf.h was provided by gallatin. There are two accompanying M_ flags: M_TSTMP means that there is the timestamp (and it was generated by hardware). Another flag M_TSTMP_HPREC indicates that the timestamp is high-precision. Practically M_TSTMP_HPREC means that hardware provided additional precision comparing with the stamps when the flag is not set. E.g., for ConnectX all packets are stamped by hardware when PCIe transaction to write out the completion descriptor is performed, but PTP packet are stamped on port. For Intel cards, when PTP assist is enabled, only PTP packets are stamped in the limited number of registers, so if Intel cards ever start support this mechanism, they would always set M_TSTMP | M_TSTMP_HPREC if hardware timestamp is present for the given packet. Add IFCAP_HWRXTSTMP interface capability to indicate the support for hardware rx timestamping, and ifconfig(8) command to toggle it. Based on the patch by: gallatin Reviewed by: gallatin (previous version), hselasky Sponsored by: Mellanox Technologies MFC after: 2 weeks (? mbuf KBI issue) X-Differential revision: https://reviews.freebsd.org/D12638
* if: Add ioctls to get RSS key and hash type/function.sephe2018-08-242-0/+40
| | | | | | | | | | | | | | | | | | | | | | | It will be needed by hn(4) to configure its RSS key and hash type/function in the transparent VF mode in order to match VF's RSS settings. The description of the transparent VF mode and the RSS hash value issue are here: https://svnweb.freebsd.org/base?view=revision&revision=322299 https://svnweb.freebsd.org/base?view=revision&revision=322485 These are generic enough to promise two independent IOCs instead of abusing SIOCGDRVSPEC. Setting RSS key and hash type/function is a different story, which probably requires more discussion. Comment about UDP_{IPV4,IPV6,IPV6_EX} were only in the patch in the review request; these hash types are standardized now. Reviewed by: gallatin MFC after: 1 week Sponsored by: Microsoft Differential Revision: https://reviews.freebsd.org/D12174
* Correct sysctl names.des2018-08-241-1/+1
|
* Relax visibility for some termios symbols.kib2018-08-241-2/+8
| | | | | | | | | | They are defined by XSI or newer SUS. This is a follow-up to r318780. Reported by: jbeich Obtained from: DragonflyBSD commit e08b3836c962 Sponsored by: The FreeBSD Foundation MFC after: 1 week
* Implement address space guards.kib2018-08-241-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | Guard, requested by the MAP_GUARD mmap(2) flag, prevents the reuse of the allocated address space, but does not allow instantiation of the pages in the range. It is useful for more explicit support for usual two-stage reserve then commit allocators, since it prevents accidental instantiation of the mapping, e.g. by mprotect(2). Use guards to reimplement stack grow code. Explicitely track stack grow area with the guard, including the stack guard page. On stack grow, trivial shift of the guard map entry and stack map entry limits makes the stack expansion. Move the code to detect stack grow and call vm_map_growstack(), from vm_fault() into vm_map_lookup(). As result, it is impossible to get random mapping to occur in the stack grow area, or to overlap the stack guard page. Enable stack guard page by default. Reviewed by: alc, markj Man page update reviewed by: alc, bjk, emaste, markj, pho Tested by: pho, Qualys Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D11306 (man pages)
* Listening sockets improvements.glebius2018-08-241-6/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | o Separate fields of struct socket that belong to listening from fields that belong to normal dataflow, and unionize them. This shrinks the structure a bit. - Take out selinfo's from the socket buffers into the socket. The first reason is to support braindamaged scenario when a socket is added to kevent(2) and then listen(2) is cast on it. The second reason is that there is future plan to make socket buffers pluggable, so that for a dataflow socket a socket buffer can be changed, and in this case we also want to keep same selinfos through the lifetime of a socket. - Remove struct struct so_accf. Since now listening stuff no longer affects struct socket size, just move its fields into listening part of the union. - Provide sol_upcall field and enforce that so_upcall_set() may be called only on a dataflow socket, which has buffers, and for listening sockets provide solisten_upcall_set(). o Remove ACCEPT_LOCK() global. - Add a mutex to socket, to be used instead of socket buffer lock to lock fields of struct socket that don't belong to a socket buffer. - Allow to acquire two socket locks, but the first one must belong to a listening socket. - Make soref()/sorele() to use atomic(9). This allows in some situations to do soref() without owning socket lock. There is place for improvement here, it is possible to make sorele() also to lock optionally. - Most protocols aren't touched by this change, except UNIX local sockets. See below for more information. o Reduce copy-and-paste in kernel modules that accept connections from listening sockets: provide function solisten_dequeue(), and use it in the following modules: ctl(4), iscsi(4), ng_btsocket(4), ng_ksocket(4), infiniband, rpc. o UNIX local sockets. - Removal of ACCEPT_LOCK() global uncovered several races in the UNIX local sockets. Most races exist around spawning a new socket, when we are connecting to a local listening socket. To cover them, we need to hold locks on both PCBs when spawning a third one. This means holding them across sonewconn(). This creates a LOR between pcb locks and unp_list_lock. - To fix the new LOR, abandon the global unp_list_lock in favor of global unp_link_lock. Indeed, separating these two locks didn't provide us any extra parralelism in the UNIX sockets. - Now call into uipc_attach() may happen with unp_link_lock hold if, we are accepting, or without unp_link_lock in case if we are just creating a socket. - Another problem in UNIX sockets is that uipc_close() basicly did nothing for a listening socket. The vnode remained opened for connections. This is fixed by removing vnode in uipc_close(). Maybe the right way would be to do it for all sockets (not only listening), simply move the vnode teardown from uipc_detach() to uipc_close()? Sponsored by: Netflix Differential Revision: https://reviews.freebsd.org/D9770
* Implement INHERIT_ZERO for minherit(2).delphij2018-08-241-0/+1
| | | | | | | | | | | | | | INHERIT_ZERO is an OpenBSD feature. When a page is marked as such, it would be zeroed upon fork(). This would be used in new arc4random(3) functions. PR: 182610 Reviewed by: kib (earlier version) MFC after: 1 month Differential Revision: https://reviews.freebsd.org/D427
* Renumber copyright clause 4imp2018-08-241-1/+1
| | | | | | | | | Renumber cluase 4 to 3, per what everybody else did when BSD granted them permission to remove clause 3. My insistance on keeping the same numbering for legal reasons is too pedantic, so give up on that point. Submitted by: Jan Schaumann <jschauma@stevens.edu> Pull Request: https://github.com/freebsd/freebsd/pull/96
* mprotect(): Change prototype to comply to POSIX.ed@FreeBSD.org2018-08-241-1/+1
| | | | | | | | | Our mprotect() function seems to take a "const void *" address to the pages whose permissions need to be adjusted. POSIX uses "void *". Simply stick to the POSIX one to prevent us from writing unportable code. PR: 211423 (exp-run) Tested by: antoine@ (Thanks!)
* Implement process-shared locks supportkib2018-08-241-0/+7
| | | | | | | | | | | | for libthr.so.3, without breaking the ABI. Special value is stored in the lock pointer to indicate shared lock, and offline page in the shared memory is allocated to store the actual lock. Reviewed by: vangyzen (previous version) Discussed with: deischen, emaste, jhb, rwatson, Martin Simmons <martin@lispworks.com> Tested by: pho Sponsored by: The FreeBSD Foundation
* Add a new file operations hook for mmapjhb2018-08-241-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | operations. File type-specific logic is now placed in the mmap hook implementation rather than requiring it to be placed in sys/vm/vm_mmap.c. This hook allows new file types to support mmap() as well as potentially allowing mmap() for existing file types that do not currently support any mapping. The vm_mmap() function is now split up into two functions. A new vm_mmap_object() function handles the "back half" of vm_mmap() and accepts a referenced VM object to map rather than a (handle, handle_type) tuple. vm_mmap() is now reduced to converting a (handle, handle_type) tuple to a a VM object and then calling vm_mmap_object() to handle the actual mapping. The vm_mmap() function remains for use by other parts of the kernel (e.g. device drivers and exec) but now only supports mapping vnodes, character devices, and anonymous memory. The mmap() system call invokes vm_mmap_object() directly with a NULL object for anonymous mappings. For mappings using a file descriptor, the descriptors fo_mmap() hook is invoked instead. The fo_mmap() hook is responsible for performing type-specific checks and adjustments to arguments as well as possibly modifying mapping parameters such as flags or the object offset. The fo_mmap() hook routines then call vm_mmap_object() to handle the actual mapping. The fo_mmap() hook is optional. If it is not set, then fo_mmap() will fail with ENODEV. A fo_mmap() hook is implemented for regular files, character devices, and shared memory objects (created via shm_open()). While here, consistently use the VM_PROT_* constants for the vm_prot_t type for the 'prot' variable passed to vm_mmap() and vm_mmap_object() as well as the vm_mmap_vnode() and vm_mmap_cdev() helper routines. Previously some places were using the mmap()-specific PROT_* constants instead. While this happens to work because PROT_xx == VM_PROT_xx, using VM_PROT_* is more correct. Differential Revision: https://reviews.freebsd.org/D2658 Reviewed by: alc (glanced over), kib MFC after: 1 month Sponsored by: Chelsio
* Retire the unimplemented MAP_RENAMEjhb2018-08-241-2/+2
| | | | | | | | | and MAP_NORESERVE flags to mmap(2). Older binaries are still permitted to use these flags. PR: 193961 (exp-run in ports) Differential Revision: https://reviews.freebsd.org/D848 Reviewed by: kib
* Add a new fo_fill_kinfo fileops methodjhb2018-08-241-1/+0
| | | | | | | | | | | | | to add type-specific information to struct kinfo_file. - Move the various fill_*_info() methods out of kern_descrip.c and into the various file type implementations. - Rework the support for kinfo_ofile to generate a suitable kinfo_file object for each file and then convert that to a kinfo_ofile structure rather than keeping a second, different set of code that directly manipulates type-specific file information. - Remove the shm_path() and ksem_info() layering violations. Differential Revision: https://reviews.freebsd.org/D775 Reviewed by: kib, glebius (earlier version)
* Add MAP_EXCL flag for mmap(2).kib2018-08-241-0/+1
| | | | | | | | | | | It should be combined with MAP_FIXED, and prevents the request from deleting existing mappings in the region, failing instead. Reviewed by: alc Discussed with: jhb Tested by: markj, pho (previous version, as part of the bigger patch) Sponsored by: The FreeBSD Foundation MFC after: 1 week
* Add a mmap flag (MAP_32BIT) on 64-bit platformsjhb2018-08-241-0/+3
| | | | | | | | | | | | | | to request that a mapping use an address in the first 2GB of the process's address space. This flag should have the same semantics as the same flag on Linux. To facilitate this, add a new parameter to vm_map_find() that specifies an optional maximum virtual address. While here, fix several callers of vm_map_find() to use a VMFS_* constant for the findspace argument instead of TRUE and FALSE. Reviewed by: alc Approved by: re (kib)
* Implement read(2)/write(2) and neccessary lseek(2)kib2018-08-241-0/+7
| | | | | | | | | | | | | for posix shmfd. Add MAC framework entries for posix shm read and write. Do not allow implicit extension of the underlying memory segment past the limit set by ftruncate(2) by either of the syscalls. Read and write returns short i/o, lseek(2) fails with EINVAL when resulting offset does not fit into the limit. Discussed with: alc Tested by: pho Sponsored by: The FreeBSD Foundation
* Add __nl_item to <sys/_types.h> and use itSebastian Huber2018-08-243-5/+5
| | | | | | | | Add __nl_item to <sys/_types.h> for FreeBSD compatibility. Use it in <langinfo.h> and the Cygwin <nl_types.h>. Make the enum __nl_item in <langinfo.h> anonymous. Signed-off-by: Sebastian Huber <sebastian.huber@embedded-brains.de>
* CYgwin: fix typo in commentCorinna Vinschen2018-08-241-1/+1
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* RTEMS: Add __tls_get_addr() to crt0Sebastian Huber2018-08-201-1/+2
| | | | | | | | Add __tls_get_addr() for all targets to crt0. This is not only used on ARM. In particular, it is used on RISC-V. This helps to adequately support the GCC libgomp. Signed-off-by: Sebastian Huber <sebastian.huber@embedded-brains.de
* Cygwin: get_mem_values: Fix prototypeCorinna Vinschen2018-08-171-3/+2
| | | | | | Incomplete change unsigned long -> size_t was only visible on 32 bit, sigh. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Cygwin: document /proc/<PID>/status and /proc/<PID>/statm patchesCorinna Vinschen2018-08-171-0/+3
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Cygwin: get_mem_values: Return number of Cygwin pages in argumentsCorinna Vinschen2018-08-171-9/+15
| | | | | | Simplify callers accordingly. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Cygwin: get_mem_values: Convert arguments to call-by-referenceCorinna Vinschen2018-08-171-17/+17
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Cygwin: get_mem_values: Return allocation as size_t valuesCorinna Vinschen2018-08-171-18/+15
| | | | | | Use size_t in callers, too. Fix __small_sprintf format specifiers. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Revert "Use allocation granularity as the 'page_size' in /proc/<pid>/status ↵Corinna Vinschen2018-08-171-1/+1
| | | | | | | | | | | as well, for consistency with /proc/<pid>/statm" This reverts commit 8a32c24a7bdb0f3d80daa8f267cc63d15edcf771. Replacing page_size() with allocation_granularity() was incorrect. The values returned by get_mem_values() are # of pages of size page_size(). Multiplying with allocation_granularity() here results in values 16 times too big.
* Cygwin: Add missing items to release notesCorinna Vinschen2018-08-172-0/+9
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* setfacl: Rename the option --file to --set-file, as on LinuxKen Brown2018-08-174-4/+11
| | | | Retain --file as an undocumented option for backwards compatibility.
* Fix strtof ("-nan") returns positive NaNMasamichi Hosoda2018-08-161-2/+2
| | | | | | | | | | | | strtof ("-nan") returned positive NaN instead of negative NaN. strtod ("-nan") and strtold ("-nan") return negative NaN. Linux glibc has been fixed that strto{f|d|ld} ("-nan") returns negative NaN. https://sourceware.org/bugzilla/show_bug.cgi?id=23007 This commit makes strtof preserves the negative sign bit when parsing "-nan" like glibc.
* Remove unused NaN's integer representation definitionsMasamichi Hosoda2018-08-166-93/+8
| | | | | | | | By previous commit, strto{d|ld} ("nan") does not use the definition of NaN. There is no other function that uses the definitions. This commit remove the definitions.
* Fix strtod ("nan") and strtold ("nan") returns wrong negative NaNMasamichi Hosoda2018-08-162-9/+2
| | | | | | | | | | | | | | The definition of qNaN for x86_64 and i386 was wrong. strto{d|ld} ("nan") returned wrong negative NaN instead of correct positive NaN since it used the wrong definition. On the other hand, strtof ("nan") returns correct positive NaN since it uses nanf ("") instead of the wrong definition. This commit makes strto{d|ld} ("nan") uses {nan|nanl} ("") like strtof ("nan") using. So strto{d|ld} ("nan") returns positive NaN.
* Improve sincosf commentsWilco Dijkstra2018-08-164-21/+26
| | | | | | | Improve comments in sincosf implementation to make the code easier to understand. Rename the constant pi64 to pi63 since it's actually PI * 2^-63. Add comments for fields of sincos_t structure. Add comments describing implementation details to reduce_fast.
* Cygwin: Add FE_ALL_EXCEPT change to release notes.Corinna Vinschen2018-08-152-0/+6
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Keep the denormal-operand exception masked; modify FE_ALL_EXCEPT accordingly.J.H. van de Water2018-08-152-9/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | By excluding the denormal-operand exception from FE_ALL_EXCEPT, it will not be possible anymore to UNmask this exception by means of the API defined by /usr/include/fenv.h Note: terminology has changed since IEEE Std 854-1987; denormalized numbers are called subnormal numbers nowadays. This modification has basically been motivated by the fact that it is also not possible on Linux to manipulate the denormal-operand exception by means of the interface as defined by /usr/include/fenv.h. This has been the state of affairs on Linux since 2001 (Andreas Jaeger). The exceptions required by the standard (IEEE Std 754), in case they can be supported by the implementation, are: FE_INEXACT, FE_UNDERFLOW, FE_OVERFLOW, FE_DIVBYZERO and FE_INVALID. Although it is allowed to define additional exceptions, there is no reason to support the "denormal-operand exception" in this case (fenv.h), because the subnormal numbers can be handled almost as fast the normalized numbers by the hardware of the x86/x86_64 architecture. Said differently, a reason to trap on the input of subnormal numbers does not exist. At least that is what William Kahan and others at Intel asserted around 2000. (that is William Kahan of the K-C-S draft, the precursor to the standard) This commit modifies winsup/cygwin/include/fenv.h as follows: - redefines FE_ALL_EXCEPT from 0x3f to 0x3d - removes the definition for FE_DENORMAL - introduces __FE_DENORM (0x2) (enum in Linux also uses __FE_DENORM) - introduces FE_ALL_EXCEPT_X86 (0x3f), i.e. ALL x86/x86_64 FP exceptions
* Cygwin: Add J.H. van de Water to CONTRIBUTORSCorinna Vinschen2018-08-151-0/+1
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Cygwin: fenv.h: Convert to ASCII-onlyCorinna Vinschen2018-08-141-1/+1
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Added Restriction on base valueAditya Upadhyay2018-08-131-0/+4
|
* Cygwin: utils: ps: use fputs to print fixed stringsCorinna Vinschen2018-08-091-3/+3
| | | | | | Avoid gcc warning "format not a string literal and no format arguments" Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* newlib: strftime: fix over-enthusiastic fix from 0283642f35ceCorinna Vinschen2018-08-081-1/+2
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Add BSP and semihosting library for nios2-generic-nommu QEMU emulation.Sandra Loosemore2018-08-0828-0/+5848
|