WSL

Issues found on WSL

MIT License

Stars
17.1K
Committers
58

Bot releases are visible (Hide)

WSL - 1.1.6

Published by benhillis over 1 year ago

  • Add a pipeline step to validate localization changes. This will prevent crashes for non-English locales when translation errors occur (solves #9796)
  • Cleanup the winrt factory cache before calling CoUninitialize() to prevent crashes.
  • Flush disk before detaching it from the guest.
  • Introduce wslrelay.exe which replaces wslhost.exe for some operations.
  • Move declaration of service helpers next to where they are invoked (solves #9781).
WSL - 1.1.5

Published by OneBlue over 1 year ago

  • Implement custom kernel support for ARM64 (solves #4802)
  • Implement user warnings
  • Revert wsl2.pageReportingOrder to default (2MB). This change was causing freezes on older Windows builds that are missing a bugfix. This will be re-enabled once the fix has been backported.
  • Terminate distro when WslConfigureDistribution changes default UID or flags
  • Do not mount cgroup v1 for WSL2
  • Ensure that the hostname is set in the root namespace
  • Use current timestamp instead of UNIX zero for initramfs (solves #9638)
  • Use a string insert for --release-notes do it doesn't get accidentally localized
  • Update Microsoft.WSLg to version 1.0.50
    • WSLg: update Mariner to 2.0.20230107
    • WSLg: samples/container: Add vGPU video acceleration docker sample
    • rdp backend/rdp shell: sync window state with RDP client
    • rdp backend/rdp shell: send window minmax info when window become visible
    • rdp shell: fix window unsnap by keyboard shortcut and mouse drag
    • rdp backend: East Asian keyboard fixes
    • rdp shell: publish flatpak applications to start menu
WSL - 1.1.3

Published by OneBlue over 1 year ago

  • Fix localhost relay issues introduced in 1.1.0 (solves #9508)
  • Add a "Update Available" toast to WSL
  • Ensure the /init bind mount is readonly
  • Set thread names in WSL init deamon
  • Mask SIGCHILD before forking
  • Correct wslpath's output when '.' is passed (solves #9606)
  • Fix debug shell on arm64
  • Update Microsoft.Windows.ImplementationLibrary to version 1.0.230202.1
  • Set default page reporting order to single-page
  • Cleanup the hostname so it always matches systemd-hostnamed (solves #9391)
  • Update Microsoft.WSL.Kernel to version 5.15.90.1
  • Fix incorrect parsing of /proc/<pid>/stat when the process name has spaces
  • Restore signal handlers in mini_init before executing init
WSL - 1.1.2

Published by OneBlue over 1 year ago

  • Increase the limit of open files in the Windows -> Linux 9p server
  • Fix various issues in the localhost relay (almost solves #9508)
  • Fix issue where GPU drivers share would not be present both mount namespaces.
  • Don't create a console window if a console app is executed from wslg.exe (solves #9551)
  • Use parent process' interop server if the one passed by WSL_INTEROP does not ecist
  • Add logic to open an existing vhd if the swap VHD can't be created (solves #9395)
  • Fix various issues in the drvfs initialization logic
  • Fix product name, file version and product version on the package executables (solves #9536)
  • Update Microsoft.WSLg to version 1.0.49:
    • WSLGd: allow customize log file path
    • rdp fontend/backend/shell: keep compositor sleep until window is created
    • rdp shell: allow optional applist folder by .wslgconfig
    • rdp shell: allow alt+F4 to close app
    • libweston-desktop: xwayland window is not visible upon commit until mouse is moved
    • build: use Ubuntu 20.04 for build verification
WSL - 1.1.0

Published by benhillis almost 2 years ago

  • Use an overlayfs when the distro VHD is mounted read-only so the distribution can start (Improves situations like #8711)

  • Fix incorrect translation of command line arguments

  • Introduce wsl.exe --debug-shell

  • Use additional groups in the plan9 server (solves #9282)

  • Don't start distribution applications in a new terminal

  • Support mount flags in wsl.exe --mount (solves #9299)

  • Create dev/shm via bind mount (solves #8996)

  • Read the mountname registry value from the correct key when restoring disk mounts (solves #9379)

  • Update Microsoft.WSL.Kernel to version 5.15.83.1

    • Update to stable kernel version v5.15.83
    • enable CONFIG_TIME_NS enabled on x86 and arm64
    • disable CONFIG_DEFERRED_STRUCT_PAGE_INIT on arm64
  • Add 'unix:' prefix to pulse audio env variable

  • Attempt to always reuse the same IP address in the WSL NAT network

  • Make the first distro the implicit default (solves #9266)

  • Delete the BasePath if wsl --import fails

  • Update Microsoft.WSLg to version 1.0.48

    • WSLGd: launch RDP client with 'init' explicitly. This fixes the issue msrdc.exe is not launched at Windows's side.
    • xwayland: revert max frame flag fix which no longer needed (as upstream fix is backported)
    • xwm: Fix selection if no seat present at startup
    • rdp-backend: fix weston crash at RDP client disconnect
  • Move the --pre-release entry in the help message under --update

  • Make the localhost relay ignore conflicting binds.

  • Fix race condition in the service's lifetime management

  • Prevent the creation of new user sessions when the service is stopping

  • Use seccomp in localhost relay

WSL - 1.0.3

Published by OneBlue almost 2 years ago

  • Update to stable kernel version v5.15.79.1
  • Only mount drvfs drives that are readable
  • Add new systemd unit to re-create the /tmp/.X11-unix if it's been deleted (Fixes #9126)
  • Remove failure path if nested virtualization is not supported (Fixes #9196)
  • Add a --pre-release option to wsl.exe --update
WSL - 1.0.1

Published by benhillis almost 2 years ago

  • Fix a potential hang in wslservice.exe when launching a new session
  • Make the /tmp/.X11-unix bind mount point read-only to prevent the socket from being deleted
  • Don't fail to start if cgroup mounts fail [GH 8981]
  • Add E_FAIL and E_UNEXPECTED to common error strings
WSL - 1.0.0

Published by benhillis almost 2 years ago

  • Removed the "Preview" label - WSL in the Store is now generally available!
  • Use an override in generator.early to prevent the /tmp/.X11-unix socket from being removed during boot
  • Don't create a pty for systemd to fix issue where systemd would time out during boot
WSL - 0.70.8

Published by benhillis almost 2 years ago

  • Fix various issues with plan9 logging
  • Do not print any status updates when exporting to stdout
  • Ensure /tmp/.X11-unix is not cleared by systemd [GH 9038]
  • Add HCS_E_CONNECTION_TIMEOUT to g_commonErrors
  • Add --enable-debug when building musl for better stacks
  • Retry block device operations on ENXIO
  • Fix race condition in the plan9 server causing ECONNREFUSED
  • Add SharedAccess host firewall rule
  • Update Microsoft.WSLg to version 1.0.47
    • WSLGd: fix relaunch weston with env
    • WSLG: update mariner to 2.0 official release
    • WSLGd: independently monitor child process for font monitor
    • WSLGd: add timestamp to log
    • WSLGd: redirect FreeRDP log to a file
    • WSLGd: Raise the NOFILE limit
    • WSLGd: misc updates (allow to load X cursor from user distro and etc.)
    • WSLGd: Include missing array header
    • system-distro: fix build error at mesa after mariner update
    • rdp shell: workaround get_position crash
    • rdp shell: fix missing va_end() call
    • rdp shell: make wslpath optional for obtaining windows path
    • rdp-backend: fix overactive assert
      Update Kernel to version 5.15.74.2
    • Update to stable kernel version v5.15.74
    • Enable the limit option (CONFIG_NETFILTER_XT_MATCH_LIMIT) for iptables
    • Include fix for hvsocket read() hang
WSL - 0.70.5

Published by benhillis almost 2 years ago

  • Fix race condition in the plan9 server causing ECONNREFUSED
  • Addresses an issue where DNS requests to resolve names from a WSL2 container would fail when using the default configured NAT DNS Server
WSL - 0.70.4

Published by benhillis about 2 years ago

  • Work around deadlock in WSL init daemon due to bug in musl libc [GH 8824]
  • Fix regression where /etc/wsl.conf interop.enabled setting was not respected [GH 8932]
WSL - 0.70.0

Published by benhillis about 2 years ago

  • Ensure that stdout / stderr relays are created for wslg.exe
  • Update Windows SDK to 22621 (Windows 11 22H2)
  • Update Microsoft.WSLg to version 1.0.45
    • WSLGd: allow alternate rdp file via .wslgconfig
    • Weston: rdp shell: fix window placement issues
    • Weston: rdp shell: register snap applications on start menu
    • Weston: rdp shell: use predefined constant for g_key_file api
    • Weston: rdp shell: add icon file search retry
    • Weston: xwm: Check size hints in weston_wm_window_is_positioned()
  • Update MSRDC to version 1.2.3575
WSL - 0.68.4

Published by benhillis about 2 years ago

  • Defer admin / non-admin mount namespace creation until systemd has started.
    • Before this change if you launched your distro as Administrator, then ran wslg as non-admin, snap packages such as Spotify would not work.
  • Remove unneeded kernel command line parameters for systemd
  • Update Kernel to version 5.15.68.1
WSL - 0.68.2

Published by benhillis about 2 years ago

  • Fix a handful of issues around the new systemd implementation:
    • Adjust location check for systemd [GH 8852]
    • Fix an issue where WSLg would not work for some distributions
    • Allow launching Windows executables from processes launched via /etc/wsl.conf boot.systemd or boot.command
    • Disable systemd support if /sbin/init cannot be executed
  • Implement logic to notify the user when a WSL package update is available
WSL - 0.67.6

Published by benhillis about 2 years ago

  • Add official support for systemd! For more information, see our blog post here: https://aka.ms/wslsystemd
  • Fix issue where X11 display might be running on the wrong channel
  • Add retry around network endpoint creation to avoid temporary issues.
  • Fix potential ERROR_FILE_NOT_FOUND errors when creating directories.
  • Add a specialized error message if the distro VHDX can't be mounted
  • Implement wsl.exe --update --web-download to allow updates directly from GitHub
  • Update Microsoft.WSLg to version 1.0.44
    • WSLg: Update WSLDVCPlugin to create shortcuts to packaged wslg.exe
    • WSLg: Update WSLGd to use the msrdc execution alias
    • WSLg: enable x server fonts installed at user distro
    • Weston: rdp backend: fix applist is not working regression
    • Weston: rdp shell: applist: verify file and directory explicitly
    • Weston: rdp shell: locate icon for taskbar using window class name
    • Weston: rdp shell: fix missing free
    • Weston: rdp shell: preblend default icon image with default overlay image
    • rdp shell: default window pos must be adjusted by window geometry
    • xwayland: fix window maximizing
    • xwayland: fix maximized window decoration
  • Update Microsoft.WSL.Kernel to version 5.15.62.1
    • Update to stable kernel version v5.15.62
    • Re-enable the CONFIG_CEPH* flags
    • Enable EROFS configs
    • configs/wsl topic branch picked up (not currently in use)
    • dxgkrnl driver branch refreshed with many fixes and upstream feedback revisions
    • Hyper-V vPCI merge conflicts fixed for newer stable kernel releases
    • Out-of-tree Hyper-V vPCI regression fix merged while waiting for upstream inclusion
WSL - 0.66.2

Published by benhillis about 2 years ago

  • Add wsl2.safeMode option to %userprofile%\.wslconfig
    This change introduces the concept of "Safe Mode" to WSL which disables many features and is intended to be used to recover distributions that are in bad states.
    [wsl2]
    safeMode=true
  • Update wsl.exe to not create stdin / stdout / stderr relay threads if the std handle is not present
  • Do not set window title in wsl.exe [GH 8701]
  • Update Microsoft.WSLg to version 1.0.42
    • WSLg: archive wslg-notify debuginfo
    • rdp: upstream coding style changes
    • rdp: Multihead refactor
    • xwayland: Fix some xwayland focus bugs
    • xwayland: fix default override window position back to (0,0).
    • xwm: Don't send synthetic ConfigureNotify to windows that were mapped O-R
  • Update MSRDC to version 1.2.3401
  • Update Microsoft.Direct3D.Linux to 1.606.4
WSL - 0.65.3

Published by benhillis about 2 years ago

  • Temporarily revert localhost enhancements while investigating a regression [GH 8679]
  • Add more error messages to improved error model
WSL - 0.65.1

Published by benhillis about 2 years ago

  • Improvements to localhost relay to have better performance and accurately report bind failures.
  • Use /dev/ptp0 to keep guest chock in sync with the host
  • Improve the error message if the distro list can't be fetched and wire it to wsl.exe --list --online
  • Update Linux kernel to 5.15.57.1
    • Fix 9p filesystem regressions since the last v5.10 WSL2 kernel
    • Enable support for the Precision Time Protocol (PTP) clock device
    • Enable Retbleed mitigations in x86_64 builds
    • Enable nftables and traffic control
    • Enable VGEM driver
  • Update Microsoft.WSLg to version 1.0.41
    • WSLg: add default x11 bell sound
    • WSLg: Update /etc/wsl.conf to set the default user to wslg
    • WSLGd: add option to start weston under gdbserver
    • WSLGd: simplify weston command line construction
    • compositor: add wslgd-notify
    • compositor: Stop trapping SIGINT
    • compositor: load xwayland module last
    • rdp: resize margin adjustment for MoveWindow/SnapArrange PDU
    • rdpaudio: use pthread_cancel instead of pthread_kill
    • xwayland: give Xwayland its own session
    • xwayland: Don't track focus for override redirect windows
WSL - 0.64.0

Published by benhillis about 2 years ago

  • Implement new error model

    • Localized error messages with inserts
    • Contextualized error messages
    • String readable HRESULTs

    Sample error:

    C:\Users\Test>wsl --mount A
    Administrator access is needed to mount a disk.
    Error code: Wsl/Service/AttachDisk/LXSS_E_ELEVATION_NEEDED_TO_MOUNT_DISK
    
  • Manually reset the interop server when the relay exits [GH 7506]

  • Ensure WSLg logs will be present in /mnt/wslg/stderr.log

  • WSL1 errors will now be printed to /dev/kmsg

  • Add opt-in environment variable to use UTF8 encoding

    • Adds the opt-in WSL_UTF8=1 environment variable to force UTF8 encoding on stdout & stderr through the CRT
    • Get rid of the double \r in our error messages
  • Update WSLg to version 1.0.40

    • libweston-desktop/xwayland: Use correct geometry
    • xwm: Generate more synthetic ConfigureNotify events
    • xwayland: Support _NET_FRAME_EXTENTS
    • rdp: fix window doesn't redraw properly moving across different DPI monitors
    • rdp: Move audio processing to front-end
    • rdp: Clipboard changes (sync with upstream)
    • WSLGd: don't override certain env if already set
    • Build: fix cut&paste mistake for DirectX-headers git version
    • rdp-plugin: various bug fixes in WSLDVCPlugin DLL
WSL - 0.61.8

Published by benhillis over 2 years ago

  • Fix potential wslservice.exe crash when tearing down VM state.