Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f4464748 authored by Ingo Molnar's avatar Ingo Molnar
Browse files

Merge branch 'linus' into perf/core, to pick up fixes



Signed-off-by: default avatarIngo Molnar <mingo@kernel.org>
parents 01bdee64 6f0d349d
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -410,7 +410,7 @@ argument is passed to the kernel in the command line.
	That only is supported in some configurations, though (for example, if
	the `HWP feature is enabled in the processor <Active Mode With HWP_>`_,
	the operation mode of the driver cannot be changed), and if it is not
	supported in the current configuration, writes to this attribute with
	supported in the current configuration, writes to this attribute will
	fail with an appropriate error.

Interpretation of Policy Attributes
+57 −55
Original line number Diff line number Diff line
==============================================================
Linux* Base Driver for the Intel(R) PRO/100 Family of Adapters
==============================================================

@@ -89,27 +90,30 @@ Additional Configurations
Configuring the Driver on Different Distributions
-------------------------------------------------

  Configuring a network driver to load properly when the system is started is
  distribution dependent. Typically, the configuration process involves adding
  an alias line to /etc/modprobe.d/*.conf as well as editing other system
  startup scripts and/or configuration files.  Many popular Linux
  distributions ship with tools to make these changes for you. To learn the
  proper way to configure a network device for your system, refer to your
  distribution documentation.  If during this process you are asked for the
  driver or module name, the name for the Linux Base Driver for the Intel
  PRO/100 Family of Adapters is e100.
Configuring a network driver to load properly when the system is started
is distribution dependent.  Typically, the configuration process involves
adding an alias line to /etc/modprobe.d/*.conf as well as editing other
system startup scripts and/or configuration files.  Many popular Linux
distributions ship with tools to make these changes for you.  To learn
the proper way to configure a network device for your system, refer to
your distribution documentation.  If during this process you are asked
for the driver or module name, the name for the Linux Base Driver for
the Intel PRO/100 Family of Adapters is e100.

As an example, if you install the e100 driver for two PRO/100 adapters
  (eth0 and eth1), add the following to a configuration file in /etc/modprobe.d/
(eth0 and eth1), add the following to a configuration file in
/etc/modprobe.d/::

       alias eth0 e100
       alias eth1 e100

Viewing Link Messages
---------------------

In order to see link messages and other Intel driver information on your
console, you must set the dmesg level up to six.  This can be done by
  entering the following on the command line before loading the e100 driver::
entering the following on the command line before loading the e100
driver::

       dmesg -n 6

@@ -118,7 +122,6 @@ Additional Configurations

NOTE: This setting is not saved across reboots.


ethtool
-------

@@ -131,26 +134,25 @@ Additional Configurations

Enabling Wake on LAN* (WoL)
---------------------------
  WoL is provided through the ethtool* utility.  For instructions on enabling
  WoL with ethtool, refer to the ethtool man page.

  WoL will be enabled on the system during the next shut down or reboot. For
  this driver version, in order to enable WoL, the e100 driver must be
  loaded when shutting down or rebooting the system.
WoL is provided through the ethtool* utility.  For instructions on
enabling WoL with ethtool, refer to the ethtool man page.  WoL will be
enabled on the system during the next shut down or reboot.  For this
driver version, in order to enable WoL, the e100 driver must be loaded
when shutting down or rebooting the system.

NAPI
----

NAPI (Rx polling mode) is supported in the e100 driver.

  See https://wiki.linuxfoundation.org/networking/napi for more information
  on NAPI.
See https://wiki.linuxfoundation.org/networking/napi for more
information on NAPI.

Multiple Interfaces on Same Ethernet Broadcast Network
------------------------------------------------------

  Due to the default ARP behavior on Linux, it is not possible to have
  one system on two IP networks in the same Ethernet broadcast domain
Due to the default ARP behavior on Linux, it is not possible to have one
system on two IP networks in the same Ethernet broadcast domain
(non-partitioned switch) behave as expected.  All Ethernet interfaces
will respond to IP traffic for any IP address assigned to the system.
This results in unbalanced receive traffic.
+39 −37
Original line number Diff line number Diff line
===========================================================
Linux* Base Driver for Intel(R) Ethernet Network Connection
===========================================================

@@ -356,9 +357,9 @@ Additional Configurations

Jumbo Frames
------------
  Jumbo Frames support is enabled by changing the MTU to a value larger than
  the default of 1500.  Use the ifconfig command to increase the MTU size.
  For example::
Jumbo Frames support is enabled by changing the MTU to a value larger
than the default of 1500.  Use the ifconfig command to increase the MTU
size.  For example::

       ifconfig eth<x> mtu 9000 up

@@ -371,23 +372,23 @@ Additional Configurations
applies to the Red Hat distributions; other distributions may store this
setting in a different location.

  Notes:
  Degradation in throughput performance may be observed in some Jumbo frames
  environments. If this is observed, increasing the application's socket buffer
  size and/or increasing the /proc/sys/net/ipv4/tcp_*mem entry values may help.
  See the specific application manual and /usr/src/linux*/Documentation/
Notes: Degradation in throughput performance may be observed in some
Jumbo frames environments.  If this is observed, increasing the
application's socket buffer size and/or increasing the
/proc/sys/net/ipv4/tcp_*mem entry values may help.  See the specific
application manual and /usr/src/linux*/Documentation/
networking/ip-sysctl.txt for more details.

  - The maximum MTU setting for Jumbo Frames is 16110.  This value coincides
    with the maximum Jumbo Frames size of 16128.
