mirror of
https://github.com/openwrt/openwrt.git
synced 2025-02-20 09:26:28 +00:00
kernel: bump 5.15 to 5.15.149
Removed because it is upstream: generic/pending-5.15/540-ksmbd-only-v2-leases-handle-the-directory.patch https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=81ea755b8fa57ce186f56f14b709cf491c2a5505 Manually Adapted the following patch: ath79/patches-5.15/900-unaligned_access_hacks.patch Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
This commit is contained in:
parent
e247763617
commit
26d1d52403
@ -1,2 +1,2 @@
|
||||
LINUX_VERSION-5.15 = .148
|
||||
LINUX_KERNEL_HASH-5.15.148 = c48575c97fd9f4767cbe50a13b1b2b40ee42830aba3182fabd35a03259a6e5d8
|
||||
LINUX_VERSION-5.15 = .149
|
||||
LINUX_KERNEL_HASH-5.15.149 = bd84809a367eb400eb04e0e70294e6ba12fc03b6bfb5a7dfaca548f8947501b0
|
||||
|
@ -86,7 +86,7 @@ SVN-Revision: 35130
|
||||
} while (word != stop);
|
||||
|
||||
return csum_fold(csum);
|
||||
@@ -182,73 +186,6 @@ static inline __sum16 ip_compute_csum(co
|
||||
@@ -182,74 +186,6 @@ static inline __sum16 ip_compute_csum(co
|
||||
return csum_fold(csum_partial(buff, len, 0));
|
||||
}
|
||||
|
||||
@ -152,7 +152,8 @@ SVN-Revision: 35130
|
||||
- " .set pop"
|
||||
- : "=&r" (sum), "=&r" (tmp)
|
||||
- : "r" (saddr), "r" (daddr),
|
||||
- "0" (htonl(len)), "r" (htonl(proto)), "r" (sum));
|
||||
- "0" (htonl(len)), "r" (htonl(proto)), "r" (sum)
|
||||
- : "memory");
|
||||
-
|
||||
- return csum_fold(sum);
|
||||
-}
|
||||
@ -336,7 +337,7 @@ SVN-Revision: 35130
|
||||
#endif /* _LINUX_TYPES_H */
|
||||
--- a/net/ipv4/af_inet.c
|
||||
+++ b/net/ipv4/af_inet.c
|
||||
@@ -1477,8 +1477,8 @@ struct sk_buff *inet_gro_receive(struct
|
||||
@@ -1480,8 +1480,8 @@ struct sk_buff *inet_gro_receive(struct
|
||||
if (unlikely(ip_fast_csum((u8 *)iph, 5)))
|
||||
goto out_unlock;
|
||||
|
||||
|
@ -45,7 +45,7 @@ Submitted-by: Christopher Hill <ch6574@gmail.com>
|
||||
|
||||
--- a/drivers/mfd/Kconfig
|
||||
+++ b/drivers/mfd/Kconfig
|
||||
@@ -2176,6 +2176,14 @@ config RAVE_SP_CORE
|
||||
@@ -2177,6 +2177,14 @@ config RAVE_SP_CORE
|
||||
Select this to get support for the Supervisory Processor
|
||||
device found on several devices in RAVE line of hardware.
|
||||
|
||||
|
@ -73,7 +73,7 @@ Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
|
||||
|
||||
--- a/arch/Kconfig
|
||||
+++ b/arch/Kconfig
|
||||
@@ -1298,6 +1298,14 @@ config ARCH_HAS_ELFCORE_COMPAT
|
||||
@@ -1299,6 +1299,14 @@ config ARCH_HAS_ELFCORE_COMPAT
|
||||
config ARCH_HAS_PARANOID_L1D_FLUSH
|
||||
bool
|
||||
|
||||
|
@ -138,7 +138,7 @@ Signed-off-by: Vinod Koul <vkoul@kernel.org>
|
||||
.init_quirk = xhci_mvebu_a3700_init_quirk,
|
||||
};
|
||||
|
||||
@@ -341,14 +330,7 @@ static int xhci_plat_probe(struct platfo
|
||||
@@ -344,14 +333,7 @@ static int xhci_plat_probe(struct platfo
|
||||
|
||||
hcd->tpl_support = of_usb_host_tpl_support(sysdev->of_node);
|
||||
xhci->shared_hcd->tpl_support = hcd->tpl_support;
|
||||
|
@ -726,7 +726,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
* to advertise both, only report advertising at 2500BaseX.
|
||||
--- a/drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c
|
||||
+++ b/drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c
|
||||
@@ -6352,15 +6352,14 @@ static void mvpp2_phylink_validate(struc
|
||||
@@ -6377,15 +6377,14 @@ static void mvpp2_phylink_validate(struc
|
||||
goto empty_set;
|
||||
}
|
||||
|
||||
|
@ -87,7 +87,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
stmmac_clear_tx_descriptors(priv, queue);
|
||||
|
||||
stmmac_init_tx_chan(priv, priv->ioaddr, priv->plat->dma_cfg,
|
||||
@@ -7415,6 +7410,25 @@ int stmmac_suspend(struct device *dev)
|
||||
@@ -7418,6 +7413,25 @@ int stmmac_suspend(struct device *dev)
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(stmmac_suspend);
|
||||
|
||||
@ -113,7 +113,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
/**
|
||||
* stmmac_reset_queues_param - reset queue parameters
|
||||
* @priv: device pointer
|
||||
@@ -7425,22 +7439,11 @@ static void stmmac_reset_queues_param(st
|
||||
@@ -7428,22 +7442,11 @@ static void stmmac_reset_queues_param(st
|
||||
u32 tx_cnt = priv->plat->tx_queues_to_use;
|
||||
u32 queue;
|
||||
|
||||
|
@ -1210,7 +1210,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
|
||||
if (netif_running(dev))
|
||||
ret = stmmac_open(dev);
|
||||
@@ -7360,7 +7364,7 @@ int stmmac_suspend(struct device *dev)
|
||||
@@ -7363,7 +7367,7 @@ int stmmac_suspend(struct device *dev)
|
||||
stmmac_disable_all_queues(priv);
|
||||
|
||||
for (chan = 0; chan < priv->plat->tx_queues_to_use; chan++)
|
||||
@ -1219,7 +1219,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
|
||||
if (priv->eee_enabled) {
|
||||
priv->tx_path_in_lpi_mode = false;
|
||||
@@ -7412,7 +7416,7 @@ EXPORT_SYMBOL_GPL(stmmac_suspend);
|
||||
@@ -7415,7 +7419,7 @@ EXPORT_SYMBOL_GPL(stmmac_suspend);
|
||||
|
||||
static void stmmac_reset_rx_queue(struct stmmac_priv *priv, u32 queue)
|
||||
{
|
||||
@ -1228,7 +1228,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
|
||||
rx_q->cur_rx = 0;
|
||||
rx_q->dirty_rx = 0;
|
||||
@@ -7420,7 +7424,7 @@ static void stmmac_reset_rx_queue(struct
|
||||
@@ -7423,7 +7427,7 @@ static void stmmac_reset_rx_queue(struct
|
||||
|
||||
static void stmmac_reset_tx_queue(struct stmmac_priv *priv, u32 queue)
|
||||
{
|
||||
|
@ -1150,7 +1150,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
dma_desc_error:
|
||||
return ret;
|
||||
}
|
||||
@@ -7507,7 +7623,7 @@ int stmmac_resume(struct device *dev)
|
||||
@@ -7510,7 +7626,7 @@ int stmmac_resume(struct device *dev)
|
||||
stmmac_reset_queues_param(priv);
|
||||
|
||||
stmmac_free_tx_skbufs(priv);
|
||||
|
@ -106,7 +106,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
||||
}
|
||||
--- a/scripts/link-vmlinux.sh
|
||||
+++ b/scripts/link-vmlinux.sh
|
||||
@@ -257,6 +257,10 @@ kallsyms()
|
||||
@@ -262,6 +262,10 @@ kallsyms()
|
||||
kallsymopt="${kallsymopt} --base-relative"
|
||||
fi
|
||||
|
||||
|
@ -1,32 +0,0 @@
|
||||
From cb1d41b99e4afa062f904339666fae2578559718 Mon Sep 17 00:00:00 2001
|
||||
From: Namjae Jeon <linkinjeon@kernel.org>
|
||||
Date: Mon, 15 Jan 2024 10:24:54 +0900
|
||||
Subject: [PATCH] ksmbd: only v2 leases handle the directory
|
||||
|
||||
When smb2 leases is disable, ksmbd can send oplock break notification
|
||||
and cause wait oplock break ack timeout. It may appear like hang when
|
||||
accessing a directory. This patch make only v2 leases handle the
|
||||
directory.
|
||||
|
||||
Cc: stable@vger.kernel.org
|
||||
Signed-off-by: Namjae Jeon <linkinjeon@kernel.org>
|
||||
Signed-off-by: Steve French <stfrench@microsoft.com>
|
||||
---
|
||||
fs/ksmbd/oplock.c | 6 ++++++
|
||||
1 file changed, 6 insertions(+)
|
||||
|
||||
--- a/fs/ksmbd/oplock.c
|
||||
+++ b/fs/ksmbd/oplock.c
|
||||
@@ -1191,6 +1191,12 @@ int smb_grant_oplock(struct ksmbd_work *
|
||||
bool prev_op_has_lease;
|
||||
__le32 prev_op_state = 0;
|
||||
|
||||
+ /* Only v2 leases handle the directory */
|
||||
+ if (S_ISDIR(file_inode(fp->filp)->i_mode)) {
|
||||
+ if (!lctx || lctx->version != 2)
|
||||
+ return 0;
|
||||
+ }
|
||||
+
|
||||
opinfo = alloc_opinfo(work, pid, tid);
|
||||
if (!opinfo)
|
||||
return -ENOMEM;
|
@ -275,8 +275,8 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
|
||||
static int __ip6_tnl_rcv(struct ip6_tnl *tunnel, struct sk_buff *skb,
|
||||
const struct tnl_ptk_info *tpi,
|
||||
struct metadata_dst *tun_dst,
|
||||
@@ -843,6 +969,27 @@ static int __ip6_tnl_rcv(struct ip6_tnl
|
||||
skb_reset_network_header(skb);
|
||||
@@ -857,6 +983,27 @@ static int __ip6_tnl_rcv(struct ip6_tnl
|
||||
|
||||
memset(skb->cb, 0, sizeof(struct inet6_skb_parm));
|
||||
|
||||
+ if (tpi->proto == htons(ETH_P_IP) && tunnel->parms.fmrs &&
|
||||
@ -303,7 +303,7 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
|
||||
__skb_tunnel_rx(skb, tunnel->dev, tunnel->net);
|
||||
|
||||
err = dscp_ecn_decapsulate(tunnel, ipv6h, skb);
|
||||
@@ -994,6 +1141,7 @@ static void init_tel_txopt(struct ipv6_t
|
||||
@@ -1004,6 +1151,7 @@ static void init_tel_txopt(struct ipv6_t
|
||||
opt->ops.opt_nflen = 8;
|
||||
}
|
||||
|
||||
@ -311,7 +311,7 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
|
||||
/**
|
||||
* ip6_tnl_addr_conflict - compare packet addresses to tunnel's own
|
||||
* @t: the outgoing tunnel device
|
||||
@@ -1274,6 +1422,7 @@ ipxip6_tnl_xmit(struct sk_buff *skb, str
|
||||
@@ -1284,6 +1432,7 @@ ipxip6_tnl_xmit(struct sk_buff *skb, str
|
||||
u8 protocol)
|
||||
{
|
||||
struct ip6_tnl *t = netdev_priv(dev);
|
||||
@ -319,7 +319,7 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
|
||||
struct ipv6hdr *ipv6h;
|
||||
const struct iphdr *iph;
|
||||
int encap_limit = -1;
|
||||
@@ -1373,6 +1522,18 @@ ipxip6_tnl_xmit(struct sk_buff *skb, str
|
||||
@@ -1383,6 +1532,18 @@ ipxip6_tnl_xmit(struct sk_buff *skb, str
|
||||
fl6.flowi6_uid = sock_net_uid(dev_net(dev), NULL);
|
||||
dsfield = INET_ECN_encapsulate(dsfield, orig_dsfield);
|
||||
|
||||
@ -338,7 +338,7 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
|
||||
if (iptunnel_handle_offloads(skb, SKB_GSO_IPXIP6))
|
||||
return -1;
|
||||
|
||||
@@ -1526,6 +1687,14 @@ ip6_tnl_change(struct ip6_tnl *t, const
|
||||
@@ -1536,6 +1697,14 @@ ip6_tnl_change(struct ip6_tnl *t, const
|
||||
t->parms.link = p->link;
|
||||
t->parms.proto = p->proto;
|
||||
t->parms.fwmark = p->fwmark;
|
||||
@ -353,7 +353,7 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
|
||||
dst_cache_reset(&t->dst_cache);
|
||||
ip6_tnl_link_config(t);
|
||||
return 0;
|
||||
@@ -1564,6 +1733,7 @@ ip6_tnl_parm_from_user(struct __ip6_tnl_
|
||||
@@ -1574,6 +1743,7 @@ ip6_tnl_parm_from_user(struct __ip6_tnl_
|
||||
p->flowinfo = u->flowinfo;
|
||||
p->link = u->link;
|
||||
p->proto = u->proto;
|
||||
@ -361,7 +361,7 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
|
||||
memcpy(p->name, u->name, sizeof(u->name));
|
||||
}
|
||||
|
||||
@@ -1950,6 +2120,15 @@ static int ip6_tnl_validate(struct nlatt
|
||||
@@ -1960,6 +2130,15 @@ static int ip6_tnl_validate(struct nlatt
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -377,7 +377,7 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
|
||||
static void ip6_tnl_netlink_parms(struct nlattr *data[],
|
||||
struct __ip6_tnl_parm *parms)
|
||||
{
|
||||
@@ -1987,6 +2166,46 @@ static void ip6_tnl_netlink_parms(struct
|
||||
@@ -1997,6 +2176,46 @@ static void ip6_tnl_netlink_parms(struct
|
||||
|
||||
if (data[IFLA_IPTUN_FWMARK])
|
||||
parms->fwmark = nla_get_u32(data[IFLA_IPTUN_FWMARK]);
|
||||
@ -424,7 +424,7 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
|
||||
}
|
||||
|
||||
static bool ip6_tnl_netlink_encap_parms(struct nlattr *data[],
|
||||
@@ -2102,6 +2321,12 @@ static void ip6_tnl_dellink(struct net_d
|
||||
@@ -2112,6 +2331,12 @@ static void ip6_tnl_dellink(struct net_d
|
||||
|
||||
static size_t ip6_tnl_get_size(const struct net_device *dev)
|
||||
{
|
||||
@ -437,7 +437,7 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
|
||||
return
|
||||
/* IFLA_IPTUN_LINK */
|
||||
nla_total_size(4) +
|
||||
@@ -2131,6 +2356,24 @@ static size_t ip6_tnl_get_size(const str
|
||||
@@ -2141,6 +2366,24 @@ static size_t ip6_tnl_get_size(const str
|
||||
nla_total_size(0) +
|
||||
/* IFLA_IPTUN_FWMARK */
|
||||
nla_total_size(4) +
|
||||
@ -462,7 +462,7 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
|
||||
0;
|
||||
}
|
||||
|
||||
@@ -2138,6 +2381,9 @@ static int ip6_tnl_fill_info(struct sk_b
|
||||
@@ -2148,6 +2391,9 @@ static int ip6_tnl_fill_info(struct sk_b
|
||||
{
|
||||
struct ip6_tnl *tunnel = netdev_priv(dev);
|
||||
struct __ip6_tnl_parm *parm = &tunnel->parms;
|
||||
@ -472,7 +472,7 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
|
||||
|
||||
if (nla_put_u32(skb, IFLA_IPTUN_LINK, parm->link) ||
|
||||
nla_put_in6_addr(skb, IFLA_IPTUN_LOCAL, &parm->laddr) ||
|
||||
@@ -2147,9 +2393,27 @@ static int ip6_tnl_fill_info(struct sk_b
|
||||
@@ -2157,9 +2403,27 @@ static int ip6_tnl_fill_info(struct sk_b
|
||||
nla_put_be32(skb, IFLA_IPTUN_FLOWINFO, parm->flowinfo) ||
|
||||
nla_put_u32(skb, IFLA_IPTUN_FLAGS, parm->flags) ||
|
||||
nla_put_u8(skb, IFLA_IPTUN_PROTO, parm->proto) ||
|
||||
@ -501,7 +501,7 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
|
||||
if (nla_put_u16(skb, IFLA_IPTUN_ENCAP_TYPE, tunnel->encap.type) ||
|
||||
nla_put_be16(skb, IFLA_IPTUN_ENCAP_SPORT, tunnel->encap.sport) ||
|
||||
nla_put_be16(skb, IFLA_IPTUN_ENCAP_DPORT, tunnel->encap.dport) ||
|
||||
@@ -2189,6 +2453,7 @@ static const struct nla_policy ip6_tnl_p
|
||||
@@ -2199,6 +2463,7 @@ static const struct nla_policy ip6_tnl_p
|
||||
[IFLA_IPTUN_ENCAP_DPORT] = { .type = NLA_U16 },
|
||||
[IFLA_IPTUN_COLLECT_METADATA] = { .type = NLA_FLAG },
|
||||
[IFLA_IPTUN_FWMARK] = { .type = NLA_U32 },
|
||||
|
@ -55,7 +55,7 @@ Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
|
||||
|
||||
--- a/net/netfilter/nft_flow_offload.c
|
||||
+++ b/net/netfilter/nft_flow_offload.c
|
||||
@@ -446,47 +446,14 @@ static struct nft_expr_type nft_flow_off
|
||||
@@ -451,47 +451,14 @@ static struct nft_expr_type nft_flow_off
|
||||
.owner = THIS_MODULE,
|
||||
};
|
||||
|
||||
|
@ -18,7 +18,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
||||
|
||||
--- a/net/netfilter/nf_tables_api.c
|
||||
+++ b/net/netfilter/nf_tables_api.c
|
||||
@@ -7752,7 +7752,7 @@ static int nft_register_flowtable_net_ho
|
||||
@@ -7760,7 +7760,7 @@ static int nft_register_flowtable_net_ho
|
||||
err = flowtable->data.type->setup(&flowtable->data,
|
||||
hook->ops.dev,
|
||||
FLOW_BLOCK_BIND);
|
||||
|
@ -17,7 +17,7 @@ Signed-off-by: Alexander Duyck <alexanderduyck@fb.com>
|
||||
|
||||
--- a/net/core/skbuff.c
|
||||
+++ b/net/core/skbuff.c
|
||||
@@ -4358,6 +4358,15 @@ int skb_gro_receive(struct sk_buff *p, s
|
||||
@@ -4359,6 +4359,15 @@ int skb_gro_receive(struct sk_buff *p, s
|
||||
if (unlikely(p->len + len >= 65536 || NAPI_GRO_CB(skb)->flush))
|
||||
return -E2BIG;
|
||||
|
||||
|
@ -20,7 +20,7 @@ Signed-off-by: Robert Marko <robimarko@gmail.com>
|
||||
|
||||
--- a/drivers/bus/mhi/host/main.c
|
||||
+++ b/drivers/bus/mhi/host/main.c
|
||||
@@ -891,6 +891,7 @@ int mhi_process_ctrl_ev_ring(struct mhi_
|
||||
@@ -896,6 +896,7 @@ int mhi_process_ctrl_ev_ring(struct mhi_
|
||||
switch (event) {
|
||||
case MHI_EE_SBL:
|
||||
st = DEV_ST_TRANSITION_SBL;
|
||||
|
@ -33,7 +33,7 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
|
||||
/*
|
||||
* The Mellanox Tavor device gives false positive parity errors. Disable
|
||||
* parity error reporting.
|
||||
@@ -3365,6 +3366,8 @@ DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_I
|
||||
@@ -3368,6 +3369,8 @@ DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_I
|
||||
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x65f9, quirk_intel_mc_errata);
|
||||
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x65fa, quirk_intel_mc_errata);
|
||||
|
||||
@ -42,7 +42,7 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
|
||||
/*
|
||||
* Ivytown NTB BAR sizes are misreported by the hardware due to an erratum.
|
||||
* To work around this, query the size it should be configured to by the
|
||||
@@ -3390,6 +3393,8 @@ static void quirk_intel_ntb(struct pci_d
|
||||
@@ -3393,6 +3396,8 @@ static void quirk_intel_ntb(struct pci_d
|
||||
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x0e08, quirk_intel_ntb);
|
||||
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x0e0d, quirk_intel_ntb);
|
||||
|
||||
@ -51,7 +51,7 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
|
||||
/*
|
||||
* Some BIOS implementations leave the Intel GPU interrupts enabled, even
|
||||
* though no one is handling them (e.g., if the i915 driver is never
|
||||
@@ -3428,6 +3433,8 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_IN
|
||||
@@ -3431,6 +3436,8 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_IN
|
||||
DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x010a, disable_igfx_irq);
|
||||
DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x0152, disable_igfx_irq);
|
||||
|
||||
|
@ -22,7 +22,7 @@ Signed-off-by: Tim Harvey <tharvey@gateworks.com>
|
||||
#include <linux/platform_data/x86/apple.h>
|
||||
#include <linux/pm_runtime.h>
|
||||
#include <linux/suspend.h>
|
||||
@@ -5883,3 +5884,34 @@ static void nvidia_ion_ahci_fixup(struct
|
||||
@@ -5899,3 +5900,34 @@ static void nvidia_ion_ahci_fixup(struct
|
||||
pdev->dev_flags |= PCI_DEV_FLAGS_HAS_MSI_MASKING;
|
||||
}
|
||||
DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_NVIDIA, 0x0ab8, nvidia_ion_ahci_fixup);
|
||||
|
Loading…
x
Reference in New Issue
Block a user