<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/drivers/net/ethernet/intel/igb, branch linux-5.14.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-5.14.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-5.14.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2021-07-01T17:59:21Z</updated>
<entry>
<title>igb: Fix position of assignment to *ring</title>
<updated>2021-07-01T17:59:21Z</updated>
<author>
<name>Jedrzej Jagielski</name>
</author>
<published>2021-06-11T22:42:17Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=382a7c20d9253bcd5715789b8179528d0f3de72c'/>
<id>urn:sha1:382a7c20d9253bcd5715789b8179528d0f3de72c</id>
<content type='text'>
Assignment to *ring should be done after correctness check of the
argument queue.

Fixes: 91db364236c8 ("igb: Refactor igb_configure_cbs()")
Signed-off-by: Jedrzej Jagielski &lt;jedrzej.jagielski@intel.com&gt;
Acked-by: Vinicius Costa Gomes &lt;vinicius.gomes@intel.com&gt;
Tested-by: Tony Brelinski &lt;tonyx.brelinski@intel.com&gt;
Signed-off-by: Tony Nguyen &lt;anthony.l.nguyen@intel.com&gt;
</content>
</entry>
<entry>
<title>igb: Check if num of q_vectors is smaller than max before array access</title>
<updated>2021-07-01T17:59:21Z</updated>
<author>
<name>Aleksandr Loktionov</name>
</author>
<published>2021-04-22T10:19:23Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=6c19d772618fea40d9681f259368f284a330fd90'/>
<id>urn:sha1:6c19d772618fea40d9681f259368f284a330fd90</id>
<content type='text'>
Ensure that the adapter-&gt;q_vector[MAX_Q_VECTORS] array isn't accessed
beyond its size. It was fixed by using a local variable num_q_vectors
as a limit for loop index, and ensure that num_q_vectors is not bigger
than MAX_Q_VECTORS.

Fixes: 047e0030f1e6 ("igb: add new data structure for handling interrupts and NAPI")
Signed-off-by: Aleksandr Loktionov &lt;aleksandr.loktionov@intel.com&gt;
Reviewed-by: Grzegorz Siwik &lt;grzegorz.siwik@intel.com&gt;
Reviewed-by: Arkadiusz Kubalewski &lt;arkadiusz.kubalewski@intel.com&gt;
Reviewed-by: Slawomir Laba &lt;slawomirx.laba@intel.com&gt;
Reviewed-by: Sylwester Dziedziuch &lt;sylwesterx.dziedziuch@intel.com&gt;
Reviewed-by: Mateusz Palczewski &lt;mateusz.placzewski@intel.com&gt;
Tested-by: Tony Brelinski &lt;tonyx.brelinski@intel.com&gt;
Signed-off-by: Tony Nguyen &lt;anthony.l.nguyen@intel.com&gt;
</content>
</entry>
<entry>
<title>igb: Fix an error handling path in 'igb_probe()'</title>
<updated>2021-07-01T17:59:04Z</updated>
<author>
<name>Christophe JAILLET</name>
</author>
<published>2021-06-12T20:08:33Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=fea03b1cebd653cd095f2e9a58cfe1c85661c363'/>
<id>urn:sha1:fea03b1cebd653cd095f2e9a58cfe1c85661c363</id>
<content type='text'>
If an error occurs after a 'pci_enable_pcie_error_reporting()' call, it
must be undone by a corresponding 'pci_disable_pcie_error_reporting()'
call, as already done in the remove function.

Fixes: 40a914fa72ab ("igb: Add support for pci-e Advanced Error Reporting")
Signed-off-by: Christophe JAILLET &lt;christophe.jaillet@wanadoo.fr&gt;
Tested-by: Tony Brelinski &lt;tonyx.brelinski@intel.com&gt;
Signed-off-by: Tony Nguyen &lt;anthony.l.nguyen@intel.com&gt;
</content>
</entry>
<entry>
<title>igb: Fix use-after-free error during reset</title>
<updated>2021-07-01T17:53:04Z</updated>
<author>
<name>Vinicius Costa Gomes</name>
</author>
<published>2021-05-14T00:31:04Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=7b292608db23ccbbfbfa50cdb155d01725d7a52e'/>
<id>urn:sha1:7b292608db23ccbbfbfa50cdb155d01725d7a52e</id>
<content type='text'>
Cleans the next descriptor to watch (next_to_watch) when cleaning the
TX ring.