- The maximum MTU setting for Jumbo Frames is 16110.  This value
  coincides with the maximum Jumbo Frames size of 16128.

  - Using Jumbo frames at 10 or 100 Mbps is not supported and may result in
    poor performance or loss of link.
- Using Jumbo frames at 10 or 100 Mbps is not supported and may result
  in poor performance or loss of link.

- Adapters based on the Intel(R) 82542 and 82573V/E controller do not
  support Jumbo Frames.  These correspond to the following product names:
     Intel(R) PRO/1000 Gigabit Server Adapter
     Intel(R) PRO/1000 PM Network Connection
  Intel(R) PRO/1000 Gigabit Server Adapter Intel(R) PRO/1000 PM Network
  Connection

ethtool
-------
@@ -406,6 +407,7 @@ Additional Configurations
For this driver version, in order to enable WoL, the e1000 driver must be
loaded when shutting down or rebooting the system.


Support
=======

+1 −1
Original line number Diff line number Diff line
@@ -48,7 +48,7 @@ void strp_pause(struct strparser *strp)
     Temporarily pause a stream parser. Message parsing is suspended
     and no new messages are delivered to the upper layer.

void strp_pause(struct strparser *strp)
void strp_unpause(struct strparser *strp)

     Unpause a paused stream parser.

+12 −11
Original line number Diff line number Diff line
@@ -1729,35 +1729,35 @@ If a variable isn't a key variable or prefixed with 'vals=', the
associated event field will be saved in a variable but won't be summed
as a value:

  # echo 'hist:keys=next_pid:ts1=common_timestamp ... >> event/trigger
  # echo 'hist:keys=next_pid:ts1=common_timestamp ...' >> event/trigger

Multiple variables can be assigned at the same time.  The below would
result in both ts0 and b being created as variables, with both
common_timestamp and field1 additionally being summed as values:

  # echo 'hist:keys=pid:vals=$ts0,$b:ts0=common_timestamp,b=field1 ... >> \
  # echo 'hist:keys=pid:vals=$ts0,$b:ts0=common_timestamp,b=field1 ...' >> \
	event/trigger

Note that variable assignments can appear either preceding or
following their use.  The command below behaves identically to the
command above:

  # echo 'hist:keys=pid:ts0=common_timestamp,b=field1:vals=$ts0,$b ... >> \
  # echo 'hist:keys=pid:ts0=common_timestamp,b=field1:vals=$ts0,$b ...' >> \
	event/trigger

Any number of variables not bound to a 'vals=' prefix can also be
assigned by simply separating them with colons.  Below is the same
thing but without the values being summed in the histogram:

  # echo 'hist:keys=pid:ts0=common_timestamp:b=field1 ... >> event/trigger
  # echo 'hist:keys=pid:ts0=common_timestamp:b=field1 ...' >> event/trigger

Variables set as above can be referenced and used in expressions on
another event.

For example, here's how a latency can be calculated:

  # echo 'hist:keys=pid,prio:ts0=common_timestamp ... >> event1/trigger
  # echo 'hist:keys=next_pid:wakeup_lat=common_timestamp-$ts0 ... >> event2/trigger
  # echo 'hist:keys=pid,prio:ts0=common_timestamp ...' >> event1/trigger
  # echo 'hist:keys=next_pid:wakeup_lat=common_timestamp-$ts0 ...' >> event2/trigger

In the first line above, the event's timetamp is saved into the
variable ts0.  In the next line, ts0 is subtracted from the second
@@ -1766,7 +1766,7 @@ yet another variable, 'wakeup_lat'. The hist trigger below in turn
makes use of the wakeup_lat variable to compute a combined latency
using the same key and variable from yet another event:

  # echo 'hist:key=pid:wakeupswitch_lat=$wakeup_lat+$switchtime_lat ... >> event3/trigger
  # echo 'hist:key=pid:wakeupswitch_lat=$wakeup_lat+$switchtime_lat ...' >> event3/trigger

2.2.2 Synthetic Events
----------------------
@@ -1807,10 +1807,11 @@ the command that defined it with a '!':
At this point, there isn't yet an actual 'wakeup_latency' event
instantiated in the event subsytem - for this to happen, a 'hist
trigger action' needs to be instantiated and bound to actual fields
and variables defined on other events (see Section 6.3.3 below).
and variables defined on other events (see Section 2.2.3 below on
how that is done using hist trigger 'onmatch' action). Once that is
done, the 'wakeup_latency' synthetic event instance is created.

Once that is done, an event instance is created, and a histogram can
be defined using it:
A histogram can now be defined for the new synthetic event:

  # echo 'hist:keys=pid,prio,lat.log2:sort=pid,lat' >> \
        /sys/kernel/debug/tracing/events/synthetic/wakeup_latency/trigger
@@ -1960,7 +1961,7 @@ hist trigger specification.
    back to that pid, the timestamp difference is calculated.  If the
    resulting latency, stored in wakeup_lat, exceeds the current
    maximum latency, the values specified in the save() fields are
    recoreded:
    recorded:

    # echo 'hist:keys=pid:ts0=common_timestamp.usecs \
            if comm=="cyclictest"' >> \
Loading