timestamping: fix example build
Fix Makefiles so that Documentation/networking/timestamping/timestamping.c will build when using the CONFIG_BUILD_DOCSRC kconfig option. (timestamping.c does not build currently with its simple Makefile.) Also fix printf format warnings. Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com> Cc: Patrick Ohly <patrick.ohly@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
876e956f20
commit
f28f9e43b3
3 changed files with 16 additions and 7 deletions
|
@ -6,3 +6,5 @@ hostprogs-y := ifenslave
|
|||
|
||||
# Tell kbuild to always build the programs
|
||||
always := $(hostprogs-y)
|
||||
|
||||
obj-m := timestamping/
|
||||
|
|
|
@ -1,6 +1,13 @@
|
|||
CPPFLAGS = -I../../../include
|
||||
# kbuild trick to avoid linker error. Can be omitted if a module is built.
|
||||
obj- := dummy.o
|
||||
|
||||
timestamping: timestamping.c
|
||||
# List of programs to build
|
||||
hostprogs-y := timestamping
|
||||
|
||||
# Tell kbuild to always build the programs
|
||||
always := $(hostprogs-y)
|
||||
|
||||
HOSTCFLAGS_timestamping.o += -I$(objtree)/usr/include
|
||||
|
||||
clean:
|
||||
rm -f timestamping
|
||||
|
|
|
@ -41,9 +41,9 @@
|
|||
#include <arpa/inet.h>
|
||||
#include <net/if.h>
|
||||
|
||||
#include "asm/types.h"
|
||||
#include "linux/net_tstamp.h"
|
||||
#include "linux/errqueue.h"
|
||||
#include <asm/types.h>
|
||||
#include <linux/net_tstamp.h>
|
||||
#include <linux/errqueue.h>
|
||||
|
||||
#ifndef SO_TIMESTAMPING
|
||||
# define SO_TIMESTAMPING 37
|
||||
|
@ -164,7 +164,7 @@ static void printpacket(struct msghdr *msg, int res,
|
|||
|
||||
gettimeofday(&now, 0);
|
||||
|
||||
printf("%ld.%06ld: received %s data, %d bytes from %s, %d bytes control messages\n",
|
||||
printf("%ld.%06ld: received %s data, %d bytes from %s, %zu bytes control messages\n",
|
||||
(long)now.tv_sec, (long)now.tv_usec,
|
||||
(recvmsg_flags & MSG_ERRQUEUE) ? "error" : "regular",
|
||||
res,
|
||||
|
@ -173,7 +173,7 @@ static void printpacket(struct msghdr *msg, int res,
|
|||
for (cmsg = CMSG_FIRSTHDR(msg);
|
||||
cmsg;
|
||||
cmsg = CMSG_NXTHDR(msg, cmsg)) {
|
||||
printf(" cmsg len %d: ", cmsg->cmsg_len);
|
||||
printf(" cmsg len %zu: ", cmsg->cmsg_len);
|
||||
switch (cmsg->cmsg_level) {
|
||||
case SOL_SOCKET:
|
||||
printf("SOL_SOCKET ");
|
||||
|
|
Loading…
Reference in a new issue