]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
Merge branch 'staging-linus' into branch 'staging-next'
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 25 Feb 2026 15:15:08 +0000 (07:15 -0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 25 Feb 2026 15:15:08 +0000 (07:15 -0800)
There were merge conflicts in:
drivers/staging/rtl8723bs/core/rtw_ieee80211.c
drivers/staging/sm750fb/sm750_hw.c

that were causing problems, so fix this up in here so that going forward
everyone is on the same page and linux-next does not have problems.

Reported-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
1  2 
drivers/staging/rtl8723bs/core/rtw_ieee80211.c
drivers/staging/rtl8723bs/core/rtw_mlme.c
drivers/staging/sm750fb/sm750.c
drivers/staging/sm750fb/sm750_hw.c

index e1077ca609bbb42e2598ce2657b7fe2b02f49c21,3e2b5e6b07f93f2501c7fa5f84b3370098a0769b..dbd4bcc8cd28af28d9c1be8753d0bd1e466a6c53
@@@ -186,9 -186,14 +186,14 @@@ u8 *rtw_get_ie_ex(u8 *in_ie, uint in_le
  
        cnt = 0;
  
-       while (cnt < in_len) {
+       while (cnt + 2 <= in_len) {
+               u8 ie_len = in_ie[cnt + 1];
+               if (cnt + 2 + ie_len > in_len)
+                       break;
 -              if (eid == in_ie[cnt]
 -                      && (!oui || (ie_len >= oui_len && !memcmp(&in_ie[cnt + 2], oui, oui_len)))) {
 +              if (eid == in_ie[cnt] &&
-                   (!oui || !memcmp(&in_ie[cnt + 2], oui, oui_len))) {
++                  (!oui || (ie_len >= oui_len && !memcmp(&in_ie[cnt + 2], oui, oui_len)))) {
                        target_ie = &in_ie[cnt];
  
                        if (ie)
Simple merge
index 666ab76a1d32bc01291aa1df4ceee231af22ddc9,f60b152a647d3f18ff1ba586cf911822f7ece3ee..a2798d428663e836fd1f74bb8d3ce67e2a90a366
@@@ -34,26 -34,24 +34,21 @@@ int hw_sm750_map(struct sm750_dev *sm75
        sm750_dev->vidreg_start = pci_resource_start(pdev, 1);
        sm750_dev->vidreg_size = SZ_2M;
  
-       /*
-        * reserve the vidreg space of smi adaptor
-        * if you do this, you need to add release region code
-        * in lynxfb_remove, or memory will not be mapped again
-        * successfully
-        */
 -      pr_info("mmio phyAddr = %lx\n", sm750_dev->vidreg_start);
 -
+       /* reserve the vidreg space of smi adaptor */
        ret = pci_request_region(pdev, 1, "sm750fb");
        if (ret) {
 -              pr_err("Can not request PCI regions.\n");
 +              dev_err(&pdev->dev, "Can not request PCI regions.\n");
-               goto exit;
+               return ret;
        }
  
        /* now map mmio and vidmem */
        sm750_dev->pvReg =
                ioremap(sm750_dev->vidreg_start, sm750_dev->vidreg_size);
        if (!sm750_dev->pvReg) {
 -              pr_err("mmio failed\n");
 +              dev_err(&pdev->dev, "mmio failed\n");
                ret = -EFAULT;
-               goto exit;
+               goto err_release_region;
        }
 -      pr_info("mmio virtual addr = %p\n", sm750_dev->pvReg);
  
        sm750_dev->accel.dpr_base = sm750_dev->pvReg + DE_BASE_ADDR_TYPE1;
        sm750_dev->accel.dp_port_base = sm750_dev->pvReg + DE_PORT_ADDR_TYPE1;
        sm750_dev->pvMem =
                ioremap_wc(sm750_dev->vidmem_start, sm750_dev->vidmem_size);
        if (!sm750_dev->pvMem) {
-               iounmap(sm750_dev->pvReg);
 -              pr_err("Map video memory failed\n");
 +              dev_err(&pdev->dev, "Map video memory failed\n");
                ret = -EFAULT;
-               goto exit;
+               goto err_unmap_reg;
        }
- exit:
 -      pr_info("video memory vaddr = %p\n", sm750_dev->pvMem);
+       return 0;
+ err_unmap_reg:
+       iounmap(sm750_dev->pvReg);
+ err_release_region:
+       pci_release_region(pdev, 1);
        return ret;
  }