Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
nexedi
linux
Commits
82347bd7
Commit
82347bd7
authored
Nov 13, 2004
by
Patrick McHardy
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[NET]: Move rx timestamp functions to net/core/dev.c
Signed-off-by:
Patrick McHardy
<
kaber@trash.net
>
parent
069fa23e
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
30 additions
and
17 deletions
+30
-17
include/linux/netdevice.h
include/linux/netdevice.h
+3
-0
include/net/sock.h
include/net/sock.h
+0
-12
net/core/dev.c
net/core/dev.c
+25
-0
net/core/sock.c
net/core/sock.c
+2
-5
No files found.
include/linux/netdevice.h
View file @
82347bd7
...
...
@@ -928,6 +928,9 @@ extern unsigned long netdev_fc_xoff;
extern
atomic_t
netdev_dropping
;
extern
int
netdev_set_master
(
struct
net_device
*
dev
,
struct
net_device
*
master
);
extern
int
skb_checksum_help
(
struct
sk_buff
*
skb
,
int
inward
);
/* rx skb timestamps */
extern
void
net_enable_timestamp
(
void
);
extern
void
net_disable_timestamp
(
void
);
#ifdef CONFIG_SYSCTL
extern
char
*
net_sysctl_strdup
(
const
char
*
s
);
...
...
include/net/sock.h
View file @
82347bd7
...
...
@@ -1270,19 +1270,7 @@ static inline void sk_eat_skb(struct sock *sk, struct sk_buff *skb)
__kfree_skb
(
skb
);
}
extern
atomic_t
netstamp_needed
;
extern
void
sock_enable_timestamp
(
struct
sock
*
sk
);
static
inline
void
net_timestamp
(
struct
timeval
*
stamp
)
{
if
(
atomic_read
(
&
netstamp_needed
))
do_gettimeofday
(
stamp
);
else
{
stamp
->
tv_sec
=
0
;
stamp
->
tv_usec
=
0
;
}
}
extern
int
sock_get_timestamp
(
struct
sock
*
,
struct
timeval
__user
*
);
/*
...
...
net/core/dev.c
View file @
82347bd7
...
...
@@ -1001,6 +1001,29 @@ int call_netdevice_notifiers(unsigned long val, void *v)
return
notifier_call_chain
(
&
netdev_chain
,
val
,
v
);
}
/* When > 0 there are consumers of rx skb time stamps */
static
atomic_t
netstamp_needed
=
ATOMIC_INIT
(
0
);
void
net_enable_timestamp
(
void
)
{
atomic_inc
(
&
netstamp_needed
);
}
void
net_disable_timestamp
(
void
)
{
atomic_dec
(
&
netstamp_needed
);
}
static
inline
void
net_timestamp
(
struct
timeval
*
stamp
)
{
if
(
atomic_read
(
&
netstamp_needed
))
do_gettimeofday
(
stamp
);
else
{
stamp
->
tv_sec
=
0
;
stamp
->
tv_usec
=
0
;
}
}
/*
* Support routine. Sends outgoing frames to any network
* taps currently in use.
...
...
@@ -3215,6 +3238,8 @@ EXPORT_SYMBOL(skb_checksum_help);
EXPORT_SYMBOL
(
synchronize_net
);
EXPORT_SYMBOL
(
unregister_netdevice
);
EXPORT_SYMBOL
(
unregister_netdevice_notifier
);
EXPORT_SYMBOL
(
net_enable_timestamp
);
EXPORT_SYMBOL
(
net_disable_timestamp
);
#if defined(CONFIG_BRIDGE) || defined(CONFIG_BRIDGE_MODULE)
EXPORT_SYMBOL
(
br_handle_frame_hook
);
...
...
net/core/sock.c
View file @
82347bd7
...
...
@@ -179,7 +179,7 @@ static void sock_disable_timestamp(struct sock *sk)
{
if
(
sock_flag
(
sk
,
SOCK_TIMESTAMP
))
{
sock_reset_flag
(
sk
,
SOCK_TIMESTAMP
);
atomic_dec
(
&
netstamp_needed
);
net_disable_timestamp
(
);
}
}
...
...
@@ -1226,9 +1226,6 @@ void fastcall release_sock(struct sock *sk)
}
EXPORT_SYMBOL
(
release_sock
);
/* When > 0 there are consumers of rx skb time stamps */
atomic_t
netstamp_needed
=
ATOMIC_INIT
(
0
);
int
sock_get_timestamp
(
struct
sock
*
sk
,
struct
timeval
__user
*
userstamp
)
{
if
(
!
sock_flag
(
sk
,
SOCK_TIMESTAMP
))
...
...
@@ -1246,7 +1243,7 @@ void sock_enable_timestamp(struct sock *sk)
{
if
(
!
sock_flag
(
sk
,
SOCK_TIMESTAMP
))
{
sock_set_flag
(
sk
,
SOCK_TIMESTAMP
);
atomic_inc
(
&
netstamp_needed
);
net_enable_timestamp
(
);
}
}
EXPORT_SYMBOL
(
sock_enable_timestamp
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment