Linux 5.10.59
Greg Kroah-Hartman
maintainerI'm announcing the release of the 5.10.59 kernel.
All users of the 5.10 kernel series must upgrade.
The updated 5.10.y git tree can be found at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git linux-5.10.y
and can be browsed at the normal kernel.org git web browser:
https://git.kernel.org/?p=linux/kernel/git/stable/linux-stable.git;a=summary
thanks,
greg k-h
------------
Makefile | 2 arch/arm64/boot/dts/renesas/beacon-renesom-baseboard.dtsi | 4 - arch/arm64/boot/dts/renesas/beacon-renesom-som.dtsi | 6 + arch/arm64/boot/dts/renesas/r8a774a1.dtsi | 15 ++++ arch/arm64/boot/dts/renesas/r8a774b1.dtsi | 15 ++++ arch/arm64/boot/dts/renesas/r8a774e1.dtsi | 15 ++++ arch/x86/kvm/svm/sev.c | 2 drivers/firmware/broadcom/tee_bnxt_fw.c | 14 ++- drivers/net/ethernet/xilinx/xilinx_emaclite.c | 5 - drivers/net/ppp/ppp_generic.c | 19 ++++- drivers/tee/optee/call.c | 2 drivers/tee/optee/core.c | 3 drivers/tee/optee/rpc.c | 5 - drivers/tee/optee/shm_pool.c | 8 +- drivers/tee/tee_shm.c | 4 - drivers/usb/host/ehci-pci.c | 3 fs/namespace.c | 42 +++++++---- fs/vboxsf/dir.c | 28 ++++--- include/linux/mmzone.h | 4 - include/linux/security.h | 1 include/linux/tee_drv.h | 1 kernel/trace/bpf_trace.c | 5 - security/security.c | 1 sound/core/pcm_native.c | 5 + sound/pci/hda/patch_realtek.c | 2 tools/testing/selftests/resctrl/resctrl.h | 6 - tools/testing/selftests/resctrl/resctrlfs.c | 52 ++------------ 27 files changed, 169 insertions(+), 100 deletions(-)
Adam Ford (3):
arm64: dts: renesas: rzg2: Add usb2_clksel to RZ/G2 M/N/H
arm64: dts: renesas: beacon: Fix USB extal reference
arm64: dts: renesas: beacon: Fix USB ref clock references
Allen Pais (1):
firmware: tee_bnxt: Release TEE shm, session, and context during kexec
Daniel Borkmann (1):
bpf: Add lockdown check for probe_write_user helper
Greg Kroah-Hartman (1):
Linux 5.10.59
Hans de Goede (2):
vboxsf: Honor excl flag to the dir-inode create op
vboxsf: Make vboxsf_dir_create() return the handle for the created file
Jeremy Szu (1):
ALSA: hda/realtek: fix mute/micmute LEDs for HP ProBook 650 G8 Notebook PC
Longfang Liu (1):
USB:ehci:fix Kunpeng920 ehci hardware problem
Luke D Jones (1):
ALSA: hda: Add quirk for ASUS Flow x13
Mike Rapoport (1):
mm: make zone_to_nid() and zone_set_nid() available for DISCONTIGMEM
Miklos Szeredi (1):
ovl: prevent private clone if bind mount is not allowed
Pali Rohár (1):
ppp: Fix generating ppp unit id when ifname is not specified
Reinette Chatre (1):
Revert "selftests/resctrl: Use resctrl/info for feature detection"
Sean Christopherson (1):
KVM: SVM: Fix off-by-one indexing when nullifying last used SEV VMCB
Sumit Garg (1):
tee: Correct inappropriate usage of TEE_SHM_DMA_BUF flag
Takashi Iwai (1):
ALSA: pcm: Fix mmap breakage without explicit buffer setup
YueHaibing (1):
net: xilinx_emaclite: Do not print real IOMEM pointer
Greg Kroah-Hartman
maintainerMakefile +1 -1
@@ -1,7 +1,7 @@ # SPDX-License-Identifier: GPL-2.0 VERSION = 5 PATCHLEVEL = 10 -SUBLEVEL = 58 +SUBLEVEL = 59 EXTRAVERSION = NAME = Dare mighty things
arch/arm64/boot/dts/renesas/beacon-renesom-baseboard.dtsi +2 -2
@@ -271,12 +271,12 @@ &du_out_rgb { &ehci0 { dr_mode = "otg"; status = "okay"; - clocks = <&cpg CPG_MOD 703>, <&cpg CPG_MOD 704>; + clocks = <&cpg CPG_MOD 703>, <&cpg CPG_MOD 704>, <&usb2_clksel>, <&versaclock5 3>; }; &ehci1 { status = "okay"; - clocks = <&cpg CPG_MOD 703>, <&cpg CPG_MOD 704>; + clocks = <&cpg CPG_MOD 703>, <&cpg CPG_MOD 704>, <&usb2_clksel>, <&versaclock5 3>; }; &hdmi0 {
arch/arm64/boot/dts/renesas/beacon-renesom-som.dtsi +4 -2
@@ -295,8 +295,10 @@ &sdhi3 { status = "okay"; }; -&usb_extal_clk { - clock-frequency = <50000000>; +&usb2_clksel { + clocks = <&cpg CPG_MOD 703>, <&cpg CPG_MOD 704>, + <&versaclock5 3>, <&usb3s0_clk>; + status = "okay"; }; &usb3s0_clk {
arch/arm64/boot/dts/renesas/r8a774a1.dtsi +15 -0
@@ -836,6 +836,21 @@ hsusb: usb@e6590000 { status = "disabled"; }; + usb2_clksel: clock-controller@e6590630 { + compatible = "renesas,r8a774a1-rcar-usb2-clock-sel", + "renesas,rcar-gen3-usb2-clock-sel"; + reg = <0 0xe6590630 0 0x02>; + clocks = <&cpg CPG_MOD 703>, <&cpg CPG_MOD 704>, + <&usb_extal_clk>, <&usb3s0_clk>; + clock-names = "ehci_ohci", "hs-usb-if", + "usb_extal", "usb_xtal"; + #clock-cells = <0>; + power-domains = <&sysc R8A774A1_PD_ALWAYS_ON>; + resets = <&cpg 703>, <&cpg 704>; + reset-names = "ehci_ohci", "hs-usb-if"; + status = "disabled"; + }; + usb_dmac0: dma-controller@e65a0000 { compatible = "renesas,r8a774a1-usb-dmac", "renesas,usb-dmac";
arch/arm64/boot/dts/renesas/r8a774b1.dtsi +15 -0
@@ -709,6 +709,21 @@ hsusb: usb@e6590000 { status = "disabled"; }; + usb2_clksel: clock-controller@e6590630 { + compatible = "renesas,r8a774b1-rcar-usb2-clock-sel", + "renesas,rcar-gen3-usb2-clock-sel"; + reg = <0 0xe6590630 0 0x02>; + clocks = <&cpg CPG_MOD 703>, <&cpg CPG_MOD 704>, + <&usb_extal_clk>, <&usb3s0_clk>; + clock-names = "ehci_ohci", "hs-usb-if", + "usb_extal", "usb_xtal"; + #clock-cells = <0>; + power-domains = <&sysc R8A774B1_PD_ALWAYS_ON>; + resets = <&cpg 703>, <&cpg 704>; + reset-names = "ehci_ohci", "hs-usb-if"; + status = "disabled"; + }; + usb_dmac0: dma-controller@e65a0000 { compatible = "renesas,r8a774b1-usb-dmac", "renesas,usb-dmac";
arch/arm64/boot/dts/renesas/r8a774e1.dtsi +15 -0
@@ -890,6 +890,21 @@ hsusb: usb@e6590000 { status = "disabled"; }; + usb2_clksel: clock-controller@e6590630 { + compatible = "renesas,r8a774e1-rcar-usb2-clock-sel", + "renesas,rcar-gen3-usb2-clock-sel"; + reg = <0 0xe6590630 0 0x02>; + clocks = <&cpg CPG_MOD 703>, <&cpg CPG_MOD 704>, + <&usb_extal_clk>, <&usb3s0_clk>; + clock-names = "ehci_ohci", "hs-usb-if", + "usb_extal", "usb_xtal"; + #clock-cells = <0>; + power-domains = <&sysc R8A774E1_PD_ALWAYS_ON>; + resets = <&cpg 703>, <&cpg 704>; + reset-names = "ehci_ohci", "hs-usb-if"; + status = "disabled"; + }; + usb_dmac0: dma-controller@e65a0000 { compatible = "renesas,r8a774e1-usb-dmac", "renesas,usb-dmac";
arch/x86/kvm/svm/sev.c +1 -1
@@ -124,7 +124,7 @@ static void sev_asid_free(int asid)for_each_possible_cpu (cpu) { sd =per_cpu (svm_data, cpu); - sd->sev_vmcbs[pos] =NULL ; + sd->sev_vmcbs[asid] =NULL ; }mutex_unlock (&sev_bitmap_lock);
drivers/firmware/broadcom/tee_bnxt_fw.c +11 -3
@@ -212,10 +212,9 @@ static int tee_bnxt_fw_probe(struct device *dev) pvt_data.dev = dev; - fw_shm_pool =tee_shm_alloc (pvt_data.ctx,MAX_SHM_MEM_SZ , -TEE_SHM_MAPPED |TEE_SHM_DMA_BUF ); + fw_shm_pool =tee_shm_alloc_kernel_buf (pvt_data.ctx,MAX_SHM_MEM_SZ );if (IS_ERR (fw_shm_pool)) { -dev_err (pvt_data.dev,"tee_shm_alloc failed\n" ); +dev_err (pvt_data.dev,"tee_shm_alloc_kernel_buf failed\n" ); err =PTR_ERR (fw_shm_pool); goto out_sess; }
@@ -242,6 +241,14 @@ static int tee_bnxt_fw_remove(struct device *dev)return 0 ; } +static void tee_bnxt_fw_shutdown (struct device *dev) +{ +tee_shm_free (pvt_data.fw_shm_pool); +tee_client_close_session (pvt_data.ctx, pvt_data.session_id); +tee_client_close_context (pvt_data.ctx); + pvt_data.ctx =NULL ; +} +static const struct tee_client_device_id tee_bnxt_fw_id_table[] = { {UUID_INIT (0x6272636D ,0x2019 ,0x0716 ,0x42 ,0x43 ,0x4D ,0x5F ,0x53 ,0x43 ,0x48 ,0x49 )},
@@ -257,6 +264,7 @@ static struct tee_client_driver tee_bnxt_fw_driver = { .bus = &tee_bus_type, .probe = tee_bnxt_fw_probe, .remove = tee_bnxt_fw_remove, + .shutdown = tee_bnxt_fw_shutdown, }, };
drivers/net/ethernet/xilinx/xilinx_emaclite.c +2 -3
@@ -1191,9 +1191,8 @@ static int xemaclite_of_probe(struct platform_device *ofdev) }dev_info (dev, -"Xilinx EmacLite at 0x%08X mapped to 0x%08X, irq=%d\n" , - (unsigned int __force )ndev->mem_start, - (unsigned int __force )lp->base_addr, ndev->irq); +"Xilinx EmacLite at 0x%08X mapped to 0x%p, irq=%d\n" , + (unsigned int __force )ndev->mem_start, lp->base_addr, ndev->irq);return 0 ; error:
drivers/net/ppp/ppp_generic.c +15 -4
@@ -283,7 +283,7 @@ static struct channel *ppp_find_channel(struct ppp_net *pn, int unit);static int ppp_connect_channel (struct channel *pch,int unit);static int ppp_disconnect_channel (struct channel *pch);static void ppp_destroy_channel (struct channel *pch); -static int unit_get (struct idr *p,void *ptr); +static int unit_get (struct idr *p,void *ptr,int min);static int unit_set (struct idr *p,void *ptr,int n);static void unit_put (struct idr *p,int n);static void *unit_find (struct idr *p,int n);
@@ -1045,9 +1045,20 @@ static int ppp_unit_register(struct ppp *ppp, int unit, bool ifname_is_set)mutex_lock (&pn->all_ppp_mutex);if (unit <0 ) { - ret =unit_get (&pn->units_idr, ppp); + ret =unit_get (&pn->units_idr, ppp,0 );if (ret <0 ) goto err; +if (!ifname_is_set) { +while (1 ) { +snprintf (ppp->dev->name,IFNAMSIZ ,"ppp%i" , ret); +if (!__dev_get_by_name (ppp->ppp_net, ppp->dev->name)) +break ; +unit_put (&pn->units_idr, ret); + ret =unit_get (&pn->units_idr, ppp, ret +1 ); +if (ret <0 ) + goto err; + } + } }else {/* Caller asked for a specific unit number. Fail with -EEXIST * if unavailable. For backward compatibility, return -EEXIST
@@ -3378,9 +3389,9 @@ static int unit_set(struct idr *p, void *ptr, int n) }/* get new free unit number and associate pointer with it */ -static int unit_get (struct idr *p,void *ptr) +static int unit_get (struct idr *p,void *ptr,int min) { -return idr_alloc (p, ptr,0 ,0 ,GFP_KERNEL ); +return idr_alloc (p, ptr, min,0 ,GFP_KERNEL ); }/* put unit number back to a pool */
drivers/tee/optee/call.c +1 -1
@@ -181,7 +181,7 @@ static struct tee_shm *get_msg_arg(struct tee_context *ctx, size_t num_params,struct optee_msg_arg *ma; shm =tee_shm_alloc (ctx,OPTEE_MSG_GET_ARG_SIZE (num_params), -TEE_SHM_MAPPED ); +TEE_SHM_MAPPED |TEE_SHM_PRIV );if (IS_ERR (shm))return shm;
drivers/tee/optee/core.c +2 -1
@@ -278,7 +278,8 @@ static void optee_release(struct tee_context *ctx)if (!ctxdata)return ; - shm =tee_shm_alloc (ctx,sizeof (struct optee_msg_arg ),TEE_SHM_MAPPED ); + shm =tee_shm_alloc (ctx,sizeof (struct optee_msg_arg ), +TEE_SHM_MAPPED |TEE_SHM_PRIV );if (!IS_ERR (shm)) { arg =tee_shm_get_va (shm,0 );/*
drivers/tee/optee/rpc.c +3 -2
@@ -313,7 +313,7 @@ static void handle_rpc_func_cmd_shm_alloc(struct tee_context *ctx, shm =cmd_alloc_suppl (ctx, sz);break ;case OPTEE_MSG_RPC_SHM_TYPE_KERNEL : - shm =tee_shm_alloc (ctx, sz,TEE_SHM_MAPPED ); + shm =tee_shm_alloc (ctx, sz,TEE_SHM_MAPPED |TEE_SHM_PRIV );break ;default : arg->ret =TEEC_ERROR_BAD_PARAMETERS ;
@@ -501,7 +501,8 @@ void optee_handle_rpc(struct tee_context *ctx, struct optee_rpc_param *param,switch (OPTEE_SMC_RETURN_GET_RPC_FUNC (param->a0)) {case OPTEE_SMC_RPC_FUNC_ALLOC : - shm =tee_shm_alloc (ctx, param->a1,TEE_SHM_MAPPED ); + shm =tee_shm_alloc (ctx, param->a1, +TEE_SHM_MAPPED |TEE_SHM_PRIV );if (!IS_ERR (shm) && !tee_shm_get_pa (shm,0 , &pa)) {reg_pair_from_64 (¶m->a1, ¶m->a2, pa); reg_pair_from_64(¶m->a4, ¶m->a5,
drivers/tee/optee/shm_pool.c +6 -2
@@ -27,7 +27,11 @@ static int pool_op_alloc(struct tee_shm_pool_mgr *poolm, shm->paddr =page_to_phys (page); shm->size =PAGE_SIZE << order; -if (shm->flags &TEE_SHM_DMA_BUF ) { +/* +* Shared memory private to the OP-TEE driver doesn't need +* to be registered with OP-TEE. +*/ +if (!(shm->flags &TEE_SHM_PRIV )) {unsigned int nr_pages =1 << order, i;struct page **pages;
@@ -60,7 +64,7 @@ static int pool_op_alloc(struct tee_shm_pool_mgr *poolm,static void pool_op_free (struct tee_shm_pool_mgr *poolm,struct tee_shm *shm) { -if (shm->flags &TEE_SHM_DMA_BUF ) +if (!(shm->flags &TEE_SHM_PRIV ))optee_shm_unregister (shm->ctx, shm);free_pages ((unsigned long )shm->kaddr,get_order (shm->size));
drivers/tee/tee_shm.c +2 -2
@@ -117,7 +117,7 @@ struct tee_shm *tee_shm_alloc(struct tee_context *ctx, size_t size, u32 flags)return ERR_PTR (-EINVAL ); } -if ((flags & ~(TEE_SHM_MAPPED |TEE_SHM_DMA_BUF ))) { +if ((flags & ~(TEE_SHM_MAPPED |TEE_SHM_DMA_BUF |TEE_SHM_PRIV ))) {dev_err (teedev->dev.parent,"invalid shm flags 0x%x" , flags);return ERR_PTR (-EINVAL ); }
@@ -207,7 +207,7 @@ EXPORT_SYMBOL_GPL(tee_shm_alloc);*/ struct tee_shm *tee_shm_alloc_kernel_buf (struct tee_context *ctx,size_t size) { -return tee_shm_alloc (ctx, size,TEE_SHM_MAPPED |TEE_SHM_DMA_BUF ); +return tee_shm_alloc (ctx, size,TEE_SHM_MAPPED ); }EXPORT_SYMBOL_GPL (tee_shm_alloc_kernel_buf);
drivers/usb/host/ehci-pci.c +3 -0
@@ -297,6 +297,9 @@ static int ehci_pci_setup(struct usb_hcd *hcd)if (pdev->vendor ==PCI_VENDOR_ID_STMICRO && pdev->device ==PCI_DEVICE_ID_STMICRO_USB_HOST ) ;/* ConneXT has no sbrn register */ +else if (pdev->vendor ==PCI_VENDOR_ID_HUAWEI + && pdev->device ==0xa239 ) + ;/* HUAWEI Kunpeng920 USB EHCI has no sbrn register */ else pci_read_config_byte (pdev,0x60 , &ehci->sbrn);
fs/namespace.c +28 -14
69 lines not on this page · raw message
fs/vboxsf/dir.c +17 -11
@@ -253,7 +253,7 @@ static int vboxsf_dir_instantiate(struct inode *parent, struct dentry *dentry, }static int vboxsf_dir_create (struct inode *parent,struct dentry *dentry, -umode_t mode,int is_dir) +umode_t mode,bool is_dir,bool excl,u64 *handle_ret) {struct vboxsf_inode *sf_parent_i =VBOXSF_I (parent);struct vboxsf_sbi *sbi =VBOXSF_SBI (parent->i_sb);
@@ -261,10 +261,12 @@ static int vboxsf_dir_create(struct inode *parent, struct dentry *dentry,int err; params.handle =SHFL_HANDLE_NIL ; - params.create_flags =SHFL_CF_ACT_CREATE_IF_NEW | -SHFL_CF_ACT_FAIL_IF_EXISTS | -SHFL_CF_ACCESS_READWRITE | - (is_dir ?SHFL_CF_DIRECTORY :0 ); + params.create_flags =SHFL_CF_ACT_CREATE_IF_NEW |SHFL_CF_ACCESS_READWRITE ; +if (is_dir) + params.create_flags |=SHFL_CF_DIRECTORY ; +if (excl) + params.create_flags |=SHFL_CF_ACT_FAIL_IF_EXISTS ; + params.info.attr.mode = (mode &0777 ) | (is_dir ?SHFL_TYPE_DIRECTORY :SHFL_TYPE_FILE ); params.info.attr.additional =SHFLFSOBJATTRADD_NOTHING ;
@@ -276,28 +278,32 @@ static int vboxsf_dir_create(struct inode *parent, struct dentry *dentry,if (params.result !=SHFL_FILE_CREATED )return -EPERM ; -vboxsf_close (sbi->root, params.handle); - err =vboxsf_dir_instantiate (parent, dentry, ¶ms.info);if (err) -return err; + goto out;/* parent directory access/change time changed */ sf_parent_i->force_restat =1 ; -return 0 ; +out: +if (err ==0 && handle_ret) + *handle_ret = params.handle; +else +vboxsf_close (sbi->root, params.handle); + +return err; }static int vboxsf_dir_mkfile (struct inode *parent,struct dentry *dentry,umode_t mode,bool excl) { -return vboxsf_dir_create (parent, dentry, mode,0 ); +return vboxsf_dir_create (parent, dentry, mode, false, excl,NULL ); }static int vboxsf_dir_mkdir (struct inode *parent,struct dentry *dentry,umode_t mode) { -return vboxsf_dir_create (parent, dentry, mode,1 ); +return vboxsf_dir_create (parent, dentry, mode, true, true,NULL ); }static int vboxsf_dir_unlink (struct inode *parent,struct dentry *dentry)
include/linux/mmzone.h +2 -2
@@ -445,7 +445,7 @@ struct zone {*/ long lowmem_reserve[MAX_NR_ZONES ]; -#ifdef CONFIG_NUMA +#ifdef CONFIG_NEED_MULTIPLE_NODES int node;#endif struct pglist_data *zone_pgdat;
@@ -896,7 +896,7 @@ static inline bool populated_zone(struct zone *zone)return zone->present_pages; } -#ifdef CONFIG_NUMA +#ifdef CONFIG_NEED_MULTIPLE_NODES static inline int zone_to_nid (struct zone *zone) {return zone->node;
include/linux/security.h +1 -0
@@ -120,6 +120,7 @@ enum lockdown_reason {LOCKDOWN_MMIOTRACE ,LOCKDOWN_DEBUGFS ,LOCKDOWN_XMON_WR , +LOCKDOWN_BPF_WRITE_USER ,LOCKDOWN_INTEGRITY_MAX ,LOCKDOWN_KCORE , LOCKDOWN_KPROBES,
include/linux/tee_drv.h +1 -0
@@ -27,6 +27,7 @@#define TEE_SHM_USER_MAPPED BIT(4)/* Memory mapped in user space */ #define TEE_SHM_POOL BIT(5)/* Memory allocated from pool */ #define TEE_SHM_KERNEL_MAPPED BIT(6)/* Memory mapped in kernel space */ +#define TEE_SHM_PRIV BIT(7)/* Memory private to TEE driver */ struct device ;struct tee_device ;
kernel/trace/bpf_trace.c +3 -2
@@ -1272,12 +1272,13 @@ bpf_tracing_func_proto(enum bpf_func_id func_id, const struct bpf_prog *prog)return &bpf_get_numa_node_id_proto;case BPF_FUNC_perf_event_read:return &bpf_perf_event_read_proto; -case BPF_FUNC_probe_write_user: -return bpf_get_probe_write_proto ();case BPF_FUNC_current_task_under_cgroup:return &bpf_current_task_under_cgroup_proto;case BPF_FUNC_get_prandom_u32:return &bpf_get_prandom_u32_proto; +case BPF_FUNC_probe_write_user: +return security_locked_down (LOCKDOWN_BPF_WRITE_USER ) <0 ? +NULL :bpf_get_probe_write_proto ();case BPF_FUNC_probe_read_user:return &bpf_probe_read_user_proto;case BPF_FUNC_probe_read_kernel:
security/security.c +1 -0
@@ -58,6 +58,7 @@ const char *const lockdown_reasons[LOCKDOWN_CONFIDENTIALITY_MAX+1] = { [LOCKDOWN_MMIOTRACE] = "unsafe mmio", [LOCKDOWN_DEBUGFS] = "debugfs access", [LOCKDOWN_XMON_WR] = "xmon write access", + [LOCKDOWN_BPF_WRITE_USER] = "use of bpf to write user RAM", [LOCKDOWN_INTEGRITY_MAX] = "integrity", [LOCKDOWN_KCORE] = "/proc/kcore access", [LOCKDOWN_KPROBES] = "use of kprobes",
sound/core/pcm_native.c +4 -1
@@ -251,7 +251,10 @@ static bool hw_support_mmap(struct snd_pcm_substream *substream)switch (substream->dma_buffer.dev.type) {case SNDRV_DMA_TYPE_UNKNOWN : -return false; +/* we can't know the device, so just assume that the driver does +* everything right +*/ +return true;case SNDRV_DMA_TYPE_CONTINUOUS :case SNDRV_DMA_TYPE_VMALLOC :return true;
sound/pci/hda/patch_realtek.c +2 -0
@@ -8357,6 +8357,7 @@ static const struct snd_pci_quirk alc269_fixup_tbl[] = {SND_PCI_QUIRK (0x103c ,0x87f4 ,"HP" ,ALC287_FIXUP_HP_GPIO_LED ),SND_PCI_QUIRK (0x103c ,0x87f5 ,"HP" ,ALC287_FIXUP_HP_GPIO_LED ),SND_PCI_QUIRK (0x103c ,0x87f7 ,"HP Spectre x360 14" ,ALC245_FIXUP_HP_X360_AMP ), +SND_PCI_QUIRK (0x103c ,0x8805 ,"HP ProBook 650 G8 Notebook PC" ,ALC236_FIXUP_HP_GPIO_LED ),SND_PCI_QUIRK (0x103c ,0x880d ,"HP EliteBook 830 G8 Notebook PC" ,ALC285_FIXUP_HP_GPIO_LED ),SND_PCI_QUIRK (0x103c ,0x8846 ,"HP EliteBook 850 G8 Notebook PC" ,ALC285_FIXUP_HP_GPIO_LED ), SND_PCI_QUIRK(0x103c, 0x8847, "HP EliteBook x360 830 G8 Notebook PC", ALC285_FIXUP_HP_GPIO_LED),
@@ -8389,6 +8390,7 @@ static const struct snd_pci_quirk alc269_fixup_tbl[] = {SND_PCI_QUIRK (0x1043 ,0x16e3 ,"ASUS UX50" ,ALC269_FIXUP_STEREO_DMIC ),SND_PCI_QUIRK (0x1043 ,0x1740 ,"ASUS UX430UA" ,ALC295_FIXUP_ASUS_DACS ),SND_PCI_QUIRK (0x1043 ,0x17d1 ,"ASUS UX431FL" ,ALC294_FIXUP_ASUS_DUAL_SPK ), +SND_PCI_QUIRK (0x1043 ,0x1662 ,"ASUS GV301QH" ,ALC294_FIXUP_ASUS_DUAL_SPK ),SND_PCI_QUIRK (0x1043 ,0x1881 ,"ASUS Zephyrus S/M" ,ALC294_FIXUP_ASUS_GX502_PINS ),SND_PCI_QUIRK (0x1043 ,0x18b1 ,"Asus MJ401TA" ,ALC256_FIXUP_ASUS_HEADSET_MIC ), SND_PCI_QUIRK(0x1043, 0x18f1, "Asus FX505DT", ALC256_FIXUP_ASUS_HEADSET_MIC),
tools/testing/selftests/resctrl/resctrl.h +1 -5
@@ -28,10 +28,6 @@#define RESCTRL_PATH "/sys/fs/resctrl"#define PHYS_ID_PATH "/sys/devices/system/cpu/cpu"#define CBM_MASK_PATH "/sys/fs/resctrl/info" -#define L3_PATH "/sys/fs/resctrl/info/L3" -#define MB_PATH "/sys/fs/resctrl/info/MB" -#define L3_MON_PATH "/sys/fs/resctrl/info/L3_MON" -#define L3_MON_FEATURES_PATH "/sys/fs/resctrl/info/L3_MON/mon_features"#define PARENT_EXIT (err_msg) \ do { \
@@ -83,7 +79,7 @@ int remount_resctrlfs(bool mum_resctrlfs);int get_resource_id (int cpu_no,int *resource_id);int umount_resctrlfs (void );int validate_bw_report_request (char *bw_report); -bool validate_resctrl_feature_request (const char *resctrl_val); +bool validate_resctrl_feature_request (char *resctrl_val);char *fgrep (FILE *inf,const char *str);int taskset_benchmark (pid_t bm_pid,int cpu_no);void run_benchmark (int signum,siginfo_t *info,void *ucontext);
tools/testing/selftests/resctrl/resctrlfs.c +11 -41
67 lines not on this page · raw message