summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* MFC: r294191allanjude2016-01-211-1/+3
| | | | | | Never 4k align the MBR bootpool because zfsldr can not deal with a gap Sponsored by: ScaleEngine Inc.
* Add strlcat and strlcpy to libstand on ia64. This is conceptually partian2016-01-201-0/+1
| | | | | of the MFC done in r294342, but since ia64 is gone in -current this is a direct commit to 10-stable to add the functions.
* Leave temporary ia64 loader.sym behind if the build failsemaste2016-01-201-1/+0
| | | | | This facilitates investigation of the build failure, and is the same way it's done for other architectures using EFI.
* MFC r276539: Update ELF headers to include additional definesemaste2016-01-204-29/+240
| | | | | | | | | | | | The elftoolchain project includes these additional defines for various userland programs. Given that arch-specific defines are still interesting in the context of userland programs reading or writing ELF metadata, they should be included in top-level ELF headers. Remove duplicate defines from ARM and MIPS elf headers. Submitted by: will (initial version) Sponsored by: The FreeBSD Foundation
* MFC r293856:brooks2016-01-201-1/+1
| | | | | | | | | | | Avoid reading pass the end of the source buffer when it is not NUL terminated. If this buffer is adjacent to an unmapped page or a version of C with bounds checked is used this may result in a crash. PR: 206178 Submitted by: Alexander Cherepanov <cherepan@mccme.ru>
* MFC r288081: Add MIPS ELF section type SHT_MIPS_ABIFLAGS definitionemaste2016-01-201-0/+1
|
* MFC r293855:brooks2016-01-201-1/+1
| | | | | | | | | | | Avoid reading pass the end of the source buffer when it is not NUL terminated. If this buffer is adjacent to an unmapped page or a version of C with bounds checked is used this may result in a crash. PR: 206177 Submitted by: Alexander Cherepanov <cherepan@mccme.ru>
* MFC r288083, r288138: elfdump: report MIPS-specific ELF section typesemaste2016-01-201-0/+2
|
* MFC r293245: loader.efi style(9) cleanupemaste2016-01-201-35/+29
| | | | Submitted by: smh
* MFC r293234: Enable the beastie menu for the UEFI consoleemaste2016-01-203-11/+4
| | | | | | | As of r294445 [in stable/10] the UEFI console includes basic terminal emulator support. Relnotes: Yes
* MFC r293233: loader.efi: add terminal emulation supportemaste2016-01-204-20/+406
| | | | | | | This is based on the vidconsole implementation. Submitted by: Toomas Soome <tsoome@me.com> Relnotes: Yes
* MFC r293281: Use standard name for ASCII LF and FF control codesemaste2016-01-202-7/+7
| | | | PR: 205778
* MFC r277215, r277291, r277418, r280953 and r280954:royger2016-01-2016-94/+989
| | | | | | | | | loader: implement multiboot support for Xen Dom0 Note that only the subset of the multiboot specification needed in order to boot a Xen Dom0 is implemented. Sponsored by: Citrix Systems R&D
* MFC r294372arybchik2016-01-201-1/+1
| | | | | | sfxge: refresh version to note matching version of out-of-tree driver Sponsored by: Solarflare Communications, Inc.
* MFC r294310arybchik2016-01-201-106/+70
| | | | | | | | | | | | | | sfxge: improve error handling in ef10_ev_rx() Ensure that checksum flags and L3/L4 fields are ignored if lower level errors are reported in the event. Remove checks for CRC0_ERR (bad iSCSI header CRC) and CRC1_ERR (bad iSCSI payload or FCoE/FCoIP CRC) as they are not used by any existing code. Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc.
* MFC r294309arybchik2016-01-205-16/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | sfxge: select whether to read current or backup partition in Medford A/B scheme The dynamic config on Medford is stored using two partitions in flash, and at any time one is the 'current' partition, used to provide the active config, and the other 'backup' partition is used for writes. This means that there are two potential partitions that can be used to service reads, and which is required can depend on, for example, whether the read is to get the current contents or to verify a write. When the partition write lock is held, the default behaviour is to read from the backup partition, which was wrong for most reads in the common code which require the current partition. This change allows the current partition to be read whilst the write lock is held. There is one read in Manftest which needs the backup partition. ef10_nvram_partn_read_mode() is created to avoid changing ef10_nvram_partn_read() which shares a prototype with the equivalent Falcon and Siena methods. MC_CMD_NVRAM_READ_IN_V2 adds an extra field, but firmware which doesn't support it just ignores it. Submitted by: Mark Spender <mspender at solarflare.com> Sponsored by: Solarflare Communications, Inc.
* MFC r294259arybchik2016-01-201-19/+46
| | | | | | sfxge: regenerate EF10 registers definition for Medford Sponsored by: Solarflare Communications, Inc.
* MFC r294257arybchik2016-01-201-2/+2
| | | | | | sfxge: regenerate siena_flash.h from FW sources Sponsored by: Solarflare Communications, Inc.
* MFC r294256arybchik2016-01-201-2/+0
| | | | | | sfxge: cleanup: remove extra empty lines Sponsored by: Solarflare Communications, Inc.
* MFC r294255arybchik2016-01-201-1/+1
| | | | | | | sfxge: highlight that descriptor cache sizes are configured using TLV now Submitted by: Tom Millington <tmillington at solarflare.com> Sponsored by: Solarflare Communications, Inc.
* MFC r294254arybchik2016-01-201-1/+5
| | | | | | | | | | sfxge: support RFID-selectable segments of dynamic configuration tlv_partition_header has field *preset* to support RFID-selectable segments of dynamic configuration Submitted by: Mateusz Wrzesinski <mwrzesinski at solarflare.com> Sponsored by: Solarflare Communications, Inc.
* MFC r294253arybchik2016-01-206-1/+86
| | | | | | | | | | | | sfxge: if supported by firmware, use enhanced SET_MAC command to only configure the MTU This allows an MTU change to be requested on unpriviliged functions without also setting all the other parameters supported by MC_CMD_SET_MAC. The enhanced SET_MAC command was introduced in v4_7 firmware. Submitted by: Mark Spender <mspender at solarflare.com> Sponsored by: Solarflare Communications, Inc.
* MFC r294094arybchik2016-01-201-4/+67
| | | | | | | | sfxge: check the RX DMA end padding configuration on Medford Submitted by: Mark Spender <mspender at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc.
* MFC r294092arybchik2016-01-204-142/+145
| | | | | | | | sfxge: rename Huntington MAC methods to EF10 and use for Medford Submitted by: Mark Spender <mspender at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc.
* MFC r294091arybchik2016-01-207-79/+54
| | | | | | | | | | | | sfxge: rename common hunt PHY methods to ef10 and use for Medford Leaving BIST methods for now as, though the Medford bootrom now has lots of BIST support, production firmware doesn't appear to have been updated yet. Submitted by: Mark Spender <mspender at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc.
* MFC r294081arybchik2016-01-201-51/+35
| | | | | | | | sfxge: cleanup: simplify ef10_get_datapath_caps Submitted by: Andy Moreton <amoreton at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc.
* MFC r294079arybchik2016-01-204-18/+46
| | | | | | | | sfxge: Medford still needs fallback for no privilege mask Submitted by: Mark Spender <mspender at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc.
* MFC r294078arybchik2016-01-203-9/+33
| | | | | | | | | | sfxge: medford stores a single global copy of VPD Not per PF copies as on Huntington. Submitted by: Mark Spender <mspender at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc.
* MFC r294077arybchik2016-01-204-77/+173
| | | | | | | sfxge: support FATSOv2 Reviewed by: gnn Sponsored by: Solarflare Communications, Inc.
* MFC r294076arybchik2016-01-207-105/+47
| | | | | | | | sfxge: rework MCDI request completion Submitted by: Andy Moreton <amoreton at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc.
* MFC r294075arybchik2016-01-205-31/+31
| | | | | | | | sfxge: rename hunt_link_state_t to ef10_link_state_t Submitted by: Mark Spender <mspender at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc.
* MFC r293902arybchik2016-01-201-7/+0
| | | | | | | | | | | sfxge: cleanup: quieten efx_mcdi_read_resonse_header error reporting The "mcdi_err_arg" probe still reports results of failed MCDI commands, unless the caller invoked efx_mcdi_execute_quiet(). Submitted by: Andy Moreton <amoreton at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc.
* MFC r293901,r294371arybchik2016-01-208-4/+880
| | | | | | | | | | | | sfxge: add accessors for license-related MCDI calls to common code Add support for Huntington MCDI licensing interface to common code. Ported from Linux net driver IOCTL functions with restructuring for initial support for V3 licensing API. Submitted by: Richard Houldsworth <rhouldsworth at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc.
* MFC r293900arybchik2016-01-203-2/+13
| | | | | | | | sfxge: add table entries for License NVRAM partition Submitted by: Richard Houldsworth <rhouldsworth at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc.
* MFC r293899arybchik2016-01-201-1/+4
| | | | | | | | | | sfxge: cleanup: adjust efx_mcdi_get_port_modes() comment for clarity Fix an explanatory comment which did not explain very well. Submitted by: Richard Houldsworth <rhouldsworth at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc.
* MFC r293895arybchik2016-01-203-8/+25
| | | | | | | | | | | | | | | | | | | | | | | | sfxge: fix common code VPD iterator and duplicate tag verification Fix efx_vpd_hunk_next() which has -- since its inception -- failed to correctly iterate over the tags and keywords contained in the VPD data. Only the first tag or keyword would be returned and the next call with *contp == 1 would walk to the end of the data and finish. This was spotted when fixing up errors spotted by Prefast code analysis (which neglected to set all of the out parameters in all successful cases) Also fix efx_vpd_verify() on Siena and EF10 which (as a side effect of correctly iterating over all the tags and keywords) was failing as it detected that both the static VPD and dynamic VPD storage contained an RV keyword in the VPD-R tag. This is intentional as the static VPD and dynamic VPD are stored separately (firmware merges their contents and computes a new RV keyword checksum for the data readable from the VPD capability in PCIe configuration space). Submitted by: Andrew Lee <alee at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc.
* MFC r293892arybchik2016-01-201-3/+3
| | | | | | | | | | | | sfxge: use correct register definitions for setting interrupt moderation on Medford The only value which has changed is the number of rows (ER_DZ_EVQ_TMR_REG_ROWS is 2048 vs 1024 for FR_BZ_TIMER_COMMAND_REGP0_ROWS) but that isn't used, so this shouldn't change behaviour. Submitted by: Mark Spender <mspender at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc.
* MFC r293891arybchik2016-01-208-2/+96
| | | | | | | sfxge: support FATSOv2 in common code Reviewed by: gnn Sponsored by: Solarflare Communications, Inc.
* MFC r293890arybchik2016-01-202-4/+4
| | | | | | | | sfxge: rx_prefix_pktlen methods do not require EFSYS_OPT_RX_SCALE Submitted by: Mark Spender <mspender at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc.
* MFC r293889,r294080,r294093,r294201,r294249-r294252arybchik2016-01-206-473/+183
| | | | | | | sfxge: convert nvram methods to use partition id Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc.
* MFC r293888arybchik2016-01-206-166/+101
| | | | | | | | sfxge: rework MCDI start request Submitted by: Andy Moreton <amoreton at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc.
* MFC r293887arybchik2016-01-207-20/+350
| | | | | | | | sfxge: add Medford NIC methods Submitted by: Mark Spender <mspender at solarflare.com> Reviewed by: gnn Sponsored by: Solarflare Communications, Inc.
* Regen for r294368.jhb2016-01-209-612/+612
|
* MFC 289769,289822,290143,290144:jhb2016-01-2012-34/+86
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Rename remaining linux32 symbols from linux_* to linux32_*. 289769: Rename remaining linux32 symbols such as linux_sysent[] and linux_syscallnames[] from linux_* to linux32_* to avoid conflicts with linux64.ko. While here, add support for linux64 binaries to systrace. - Update NOPROTO entries in amd64/linux/syscalls.master to match the main table to fix systrace build. - Add a special case for union l_semun arguments to the systrace generation. - The systrace_linux32 module now only builds the systrace_linux32.ko. module on amd64. - Add a new systrace_linux module that builds on both i386 and amd64. For i386 it builds the existing systrace_linux.ko. For amd64 it builds a systrace_linux.ko for 64-bit binaries. 289822: Fix build for the KTR-enabled kernels. 290143: Fix build with DEBUG defined. 290144: Update for LINUX32 rename. The assembler didn't complain about undefined symbols but just used 0 after the rename.
* MFC r292337, r292552, r292553:ian2016-01-199-33/+16
| | | | | | | | | | | | | | | | | | | | | | | | Build mount_smbfs for arm. Also sort the subdirs. Avoid unaligned memory accesses when encoding netbios names in libsmb. The current code for encoding a netbios name converts each byte to a 16-bit value and stores the result by casting a char* to u_short*, resulting in alignment faults on strict-alignment platforms. This change reimplements the encoding routine using only byte accesses to memory. There is no particular reason to work with 16-bit values just because the encoding process creates two bytes of output for every byte of input. Working a byte at at time also avoids endian problems for big-endian platforms. Make the building of libsmb and mount_smbfs unconditional, now that r292552 has eliminated alignment and endian problems that were making it fail on some platforms. PR: 180438 PR: 189415 Relnotes: Yes
* Default __MAKE_SHELL to /bin/sh when generating aton_ether_subr.c viangie2016-01-191-0/+2
| | | | | | | | | | | | `gen_ether_subr`. __MAKE_SHELL is only defined when installworld is run on stable/10, which breaks workflows dealing with source trees mounted with noexec [*] This is a direct commit to stable/10 Reported by: Mark Martinec <Mark.Martinec+freebsd@ijs.si> Sponsored by: EMC / Isilon Storage Division
* MFC r292888:ian2016-01-191-2/+8
| | | | | | | Fix the error checking for the ubenv command. This moves the check for an empty ldvar (which amounts to the varname string starting with '=') into the if block that manipulates ldvar, which avoids later referencing ldvar when it was never initialized.
* MFC r292584:ian2016-01-191-2/+25
| | | | | | | | | | | | | | Set env vars from values on the efi loader command line. Examine each cmdline arg and if it contains an '=' convert it to ascii and pass it to putenv(). This allows var=value settings to come in on the command line. This will allow overriding dhcp server-provided data in loader(8), as discussed in PR 202098 PR: 202098 Relnotes: Yes (this goes together with r294343)
* MFC r292583:ian2016-01-191-6/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Allow dhcp/bootp server-provided values to be overriden from environment variables in loader(8) and other libstand applications. Sometimes a dhcp server provides incorrect information along with the IP address. It would be useful to have a way to override this with locally-supplied information, such as command line parameters passed from a prior-stage bootloader. This change allows pre-existing env vars to take precedence over values delivered by the dhcp or bootp server. The bootp/dhcp code in libstand automatically creates environment variables from the data provided by the server (dhcp.root-path, dhcp.domain-name, etc). It also transcribes the values to some global variables such as 'rootpath' and 'hostname'. This change does two things: When adding dhcp.* vars to the environment, don't replace existing vars/values. When setting the global vars rootpath and hostname, use the dhcp.root-path and dhcp.host-name env var values if they exist. This allows the platform-specific part of loader(8) to obtain override values in some platform-specific way and store them in the environment before opening the network device. The set of values that can be overriden is currently limited to just string options. The values that are delivered as binary data are things that probably shouldn't be overridden (IP, netmask, gateway, etc). The original patch this evolved from was submitted by martymac@ PR: 202098 Relnotes: Yes
* MFC r292234, r292527:ian2016-01-192-4/+4
| | | | Add strlcat() and strlcpy() to libstand and libstand32.
OpenPOWER on IntegriCloud