5.8.17-rc1 review
Subsystems (3)
Greg Kroah-Hartman
maintainerPATCH 618/633 usb: core: Solve race condition in anchor cleanup functions
In reply to Greg Kroah-HartmanFrom: Eli Billauer <[email protected]>
[ Upstream commit fbc299437c06648afcc7891e6e2e6638dd48d4df ]
usb_kill_anchored_urbs() is commonly used to cancel all URBs on an anchor just before releasing resources which the URBs rely on. By doing so, users of this function rely on that no completer callbacks will take place from any URB on the anchor after it returns.
However if this function is called in parallel with __usb_hcd_giveback_urb processing a URB on the anchor, the latter may call the completer callback after usb_kill_anchored_urbs() returns. This can lead to a kernel panic due to use after release of memory in interrupt context.
The race condition is that __usb_hcd_giveback_urb() first unanchors the URB and then makes the completer callback. Such URB is hence invisible to usb_kill_anchored_urbs(), allowing it to return before the completer has been called, since the anchor's urb_list is empty.
Even worse, if the racing completer callback resubmits the URB, it may remain in the system long after usb_kill_anchored_urbs() returns.
Hence list_empty(&anchor->urb_list), which is used in the existing while-loop, doesn't reliably ensure that all URBs of the anchor are gone.
A similar problem exists with usb_poison_anchored_urbs() and usb_scuttle_anchored_urbs().
This patch adds an external do-while loop, which ensures that all URBs are indeed handled before these three functions return. This change has no effect at all unless the race condition occurs, in which case the loop will busy-wait until the racing completer callback has finished. This is a rare condition, so the CPU waste of this spinning is negligible.
The additional do-while loop relies on usb_anchor_check_wakeup(), which returns true iff the anchor list is empty, and there is no __usb_hcd_giveback_urb() in the system that is in the middle of the unanchor-before-complete phase. The @suspend_wakeups member of struct usb_anchor is used for this purpose, which was introduced to solve another problem which the same race condition causes, in commit 6ec4147e7bdb ("usb-anchor: Delay usb_wait_anchor_empty_timeout wake up till completion is done").
The surely_empty variable is necessary, because usb_anchor_check_wakeup() must be called with the lock held to prevent races. However the spinlock must be released and reacquired if the outer loop spins with an empty URB list while waiting for the unanchor-before-complete passage to finish:
The completer callback may very well attempt to take the very same lock.
To summarize, using usb_anchor_check_wakeup() means that the patched functions can return only when the anchor's list is empty, and there is no invisible URB being processed. Since the inner while loop finishes on the empty list condition, the new do-while loop will terminate as well, except for when the said race condition occurs.
--- drivers/usb/core/urb.c | 89 +++++++++++++++++++++++++----------------- 1 file changed, 54 insertions(+), 35 deletions(-)
drivers/usb/core/urb.c +54 -35
@@ -772,11 +772,12 @@ void usb_block_urb(struct urb *urb)EXPORT_SYMBOL_GPL (usb_block_urb);/** -* usb_kill_anchored_urbs - cancel transfer requests en masse +* usb_kill_anchored_urbs - kill all URBs associated with an anchor * @anchor: anchor the requests are bound to * -* this allows all outstanding URBs to be killed starting -* from the back of the queue +* This kills all outstanding URBs starting from the back of the queue, +* with guarantee that no completer callbacks will take place from the +* anchor after this function returns. * * This routine should not be called by a driver after its disconnect * method has returned.
@@ -784,20 +785,26 @@ EXPORT_SYMBOL_GPL(usb_block_urb);void usb_kill_anchored_urbs (struct usb_anchor *anchor) {struct urb *victim; +int surely_empty; -spin_lock_irq (&anchor->lock); -while (!list_empty (&anchor->urb_list)) { - victim = list_entry(anchor->urb_list.prev, struct urb, - anchor_list); -/* we must make sure the URB isn't freed before we kill it*/ -usb_get_urb (victim); -spin_unlock_irq (&anchor->lock); -/* this will unanchor the URB */ -usb_kill_urb (victim); -usb_put_urb (victim); +do {spin_lock_irq (&anchor->lock); - } -spin_unlock_irq (&anchor->lock); +while (!list_empty (&anchor->urb_list)) { + victim =list_entry (anchor->urb_list.prev, + struct urb, anchor_list); +/* make sure the URB isn't freed before we kill it */ +usb_get_urb (victim); +spin_unlock_irq (&anchor->lock); +/* this will unanchor the URB */ +usb_kill_urb (victim); +usb_put_urb (victim); +spin_lock_irq (&anchor->lock); + } + surely_empty =usb_anchor_check_wakeup (anchor); + +spin_unlock_irq (&anchor->lock); +cpu_relax (); + }while (!surely_empty); }EXPORT_SYMBOL_GPL (usb_kill_anchored_urbs);
@@ -816,21 +823,27 @@ EXPORT_SYMBOL_GPL(usb_kill_anchored_urbs);void usb_poison_anchored_urbs (struct usb_anchor *anchor) {struct urb *victim; +int surely_empty; -spin_lock_irq (&anchor->lock); - anchor->poisoned =1 ; -while (!list_empty (&anchor->urb_list)) { - victim = list_entry(anchor->urb_list.prev, struct urb, - anchor_list); -/* we must make sure the URB isn't freed before we kill it*/ -usb_get_urb (victim); -spin_unlock_irq (&anchor->lock); -/* this will unanchor the URB */ -usb_poison_urb (victim); -usb_put_urb (victim); +do {spin_lock_irq (&anchor->lock); - } -spin_unlock_irq (&anchor->lock); + anchor->poisoned =1 ; +while (!list_empty (&anchor->urb_list)) { + victim =list_entry (anchor->urb_list.prev, + struct urb, anchor_list); +/* make sure the URB isn't freed before we kill it */ +usb_get_urb (victim); +spin_unlock_irq (&anchor->lock); +/* this will unanchor the URB */ +usb_poison_urb (victim); +usb_put_urb (victim); +spin_lock_irq (&anchor->lock); + } + surely_empty =usb_anchor_check_wakeup (anchor); + +spin_unlock_irq (&anchor->lock); +cpu_relax (); + }while (!surely_empty); }EXPORT_SYMBOL_GPL (usb_poison_anchored_urbs);
@@ -970,14 +983,20 @@ void usb_scuttle_anchored_urbs(struct usb_anchor *anchor) {struct urb *victim;unsigned long flags; +int surely_empty; + +do { +spin_lock_irqsave (&anchor->lock, flags); +while (!list_empty (&anchor->urb_list)) { + victim =list_entry (anchor->urb_list.prev, + struct urb, anchor_list); +__usb_unanchor_urb (victim, anchor); + } + surely_empty =usb_anchor_check_wakeup (anchor); -spin_lock_irqsave (&anchor->lock, flags); -while (!list_empty (&anchor->urb_list)) { - victim = list_entry(anchor->urb_list.prev, struct urb, - anchor_list); -__usb_unanchor_urb (victim, anchor); - } -spin_unlock_irqrestore (&anchor->lock, flags); +spin_unlock_irqrestore (&anchor->lock, flags); +cpu_relax (); + }while (!surely_empty); }EXPORT_SYMBOL_GPL (usb_scuttle_anchored_urbs);
Signature · 1 line
2.25.1
Greg Kroah-Hartman
maintainerPATCH 619/633 scsi: ufs: ufs-qcom: Fix race conditions caused by ufs_qcom_testbus_config()
In reply to Greg Kroah-HartmanFrom: Can Guo <[email protected]>
[ Upstream commit 89dd87acd40a44de8ff3358138aedf8f73f4efc6 ]
If ufs_qcom_dump_dbg_regs() calls ufs_qcom_testbus_config() from ufshcd_suspend/resume and/or clk gate/ungate context, pm_runtime_get_sync() and ufshcd_hold() will cause a race condition. Fix this by removing the unnecessary calls of pm_runtime_get_sync() and ufshcd_hold().
--- drivers/scsi/ufs/ufs-qcom.c | 5 ----- 1 file changed, 5 deletions(-)
drivers/scsi/ufs/ufs-qcom.c +0 -5
@@ -1604,9 +1604,6 @@ int ufs_qcom_testbus_config(struct ufs_qcom_host *host)*/ } mask <<= offset; - -pm_runtime_get_sync (host->hba->dev); -ufshcd_hold (host->hba, false);ufshcd_rmwl (host->hba,TEST_BUS_SEL , (u32 )host->testbus.select_major <<19 ,REG_UFS_CFG1 );
@@ -1619,8 +1616,6 @@ int ufs_qcom_testbus_config(struct ufs_qcom_host *host)* committed before returning. */ mb (); -ufshcd_release (host->hba); -pm_runtime_put_sync (host->hba->dev);return 0 ; }
Signature · 1 line
2.25.1
Greg Kroah-Hartman
maintainerPATCH 620/633 drm/amd/display: Screen corruption on dual displays (DP+USB-C)
In reply to Greg Kroah-HartmanFrom: Qingqing Zhuo <[email protected]>
[ Upstream commit ce271b40a91f781af3dee985c39e841ac5148766 ]
[why]
Current pipe merge and split logic only supports cases where new dc_state is allocated and relies on dc->current_state to gather information from previous dc_state.
Calls to validate_bandwidth on UPDATE_TYPE_MED would cause an issue because there is no new dc_state allocated, and data in dc->current_state would be overwritten during pipe merge.
[how]
Only allow validate_bandwidth when new dc_state space is created.
--- drivers/gpu/drm/amd/display/dc/core/dc.c | 2 +- drivers/gpu/drm/amd/display/dc/dcn20/dcn20_resource.c | 3 +++ drivers/gpu/drm/amd/display/dc/dcn21/dcn21_resource.c | 3 +++ 3 files changed, 7 insertions(+), 1 deletion(-)
drivers/gpu/drm/amd/display/dc/core/dc.c +1 -1
@@ -2538,7 +2538,7 @@ void dc_commit_updates_for_stream(struct dc *dc,copy_stream_update_to_stream (dc, context, stream, stream_update); -if (update_type >UPDATE_TYPE_FAST ) { +if (update_type >=UPDATE_TYPE_FULL ) {if (!dc->res_pool->funcs->validate_bandwidth (dc, context, false)) {DC_ERROR ("Mode validation failed for stream update!\n" );dc_release_state (context);
drivers/gpu/drm/amd/display/dc/dcn20/dcn20_resource.c +3 -0
@@ -3165,6 +3165,9 @@ static noinline bool dcn20_validate_bandwidth_fp(struct dc *dc, context->bw_ctx.dml.soc.allow_dram_clock_one_display_vactive = dc->debug.enable_dram_clock_change_one_display_vactive; +/*Unsafe due to current pipe merge and split logic*/ +ASSERT (context != dc->current_state); +if (fast_validate) {return dcn20_validate_bandwidth_internal (dc, context, true); }
drivers/gpu/drm/amd/display/dc/dcn21/dcn21_resource.c +3 -0
@@ -1184,6 +1184,9 @@ bool dcn21_validate_bandwidth(struct dc *dc, struct dc_state *context,BW_VAL_TRACE_COUNT (); +/*Unsafe due to current pipe merge and split logic*/ +ASSERT (context != dc->current_state); + out =dcn20_fast_validate_bw (dc, context, pipes, &pipe_cnt, pipe_split_from, &vlevel);if (pipe_cnt ==0 )
Signature · 1 line
2.25.1
Greg Kroah-Hartman
maintainerPATCH 621/633 dmaengine: dw: Add DMA-channels mask cell support
In reply to Greg Kroah-HartmanFrom: Serge Semin <[email protected]>
[ Upstream commit e8ee6c8cb61b676f1a2d6b942329e98224bd8ee9 ]
DW DMA IP-core provides a way to synthesize the DMA controller with channels having different parameters like maximum burst-length, multi-block support, maximum data width, etc. Those parameters both explicitly and implicitly affect the channels performance. Since DMA slave devices might be very demanding to the DMA performance, let's provide a functionality for the slaves to be assigned with DW DMA channels, which performance according to the platform engineer fulfill their requirements. After this patch is applied it can be done by passing the mask of suitable DMA-channels either directly in the dw_dma_slave structure instance or as a fifth cell of the DMA DT-property. If mask is zero or not provided, then there is no limitation on the channels allocation.
For instance Baikal-T1 SoC is equipped with a DW DMAC engine, which first two channels are synthesized with max burst length of 16, while the rest of the channels have been created with max-burst-len=4. It would seem that the first two channels must be faster than the others and should be more preferable for the time-critical DMA slave devices. In practice it turned out that the situation is quite the opposite. The channels with max-burst-len=4 demonstrated a better performance than the channels with max-burst-len=16 even when they both had been initialized with the same settings. The performance drop of the first two DMA-channels made them unsuitable for the DW APB SSI slave device. No matter what settings they are configured with, full-duplex SPI transfers occasionally experience the Rx FIFO overflow. It means that the DMA-engine doesn't keep up with incoming data pace even though the SPI-bus is enabled with speed of 25MHz while the DW DMA controller is clocked with 50MHz signal. There is no such problem has been noticed for the channels synthesized with max-burst-len=4.
--- drivers/dma/dw/core.c | 4 ++++ drivers/dma/dw/of.c | 7 +++++-- include/linux/platform_data/dma-dw.h | 2 ++ 3 files changed, 11 insertions(+), 2 deletions(-)
drivers/dma/dw/core.c +4 -0
@@ -772,6 +772,10 @@ bool dw_dma_filter(struct dma_chan *chan, void *param)if (dws->dma_dev != chan->device->dev)return false; +/* permit channels in accordance with the channels mask */ +if (dws->channels && !(dws->channels & dwc->mask)) +return false; +/* We have to copy data since dws can be temporary storage */ memcpy (&dwc->dws, dws,sizeof (struct dw_dma_slave ));
drivers/dma/dw/of.c +5 -2
@@ -22,18 +22,21 @@ static struct dma_chan *dw_dma_of_xlate(struct of_phandle_args *dma_spec, };dma_cap_mask_t cap; -if (dma_spec->args_count !=3 ) +if (dma_spec->args_count <3 || dma_spec->args_count >4 )return NULL ; slave.src_id = dma_spec->args[0 ]; slave.dst_id = dma_spec->args[0 ]; slave.m_master = dma_spec->args[1 ]; slave.p_master = dma_spec->args[2 ]; +if (dma_spec->args_count >=4 ) + slave.channels = dma_spec->args[3 ];if (WARN_ON (slave.src_id >=DW_DMA_MAX_NR_REQUESTS || slave.dst_id >=DW_DMA_MAX_NR_REQUESTS || slave.m_master >= dw->pdata->nr_masters || - slave.p_master >= dw->pdata->nr_masters)) + slave.p_master >= dw->pdata->nr_masters || + slave.channels >=BIT (dw->pdata->nr_channels)))return NULL ;dma_cap_zero (cap);
include/linux/platform_data/dma-dw.h +2 -0
@@ -21,6 +21,7 @@* @dst_id: dst request line * @m_master: memory master for transfers on allocated channel * @p_master: peripheral master for transfers on allocated channel +* @channels: mask of the channels permitted for allocation (zero value means any) * @hs_polarity:set active low polarity of handshake interface */ struct dw_dma_slave {
@@ -29,6 +30,7 @@ struct dw_dma_slave {u8 dst_id;u8 m_master;u8 p_master; +u8 channels;bool hs_polarity; };
Signature · 1 line
2.25.1
Greg Kroah-Hartman
maintainerPATCH 622/633 dmaengine: dw: Activate FIFO-mode for memory peripherals only
In reply to Greg Kroah-HartmanFrom: Serge Semin <[email protected]>
[ Upstream commit 6d9459d04081c796fc67c2bb771f4e4ebb5744c4 ]
CFGx.FIFO_MODE field controls a DMA-controller "FIFO readiness" criterion. In other words it determines when to start pushing data out of a DW DMAC channel FIFO to a destination peripheral or from a source peripheral to the DW DMAC channel FIFO. Currently FIFO-mode is set to one for all DW DMAC channels. It means they are tuned to flush data out of FIFO (to a memory peripheral or by accepting the burst transaction requests) when FIFO is at least half-full (except at the end of the block transfer, when FIFO-flush mode is activated) and are configured to get data to the FIFO when it's at least half-empty.
Such configuration is a good choice when there is no slave device involved in the DMA transfers. In that case the number of bursts per block is less than when CFGx.FIFO_MODE = 0 and, hence, the bus utilization will improve. But the latency of DMA transfers may increase when CFGx.FIFO_MODE = 1, since DW DMAC will wait for the channel FIFO contents to be either half-full or half-empty depending on having the destination or the source transfers. Such latencies might be dangerous in case if the DMA transfers are expected to be performed from/to a slave device. Since normally peripheral devices keep data in internal FIFOs, any latency at some critical moment may cause one being overflown and consequently losing data. This especially concerns a case when either a peripheral device is relatively fast or the DW DMAC engine is relatively slow with respect to the incoming data pace.
In order to solve problems, which might be caused by the latencies described above, let's enable the FIFO half-full/half-empty "FIFO readiness" criterion only for DMA transfers with no slave device involved. Thanks to the commit 99ba8b9b0d97 ("dmaengine: dw: Initialize channel before each transfer") we can freely do that in the generic dw_dma_initialize_chan() method.
--- drivers/dma/dw/dw.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
drivers/dma/dw/dw.c +1 -1
@@ -14,7 +14,7 @@static void dw_dma_initialize_chan (struct dw_dma_chan *dwc) {struct dw_dma *dw =to_dw_dma (dwc->chan.device); -u32 cfghi =DWC_CFGH_FIFO_MODE ; +u32 cfghi =is_slave_direction (dwc->direction) ?0 :DWC_CFGH_FIFO_MODE ;u32 cfglo =DWC_CFGL_CH_PRIOR (dwc->priority);bool hs_polarity = dwc->dws.hs_polarity;
Signature · 1 line
2.25.1
Greg Kroah-Hartman
maintainerPATCH 623/633 ath10k: check idx validity in __ath10k_htt_rx_ring_fill_n()
In reply to Greg Kroah-HartmanFrom: Zekun Shen <[email protected]>
[ Upstream commit bad60b8d1a7194df38fd7fe4b22f3f4dcf775099 ]
The idx in __ath10k_htt_rx_ring_fill_n function lives in consistent dma region writable by the device. Malfunctional or malicious device could manipulate such idx to have a OOB write. Either by
htt->rx_ring.netbufs_ring[idx] = skb;
or by
ath10k_htt_set_paddrs_ring(htt, paddr, idx);The idx can also be negative as it's signed, giving a large memory space to write to.
It's possibly exploitable by corruptting a legit pointer with a skb pointer. And then fill skb with payload as rougue object.
Part of the log here. Sometimes it appears as UAF when writing to a freed memory by chance.
[ 15.594376] BUG: unable to handle page fault for address: ffff887f5c1804f0 [ 15.595483] #PF: supervisor write access in kernel mode [ 15.596250] #PF: error_code(0x0002) - not-present page [ 15.597013] PGD 0 P4D 0 [ 15.597395] Oops: 0002 [#1] SMP KASAN PTI [ 15.597967] CPU: 0 PID: 82 Comm: kworker/u2:2 Not tainted 5.6.0 #69 [ 15.598843] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.12.1-0-ga5cab58e9a3f-prebuilt.qemu.org 04/01/2014 [ 15.600438] Workqueue: ath10k_wq ath10k_core_register_work [ath10k_core] [ 15.601389] RIP: 0010:__ath10k_htt_rx_ring_fill_n (linux/drivers/net/wireless/ath/ath10k/htt_rx.c:173) ath10k_core
--- drivers/net/wireless/ath/ath10k/htt_rx.c | 8 ++++++++ 1 file changed, 8 insertions(+)
drivers/net/wireless/ath/ath10k/htt_rx.c +8 -0
@@ -142,6 +142,14 @@ static int __ath10k_htt_rx_ring_fill_n(struct ath10k_htt *htt, int num)BUILD_BUG_ON (HTT_RX_RING_FILL_LEVEL >=HTT_RX_RING_SIZE /2 ); idx =__le32_to_cpu (*htt->rx_ring.alloc_idx.vaddr); + +if (idx <0 || idx >= htt->rx_ring.size) { +ath10k_err (htt->ar,"rx ring index is not valid, firmware malfunctioning?\n" ); + idx &= htt->rx_ring.size_mask; + ret = -ENOMEM ; + goto fail; + } +while (num >0 ) { skb =dev_alloc_skb (HTT_RX_BUF_SIZE +HTT_RX_DESC_ALIGN );if (!skb) {
Signature · 1 line
2.25.1
Greg Kroah-Hartman
maintainerPATCH 624/633 net: korina: cast KSEG0 address to pointer in kfree
In reply to Greg Kroah-HartmanFrom: Valentin Vidic <[email protected]>
[ Upstream commit 3bd57b90554b4bb82dce638e0668ef9dc95d3e96 ]
Fixes gcc warning:
passing argument 1 of 'kfree' makes pointer from integer without a cast
--- drivers/net/ethernet/korina.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
drivers/net/ethernet/korina.c +2 -2
@@ -1113,7 +1113,7 @@ static int korina_probe(struct platform_device *pdev)return rc; probe_err_register: -kfree (KSEG0ADDR (lp->td_ring)); +kfree ((struct dma_desc *)KSEG0ADDR (lp->td_ring)); probe_err_td_ring:iounmap (lp->tx_dma_regs); probe_err_dma_tx:
@@ -1133,7 +1133,7 @@ static int korina_remove(struct platform_device *pdev)iounmap (lp->eth_regs);iounmap (lp->rx_dma_regs);iounmap (lp->tx_dma_regs); -kfree (KSEG0ADDR (lp->td_ring)); +kfree ((struct dma_desc *)KSEG0ADDR (lp->td_ring));unregister_netdev (bif->dev);free_netdev (bif->dev);
Signature · 1 line
2.25.1
Greg Kroah-Hartman
maintainerPATCH 625/633 s390/qeth: dont let HW override the configured port role
In reply to Greg Kroah-HartmanFrom: Julian Wiedmann <[email protected]>
[ Upstream commit a04f0ecacdb0639d416614619225a39de3927e22 ]
The only time that our Bridgeport role should change is when we change the configuration ourselves. In which case we also adjust our internal state tracking, no need to do it again when we receive the corresponding event.
Removing the locked section helps a subsequent patch that needs to flush the workqueue while under sbp_lock.
It would be nice to raise a warning here in case HW does weird things after all, but this could end up generating false-positives when we change the configuration ourselves.
--- drivers/s390/net/qeth_l2_main.c | 6 ------ 1 file changed, 6 deletions(-)
drivers/s390/net/qeth_l2_main.c +0 -6
@@ -1122,12 +1122,6 @@ static void qeth_bridge_state_change_worker(struct work_struct *work)NULL }; -/* Role should not change by itself, but if it did, */ -/* information from the hardware is authoritative. */ -mutex_lock (&data->card->sbp_lock); - data->card->options.sbp.role = entry->role; -mutex_unlock (&data->card->sbp_lock); -snprintf (env_locrem,sizeof (env_locrem),"BRIDGEPORT=statechange" ); snprintf(env_role, sizeof(env_role), "ROLE=%s", (entry->role == QETH_SBP_ROLE_NONE) ? "none" :
Signature · 1 line
2.25.1
Greg Kroah-Hartman
maintainerPATCH 626/633 tty: serial: lpuart: fix lpuart32_write usage
In reply to Greg Kroah-HartmanFrom: Peng Fan <[email protected]>
commit 9ea40db477c024dcb87321b7f32bd6ea12130ac2 upstream.
The 2nd and 3rd parameter were wrongly used, and cause kernel abort when doing kgdb debug.
--- drivers/tty/serial/fsl_lpuart.c | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-)
drivers/tty/serial/fsl_lpuart.c +6 -8
@@ -649,26 +649,24 @@ static int lpuart32_poll_init(struct uarspin_lock_irqsave (&sport->port.lock, flags);/* Disable Rx & Tx */ -lpuart32_write (&sport->port,UARTCTRL ,0 ); +lpuart32_write (&sport->port,0 ,UARTCTRL ); temp =lpuart32_read (&sport->port,UARTFIFO );/* Enable Rx and Tx FIFO */ -lpuart32_write (&sport->port,UARTFIFO , - temp |UARTFIFO_RXFE |UARTFIFO_TXFE ); +lpuart32_write (&sport->port, temp |UARTFIFO_RXFE |UARTFIFO_TXFE ,UARTFIFO );/* flush Tx and Rx FIFO */ -lpuart32_write (&sport->port,UARTFIFO , -UARTFIFO_TXFLUSH |UARTFIFO_RXFLUSH ); +lpuart32_write (&sport->port,UARTFIFO_TXFLUSH |UARTFIFO_RXFLUSH ,UARTFIFO );/* explicitly clear RDRF */ if (lpuart32_read (&sport->port,UARTSTAT ) &UARTSTAT_RDRF ) {lpuart32_read (&sport->port,UARTDATA ); -lpuart32_write (&sport->port,UARTFIFO ,UARTFIFO_RXUF ); +lpuart32_write (&sport->port,UARTFIFO_RXUF ,UARTFIFO ); }/* Enable Rx and Tx */ -lpuart32_write (&sport->port,UARTCTRL ,UARTCTRL_RE |UARTCTRL_TE ); +lpuart32_write (&sport->port,UARTCTRL_RE |UARTCTRL_TE ,UARTCTRL );spin_unlock_irqrestore (&sport->port.lock, flags);return 0 ;
@@ -677,7 +675,7 @@ static int lpuart32_poll_init(struct uarstatic void lpuart32_poll_put_char (struct uart_port *port,unsigned char c) {lpuart32_wait_bit_set (port,UARTSTAT ,UARTSTAT_TDRE ); -lpuart32_write (port,UARTDATA , c); +lpuart32_write (port, c,UARTDATA ); }static int lpuart32_poll_get_char (struct uart_port *port)
Greg Kroah-Hartman
maintainerPATCH 627/633 tty: serial: fsl_lpuart: fix lpuart32_poll_get_char
In reply to Greg Kroah-HartmanFrom: Peng Fan <[email protected]>
commit 29788ab1d2bf26c130de8f44f9553ee78a27e8d5 upstream.
The watermark is set to 1, so we need to input two chars to trigger RDRF using the original logic. With the new logic, we could always get the char when there is data in FIFO.
--- drivers/tty/serial/fsl_lpuart.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
drivers/tty/serial/fsl_lpuart.c +1 -1
@@ -680,7 +680,7 @@ static void lpuart32_poll_put_char(strucstatic int lpuart32_poll_get_char (struct uart_port *port) { -if (!(lpuart32_read (port,UARTSTAT ) &UARTSTAT_RDRF )) +if (!(lpuart32_read (port,UARTWATER ) >>UARTWATER_RXCNT_OFF ))return NO_POLL_CHAR ;return lpuart32_read (port,UARTDATA );
Greg Kroah-Hartman
maintainerPATCH 628/633 usb: gadget: bcm63xx_udc: fix up the error of undeclared usb_debug_root
In reply to Greg Kroah-HartmanFrom: Chunfeng Yun <[email protected]>
commit 5b35dd1a5a666329192a9616ec21098591259058 upstream.
Fix up the build error caused by undeclared usb_debug_root
--- drivers/usb/gadget/udc/bcm63xx_udc.c | 1 + 1 file changed, 1 insertion(+)
drivers/usb/gadget/udc/bcm63xx_udc.c +1 -0
@@ -26,6 +26,7 @@#include <linux/seq_file.h> #include <linux/slab.h> #include <linux/timer.h> +#include <linux/usb.h> #include <linux/usb/ch9.h> #include <linux/usb/gadget.h> #include <linux/workqueue.h>
Greg Kroah-Hartman
maintainerPATCH 629/633 usb: cdc-acm: add quirk to blacklist ETAS ES58X devices
In reply to Greg Kroah-HartmanFrom: Vincent Mailhol <[email protected]>
commit a4f88430af896bf34ec25a7a5f0e053fb3d928e0 upstream.
The ES58X devices has a CDC ACM interface (used for debug
purpose). During probing, the device is thus recognized as USB Modem (CDC ACM), preventing the etas-es58x module to load:
usbcore: registered new interface driver etas_es58x
usb 1-1.1: new full-speed USB device number 14 using xhci_hcd
usb 1-1.1: New USB device found, idVendor=108c, idProduct=0159, bcdDevice= 1.00 usb 1-1.1: New USB device strings: Mfr=1, Product=2, SerialNumber=3 usb 1-1.1: Product: ES581.4
usb 1-1.1: Manufacturer: ETAS GmbH
usb 1-1.1: SerialNumber: 2204355
cdc_acm 1-1.1:1.0: No union descriptor, testing for castrated device cdc_acm 1-1.1:1.0: ttyACM0: USB ACM device
Thus, these have been added to the ignore list indrivers/usb/class/cdc-acm.c
N.B. Future firmware release of the ES58X will remove the CDC-ACM interface.
lsusb -v of the three devices variant (ES581.4, ES582.1 and ES584.1):
Bus 001 Device 011: ID 108c:0159 Robert Bosch GmbH ES581.4 Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 1.10
bDeviceClass 2 Communications
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x108c Robert Bosch GmbH
idProduct 0x0159
bcdDevice 1.00
iManufacturer 1 ETAS GmbH
iProduct 2 ES581.4
iSerial 3 2204355
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 0x0035
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 5 Bus Powered Configuration
bmAttributes 0x80
(Bus Powered)
MaxPower 100mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 3
bInterfaceClass 2 Communications
bInterfaceSubClass 2 Abstract (modem)
bInterfaceProtocol 0
iInterface 4 ACM Control Interface
CDC Header:
bcdCDC 1.10
CDC Call Management:
bmCapabilities 0x01
call management
bDataInterface 0
CDC ACM:
bmCapabilities 0x06
sends break
line coding and serial state
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0010 1x 16 bytes
bInterval 10
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x82 EP 2 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0040 1x 64 bytes
bInterval 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x03 EP 3 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0040 1x 64 bytes
bInterval 0
Device Status: 0x0000
(Bus Powered)
Bus 001 Device 012: ID 108c:0168 Robert Bosch GmbH ES582 Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 2 Communications
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x108c Robert Bosch GmbH
idProduct 0x0168
bcdDevice 1.00
iManufacturer 1 ETAS GmbH
iProduct 2 ES582
iSerial 3 0108933
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 0x0043
bNumInterfaces 2
bConfigurationValue 1
iConfiguration 0
bmAttributes 0x80
(Bus Powered)
MaxPower 500mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 2 Communications
bInterfaceSubClass 2 Abstract (modem)
bInterfaceProtocol 1 AT-commands (v.25ter)
iInterface 0
CDC Header:
bcdCDC 1.10
CDC ACM:
bmCapabilities 0x02
line coding and serial state
CDC Union:
bMasterInterface 0
bSlaveInterface 1
CDC Call Management:
bmCapabilities 0x03
call management
use DataInterface
bDataInterface 1
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x83 EP 3 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0040 1x 64 bytes
bInterval 16
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 0
bNumEndpoints 2
bInterfaceClass 10 CDC Data
bInterfaceSubClass 0
bInterfaceProtocol 0
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x02 EP 2 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 0
Device Qualifier (for other device speed):
bLength 10
bDescriptorType 6
bcdUSB 2.00
bDeviceClass 2 Communications
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
bNumConfigurations 1
Device Status: 0x0000
(Bus Powered)
Bus 001 Device 013: ID 108c:0169 Robert Bosch GmbH ES584.1 Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 2 Communications
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x108c Robert Bosch GmbH
idProduct 0x0169
bcdDevice 1.00
iManufacturer 1 ETAS GmbH
iProduct 2 ES584.1
iSerial 3 0100320
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 0x0043
bNumInterfaces 2
bConfigurationValue 1
iConfiguration 0
bmAttributes 0x80
(Bus Powered)
MaxPower 500mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 2 Communications
bInterfaceSubClass 2 Abstract (modem)
bInterfaceProtocol 1 AT-commands (v.25ter)
iInterface 0
CDC Header:
bcdCDC 1.10
CDC ACM:
bmCapabilities 0x02
line coding and serial state
CDC Union:
bMasterInterface 0
bSlaveInterface 1
CDC Call Management:
bmCapabilities 0x03
call management
use DataInterface
bDataInterface 1
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x83 EP 3 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0040 1x 64 bytes
bInterval 16
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 0
bNumEndpoints 2
bInterfaceClass 10 CDC Data
bInterfaceSubClass 0
bInterfaceProtocol 0
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x02 EP 2 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 0
Device Qualifier (for other device speed):
bLength 10
bDescriptorType 6
bcdUSB 2.00
bDeviceClass 2 Communications
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
bNumConfigurations 1
Device Status: 0x0000
(Bus Powered)
--- drivers/usb/class/cdc-acm.c | 11 +++++++++++ 1 file changed, 11 insertions(+)
drivers/usb/class/cdc-acm.c +11 -0
@@ -1912,6 +1912,17 @@ static const struct usb_device_id acm_id .driver_info = IGNORE_DEVICE, }, +/* Exclude ETAS ES58x */ + { USB_DEVICE(0x108c, 0x0159), /* ES581.4 */ + .driver_info =IGNORE_DEVICE , + }, + { USB_DEVICE(0x108c, 0x0168), /* ES582.1 */ + .driver_info = IGNORE_DEVICE, + }, + { USB_DEVICE(0x108c, 0x0169), /* ES584.1 */ + .driver_info = IGNORE_DEVICE, + }, + { USB_DEVICE(0x1bc7, 0x0021), /* Telit 3G ACM only composition */ .driver_info = SEND_ZERO_PACKET, },
Greg Kroah-Hartman
maintainerPATCH 630/633 USB: cdc-wdm: Make wdm_flush() interruptible and add wdm_fsync().
In reply to Greg Kroah-HartmanFrom: Oliver Neukum <[email protected]>
commit 37d2a36394d954413a495da61da1b2a51ecd28ab upstream.
syzbot is reporting hung task at wdm_flush() [1], for there is a circular dependency that wdm_flush() from flip_close() for /dev/cdc-wdm0 forever waits for /dev/raw-gadget to be closed while close() for /dev/raw-gadget cannot be called unless close() for /dev/cdc-wdm0 completes.
Tetsuo Handa considered that such circular dependency is an usage error [2] which corresponds to an unresponding broken hardware [3]. But Alan Stern responded that we should be prepared for such hardware [4]. Therefore, this patch changes wdm_flush() to use wait_event_interruptible_timeout() which gives up after 30 seconds, for hardware that remains silent must be ignored. The 30 seconds are coming out of thin air.
Changing wait_event() to wait_event_interruptible_timeout() makes error reporting from close() syscall less reliable. To compensate it, this patch also implements wdm_fsync() which does not use timeout. Those who want to be very sure that data has gone out to the device are now advised to call fsync(), with a caveat that fsync() can return -EINVAL when running on older kernels which do not implement wdm_fsync().
This patch also fixes three more problems (listed below) found during exhaustive discussion and testing.
Since multiple threads can concurrently call wdm_write()/wdm_flush(), we need to use wake_up_all() whenever clearing WDM_IN_USE in order to make sure that all waiters are woken up. Also, error reporting needs to use fetch-and-clear approach in order not to report same error for multiple times.
Since wdm_flush() checks WDM_DISCONNECTING, wdm_write() should as well check WDM_DISCONNECTING.
In wdm_flush(), since locks are not held, it is not safe to dereference desc->intf after checking that WDM_DISCONNECTING is not set [5]. Thus, remove dev_err() from wdm_flush().
[1] https://syzkaller.appspot.com/bug?id=e7b761593b23eb50855b9ea31e3be5472b711186
[2] https://lkml.kernel.org/r/[email protected]
[3] https://lkml.kernel.org/r/[email protected]
[4] https://lkml.kernel.org/r/[email protected]
[5] https://lkml.kernel.org/r/[email protected]
--- drivers/usb/class/cdc-wdm.c | 70 +++++++++++++++++++++++++++++++++----------- 1 file changed, 54 insertions(+), 16 deletions(-)
drivers/usb/class/cdc-wdm.c +54 -16
@@ -58,6 +58,9 @@ MODULE_DEVICE_TABLE (usb, wdm_ids);#define WDM_MAX 16 +/* we cannot wait forever at flush() */ +#define WDM_FLUSH_TIMEOUT (30 * HZ) +/* CDC-WMC r1.1 requires wMaxCommand to be "at least 256 decimal (0x100)" */ #define WDM_DEFAULT_BUFSIZE 256
@@ -151,7 +154,7 @@ static void wdm_out_callback(struct urbkfree (desc->outbuf); desc->outbuf =NULL ;clear_bit (WDM_IN_USE , &desc->flags); -wake_up (&desc->wait); +wake_up_all (&desc->wait); }static void wdm_in_callback (struct urb *urb)
@@ -393,6 +396,9 @@ static ssize_t wdm_writeif (test_bit (WDM_RESETTING , &desc->flags)) r = -EIO ; +if (test_bit (WDM_DISCONNECTING , &desc->flags)) + r = -ENODEV ; +if (r <0 ) { rv = r; goto out_free_mem_pm;
@@ -424,6 +430,7 @@ static ssize_t wdm_writeif (rv <0 ) { desc->outbuf =NULL ;clear_bit (WDM_IN_USE , &desc->flags); +wake_up_all (&desc->wait);/* for wdm_wait_for_response() */ dev_err (&desc->intf->dev,"Tx URB error: %d\n" , rv); rv =usb_translate_errors (rv); goto out_free_mem_pm;
@@ -583,28 +590,58 @@ err:return rv; } -static int wdm_flush (struct file *file,fl_owner_t id) +static int wdm_wait_for_response (struct file *file,long timeout) {struct wdm_device *desc = file->private_data; +long rv;/* Use long here because (int) MAX_SCHEDULE_TIMEOUT < 0. */ -wait_event (desc->wait, -/* -* needs both flags. We cannot do with one -* because resetting it would cause a race -* with write() yet we need to signal -* a disconnect -*/ - !test_bit (WDM_IN_USE , &desc->flags) || -test_bit (WDM_DISCONNECTING , &desc->flags)); +/* +* Needs both flags. We cannot do with one because resetting it would +* cause a race with write() yet we need to signal a disconnect. +*/ + rv =wait_event_interruptible_timeout (desc->wait, + !test_bit (WDM_IN_USE , &desc->flags) || +test_bit (WDM_DISCONNECTING , &desc->flags), + timeout); -/* cannot dereference desc->intf if WDM_DISCONNECTING */ +/* +* To report the correct error. This is best effort. +* We are inevitably racing with the hardware. +*/ if (test_bit (WDM_DISCONNECTING , &desc->flags))return -ENODEV ; -if (desc->werr <0 ) -dev_err (&desc->intf->dev,"Error in flush path: %d\n" , - desc->werr); +if (!rv) +return -EIO ; +if (rv <0 ) +return -EINTR ; + +spin_lock_irq (&desc->iuspin); + rv = desc->werr; + desc->werr =0 ; +spin_unlock_irq (&desc->iuspin); -return usb_translate_errors (desc->werr); +return usb_translate_errors (rv); + +} + +/* +* You need to send a signal when you react to malicious or defective hardware. +* Also, don't abort when fsync() returned -EINVAL, for older kernels which do +* not implement wdm_flush() will return -EINVAL. +*/ +static int wdm_fsync (struct file *file,loff_t start,loff_t end,int datasync) +{ +return wdm_wait_for_response (file,MAX_SCHEDULE_TIMEOUT ); +} + +/* +* Same with wdm_fsync(), except it uses finite timeout in order to react to +* malicious or defective hardware which ceased communication after close() was +* implicitly called due to process termination. +*/ +static int wdm_flush (struct file *file,fl_owner_t id) +{ +return wdm_wait_for_response (file,WDM_FLUSH_TIMEOUT ); }static __poll_t wdm_poll (struct file *file,struct poll_table_struct *wait)
@@ -729,6 +766,7 @@ static const struct file_operations wdm_ .owner = THIS_MODULE, .read = wdm_read, .write = wdm_write, + .fsync = wdm_fsync, .open = wdm_open, .flush = wdm_flush, .release = wdm_release,
Greg Kroah-Hartman
maintainerPATCH 631/633 usb: cdns3: gadget: free interrupt after gadget has deleted
In reply to Greg Kroah-HartmanFrom: Peter Chen <[email protected]>
commit 98df91f8840cf750a0bc7c4c5d6b6085bac945b3 upstream.
The interrupt may occur during the gadget deletion, it fixes the below oops.
[ 2394.974604] configfs-gadget gadget: suspend [ 2395.042578] configfs-gadget 5b130000.usb: unregistering UDC driver [g1] [ 2395.382562] irq 229: nobody cared (try booting with the "irqpoll" option) [ 2395.389362] CPU: 0 PID: 301 Comm: kworker/u12:6 Not tainted 5.8.0-rc3-next-20200703-00060-g2f13b83cbf30-dirty #456 [ 2395.399712] Hardware name: Freescale i.MX8QM MEK (DT) [ 2395.404782] Workqueue: 2-0051 tcpm_state_machine_work [ 2395.409832] Call trace: [ 2395.412289] dump_backtrace+0x0/0x1d0 [ 2395.415950] show_stack+0x1c/0x28 [ 2395.419271] dump_stack+0xbc/0x118 [ 2395.422678] __report_bad_irq+0x50/0xe0 [ 2395.426513] note_interrupt+0x2cc/0x38c [ 2395.430355] handle_irq_event_percpu+0x88/0x90 [ 2395.434800] handle_irq_event+0x4c/0xe8 [ 2395.438640] handle_fasteoi_irq+0xbc/0x168 [ 2395.442740] generic_handle_irq+0x34/0x48 [ 2395.446752] __handle_domain_irq+0x68/0xc0 [ 2395.450846] gic_handle_irq+0x64/0x150 [ 2395.454596] el1_irq+0xb8/0x180 [ 2395.457733] __do_softirq+0xac/0x3b8 [ 2395.461310] irq_exit+0xc0/0xe0 [ 2395.464448] __handle_domain_irq+0x6c/0xc0 [ 2395.468540] gic_handle_irq+0x64/0x150 [ 2395.472295] el1_irq+0xb8/0x180 [ 2395.475436] _raw_spin_unlock_irqrestore+0x14/0x48 [ 2395.480232] usb_gadget_disconnect+0x120/0x140 [ 2395.484678] usb_gadget_remove_driver+0xb4/0xd0 [ 2395.489208] usb_del_gadget+0x6c/0xc8 [ 2395.492872] cdns3_gadget_exit+0x5c/0x120 [ 2395.496882] cdns3_role_stop+0x60/0x90 [ 2395.500634] cdns3_role_set+0x64/0xd8 [ 2395.504301] usb_role_switch_set_role.part.0+0x3c/0x90 [ 2395.509444] usb_role_switch_set_role+0x20/0x30 [ 2395.513978] tcpm_mux_set+0x60/0xf8 [ 2395.517470] tcpm_reset_port+0xa4/0xf0 [ 2395.521222] tcpm_detach.part.0+0x44/0x50 [ 2395.525227] tcpm_state_machine_work+0x8b0/0x2360 [ 2395.529932] process_one_work+0x1c8/0x470 [ 2395.533939] worker_thread+0x50/0x420 [ 2395.537603] kthread+0x148/0x168 [ 2395.540830] ret_from_fork+0x10/0x18 [ 2395.544399] handlers: [ 2395.546671] [<000000008dea28da>] cdns3_wakeup_irq [ 2395.551375] [<000000009fee5c61>] cdns3_drd_irq threaded [<000000005148eaec>] cdns3_drd_thread_irq [ 2395.560255] Disabling IRQ #229 [ 2395.563454] configfs-gadget gadget: unbind function 'Mass Storage Function'/000000000132f835 [ 2395.563657] configfs-gadget gadget: unbind [ 2395.563917] udc 5b130000.usb: releasing '5b130000.usb'
--- drivers/usb/cdns3/gadget.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
drivers/usb/cdns3/gadget.c +1 -1
@@ -2988,12 +2988,12 @@ void cdns3_gadget_exit(struct cdns3 *cdn priv_dev = cdns->gadget_dev; -devm_free_irq (cdns->dev, cdns->dev_irq, priv_dev);pm_runtime_mark_last_busy (cdns->dev);pm_runtime_put_autosuspend (cdns->dev);usb_del_gadget_udc (&priv_dev->gadget); +devm_free_irq (cdns->dev, cdns->dev_irq, priv_dev);cdns3_free_all_eps (priv_dev);
Greg Kroah-Hartman
maintainerPATCH 632/633 eeprom: at25: set minimum read/write access stride to 1
In reply to Greg Kroah-HartmanFrom: Christian Eggers <[email protected]>
commit 284f52ac1c6cfa1b2e5c11b84653dd90e4e91de7 upstream.
SPI eeproms are addressed by byte.
--- drivers/misc/eeprom/at25.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
drivers/misc/eeprom/at25.c +1 -1
@@ -358,7 +358,7 @@ static int at25_probe(struct spi_device at25->nvmem_config.reg_read = at25_ee_read; at25->nvmem_config.reg_write = at25_ee_write; at25->nvmem_config.priv = at25; - at25->nvmem_config.stride =4 ; + at25->nvmem_config.stride =1 ; at25->nvmem_config.word_size =1 ; at25->nvmem_config.size = chip.byte_len;
Greg Kroah-Hartman
maintainerPATCH 633/633 usb: gadget: f_ncm: allow using NCM in SuperSpeed Plus gadgets.
In reply to Greg Kroah-HartmanFrom: Lorenzo Colitti <[email protected]>
[ Upstream commit 7974ecd7d3c0f42a98566f281e44ea8573a2ad88 ]
Currently, enabling f_ncm at SuperSpeed Plus speeds results in an oops in config_ep_by_speed because ncm_set_alt passes in NULL ssp_descriptors. Fix this by re-using the SuperSpeed descriptors. This is safe because usb_assign_descriptors calls usb_copy_descriptors.
Tested: enabled f_ncm on a dwc3 gadget and 10Gbps link, ran iperf
--- drivers/usb/gadget/function/f_ncm.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
drivers/usb/gadget/function/f_ncm.c +1 -1
@@ -1536,7 +1536,7 @@ static int ncm_bind(struct usb_configuration *c, struct usb_function *f) fs_ncm_notify_desc.bEndpointAddress; status =usb_assign_descriptors (f, ncm_fs_function, ncm_hs_function, - ncm_ss_function,NULL ); + ncm_ss_function, ncm_ss_function);if (status) goto fail;
Signature · 1 line
2.25.1
hello,
Compiled and booted 5.8.17-rc1+.
Looks like no typical regression or regressions.
Quoted 2,597 lines · Greg Kroah-Hartman
This is the start of the stable review cycle for the 5.8.17 release. There are 633 patches in this series, all will be posted as a response to this one. If anyone has any issues with these being applied, please let me know.
Responses should be made by Thu, 29 Oct 2020 13:53:43 +0000. Anything received after that time might be too late.
The whole patch series can be found in one patch at:
https://www.kernel.org/pub/linux/kernel/v5.x/stable-review/patch-5.8.17-rc1.gzor in the git tree and branch at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.gitlinux-5.8.y
and the diffstat can be found below.thanks,
greg k-h
-------------
Pseudo-Shortlog of commits:Greg Kroah-Hartman <[email protected]>
Linux 5.8.17-rc1Lorenzo Colitti <[email protected]>
usb: gadget:f_ncm: allow using NCM in SuperSpeed Plus gadgets.Christian Eggers <[email protected]>
eeprom: at25: set minimum read/write access stride to 1Peter Chen <[email protected]>
usb: cdns3: gadget: free interrupt after gadget has deletedOliver Neukum <[email protected]>
USB: cdc-wdm: Makewdm_flush()interruptible and addwdm_fsync().Vincent Mailhol <[email protected]>
usb: cdc-acm: add quirk to blacklist ETAS ES58X devicesChunfeng Yun <[email protected]>
usb: gadget:bcm63xx_udc: fix up the error of undeclaredusb_debug_rootPeng Fan <[email protected]>
tty: serial:fsl_lpuart: fixlpuart32_poll_get_charPeng Fan <[email protected]>
tty: serial: lpuart: fixlpuart32_writeusageJulian Wiedmann <[email protected]>
s390/qeth: don't let HW override the configured port roleValentin Vidic <[email protected]>
net: korina: cast KSEG0 address to pointer in kfreeZekun Shen <[email protected]>
ath10k: check idx validity in__ath10k_htt_rx_ring_fill_n()Serge Semin <[email protected]>
dmaengine: dw: Activate FIFO-mode for memory peripherals onlySerge Semin <[email protected]>
dmaengine: dw: Add DMA-channels mask cell supportQingqing Zhuo <[email protected]>
drm/amd/display: Screen corruption on dual displays (DP+USB-C)Can Guo <[email protected]>
scsi: ufs: ufs-qcom: Fix race conditions caused byufs_qcom_testbus_config()Eli Billauer <[email protected]>
usb: core: Solve race condition in anchor cleanup functionsWang Yufen <[email protected]>
brcm80211: fix possible memleak inbrcmf_proto_msgbuf_attachKevin Barnett <[email protected]>
scsi: smartpqi: Avoid crashing kernel for controller issuesSathyanarayana Nujella <[email protected]>
ASoC: Intel: sof_rt5682: override quirk data for tgl_max98373_rt5682Sathyanarayana Nujella <[email protected]>
ASoC: SOF: Add topology filename override based on dmi data matchConnor McAdams <[email protected]>
ALSA: hda/ca0132 - Add new quirk ID for SoundBlaster AE-7.Connor McAdams <[email protected]>
ALSA: hda/ca0132 - Add AE-7 microphone selection commands.Tetsuo Handa <[email protected]>
mwifiex: don't calldel_timer_sync()on uninitialized timerJulian Wiedmann <[email protected]>
s390/qeth: strictly order bridge address eventsJan Kara <[email protected]>
reiserfs: Fix memory leak inreiserfs_parse_options()Peilin Ye <[email protected]>
ipvs: Fix uninit-value indo_ip_vs_set_ctl()Dinghao Liu <[email protected]>
Bluetooth: btusb: Fix memleak inbtusb_mtk_submit_wmt_recv_urbTong Zhang <[email protected]>
tty: ipwireless: fix error handlingGeorge Kennedy <[email protected]>
fbmem: add margin check tofb_check_caps()Nilesh Javali <[email protected]>
scsi: qedi: Fixlist_delcorruption while removing active I/ONilesh Javali <[email protected]>
scsi: qedi: Protect active command list to avoid list corruptionNilesh Javali <[email protected]>
scsi: qedi: Mark all connections for recovery on link down eventSaurav Kashyap <[email protected]>
scsi: qedf: Return SUCCESS if stale rport is encounteredHans de Goede <[email protected]>
HID: ite: Add USB id match for Acer One S1003 keyboard dockDoug Horn <[email protected]>
Fix use after free inget_capset_infocallback.Chris Chiu <[email protected]>
rtl8xxxu: prevent potential memory leakKeita Suzuki <[email protected]>
brcmsmac: fix memory leak inwlc_phy_attach_lcnphyYonghong Song <[email protected]>
selftests/bpf: Fix test_sysctl_loop{1, 2} failure due to clang changeDaniel Wagner <[email protected]>
scsi: qla2xxx: Warn ifdone()orfree()are called on an already freed srbJing Xiangfeng <[email protected]>
scsi: ibmvfc: Fix error return inibmvfc_probe()Qian Cai <[email protected]>
iomap: fixWARN_ON_ONCE()from unprivileged usersZhenzhong Duan <[email protected]>
drm/msm/a6xx: fix a potential overflow issueAbhishek Pandit-Subedi <[email protected]>
Bluetooth: Only mark socket zapped after unlockingJia Yang <[email protected]>
drm: fix double free for gbo indrm_gem_vram_initanddrm_gem_vram_createHamish Martin <[email protected]>
usb: ohci: Default to per-port over-current protectionDarrick J. Wong <[email protected]>
xfs: make sure the rt allocator doesn't run off the endViresh Kumar <[email protected]>
opp: Prevent memory leak indev_pm_opp_attach_genpd()Eric Biggers <[email protected]>
reiserfs: only callunlock_new_inode()ifI_NEWKeita Suzuki <[email protected]>
misc: rtsx: Fix memory leak inrtsx_pci_probeMaciej Fijalkowski <[email protected]>
bpf: Limit caller's stack depth 256 for subprogs with tailcallsNeil Armstrong <[email protected]>
drm/panfrost: add support for vendor quirkNeil Armstrong <[email protected]>
drm/panfrost: add amlogic reset quirk callbackNeil Armstrong <[email protected]>
drm/panfrost: add Amlogic GPU integration quirksBrooke Basile <[email protected]>
ath9k:hif_usb: fix race condition betweenusb_get_urb()andusb_kill_anchored_urbs()Mikael Wikström <[email protected]>
HID: multitouch: Lenovo X1 Tablet Gen3 trackpoint and buttonsJoakim Zhang <[email protected]>
can: flexcan:flexcan_chip_stop(): add error handling and propagate error valueOded Gabbay <[email protected]>
habanalabs: cast to u64 before shift > 31 bitsMauro Carvalho Chehab <[email protected]>
usb: dwc3: simple: add support for Hikey 970Johan Hovold <[email protected]>
USB: cdc-acm: handle broken union descriptorsAlan Maguire <[email protected]>
selftests/bpf: Fix overflow tests to reflect iter size increaseTzu-En Huang <[email protected]>
rtw88: increse the size of rx buffer sizeJan Kara <[email protected]>
udf: Avoid accessing uninitialized data on failed inode readJan Kara <[email protected]>
udf: Limit sparing table sizeKai-Heng Feng <[email protected]>
rtw88: pci: Power cycle device during shutdownZqiang <[email protected]>
usb: gadget: function: printer: fix use-after-free in__lock_acquireYu Chen <[email protected]>
usb: dwc3: Add splitdisable quirk for Hisilicon Kirin SocSherry Sun <[email protected]>
misc: vop: addround_up(x,4)forvring_sizeto avoid kernel panicSherry Sun <[email protected]>
mic: vop: copy data to kernel space then write to io memoryRoman Bolshakov <[email protected]>
scsi: target: core: Add CONTROL field for trace eventsJing Xiangfeng <[email protected]>
scsi: mvumi: Fix error return inmvumi_io_attach()Christoph Hellwig <[email protected]>
PM: hibernate: remove the bogus call toget_gendisk()insoftware_resume()Song Liu <[email protected]>
bpf: Useraw_spin_trylock()for pcpu_freelist_push/pop in NMIHangbin Liu <[email protected]>
libbpf: Close map fd if init map slots failedJérôme Pouiller <[email protected]>
staging: wfx: fix handling of MMIC errorThomas Pedersen <[email protected]>
mac80211: handle lack of sband->bitrates in ratesCong Wang <[email protected]>
ip_gre: set dev->hard_header_len and dev->needed_headroom properlyRustam Kovhaev <[email protected]>
ntfs: add check for mft record size in superblockDinghao Liu <[email protected]>
media: venus: core: Fix runtime PM imbalance invenus_probeRajendra Nayak <[email protected]>
media: venus: core: Fix error handling in probeAlexander Aring <[email protected]>
fs: dlm: fix configfs memory leakVikash Garodia <[email protected]>
media: venus: fixes for list corruptionDinghao Liu <[email protected]>
media: atomisp: fix memleak inia_css_stream_createMauro Carvalho Chehab <[email protected]>
media: saa7134: avoid a shift overflowPali Rohár <[email protected]>
mmc: sdio: Check forCISTPL_VERS_1buffer sizeAdam Goode <[email protected]>
media: uvcvideo: Ensure all probed info is returned to v4l2Borislav Petkov <[email protected]>
x86/mce: Makemce_rdmsrl()panic on an inaccessible MSRBrad Bishop <[email protected]>
spi: fsi: Fix clock running too fastLongfang Liu <[email protected]>
crypto: hisilicon - fixed memory allocation errorBorislav Petkov <[email protected]>
x86/mce: Annotate mce_rd/wrmsrl() with noinstrXiaolong Huang <[email protected]>
media: media/pci: prevent memory leak inbttv_probeDinghao Liu <[email protected]>
media: bdisp: Fix runtime PM imbalance on errorDinghao Liu <[email protected]>
media: platform: sti: hva: Fix runtime PM imbalance on errorDinghao Liu <[email protected]>
media: platform: s3c-camif: Fix runtime PM imbalance on errorDinghao Liu <[email protected]>
media: vsp1: Fix runtime PM imbalance on errorQiushi Wu <[email protected]>
media: exynos4-is: Fix a reference count leakQiushi Wu <[email protected]>
media: exynos4-is: Fix a reference count leak due topm_runtime_get_syncQiushi Wu <[email protected]>
media: exynos4-is: Fix several reference count leaks due topm_runtime_get_syncQiushi Wu <[email protected]>
media: sti: Fix reference count leaksAditya Pakki <[email protected]>
media: st-delta: Fix reference count leak indelta_run_workOliver Neukum <[email protected]>
media:ati_remote: sanity check for both endpointsPavel Machek <[email protected]>
media: firewire: fix memory leakBorislav Petkov <[email protected]>
x86/mce: Add Skylake quirk for patrol scrub reported errorsArvind Sankar <[email protected]>
x86/asm: Replace__force_orderwith a memory clobberPavel Machek <[email protected]>
crypto: ccp - fix error handlingMark Mossberg <[email protected]>
x86/dumpstack: Fix misleading instruction pointer error messageTetsuo Handa <[email protected]>
block: ratelimithandle_bad_sector()messageZhao Heming <[email protected]>
md/bitmap: fix memory leak of temporary bitmapHans de Goede <[email protected]>
i2c: core: Restoreacpi_walk_dep_device_list()getting called after registering the ACPI i2c devsAl Grant <[email protected]>
perf: correct SNOOPX field offsetJuri Lelli <[email protected]>
sched/features: Fix !CONFIG_JUMP_LABEL caseDinghao Liu <[email protected]>
ntb: intel: Fix memleak inintel_ntb_pci_probeKaige Li <[email protected]>
NTB: hw: amd: fix an issue about leak system resourcesVitaly Kuznetsov <[email protected]>
KVM: ioapic: break infinite recursion on lazy EOIzhenwei pi <[email protected]>
nvmet: fix uninitialized work for zero katoGanesh Goudar <[email protected]>
powerpc/pseries: Avoid usingaddr_to_pfnin real modeVasant Hegde <[email protected]>
powerpc/powernv/dump: Fix race while processing OPAL dumpColin Ian King <[email protected]>
lightnvm: fix out-of-bounds write to array devices->info[]Martin Blumenstingl <[email protected]>
ARM: dts: meson8: remove two invalid interrupt lines from the GPU nodeMichal Simek <[email protected]>
arm64: dts: zynqmp: Remove additional compatible string for i2c IPsDennis YC Hsieh <[email protected]>
drm/mediatek: reduce clear eventDennis YC Hsieh <[email protected]>
soc: mediatek: cmdq: add clear option incmdq_pkt_wfeapiBiju Das <[email protected]>
ARM: dts: iwg20d-q7-common: Fix touch controller probe failureMarek Vasut <[email protected]>
ARM: dts: stm32: Fix DH PDK2 display PWM channelMarek Vasut <[email protected]>
ARM: dts: stm32: Swap PHY reset GPIO and TSC2004 IRQ on DHCOM SOMMarek Vasut <[email protected]>
ARM: dts: stm32: Move ethernet PHY into DH SoM DTHolger Assmann <[email protected]>
ARM: dts: stm32: lxa-mc1: Fix kernel warning about PHY delaysMarek Vasut <[email protected]>
ARM: dts: stm32: Fix sdmmc2 pins on AV96Tony Lindgren <[email protected]>
ARM: OMAP2+: Restore MPU power domain ifcpu_cluster_pm_enter()failsKrzysztof Kozlowski <[email protected]>
soc: fsl: qbman: Fix return value on successCristian Ciocaltea <[email protected]>
ARM: dts: owl-s500: Fix incorrect PPI interrupt specifiersAmit Singh Tomar <[email protected]>
arm64: dts: actions: limit address range for pinctrl nodeHsin-Yi Wang <[email protected]>
arm64: dts: mt8173: elm: Fixnor_flashnode propertyGeert Uytterhoeven <[email protected]>
arm64: dts: renesas: r8a774c0: Fix MSIOF1 DMA channelsGeert Uytterhoeven <[email protected]>
arm64: dts: renesas: r8a77990: Fix MSIOF1 DMA channelsCorentin Labbe <[email protected]>
dt-bindings: crypto: Specify that allwinner, sun8i-a33-crypto needs resetSibi Sankar <[email protected]>
soc: qcom: apr: Fixup the error displayed on lookup failureStephan Gerhold <[email protected]>
arm64: dts: qcom: msm8916: Fix MDP/DSI interruptsStephan Gerhold <[email protected]>
arm64: dts: qcom: pm8916: Remove invalid reg size fromwcd_codecStephan Gerhold <[email protected]>
arm64: dts: qcom: msm8916: Remove one more thermal trip point unit nameSibi Sankar <[email protected]>
soc: qcom: pdr: Fixup array type ofget_domain_list_respmessageStephen Boyd <[email protected]>
arm64: dts: qcom: sc7180: Drop flags on mdss irqsKrzysztof Kozlowski <[email protected]>
arm64: dts: imx8mq: Add missing interrupts to GPCSudeep Holla <[email protected]>
firmware:arm_scmi: Fix NULL pointer dereference inmailbox_chan_freeKrzysztof Kozlowski <[email protected]>
memory: fsl-corenet-cf: Fix handling ofplatform_get_irq()errorSai Prakash Ranjan <[email protected]>
arm64: dts: qcom: sc7180: Fix the LLCC base register sizeYueHaibing <[email protected]>
memory: omap-gpmc: Fix build error withoutCONFIG_OFDan Carpenter <[email protected]>
memory: omap-gpmc: Fix a couple off by onesQiang Yu <[email protected]>
arm64: dts: allwinner: h5: remove Mali GPU PMU moduleJernej Skrabec <[email protected]>
ARM: dts: sun8i: r40: bananapi-m2-ultra: Fix dcdc1 regulatorArnd Bergmann <[email protected]>
ARM: s3c24xx: fix mmc gpio lookup tablesClaudiu Beznea <[email protected]>
ARM: at91: pm:of_node_put()after its usageHoria Geantă <[email protected]>
ARM: dts: imx6sl: fix rng nodeJerome Brunet <[email protected]>
arm64: dts: meson: vim3: correct led polarityDan Carpenter <[email protected]>
soc: xilinx: Fix error code inzynqmp_pm_probe()Pablo Neira Ayuso <[email protected]>
netfilter:nf_fwd_netdev: clear timestamp in forwarding pathArd Biesheuvel <[email protected]>
netsec: ignore 'phy-mode' device property on ACPI systemsTimothée COCAULT <[email protected]>
netfilter: ebtables: Fixes dropping of small packets in bridge natFrancesco Ruggeri <[email protected]>
netfilter: conntrack: connection timeout after re-registerArd Biesheuvel <[email protected]>
arm64: mm: use single quantity to represent the PA to VA translationJing Xiangfeng <[email protected]>
scsi: bfa: Fix error return inbfad_pci_init()Robert Hoo <[email protected]>
KVM: x86: emulating RDPID failure shall return #UD rather than #GPKrzysztof Kozlowski <[email protected]>
Input: sun4i-ps2 - fix handling ofplatform_get_irq()errorKrzysztof Kozlowski <[email protected]>
Input:twl4030_keypad- fix handling ofplatform_get_irq()errorKrzysztof Kozlowski <[email protected]>
Input: omap4-keypad - fix handling ofplatform_get_irq()errorKrzysztof Kozlowski <[email protected]>
Input:ep93xx_keypad- fix handling ofplatform_get_irq()errorYueHaibing <[email protected]>
Input: stmfts - fix a & vs && typoDan Carpenter <[email protected]>
Input:imx6ul_tsc- clean up some errors inimx6ul_tsc_resume()Johnny Chuang <[email protected]>
Input:elants_i2c- fix typo for an attribute to show calibration countGwendal Grignou <[email protected]>
platform/chrome:cros_ec_lightbar: Reduce ligthbar get version commandMartijn de Gouw <[email protected]>
SUNRPC: fix copying of multiple pages ingss_read_proxy_verf()Abel Vesa <[email protected]>
clk: imx8mq: Fix usdhc parents orderXiaoyang Xu <[email protected]>
vfio iommu type1: Fix memory leak invfio_iommu_type1_pin_pagesAlex Williamson <[email protected]>
vfio/pci: Clear token on bypass registration failureDarrick J. Wong <[email protected]>
ext4: limit entries returned when counting fsmap recordsXiao Yang <[email protected]>
ext4: disallow modifying DAX inode flag ifinline_datahas been setJan Kara <[email protected]>
ext4: discard preallocations before releasing group lockYe Bin <[email protected]>
ext4: fix dead loop inext4_mb_new_blocksDan Aloni <[email protected]>
svcrdma: fix bounce buffers for unaligned offsets and multiple pagesGuenter Roeck <[email protected]>
watchdog: sp5100: Fix definition ofEFCH_PM_DECODEEN3Dinghao Liu <[email protected]>
watchdog: Useput_deviceon errorDinghao Liu <[email protected]>
watchdog: Fix memleak inwatchdog_cdev_registerMasahiro Yamada <[email protected]>
kbuild: deb-pkg: do not build linux-headers package ifCONFIG_MODULES=nNavid Emamdoost <[email protected]>
clk: bcm2835: add missing release ifdevm_clk_hw_registerfailsClaudiu Beznea <[email protected]>
clk: at91: clk-main: update key before writingAT91_CKGR_MORDaniel Jordan <[email protected]>
module: statically initialize init section freeing dataHanks Chen <[email protected]>
clk: mediatek: add UART0 clock supportStephen Boyd <[email protected]>
clk: rockchip: Initialize hw to error to avoid undefined behaviorDexuan Cui <[email protected]>
PCI: hv: Fix hibernation in case interrupts are not re-createdColin Ian King <[email protected]>
remoteproc/mediatek: fix null pointer dereference on null scp pointerHauke Mehrtens <[email protected]>
pwm: img: Fix null pointer access in probeSimon South <[email protected]>
pwm: rockchip: Keep enabled PWMs running while probingTero Kristo <[email protected]>
clk: keystone: sci-clk: fix parsing assigned-clock data during probeKonrad Dybcio <[email protected]>
clk: qcom: gcc-sdm660: Fix wrongparent_mapYan Zhao <[email protected]>
vfio/type1: fix dirty bitmap calculation invfio_dma_rwYan Zhao <[email protected]>
vfio: fix a missed vfio group put invfio_pin_pagesMatthew Rosato <[email protected]>
vfio/pci: DecouplePCI_COMMAND_MEMORYbit checks fromis_virtfnMatthew Rosato <[email protected]>
s390/pci: Mark all VFs as not implementingPCI_COMMAND_MEMORYYan Zhao <[email protected]>
vfio: add a singleton check forvfio_group_pin_pagesMatthew Rosato <[email protected]>
PCI/IOV: Mark VFs as not implementingPCI_COMMAND_MEMORYNicolas Boichat <[email protected]>
rpmsg: Avoid double-free inmtk_rpmsg_register_deviceDan Carpenter <[email protected]>
rpmsg: smd: Fix a kobj leak in inqcom_smd_parse_edge()Mark Tomlinson <[email protected]>
PCI: iproc: Set affinity mask on MSI interruptsPali Rohár <[email protected]>
PCI: aardvark: Check for errors frompci_bridge_emul_init()callPali Rohár <[email protected]>
PCI: aardvark: Fix compilation on s390Hou Zhiqiang <[email protected]>
PCI: designware-ep: Fix the Header Type checkStefan Agner <[email protected]>
clk: meson: g12a: markfclk_div2as criticalDirk Behme <[email protected]>
i2c: rcar: Auto selectRESET_CONTROLLERChris Packham <[email protected]>
rtc: ds1307: Clear OSF flag on DS1388 when setting timeJerome Brunet <[email protected]>
clk: meson: axg-audio: separate axg and g12a regmap tablesJassi Brar <[email protected]>
mailbox: avoid timer start from callbackJing Xiangfeng <[email protected]>
rapidio: fix the missedput_device()forrio_mport_add_riodevSouptick Joarder <[email protected]>
rapidio: fix error handling pathMatthew Wilcox (Oracle) <[email protected]>
ramfs: fix nommu mmap with gaps in the page cacheTobias Jordan <[email protected]>
lib/crc32.c: fix trivial typo in preprocessor conditionMatthew Wilcox (Oracle) <[email protected]>
mm/page_owner: changesplit_page_ownerto take a countBob Pearson <[email protected]>
RDMA/rxe: Handleskb_clone()failure inrxe_recv.cDavid Howells <[email protected]>
afs: Fix cell removalDavid Howells <[email protected]>
afs: Fix cell purging with aliasesDavid Howells <[email protected]>
afs: Fix cell refcounting by splitting the usage counterDavid Howells <[email protected]>
afs: Fix rapid cell addition/removal by not using RCU on cells treeJamie Iles <[email protected]>
f2fs: wait for sysfs kobject removal before freeingf2fs_sb_infoOliver O'Halloran <[email protected]>
selftests/powerpc: Fixeeh-basic.shexit codesJiri Slaby <[email protected]>
perf trace: Fix off by ones inmemset()afterrealloc()in arches using libauditKrzysztof Kozlowski <[email protected]>
maiblox: mediatek: Fix handling ofplatform_get_irq()errorJohannes Berg <[email protected]>
um: time-travel: Fix IRQ handling intime_travel_handle_message()Tiezhu Yang <[email protected]>
um: vector: UseGFP_ATOMICunder spin lockEric Biggers <[email protected]>
f2fs: reject CASEFOLD inode flag without casefold featureBob Pearson <[email protected]>
RDMA/rxe: Fix skb lifetime inrxe_rcv_mcast_pkt()Colin Ian King <[email protected]>
IB/rdmavt: Fix sizeof mismatchSrikar Dronamraju <[email protected]>
cpufreq: powernv: Fix frame-size-overflow inpowernv_cpufreq_reboot_notifierVaibhav Jain <[email protected]>
powerpc/papr_scm: Add PAPR command family to pass-through command-setJing Xiangfeng <[email protected]>
i3c: master: Fix error return incdns_i3c_master_probe()Namhyung Kim <[email protected]>
perf stat: Fix out of bounds CPU map access when handlingarmv8_pmueventsKajol Jain <[email protected]>
powerpc/perf/hv-gpci: Fix starting index valueAthira Rajeev <[email protected]>
powerpc/perf: Exclude pmc5/6 from the irrelevant PMU group constraintsNicholas Piggin <[email protected]>
powerpc/64: fix irq replay pt_regs->softe valueNicholas Piggin <[email protected]>
powerpc/64: fix irq replay missing preemptKamal Heib <[email protected]>
RDMA/ipoib: Setrtnl_link_opsfor ipoib interfacesLeon Romanovsky <[email protected]>
overflow: Include header file withSIZE_MAXdeclarationDaniel Thompson <[email protected]>
kdb: Fix pager search for multi-line stringsJanusz Krzysztofik <[email protected]>
mtd: rawnand: ams-delta: Fix non-OF build warningHauke Mehrtens <[email protected]>
mtd: spinand: gigadevice: Add QE BitHauke Mehrtens <[email protected]>
mtd: spinand: gigadevice: Only one dummy byte in QUADIOEvgeny Novikov <[email protected]>
mtd: rawnand: vf610: disable clk on error handling path in probeChristophe Kerello <[email protected]>
mtd: rawnand:stm32_fmc2: fix a buffer overflowVignesh Raghavendra <[email protected]>
mtd: hyperbus: hbmc-am654: Fix direct mapping setup flash accessWeihang Li <[email protected]>
RDMA/hns: Fix missingsq_sig_typewhen querying QPWeihang Li <[email protected]>
RDMA/hns: Fix configuration ofack_req_freqin QPCWenpeng Liang <[email protected]>
RDMA/hns: Fix the wrong value ofrnr_retrywhen querying qpJiaran Zhang <[email protected]>
RDMA/hns: Solve the overflow of thecalc_pg_sz()Jiaran Zhang <[email protected]>
RDMA/hns: Add check for the validity of sl configurationJin Yao <[email protected]>
perf stat: Skipduration_timeinsetup_system_wideSindhu, Devale <[email protected]>
i40iw: Add support to make destroy QP synchronousJason Gunthorpe <[email protected]>
RDMA/mlx5: DisableIB_DEVICE_MEM_MGT_EXTENSIONSifIB_WR_REG_MRcan't workJason Gunthorpe <[email protected]>
RDMA/mlx5: Make mkeys always owned by the kernel's PD when not enabledJason Gunthorpe <[email protected]>
RDMA/mlx5: Useset_mkc_access_pd_addr_fields()inreg_create()Lijun Ou <[email protected]>
RDMA/hns: Set the unsupported wr opcodeKeita Suzuki <[email protected]>
RDMA/qedr: Fix resource leak inqedr_create_qpAdrian Hunter <[email protected]>
perf intel-pt: Fix "context_switchevent has no tid" errorJason Gunthorpe <[email protected]>
RDMA/cma: Fix use after free race in roce multicast joinJason Gunthorpe <[email protected]>
RDMA/cma: Consolidate the destruction of acma_multicastin one placeJason Gunthorpe <[email protected]>
RDMA/cma: Remove dead code for kernel rdmacm multicastJason Gunthorpe <[email protected]>
RDMA/cma: Combinecma_ndev_workwithcma_workNicholas Piggin <[email protected]>
powerpc/64s/radix: Fixmm_cpumasktrimming race vskthread_use_mmChristophe Leroy <[email protected]>
powerpc/kasan: FixCONFIG_KASAN_VMALLOCfor 8xxFinn Thain <[email protected]>
powerpc/tau: Disable TAU between measurementsFinn Thain <[email protected]>
powerpc/tau: Check processor type before enabling TAU interruptFinn Thain <[email protected]>
powerpc/tau: Remove duplicatedset_thresholds()callFinn Thain <[email protected]>
powerpc/tau: Convert from timer to workqueueFinn Thain <[email protected]>
powerpc/tau: Use appropriate temperature sample intervalAneesh Kumar K.V <[email protected]>
powerpc/book3s64/hash/4k: Support large linear mapping range with 4KRavi Bangoria <[email protected]>
powerpc/watchpoint: Addhw_lenwherever missingRavi Bangoria <[email protected]>
powerpc/watchpoint: Fix handling of vector instructionsRavi Bangoria <[email protected]>
powerpc/watchpoint: Fix quadword instruction handling on p10 predecessorsThiago Jung Bauermann <[email protected]>
powerpc/pseries/svm: Allocate SWIOTLB buffer anywhere in memoryMichal Kalderon <[email protected]>
RDMA/qedr: Fix inline size returned for iWARPMichal Kalderon <[email protected]>
RDMA/qedr: Fix return code if accept is called on a destroyed qpMichal Kalderon <[email protected]>
RDMA/qedr: Fix use of uninitialized fieldMichal Kalderon <[email protected]>
RDMA/qedr: Fix doorbell settingMichal Kalderon <[email protected]>
RDMA/qedr: Fix qp structure memory leakJason Gunthorpe <[email protected]>
RDMA/umem: Prevent small pages from being returned byib_umem_find_best_pgsz()Jason Gunthorpe <[email protected]>
RDMA/umem: Fixib_umem_find_best_pgsz()for mappings that cross a page boundaryLeon Romanovsky <[email protected]>
RDMA: Allow fail of destroy CQLeon Romanovsky <[email protected]>
RDMA/core: Delete function indirection for alloc/free kernel CQMd Haris Iqbal <[email protected]>
RDMA/rtrs-srv: Incorporateib_register_clientinto rtrs server initDarrick J. Wong <[email protected]>
xfs: fix high key handling in the rt allocator'squery_rangefunctionScott Mayhew <[email protected]>
nfs: add missing "posix"local_lockconstant table definitionDarrick J. Wong <[email protected]>
xfs: fix deadlock and streamlinexfs_getfsmapperformanceDarrick J. Wong <[email protected]>
xfs: limit entries returned when counting fsmap recordsMatthew Wilcox (Oracle) <[email protected]>
ida: Free allocated bitmap in error pathNecip Fazil Yildiran <[email protected]>
arc: plat-hsdk: fix kconfig dependency warning when !RESET_CONTROLLERGreg Ungerer <[email protected]>
m68knommu: include SDHC support only when hardware has itDave Chinner <[email protected]>
xfs: fix finobt btree block recovery orderingGuillaume Tucker <[email protected]>
ARM: 9007/1: l2c: fix prefetch bits init inL2X0_AUX_CTRLusing DT valuesArnaldo Carvalho de Melo <[email protected]>
tools feature: Add missing -lzstd to the fast path feature detectionArnaldo Carvalho de Melo <[email protected]>
perf tools: Make GTK2 support opt-inMark Tomlinson <[email protected]>
mtd: mtdoops: Don't write panic data twiceLeon Romanovsky <[email protected]>
RDMA/mlx5: Fix potential race between destroy and CQE pollScott Cheloha <[email protected]>
pseries/drmem: don't cache node id indrmem_lmbstructNathan Lynch <[email protected]>
powerpc/pseries: explicitly reschedule duringdrmem_lmblist traversalJason Gunthorpe <[email protected]>
RDMA/umem: Fix signature of stubib_umem_find_best_pgsz()Lang Cheng <[email protected]>
RDMA/hns: Add a check for current state before modifying QPArnd Bergmann <[email protected]>
mtd: lpddr: fix excessive stack usage with clangJason Gunthorpe <[email protected]>
RDMA/ucma: Add missing locking aroundrdma_leave_multicast()Jason Gunthorpe <[email protected]>
RDMA/ucma: Fix locking for ctx->events_reportedPaul E. McKenney <[email protected]>
rcutorture: Properly setrcu_fwdsfor OOM handlingNeeraj Upadhyay <[email protected]>
rcu/tree: Force quiescent state on callback overloadNicholas Mc Guire <[email protected]>
powerpc/icp-hv: Fix missingof_node_put()in success pathNicholas Mc Guire <[email protected]>
powerpc/pseries: Fix missingof_node_put()inrng_init()Håkon Bugge <[email protected]>
IB/mlx4: Adjust delayed work when a dup is observedHåkon Bugge <[email protected]>
IB/mlx4: Fix starvation in paravirt mux/demuxParshuram Thombare <[email protected]>
i3c: master addi3c_master_attach_boardinfoto preserve boardinfoTom Zanussi <[email protected]>
tracing: Handle synthetic event array field type checking correctlyTom Zanussi <[email protected]>
selftests/ftrace: Change synthetic event name for inter-event-combined testAndrii Nakryiko <[email protected]>
fs: fix NULL dereference due to data race inprepend_path()Suren Baghdasaryan <[email protected]>
mm,oom_adj: don't loop through tasks in__set_oom_adjwhen not necessaryRalph Campbell <[email protected]>
mm/memcg: fix device private memcg accountingMiaohe Lin <[email protected]>
mm/swapfile.c: fix potential memory leak insys_swaponPablo Neira Ayuso <[email protected]>
netfilter:nf_log: missing vlan offload tag and protoValentin Vidic <[email protected]>
net: korina: fix kfree of rx/tx descriptor arrayJohn Fastabend <[email protected]>
bpf, sockmap: Removeskb_orphanand let normalskb_kfreedo cleanupJulian Anastasov <[email protected]>
ipvs: clear skb->tstamp in forwarding pathChristian Hewitt <[email protected]>
drm/panfrost: increasereadl_relaxed_poll_timeoutvaluesTom Rix <[email protected]>
mwifiex: fix double freeVadim Pasternak <[email protected]>
platform/x86: mlx-platform: Remove PSU EEPROM configurationTom Zanussi <[email protected]>
tracing: Fixparse_synth_field()error handlingTianjia Zhang <[email protected]>
ipmi_si: Fix wrong return value intry_smi_init()Logan Gunthorpe <[email protected]>
dmaengine: ioat: Allocate correct size for descriptor chunkDan Carpenter <[email protected]>
scsi: be2iscsi: Fix a theoretical leak inbeiscsi_create_eqs()John Donnelly <[email protected]>
scsi: target: tcmu: Fix warning: 'page' may be used uninitializedMinas Harutyunyan <[email protected]>
usb: dwc2: Fix INTR OUT transfers in DDMA mode.Johannes Berg <[email protected]>
nl80211: fix non-split wiphy informationNecip Fazil Yildiran <[email protected]>
ocxl: fix kconfig dependency warning for OCXLManivannan Sadhasivam <[email protected]>
bus: mhi: core: Fix the building of MHI moduleLorenzo Colitti <[email protected]>
usb: gadget:u_ether: enable qmult on SuperSpeed Plus as wellYoshihiro Shimoda <[email protected]>
usb: gadget:u_serial: clear suspended flag when disconnectingLorenzo Colitti <[email protected]>
usb: gadget:f_ncm: fixncm_bitratefor SuperSpeed and above.Mordechay Goodstein <[email protected]>
iwlwifi: dbg: runinit_cfgfunction once per driver loadMordechay Goodstein <[email protected]>
iwlwifi: dbg: remove no filter conditionEmmanuel Grumbach <[email protected]>
iwlwifi: mvm: split a print to avoid a WARNING in ROCAdam Brickman <[email protected]>
ASoC:wm_adsp: Pass full name tosnd_ctl_notifyDan Carpenter <[email protected]>
mfd: sm501: Fix leaks inprobe()Thomas Gleixner <[email protected]>
net: enic: Cure the enic api locking trainwreckFabrice Gasnier <[email protected]>
iio: adc: stm32-adc: fix runtime autosuspend delay when slow pollingYu Kuai <[email protected]>
iommu/qcom: add missingput_device()call inqcom_iommu_of_xlate()Andrew Jeffery <[email protected]>
pinctrl: aspeed: Use the right pinconf maskColin Ian King <[email protected]>
qtnfmac: fix resource leaks on unsupported iftype error return pathToke Høiland-Jørgensen <[email protected]>
selftests: Removefmod_retfromtest_overheadToke Høiland-Jørgensen <[email protected]>
bpf: disallow attachingmodify_returntracing functions to other BPF programsLijun Pan <[email protected]>
ibmvnic: set up 200GBPS speedSai Prakash Ranjan <[email protected]>
coresight: etm4x: Fix save and restore of TRCVMIDCCTLR1 registerMike Leach <[email protected]>
coresight: cti: Fix bug clearing sysfs links on callbackMike Leach <[email protected]>
coresight: cti: Fix remove sysfs link errorTingwei Zhang <[email protected]>
coresight: etm: perf: Fix warning caused byetm_setup_auxfailureMatthew Wilcox (Oracle) <[email protected]>
iomap: Use kzalloc to allocateiomap_pageRajkumar Manoharan <[email protected]>
nl80211: fix OBSS PD min and max offset validationMohammed Gamal <[email protected]>
hv: clocksource: Add notrace attribute to read_hv_sched_clock_*() functionsVadym Kochan <[email protected]>
nvmem: core: fix possibly memleak when usenvmem_cell_info_to_nvmem_cell()Yang Yingliang <[email protected]>
tty: hvc: fix link error withCONFIG_SERIAL_CORE_CONSOLE=nDmitry Torokhov <[email protected]>
HID: hid-input: fix stylus battery reportingShengjiu Wang <[email protected]>
ASoC:fsl_sai: Instantiatesnd_soc_dai_driverSrinivas Kandagatla <[email protected]>
slimbus: qcom-ngd-ctrl: disable ngd in qmi server down callbackSrinivas Kandagatla <[email protected]>
slimbus: core: do not enter to clock pause mode in coreSrinivas Kandagatla <[email protected]>
slimbus: core: checkget_addrbefore removing laddr idaEric Dumazet <[email protected]>
quota: clear padding inv2r1_mem2diskdqb()Lorenzo Bianconi <[email protected]>
mt76: mt7915: fix possible memory leak inmt7915_mcu_add_beaconAndreas Färber <[email protected]>
rtw88: Fix potential probe error handling race with wow firmware loadingAndreas Färber <[email protected]>
rtw88: Fix probe error handling race with firmware loadingMartin Blumenstingl <[email protected]>
usb: dwc2: Add missing cleanups whenusb_add_gadget_udc()failsThinh Nguyen <[email protected]>
usb: dwc3: core: Properly default unspecified speedNathan Chancellor <[email protected]>
usb: dwc2: Fix parameter type in function pointer prototypeTakashi Iwai <[email protected]>
ALSA: seq: oss: Avoid mutex lock for a long-time ioctlSouptick Joarder <[email protected]>
misc: mic: scif: Fix error handling pathNecip Fazil Yildiran <[email protected]>
ASoC:cros_ec_codec: fix kconfig dependency warning forSND_SOC_CROS_EC_CODECAndy Shevchenko <[email protected]>
dmaengine: dmatest: Check list for emptiness before access its last entryTomasz Figa <[email protected]>
phy: rockchip-dphy-rx0: Includelinux/delay.hLaurent Pinchart <[email protected]>
drm: rcar-du: Put reference to VSP deviceDan Carpenter <[email protected]>
ath6kl: wmi: prevent a shift wrapping bug inath6kl_wmi_delete_pstream_cmd()Bo YU <[email protected]>
ath11k: Add checked value forath11k_ahb_removeAswath Govindraju <[email protected]>
spi: omap2-mcspi: Improve performance waiting for CHSTATDan Murphy <[email protected]>
ASoC: tas2770: Fix unbalanced calls topm_runtimePierre-Louis Bossart <[email protected]>
ASoC: SOF: control: add size checks forext_bytescontrol .put()Linus Walleij <[email protected]>
net: dsa: rtl8366rb: Support all 4096 VLANsMiquel Raynal <[email protected]>
ASoC: tlv320aic32x4: Fix bdiv clock rate derivationDan Murphy <[email protected]>
ASoC: tas2770: Fix error handling withupdate_bitsDan Murphy <[email protected]>
ASoC: tas2770: Fix required DT properties in the codeDan Murphy <[email protected]>
ASoC: tas2770: Add missing bias level power statesDan Murphy <[email protected]>
ASoC: tas2770: Fix calling reset in probeHuang Guobin <[email protected]>
net: wilc1000: clean up resource in error path of init mon interfaceLinus Walleij <[email protected]>
net: dsa: rtl8366: Skip PVID setting if not requestedLinus Walleij <[email protected]>
net: dsa: rtl8366: Refactor VLAN/PVID initLinus Walleij <[email protected]>
net: dsa: rtl8366: Check validity of passed VLANsMathias Nyman <[email protected]>
xhci: don't create endpoint debugfs entry before ring buffer is set.Ilya Leoshkevich <[email protected]>
selftests/bpf: Fix endianness issue intest_sockopt_skIlya Leoshkevich <[email protected]>
selftests/bpf: Fix endianness issue insk_assignMatthieu Baerts <[email protected]>
selftests: mptcp: interpret \n as a new lineVadym Kochan <[email protected]>
nvmem: core: fix missingof_node_put()inof_nvmem_device_get()Jonathan Zhou <[email protected]>
coresight: etm4x: Fix issues on trcseqevr accessSuzuki K Poulose <[email protected]>
coresight: etm4x: Handle unreachable sink in perf modeTingwei Zhang <[email protected]>
coresight: cti: Write regsiters directly incti_enable_hw()Jonathan Zhou <[email protected]>
coresight: etm4x: Fix issues within reset interface of sysfsMike Leach <[email protected]>
coresight: etm4x: Ensure default perf settings filter user/kernelTingwei Zhang <[email protected]>
coresight: cti: removepm_runtime_get_sync()from CPU hotplugTingwei Zhang <[email protected]>
coresight: cti: disclaim device only when it's claimedMian Yousaf Kaukab <[email protected]>
coresight: fix offset by one error in counting portsSai Prakash Ranjan <[email protected]>
coresight: etm4x: Fixetm4_countrace by moving cpuhp callbacks to initCamel Guo <[email protected]>
ASoC: tlv320adcx140: Fix digital gain rangePierre-Louis Bossart <[email protected]>
ASoC: topology: disable size checks forbytes_extcontrols if neededKP Singh <[email protected]>
ima: Fix NULL pointer dereference inima_file_hashStefan Agner <[email protected]>
drm: mxsfb: check framebuffer pitchPali Rohár <[email protected]>
cpufreq: armada-37xx: Add missingMODULE_DEVICE_TABLEDarrick J. Wong <[email protected]>
xfs: force the log after remapping a synchronous-writes fileOng Boon Leong <[email protected]>
net: stmmac: use netif_tx_start|stop_all_queues() functionAashish Verma <[email protected]>
net: stmmac: Fix incorrect location to set real_num_rx|tx_queuesTomas Henzl <[email protected]>
scsi: mpt3sas: Fix sync irqsEran Ben Elisha <[email protected]>
net/mlx5: Don't call timecounter cyc2time directly from 1PPS flowMoshe Tal <[email protected]>
net/mlx5: Fix uninitialized variable warningLuca Weiss <[email protected]>
drm/msm/adreno: fix probe without iommuThierry Reding <[email protected]>
pinctrl: devicetree: Keep deferring even on timeoutThomas Preston <[email protected]>
pinctrl: mcp23s08: Fix mcp23x17 precious rangeThomas Preston <[email protected]>
pinctrl: mcp23s08: Fixmcp23x17_regmapinitialiserAbhishek Pandit-Subedi <[email protected]>
Bluetooth: Re-order clearing suspend tasksKees Cook <[email protected]>
selftests/lkdtm: Use "comm" instead of "diff" for dmesgMatthew Wilcox (Oracle) <[email protected]>
iomap: Mark read blocks uptodate inwrite_beginMatthew Wilcox (Oracle) <[email protected]>
iomap: Clear page error before beginning a writeSteven Price <[email protected]>
drm/panfrost: Ensure GPU quirks are always initialisedStephen Boyd <[email protected]>
drm/msm: Avoid div-by-zero indpu_crtc_atomic_check()Dan Carpenter <[email protected]>
HID: roccat: add bounds checking inkone_sysfs_write_settings()Stanley Chu <[email protected]>
scsi: ufs: ufs-mediatek: FixHOST_PA_TACTIVATEquirkYu Kuai <[email protected]>
ASoC: fsl: imx-es8328: add missing put_device() call in imx_es8328_probe()Dinghao Liu <[email protected]>
video: fbdev: radeon: Fix memleak inradeonfb_pci_registerTom Rix <[email protected]>
video: fbdev: sis: fix null ptr dereferenceColin Ian King <[email protected]>
video: fbdev: vga16fb: fix setting of pixclock because a pass-by-value errorTom Rix <[email protected]>
ath11k: fix a double free and a memory leakSouptick Joarder <[email protected]>
drivers/virt/fsl_hypervisor: Fix error handling pathHans de Goede <[email protected]>
pwm: lpss: Add range limit check for thebase_unitregister valueHans de Goede <[email protected]>
pwm: lpss: Fix off by one error inbase_unitmath inpwm_lpss_prepare()Artem Savkov <[email protected]>
pty: do tty_flip_buffer_push without port->lock in pty_writeTyrel Datwyler <[email protected]>
tty: hvcs: Don't NULL tty->driver_data until hvcs_cleanup()Tong Zhang <[email protected]>
tty: serial: earlycon dependencyJann Horn <[email protected]>
binder: Remove bogus warning on failed same-process transactionEric Biggers <[email protected]>
scsi: ufs: Makeufshcd_print_trs()considerUFSHCD_QUIRK_PRDT_BYTE_GRANAnatoly Pugachev <[email protected]>
selftests: vm: add fragmentCONFIG_GUP_BENCHMARKAbhishek Pandit-Subedi <[email protected]>
Bluetooth: Clear suspend tasks on unregisterDinghao Liu <[email protected]>
drm/crc-debugfs: Fix memleak incrc_control_writeWeqaar Janjua <[email protected]>
samples/bpf: Fix to xdpsock to avoid recycling framesLaurent Pinchart <[email protected]>
drm: panel: Fix bpc for OrtusTech COM43H4M85ULC panelAlexei Starovoitov <[email protected]>
mm/error_inject: Fixallow_error_injectfunction signatures.Alex Dewar <[email protected]>
VMCI: check return value ofget_user_pages_fast()for errorsAlex Dewar <[email protected]>
staging:emxx_udc: Fix passing of NULL todma_alloc_coherent()[email protected] <[email protected]>
backlight: sky81452-backlight: Fix refcount imbalance on errorBrian Norris <[email protected]>
rtw88: don't treat NULL pointer as an arrayDinghao Liu <[email protected]>
wilc1000: Fix memleak inwilc_bus_probeDinghao Liu <[email protected]>
wilc1000: Fix memleak inwilc_sdio_probeAlex Gartrell <[email protected]>
libbpf: Fix unintentional success return code inbpf_object__loadTianjia Zhang <[email protected]>
scsi: csiostor: Fix wrong return value incsio_hw_prep_fw()Tianjia Zhang <[email protected]>
scsi: qla2xxx: Fix wrong return value inqla_nvme_register_hba()Tianjia Zhang <[email protected]>
scsi: qla2xxx: Fix wrong return value inqlt_chk_unresolv_exchg()Christophe JAILLET <[email protected]>
scsi: qla2xxx: Fix the size used in a 'dma_free_coherent()' callChristophe JAILLET <[email protected]>
scsi: qla4xxx: Fix an error handling path in 'qla4xxx_get_host_stats()'Tom Rix <[email protected]>
drm/gma500: fix error checkAndrii Nakryiko <[email protected]>
selftests/bpf: Fixtest_vmlinuxtest to usebpf_probe_read_user()Colin Ian King <[email protected]>
drm/amd/display: fix potential integer overflow when shifting 32 bit variablebl_pwmChristophe JAILLET <[email protected]>
staging: rtl8192u: Do not useGFP_KERNELin atomic contextChristophe JAILLET <[email protected]>
mwifiex: Do not useGFP_KERNELin atomic contextTom Rix <[email protected]>
brcmfmac: check ndev pointerWang Yufen <[email protected]>
ath11k: Fix possible memleak inath11k_qmi_init_serviceRohit kumar <[email protected]>
ASoC: qcom: lpass-cpu: fix concurrency issueRohit kumar <[email protected]>
ASoC: qcom: lpass-platform: fix memory leakBryan O'Donoghue <[email protected]>
wcn36xx: Fix reported 802.11n rx_highest rate wcn3660/wcn3680Christophe JAILLET <[email protected]>
ath10k: Fix the size used in a 'dma_free_coherent()' call in an error handling pathDan Carpenter <[email protected]>
ath9k: Fix potential out of bounds inath9k_htc_txcompletion_cb()Dan Carpenter <[email protected]>
ath6kl: prevent potential array overflow inath6kl_add_new_sta()Laurent Pinchart <[email protected]>
drm: panel: Fix bus format for OrtusTech COM43H4M85ULC panelQinglang Miao <[email protected]>
drm/vkms: add missingplatform_device_unregister()invkms_init()Qinglang Miao <[email protected]>
drm/vgem: add missingplatform_device_unregister()invgem_init()Tianjia Zhang <[email protected]>
drm/amd/display: Fix wrong return value indm_update_plane_state()Samuel Holland <[email protected]>
Bluetooth:hci_uart: Cancel init work before unregisteringMelissa Wen <[email protected]>
drm/vkms: fix xrgb on compute crcVenkateswara Naralasetty <[email protected]>
ath10k: provide survey info as accumulated dataYang Yang <[email protected]>
blk-mq: move cancel of hctx->run_work to the front of blk_exit_queueQu Wenruo <[email protected]>
btrfs: add owner andfs_infotoalloc_stateio_treeSerge Semin <[email protected]>
hwmon: (bt1-pvt) Wait for the completion with timeoutSerge Semin <[email protected]>
hwmon: (bt1-pvt) Cache current update timeoutSerge Semin <[email protected]>
hwmon: (bt1-pvt) Test sensor power supply on probeŁukasz Stelmach <[email protected]>
spi: spi-s3c64xx: Check return valuesŁukasz Stelmach <[email protected]>
spi: spi-s3c64xx: swap s3c64xx_spi_set_cs() and s3c64xx_enable_datapath()Necip Fazil Yildiran <[email protected]>
pinctrl: bcm: fix kconfig dependency warning when !GPIOLIBMichał Mirosław <[email protected]>
regulator: resolve supply after creating regulatorQiushi Wu <[email protected]>
media: ti-vpe: Fix a missing check and reference count leakQiushi Wu <[email protected]>
media: stm32-dcmi: Fix a reference count leakQiushi Wu <[email protected]>
media: s5p-mfc: Fix a reference count leakQiushi Wu <[email protected]>
media: camss: Fix a reference count leak.Qiushi Wu <[email protected]>
media: platform: fcp: Fix a reference count leak.Qiushi Wu <[email protected]>
media: rockchip/rga: Fix a reference count leak.Qiushi Wu <[email protected]>
media: rcar-vin: Fix a reference count leak.Tom Rix <[email protected]>
media: tc358743: cleanup tc358743_cec_isrTom Rix <[email protected]>
media: tc358743: initialize variableDinghao Liu <[email protected]>
media:mx2_emmaprp: Fix memleak inemmaprp_probeCorentin Labbe <[email protected]>
crypto: sun8i-ce - handle endianness oft_common_ctlNicolas Toromanoff <[email protected]>
crypto: stm32/crc32 - Avoid lock if hardware is already usedXiaoliang Pang <[email protected]>
cypto: mediatek - fix leaks inmtk_desc_ring_allocDan Carpenter <[email protected]>
hwmon: (w83627ehf) Fix a resource leak in probeGuenter Roeck <[email protected]>
hwmon: (pmbus/max34440) Fix status register reads for MAX344{51,60,61}Tero Kristo <[email protected]>
crypto: omap-sham - fix digcnt register handling with export/importJay Fang <[email protected]>
spi: dw-pci: free previously allocated IRQs if desc->setup() failsEddie James <[email protected]>
spi: fsi: Implement restricted size for certain controllersBrad Bishop <[email protected]>
spi: fsi: Fix use of the bneq+ sequencer instructionBrad Bishop <[email protected]>
spi: fsi: Handle 9 to 15 byte transfers lengthsLaurent Pinchart <[email protected]>
media: rcar-csi2: Allocatev4l2_async_subdevdynamicallyLaurent Pinchart <[email protected]>
media:rcar_drif: Allocatev4l2_async_subdevdynamicallyLaurent Pinchart <[email protected]>
media:rcar_drif: Fix fwnode reference leak when parsing DTLad Prabhakar <[email protected]>
media: i2c: ov5640: Enable data pins on poweron for DVP modeLad Prabhakar <[email protected]>
media: i2c: ov5640: Separate out mipi configuration froms_powerLad Prabhakar <[email protected]>
media: i2c: ov5640: Remain in power down for DVP mode unless streamingDinghao Liu <[email protected]>
media: omap3isp: Fix memleak inisp_probeChristophe JAILLET <[email protected]>
media: staging/intel-ipu3: css: Correctly reset some memoryLaurent Pinchart <[email protected]>
media: uvcvideo: Silence shift-out-of-bounds warningLaurent Pinchart <[email protected]>
media: uvcvideo: Set media controller entity functionsEric Biggers <[email protected]>
fscrypt: restrictIV_INO_LBLK_32toino_bits<= 32Tom Rix <[email protected]>
media: m5mols: Check function pointer inm5mols_sensor_powerPaul Kocialkowski <[email protected]>
media: ov5640: Correct Bit Div register in clock tree diagramEzequiel Garcia <[email protected]>
media: hantro: postproc: Fix motion vector space allocationEzequiel Garcia <[email protected]>
media: hantro: h264: Get the correct fallback reference bufferSylwester Nawrocki <[email protected]>
media: Revert "media: exynos4-is: Add missed check forpinctrl_lookup_state()"[email protected] <[email protected]>
crypto: ccree - fix runtime PM imbalance on errorTom Rix <[email protected]>
media: tuner-simple: fix regression insimple_set_radio_freqPeilin Ye <[email protected]>
media: vivid: Fix global-out-of-bounds read inprecalculate_color()Madhuparna Bhowmik <[email protected]>
crypto: picoxcell - Fix potential race condition bugChristophe JAILLET <[email protected]>
crypto: ixp4xx - Fix the size used in a 'dma_free_coherent()' callTianjia Zhang <[email protected]>
crypto: mediatek - Fix wrong return value inmtk_desc_ring_alloc()Herbert Xu <[email protected]>
crypto:algif_skcipher- EBUSY on aio should be an errorJiri Olsa <[email protected]>
perf/core: Fix race in theperf_mmap_close()functionSasha Levin <[email protected]>
perf/x86: Fixn_pairfor cancelled txnMaulik Shah <[email protected]>
pinctrl: qcom: Use return value fromirq_set_wake()callMaulik Shah <[email protected]>
pinctrl: qcom: SetIRQCHIP_SET_TYPE_MASKEDandIRQCHIP_MASK_ON_SUSPENDflagsColin Ian King <[email protected]>
x86/events/amd/iommu: Fix sizeof mismatchLibing Zhou <[email protected]>
x86/nmi: Fixnmi_handle()duration miscalculationKan Liang <[email protected]>
perf/x86/intel/uncore: Fix the scale of the IMC free-running eventsKan Liang <[email protected]>
perf/x86/intel/uncore: Reduce the number of CBOX countersKan Liang <[email protected]>
perf/x86/intel/uncore: Update Ice Lake uncore unitsAlexandru Elisei <[email protected]>
arm64: perf: Add missing ISB inarmv8pmu_enable_counter()Barry Song <[email protected]>
sched/fair: Use dst group while checking imbalance for NUMA balancerXunlei Pang <[email protected]>
sched/fair: Fix wrong cpu selecting from isolated domainMark Salter <[email protected]>
drivers/perf:thunderx2_pmu: Fix memory resource error handlingMark Salter <[email protected]>
drivers/perf:xgene_pmu: Fix uninitialized resource structAmit Daniel Kachhap <[email protected]>
arm64: kprobe: add checks for ARMv8.3-PAuth combined instructionsArvind Sankar <[email protected]>
x86/fpu: Allow multiple bits in clearcpuid= parameterKan Liang <[email protected]>
perf/x86/intel/ds: Fixx86_pmu_stopwarning for large PEBSKrzysztof Kozlowski <[email protected]>
EDAC/ti: Fix handling ofplatform_get_irq()errorKrzysztof Kozlowski <[email protected]>
EDAC/aspeed: Fix handling ofplatform_get_irq()errorDinghao Liu <[email protected]>
EDAC/i5100: Fix error handling order ini5100_init_one()Randy Dunlap <[email protected]>
microblaze: fix kbuild redundant file warningLukasz Luba <[email protected]>
sched/fair: Fix wrong negative conversion infind_energy_efficient_cpu()Luca Stefani <[email protected]>
RAS/CEC: Fixcec_init()prototypeAndrei Botila <[email protected]>
crypto: caam/qi - add support for more XTS key lengthsAndrei Botila <[email protected]>
crypto: caam/qi - add fallback for XTS with more than 8B IVHerbert Xu <[email protected]>
crypto:algif_aead- Do not setMAY_BACKLOGon the async pathRoberto Sassu <[email protected]>
ima: Don't ignore errors fromcrypto_shash_update()Suravee Suthikulpanit <[email protected]>
KVM: SVM: Initializeprev_ga_tagbefore useLai Jiangshan <[email protected]>
KVM: x86: Intercept LA57 to inject #GP fault when it's reservedSean Christopherson <[email protected]>
KVM: x86/mmu: Commit zap of remaining invalid pages when recovering lpagesSean Christopherson <[email protected]>
KVM: nVMX: Reload vmcs01 if getting vmcs12's pages failsSean Christopherson <[email protected]>
KVM: nVMX: Reset the segment cache when stuffing guest segsSean Christopherson <[email protected]>
KVM: nVMX: Morph notification vector IRQ on nested VM-Enter to pending PIMarc Zyngier <[email protected]>
arm64: Make use ofARCH_WORKAROUND_1even when KVM is not enabledSteve French <[email protected]>
smb3: fix stat when special device file and mounted with modefromsidSteve French <[email protected]>
smb3: do not try to cache root directory if dir leases not supportedSteve French <[email protected]>
SMB3.1.1: Fix ids returned in POSIX query dirRohith Surabattula <[email protected]>
SMB3: Resolve data corruption of TCP server info fieldsShyam Prasad N <[email protected]>
cifs: Return the error fromcrypt_messagewhen enc/dec key not found.Dan Carpenter <[email protected]>
cifs: remove bogus debug codeJian-Hong Pan <[email protected]>
ALSA: hda/realtek: Enable audio jacks of ASUS D700SA with ALC887Qiu Wenbo <[email protected]>
ALSA: hda/realtek - Add mute Led support for HP Elitebook 845 G7Hui Wang <[email protected]>
ALSA: hda/realtek - set mic to auto detect on a HP AIO machineJeremy Szu <[email protected]>
ALSA: hda/realtek - The front Mic on a HP machine doesn't workLukasz Halman <[email protected]>
ALSA: usb-audio: Line6 Pod Go interface requires static clock rate quirkHui Wang <[email protected]>
ALSA: hda - Fix the return value if cb func is already registeredHui Wang <[email protected]>
ALSA: hda - Don't register a cb func if it is registered alreadyGuillaume Nault <[email protected]>
net/sched: act_gate: Unlock ->tcfa_lock in tc_setup_flow_action()Bartosz Golaszewski <[email protected]>
net: ethernet: mtk-star-emac: selectREGMAP_MMIONeal Cardwell <[email protected]>
tcp: fix to updatesnd_wl1in bulk receiver fast pathPo-Hsu Lin <[email protected]>
selftests: rtnetlink: load fou module forkci_test_encap_fou()testIdo Schimmel <[email protected]>
selftests: forwarding: Add missing 'rp_filter' configurationHeiner Kallweit <[email protected]>
r8169: fix operation under forced interrupt threadingDefang Bo <[email protected]>
nfc: Ensure presence ofNFC_ATTR_FIRMWARE_NAMEattribute innfc_genl_fw_download()Ido Schimmel <[email protected]>
nexthop: Fix performance regression in nexthop deletionDavide Caratti <[email protected]>
net/sched:act_tunnel_key: fix OOB write in case of IPv6 ERSPAN tunnelsRoi Dayan <[email protected]>
net/sched:act_ct: Fix adding udp port mangle operationKe Li <[email protected]>
net: Properly typecast int values to setsk_max_pacing_rateXie He <[email protected]>
net:hdlc_raw_eth: Clear theIFF_TX_SKB_SHARINGflag after callingether_setupXie He <[email protected]>
net: hdlc: Inhdlc_rcv, check to make sure dev is an HDLC deviceDylan Hung <[email protected]>
net: ftgmac100: Fix Aspeed ast2600 TX hang issueGeliang Tang <[email protected]>
mptcp: initialize mptcp_options_received's ahmacEric Dumazet <[email protected]>
icmp: randomize the global rate limiterLijun Pan <[email protected]>
ibmvnic: save changed mac address to adapter->mac_addrVinay Kumar Yadav <[email protected]>
chelsio/chtls: fix writing freed memoryVinay Kumar Yadav <[email protected]>
chelsio/chtls: correct function return and return typeVinay Kumar Yadav <[email protected]>
chelsio/chtls: Fix panic when listen on multiadapterVinay Kumar Yadav <[email protected]>
chelsio/chtls: fix panic when server is on ipv6Vinay Kumar Yadav <[email protected]>
chelsio/chtls: correct netdevice for vlan interfaceVinay Kumar Yadav <[email protected]>
chelsio/chtls: fix socket lockHoang Huu Le <[email protected]>
tipc: fix incorrect setting window for bcast linkHoang Huu Le <[email protected]>
tipc: re-configure queue limit for broadcast linkKai Vehmanen <[email protected]>
ALSA: hda/hdmi: fix incorrect locking inhdmi_pcm_closeKai Vehmanen <[email protected]>
ALSA: hda: fix jack detection with Realtek codecs when in D3Dan Carpenter <[email protected]>
ALSA: bebob: potential info leak inhwdep_read()Todd Kjos <[email protected]>
binder: fix UAF when releasing todo listHeiner Kallweit <[email protected]>
r8169: fix data corruption issue on RTL8402Cong Wang <[email protected]>
net_sched: remove a redundant goto chain checkMaciej Żenczykowski <[email protected]>
net/ipv4: always honour route mtu during forwardingMarc Kleine-Budde <[email protected]>
net: j1939:j1939_session_fresh_new(): fix missing initialization of skbcntCong Wang <[email protected]>
can: j1935:j1939_tp_tx_dat_new(): fix missing initialization of skbcntLucas Stach <[email protected]>
can:m_can_platform: don't callm_can_class_suspendin runtime suspendChristian Eggers <[email protected]>
socket: don't clearSOCK_TSTAMP_NEWwhenSO_TIMESTAMPNSis disabledChristian Eggers <[email protected]>
socket: fix optionSO_TIMESTAMPING_NEWCong Wang <[email protected]>
tipc: fix theskb_unshare()intipc_buf_append()Wilken Gottwalt <[email protected]>
net: usb:qmi_wwan: add Cellient MPL200 cardRohit Maheshwari <[email protected]>
net/tls: sendfile fails with ktls offloadKarsten Graul <[email protected]>
net/smc: fix valid DMBE buffer sizesKarsten Graul <[email protected]>
net/smc: fix use-after-free of delayed eventsLeon Romanovsky <[email protected]>
net: sched: Fix suspicious RCU usage while accessingtcf_tunnel_infoDavide Caratti <[email protected]>
net: mptcp: make DACK4/DACK8 usage consistent among all subflowsAlex Elder <[email protected]>
net: ipa: skip suspend/resume activities if not set upYonghong Song <[email protected]>
net: fix pos incrementment inipv6_route_seq_nextMarek Vasut <[email protected]>
net: fec: Fix PHY init afterphy_reset_after_clk_enable()Marek Vasut <[email protected]>
net: fec: Fixphy_devicelookup forphy_reset_after_clk_enable()Christian Eggers <[email protected]>
net: dsa: microchip: fix race conditionJonathan Lemon <[email protected]>
mlx4: handle non-napi callers tonapi_pollDavid Ahern <[email protected]>
ipv4: Restoreflowi4_oifupdate before call toxfrm_lookup_routeDavid Wilder <[email protected]>
ibmveth: Identify ingress large send packets.David Wilder <[email protected]>
ibmveth: Switch order ofibmveth_helpercalls.Herat Ramani <[email protected]>
xgb4: handle 4-tuple PEDIT to NAT mode translation-------------
Diffstat:
Documentation/admin-guide/kernel-parameters.txt | 2 +- .../crypto/allwinner,sun4i-a10-crypto.yaml | 7 +- .../devicetree/bindings/net/socionext-netsec.txt | 4 +- Documentation/networking/ip-sysctl.rst | 4 +- Makefile | 4 +- arch/arc/plat-hsdk/Kconfig | 1 + arch/arm/boot/dts/imx6sl.dtsi | 2 + arch/arm/boot/dts/iwg20d-q7-common.dtsi | 15 +- arch/arm/boot/dts/meson8.dtsi | 2 - arch/arm/boot/dts/owl-s500.dtsi | 6 +- arch/arm/boot/dts/stm32mp157c-lxa-mc1.dts | 2 - arch/arm/boot/dts/stm32mp15xx-dhcom-pdk2.dtsi | 35 +-- arch/arm/boot/dts/stm32mp15xx-dhcom-som.dtsi | 38 ++- arch/arm/boot/dts/stm32mp15xx-dhcor-avenger96.dtsi | 6 +- arch/arm/boot/dts/sun8i-r40-bananapi-m2-ultra.dts | 10 +- arch/arm/mach-at91/pm.c | 1 + arch/arm/mach-omap2/cpuidle44xx.c | 4 +- arch/arm/mach-s3c24xx/mach-at2440evb.c | 2 +- arch/arm/mach-s3c24xx/mach-h1940.c | 4 +- arch/arm/mach-s3c24xx/mach-mini2440.c | 4 +- arch/arm/mach-s3c24xx/mach-n30.c | 4 +- arch/arm/mach-s3c24xx/mach-rx1950.c | 4 +- arch/arm/mm/cache-l2x0.c | 16 +- arch/arm64/boot/dts/actions/s700.dtsi | 2 +- arch/arm64/boot/dts/allwinner/sun50i-h5.dtsi | 6 +- arch/arm64/boot/dts/amlogic/meson-khadas-vim3.dtsi | 4 +- arch/arm64/boot/dts/freescale/imx8mq.dtsi | 1 + arch/arm64/boot/dts/mediatek/mt8173-elm.dtsi | 5 +- arch/arm64/boot/dts/qcom/msm8916.dtsi | 10 +- arch/arm64/boot/dts/qcom/pm8916.dtsi | 2 +- arch/arm64/boot/dts/qcom/sc7180.dtsi | 6 +- arch/arm64/boot/dts/renesas/r8a774c0.dtsi | 5 +- arch/arm64/boot/dts/renesas/r8a77990.dtsi | 5 +- arch/arm64/boot/dts/xilinx/zynqmp.dtsi | 4 +- arch/arm64/include/asm/insn.h | 4 + arch/arm64/include/asm/memory.h | 5 +- arch/arm64/include/asm/pgtable.h | 4 +- arch/arm64/kernel/cpu_errata.c | 7 +- arch/arm64/kernel/insn.c | 5 +- arch/arm64/kernel/perf_event.c | 5 + arch/arm64/kernel/probes/decode-insn.c | 3 +- arch/arm64/mm/init.c | 30 +-- arch/m68k/coldfire/device.c | 6 +- arch/microblaze/include/asm/Kbuild | 1 - arch/powerpc/include/asm/book3s/64/hash-4k.h | 13 +- arch/powerpc/include/asm/drmem.h | 39 ++- arch/powerpc/include/asm/hw_breakpoint.h | 1 + arch/powerpc/include/asm/reg.h | 2 +- arch/powerpc/include/asm/svm.h | 4 + arch/powerpc/include/asm/tlb.h | 13 - arch/powerpc/kernel/hw_breakpoint.c | 14 +- arch/powerpc/kernel/irq.c | 9 +- arch/powerpc/kernel/ptrace/ptrace-noadv.c | 1 + arch/powerpc/kernel/tau_6xx.c | 147 ++++------ arch/powerpc/mm/book3s64/radix_tlb.c | 23 +- arch/powerpc/mm/drmem.c | 6 +- arch/powerpc/mm/kasan/kasan_init_32.c | 12 +- arch/powerpc/mm/mem.c | 6 +- arch/powerpc/perf/hv-gpci-requests.h | 6 +- arch/powerpc/perf/isa207-common.c | 10 + arch/powerpc/platforms/Kconfig | 14 +- arch/powerpc/platforms/powernv/opal-dump.c | 41 ++- arch/powerpc/platforms/pseries/hotplug-memory.c | 24 +- arch/powerpc/platforms/pseries/papr_scm.c | 3 + arch/powerpc/platforms/pseries/ras.c | 118 ++++---- arch/powerpc/platforms/pseries/rng.c | 1 + arch/powerpc/platforms/pseries/svm.c | 26 ++ arch/powerpc/sysdev/xics/icp-hv.c | 1 + arch/powerpc/xmon/xmon.c | 1 + arch/s390/pci/pci_bus.c | 5 +- arch/um/drivers/vector_kern.c | 4 +- arch/um/kernel/time.c | 14 +- arch/x86/boot/compressed/pgtable_64.c | 9 - arch/x86/events/amd/iommu.c | 2 +- arch/x86/events/core.c | 6 +- arch/x86/events/intel/ds.c | 32 ++- arch/x86/events/intel/uncore_snb.c | 31 ++- arch/x86/events/intel/uncore_snbep.c | 12 +- arch/x86/events/perf_event.h | 1 + arch/x86/include/asm/special_insns.h | 28 +- arch/x86/kernel/cpu/common.c | 4 +- arch/x86/kernel/cpu/mce/core.c | 99 +++++-- arch/x86/kernel/cpu/mce/internal.h | 10 + arch/x86/kernel/cpu/mce/severity.c | 28 +- arch/x86/kernel/dumpstack.c | 3 +- arch/x86/kernel/fpu/init.c | 30 ++- arch/x86/kernel/nmi.c | 5 +- arch/x86/kvm/emulate.c | 2 +- arch/x86/kvm/ioapic.c | 5 +- arch/x86/kvm/kvm_cache_regs.h | 2 +- arch/x86/kvm/lapic.c | 7 + arch/x86/kvm/lapic.h | 1 + arch/x86/kvm/mmu/mmu.c | 1 + arch/x86/kvm/svm/avic.c | 1 + arch/x86/kvm/vmx/nested.c | 14 +- block/blk-core.c | 9 +- block/blk-mq-sysfs.c | 2 - block/blk-sysfs.c | 9 +- crypto/algif_aead.c | 7 +- crypto/algif_skcipher.c | 2 +- drivers/android/binder.c | 37 +-- drivers/bluetooth/btusb.c | 1 + drivers/bluetooth/hci_ldisc.c | 1 + drivers/bluetooth/hci_serdev.c | 2 + drivers/bus/mhi/core/Makefile | 2 +- drivers/char/ipmi/ipmi_si_intf.c | 2 +- drivers/clk/at91/clk-main.c | 11 +- drivers/clk/bcm/clk-bcm2835.c | 4 +- drivers/clk/imx/clk-imx8mq.c | 4 +- drivers/clk/keystone/sci-clk.c | 2 +- drivers/clk/mediatek/clk-mt6779.c | 2 + drivers/clk/meson/axg-audio.c | 135 +++++++++- drivers/clk/meson/g12a.c | 11 + drivers/clk/qcom/gcc-sdm660.c | 2 +- drivers/clk/rockchip/clk-half-divider.c | 2 +- drivers/clocksource/hyperv_timer.c | 4 +- drivers/cpufreq/armada-37xx-cpufreq.c | 6 + drivers/cpufreq/powernv-cpufreq.c | 9 +- drivers/crypto/allwinner/sun8i-ce/sun8i-ce-core.c | 5 +- drivers/crypto/caam/Kconfig | 1 + drivers/crypto/caam/caamalg_qi.c | 81 +++++- drivers/crypto/ccp/ccp-ops.c | 2 +- drivers/crypto/ccree/cc_pm.c | 6 +- drivers/crypto/chelsio/chtls/chtls_cm.c | 19 +- drivers/crypto/chelsio/chtls/chtls_io.c | 5 +- drivers/crypto/hisilicon/sec2/sec_crypto.c | 16 +- drivers/crypto/ixp4xx_crypto.c | 2 +- drivers/crypto/mediatek/mtk-platform.c | 8 +- drivers/crypto/omap-sham.c | 3 + drivers/crypto/picoxcell_crypto.c | 9 +- drivers/crypto/stm32/Kconfig | 1 + drivers/crypto/stm32/stm32-crc32.c | 15 +- drivers/dma/dmatest.c | 5 +- drivers/dma/dw/core.c | 4 + drivers/dma/dw/dw.c | 2 +- drivers/dma/dw/of.c | 7 +- drivers/dma/ioat/dma.c | 2 +- drivers/edac/aspeed_edac.c | 4 +- drivers/edac/i5100_edac.c | 11 +- drivers/edac/ti_edac.c | 3 +- drivers/firmware/arm_scmi/mailbox.c | 2 +- drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 3 +- drivers/gpu/drm/amd/display/dc/core/dc.c | 2 +- .../gpu/drm/amd/display/dc/dce/dce_panel_cntl.c | 2 +- .../gpu/drm/amd/display/dc/dcn20/dcn20_resource.c | 3 + .../gpu/drm/amd/display/dc/dcn21/dcn21_resource.c | 3 + drivers/gpu/drm/drm_debugfs_crc.c | 4 +- drivers/gpu/drm/drm_gem_vram_helper.c | 28 +- drivers/gpu/drm/gma500/cdv_intel_dp.c | 2 +- drivers/gpu/drm/mediatek/mtk_drm_crtc.c | 2 +- drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c | 2 +- drivers/gpu/drm/msm/adreno/adreno_gpu.c | 10 +- drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c | 8 +- drivers/gpu/drm/mxsfb/mxsfb_drv.c | 21 +- drivers/gpu/drm/panel/panel-simple.c | 4 +- drivers/gpu/drm/panfrost/panfrost_device.h | 3 + drivers/gpu/drm/panfrost/panfrost_drv.c | 11 + drivers/gpu/drm/panfrost/panfrost_gpu.c | 22 +- drivers/gpu/drm/panfrost/panfrost_gpu.h | 2 + drivers/gpu/drm/panfrost/panfrost_regs.h | 4 + drivers/gpu/drm/rcar-du/rcar_du_vsp.c | 12 + drivers/gpu/drm/vgem/vgem_drv.c | 2 +- drivers/gpu/drm/virtio/virtgpu_kms.c | 2 + drivers/gpu/drm/virtio/virtgpu_vq.c | 10 +- drivers/gpu/drm/vkms/vkms_composer.c | 2 +- drivers/gpu/drm/vkms/vkms_drv.c | 2 +- drivers/hid/hid-ids.h | 2 + drivers/hid/hid-input.c | 4 +- drivers/hid/hid-ite.c | 4 + drivers/hid/hid-multitouch.c | 6 + drivers/hid/hid-roccat-kone.c | 23 +- drivers/hwmon/bt1-pvt.c | 138 +++++++--- drivers/hwmon/bt1-pvt.h | 3 + drivers/hwmon/pmbus/max34440.c | 3 - drivers/hwmon/w83627ehf.c | 6 +- drivers/hwtracing/coresight/coresight-cti.c | 41 +-- drivers/hwtracing/coresight/coresight-etm-perf.c | 14 +- .../hwtracing/coresight/coresight-etm4x-sysfs.c | 2 +- drivers/hwtracing/coresight/coresight-etm4x.c | 105 ++++---- drivers/hwtracing/coresight/coresight-etm4x.h | 3 + drivers/hwtracing/coresight/coresight-platform.c | 10 +- drivers/hwtracing/coresight/coresight.c | 2 +- drivers/i2c/busses/Kconfig | 1 + drivers/i2c/i2c-core-acpi.c | 11 +- drivers/i3c/master.c | 19 +- drivers/i3c/master/i3c-master-cdns.c | 4 +- drivers/iio/adc/stm32-adc-core.c | 9 +- drivers/infiniband/core/cma.c | 300 +++++++++------------ drivers/infiniband/core/cq.c | 30 +-- drivers/infiniband/core/ucma.c | 6 +- drivers/infiniband/core/umem.c | 15 +- drivers/infiniband/core/verbs.c | 9 +- drivers/infiniband/hw/bnxt_re/ib_verbs.c | 3 +- drivers/infiniband/hw/bnxt_re/ib_verbs.h | 2 +- drivers/infiniband/hw/cxgb4/cq.c | 3 +- drivers/infiniband/hw/cxgb4/iw_cxgb4.h | 2 +- drivers/infiniband/hw/efa/efa.h | 2 +- drivers/infiniband/hw/efa/efa_verbs.c | 3 +- drivers/infiniband/hw/hns/hns_roce_cq.c | 3 +- drivers/infiniband/hw/hns/hns_roce_device.h | 4 +- drivers/infiniband/hw/hns/hns_roce_hw_v1.c | 4 +- drivers/infiniband/hw/hns/hns_roce_hw_v2.c | 41 ++- drivers/infiniband/hw/hns/hns_roce_hw_v2.h | 2 + drivers/infiniband/hw/hns/hns_roce_qp.c | 6 +- drivers/infiniband/hw/i40iw/i40iw.h | 9 +- drivers/infiniband/hw/i40iw/i40iw_cm.c | 10 +- drivers/infiniband/hw/i40iw/i40iw_hw.c | 4 +- drivers/infiniband/hw/i40iw/i40iw_utils.c | 59 +--- drivers/infiniband/hw/i40iw/i40iw_verbs.c | 34 ++- drivers/infiniband/hw/i40iw/i40iw_verbs.h | 3 +- drivers/infiniband/hw/mlx4/cm.c | 3 + drivers/infiniband/hw/mlx4/cq.c | 3 +- drivers/infiniband/hw/mlx4/mad.c | 34 ++- drivers/infiniband/hw/mlx4/mlx4_ib.h | 4 +- drivers/infiniband/hw/mlx5/cq.c | 14 +- drivers/infiniband/hw/mlx5/main.c | 4 +- drivers/infiniband/hw/mlx5/mlx5_ib.h | 2 +- drivers/infiniband/hw/mlx5/mr.c | 64 ++--- drivers/infiniband/hw/mthca/mthca_provider.c | 3 +- drivers/infiniband/hw/ocrdma/ocrdma_verbs.c | 3 +- drivers/infiniband/hw/ocrdma/ocrdma_verbs.h | 2 +- drivers/infiniband/hw/qedr/main.c | 2 +- drivers/infiniband/hw/qedr/qedr_iw_cm.c | 6 +- drivers/infiniband/hw/qedr/verbs.c | 63 +++-- drivers/infiniband/hw/qedr/verbs.h | 2 +- drivers/infiniband/hw/usnic/usnic_ib_verbs.c | 4 +- drivers/infiniband/hw/usnic/usnic_ib_verbs.h | 2 +- drivers/infiniband/hw/vmw_pvrdma/pvrdma_cq.c | 3 +- drivers/infiniband/hw/vmw_pvrdma/pvrdma_verbs.h | 2 +- drivers/infiniband/sw/rdmavt/cq.c | 3 +- drivers/infiniband/sw/rdmavt/cq.h | 2 +- drivers/infiniband/sw/rdmavt/vt.c | 4 +- drivers/infiniband/sw/rxe/rxe_recv.c | 20 +- drivers/infiniband/sw/rxe/rxe_verbs.c | 3 +- drivers/infiniband/sw/siw/siw_verbs.c | 3 +- drivers/infiniband/sw/siw/siw_verbs.h | 2 +- drivers/infiniband/ulp/ipoib/ipoib_main.c | 2 + drivers/infiniband/ulp/ipoib/ipoib_netlink.c | 11 + drivers/infiniband/ulp/ipoib/ipoib_vlan.c | 2 + drivers/infiniband/ulp/rtrs/rtrs-srv.c | 76 +++++- drivers/infiniband/ulp/rtrs/rtrs-srv.h | 7 + drivers/input/keyboard/ep93xx_keypad.c | 4 +- drivers/input/keyboard/omap4-keypad.c | 6 +- drivers/input/keyboard/twl4030_keypad.c | 8 +- drivers/input/serio/sun4i-ps2.c | 9 +- drivers/input/touchscreen/elants_i2c.c | 2 +- drivers/input/touchscreen/imx6ul_tsc.c | 27 +- drivers/input/touchscreen/stmfts.c | 2 +- drivers/iommu/qcom_iommu.c | 8 +- drivers/lightnvm/core.c | 5 +- drivers/mailbox/mailbox.c | 12 +- drivers/mailbox/mtk-cmdq-mailbox.c | 8 +- drivers/md/md-bitmap.c | 3 +- drivers/md/md-cluster.c | 1 + drivers/media/firewire/firedtv-fw.c | 6 +- drivers/media/i2c/m5mols/m5mols_core.c | 3 +- drivers/media/i2c/ov5640.c | 196 ++++++++------ drivers/media/i2c/tc358743.c | 14 +- drivers/media/pci/bt8xx/bttv-driver.c | 13 +- drivers/media/pci/saa7134/saa7134-tvaudio.c | 3 +- drivers/media/platform/exynos4-is/fimc-isp.c | 4 +- drivers/media/platform/exynos4-is/fimc-lite.c | 2 +- drivers/media/platform/exynos4-is/media-dev.c | 8 +- drivers/media/platform/exynos4-is/mipi-csis.c | 4 +- drivers/media/platform/mx2_emmaprp.c | 7 +- drivers/media/platform/omap3isp/isp.c | 6 +- drivers/media/platform/qcom/camss/camss-csiphy.c | 4 +- drivers/media/platform/qcom/venus/core.c | 20 +- drivers/media/platform/qcom/venus/vdec.c | 10 +- drivers/media/platform/rcar-fcp.c | 4 +- drivers/media/platform/rcar-vin/rcar-csi2.c | 24 +- drivers/media/platform/rcar-vin/rcar-dma.c | 4 +- drivers/media/platform/rcar_drif.c | 30 +-- drivers/media/platform/rockchip/rga/rga-buf.c | 1 + drivers/media/platform/s3c-camif/camif-core.c | 5 +- drivers/media/platform/s5p-mfc/s5p_mfc_pm.c | 4 +- drivers/media/platform/sti/bdisp/bdisp-v4l2.c | 3 +- drivers/media/platform/sti/delta/delta-v4l2.c | 4 +- drivers/media/platform/sti/hva/hva-hw.c | 4 +- drivers/media/platform/stm32/stm32-dcmi.c | 4 +- drivers/media/platform/ti-vpe/vpe.c | 2 + drivers/media/platform/vsp1/vsp1_drv.c | 11 +- drivers/media/rc/ati_remote.c | 4 + drivers/media/test-drivers/vivid/vivid-meta-out.c | 9 +- drivers/media/tuners/tuner-simple.c | 5 +- drivers/media/usb/uvc/uvc_ctrl.c | 6 +- drivers/media/usb/uvc/uvc_entity.c | 35 +++ drivers/media/usb/uvc/uvc_v4l2.c | 30 +++ drivers/memory/fsl-corenet-cf.c | 6 +- drivers/memory/omap-gpmc.c | 8 +- drivers/mfd/sm501.c | 8 +- drivers/misc/cardreader/rtsx_pcr.c | 4 +- drivers/misc/eeprom/at25.c | 2 +- drivers/misc/habanalabs/gaudi/gaudi.c | 8 +- drivers/misc/habanalabs/goya/goya.c | 8 +- drivers/misc/mic/scif/scif_rma.c | 4 +- drivers/misc/mic/vop/vop_main.c | 2 +- drivers/misc/mic/vop/vop_vringh.c | 24 +- drivers/misc/ocxl/Kconfig | 3 +- drivers/misc/vmw_vmci/vmci_queue_pair.c | 10 +- drivers/mmc/core/sdio_cis.c | 3 + drivers/mtd/hyperbus/hbmc-am654.c | 4 +- drivers/mtd/lpddr/lpddr2_nvm.c | 35 +-- drivers/mtd/mtdoops.c | 11 +- drivers/mtd/nand/raw/ams-delta.c | 2 + drivers/mtd/nand/raw/stm32_fmc2_nand.c | 2 +- drivers/mtd/nand/raw/vf610_nfc.c | 6 +- drivers/mtd/nand/spi/gigadevice.c | 14 +- drivers/net/can/flexcan.c | 34 ++- drivers/net/can/m_can/m_can_platform.c | 2 - drivers/net/dsa/microchip/ksz_common.c | 16 +- drivers/net/dsa/realtek-smi-core.h | 4 +- drivers/net/dsa/rtl8366.c | 280 ++++++++++--------- drivers/net/dsa/rtl8366rb.c | 2 +- .../net/ethernet/chelsio/cxgb4/cxgb4_tc_flower.c | 175 +++++++++++- .../net/ethernet/chelsio/cxgb4/cxgb4_tc_flower.h | 15 ++ drivers/net/ethernet/cisco/enic/enic.h | 1 + drivers/net/ethernet/cisco/enic/enic_api.c | 6 + drivers/net/ethernet/cisco/enic/enic_main.c | 27 +- drivers/net/ethernet/faraday/ftgmac100.c | 5 + drivers/net/ethernet/faraday/ftgmac100.h | 8 + drivers/net/ethernet/freescale/fec_main.c | 35 ++- drivers/net/ethernet/ibm/ibmveth.c | 19 +- drivers/net/ethernet/ibm/ibmvnic.c | 10 +- drivers/net/ethernet/ibm/ibmvnic.h | 2 +- drivers/net/ethernet/korina.c | 3 +- drivers/net/ethernet/mediatek/Kconfig | 1 + drivers/net/ethernet/mellanox/mlx4/en_rx.c | 3 + drivers/net/ethernet/mellanox/mlx4/en_tx.c | 2 +- .../net/ethernet/mellanox/mlx5/core/en/health.c | 2 +- .../net/ethernet/mellanox/mlx5/core/lib/clock.c | 5 +- drivers/net/ethernet/realtek/r8169_main.c | 12 +- drivers/net/ethernet/socionext/netsec.c | 24 +- drivers/net/ethernet/stmicro/stmmac/stmmac_main.c | 41 +-- drivers/net/ipa/ipa_endpoint.c | 6 + drivers/net/usb/qmi_wwan.c | 1 + drivers/net/wan/hdlc.c | 10 +- drivers/net/wan/hdlc_raw_eth.c | 1 + drivers/net/wireless/ath/ath10k/ce.c | 2 +- drivers/net/wireless/ath/ath10k/htt_rx.c | 8 + drivers/net/wireless/ath/ath10k/mac.c | 2 +- drivers/net/wireless/ath/ath11k/ahb.c | 10 +- drivers/net/wireless/ath/ath11k/mac.c | 4 +- drivers/net/wireless/ath/ath11k/qmi.c | 1 + drivers/net/wireless/ath/ath6kl/main.c | 3 + drivers/net/wireless/ath/ath6kl/wmi.c | 5 + drivers/net/wireless/ath/ath9k/hif_usb.c | 19 ++ drivers/net/wireless/ath/ath9k/htc_hst.c | 2 + drivers/net/wireless/ath/wcn36xx/main.c | 2 +- .../wireless/broadcom/brcm80211/brcmfmac/core.c | 2 +- .../wireless/broadcom/brcm80211/brcmfmac/msgbuf.c | 2 + .../broadcom/brcm80211/brcmsmac/phy/phy_lcn.c | 4 +- drivers/net/wireless/intel/iwlwifi/iwl-dbg-tlv.c | 8 +- drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c | 9 +- drivers/net/wireless/marvell/mwifiex/scan.c | 2 +- drivers/net/wireless/marvell/mwifiex/sdio.c | 2 + drivers/net/wireless/marvell/mwifiex/usb.c | 3 +- drivers/net/wireless/mediatek/mt76/mt7915/mcu.c | 18 +- drivers/net/wireless/quantenna/qtnfmac/commands.c | 2 + .../net/wireless/realtek/rtl8xxxu/rtl8xxxu_core.c | 10 +- drivers/net/wireless/realtek/rtw88/main.c | 5 + drivers/net/wireless/realtek/rtw88/pci.c | 2 + drivers/net/wireless/realtek/rtw88/pci.h | 4 +- drivers/net/wireless/realtek/rtw88/phy.c | 5 +- drivers/ntb/hw/amd/ntb_hw_amd.c | 1 + drivers/ntb/hw/intel/ntb_hw_gen1.c | 2 +- drivers/nvme/target/core.c | 3 +- drivers/nvmem/core.c | 38 ++- drivers/opp/core.c | 6 + drivers/pci/controller/dwc/pcie-designware-ep.c | 3 +- drivers/pci/controller/pci-aardvark.c | 13 +- drivers/pci/controller/pci-hyperv.c | 50 +++- drivers/pci/controller/pcie-iproc-msi.c | 13 +- drivers/pci/iov.c | 1 + drivers/perf/thunderx2_pmu.c | 7 +- drivers/perf/xgene_pmu.c | 32 +-- drivers/pinctrl/aspeed/pinctrl-aspeed.c | 2 +- drivers/pinctrl/bcm/Kconfig | 1 + drivers/pinctrl/devicetree.c | 5 +- drivers/pinctrl/pinctrl-mcp23s08.c | 24 +- drivers/pinctrl/qcom/pinctrl-msm.c | 10 +- drivers/platform/chrome/cros_ec_lightbar.c | 2 + drivers/platform/x86/mlx-platform.c | 15 +- drivers/pwm/pwm-img.c | 3 +- drivers/pwm/pwm-lpss.c | 7 +- drivers/pwm/pwm-rockchip.c | 5 +- drivers/rapidio/devices/rio_mport_cdev.c | 18 +- drivers/ras/cec.c | 9 +- drivers/regulator/core.c | 21 +- drivers/remoteproc/mtk_scp_ipi.c | 4 +- drivers/rpmsg/mtk_rpmsg.c | 9 +- drivers/rpmsg/qcom_smd.c | 32 ++- drivers/rtc/rtc-ds1307.c | 4 + drivers/s390/net/qeth_core.h | 6 + drivers/s390/net/qeth_l2_main.c | 59 +++- drivers/s390/net/qeth_l2_sys.c | 1 + drivers/scsi/be2iscsi/be_main.c | 4 +- drivers/scsi/bfa/bfad.c | 1 + drivers/scsi/csiostor/csio_hw.c | 2 +- drivers/scsi/ibmvscsi/ibmvfc.c | 1 + drivers/scsi/mpt3sas/mpt3sas_base.c | 14 +- drivers/scsi/mvumi.c | 1 + drivers/scsi/qedf/qedf_main.c | 2 +- drivers/scsi/qedi/qedi_fw.c | 23 +- drivers/scsi/qedi/qedi_iscsi.c | 2 + drivers/scsi/qedi/qedi_main.c | 10 + drivers/scsi/qla2xxx/qla_init.c | 10 + drivers/scsi/qla2xxx/qla_inline.h | 5 + drivers/scsi/qla2xxx/qla_mbx.c | 2 +- drivers/scsi/qla2xxx/qla_nvme.c | 2 +- drivers/scsi/qla2xxx/qla_target.c | 2 +- drivers/scsi/qla4xxx/ql4_os.c | 2 +- drivers/scsi/smartpqi/smartpqi.h | 2 +- drivers/scsi/smartpqi/smartpqi_init.c | 101 ++++--- drivers/scsi/ufs/ufs-mediatek.c | 6 - drivers/scsi/ufs/ufs-qcom.c | 5 - drivers/scsi/ufs/ufshcd.c | 3 + drivers/slimbus/core.c | 6 +- drivers/slimbus/qcom-ngd-ctrl.c | 4 + drivers/soc/fsl/qbman/bman.c | 2 +- drivers/soc/mediatek/mtk-cmdq-helper.c | 5 +- drivers/soc/qcom/apr.c | 2 +- drivers/soc/qcom/pdr_internal.h | 2 +- drivers/soc/xilinx/zynqmp_power.c | 2 +- drivers/spi/spi-dw-pci.c | 16 +- drivers/spi/spi-fsi.c | 99 +++++-- drivers/spi/spi-omap2-mcspi.c | 17 +- drivers/spi/spi-s3c64xx.c | 52 +++- drivers/staging/emxx_udc/emxx_udc.c | 4 +- drivers/staging/media/atomisp/pci/sh_css.c | 2 +- drivers/staging/media/hantro/hantro_h264.c | 2 +- drivers/staging/media/hantro/hantro_postproc.c | 4 +- drivers/staging/media/ipu3/ipu3-css-params.c | 2 +- .../phy-rockchip-dphy-rx0/phy-rockchip-dphy-rx0.c | 1 + drivers/staging/rtl8192u/ieee80211/ieee80211_rx.c | 2 +- drivers/staging/wfx/data_rx.c | 2 +- drivers/staging/wilc1000/mon.c | 3 +- drivers/staging/wilc1000/sdio.c | 5 +- drivers/staging/wilc1000/spi.c | 5 +- drivers/target/target_core_user.c | 2 +- drivers/tty/hvc/Kconfig | 1 + drivers/tty/hvc/hvcs.c | 14 +- drivers/tty/ipwireless/network.c | 4 +- drivers/tty/ipwireless/tty.c | 2 +- drivers/tty/pty.c | 2 +- drivers/tty/serial/Kconfig | 1 + drivers/tty/serial/fsl_lpuart.c | 16 +- drivers/usb/cdns3/gadget.c | 2 +- drivers/usb/class/cdc-acm.c | 23 ++ drivers/usb/class/cdc-wdm.c | 72 +++-- drivers/usb/core/urb.c | 89 +++--- drivers/usb/dwc2/gadget.c | 40 ++- drivers/usb/dwc2/params.c | 2 +- drivers/usb/dwc2/platform.c | 6 +- drivers/usb/dwc3/core.c | 60 +++-- drivers/usb/dwc3/core.h | 7 + drivers/usb/dwc3/dwc3-of-simple.c | 1 + drivers/usb/gadget/function/f_ncm.c | 8 +- drivers/usb/gadget/function/f_printer.c | 16 +- drivers/usb/gadget/function/u_ether.c | 2 +- drivers/usb/gadget/function/u_serial.c | 1 + drivers/usb/gadget/udc/bcm63xx_udc.c | 1 + drivers/usb/host/ohci-hcd.c | 16 +- drivers/usb/host/xhci.c | 3 +- drivers/vfio/pci/vfio_pci_config.c | 24 +- drivers/vfio/pci/vfio_pci_intrs.c | 4 +- drivers/vfio/vfio.c | 9 +- drivers/vfio/vfio_iommu_type1.c | 6 +- drivers/video/backlight/sky81452-backlight.c | 1 + drivers/video/fbdev/aty/radeon_base.c | 2 +- drivers/video/fbdev/core/fbmem.c | 4 + drivers/video/fbdev/sis/init.c | 11 +- drivers/video/fbdev/vga16fb.c | 14 +- drivers/virt/fsl_hypervisor.c | 17 +- drivers/watchdog/sp5100_tco.h | 2 +- drivers/watchdog/watchdog_dev.c | 6 +- fs/afs/cell.c | 283 +++++++++++-------- fs/afs/dynroot.c | 23 +- fs/afs/internal.h | 15 +- fs/afs/main.c | 2 +- fs/afs/mntpt.c | 4 +- fs/afs/proc.c | 23 +- fs/afs/super.c | 16 +- fs/afs/vl_alias.c | 8 +- fs/afs/vl_rotate.c | 2 +- fs/afs/volume.c | 4 +- fs/btrfs/extent-io-tree.h | 1 + fs/btrfs/volumes.c | 7 +- fs/cifs/asn1.c | 16 +- fs/cifs/cifsacl.c | 5 +- fs/cifs/cifsproto.h | 2 + fs/cifs/connect.c | 5 +- fs/cifs/readdir.c | 5 +- fs/cifs/smb2ops.c | 21 +- fs/crypto/policy.c | 9 +- fs/d_path.c | 6 +- fs/dlm/config.c | 3 + fs/ext4/ext4.h | 2 +- fs/ext4/fsmap.c | 3 + fs/ext4/mballoc.c | 37 ++- fs/f2fs/inode.c | 7 + fs/f2fs/sysfs.c | 1 + fs/iomap/buffered-io.c | 25 +- fs/iomap/direct-io.c | 10 + fs/nfs/fs_context.c | 1 + fs/ntfs/inode.c | 6 + fs/proc/base.c | 3 +- fs/quota/quota_v2.c | 1 + fs/ramfs/file-nommu.c | 2 +- fs/reiserfs/inode.c | 3 +- fs/reiserfs/super.c | 8 +- fs/udf/inode.c | 25 +- fs/udf/super.c | 6 + fs/xfs/libxfs/xfs_rtbitmap.c | 11 +- fs/xfs/xfs_buf_item_recover.c | 2 + fs/xfs/xfs_file.c | 17 +- fs/xfs/xfs_fsmap.c | 48 ++-- fs/xfs/xfs_fsmap.h | 6 +- fs/xfs/xfs_ioctl.c | 144 ++++++---- fs/xfs/xfs_rtalloc.c | 11 + include/linux/bpf_verifier.h | 1 + include/linux/mailbox/mtk-cmdq-mailbox.h | 3 +- include/linux/oom.h | 1 + include/linux/overflow.h | 1 + include/linux/page_owner.h | 6 +- include/linux/pci.h | 1 + include/linux/platform_data/dma-dw.h | 2 + include/linux/sched/coredump.h | 1 + include/linux/soc/mediatek/mtk-cmdq.h | 5 +- include/net/ip.h | 6 + include/net/netfilter/nf_log.h | 1 + include/net/tc_act/tc_tunnel_key.h | 5 +- include/rdma/ib_umem.h | 9 +- include/rdma/ib_verbs.h | 68 +---- include/scsi/scsi_common.h | 7 + include/sound/hda_codec.h | 1 + include/trace/events/target.h | 12 +- include/uapi/linux/pci_regs.h | 1 + include/uapi/linux/perf_event.h | 2 +- kernel/bpf/percpu_freelist.c | 101 ++++++- kernel/bpf/percpu_freelist.h | 1 + kernel/bpf/verifier.c | 34 +++ kernel/debug/kdb/kdb_io.c | 8 +- kernel/events/core.c | 7 +- kernel/fork.c | 21 ++ kernel/module.c | 13 +- kernel/power/hibernate.c | 11 - kernel/rcu/rcutorture.c | 13 +- kernel/rcu/tree.c | 2 +- kernel/sched/core.c | 2 +- kernel/sched/fair.c | 20 +- kernel/sched/sched.h | 13 +- kernel/trace/trace_events_synth.c | 18 +- lib/crc32.c | 2 +- lib/idr.c | 1 + mm/filemap.c | 8 +- mm/huge_memory.c | 2 +- mm/memcontrol.c | 5 +- mm/oom_kill.c | 2 + mm/page_alloc.c | 4 +- mm/page_owner.c | 4 +- mm/swapfile.c | 4 +- net/bluetooth/hci_core.c | 11 + net/bluetooth/l2cap_sock.c | 7 +- net/bridge/netfilter/ebt_dnat.c | 2 +- net/bridge/netfilter/ebt_redirect.c | 2 +- net/bridge/netfilter/ebt_snat.c | 2 +- net/can/j1939/transport.c | 2 + net/core/filter.c | 3 +- net/core/skmsg.c | 14 +- net/core/sock.c | 13 +- net/ipv4/icmp.c | 7 +- net/ipv4/ip_gre.c | 15 +- net/ipv4/netfilter/nf_log_arp.c | 19 +- net/ipv4/netfilter/nf_log_ipv4.c | 6 +- net/ipv4/nexthop.c | 2 +- net/ipv4/route.c | 4 +- net/ipv4/tcp_input.c | 2 + net/ipv6/ip6_fib.c | 4 +- net/ipv6/netfilter/nf_log_ipv6.c | 8 +- net/mac80211/cfg.c | 3 +- net/mac80211/sta_info.c | 4 + net/mptcp/options.c | 3 +- net/mptcp/protocol.h | 2 +- net/mptcp/subflow.c | 3 +- net/netfilter/ipvs/ip_vs_ctl.c | 7 +- net/netfilter/ipvs/ip_vs_xmit.c | 6 + net/netfilter/nf_conntrack_proto_tcp.c | 19 +- net/netfilter/nf_dup_netdev.c | 1 + net/netfilter/nf_log_common.c | 12 + net/netfilter/nft_fwd_netdev.c | 1 + net/nfc/netlink.c | 2 +- net/sched/act_api.c | 14 - net/sched/act_ct.c | 4 +- net/sched/act_tunnel_key.c | 2 +- net/sched/cls_api.c | 2 +- net/smc/smc_core.c | 2 +- net/smc/smc_llc.c | 13 +- net/sunrpc/auth_gss/svcauth_gss.c | 27 +- net/sunrpc/xprtrdma/svc_rdma_sendto.c | 3 +- net/tipc/bcast.c | 10 +- net/tipc/msg.c | 3 +- net/tls/tls_device.c | 11 +- net/wireless/nl80211.c | 21 +- samples/bpf/xdpsock_user.c | 10 +- samples/mic/mpssd/mpssd.c | 4 +- scripts/package/builddeb | 6 +- scripts/package/mkdebian | 19 +- security/integrity/ima/ima_crypto.c | 2 + security/integrity/ima/ima_main.c | 10 + sound/core/seq/oss/seq_oss.c | 7 +- sound/firewire/bebob/bebob_hwdep.c | 3 +- sound/pci/hda/hda_intel.c | 14 +- sound/pci/hda/hda_jack.c | 22 +- sound/pci/hda/patch_ca0132.c | 24 +- sound/pci/hda/patch_hdmi.c | 20 +- sound/pci/hda/patch_realtek.c | 56 ++++ sound/soc/codecs/Kconfig | 1 + sound/soc/codecs/tas2770.c | 93 +++---- sound/soc/codecs/tlv320adcx140.c | 2 +- sound/soc/codecs/tlv320aic32x4.c | 9 +- sound/soc/codecs/wm_adsp.c | 20 +- sound/soc/fsl/fsl_sai.c | 19 +- sound/soc/fsl/fsl_sai.h | 1 + sound/soc/fsl/imx-es8328.c | 12 +- sound/soc/intel/boards/sof_rt5682.c | 13 + sound/soc/qcom/lpass-cpu.c | 16 -- sound/soc/qcom/lpass-platform.c | 3 +- sound/soc/soc-topology.c | 11 + sound/soc/sof/control.c | 11 + sound/soc/sof/intel/hda.c | 8 +- sound/soc/sof/sof-pci-dev.c | 24 ++ sound/usb/format.c | 1 + tools/build/Makefile.feature | 5 +- tools/build/feature/Makefile | 2 +- tools/build/feature/test-all.c | 10 - tools/lib/bpf/libbpf.c | 57 ++-- tools/lib/perf/evlist.c | 3 + tools/perf/Makefile.config | 4 +- tools/perf/Makefile.perf | 6 +- tools/perf/builtin-stat.c | 4 +- tools/perf/builtin-trace.c | 6 +- tools/perf/builtin-version.c | 1 - tools/perf/util/intel-pt.c | 8 +- tools/testing/radix-tree/idr-test.c | 29 ++ tools/testing/selftests/bpf/bench.c | 3 - tools/testing/selftests/bpf/benchs/bench_rename.c | 17 -- tools/testing/selftests/bpf/prog_tests/bpf_iter.c | 14 +- tools/testing/selftests/bpf/prog_tests/sk_assign.c | 2 +- .../testing/selftests/bpf/prog_tests/sockopt_sk.c | 4 +- .../selftests/bpf/prog_tests/test_overhead.c | 14 +- tools/testing/selftests/bpf/progs/test_overhead.c | 6 - .../selftests/bpf/progs/test_sysctl_loop1.c | 4 +- .../selftests/bpf/progs/test_sysctl_loop2.c | 4 +- tools/testing/selftests/bpf/progs/test_vmlinux.c | 12 +- .../trigger-inter-event-combined-hist.tc | 8 +- tools/testing/selftests/lkdtm/run.sh | 2 +- tools/testing/selftests/net/config | 1 + .../selftests/net/forwarding/vxlan_asymmetric.sh | 10 + .../selftests/net/forwarding/vxlan_symmetric.sh | 10 + tools/testing/selftests/net/mptcp/mptcp_connect.sh | 4 +- tools/testing/selftests/net/mptcp/mptcp_join.sh | 4 +- tools/testing/selftests/net/rtnetlink.sh | 5 + tools/testing/selftests/powerpc/eeh/eeh-basic.sh | 9 +- tools/testing/selftests/vm/config | 1 + 665 files changed, 5459 insertions(+), 2941 deletions(-)
Signature · 2 lines
software engineer rajagiri school of engineering and technology - autonomous
Quoted 9 lines · Greg Kroah-Hartman
This is the start of the stable review cycle for the 5.8.17 release. There are 633 patches in this series, all will be posted as a response to this one. If anyone has any issues with these being applied, please let me know.
Responses should be made by Thu, 29 Oct 2020 13:53:43 +0000. Anything received after that time might be too late.
The whole patch series can be found in one patch at:
Quoted 8 lines
https://www.kernel.org/pub/linux/kernel/v5.x/stable-review/patch-5.8.17-rc1.gzor in the git tree and branch at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.gitlinux-5.8.y
and the diffstat can be found below.thanks,
greg k-h
All tests passing for Tegra ...
Test results for stable-v5.8:
15 builds: 15 pass, 0 fail
26 boots: 26 pass, 0 fail
60 tests: 60 pass, 0 failLinux version: 5.8.17-rc1-g5be39e9f29ce
Boards tested: tegra124-jetson-tk1, tegra186-p2771-0000,
tegra194-p2972-0000, tegra20-ventana,
tegra210-p2371-2180, tegra210-p3450-0000,
tegra30-cardhu-a04Jon
A message that is not in the archive (sent off-list or not yet received): [email protected]
Retry
Quoted 18 lines · Guenter Roeck
Quoted 8 lines · Greg Kroah-Hartman
This is the start of the stable review cycle for the 5.8.17 release. There are 633 patches in this series, all will be posted as a response to this one. If anyone has any issues with these being applied, please let me know.
Responses should be made by Thu, 29 Oct 2020 13:53:43 +0000. Anything received after that time might be too late.
Build results:
total: 154 pass: 154 fail: 0 Qemu test results: total: 426 pass: 426 fail: 0Tested-by Guenter Roeck <[email protected]>Guenter
Quoted 10 lines · Greg Kroah-Hartman
This is the start of the stable review cycle for the 5.8.17 release. There are 633 patches in this series, all will be posted as a response to this one. If anyone has any issues with these being applied, please let me know.
Responses should be made by Thu, 29 Oct 2020 13:53:43 +0000. Anything received after that time might be too late.
The whole patch series can be found in one patch at:
Quoted 8 lines
https://www.kernel.org/pub/linux/kernel/v5.x/stable-review/patch-5.8.17-rc1.gzor in the git tree and branch at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.gitlinux-5.8.y
and the diffstat can be found below.thanks,
greg k-h
Results from Linaro’s test farm.
No regressions on arm64, arm, x86_64, and i386.
NOTE:
The Kunit test is a part of the LKFT test plan from now on 5.8, 5.9 and Linus mainline and Linux next master branches.
Summary
------------------------------------------------------------------------
kernel: 5.8.17-rc1
git repo: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git
git branch: linux-5.8.y
git commit: 5be39e9f29ceb931a3c8bfa71a3f18345bb6d3d5
git describe: v5.8.16-634-g5be39e9f29ce
Test details: https://qa-reports.linaro.org/lkft/linux-stable-rc-linux-5.8.y/build/v5.8.16-634-g5be39e9f29ce
No regressions (compared to build v5.8.16)
No fixes (compared to build v5.8.16)
Ran 42308 total tests in the following environments and test suites.
Environments
--------------
- dragonboard-410c
- hi6220-hikey
- i386
- juno-r2
- juno-r2-compat
- juno-r2-kasan
- nxp-ls2088
- qemu_arm
- qemu_arm64
- qemu_i386
- qemu_x86_64
- x15
- x86
- x86-kasan
Test Suites
-----------
* build
* install-android-platform-tools-r2600
* kselftest
* linux-log-parser
* ltp-containers-tests
* ltp-cve-tests
* ltp-dio-tests
* ltp-io-tests
* ltp-ipc-tests
* ltp-syscalls-tests
* perf
* v4l2-compliance
* libhugetlbfs
* ltp-commands-tests
* ltp-controllers-tests
* ltp-fcntl-locktests-tests
* ltp-filecaps-tests
* ltp-fs-tests
* ltp-fs_bind-tests
* ltp-fs_perms_simple-tests
* ltp-fsx-tests
* ltp-hugetlb-tests
* ltp-math-tests
* ltp-mm-tests
* ltp-nptl-tests
* ltp-pty-tests
* ltp-securebits-tests
* ltp-tracing-tests
* network-basic-tests
* ltp-cap_bounds-tests
* ltp-cpuhotplug-tests
* ltp-crypto-tests
* ltp-open-posix-tests
* ltp-sched-tests
* kunit
* kselftest-vsyscall-mode-native
* kselftest-vsyscall-mode-none
Signature · 2 lines
Linaro LKFT https://lkft.linaro.org