Linux 6.17.2
Greg Kroah-Hartman
maintainerI'm announcing the release of the 6.17.2 kernel.
All users of the 6.17 kernel series must upgrade.
The updated 6.17.y git tree can be found at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git linux-6.17.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/x86/kvm/emulate.c | 9 - arch/x86/kvm/kvm_emulate.h | 3 arch/x86/kvm/x86.c | 15 - crypto/rng.c | 8 crypto/testmgr.c | 5 crypto/zstd.c | 2 drivers/android/dbitmap.h | 1 drivers/base/faux.c | 1 drivers/bluetooth/btusb.c | 2 drivers/gpu/drm/amd/amdgpu/mes_v11_0.c | 6 drivers/gpu/drm/amd/amdgpu/mes_v12_0.c | 5 drivers/gpu/drm/amd/include/mes_v11_api_def.h | 3 drivers/gpu/drm/amd/include/mes_v12_api_def.h | 3 drivers/misc/amd-sbi/Kconfig | 1 drivers/net/wireless/realtek/rtl8xxxu/core.c | 2 drivers/net/wireless/realtek/rtlwifi/rtl8192cu/sw.c | 1 drivers/nvmem/layouts.c | 13 + drivers/staging/axis-fifo/axis-fifo.c | 68 +++---- drivers/tty/serial/Kconfig | 2 drivers/tty/serial/qcom_geni_serial.c | 176 +------------------- drivers/usb/serial/option.c | 6 fs/f2fs/f2fs.h | 4 fs/f2fs/gc.c | 4 fs/f2fs/node.c | 58 ++++-- fs/f2fs/node.h | 1 fs/f2fs/recovery.c | 2 include/linux/device.h | 3 kernel/trace/ring_buffer.c | 2 net/9p/trans_fd.c | 8 rust/kernel/block/mq/gen_disk.rs | 2 rust/kernel/drm/device.rs | 2 rust/kernel/drm/driver.rs | 2 rust/kernel/drm/file.rs | 2 rust/kernel/drm/gem/mod.rs | 2 rust/kernel/drm/ioctl.rs | 2 rust/kernel/pci.rs | 6 37 files changed, 178 insertions(+), 256 deletions(-)
Ankit Khushwaha (1):
ring buffer: Propagate __rb_map_vma return value to caller
Bitterblue Smith (2):
wifi: rtlwifi: rtl8192cu: Don't claim USB ID 07b8:8188
wifi: rtl8xxxu: Don't claim USB ID 07b8:8188Carlos Llamas (1):
binder: fix double-free in dbitmap
Chao Yu (1):
f2fs: fix to do sanity check on node footer for non inode dnode
Greg Kroah-Hartman (1):
Linux 6.17.2
Herbert Xu (3):
Revert "crypto: testmgr - desupport SHA-1 for FIPS 140"
crypto: zstd - Fix compression bug caused by truncation
crypto: rng - Ensure set_ent is always present
Krzysztof Kozlowski (1):
serial: qcom-geni: Fix blocked task
Mario Limonciello (1):
drm/amdgpu: Enable MES lr_compute_wa by default
Max Kellermann (1):
drivers/misc/amd-sbi/Kconfig: select REGMAP_I2C
Michael Walle (1):
nvmem: layouts: fix automatic module loading
Miguel Ojeda (2):
rust: drm: fix srctree/ links
rust: block: fix srctree/ links
Nalivayko Sergey (1):
net/9p: fix double req put in p9_fd_cancelled
Ovidiu Panait (3):
staging: axis-fifo: fix maximum TX packet length check
staging: axis-fifo: fix TX handling on copy_from_user() failure
staging: axis-fifo: flush RX FIFO on read errors
Rafael J. Wysocki (2):
driver core: faux: Set power.no_pm for faux devices driver core/PM: Set power.no_callbacks along with power.no_pm
Rahul Rameshbabu (2):
rust: pci: fix incorrect platform reference in PCI driver probe doc comment
rust: pci: fix incorrect platform reference in PCI driver unbind doc comment
Raphael Gallais-Pou (1):
serial: stm32: allow selecting console when the driver is module
Sean Christopherson (1):
KVM: x86: Don't (re)check L1 intercepts when completing userspace I/O
Xiaowei Li (1):
USB: serial: option: add SIMCom 8230C compositions
Zenm Chen (1):
Bluetooth: btusb: Add USB ID 2001:332a for D-Link AX9U rev. A1
Greg Kroah-Hartman
maintainerMakefile +1 -1
@@ -1,7 +1,7 @@ # SPDX-License-Identifier: GPL-2.0 VERSION = 6 PATCHLEVEL = 17 -SUBLEVEL = 1 +SUBLEVEL = 2 EXTRAVERSION = NAME = Baby Opossum Posse
arch/x86/kvm/emulate.c +4 -5
@@ -5107,12 +5107,11 @@ void init_decode_cache(struct x86_emulate_ctxt *ctxt) ctxt->mem_read.end =0 ; } -int x86_emulate_insn (struct x86_emulate_ctxt *ctxt) +int x86_emulate_insn (struct x86_emulate_ctxt *ctxt,bool check_intercepts) {const struct x86_emulate_ops *ops = ctxt->ops;int rc =X86EMUL_CONTINUE ;int saved_dst_type = ctxt->dst.type; -bool is_guest_mode = ctxt->ops->is_guest_mode (ctxt); ctxt->mem_read.pos =0 ;
@@ -5160,7 +5159,7 @@ int x86_emulate_insn(struct x86_emulate_ctxt *ctxt)fetch_possible_mmx_operand (&ctxt->dst); } -if (unlikely (is_guest_mode) && ctxt->intercept) { +if (unlikely (check_intercepts) && ctxt->intercept) { rc =emulator_check_intercept (ctxt, ctxt->intercept,X86_ICPT_PRE_EXCEPT );if (rc !=X86EMUL_CONTINUE )
@@ -5189,7 +5188,7 @@ int x86_emulate_insn(struct x86_emulate_ctxt *ctxt) goto done; } -if (unlikely (is_guest_mode) && (ctxt->d & Intercept)) { +if (unlikely (check_intercepts) && (ctxt->d & Intercept)) { rc =emulator_check_intercept (ctxt, ctxt->intercept,X86_ICPT_POST_EXCEPT );if (rc !=X86EMUL_CONTINUE )
@@ -5243,7 +5242,7 @@ int x86_emulate_insn(struct x86_emulate_ctxt *ctxt) special_insn: -if (unlikely (is_guest_mode) && (ctxt->d & Intercept)) { +if (unlikely (check_intercepts) && (ctxt->d & Intercept)) { rc =emulator_check_intercept (ctxt, ctxt->intercept,X86_ICPT_POST_MEMACCESS );if (rc !=X86EMUL_CONTINUE )
arch/x86/kvm/kvm_emulate.h +1 -2
@@ -235,7 +235,6 @@ struct x86_emulate_ops {void (*set_nmi_mask)(struct x86_emulate_ctxt *ctxt,bool masked);bool (*is_smm)(struct x86_emulate_ctxt *ctxt); -bool (*is_guest_mode)(struct x86_emulate_ctxt *ctxt);int (*leave_smm)(struct x86_emulate_ctxt *ctxt);void (*triple_fault)(struct x86_emulate_ctxt *ctxt);int (*set_xcr)(struct x86_emulate_ctxt *ctxt,u32 index,u64 xcr);
@@ -521,7 +520,7 @@ bool x86_page_table_writing_insn(struct x86_emulate_ctxt *ctxt);#define EMULATION_RESTART 1#define EMULATION_INTERCEPTED 2void init_decode_cache (struct x86_emulate_ctxt *ctxt); -int x86_emulate_insn (struct x86_emulate_ctxt *ctxt); +int x86_emulate_insn (struct x86_emulate_ctxt *ctxt,bool check_intercepts);int emulator_task_switch (struct x86_emulate_ctxt *ctxt,u16 tss_selector,int idt_index,int reason,bool has_error_code,u32 error_code);
arch/x86/kvm/x86.c +8 -7
@@ -8470,11 +8470,6 @@ static bool emulator_is_smm(struct x86_emulate_ctxt *ctxt)return is_smm (emul_to_vcpu (ctxt)); } -static bool emulator_is_guest_mode (struct x86_emulate_ctxt *ctxt) -{ -return is_guest_mode (emul_to_vcpu (ctxt)); -} -#ifndef CONFIG_KVM_SMM static int emulator_leave_smm (struct x86_emulate_ctxt *ctxt) {
@@ -8558,7 +8553,6 @@ static const struct x86_emulate_ops emulate_ops = { .guest_cpuid_is_intel_compatible = emulator_guest_cpuid_is_intel_compatible, .set_nmi_mask = emulator_set_nmi_mask, .is_smm = emulator_is_smm, - .is_guest_mode = emulator_is_guest_mode, .leave_smm = emulator_leave_smm, .triple_fault = emulator_triple_fault, .set_xcr = emulator_set_xcr,
@@ -9143,7 +9137,14 @@ int x86_emulate_instruction(struct kvm_vcpu *vcpu, gpa_t cr2_or_gpa, ctxt->exception.address =0 ; } - r =x86_emulate_insn (ctxt); +/* +* Check L1's instruction intercepts when emulating instructions for +* L2, unless KVM is re-emulating a previously decoded instruction, +* e.g. to complete userspace I/O, in which case KVM has already +* checked the intercepts. +*/ + r =x86_emulate_insn (ctxt,is_guest_mode (vcpu) && + !(emulation_type &EMULTYPE_NO_DECODE ));if (r ==EMULATION_INTERCEPTED )return 1 ;
crypto/rng.c +8 -0
@@ -168,6 +168,11 @@ int crypto_del_default_rng(void)EXPORT_SYMBOL_GPL (crypto_del_default_rng);#endif +static void rng_default_set_ent (struct crypto_rng *tfm,const u8 *data, +unsigned int len) +{ +} +int crypto_register_rng (struct rng_alg *alg) {struct crypto_alg *base = &alg->base;
@@ -179,6 +184,9 @@ int crypto_register_rng(struct rng_alg *alg) base->cra_flags &= ~CRYPTO_ALG_TYPE_MASK ; base->cra_flags |=CRYPTO_ALG_TYPE_RNG ; +if (!alg->set_ent) + alg->set_ent = rng_default_set_ent; +return crypto_register_alg (base); }EXPORT_SYMBOL_GPL (crypto_register_rng);
crypto/testmgr.c +5 -0
@@ -4186,6 +4186,7 @@ static const struct alg_test_desc alg_test_descs[] = { .alg = "authenc(hmac(sha1),cbc(aes))", .generic_driver = "authenc(hmac-sha1-lib,cbc(aes-generic))", .test = alg_test_aead, + .fips_allowed = 1, .suite = { .aead =__VECS (hmac_sha1_aes_cbc_tv_temp) }
@@ -4206,6 +4207,7 @@ static const struct alg_test_desc alg_test_descs[] = { }, { .alg = "authenc(hmac(sha1),ctr(aes))", .test = alg_test_null, + .fips_allowed = 1, }, { .alg = "authenc(hmac(sha1),ecb(cipher_null))", .generic_driver = "authenc(hmac-sha1-lib,ecb-cipher_null)",
@@ -4216,6 +4218,7 @@ static const struct alg_test_desc alg_test_descs[] = { }, { .alg = "authenc(hmac(sha1),rfc3686(ctr(aes)))", .test = alg_test_null, + .fips_allowed = 1, }, { .alg = "authenc(hmac(sha224),cbc(des))", .generic_driver = "authenc(hmac-sha224-lib,cbc(des-generic))",
@@ -5078,6 +5081,7 @@ static const struct alg_test_desc alg_test_descs[] = { .alg = "hmac(sha1)", .generic_driver = "hmac-sha1-lib", .test = alg_test_hash, + .fips_allowed = 1, .suite = { .hash =__VECS (hmac_sha1_tv_template) }
@@ -5448,6 +5452,7 @@ static const struct alg_test_desc alg_test_descs[] = { .alg = "sha1", .generic_driver = "sha1-lib", .test = alg_test_hash, + .fips_allowed = 1, .suite = { .hash =__VECS (sha1_tv_template) }
crypto/zstd.c +1 -1
@@ -83,7 +83,7 @@ static void zstd_exit(struct crypto_acomp *acomp_tfm)static int zstd_compress_one (struct acomp_req *req,struct zstd_ctx *ctx,const void *src,void *dst,unsigned int *dlen) { -unsigned int out_len; +size_t out_len; ctx->cctx =zstd_init_cctx (ctx->wksp, ctx->wksp_size);if (!ctx->cctx)
drivers/android/dbitmap.h +1 -0
@@ -37,6 +37,7 @@ static inline void dbitmap_free(struct dbitmap *dmap) { dmap->nbits =0 ;kfree (dmap->map); + dmap->map =NULL ; }/* Returns the nbits that a dbitmap can shrink to, 0 if not possible. */
drivers/base/faux.c +1 -0
@@ -155,6 +155,7 @@ struct faux_device *faux_device_create_with_groups(const char *name, dev->parent = &faux_bus_root; dev->bus = &faux_bus_type;dev_set_name (dev,"%s" , name); +device_set_pm_not_required (dev); ret =device_add (dev);if (ret) {
drivers/bluetooth/btusb.c +2 -0
@@ -522,6 +522,8 @@ static const struct usb_device_id quirks_table[] = {/* Realtek 8851BU Bluetooth devices */ { USB_DEVICE(0x3625, 0x010b), .driver_info = BTUSB_REALTEK | BTUSB_WIDEBAND_SPEECH }, + { USB_DEVICE(0x2001, 0x332a), .driver_info = BTUSB_REALTEK | + BTUSB_WIDEBAND_SPEECH }, /* Realtek 8852AE Bluetooth devices */ { USB_DEVICE(0x0bda, 0x2852), .driver_info = BTUSB_REALTEK |
drivers/gpu/drm/amd/amdgpu/mes_v11_0.c +6 -0
@@ -711,6 +711,12 @@ static int mes_v11_0_set_hw_resources(struct amdgpu_mes *mes) mes_set_hw_res_pkt.enable_reg_active_poll =1 ; mes_set_hw_res_pkt.enable_level_process_quantum_check =1 ; mes_set_hw_res_pkt.oversubscription_timer =50 ; +if ((mes->adev->mes.sched_version &AMDGPU_MES_VERSION_MASK ) >=0x7f ) + mes_set_hw_res_pkt.enable_lr_compute_wa =1 ; +else +dev_info_once (mes->adev->dev, +"MES FW version must be >= 0x7f to enable LR compute workaround.\n" ); +if (amdgpu_mes_log_enable) { mes_set_hw_res_pkt.enable_mes_event_int_logging =1 ; mes_set_hw_res_pkt.event_intr_history_gpu_mc_ptr =
drivers/gpu/drm/amd/amdgpu/mes_v12_0.c +5 -0
@@ -738,6 +738,11 @@ static int mes_v12_0_set_hw_resources(struct amdgpu_mes *mes, int pipe) mes_set_hw_res_pkt.use_different_vmid_compute =1 ; mes_set_hw_res_pkt.enable_reg_active_poll =1 ; mes_set_hw_res_pkt.enable_level_process_quantum_check =1 ; +if ((mes->adev->mes.sched_version &AMDGPU_MES_VERSION_MASK ) >=0x82 ) + mes_set_hw_res_pkt.enable_lr_compute_wa =1 ; +else +dev_info_once (adev->dev, +"MES FW version must be >= 0x82 to enable LR compute workaround.\n" );/* * Keep oversubscribe timer for sdma . When we have unmapped doorbell
drivers/gpu/drm/amd/include/mes_v11_api_def.h +2 -1
@@ -238,7 +238,8 @@ union MESAPI_SET_HW_RESOURCES { uint32_t enable_mes_sch_stb_log : 1; uint32_t limit_single_process : 1; uint32_t is_strix_tmz_wa_enabled :1; - uint32_t reserved : 13; + uint32_t enable_lr_compute_wa : 1; + uint32_t reserved : 12; };uint32_t uint32_t_all; };
drivers/gpu/drm/amd/include/mes_v12_api_def.h +2 -1
@@ -286,7 +286,8 @@ union MESAPI_SET_HW_RESOURCES { uint32_t limit_single_process : 1; uint32_t unmapped_doorbell_handling: 2; uint32_t enable_mes_fence_int: 1; - uint32_t reserved : 10; + uint32_t enable_lr_compute_wa : 1; + uint32_t reserved : 9; };uint32_t uint32_all; };
drivers/misc/amd-sbi/Kconfig +1 -0
@@ -2,6 +2,7 @@ config AMD_SBRMI_I2C tristate "AMD side band RMI support" depends on I2C + select REGMAP_I2C help Side band RMI over I2C support for AMD out of band management.
drivers/net/wireless/realtek/rtl8xxxu/core.c +0 -2
@@ -8172,8 +8172,6 @@ static const struct usb_device_id dev_table[] = { .driver_info = (unsigned long)&rtl8192cu_fops}, {USB_DEVICE_AND_INTERFACE_INFO(0x06f8, 0xe033, 0xff, 0xff, 0xff), .driver_info = (unsigned long)&rtl8192cu_fops}, -{USB_DEVICE_AND_INTERFACE_INFO(0x07b8, 0x8188, 0xff, 0xff, 0xff), - .driver_info = (unsigned long)&rtl8192cu_fops}, {USB_DEVICE_AND_INTERFACE_INFO(0x07b8, 0x8189, 0xff, 0xff, 0xff), .driver_info = (unsigned long)&rtl8192cu_fops}, {USB_DEVICE_AND_INTERFACE_INFO(0x0846, 0x9041, 0xff, 0xff, 0xff),
drivers/net/wireless/realtek/rtlwifi/rtl8192cu/sw.c +0 -1
@@ -291,7 +291,6 @@ static const struct usb_device_id rtl8192c_usb_ids[] = { {RTL_USB_DEVICE(0x050d, 0x1102, rtl92cu_hal_cfg)}, /*Belkin - Edimax*/ {RTL_USB_DEVICE(0x050d, 0x11f2, rtl92cu_hal_cfg)}, /*Belkin - ISY*/ {RTL_USB_DEVICE(0x06f8, 0xe033, rtl92cu_hal_cfg)}, /*Hercules - Edimax*/ - {RTL_USB_DEVICE(0x07b8, 0x8188, rtl92cu_hal_cfg)}, /*Abocom - Abocom*/ {RTL_USB_DEVICE(0x07b8, 0x8189, rtl92cu_hal_cfg)}, /*Funai - Abocom*/ {RTL_USB_DEVICE(0x0846, 0x9041, rtl92cu_hal_cfg)}, /*NetGear WNA1000M*/ {RTL_USB_DEVICE(0x0846, 0x9043, rtl92cu_hal_cfg)}, /*NG WNA1000Mv2*/
drivers/nvmem/layouts.c +13 -0
@@ -45,11 +45,24 @@ static void nvmem_layout_bus_remove(struct device *dev)return drv->remove (layout); } +static int nvmem_layout_bus_uevent (const struct device *dev, +struct kobj_uevent_env *env) +{ +int ret; + + ret =of_device_uevent_modalias (dev, env); +if (ret !=ENODEV ) +return ret; + +return 0 ; +} +static const struct bus_type nvmem_layout_bus_type = { .name ="nvmem-layout" , .match = nvmem_layout_bus_match, .probe = nvmem_layout_bus_probe, .remove = nvmem_layout_bus_remove, + .uevent = nvmem_layout_bus_uevent, }; int __nvmem_layout_driver_register(struct nvmem_layout_driver *drv,
drivers/staging/axis-fifo/axis-fifo.c +31 -37
134 lines not on this page · raw message
drivers/tty/serial/Kconfig +1 -1
@@ -1412,7 +1412,7 @@ config SERIAL_STM32 config SERIAL_STM32_CONSOLE bool "Support for console on STM32" - depends on SERIAL_STM32=y + depends on SERIAL_STM32 select SERIAL_CORE_CONSOLE select SERIAL_EARLYCON
drivers/tty/serial/qcom_geni_serial.c +16 -160
302 lines not on this page · raw message
drivers/usb/serial/option.c +6 -0
@@ -2114,6 +2114,12 @@ static const struct usb_device_id option_ids[] = { { USB_DEVICE_INTERFACE_CLASS(0x1e0e, 0x9003, 0xff) }, /* Simcom SIM7500/SIM7600 MBIM mode */ { USB_DEVICE_INTERFACE_CLASS(0x1e0e, 0x9011, 0xff), /* Simcom SIM7500/SIM7600 RNDIS mode */ .driver_info = RSVD(7) }, + { USB_DEVICE(0x1e0e, 0x9071), /* Simcom SIM8230 RMNET mode */ + .driver_info = RSVD(3) | RSVD(4) }, + { USB_DEVICE_INTERFACE_CLASS(0x1e0e, 0x9078, 0xff), /* Simcom SIM8230 ECM mode */ + .driver_info = RSVD(5) }, + { USB_DEVICE_INTERFACE_CLASS(0x1e0e, 0x907b, 0xff), /* Simcom SIM8230 RNDIS mode */ + .driver_info = RSVD(5) }, { USB_DEVICE_INTERFACE_CLASS(0x1e0e, 0x9205, 0xff) }, /* Simcom SIM7070/SIM7080/SIM7090 AT+ECM mode */ { USB_DEVICE_INTERFACE_CLASS(0x1e0e, 0x9206, 0xff) }, /* Simcom SIM7070/SIM7080/SIM7090 AT-only mode */ { USB_DEVICE(ALCATEL_VENDOR_ID, ALCATEL_PRODUCT_X060S_X200),
fs/f2fs/f2fs.h +3 -1
@@ -3764,6 +3764,7 @@ void f2fs_hash_filename(const struct inode *dir, struct f2fs_filename *fname);* node.c */ struct node_info ; +enum node_type ;int f2fs_check_nid_range (struct f2fs_sb_info *sbi,nid_t nid);bool f2fs_available_free_memory (struct f2fs_sb_info *sbi,int type);
@@ -3786,7 +3787,8 @@ int f2fs_remove_inode_page(struct inode *inode);struct folio *f2fs_new_inode_folio (struct inode *inode);struct folio *f2fs_new_node_folio (struct dnode_of_data *dn,unsigned int ofs);void f2fs_ra_node_page (struct f2fs_sb_info *sbi,nid_t nid); -struct folio *f2fs_get_node_folio (struct f2fs_sb_info *sbi,pgoff_t nid); +struct folio *f2fs_get_node_folio (struct f2fs_sb_info *sbi,pgoff_t nid, +enum node_type node_type);struct folio *f2fs_get_inode_folio (struct f2fs_sb_info *sbi,pgoff_t ino);struct folio *f2fs_get_xnode_folio (struct f2fs_sb_info *sbi,pgoff_t xnid);int f2fs_move_node_folio (struct folio *node_folio,int gc_type);
fs/f2fs/gc.c +2 -2
@@ -1071,7 +1071,7 @@ static int gc_node_segment(struct f2fs_sb_info *sbi, }/* phase == 2 */ - node_folio =f2fs_get_node_folio (sbi, nid); + node_folio =f2fs_get_node_folio (sbi, nid,NODE_TYPE_REGULAR );if (IS_ERR (node_folio))continue ;
@@ -1145,7 +1145,7 @@ static bool is_alive(struct f2fs_sb_info *sbi, struct f2fs_summary *sum, nid =le32_to_cpu (sum->nid); ofs_in_node =le16_to_cpu (sum->ofs_in_node); - node_folio =f2fs_get_node_folio (sbi, nid); + node_folio =f2fs_get_node_folio (sbi, nid,NODE_TYPE_REGULAR );if (IS_ERR (node_folio))return false;
fs/f2fs/node.c +39 -19
97 lines not on this page · raw message
fs/f2fs/node.h +1 -0
@@ -57,6 +57,7 @@ enum node_type {NODE_TYPE_REGULAR ,NODE_TYPE_INODE ,NODE_TYPE_XATTR , + NODE_TYPE_NON_INODE, };/*
fs/f2fs/recovery.c +1 -1
@@ -548,7 +548,7 @@ static int check_index_in_prev_nodes(struct f2fs_sb_info *sbi, }/* Get the node page */ - node_folio =f2fs_get_node_folio (sbi, nid); + node_folio =f2fs_get_node_folio (sbi, nid,NODE_TYPE_REGULAR );if (IS_ERR (node_folio))return PTR_ERR (node_folio);
include/linux/device.h +3 -0
@@ -851,6 +851,9 @@ static inline bool device_pm_not_required(struct device *dev)static inline void device_set_pm_not_required (struct device *dev) { dev->power.no_pm = true; +#ifdef CONFIG_PM + dev->power.no_callbacks = true; +#endif }static inline void dev_pm_syscore_device (struct device *dev,bool val)
kernel/trace/ring_buffer.c +1 -1
@@ -7273,7 +7273,7 @@ int ring_buffer_map(struct trace_buffer *buffer, int cpu,atomic_dec (&cpu_buffer->resize_disabled); } -return 0 ; +return err; }int ring_buffer_unmap (struct trace_buffer *buffer,int cpu)
net/9p/trans_fd.c +4 -4
@@ -726,10 +726,10 @@ static int p9_fd_cancelled(struct p9_client *client, struct p9_req_t *req)p9_debug (P9_DEBUG_TRANS ,"client %p req %p\n" , client, req);spin_lock (&m->req_lock); -/* Ignore cancelled request if message has been received -* before lock. -*/ -if (req->status ==REQ_STATUS_RCVD ) { +/* Ignore cancelled request if status changed since the request was +* processed in p9_client_flush() +*/ +if (req->status !=REQ_STATUS_SENT ) {spin_unlock (&m->req_lock);return 0 ; }
rust/kernel/block/mq/gen_disk.rs +1 -1
@@ -3,7 +3,7 @@//! Generic disk abstraction. //! //! C header: [`include/linux/blkdev.h`](srctree/include/linux/blkdev.h) -//! C header: [`include/linux/blk_mq.h`](srctree/include/linux/blk_mq.h) +//! C header: [`include/linux/blk-mq.h`](srctree/include/linux/blk-mq.h) use crate ::block::mq::{raw_writer::RawWriter ,Operations ,TagSet };use crate ::{bindings, error::from_err_ptr, error::Result , sync::Arc };
rust/kernel/drm/device.rs +1 -1
@@ -2,7 +2,7 @@//! DRM device. //! -//! C header: [`include/linux/drm/drm_device.h`](srctree/include/linux/drm/drm_device.h) +//! C header: [`include/drm/drm_device.h`](srctree/include/drm/drm_device.h) use crate ::{ alloc::allocator::Kmalloc ,
rust/kernel/drm/driver.rs +1 -1
@@ -2,7 +2,7 @@//! DRM driver core. //! -//! C header: [`include/linux/drm/drm_drv.h`](srctree/include/linux/drm/drm_drv.h) +//! C header: [`include/drm/drm_drv.h`](srctree/include/drm/drm_drv.h) use crate ::{ bindings, device, devres, drm,
rust/kernel/drm/file.rs +1 -1
@@ -2,7 +2,7 @@//! DRM File objects. //! -//! C header: [`include/linux/drm/drm_file.h`](srctree/include/linux/drm/drm_file.h) +//! C header: [`include/drm/drm_file.h`](srctree/include/drm/drm_file.h) use crate ::{bindings, drm, error::Result , prelude::*, types::Opaque };use core::marker::PhantomData ;
rust/kernel/drm/gem/mod.rs +1 -1
@@ -2,7 +2,7 @@//! DRM GEM API //! -//! C header: [`include/linux/drm/drm_gem.h`](srctree/include/linux/drm/drm_gem.h) +//! C header: [`include/drm/drm_gem.h`](srctree/include/drm/drm_gem.h) use crate ::{ alloc::flags::*,
rust/kernel/drm/ioctl.rs +1 -1
@@ -2,7 +2,7 @@//! DRM IOCTL definitions. //! -//! C header: [`include/linux/drm/drm_ioctl.h`](srctree/include/linux/drm/drm_ioctl.h) +//! C header: [`include/drm/drm_ioctl.h`](srctree/include/drm/drm_ioctl.h) use crate ::ioctl;
rust/kernel/pci.rs +3 -3
@@ -240,11 +240,11 @@ pub trait Driver: Send {/// PCI driver probe. /// -/// Called when a new platform device is added or discovered. -/// Implementers should attempt to initialize the device here. +/// Called when a new pci device is added or discovered. Implementers should +/// attempt to initialize the device here. fn probe (dev: &Device <device::Core >, id_info: &Self ::IdInfo ) ->Result <Pin <KBox <Self >>>; -/// Platform driver unbind. +/// PCI driver unbind. /// /// Called when a [`Device`] is unbound from its bound [`Driver`]. Implementing this callback /// is optional.