summaryrefslogtreecommitdiff
path: root/usr/src
diff options
context:
space:
mode:
authorDan McDonald <danmcd@joyent.com>2021-02-18 10:33:08 -0500
committerDan McDonald <danmcd@joyent.com>2021-02-18 10:33:08 -0500
commitee3e97668a34268a4975e3ecd95c503a617fe1cc (patch)
tree10a7db21482e64f44096a2af2e49f8b03fd9bf2b /usr/src
parentc97a57dc5369ecd7d8da38559b01a3fae91e20d4 (diff)
parent3f423849d2afa35883f6feac478a08bdc8a1e68e (diff)
downloadillumos-joyent-ee3e97668a34268a4975e3ecd95c503a617fe1cc.tar.gz
[illumos-gate merge]
commit 3f423849d2afa35883f6feac478a08bdc8a1e68e 13544 rmformat: symbol 'uscsi_error' is multiply-defined commit b0d8599cdab985a41de495bf1f4f1bb56cdbef3c 13540 ndmpd: multiply-defined symbols commit b2d74f536e6828d7c394fb09b412bf35af42299d 13539 modload: multiply-defined symbols commit 942d4fcad7a6f23f289e7d2485bc9bc18b4506ab 13534 Document IPv6 LSO in mac(9E)
Diffstat (limited to 'usr/src')
-rw-r--r--usr/src/cmd/modload/addrem.h18
-rw-r--r--usr/src/cmd/modload/drvsubr.c9
-rw-r--r--usr/src/cmd/ndmpd/include/tlm.h2
-rw-r--r--usr/src/cmd/ndmpd/ndmp/ndmpd_log.c2
-rw-r--r--usr/src/cmd/rmformat/rmformat.h4
-rw-r--r--usr/src/man/man9e/mac.9e39
6 files changed, 52 insertions, 22 deletions
diff --git a/usr/src/cmd/modload/addrem.h b/usr/src/cmd/modload/addrem.h
index dc2a1732d4..950a7947b7 100644
--- a/usr/src/cmd/modload/addrem.h
+++ b/usr/src/cmd/modload/addrem.h
@@ -82,16 +82,16 @@ extern "C" {
#endif
/* pointers to add_drv/rem_drv database files */
-char *driver_aliases;
-char *driver_classes;
-char *minor_perm;
-char *name_to_major;
-char *rem_name_to_major;
-char *device_policy;
-char *extra_privs;
+extern char *driver_aliases;
+extern char *driver_classes;
+extern char *minor_perm;
+extern char *name_to_major;
+extern char *rem_name_to_major;
+extern char *device_policy;
+extern char *extra_privs;
/* devfs root string */
-char *devfs_root;
+extern char *devfs_root;
/* module path searching structure */
struct drvmod_dir {
@@ -99,7 +99,7 @@ struct drvmod_dir {
struct drvmod_dir *next;
};
-struct drvmod_dir *moddir;
+extern struct drvmod_dir *moddir;
/* names of things: directories, commands, files */
#define KERNEL_DRV "/kernel/drv"
diff --git a/usr/src/cmd/modload/drvsubr.c b/usr/src/cmd/modload/drvsubr.c
index 75662833e9..8337e009d6 100644
--- a/usr/src/cmd/modload/drvsubr.c
+++ b/usr/src/cmd/modload/drvsubr.c
@@ -66,6 +66,15 @@
*/
#define isquote(c) (((c) == '"') || ((c) == '\''))
+char *driver_aliases;
+char *driver_classes;
+char *device_policy;
+char *extra_privs;
+char *devfs_root;
+char *minor_perm;
+struct drvmod_dir *moddir;
+char *name_to_major;
+char *rem_name_to_major;
static char *add_rem_lock; /* lock file */
static int add_rem_lock_fd = -1;
diff --git a/usr/src/cmd/ndmpd/include/tlm.h b/usr/src/cmd/ndmpd/include/tlm.h
index 8c667a334b..e5e045d89a 100644
--- a/usr/src/cmd/ndmpd/include/tlm.h
+++ b/usr/src/cmd/ndmpd/include/tlm.h
@@ -437,7 +437,7 @@ typedef struct tm_ops {
#define LONGNAME_PREFIX "././_LoNg_NaMe_"
extern void ndmp_log(ulong_t, char *, char *, ...);
-char ndmp_log_info[256];
+extern char ndmp_log_info[256];
#define NDMP_LOG(p, ...) { \
(void) snprintf(ndmp_log_info, \
sizeof (ndmp_log_info), \
diff --git a/usr/src/cmd/ndmpd/ndmp/ndmpd_log.c b/usr/src/cmd/ndmpd/ndmp/ndmpd_log.c
index 46c0d2d331..73ecf1eae1 100644
--- a/usr/src/cmd/ndmpd/ndmp/ndmpd_log.c
+++ b/usr/src/cmd/ndmpd/ndmp/ndmpd_log.c
@@ -65,12 +65,12 @@
#define LOG_FILE_SIZE 4 * 1024 * 1024
#define LOG_SIZE_INT 256
+char ndmp_log_info[256];
static boolean_t debug = B_FALSE;
static boolean_t log_to_stderr = B_FALSE;
static FILE *logfp;
static int ndmp_synclog = 1;
-
/*
* Since we use buffered file I/O for log file, the thread may lose CPU.
* At this time, another thread can destroy the contents of the buffer
diff --git a/usr/src/cmd/rmformat/rmformat.h b/usr/src/cmd/rmformat/rmformat.h
index dcf9228a51..416cc13e73 100644
--- a/usr/src/cmd/rmformat/rmformat.h
+++ b/usr/src/cmd/rmformat/rmformat.h
@@ -27,8 +27,6 @@
#ifndef _RMFORMAT_H
#define _RMFORMAT_H
-#pragma ident "%Z%%M% %I% %E% SMI"
-
/*
* This file contents the definitions for rmformat utility
*/
@@ -134,7 +132,7 @@ extern "C" {
#define INQUIRY_DATA_LENGTH 96
#define DVD_CONFIG_SIZE 0x20
-int uscsi_error; /* used for debugging failed uscsi */
+extern int uscsi_error; /* used for debugging failed uscsi */
/* fdisk related structures */
diff --git a/usr/src/man/man9e/mac.9e b/usr/src/man/man9e/mac.9e
index d3d066a564..8b896a35c2 100644
--- a/usr/src/man/man9e/mac.9e
+++ b/usr/src/man/man9e/mac.9e
@@ -11,8 +11,9 @@
.\"
.\" Copyright 2019 Joyent, Inc.
.\" Copyright 2020 RackTop Systems, Inc.
+.\" Copyright 2021 Oxide Computer Company
.\"
-.Dd May 11, 2020
+.Dd February 13, 2021
.Dt MAC 9E
.Os
.Sh NAME
@@ -650,40 +651,62 @@ The
capability indicates that the driver supports various forms of large
send offload (LSO).
The private data is a pointer to a
-.Sy mac_capab_lso_t
+.Ft mac_capab_lso_t
structure.
-At the moment, LSO support is limited to TCP inside of IPv4.
+The system currently supports offloading TCP packets over both IPv4 and
+IPv6.
This structure has the following members which are used to indicate
various types of LSO support.
.Bd -literal -offset indent
t_uscalar_t lso_flags;
lso_basic_tcp_ivr4_t lso_basic_tcp_ipv4;
+lso_basic_tcp_ipv6_t lso_basic_tcp_ipv6;
.Ed
.Pp
The
-.Sy lso_flags
+.Fa lso_flags
member is used to indicate which members are valid and should be
considered.
Each flag represents a different form of LSO.
The member should be set to the bitwise inclusive OR of the following values:
.Bl -tag -width Dv -offset indent
-.It Sy LSO_TX_BASIC_TCP_IPV4
+.It Dv LSO_TX_BASIC_TCP_IPV4
This indicates hardware support for performing TCP segmentation
offloading over IPv4.
When this flag is set, the
-.Sy lso_basic_tcp_ipv4
+.Fa lso_basic_tcp_ipv4
+member must be filled in.
+.It Dv LSO_TX_BASIC_TCP_IPV6
+This indicates hardware support for performing TCP segmentation
+offloading over IPv6.
+The IPv6 packet will have no extension headers present.
+When this flag is set, the
+.Fa lso_basic_tcp_ipv6
member must be filled in.
.El
.Pp
The
-.Sy lso_basic_tcp_ipv4
+.Fa lso_basic_tcp_ipv4
+member is a structure with the following members:
+.Bd -literal -offset indent
+t_uscalar_t lso_max
+.Ed
+.Bd -filled -offset indent
+The
+.Fa lso_max
+member should be set to the maximum size of the TCP data
+payload that can be offloaded to the hardware.
+.Ed
+.Pp
+The
+.Fa lso_basic_tcp_ipv6
member is a structure with the following members:
.Bd -literal -offset indent
t_uscalar_t lso_max
.Ed
.Bd -filled -offset indent
The
-.Sy lso_max
+.Fa lso_max
member should be set to the maximum size of the TCP data
payload that can be offloaded to the hardware.
.Ed