Skip to content

Releases: microsoft/WSL

0.58.0

07 Apr 18:50
b88392b
Compare
Choose a tag to compare
  • Fix interop hang and hang when accessing \\wsl.localhost or \\wsl$ shares [GH 7883]
  • Add wsl.exe --import-in-place to take an existing .vhdx file and register it as a distro
  • Introduce --vhd flag for wsl.exe --import and wsl.exe --export operations
  • Suppress prints to stdout if using wsl.exe --export to export to stdout
  • Increase the default max size of the dynamic VHD to 1TB
  • Improve error logging in init binary
  • Register binfmt interpreter with the 'P' flag to preserve argv[0] [GH 8162]
  • Handle possible winrt exception when trying to determine if wsl.exe was launched via the start menu
  • Update Microsoft.WSLg version 1.0.32
    • Update system-disto mariner base image to 1.0.20220226
    • Fix WSLg failed to start when Windows's user name contains single-quote (')
    • Add Hebrew (Standard) keyboard layout support.
    • Add US international keyboard layout support.
    • Restore to not rounding up monitor scaling factor.

0.56.2

17 Mar 15:33
f3abb7d
Compare
Choose a tag to compare
  • Include packaged dxcore library to fix issues on retail Win11 [GH 8145]
  • Mount drvfs shares on demand to avoid using the linked token. This improves startup time of launching WSL elevated and ensures the correct package context is used.
  • Fix issue preventing launching Windows executables with large environments [GH 7947]
  • Update kernel to 5.10.102.1
    • Fix a new Linux kernel vulnerability called Dirty Pipe (CVE-2022-0847)
    • Disable unprivileged BPF by default
      • It can be re-enabled by setting /proc/sys/kernel/unprivileged_bpf_disabled to 0
    • Update Dxgkrnl Version to 2216
      • Fix out of bounds array access for ioctls[]
      • Implement wait for sync VM bus messages as killable to allow killing a process waiting for a synchronous call to the host
      • Flush device for termination when process is destroyed to avoid a deadlock when the guest process is killed

0.56.1

11 Mar 16:36
362aaa3
Compare
Choose a tag to compare
  • Prevent /etc/resolv.conf from getting overwritten [GH 8030]
  • Fix issue in the Linux stdout relay to ensure the other end of the pipe is closed
  • Ensure correct user token is used when registering 9p file server for \\wsl.localhost\distro
  • Update wsl.exe --cd to support paths that begin with ~
  • Fix race condition during service startup that could cause a crash
  • Inherit and attach console in wslhost's interop path
  • Resolve quiesce hang Watson reports when updating or uninstalling the WSL package
  • Include packaged Direct3D libraries
  • Update Microsoft Remote Desktop Client to version 1.2.2924
  • Add MSRDC and Direct3D versions to wsl.exe --version

0.51.3

09 Feb 19:29
362aaa3
Compare
Choose a tag to compare
  • Resolve issue with localhost relay introduced by refactoring [GH 7982]
  • Fix HANG_QUIESCE issues on servicing operations.
  • Update Kernel to version 5.10.93.2
    • Enable CH341 and CP210X USB Serial drivers
    • Fix README.md build instructions to include dwarves dependency for pahole
    • Switched Dxgkrnl Version to 2111
      • Removed the limit of existing and total sysmem allocations
      • Properly flush the device for termination during process cleanup
      • Fixed SPDX-License-Identifier for d3dkmthk.h

0.51.2

14 Jan 19:16
362aaa3
Compare
Choose a tag to compare
  • Update Kernel to version 5.10.81.1
    • Update to upstream stable kernel release 5.10.81
    • Unify the kernel configurations by enabling missing options on ARM64
      • Enable non-arch specific ACPI options
      • Enable options related to device-mapper RAID
      • Enable Btrfs
      • Enable LZO and ZSTD compression
  • Update WSLg to 1.0.30
    https://github.com/microsoft/wslg/releases/tag/v1.0.30
  • Fix issue where WSLg TS DVC plugin was not correctly registered.
  • Update MSRDC to version 1.2.2677
  • Change path translation to treat \\wsl.localhost\distro and \\wsl$\distro prefix as case-insensitive [GH 7744]
  • Add a specialized error message for wsl.exe --mount on ARM64
  • 9p: Retry epoll_wait on EINTR instead of throwing [GH 7459]
  • Add new --web-download to download distributions via http instead of using the store.
  • Add BOM support for .wslconfig
  • Switch wsl.exe --mount and wsl.exe --unmount print error strings instead of integers.
  • Introduce debug shell for debugging the root namespace.
    This change introduces new "debug shell" functionality to WSL. This will launch an interactive shell in the root Mariner namespace when the WSL2 VM launches. To enable the debug shell put the following entry in %userprofile%\.wslconfig
    [wsl2]
    debugShell=true
    

0.50.2

15 Nov 19:27
7c0f633
Compare
Choose a tag to compare

