All patches automatically rebased.
Build system: x86_64
Build-tested: bcm2711/RPi4B, ramips/tplink_archer-a6-v3, filogic/xiaomi_redmi-router-ax6000-ubootmod
Run-tested: bcm2711/RPi4B, ramips/tplink_archer-a6-v3, filogic/xiaomi_redmi-router-ax6000-ubootmod
Signed-off-by: John Audia <therealgraysky@proton.me>
-LINUX_VERSION-5.15 = .103
-LINUX_KERNEL_HASH-5.15.103 = 0876ba81631cca532f72a8d633f7031c3068669a0ecdd77d23b74e8dfc8dd705
+LINUX_VERSION-5.15 = .104
+LINUX_KERNEL_HASH-5.15.104 = 71c532ce09992e470f3259ffeb38d2b5bba990c243a559e4726a57412bd36b54
--- a/drivers/net/phy/smsc.c
+++ b/drivers/net/phy/smsc.c
-@@ -220,12 +220,12 @@ static int lan87xx_read_status(struct ph
+@@ -223,12 +223,12 @@ static int lan87xx_read_status(struct ph
if (rc < 0)
return rc;
--- a/drivers/net/phy/smsc.c
+++ b/drivers/net/phy/smsc.c
-@@ -210,6 +210,8 @@ static int lan87xx_read_status(struct ph
- int err = genphy_read_status(phydev);
+@@ -213,6 +213,8 @@ static int lan87xx_read_status(struct ph
+ return err;
if (!phydev->link && priv->energy_enable && phydev->irq == PHY_POLL) {
+ int energy_detected;
/* Disable EDPD to wake up PHY */
int rc = phy_read(phydev, MII_LAN83C185_CTRL_STATUS);
if (rc < 0)
-@@ -225,7 +227,7 @@ static int lan87xx_read_status(struct ph
+@@ -228,7 +230,7 @@ static int lan87xx_read_status(struct ph
*/
read_poll_timeout(phy_read, rc,
rc & MII_LAN83C185_ENERGYON || rc < 0,
MII_LAN83C185_CTRL_STATUS);
if (rc < 0)
return rc;
-@@ -235,10 +237,16 @@ static int lan87xx_read_status(struct ph
+@@ -238,10 +240,16 @@ static int lan87xx_read_status(struct ph
if (rc < 0)
return rc;
extern struct list_head cgroup_roots;
--- a/mm/huge_memory.c
+++ b/mm/huge_memory.c
-@@ -2364,7 +2364,8 @@ static void __split_huge_page_tail(struc
+@@ -2366,7 +2366,8 @@ static void __split_huge_page_tail(struc
#ifdef CONFIG_64BIT
(1L << PG_arch_2) |
#endif
static inline void
--- a/include/linux/netdevice.h
+++ b/include/linux/netdevice.h
-@@ -870,6 +870,7 @@ enum net_device_path_type {
+@@ -872,6 +872,7 @@ enum net_device_path_type {
DEV_PATH_BRIDGE,
DEV_PATH_PPPOE,
DEV_PATH_DSA,
};
struct net_device_path {
-@@ -895,6 +896,12 @@ struct net_device_path {
+@@ -897,6 +898,12 @@ struct net_device_path {
int port;
u16 proto;
} dsa;
--- a/include/linux/netdevice.h
+++ b/include/linux/netdevice.h
-@@ -1677,6 +1677,10 @@ enum netdev_priv_flags {
+@@ -1679,6 +1679,10 @@ enum netdev_priv_flags {
IFF_TX_SKB_NO_LINEAR = BIT_ULL(31),
};
#define IFF_802_1Q_VLAN IFF_802_1Q_VLAN
#define IFF_EBRIDGE IFF_EBRIDGE
#define IFF_BONDING IFF_BONDING
-@@ -1709,6 +1713,7 @@ enum netdev_priv_flags {
+@@ -1711,6 +1715,7 @@ enum netdev_priv_flags {
#define IFF_L3MDEV_RX_HANDLER IFF_L3MDEV_RX_HANDLER
#define IFF_LIVE_RENAME_OK IFF_LIVE_RENAME_OK
#define IFF_TX_SKB_NO_LINEAR IFF_TX_SKB_NO_LINEAR
/* Specifies the type of the struct net_device::ml_priv pointer */
enum netdev_ml_priv_type {
-@@ -2010,6 +2015,7 @@ struct net_device {
+@@ -2012,6 +2017,7 @@ struct net_device {
/* Read-mostly cache-line for fast-path access */
unsigned int flags;
unsigned int priv_flags;
const struct net_device_ops *netdev_ops;
int ifindex;
unsigned short gflags;
-@@ -2070,6 +2076,11 @@ struct net_device {
+@@ -2072,6 +2078,11 @@ struct net_device {
const struct tlsdev_ops *tlsdev_ops;
#endif
const struct header_ops *header_ops;
unsigned char operstate;
-@@ -2144,6 +2155,10 @@ struct net_device {
+@@ -2146,6 +2157,10 @@ struct net_device {
struct mctp_dev __rcu *mctp_ptr;
#endif
--- a/include/linux/netdevice.h
+++ b/include/linux/netdevice.h
-@@ -2096,6 +2096,8 @@ struct net_device {
+@@ -2098,6 +2098,8 @@ struct net_device {
struct netdev_hw_addr_list mc;
struct netdev_hw_addr_list dev_addrs;
--- a/include/linux/netdevice.h
+++ b/include/linux/netdevice.h
-@@ -500,6 +500,7 @@ static inline bool napi_complete(struct
+@@ -502,6 +502,7 @@ static inline bool napi_complete(struct
}
int dev_set_threaded(struct net_device *dev, bool threaded);
/**
* napi_disable - prevent NAPI from scheduling
-@@ -3363,6 +3364,7 @@ struct softnet_data {
+@@ -3365,6 +3366,7 @@ struct softnet_data {
unsigned int processed;
unsigned int time_squeeze;
unsigned int received_rps;
--- a/drivers/net/dsa/mv88e6xxx/chip.c
+++ b/drivers/net/dsa/mv88e6xxx/chip.c
-@@ -6319,6 +6319,7 @@ static int mv88e6xxx_register_switch(str
+@@ -6327,6 +6327,7 @@ static int mv88e6xxx_register_switch(str
ds->ops = &mv88e6xxx_switch_ops;
ds->ageing_time_min = chip->info->age_time_coeff;
ds->ageing_time_max = chip->info->age_time_coeff * U8_MAX;
(transaction layer end-to-end CRC checking).
--- a/include/linux/pci.h
+++ b/include/linux/pci.h
-@@ -1481,6 +1481,8 @@ void pci_walk_bus(struct pci_bus *top, i
+@@ -1482,6 +1482,8 @@ void pci_walk_bus(struct pci_bus *top, i
void *userdata);
int pci_cfg_space_size(struct pci_dev *dev);
unsigned char pci_bus_max_busnr(struct pci_bus *bus);