[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [MirageOS-devel] How to support a larger disk with hvt + kv_ro=direct (pass-through)?



Hi,
 
I'm pretty sure it's this: https://github.com/Solo5/solo5/blob/master/bindings/hvt/block.c#L77-L80
And from those three checks, the most likely one failing is that the request is larger than a block.
 
Could you confirm that please? in that case, then we need to split the request somewhere, or even better, fix this: https://github.com/Solo5/solo5/issues/325

Ricardo
 
----- Original message -----
From: Hiroshi Doyu <hiroshi.doyu@xxxxxxxxxxxx>
Sent by: "MirageOS-devel" <mirageos-devel-bounces@xxxxxxxxxxxxxxxxxxxx>
To: "mirageos-devel@xxxxxxxxxxxxxxxxxxxx" <mirageos-devel@xxxxxxxxxxxxxxxxxxxx>
Cc:
Subject: Re: [MirageOS-devel] How to support a larger disk with hvt + kv_ro=direct (pass-through)?
Date: Mon, Apr 8, 2019 7:01 AM
 
I found that "--kv_ro=fat" integrates FAT+disk.image automatically.
This works with "-t unix --kv_ro=fat" but not with "-t hvt --kv_ro=fat" as below.
Any hint to investigate further?

$~/src/mirage-skeleton/device-usage/kv_ro$ sudo ./solo5-hvt --disk=fat_block1.img kv_ro.hvt -l "*:debug"
            |      ___|
  __|  _ \  |  _ \ __ \
\__ \ (   | | (   |  ) |
____/\___/ _|\___/____/
Solo5: Memory map: 512 MB addressable:
Solo5:     unused @ (0x0 - 0xfffff)
Solo5:       text @ (0x100000 - 0x22bfff)
Solo5:     rodata @ (0x22c000 - 0x268fff)
Solo5:       data @ (0x269000 - 0x34bfff)
Solo5:       heap >= 0x34c000 < stack < 0x20000000
2019-04-08 10:27:23 -00:00: ERR [application] main: (Failure "error reading essential sectors: Invalid argument")
Raised at file "src/core/lwt.ml", line 2998, characters 20-29
Called from file "lib/main.ml", line 64, characters 15-25


Also "fat" command seems to need "--unbuffered" appended.

On Tue, 2019-03-26 at 18:44 +0200, Hiroshi Doyu wrote:
> Hello,
>
> Configured unix+kv_ro=direct, it seems to read a file from disk dynamically[1].
> But hvt+kv_ro=direct seems to use a ramdisk(crunch?) statically[2].
>
> How can hvt do the similar pass-through to a file as "unix+kv_ro=direct"?
>
> [1]
> $ mirage configure -t unix --kv_ro=direct && make depend && make
> $ ./kv_ro 
> 2019-03-26 16:31:28 +00:00: INF [application] foo
> $ echo -n "hello" > t/secret 
> $ ./kv_ro 
> 2019-03-26 16:32:15 +00:00: INF [application] hello
>
> [2]
> $ mirage configure -t hvt --kv_ro=direct && make depend && make
> $ sudo ./solo5-hvt kv_ro.hvt 
> 2019-03-26 16:34:19 -00:00: INF [application] foo
> $ echo -n "hello" > t/secret 
> $ sudo ./solo5-hvt kv_ro.hvt 
> 2019-03-26 16:35:11 -00:00: INF [application] foo
>
> the above code change for skelton/device-usage/kv_ro:
> https://github.com/ehirdoy/mirage-skeleton/commit/bff6688e075ffec67723d5663a984263bffa8563
_______________________________________________
MirageOS-devel mailing list
MirageOS-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/mirageos-devel

 
 

_______________________________________________
MirageOS-devel mailing list
MirageOS-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/mirageos-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.