Failure to do so can cause invalid memory accesses. If igb_poll() runs
while the controller is reset this can lead to the driver try to free
a skb that was already freed.

(The crash is harder to reproduce with the igb driver, but the same
potential problem exists as the code is identical to igc)

Fixes: 7cc6fd4c60f2 ("igb: Don't bother clearing Tx buffer_info in igb_clean_tx_ring")
Signed-off-by: Vinicius Costa Gomes &lt;vinicius.gomes@intel.com&gt;
Reported-by: Erez Geva &lt;erez.geva.ext@siemens.com&gt;
Tested-by: Tony Brelinski &lt;tonyx.brelinski@intel.com&gt;
Signed-off-by: Tony Nguyen &lt;anthony.l.nguyen@intel.com&gt;
</content>
</entry>
<entry>
<title>intel: Remove rcu_read_lock() around XDP program invocation</title>
<updated>2021-06-24T17:44:34Z</updated>
<author>
<name>Toke Høiland-Jørgensen</name>
</author>
<published>2021-06-24T16:06:01Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=49589b23d5a92dff4a7cb705608dff7dd13ef709'/>
<id>urn:sha1:49589b23d5a92dff4a7cb705608dff7dd13ef709</id>
<content type='text'>
The Intel drivers all have rcu_read_lock()/rcu_read_unlock() pairs around
XDP program invocations. However, the actual lifetime of the objects
referred by the XDP program invocation is longer, all the way through to
the call to xdp_do_flush(), making the scope of the rcu_read_lock() too
small. This turns out to be harmless because it all happens in a single
NAPI poll cycle (and thus under local_bh_disable()), but it makes the
rcu_read_lock() misleading.

Rather than extend the scope of the rcu_read_lock(), just get rid of it
entirely. With the addition of RCU annotations to the XDP_REDIRECT map
types that take bh execution into account, lockdep even understands this to
be safe, so there's really no reason to keep it around.

Signed-off-by: Toke Høiland-Jørgensen &lt;toke@redhat.com&gt;
Signed-off-by: Daniel Borkmann &lt;daniel@iogearbox.net&gt;
Tested-by: Jesper Dangaard Brouer &lt;brouer@redhat.com&gt; # i40e
Cc: Jesse Brandeburg &lt;jesse.brandeburg@intel.com&gt;
Cc: Tony Nguyen &lt;anthony.l.nguyen@intel.com&gt;
Cc: intel-wired-lan@lists.osuosl.org
Link: https://lore.kernel.org/bpf/20210624160609.292325-12-toke@redhat.com
</content>
</entry>
<entry>
<title>Merge ra.kernel.org:/pub/scm/linux/kernel/git/netdev/net</title>
<updated>2021-06-07T20:01:52Z</updated>
<author>
<name>David S. Miller</name>
</author>
<published>2021-06-07T20:01:52Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=126285651b7f95282a0afe3a1b0221419b31d989'/>
<id>urn:sha1:126285651b7f95282a0afe3a1b0221419b31d989</id>
<content type='text'>
Bug fixes overlapping feature additions and refactoring, mostly.

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>igb: add correct exception tracing for XDP</title>
<updated>2021-06-03T15:38:37Z</updated>
<author>
<name>Magnus Karlsson</name>
</author>
<published>2021-05-10T09:38:52Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=74431c40b9c5fa673fff83ec157a76a69efd5c72'/>
<id>urn:sha1:74431c40b9c5fa673fff83ec157a76a69efd5c72</id>
<content type='text'>
Add missing exception tracing to XDP when a number of different
errors can occur. The support was only partial. Several errors
where not logged which would confuse the user quite a lot not
knowing where and why the packets disappeared.

Fixes: 9cbc948b5a20 ("igb: add XDP support")
Reported-by: Jesper Dangaard Brouer &lt;brouer@redhat.com&gt;
Signed-off-by: Magnus Karlsson &lt;magnus.karlsson@intel.com&gt;
Tested-by: Vishakha Jambekar &lt;vishakha.jambekar@intel.com&gt;
Signed-off-by: Tony Nguyen &lt;anthony.l.nguyen@intel.com&gt;
</content>
</entry>
<entry>
<title>igb: Fix XDP with PTP enabled</title>
<updated>2021-06-03T15:38:37Z</updated>
<author>
<name>Kurt Kanzenbach</name>
</author>
<published>2021-05-03T07:28:00Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=5379260852b013902abbca691926b3ac1cac36d5'/>
<id>urn:sha1:5379260852b013902abbca691926b3ac1cac36d5</id>
<content type='text'>
When using native XDP with the igb driver, the XDP frame data doesn't point to
the beginning of the packet. It's off by 16 bytes. Everything works as expected
with XDP skb mode.

Actually these 16 bytes are used to store the packet timestamps. Therefore, pull
the timestamp before executing any XDP operations and adjust all other code
accordingly. The igc driver does it like that as well.

Tested with Intel i210 card and AF_XDP sockets.

Fixes: 9cbc948b5a20 ("igb: add XDP support")
Signed-off-by: Kurt Kanzenbach &lt;kurt@linutronix.de&gt;
Acked-by: Jesper Dangaard Brouer &lt;brouer@redhat.com&gt;
Tested-by: Sandeep Penigalapati &lt;sandeep.penigalapati@intel.com&gt;
Signed-off-by: Tony Nguyen &lt;anthony.l.nguyen@intel.com&gt;
</content>
</entry>
<entry>
<title>igb: Fix -Wunused-const-variable warning</title>
<updated>2021-06-02T00:00:51Z</updated>
<author>
<name>YueHaibing</name>
</author>
<published>2021-06-01T14:02:38Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=0a206f9d9e23967639b204094c8dc073eb2997a4'/>
<id>urn:sha1:0a206f9d9e23967639b204094c8dc073eb2997a4</id>
<content type='text'>
If CONFIG_IGB_HWMON is n, gcc warns:

drivers/net/ethernet/intel/igb/e1000_82575.c:2765:17:
 warning: ‘e1000_emc_therm_limit’ defined but not used [-Wunused-const-variable=]
 static const u8 e1000_emc_therm_limit[4] = {
                 ^~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/intel/igb/e1000_82575.c:2759:17:
 warning: ‘e1000_emc_temp_data’ defined but not used [-Wunused-const-variable=]
 static const u8 e1000_emc_temp_data[4] = {
                 ^~~~~~~~~~~~~~~~~~~

Move it into #ifdef block to fix this.

Signed-off-by: YueHaibing &lt;yuehaibing@huawei.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>igb: override two checker warnings</title>
<updated>2021-05-26T16:11:41Z</updated>
<author>
<name>Jesse Brandeburg</name>
</author>
<published>2021-03-26T00:38:30Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=9fb8602e565d71e0747ad149690d536d20a70b58'/>
<id>urn:sha1:9fb8602e565d71e0747ad149690d536d20a70b58</id>
<content type='text'>
The igb PTP code was using htons() on a constant to try to
byte swap the value before writing it to a register. This byte
swap has the consequence of triggering sparse conflicts between
the register write which expect cpu ordered input, and the code
which generated a big endian constant. Just override the cast
to make sure code doesn't change but silence the warning.

Can't do a __swab16 in this case because big endian systems
would then write the wrong value.

Signed-off-by: Jesse Brandeburg &lt;jesse.brandeburg@intel.com&gt;
Tested-by: Dave Switzer &lt;david.switzer@intel.com&gt;
Signed-off-by: Tony Nguyen &lt;anthony.l.nguyen@intel.com&gt;
</content>
</entry>
</feed>
