net: Add a new socket option for a future transmit time.
This patch introduces SO_TXTIME. User space enables this option in
order to pass a desired future transmit time in a CMSG when calling
sendmsg(2). The argument to this socket option is a 8-bytes long struct
provided by the uapi header net_tstamp.h defined as:
struct sock_txtime {
clockid_t clockid;
u32 flags;
};
Note that new fields were added to struct sock by filling a 2-bytes
hole found in the struct. For that reason, neither the struct size or
number of cachelines were altered.
Signed-off-by: Richard Cochran <rcochran@linutronix.de>
Signed-off-by: Jesus Sanchez-Palencia <jesus.sanchez-palencia@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
c47d8c2f38
commit
80b14dee2b
11 changed files with 84 additions and 0 deletions
|
|
@ -141,4 +141,19 @@ struct scm_ts_pktinfo {
|
|||
__u32 reserved[2];
|
||||
};
|
||||
|
||||
/*
|
||||
* SO_TXTIME gets a struct sock_txtime with flags being an integer bit
|
||||
* field comprised of these values.
|
||||
*/
|
||||
enum txtime_flags {
|
||||
SOF_TXTIME_DEADLINE_MODE = (1 << 0),
|
||||
|
||||
SOF_TXTIME_FLAGS_MASK = (SOF_TXTIME_DEADLINE_MODE)
|
||||
};
|
||||
|
||||
struct sock_txtime {
|
||||
clockid_t clockid; /* reference clockid */
|
||||
u32 flags; /* flags defined by enum txtime_flags */
|
||||
};
|
||||
|
||||
#endif /* _NET_TIMESTAMPING_H */
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue