Jump to content

virt-io 10 Gbit/s causes bluescreen on WinXP


FranceBB

Recommended Posts

Hi there everyone,

I'm using virtio-win-0.1.229 on Virtualbox 7.0.97 with Windows XP x86. Once the driver is installed, it can be set in several different modes, namely 10 Mbit/s, 100 Mbit/s, 1000 Mbit/s 10000 Mbit/s. By default in Windows XP it's set to 1000 Mbit/s, so 1 Gbit/s. As soon as I change it to 10 Gbit/s, however, I get a bluescreen. I tried to ask on GitHub about this and I also asked the virtio guys whether they were gonna release any updates for XP and they clearly said "no" and that XP is out of support. -.-

So the questions I'm asking is:

Do you guys actually use virtio on XP in a VM? Which performances do you get? Given that virtio is open source, has anyone actually ported a modern version of the ethernet driver (NetKVM) to XP? (and if so, why wasn't it committed via a pull request?).

A side note: I'm using the PAE 128GB RAM patch, so I really hope it's not the one causing those bluescreens...

A few more info about the current issue I'm facing and my testing platform:

 

Software environment

 - Host Operating system: Fedora 38

 - Host Architecture: x64

 - Host kernel version: 6.2.12

 - Host Hypervisor and version: Virtualbox 7.0.97 r156983

 - Guest Operating system: Windows XP Professional (with Microsoft Updates 'till July 2019)

 - Guest Architecture: x86

 - Guest libvirt version: virtio-win-0.1.229

 

 

Hardware environment

- CPU: i7 6700HQ 4c/8th 2.60GHz

- RAM: 64GB DDR4 (2x32)

- GPU: NVIDIA GTX 950M 4GB GDDR5

- SSD: Samsung EVO 1TB Sata III (OS)

- SSD: Samsung QVO 1TB Sata III (Data)

- SSD: Intel 660p NVME 1TB (Virtual Machines)

 

 

 

Description of the problem

I noticed that, when switching to virtio, the default reported connection speed reported was 1 Gbit/s despite the fact that the virtual adapter should support 10 Gbit/s. I went in the settings and changed the reported speed from 1 Gbit/s to 10 Gbit/s (it's possible to do it from the registry as well, eventually), however it bluescreened.

 

Steps to reproduce

1. Choose virt-io in Virtualbox as network adapter

2. Boot Windows XP Pro x86

3. Install the virt-io Windows drivers from the latest ISO (virtio-win-0.1.229.iso)

4. Reboot

5. Go to the correctly recognized virt-io network adapter and change the configuration from 1 Gbit/s to 10 Gbit/s

6. Confirm, apply, ok, close all the windows and wait for the bluescreen

 

Pictures showing the issue:

233923929-ea463b37-514b-41f0-83f0-00ca01

233923934-1226e41c-f34e-4ac5-bac0-f889cb

233923940-face5f55-c754-4f71-b8a1-6a6b85

Link to comment
Share on other sites


1 hour ago, jaclaz said:

Only out of curiosity, and of course only if you want to share this piece of info, what is the actual reason to have a 10G ethernet connection? :unsure:

jaclaz

He is a broadcaster engineer , he needs to transfer a large amount of file around,

You already have watched lot of shows in Italian & British TV which he encoded , though that's a different thing.

Link to comment
Share on other sites

12 hours ago, FranceBB said:

6. Confirm, apply, ok, close all the windows and wait for the bluescreen

Pictures showing the issue:

233923940-face5f55-c754-4f71-b8a1-6a6b85

Reading Italian is not one of my strongest abilities, but I'm pretty sure by "disco" they didn't mean the music style. 

Memoria or disco wording means they suspect your HDD or RAM be at fault, which could also point to the PAE patch.

PAE patch doesn't get friendly with Nvidia drivers, the combination of PAE+Nvidia drivers  don't go well with network drivers.

Link to comment
Share on other sites

8 hours ago, Dibya said:

Can u check it out on Server 2003? I think XP's stack got limited to 2.5Gb/s since SP2  update by Redmond Red Devil who also removed PAE & Storeport.

I see! I didn't know it was limited to 2.5 Gbit/s, that could explain why it's not behaving correctly and why it was set to 1 Gbit/s in the first place... Interesting! I think the sensible thing to do is unfortunately going to be to leave the default mode to 1 Gbit/s and call it a day then, I'm afraid. Very disappointing... :( 

7 hours ago, jaclaz said:

Only out of curiosity, and of course only if you want to share this piece of info, what is the actual reason to have a 10G ethernet connection? :unsure:

The storages are connected with several connections going to the switch, each one of them being 10 Gbit/s fiber SFP+ at both ends and an LC cable. This is generally done for real bare metal Server 2019 hardware that needs to pull and send plenty of big beefy files back and forth all the time. In this case, it's just a VM connected to legacy stuff, but it's connected to the switch with a single Myricom 10 Gbit/s SFP+ so it would have been nice if it was possible to pass it through, but unfortunately that's beyond XP... :( 

6 hours ago, Dibya said:

He is a broadcaster engineer , he needs to transfer a large amount of file around,

You already have watched lot of shows in Italian & British TV which he encoded , though that's a different thing.

Yes, but those machines are not encoding anything, they're connected via COM passthrough to an RS232 that is connected to very very very very old 1 inch type c physical devices when I need to capture something stored on a very old support for historical/archival reasons. Historically those were Windows 2000 Professional SP4 machines, but we were able to "upgrade" to XP years ago and still maintain compatibility in the RS232 communication. Any newer OS (Win7 all the way to Win11) won't work with the original Delphi software created to drive those (which, to be fair, was already "legacy" at the time). Long story short, they drive very old hardware and save something stored on very old media as v210 lossless which is then shared with the rest of the modern world.

I can't go into any further details 'cause I don't think it's appropriate nor of any interest to anyone, but for anyone curious, just google "1 inch type c" and you'll see or, given that Jaclaz is Italian, he might be familiar with the Italian terminology which is "Pollice".

 

4 hours ago, Dixel said:

Reading Italian is not one of my strongest abilities, but I'm pretty sure by "disco" they didn't mean the music style. 

hahahahahaha it would have been cool, though! :P

But yeah, "disco" is indeed "disk". It says "beginning of the creation of the physical memory image on the disk". The system is healthy as the VM is running on an Intel 660p NVME and Linux has nothing to say about its health. It's almost definitely the PAE patch making it misbehave.

 

 

Anyway, thanks everyone for your help, I think we got it now.

So, to recap: XP is limited to 2.5 Gbit/s at network level and it can't handle 10 Gbit/s, thus bluescreening. The option to go to 10 Gbit/s mode should only be displayed to Windows Server 2003 and it's an issue on the driver side as it should never be exposed to XP clients.

 

I'm sorry if the solution isn't very interesting to anyone, but still... 

Thanks for the swift reply, that's what I always expect from MSFN! ;) 

Edited by FranceBB
Link to comment
Share on other sites

francebb is back ? i thought last time he left us and said he should not look back anymore

 

well if there is a limit set that should be able to be changed

by the way we recently talked about francebb and that this might solve his problem, he wasnt there to see whats going on:

https://github.com/reactos/reactos/commit/66dead68ec780a4a40c5b7d31f57e3646979a402

 

its from reactos just look this line:

/* The forced speed, 10Mb, 100Mb, gigabit, 2.5Gb, 10GbE. */

Link to comment
Share on other sites

@Dibya

I am pretty sure that FranceBB can answer any question by himself (again if he wants to), no need for your intervention, and of course whether I have watched anything he encoded  fiddled with you cannot say.

@FranceBB

Yep (as expected BTW) you are trying to do it because you (believe you) can :yes:, which is an excellent reason.

An XP running in a VM like Virtualbox is unlikely to be used as a high speed router or NAS, there are probably so many bottlenecks, either in the VM or in the communication interface with the devices (that I now know are RS232) that the advantage of 10 GB over 1 GB network transfer is unlikely to be in practice a limit.

Historically the original reason why XP was dumbed down (including the PAE limitation in later service packs)  when compared to Server 2003 was - beside some limitations connected to license (please read as "milking more money from professional users") - the poor quality of hardware and related drivers, it is not surprising that they rate limited mindboggingly fast (at the time) network cards.

What is more perplexing is the blue screen, if it was properly written the driver (or the OS) could have well (silently) self-limit the transfer to 2.5 Gb/s (or whatever).

jaclaz

 

Edited by jaclaz
Link to comment
Share on other sites

If they only cared about drivers, and not to impose a restriction, they could have defaulted to  /MAXMEM=3072 or some other number, and allow it to be lifted and observe system stability. Now the maxmem is hardcoded.

Link to comment
Share on other sites

15 hours ago, user57 said:

francebb is back ?

I'm not sure what you mean. It's not a matter of being here or not, it's a community, everyone spends the time he has or wants to spend helping others and that's fine, it's not like one has to keep posting over and over again, every contribution is welcome as it's how a forum works I guess. I'm not really sure people are interested in this, but if you *must* know, in my case the fact that I don't post much is mostly because I go to work at 08.00AM and leave at 6.30PM, then I have dinner at 7.00PM at home and I study for my PhD 'till around 01.00AM, then I go to bed, sleep for a few hours, wake up in the morning and go back to work and repeat in cycle. It's 2023, this shouldn't surprise anyone but yes, I barely have any spare time for myself, so my "contributions" to MSFN have been essentially zero lately... This doesn't mean that, if I have an XP related question, I shouldn't go to MSFN as there are many valuable members who can "give up" some of their time for free and answer my questions, just like in this case as the community provided an answer and I'm glad for that. It goes without saying that I'm extremely grateful to all the people who are here and every week decide to spend a tiny bit of their free time to help others. Yes, it's how forum work, but sometimes we take this for granted and we shouldn't. ;) 

6 hours ago, jaclaz said:

Yep (as expected BTW) you are trying to do it because you (believe you) can :yes:, which is an excellent reason.

An XP running in a VM like Virtualbox is unlikely to be used as a high speed router or NAS, there are probably so many bottlenecks, either in the VM or in the communication interface with the devices (that I now know are RS232) that the advantage of 10 GB over 1 GB network transfer is unlikely to be in practice a limit.

Yeah, I mean, they can stay at 1 Gbit/s forever and it's not gonna be noticeable or make any difference, I'm sure, so it's fine. ;) 

6 hours ago, jaclaz said:

Historically the original reason why XP was dumbed down (including the PAE limitation in later service packs)  when compared to Server 2003 was - beside some limitations connected to license (please read as "milking more money from professional users") - the poor quality of hardware and related drivers, it is not surprising that they rate limited mindboggingly fast (at the time) network cards.

Yeah, licensing aside, back then even "just" 2.5 Gbit/s was mind blowing in terms of speed, so it's no wonder no one ever had issues 'till 20 years later and even now, realistically, if we consider XP as a consumer oriented OS, 2.5 Gbit/s is waaaaay more than enough for consumers / home users.

6 hours ago, jaclaz said:

What is more perplexing is the blue screen, if it was properly written the driver (or the OS) could have well (silently) self-limit the transfer to 2.5 Gb/s (or whatever).

Well everything still points to a poorly written driver and clearly nobody tested it on XP when it came out in 2017 on anything other than the default 1 Gbit/s speed, 'cause, let's face it, even in 2017 1 Gbit/s was way more than enough for pretty much everything anyway.

 

Anyway, thanks everyone for your answers! :) 

Edited by FranceBB
Link to comment
Share on other sites

On 9/30/2023 at 12:22 AM, Dibya said:

I think XP's stack got limited to 2.5Gb/s since SP2  update by Redmond Red Devil who also removed PAE & Storeport.

Never heard of that before! Do you have technical information?

Link to comment
Share on other sites

I've never heard of that either. I suspect there might be a limit to the rate at which packets can be fetched, but not a strict round number for the resulting bitrate.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...