23 Jun, 2015
14 commits
-
BPF offers another way to generate latency histograms. We attach
kprobes at trace_preempt_off and trace_preempt_on and calculate the
time it takes to from seeing the off/on transition.The first array is used to store the start time stamp. The key is the
CPU id. The second array stores the log2(time diff). We need to use
static allocation here (array and not hash tables). The kprobes
hooking into trace_preempt_on|off should not calling any dynamic
memory allocation or free path. We need to avoid recursivly
getting called. Besides that, it reduces jitter in the measurement.CPU 0
latency : count distribution
1 -> 1 : 0 | |
2 -> 3 : 0 | |
4 -> 7 : 0 | |
8 -> 15 : 0 | |
16 -> 31 : 0 | |
32 -> 63 : 0 | |
64 -> 127 : 0 | |
128 -> 255 : 0 | |
256 -> 511 : 0 | |
512 -> 1023 : 0 | |
1024 -> 2047 : 0 | |
2048 -> 4095 : 166723 |*************************************** |
4096 -> 8191 : 19870 |*** |
8192 -> 16383 : 6324 | |
16384 -> 32767 : 1098 | |
32768 -> 65535 : 190 | |
65536 -> 131071 : 179 | |
131072 -> 262143 : 18 | |
262144 -> 524287 : 4 | |
524288 -> 1048575 : 1363 | |
CPU 1
latency : count distribution
1 -> 1 : 0 | |
2 -> 3 : 0 | |
4 -> 7 : 0 | |
8 -> 15 : 0 | |
16 -> 31 : 0 | |
32 -> 63 : 0 | |
64 -> 127 : 0 | |
128 -> 255 : 0 | |
256 -> 511 : 0 | |
512 -> 1023 : 0 | |
1024 -> 2047 : 0 | |
2048 -> 4095 : 114042 |*************************************** |
4096 -> 8191 : 9587 |** |
8192 -> 16383 : 4140 | |
16384 -> 32767 : 673 | |
32768 -> 65535 : 179 | |
65536 -> 131071 : 29 | |
131072 -> 262143 : 4 | |
262144 -> 524287 : 1 | |
524288 -> 1048575 : 364 | |
CPU 2
latency : count distribution
1 -> 1 : 0 | |
2 -> 3 : 0 | |
4 -> 7 : 0 | |
8 -> 15 : 0 | |
16 -> 31 : 0 | |
32 -> 63 : 0 | |
64 -> 127 : 0 | |
128 -> 255 : 0 | |
256 -> 511 : 0 | |
512 -> 1023 : 0 | |
1024 -> 2047 : 0 | |
2048 -> 4095 : 40147 |*************************************** |
4096 -> 8191 : 2300 |* |
8192 -> 16383 : 828 | |
16384 -> 32767 : 178 | |
32768 -> 65535 : 59 | |
65536 -> 131071 : 2 | |
131072 -> 262143 : 0 | |
262144 -> 524287 : 1 | |
524288 -> 1048575 : 174 | |
CPU 3
latency : count distribution
1 -> 1 : 0 | |
2 -> 3 : 0 | |
4 -> 7 : 0 | |
8 -> 15 : 0 | |
16 -> 31 : 0 | |
32 -> 63 : 0 | |
64 -> 127 : 0 | |
128 -> 255 : 0 | |
256 -> 511 : 0 | |
512 -> 1023 : 0 | |
1024 -> 2047 : 0 | |
2048 -> 4095 : 29626 |*************************************** |
4096 -> 8191 : 2704 |** |
8192 -> 16383 : 1090 | |
16384 -> 32767 : 160 | |
32768 -> 65535 : 72 | |
65536 -> 131071 : 32 | |
131072 -> 262143 : 26 | |
262144 -> 524287 : 12 | |
524288 -> 1048575 : 298 | |All this is based on the trace3 examples written by
Alexei Starovoitov .Signed-off-by: Daniel Wagner
Cc: Alexei Starovoitov
Cc: Alexei Starovoitov
Cc: "David S. Miller"
Cc: Daniel Borkmann
Cc: Ingo Molnar
Cc: linux-kernel@vger.kernel.org
Cc: netdev@vger.kernel.org
Acked-by: Alexei Starovoitov
Acked-by: Daniel Borkmann
Signed-off-by: David S. Miller -
When STP is running in user-space and querier is configured, the
querier timer is not started when a port goes to a non-blocking state.
This patch unifies the user- and kernel-space stp multicast port enable
path and enables it in all states different from blocking. Note that when a
port goes in BR_STATE_DISABLED it's not enabled because that is handled
in the beginning of the port list loop.Signed-off-by: Nikolay Aleksandrov
Acked-by: Herbert Xu
Signed-off-by: David S. Miller -
NFC 4.2 2nd pull request
This one only contains a one liner fix for a typo that I
introduced while cleaning some of the nfcmrvl patches that
were part of the 1st 4.2 pull request. -
…etooth/bluetooth-next
Johan Hedberg says:
====================
pull request: bluetooth-next 2015-06-18Here's the final bluetooth-next pull request for 4.2.
- Cleanups & fixes to 802.15.4 code and related drivers
- Fix btusb driver memory leak
- New USB IDs for Atheros controllers
- Support for BCM4324B3 UART based Broadcom controller
- Fix for Bluetooth encryption key size handling
- Broadcom controller initialization fixes
- Support for Intel controller DDC parameters
- Support for multiple Bluetooth LE advertising instances
- Fix for HCI user channel cleanup pathPlease let me know if there are any issues pulling. Thanks.
====================Signed-off-by: David S. Miller <davem@davemloft.net>
-
Actor and Partner details can be accessed via proc-fs, sys-fs
entries or netlink interface. These interfaces are world readable
at this moment. The earlier patch-series made the LACP communication
secure to avoid nuisance attack from within the same L2 domain but
it did not prevent "someone unprivileged" looking at that information
on host and perform the same act.This patch essentially avoids spitting those entries if the user
in question does not have enough privileges.Signed-off-by: Mahesh Bandewar
Signed-off-by: Andy Gospodarek
Signed-off-by: David S. Miller -
Nicolas Ferre says:
====================
net/macb: add sama5d2 supportThis series is basically the support for another flavor of the GEM IP
configuration. It ended up being a series because of some little fixes made to
the binding documentation before adding the new compatibility string.Bye,
v2: - fix bindings
- add sama5d2 compatibility string to the binding documentation
====================Acked-by: Alexandre Belloni
Signed-off-by: David S. Miller -
Add the compatible string for Atmel sama5d2 SoC family as the configuration
options differ from other instances of the GEM.Signed-off-by: Cyrille Pitchen
Signed-off-by: Nicolas Ferre
Signed-off-by: David S. Miller -
Add sama5d2 to the biding documentation for this use of the GEM IP.
Signed-off-by: Nicolas Ferre
Signed-off-by: David S. Miller -
On sama5d4, we only have a GEM IP that is configured to do 10/100 Mbits. So the
use of "Gigabit" can be confusing.Signed-off-by: Nicolas Ferre
Signed-off-by: David S. Miller -
In the driver and the DT bindings we use the "atmel" prefix. Fix it in the
binding documentation.Signed-off-by: Nicolas Ferre
Signed-off-by: David S. Miller -
inet_diag_dump_reqs() is called from inet_diag_dump_icsk() with BH
disabled. So no need to disable BH in inet_diag_dump_reqs().Signed-off-by: Hiroaki Shimoda
Signed-off-by: David S. Miller -
RTL8211F has different register definitions from RTL8211E.
Specially it needs to enable TXDLY in case of RGMII.Signed-off-by: Shengzhou Liu
Signed-off-by: David S. Miller -
…ub/scm/linux/kernel/git/kvalo/wireless-drivers-next
Kalle Valo says:
====================
Major changes:mwifiex:
* enhancements for AP mode: support verbose information in station
dump command and also information about AP link.
* enable power save by defaultbrcmfmac:
* fix module reload issue for PCIe
* improving msgbuf protocol for PCIe devices
* rework .get_station() cfg80211 callback operation
* determine interface combinations upon device feature supportath9k:
* ath9k_htc: add support of channel switch
wil6210:
* add modparam for bcast ring size
* support hidden SSID
* add per-MCS Rx stats
====================Signed-off-by: David S. Miller <davem@davemloft.net>
-
Remove the filter_dev check when dumping fdb entries, otherwise dump
returns empty list. filter_dev is always passed as NULL when dumping fdbs
on SELF. We want the fdbs installed on the device to be listed in the
dump.Signed-off-by: Scott Feldman
Fixes: 45d4122c ("switchdev: add support for fdb add/del/dump via switchdev_port_obj ops")
Acked-by: Sridhar Samudrala
Acked-by: Jiri Pirko
Signed-off-by: David S. Miller
22 Jun, 2015
19 commits
-
Ivan Vecera says:
====================
bna: clean-up 2Next round of cleaning patches.
====================Signed-off-by: David S. Miller
-
Signed-off-by: Ivan Vecera
Signed-off-by: David S. Miller -
Signed-off-by: Ivan Vecera
Signed-off-by: David S. Miller -
BIT value is already unsigned so casting is not necessary.
Signed-off-by: Ivan Vecera
Signed-off-by: David S. Miller -
This patch adds NLM_F_APPEND flag to struct nlmsg_hdr->nlmsg_flags
in newroute notifications if the route add was an append.
(This is similar to how NLM_F_REPLACE is already part of new
route replace notifications today)This helps userspace determine if the route add operation was
an append.Signed-off-by: Roopa Prabhu
Acked-by: Scott Feldman
Signed-off-by: David S. Miller -
This patch adds getsockopt(SOL_NETLINK, NETLINK_LIST_MEMBERSHIPS) to
retrieve all groups a socket is a member of. Currently, we have to use
getsockname() and look at the nl.nl_groups bitmask. However, this mask is
limited to 32 groups. Hence, similar to NETLINK_ADD_MEMBERSHIP and
NETLINK_DROP_MEMBERSHIP, this adds a separate sockopt to manager higher
groups IDs than 32.This new NETLINK_LIST_MEMBERSHIPS option takes a pointer to __u32 and the
size of the array. The array is filled with the full membership-set of the
socket, and the required array size is returned in optlen. Hence,
user-space can retry with a properly sized array in case it was too small.Signed-off-by: David Herrmann
Signed-off-by: David S. Miller -
When an inet_sock is destroyed, its source port (sk_num) is set to
zero as part of the unhash procedure. In order to supply a source
port as part of the NETLINK_SOCK_DIAG socket destruction broadcasts,
the source port number must be read from inet_sport instead.Tested: ss -E
Signed-off-by: Craig Gallek
Signed-off-by: David S. Miller -
USE_OF is used as intermediate Kconfig option by few
arch's (ARM, MIPS, Xtensa).
Replace instances of USE_OF outside of arch folders
with proper OF_???.Signed-off-by: Antonio Borneo
Signed-off-by: David S. Miller -
Signed-off-by: Antonio Borneo
Signed-off-by: David S. Miller -
Struct inet_proto no longer exists, so update the
comment which is out of date.Signed-off-by: Zhaowei Yuan
Signed-off-by: David S. Miller -
Signed-off-by: Hariprasad Shenai
Signed-off-by: David S. Miller -
Following patch contains changes in liquidio Kconfig for
selecting LIBCRC32C.Signed-off-by: Derek Chickles
Signed-off-by: Satanand Burla
Signed-off-by: Felix Manlunas
Signed-off-by: Raghu Vatsavayi
Signed-off-by: David S. Miller -
There's no reason to perform a buffer copy for the firmware name. This
also avoids a (currently impossible with current callers) NULL dereference
if there was no matching firmware.Signed-off-by: Kees Cook
Signed-off-by: David S. Miller -
The control !hlist_unhashed() in qfq_destroy_agg() is unnecessary
because already performed in hlist_del_init(), so remove it.Signed-off-by: Andrea Parri
Signed-off-by: David S. Miller -
Append 0x to all %x in order to avoid while reading when there is other
decimal value in the log.Also replace some of the hexadecimal print to decimal to uniformize the
format with netfront.Signed-off-by: Julien Grall
Cc: Wei Liu
Cc: Ian Campbell
Cc: netdev@vger.kernel.org
Acked-by: Ian Campbell
Signed-off-by: David S. Miller -
The variables old_req_cons and ring_slots_used are assigned but never
used since commit 1650d5455bd2dc6b5ee134bd6fc1a3236c266b5b "xen-netback:
always fully coalesce guest Rx packets".Signed-off-by: Julien Grall
Acked-by: Wei Liu
Cc: Ian Campbell
Cc: netdev@vger.kernel.org
Signed-off-by: David S. Miller -
rx->status is an int16_t, print it using %d rather than %u in order to
have a meaningful value when the field is negative.Also use %u rather than %x for rx->offset.
Signed-off-by: Julien Grall
Reviewed-by: David Vrabel
Cc: Konrad Rzeszutek Wilk
Cc: Boris Ostrovsky
Cc: netdev@vger.kernel.org
Signed-off-by: David S. Miller -
This patch also renames sg to sglist and aligns function parameters.
See Documentation/DMA-API.txt - Part Id for scatterlist detailsSigned-off-by: Fabian Frederick
Signed-off-by: David S. Miller -
Destruction of the po->rollover must be delayed until there are no
more packets in flight that can access it. The field is destroyed in
packet_release, before synchronize_net. Delay using rcu.Fixes: 0648ab70afe6 ("packet: rollover prepare: per-socket state")
Suggested-by: Eric Dumazet
Signed-off-by: Willem de Bruijn
Acked-by: Eric Dumazet
Signed-off-by: David S. Miller
21 Jun, 2015
1 commit
-
Pablo Neira Ayuso says:
====================
Netfilter updates for net-nextThe following patchset contains a final Netfilter pull request for net-next
4.2. This mostly addresses some fallout from the previous pull request, small
netns updates and a couple of new features for nfnetlink_log and the socket
match that didn't get in time for the previous pull request. More specifically
they are:1) Add security context information to nfnetlink_queue, from Roman Kubiak.
2) Add support to restore the sk_mark into skb->mark through xt_socket,
from Harout Hedeshian.3) Force alignment of 16 bytes of per cpu xt_counters, from Eric Dumazet.
4) Rename br_netfilter.c to br_netfilter_hooks.c to prepare split of IPv6 code
into a separated file.5) Move the IPv6 code in br_netfilter into a separated file.
6) Remove unused RCV_SKB_FAIL() in nfnetlink_queue and nfetlink_log, from Eric
Biederman.7) Two liner to simplify netns logic in em_ipset_match().
8) Add missing includes to net/net_namespace.h to avoid compilation problems
that result from not including linux/netfilter.h in netns headers.9) Use a forward declaration instead of including linux/proc_fs.h from
netns/netfilter.h10) Add a new linux/netfilter_defs.h to replace the linux/netfilter.h inclusion
in netns headers.11) Remove spurious netfilter.h file included in the net tree, also from Eric
Biederman.12) Fix x_tables compilation warnings on 32 bits platforms that resulted from
recent changes in x_tables counters, from Florian Westphal.
====================Signed-off-by: David S. Miller
19 Jun, 2015
6 commits
-
On 32bit archs gcc complains due to cast from void* to u64.
Add intermediate casts to long to silence these warnings.include/linux/netfilter/x_tables.h:376:10: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
include/linux/netfilter/x_tables.h:384:15: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
include/linux/netfilter/x_tables.h:391:23: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
include/linux/netfilter/x_tables.h:400:22: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]Fixes: 71ae0dff02d756e ("netfilter: xtables: use percpu rule counters")
Reported-by: kbuild test robot
Signed-off-by: Florian Westphal
Signed-off-by: Pablo Neira Ayuso -
While testing my netfilter changes I noticed several files where
recompiling unncessarily because they unncessarily included
netfilter.h.Signed-off-by: "Eric W. Biederman"
Signed-off-by: Pablo Neira Ayuso -
This pulls the full hook netfilter definitions from all those that include
net_namespace.h.Instead let's just include the bare minimum required in the new
linux/netfilter_defs.h file, and use it from the netfilter netns header files.I also needed to include in.h and in6.h from linux/netfilter.h otherwise we hit
this compilation error:In file included from include/linux/netfilter_defs.h:4:0,
from include/net/netns/netfilter.h:4,
from include/net/net_namespace.h:22,
from include/linux/netdevice.h:43,
from net/netfilter/nfnetlink_queue_core.c:23:
include/uapi/linux/netfilter.h:76:17: error: field ‘in’ has incomplete type struct in_addr in;And also explicit include linux/netfilter.h in several spots.
Signed-off-by: Pablo Neira Ayuso
Signed-off-by: Eric W. Biederman -
We don't need to pull the full definitions in that file, a simple forward
declaration is enough.Moreover, include linux/procfs.h from nf_synproxy_core, otherwise this hits a
compilation error due to missing declarations, ie.net/netfilter/nf_synproxy_core.c: In function ‘synproxy_proc_init’:
net/netfilter/nf_synproxy_core.c:326:2: error: implicit declaration of function ‘proc_create’ [-Werror=implicit-function-declaration]
if (!proc_create("synproxy", S_IRUGO, net->proc_net_stat,
^Signed-off-by: Pablo Neira Ayuso
Signed-off-by: Eric W. Biederman -
Include linux/idr.h and linux/skbuff.h since they are required by objects that
are declared in the net structure.struct net {
...
struct idr netns_ids;
...
struct sk_buff_head wext_nlevents;
...Signed-off-by: Pablo Neira Ayuso
Signed-off-by: Eric W. Biederman -
em->net is always set and always available, use it in preference
to dev_net(skb->dev).Signed-off-by: "Eric W. Biederman"
Signed-off-by: Pablo Neira Ayuso