memory errors

By: anon2 (anon.delete@this.anon.com), March 5, 2021 8:55 am
Room: Moderated Discussions
Carson (carson.delete@this.example.edu) on March 5, 2021 2:43 am wrote:
> anon2 (anon.delete@this.anon.com) on March 4, 2021 9:46 pm wrote:
> > You still don't use virtual machines for testing?
>
> Most of Linux is device drivers. Virtual machines have virtualized hardware
> that doesn't work the same as (and is usually simpler than) real hardware.

By far the majority of code of any given system (like Linus' laptop or his big slow booting systems) runs code that is _other_ than device drivers. And devices can be and are emulated quite well (not exactly the same but to some degree), and also device drivers include virtualized device drivers of the type that only can be tested by running guests.

A really big device driver is a GPU, noveau say, at 200k LOC (including all supported GPUs). But no other drivers you would run would get close to that. The basic NVMe host block driver is 10K lines. mm/ is ~150K, fs/xfs/ is ~150K, kernel/ is ~400K, fs/*.c is 100K, block/ is 60K, net/ipv4 is 100K.

>
> There are many parts of Linux which can be tested in a VM (filesystems and core network code
> come to mind),

Device drivers are actually getting easier and more regular in general, and less need to test them and/or more availability of decent emulated implementations, pass through / virtualized device capability, etc.. The exceptions are a few things like wifi and consumer GPU drivers. Notice I never asked whether Linus still doesn't use *only* virtual machines for testing. Of course you need to test on bare metal sometimes.

> but "kernel development" in general includes parts which need higher fidelity.

Not true. A VM is a target just like anything else, and has its own quirks and issues and needs testing just as a bare metal system does. Also you could certainly develop an entire kernel from scratch using nothing but qemu and have it boot on real hardware and run real devices (just maybe not your average laptop with all devices).

For turning around images that boot very quickly on that large system, testing scalability and performance and filesystems and swap files and virtio drivers etc etc, VMs would be a great kernel development tool.
< Previous Post in ThreadNext Post in Thread >
TopicPosted ByDate
CPU & Memory bit flipsGanon2021/03/03 10:05 AM
  Also "Silent Data Corruption"Adrian2021/03/03 11:42 AM
    Thanks for the referenceGanon2021/03/03 12:47 PM
  Implications for linux page cacheanon2021/03/03 12:54 PM
    Implications for linux page cacheLinus Torvalds2021/03/03 02:54 PM
      memory errorsblaine2021/03/03 03:53 PM
        memory errorsanon22021/03/03 06:30 PM
          memory errorsdmcq2021/03/04 06:16 AM
            memory errorsEtienne Lorrain2021/03/04 07:26 AM
              memory errorsdmcq2021/03/04 07:40 AM
                memory errorsEtienne Lorrain2021/03/04 07:58 AM
                  memory errorsdmcq2021/03/04 08:12 AM
                  memory errorsCarson2021/03/05 03:31 AM
                    memory errorsEtienne Lorrain2021/03/05 07:23 AM
                      memory errorsrwessel2021/03/05 08:48 AM
                      memory errorsdmcq2021/03/05 01:01 PM
                        memory errorsrwessel2021/03/05 01:23 PM
                          memory errorsdmcq2021/03/05 01:51 PM
                      memory errorsBrendan2021/03/06 12:38 AM
                      memory errorsCarson2021/03/06 02:35 AM
                        memory errorsCarson2021/03/06 07:24 AM
                memory errorsDavid Hess2021/03/04 02:44 PM
                  memory errorsrwessel2021/03/04 06:14 PM
                  memory errorsLinus Torvalds2021/03/04 09:21 PM
                    memory errorsanon22021/03/04 10:46 PM
                      memory errorsCarson2021/03/05 03:43 AM
                        memory errorsanon22021/03/05 08:55 AM
                    memory errorsgallier22021/03/05 03:22 AM
                  memory errorsdmcq2021/03/05 01:59 PM
                    memory errorsDavid Hess2021/03/06 05:27 AM
                      memory errorsCarson2021/03/06 07:44 AM
                      memory errorsGabriele Svelto2021/03/06 11:11 AM
                        memory errorsDavid Hess2021/03/06 11:28 AM
                          memory errorsMichael S2021/03/06 03:45 PM
              memory errorsDoug S2021/03/04 11:48 AM
                memory errorsMichael S2021/03/04 12:36 PM
              memory errorsJörn Engel2021/03/04 04:32 PM
                memory errorsLinus Torvalds2021/03/04 09:47 PM
                  memory errorsEtienne Lorrain2021/03/05 02:09 AM
                  memory errorsMichael S2021/03/05 05:06 AM
                    memory errorsLinus Torvalds2021/03/05 12:59 PM
                      memory errorsrwessel2021/03/05 01:32 PM
                        memory errorsrwessel2021/03/05 01:37 PM
                        memory errorszArchJon2021/03/06 09:39 PM
                      memory errorsGabriele Svelto2021/03/06 01:58 PM
                  memory errorsJörn Engel2021/03/05 11:12 AM
                Amiga recoverable RAM disk?Carson2021/03/05 04:03 AM
                  Thanks - TIL a cool Amiga feature (nt) (NT)John2021/03/05 01:51 PM
                    Another cool Amiga feature, datatypesCharles2021/03/06 01:01 AM
                      Another cool Amiga feature, datatypesJukka Larja2021/03/06 02:23 AM
                      Another cool Amiga feature, datatypesAnon2021/03/06 01:40 PM
                      Another cool Amiga feature, filesystemsMarcus2021/03/07 01:28 AM
  CPU & Memory bit flipszArchJon2021/03/04 07:39 AM
    CPU & Memory bit flipsdmcq2021/03/04 07:59 AM
      CPU & Memory bit flipsrwessel2021/03/04 01:27 PM
  speak of the devilRobert Williams2021/03/05 08:53 AM
    speak of the devildmcq2021/03/05 12:26 PM
      speak of the devilRobert Williams2021/03/05 04:15 PM
Reply to this Topic
Name:
Email:
Topic:
Body: No Text
How do you spell avocado?