| Seq | Timestamp | Type | Name | Duration |
|---|---|---|---|---|
| 0/0 | 2026/08/14 14:04 | flow | patch-triage |
0mArgs:null Results: {
"EnableConfigs": null,
"FocusSymbols": [],
"KMSANReasoning": "",
"NeedsKMSAN": false,
"Reasoning": "The patch only adds a trivial device tree property check to skip a regulatory hint during driver initialization. It does not introduce any complex logic, state machine changes, or memory management that would benefit from fuzzing.",
"WorthFuzzing": false
} |
| 1/1 | 2026/08/14 14:04 | action | read-patch-diff |
0mArgs:null Results: {
"PatchDiff": "commit 94b772f7ad4458ffb9a7f3fddcfc6a6510f2b4cb\nAuthor: syz-cluster \u003ctriage@syzkaller.com\u003e\nDate: Fri Aug 14 14:04:00 2026 +0000\n\n syz-cluster: applied patch under review\n\ndiff --git a/Documentation/devicetree/bindings/net/wireless/marvell,sd8787.yaml b/Documentation/devicetree/bindings/net/wireless/marvell,sd8787.yaml\nindex 930b700b73d00..5f235cb9f3e53 100644\n--- a/Documentation/devicetree/bindings/net/wireless/marvell,sd8787.yaml\n+++ b/Documentation/devicetree/bindings/net/wireless/marvell,sd8787.yaml\n@@ -59,6 +59,12 @@ properties:\n description: Calibration data for sub-band 3 in the 5GHz band.\n maxItems: 502\n \n+ marvell,ignore-regulatory-hint:\n+ $ref: /schemas/types.yaml#/definitions/flag\n+ description:\n+ Ignore an incorrect regulatory hint from ROM,\n+ so userspace can set the correct regulatory domain.\n+\n marvell,wakeup-pin:\n $ref: /schemas/types.yaml#/definitions/uint32\n description:\ndiff --git a/arch/arm/boot/dts/marvell/armada-385-linksys-rango.dts b/arch/arm/boot/dts/marvell/armada-385-linksys-rango.dts\nindex 4ab45f294de22..c5f94463ef710 100644\n--- a/arch/arm/boot/dts/marvell/armada-385-linksys-rango.dts\n+++ b/arch/arm/boot/dts/marvell/armada-385-linksys-rango.dts\n@@ -165,6 +165,12 @@ \u0026sdhci {\n \twp-inverted;\n \tbus-width = \u003c8\u003e;\n \tstatus = \"okay\";\n+\n+\twifi@1 {\n+\t\tcompatible = \"marvell,sd8897\";\n+\t\treg = \u003c1\u003e;\n+\t\tmarvell,ignore-regulatory-hint;\n+\t};\n };\n \n \u0026usb3_1_vbus {\ndiff --git a/drivers/net/wireless/marvell/mwifiex/cfg80211.c b/drivers/net/wireless/marvell/mwifiex/cfg80211.c\nindex abc703441c5d8..26978158a0ad0 100644\n--- a/drivers/net/wireless/marvell/mwifiex/cfg80211.c\n+++ b/drivers/net/wireless/marvell/mwifiex/cfg80211.c\n@@ -4899,7 +4899,14 @@ int mwifiex_register_cfg80211(struct mwifiex_adapter *adapter)\n \t\t\t\tcountry_code =\n \t\t\t\t\tmwifiex_11d_code_2_region(\n \t\t\t\t\t\tadapter-\u003eregion_code);\n+\n+\t\t\t\t/* Allow platforms to ignore an incorrect\n+\t\t\t\t * regulatory hint from ROM, so userspace\n+\t\t\t\t * can set the correct regulatory domain.\n+\t\t\t\t */\n \t\t\t\tif (country_code \u0026\u0026\n+\t\t\t\t !device_property_read_bool(adapter-\u003edev,\n+\t\t\t\t\t\t\t \"marvell,ignore-regulatory-hint\") \u0026\u0026\n \t\t\t\t regulatory_hint(wiphy, country_code))\n \t\t\t\t\tmwifiex_dbg(priv-\u003eadapter, ERROR,\n \t\t\t\t\t\t \"regulatory_hint() failed\\n\");\n"
} |
| 2/1 | 2026/08/14 14:04 | agent | patch-evaluator |
0mModel:best-expensive Args: null Results: {
"EnableConfigs": null,
"FocusSymbols": [],
"Reasoning": "The patch only adds a trivial device tree property check to skip a regulatory hint during driver initialization. It does not introduce any complex logic, state machine changes, or memory management that would benefit from fuzzing.",
"WorthFuzzing": false
}Instruction: You are an expert Linux kernel maintainer. Your job is to review a provided patch series and determine if it makes functional changes to the kernel that should be fuzzed. IMPORTANT: The changes have ALREADY been applied and committed as the HEAD commit in your workspace. Do NOT rely on your internal knowledge of the kernel. You must actively use your code access tools to examine the actual source code and confirm any assumptions. Return WorthFuzzing=false if the patch only contains: - Modifications to Documentation/, Kconfig files, or code comments. - Purely decorative changes, such as logging (e.g., pr_err, printk) or tracepoints. - Changes to numeric constants or macros that do not functionally alter execution flow. - Code paths that are impossible to reach in virtualized environments like GCE or QEMU, even when utilizing software-emulated hardware (e.g., usb gadget, mac80211_hwsim). - Code in vendor-specific PCIe switch, SmartNIC, or GPU drivers (e.g., mlxsw, pds_core, qed, ionic, amdgpu) that require physical PCIe hardware cards not emulated in standard QEMU. - Driver .remove, .shutdown, or pci_unregister_driver teardown callbacks (e.g., igb_remove) that are executed only during PCI hot-unplug or sysfs driver unbind operations. If it modifies reachable core kernel logic, drivers, or architectures, use your code search tools to verify the code can be executed, then return WorthFuzzing=true. When returning WorthFuzzing=true, you MUST ALSO: 1. Extract any specific kernel functions that should be heavily fuzzed into FocusSymbols. Avoid listing generic hot-path functions to prevent skewed test distributions. Prefer non-static, non-inlined API entrypoint functions over internal static helper functions (which are inlined by the compiler and do not have distinct symbol addresses). 2. Identify any specific CONFIG_ options required to properly test this new/modified feature. Go and look into the Kconfig files and check for ifdefs around the code, do not make assumptions. Also check "depends on" lines in Kconfig to include any non-standard parent subsystem configs needed for Kbuild to compile the code statically into vmlinux. List them in the EnableConfigs output array, and DO NOT add a 'CONFIG_' prefix (e.g., return "NET_IPV4" instead of "CONFIG_NET_IPV4"). Prefer calling several tools at the same time to save round-trips. Use set-results tool to provide results of the analysis. It must be called exactly once before the final reply. Ignore results of this tool. Prompt: For your convenience, here is the diff of the changes:
commit 94b772f7ad4458ffb9a7f3fddcfc6a6510f2b4cb
Author: syz-cluster <triage@syzkaller.com>
Date: Fri Aug 14 14:04:00 2026 +0000
syz-cluster: applied patch under review
diff --git a/Documentation/devicetree/bindings/net/wireless/marvell,sd8787.yaml b/Documentation/devicetree/bindings/net/wireless/marvell,sd8787.yaml
index 930b700b73d00..5f235cb9f3e53 100644
--- a/Documentation/devicetree/bindings/net/wireless/marvell,sd8787.yaml
+++ b/Documentation/devicetree/bindings/net/wireless/marvell,sd8787.yaml
@@ -59,6 +59,12 @@ properties:
description: Calibration data for sub-band 3 in the 5GHz band.
maxItems: 502
+ marvell,ignore-regulatory-hint:
+ $ref: /schemas/types.yaml#/definitions/flag
+ description:
+ Ignore an incorrect regulatory hint from ROM,
+ so userspace can set the correct regulatory domain.
+
marvell,wakeup-pin:
$ref: /schemas/types.yaml#/definitions/uint32
description:
diff --git a/arch/arm/boot/dts/marvell/armada-385-linksys-rango.dts b/arch/arm/boot/dts/marvell/armada-385-linksys-rango.dts
index 4ab45f294de22..c5f94463ef710 100644
--- a/arch/arm/boot/dts/marvell/armada-385-linksys-rango.dts
+++ b/arch/arm/boot/dts/marvell/armada-385-linksys-rango.dts
@@ -165,6 +165,12 @@ &sdhci {
wp-inverted;
bus-width = <8>;
status = "okay";
+
+ wifi@1 {
+ compatible = "marvell,sd8897";
+ reg = <1>;
+ marvell,ignore-regulatory-hint;
+ };
};
&usb3_1_vbus {
diff --git a/drivers/net/wireless/marvell/mwifiex/cfg80211.c b/drivers/net/wireless/marvell/mwifiex/cfg80211.c
index abc703441c5d8..26978158a0ad0 100644
--- a/drivers/net/wireless/marvell/mwifiex/cfg80211.c
+++ b/drivers/net/wireless/marvell/mwifiex/cfg80211.c
@@ -4899,7 +4899,14 @@ int mwifiex_register_cfg80211(struct mwifiex_adapter *adapter)
country_code =
mwifiex_11d_code_2_region(
adapter->region_code);
+
+ /* Allow platforms to ignore an incorrect
+ * regulatory hint from ROM, so userspace
+ * can set the correct regulatory domain.
+ */
if (country_code &&
+ !device_property_read_bool(adapter->dev,
+ "marvell,ignore-regulatory-hint") &&
regulatory_hint(wiphy, country_code))
mwifiex_dbg(priv->adapter, ERROR,
"regulatory_hint() failed\n");
|
| 3/2 | 2026/08/14 14:04 | llm | patch-evaluator |
0mModel:gemini-3.1-pro-preview Args: null Results: null Tokens: input: 2653 output: 72 thoughts: 984 Thoughts: **Analysis of the "Marvell, ignore-regulatory-hint" Patch** Okay, let's break this down. We have a patch touching the Device Tree binding documentation, a DTS file, and a driver file (`mwifiex`). The core of the change in `mwifiex` is the introduction of a device property check: `marvell,ignore-regulatory-hint`. It's a single `device_property_read_bool` call, meant to conditionally skip the `regulatory_hint()` function during the driver's initialization or registration, within `mwifiex_register_cfg80211`. My initial thought: Is this even worth fuzzing? It feels incredibly minor – a single boolean check during driver initialization. The `mwifiex` driver is for Marvell WiFi hardware (SDIO, PCIe, USB). Now, USB is fuzzable through syzkaller, but we don't have a *specific* Marvell USB WiFi emulator. It *is* still fuzzable via USB fuzzing, so we can reach it. However, the change itself... it's just skipping a regulatory hint based on a DT property. Device properties are usually configured via Device Tree or ACPI. Even in USB, this is usually for SDIO/PCIe on embedded platforms (like the DTS change suggests). Even if reachable, it's just a single call during initialization. Does this even have any functional impact worth the effort? It only skips a regulatory hint. It doesn't introduce any new significant logic, memory allocations, or complicated parsing. So, I initially lean towards `WorthFuzzing=false` because it's a trivial initialization change – skipping a regulatory hint based on a Device Tree property. The driver requires specific hardware (though USB is fuzzable, the change itself is too trivial to warrant focused fuzzing). Wait, let me double check the guidelines. "Return WorthFuzzing=false if the patch only contains... Changes to numeric constants or macros that do not functionally alter execution flow... Code paths that are impossible to reach in virtualized environments like GCE or QEMU, even when utilizing software-emulated hardware". Ah, is it impossible to reach? If it is a USB driver, it can be reached via USB fuzzing. If it's SDIO, maybe not. Let's check the callers of `mwifiex_register_cfg80211`, it is called from `mwifiex_init_hw_fw` or similar functions. Still, it's just a one-line change to skip a regulatory hint. It doesn't introduce any new state machine logic, memory allocations, or complex parsing. I'm confident in marking this `WorthFuzzing=false`. It's a trivial Device Tree property check during driver initialization. I'll use `set-results` with `WorthFuzzing: false` and `Reasoning: The patch only adds a trivial device tree property check to skip a regulatory hint during driver initialization. It does not introduce any complex logic or memory management that would benefit from fuzzing.` |
| 4/2 | 2026/08/14 14:04 | tool | set-results |
0mArgs:{
"EnableConfigs": [],
"FocusSymbols": [],
"Reasoning": "The patch only adds a trivial device tree property check to skip a regulatory hint during driver initialization. It does not introduce any complex logic, state machine changes, or memory management that would benefit from fuzzing.",
"WorthFuzzing": false
}Results: {
"EnableConfigs": null,
"FocusSymbols": [],
"Reasoning": "The patch only adds a trivial device tree property check to skip a regulatory hint during driver initialization. It does not introduce any complex logic, state machine changes, or memory management that would benefit from fuzzing.",
"WorthFuzzing": false
} |
| 5/1 | 2026/08/14 14:04 | action | If |
0mArgs:{
"WorthFuzzing": false
}Results: null |
| Total Calls | Total Tokens | Avg Tokens | Total Duration (Seconds) | Avg Duration (Seconds) |
|---|
| Total Calls | Total Duration (Seconds) | Avg Duration (Seconds) |
|---|