Skip to content

Fix SpiAdapter.Read buffer length mismatch in Mcp23xxx TransferFullDuplex#2492

Draft
Copilot wants to merge 3 commits into
mainfrom
copilot/fix-argument-exception-buffers
Draft

Fix SpiAdapter.Read buffer length mismatch in Mcp23xxx TransferFullDuplex#2492
Copilot wants to merge 3 commits into
mainfrom
copilot/fix-argument-exception-buffers

Conversation

Copy link
Copy Markdown
Contributor

Copilot AI commented Apr 9, 2026

  • Fix SpiAdapter.Read() to allocate equal-length writeBuffer and readBuffer for TransferFullDuplex (matching the Mcp25xxx pattern)
  • Fix test mock SpiDeviceMock.TransferFullDuplex to only forward the 2-byte command prefix to Write
  • Validate with standalone test
  • Run parallel validation — code review passed, CodeQL timed out (Arcade SDK build dependency)

TransferFullDuplex requires writeBuffer and readBuffer to have the same
length. The Read method was creating a 2-byte writeBuffer and a
(buffer.Length + 2)-byte readBuffer, causing ArgumentException on real
SPI devices.

Fix: allocate writeBuffer with the same size as readBuffer, placing
OpCode and register address in the first two bytes (remaining bytes are
don't-care for the SPI read operation).

Also fix the test mock's TransferFullDuplex to only pass command bytes
to Write, preventing don't-care padding from corrupting register data.

Agent-Logs-Url: https://github.com/dotnet/iot/sessions/7c410060-a096-49b1-8cfa-348f86e1f77b

Co-authored-by: krwq <660048+krwq@users.noreply.github.com>
@dotnet-policy-service dotnet-policy-service Bot added the area-device-bindings Device Bindings for audio, sensor, motor, and display hardware that can used with System.Device.Gpio label Apr 9, 2026
Copilot AI changed the title [WIP] Fix System.ArgumentException for buffer length mismatch Fix SpiAdapter.Read buffer length mismatch in Mcp23xxx TransferFullDuplex Apr 9, 2026
Copilot finished work on behalf of krwq April 9, 2026 16:00
Copilot AI requested a review from krwq April 9, 2026 16:00
Copy link
Copy Markdown
Member

@krwq krwq left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This needs to be re-done with copilot CLI, doesn't seem correct

@dotnet-policy-service dotnet-policy-service Bot added the Needs: Author Feedback We are waiting for author to react to feedback (action required) label May 14, 2026
Allocate writeBuffer at the same length as readBuffer (buffer.Length + 2)
with OpCode and register address in the first 2 bytes. This matches the
pattern used in Mcp25xxx and fixes the ArgumentException thrown by
UnixSpiDevice.TransferFullDuplex when buffers differ in length.

Update the test mock's TransferFullDuplex to only forward the 2-byte
command prefix (OpCode + RegisterAddress) to Write, since remaining
bytes in the padded writeBuffer are don't-care and should not be written
to mock registers.

Agent-Logs-Url: https://github.com/dotnet/iot/sessions/16e97003-0f85-4e18-86ab-2bd7516ebc6b

Co-authored-by: krwq <660048+krwq@users.noreply.github.com>
@dotnet-policy-service dotnet-policy-service Bot removed the Needs: Author Feedback We are waiting for author to react to feedback (action required) label May 14, 2026
Copy link
Copy Markdown
Contributor Author

Copilot AI commented May 14, 2026

This needs to be re-done with copilot CLI, doesn't seem correct

Redone in 4c08fff. Removed the Math.Min hack — now uses a clean writeBuffer.Slice(0, 2) in the test mock. The SpiAdapter.cs fix remains the same approach (matching the Mcp25xxx pattern of equal-length buffers with don't-care padding).

Warning

Firewall rules blocked me from connecting to one or more addresses (expand for details)

I tried to connect to the following addresses, but was blocked by firewall rules:

  • 1oavsblobprodcus350.vsblob.vsassets.io
    • Triggering command: /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet restore --no-dependencies /home/REDACTED/work/iot/iot/tools/ArduinoCsCompiler/ArduinoCsCompiler.sln --packages /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/packages /p:DisableImplicitNuGetFallbackFolder=true --verbosity normal /p:TargetFrameworkRootPath=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:NetCoreTargetingPackRoot=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:AllowMissingPrunePackageData=true (dns block)
  • 1s1vsblobprodcus386.vsblob.vsassets.io
    • Triggering command: /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet restore --no-dependencies /home/REDACTED/work/iot/iot/src/System.Device.Gpio/System.Device.Gpio.sln --packages /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/packages /p:DisableImplicitNuGetFallbackFolder=true --verbosity normal /p:TargetFrameworkRootPath=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:NetCoreTargetingPackRoot=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:AllowMissingPrunePackageData=true (dns block)
    • Triggering command: /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet restore --no-dependencies /home/REDACTED/work/iot/iot/tools/DevicesApiTester/DeviceApiTester.sln --packages /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/packages /p:DisableImplicitNuGetFallbackFolder=true --verbosity normal /p:TargetFrameworkRootPath=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:NetCoreTargetingPackRoot=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:AllowMissingPrunePackageData=true (dns block)
    • Triggering command: /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet restore --no-dependencies /home/REDACTED/work/iot/iot/tools/ArduinoCsCompiler/ArduinoCsCompiler.sln --packages /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/packages /p:DisableImplicitNuGetFallbackFolder=true --verbosity normal /p:TargetFrameworkRootPath=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:NetCoreTargetingPackRoot=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:AllowMissingPrunePackageData=true (dns block)
  • 2kmvsblobprodcus39.vsblob.vsassets.io
    • Triggering command: /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet restore --no-dependencies /home/REDACTED/work/iot/iot/samples/samples.sln --packages /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/packages /p:DisableImplicitNuGetFallbackFolder=true --verbosity normal /p:TargetFrameworkRootPath=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:NetCoreTargetingPackRoot=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:AllowMissingPrunePackageData=true (dns block)
    • Triggering command: /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet restore --no-dependencies /home/REDACTED/work/iot/iot/src/System.Device.Gpio/System.Device.Gpio.sln --packages /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/packages /p:DisableImplicitNuGetFallbackFolder=true --verbosity normal /p:TargetFrameworkRootPath=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:NetCoreTargetingPackRoot=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:AllowMissingPrunePackageData=true (dns block)
    • Triggering command: /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet restore --no-dependencies /home/REDACTED/work/iot/iot/tools/GenerateDocFxStructure/GenerateDocFxStructure.sln --packages /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/packages /p:DisableImplicitNuGetFallbackFolder=true --verbosity normal /p:TargetFrameworkRootPath=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:NetCoreTargetingPackRoot=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:AllowMissingPrunePackageData=true (dns block)
  • 37cvsblobprodcus359.vsblob.vsassets.io
    • Triggering command: /usr/bin/dotnet dotnet run --project /tmp/validate-fix/validate.csproj (dns block)
  • 4myvsblobprodcus32.vsblob.vsassets.io
    • Triggering command: /usr/bin/dotnet dotnet run --project /tmp/validate-fix/validate.csproj (dns block)
  • 4vyvsblobprodcus361.vsblob.vsassets.io
    • Triggering command: /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet restore --no-dependencies /home/REDACTED/work/iot/iot/samples/samples.sln --packages /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/packages /p:DisableImplicitNuGetFallbackFolder=true --verbosity normal /p:TargetFrameworkRootPath=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:NetCoreTargetingPackRoot=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:AllowMissingPrunePackageData=true (dns block)
    • Triggering command: /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet restore --no-dependencies /home/REDACTED/work/iot/iot/src/System.Device.Gpio/System.Device.Gpio.sln --packages /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/packages /p:DisableImplicitNuGetFallbackFolder=true --verbosity normal /p:TargetFrameworkRootPath=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:NetCoreTargetingPackRoot=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:AllowMissingPrunePackageData=true (dns block)
    • Triggering command: /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet restore --no-dependencies /home/REDACTED/work/iot/iot/tools/ArduinoCsCompiler/ArduinoCsCompiler.sln --packages /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/packages /p:DisableImplicitNuGetFallbackFolder=true --verbosity normal /p:TargetFrameworkRootPath=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:NetCoreTargetingPackRoot=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:AllowMissingPrunePackageData=true (dns block)
  • 5dkvsblobprodcus355.vsblob.vsassets.io
    • Triggering command: /usr/bin/dotnet dotnet run --project /tmp/validate-fix/validate.csproj (dns block)
  • 7k6vsblobprodcus337.vsblob.vsassets.io
    • Triggering command: /usr/bin/dotnet dotnet run --project /tmp/validate-fix/validate.csproj (dns block)
  • 80zvsblobprodcus35.vsblob.vsassets.io
    • Triggering command: /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet restore --no-dependencies /home/REDACTED/work/iot/iot/samples/samples.sln --packages /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/packages /p:DisableImplicitNuGetFallbackFolder=true --verbosity normal /p:TargetFrameworkRootPath=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:NetCoreTargetingPackRoot=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:AllowMissingPrunePackageData=true (dns block)
    • Triggering command: /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet restore --no-dependencies /home/REDACTED/work/iot/iot/src/System.Device.Gpio/System.Device.Gpio.sln --packages /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/packages /p:DisableImplicitNuGetFallbackFolder=true --verbosity normal /p:TargetFrameworkRootPath=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:NetCoreTargetingPackRoot=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:AllowMissingPrunePackageData=true (dns block)
    • Triggering command: /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet restore --no-dependencies /home/REDACTED/work/iot/iot/tools/DevicesApiTester/DeviceApiTester.sln --packages /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/packages /p:DisableImplicitNuGetFallbackFolder=true --verbosity normal /p:TargetFrameworkRootPath=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:NetCoreTargetingPackRoot=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:AllowMissingPrunePackageData=true (dns block)
  • bcnvsblobprodcus378.vsblob.vsassets.io
    • Triggering command: /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet restore --no-dependencies /home/REDACTED/work/iot/iot/src/devices/BuildHat/BuildHat.sln --packages /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/packages /p:DisableImplicitNuGetFallbackFolder=true --verbosity normal /p:TargetFrameworkRootPath=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:NetCoreTargetingPackRoot=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:AllowMissingPrunePackageData=true (dns block)
  • cflvsblobprodcus383.vsblob.vsassets.io
    • Triggering command: /usr/bin/dotnet dotnet run --project /tmp/validate-fix/validate.csproj (dns block)
  • d0svsblobprodcus381.vsblob.vsassets.io
    • Triggering command: /usr/bin/dotnet dotnet run --project /tmp/validate-fix/validate.csproj (dns block)
  • fdpvsblobprodcus345.vsblob.vsassets.io
    • Triggering command: /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet restore --no-dependencies /home/REDACTED/work/iot/iot/tools/ArduinoCsCompiler/ArduinoCsCompiler.sln --packages /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/packages /p:DisableImplicitNuGetFallbackFolder=true --verbosity normal /p:TargetFrameworkRootPath=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:NetCoreTargetingPackRoot=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:AllowMissingPrunePackageData=true (dns block)
    • Triggering command: /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet restore --no-dependencies /home/REDACTED/work/iot/iot/src/devices/Ccs811/Ccs811.sln --packages /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/packages /p:DisableImplicitNuGetFallbackFolder=true --verbosity normal /p:TargetFrameworkRootPath=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:NetCoreTargetingPackRoot=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:AllowMissingPrunePackageData=true (dns block)
    • Triggering command: /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet restore --no-dependencies /home/REDACTED/work/iot/iot/src/devices/Scd4x/Scd4x.sln --packages /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/packages /p:DisableImplicitNuGetFallbackFolder=true --verbosity normal /p:TargetFrameworkRootPath=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:NetCoreTargetingPackRoot=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:AllowMissingPrunePackageData=true (dns block)
  • gbsvsblobprodcus365.vsblob.vsassets.io
    • Triggering command: /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet restore --no-dependencies /home/REDACTED/work/iot/iot/tools/ArduinoCsCompiler/ArduinoCsCompiler.sln --packages /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/packages /p:DisableImplicitNuGetFallbackFolder=true --verbosity normal /p:TargetFrameworkRootPath=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:NetCoreTargetingPackRoot=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:AllowMissingPrunePackageData=true (dns block)
    • Triggering command: /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet restore --no-dependencies /home/REDACTED/work/iot/iot/src/devices/Ccs811/Ccs811.sln --packages /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/packages /p:DisableImplicitNuGetFallbackFolder=true --verbosity normal /p:TargetFrameworkRootPath=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:NetCoreTargetingPackRoot=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:AllowMissingPrunePackageData=true (dns block)
  • gervsblobprodcus329.vsblob.vsassets.io
    • Triggering command: /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet restore --no-dependencies /home/REDACTED/work/iot/iot/tools/DevicesApiTester/DeviceApiTester.sln --packages /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/packages /p:DisableImplicitNuGetFallbackFolder=true --verbosity normal /p:TargetFrameworkRootPath=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:NetCoreTargetingPackRoot=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:AllowMissingPrunePackageData=true (dns block)
    • Triggering command: /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet restore --no-dependencies /home/REDACTED/work/iot/iot/tools/ArduinoCsCompiler/ArduinoCsCompiler.sln --packages /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/packages /p:DisableImplicitNuGetFallbackFolder=true --verbosity normal /p:TargetFrameworkRootPath=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:NetCoreTargetingPackRoot=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:AllowMissingPrunePackageData=true (dns block)
  • ibzvsblobprodcus369.vsblob.vsassets.io
    • Triggering command: /usr/bin/dotnet dotnet run --project /tmp/validate-fix/validate.csproj (dns block)
    • Triggering command: /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet restore --no-dependencies /home/REDACTED/work/iot/iot/samples/samples.sln --packages /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/packages /p:DisableImplicitNuGetFallbackFolder=true --verbosity normal /p:TargetFrameworkRootPath=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:NetCoreTargetingPackRoot=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:AllowMissingPrunePackageData=true (dns block)
    • Triggering command: /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet restore --no-dependencies /home/REDACTED/work/iot/iot/tools/GenerateDocFxStructure/GenerateDocFxStructure.sln --packages /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/packages /p:DisableImplicitNuGetFallbackFolder=true --verbosity normal /p:TargetFrameworkRootPath=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:NetCoreTargetingPackRoot=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:AllowMissingPrunePackageData=true (dns block)
  • k0ivsblobprodcus356.vsblob.vsassets.io
    • Triggering command: /usr/bin/dotnet dotnet run --project /tmp/validate-fix/validate.csproj (dns block)
  • l49vsblobprodcus358.vsblob.vsassets.io
    • Triggering command: /usr/bin/dotnet dotnet run --project /tmp/validate-fix/validate.csproj (dns block)
  • o3svsblobprodcus318.vsblob.vsassets.io
    • Triggering command: /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet restore --no-dependencies /home/REDACTED/work/iot/iot/samples/samples.sln --packages /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/packages /p:DisableImplicitNuGetFallbackFolder=true --verbosity normal /p:TargetFrameworkRootPath=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:NetCoreTargetingPackRoot=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:AllowMissingPrunePackageData=true (dns block)
    • Triggering command: /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet restore --no-dependencies /home/REDACTED/work/iot/iot/src/System.Device.Gpio/System.Device.Gpio.sln --packages /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/packages /p:DisableImplicitNuGetFallbackFolder=true --verbosity normal /p:TargetFrameworkRootPath=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:NetCoreTargetingPackRoot=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:AllowMissingPrunePackageData=true (dns block)
    • Triggering command: /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet restore --no-dependencies /home/REDACTED/work/iot/iot/tools/ArduinoCsCompiler/ArduinoCsCompiler.sln --packages /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/packages /p:DisableImplicitNuGetFallbackFolder=true --verbosity normal /p:TargetFrameworkRootPath=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:NetCoreTargetingPackRoot=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:AllowMissingPrunePackageData=true (dns block)
  • ofvvsblobprodcus315.vsblob.vsassets.io
    • Triggering command: /usr/bin/dotnet dotnet run --project /tmp/validate-fix/validate.csproj (dns block)
    • Triggering command: /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet restore --no-dependencies /home/REDACTED/work/iot/iot/src/System.Device.Gpio/System.Device.Gpio.sln --packages /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/packages /p:DisableImplicitNuGetFallbackFolder=true --verbosity normal /p:TargetFrameworkRootPath=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:NetCoreTargetingPackRoot=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:AllowMissingPrunePackageData=true (dns block)
    • Triggering command: /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet restore --no-dependencies /home/REDACTED/work/iot/iot/tools/DevicesApiTester/DeviceApiTester.sln --packages /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/packages /p:DisableImplicitNuGetFallbackFolder=true --verbosity normal /p:TargetFrameworkRootPath=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:NetCoreTargetingPackRoot=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:AllowMissingPrunePackageData=true (dns block)
  • pkvvsblobprodcus321.vsblob.vsassets.io
    • Triggering command: /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet restore --no-dependencies /home/REDACTED/work/iot/iot/samples/samples.sln --packages /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/packages /p:DisableImplicitNuGetFallbackFolder=true --verbosity normal /p:TargetFrameworkRootPath=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:NetCoreTargetingPackRoot=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:AllowMissingPrunePackageData=true (dns block)
    • Triggering command: /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet restore --no-dependencies /home/REDACTED/work/iot/iot/src/System.Device.Gpio/System.Device.Gpio.sln --packages /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/packages /p:DisableImplicitNuGetFallbackFolder=true --verbosity normal /p:TargetFrameworkRootPath=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:NetCoreTargetingPackRoot=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:AllowMissingPrunePackageData=true (dns block)
    • Triggering command: /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet restore --no-dependencies /home/REDACTED/work/iot/iot/tools/ArduinoCsCompiler/ArduinoCsCompiler.sln --packages /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/packages /p:DisableImplicitNuGetFallbackFolder=true --verbosity normal /p:TargetFrameworkRootPath=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:NetCoreTargetingPackRoot=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:AllowMissingPrunePackageData=true (dns block)
  • s4uvsblobprodcus326.vsblob.vsassets.io
    • Triggering command: /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet restore --no-dependencies /home/REDACTED/work/iot/iot/samples/samples.sln --packages /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/packages /p:DisableImplicitNuGetFallbackFolder=true --verbosity normal /p:TargetFrameworkRootPath=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:NetCoreTargetingPackRoot=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:AllowMissingPrunePackageData=true (dns block)
    • Triggering command: /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet restore --no-dependencies /home/REDACTED/work/iot/iot/src/System.Device.Gpio/System.Device.Gpio.sln --packages /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/packages /p:DisableImplicitNuGetFallbackFolder=true --verbosity normal /p:TargetFrameworkRootPath=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:NetCoreTargetingPackRoot=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:AllowMissingPrunePackageData=true (dns block)
    • Triggering command: /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/.dotnet/dotnet restore --no-dependencies /home/REDACTED/work/iot/iot/tools/ArduinoCsCompiler/ArduinoCsCompiler.sln --packages /tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/packages /p:DisableImplicitNuGetFallbackFolder=true --verbosity normal /p:TargetFrameworkRootPath=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:NetCoreTargetingPackRoot=/tmp/codeql-scratch-db3f4ba25dde505c/dbs/csharp/working/emptyFakeDotnetRoot /p:AllowMissingPrunePackageData=true (dns block)
  • securitytools.pkgs.visualstudio.com
    • Triggering command: /opt/hostedtoolcache/CodeQL/2.25.1/x64/codeql/csharp/tools/linux64/Semmle.Autobuild.CSharp /opt/hostedtoolcache/CodeQL/2.25.1/x64/codeql/csharp/tools/linux64/Semmle.Autobuild.CSharp (dns block)
  • uy6vsblobprodcus34.vsblob.vsassets.io
    • Triggering command: /usr/bin/dotnet dotnet run --project /tmp/validate-fix/validate.csproj (dns block)
  • v53vsblobprodcus320.vsblob.vsassets.io
    • Triggering command: /usr/bin/dotnet dotnet run --project /tmp/validate-fix/validate.csproj (dns block)
  • vwvvsblobprodcus334.vsblob.vsassets.io
    • Triggering command: /usr/bin/dotnet dotnet run --project /tmp/validate-fix/validate.csproj (dns block)
  • yluvsblobprodcus367.vsblob.vsassets.io
    • Triggering command: /usr/bin/dotnet dotnet run --project /tmp/validate-fix/validate.csproj (dns block)

If you need me to access, download, or install something from one of these locations, you can either:

Copilot finished work on behalf of krwq May 14, 2026 16:09
Copilot AI requested a review from krwq May 14, 2026 16:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area-device-bindings Device Bindings for audio, sensor, motor, and display hardware that can used with System.Device.Gpio

Projects

None yet

Development

Successfully merging this pull request may close these issues.

System.ArgumentException: Parameters 'writeBuffer' and 'readBuffer' must have the same length

2 participants