0.50.2.0

  • Added new logo for Windows Subsystem for Linux
  • Enable hardware performance counters if the hardware supports them [GH 4678]
    A USERPROFILE%\.wslconfig option has been added to opt-out:
    [wsl2]
    hardwarePerformanceCounters=false
    
  • Fix issue when printing system error messages that contain inserts.
  • Update the user tile to launch in the user's home directory instead of C:\WINDOWS\System32
  • Restore default signal dispositions for /etc/wsl.conf boot.command process to prevent zombie processes [GH 7575]
  • Switch to using a static CRT for Windows binaries
  • Use store API to download distributions via wsl.exe --install
  • Add --no-launch option to wsl.exe --install
  • Many updates to localized strings.
  • Update to the official 22000 sdk
  • Strip Linux symbols for release builds
  • Update Linux kernel to 5.10.74.3
    • Update to upstream stable kernel release 5.10.74
    • Enable BPF Type Format (CONFIG_DEBUG_INFO_BTF) for use by eBPF tools [GH 7437]
    • Changed Dxgkrnl version to 2110
      • Implemented D3DKMTShareObjectWithHost
      • Fixed QueryStatistics VM bus alignment issue for the result
      • Implemented D3DKMTCreateSyncFile
      • Address upstream submission feedback
      • Moved d3dkmthk to include/uapi/misc
      • Replaces u32 by __u32 and u64 by __u64
      • Added "_" in front of the enumerator values to support including both WDK and Linux headers
      • Removed holes in the user mode visible structures to be compatible with 32 bit apps
      • Replaces pointer in the user mode visible structures with a define to be u64 for user mode apps
      • Fix build failure with GCC versions older than 8.1 [GH 7558]
    • Enable the Buffer Sharing and Sync File Frameworks (CONFIG_DMA_SHARED_BUFFER, CONFIG_SYNC_FILE) for Dxgkrnl usage

0.48.2

16 Oct 06:15
39c47bf
Compare
Choose a tag to compare

0.48.2.0

  • Fix issue preventing Windows binaries from launching from inside the Linux filesystem [GH 7521].
  • Fix error handling condition for wsl --mount --bare.
  • Add localized strings for the following locales: cs-CZ;da-DK;de-DE;en-GB;en-US;es-ES;fi-FI;fr-FR;hu-HU;it-IT;ja-JP;ko-KR;nb-NO;nl-NL;pl-PL;pt-BR;pt-PT;ru-RU;sv-SE;tr-TR;zh-CN;zh-TW. We are investigating an issue where some strings are not being properly localized.
  • Fix for /etc/fstab mounts so they are present in both elevated and non-elevated mount namespaces.
  • Added a 5 second retry timeout to wsl.exe --mount operations.
  • Simplify vm idle termination logic
  • Update wsl.exe --mount to support passing options before the disk name for example: wsl.exe --mount --vhd foo.vhdx
  • Allow individual distros to opt-out of GUI applications via a new /etc/wsl.conf setting:
[general]
guiApplications=false
  • Ensure requested amount of swap size is available to Linux (previously was a page smaller than requested due to mkswap overhead).

0.47.1

12 Oct 20:30
9ec6dfc
Compare
Choose a tag to compare

0.47.1.0

  • WSLg is now bundled as part of the WSL app!
    • Update Microsoft.WSLg to version 1.0.29
    • Switch to msrdc.exe for WSLg
    • Enable virtio for ARM64 to enable WSLg shared memory.
    • Allow environment variables used by WSLG to be overridden by WSLENV
  • New wsl.exe –mount features!
    • Add mount --vhd to make mounting VHD files easier.
    • Implement filesystem detection for wsl.exe --mount. This change implements filesystem type detection if no --type is specified when using wsl.exe --mount.
    • Add --name feature to wsl.exe --mount. This change adds support for optionally naming a mountpoint when mounting a disk through WSL.
  • Update Linux kernel to 5.10.60.1
    • Enable additional USB kernel configuration options for interacting with an Arduino over USB
    • Update to upstream stable kernel release 5.10.60
    • Enable virtio-pmem with support for PCI BAR-relative addresses
    • Enable vPCI support under Hyper-V for ARM64
    • Enable io_uring support
    • Enable USB over IP support
    • Enable paravirtualized spinlock support for x86_64
    • Refresh dxgkrnl driver to pick up bug fixes and code cleanups
    • Enable NFS client support for NFSv4.1* Improve the error message when 9p or fstab mounts fail
  • Fix \\wsl$\ and \\wsl.localhost\ issues on ARM64.
  • Switch to mkfs.ext4 instead of pre-formatted ext4 VHD.
  • Switch to using mkswap and swapon instead of custom swap file logic. [GH 5476]
  • Add logic to dynamically update the MTU of the NAT network
  • Fix for /etc/wsl.conf generateResolvConf not working as expected [GH 6977]
  • Added progress indicator helper function used to show a Please Wait message with animated dots on the conversion process to show users that WSL is still running.
  • Switch wslhost.exe to a win32 app.
  • Switch wsl.exe --install to not require the --distribution argument. This change switches wsl.exe --install to not require the --distribution argument but maintains support to avoid breaking existing scripts.
  • Add wsl.exe --version command
  • Add Windows version to wsl.exe --status and wsl.exe --version
  • Cleanup wsl.exe invalid argument handling to make syntax errors easier to self-diagnose.
  • If the app is launched via the tile, prompt the user for input before closing the console window.
  • Add error message dialog for wslg.exe
  • Simplify print for unsupported command line arguments.
  • Print a better error message if the user runs wsl.exe --install when WSL is already installed
  • Add special error codes for custom kernel not present, and custom kernel not supported (ARM64)
  • Update wsl.exe --update to launch the store page.
  • Improved stability and performance of localhost relay.
  • Additional performance and stability improvements.