浩樊啊
2013-Oct-29 04:02 UTC
Failed to read /local/domain/0/backend/qdisk/26/51713/feature-flush-cache.
a problem occurred as follow when i use xen running a os.how can i solve it?
here is my config
kernel = "/usr/lib/xen/boot/pv-grub-x86_32.gz"
extra="(hd0,0)/boot/grub/grub.conf"
memory = 1024
name = "vir3"
vcpus = 1
vif = ['']
#vif=["mac=00:16:3e:00:00:22, bridge=xenbr0"]
ip = "192.168.226.158"
netmask="255.255.255.0"
getway="192.168.226.1"
disk = ["tap:aio:/home/a/vir/new.img,xvda1,w"]
root = "/dev/xvda1 ro"
~
Xen Minimal OS!
start_info: 0xa78000(VA)
nr_pages: 0x40000
shared_inf: 0x8bebd000(MA)
pt_base: 0xa7b000(VA)
nr_pt_frames: 0x9
mfn_list: 0x978000(VA)
mod_start: 0x0(VA)
mod_len: 0
flags: 0x0
cmd_line: root=/dev/xvda1 ro (hd0,0)/boot/grub/grub.conf
stack: 0x956de0-0x976de0
MM: Init
_text: 0x0(VA)
_etext: 0x71008(VA)
_erodata: 0x87000(VA)
_edata: 0x8c768(VA)
stack start: 0x956de0(VA)
_end: 0x977390(VA)
start_pfn: a87
max_pfn: 3fffd
Mapping memory range 0xc00000 - 0x3fffd000
setting 0x0-0x87000 readonly
skipped 0x1000
MM: Initialise page allocator for c81000(c81000)-0(3fffd000)
MM: done
Demand map pfns at 3fffe000-bfffe000.
Heap resides at bffff000-fffff000.
Initialising timer interface
Initialising console ... done.
gnttab_table mapped at 0x3fffe000.
Initialising scheduler
Thread "Idle": pointer: 0xbffff030, stack: 0x3ff20000
Thread "xenstore": pointer: 0xbffff4a0, stack: 0x3ff30000
xenbus initialised on irq 1 mfn 0x247795
Dummy main: start_info=0x976ee0
Thread "main": pointer: 0xbffff910, stack: 0x3ff40000
Thread "pcifront": pointer: 0xbffffd80, stack: 0x3ff50000
"main" "root=/dev/xvda1" "ro"
"(hd0,0)/boot/grub/grub.conf"
pcifront_watches: waiting for backend path to appear device/pci/0/backend
vbd 51713 is hd0
******************* BLKFRONT for device/vbd/51713 **********
backend at /local/domain/0/backend/qdisk/26/51713
Failed to read /local/domain/0/backend/qdisk/26/51713/feature-flush-cache.
83888128 sectors of 0 bytes
**************************
GNU GRUB version 0.97 (1048576K lower / 0K upper memory)
[ Minimal BASH-like line editing is supported. For
the first word, TAB lists possible command
completions. Anywhere else TAB lists the possible
completions of a device/filename. ]
grubdom>
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel
Ian Campbell
2013-Oct-31 15:14 UTC
Re: Failed to read /local/domain/0/backend/qdisk/26/51713/feature-flush-cache.
On Tue, 2013-10-29 at 12:02 +0800, 浩樊啊 wrote:> backend at /local/domain/0/backend/qdisk/26/51713 > Failed to > read /local/domain/0/backend/qdisk/26/51713/feature-flush-cache.feature-* nodes are supposed to be optional and it appears that qemu-xen-traditional's qdisk does not implement it. This particular node indicates support for BLKIF_OP_FLUSH_DISKCACHE. extras/mini-os/blkfront.c should deal with this. However it unconditionally uses BLKIF_OP_FLUSH_DISKCACHE in blkfront_sync, I'm not sure what the fallback (if any) is supposed to be. I doubt it can be safely ignored, but that might be the only/best option? qemu-xen (the upstream qemu) does seem to implement this feature, FWIW. Ian. _______________________________________________ Xen-devel mailing list Xen-devel@lists.xen.org http://lists.xen.org/xen-devel
Samuel Thibault
2013-Oct-31 18:13 UTC
Re: Failed to read /local/domain/0/backend/qdisk/26/51713/feature-flush-cache.
Ian Campbell, le Thu 31 Oct 2013 15:14:59 +0000, a écrit :> extras/mini-os/blkfront.c should deal with this. However it > unconditionally uses BLKIF_OP_FLUSH_DISKCACHE in blkfront_sync,? It checks for dev->info.flush being 1. AFAIK the printed warning does not have consequences by itself.> I''m not sure what the fallback (if any) is supposed to be. I doubt it > can be safely ignored, but that might be the only/best option?Well, I don''t know the precise semantic of missing barrier and cache features. Normally it means (resp.) there is strict ordering of operations, and no cache, but I doubt all implementations do that. I''m indeed afraid there is no other option than what is already implemented. Samuel
Ian Campbell
2013-Oct-31 18:54 UTC
Re: Failed to read /local/domain/0/backend/qdisk/26/51713/feature-flush-cache.
On Thu, 2013-10-31 at 19:13 +0100, Samuel Thibault wrote:> Ian Campbell, le Thu 31 Oct 2013 15:14:59 +0000, a écrit : > > extras/mini-os/blkfront.c should deal with this. However it > > unconditionally uses BLKIF_OP_FLUSH_DISKCACHE in blkfront_sync, > > ? It checks for dev->info.flush being 1.Oh, I incorrectly read that as the request being to flush...> AFAIK the printed warning > does not have consequences by itself. > > > I''m not sure what the fallback (if any) is supposed to be. I doubt it > > can be safely ignored, but that might be the only/best option? > > Well, I don''t know the precise semantic of missing barrier and cache > features. Normally it means (resp.) there is strict ordering of > operations, and no cache, but I doubt all implementations do that. I''m > indeed afraid there is no other option than what is already implemented.OK, so I also incorrectly read init_blkfront() and took the char path[strlen(dev->backend) + strlen("/feature-flush-cache") + 1]; snprintf(path, sizeof(path), "%s/mode", dev->backend); msg = xenbus_read(XBT_NIL, path, &c); if (msg) { printk("Error %s when reading the mode\n", msg); goto error; } to be erroring on reading feature-flush-cache, which it isn''t... So far I''m 0/2, sorry. So, the upshot is that this is just a warning message and nothing to worry about. fanh2010, if you are really bothered by this warning perhaps a patch to make a variant of xenbus_read_integer which silently accepts ENOENT would be reasonable. (wait for Samuel to ack/nack the concept before putting in the effort though) Ian.
Samuel Thibault
2013-Oct-31 18:56 UTC
Re: Failed to read /local/domain/0/backend/qdisk/26/51713/feature-flush-cache.
Ian Campbell, le Thu 31 Oct 2013 18:54:41 +0000, a écrit :> fanh2010, if you are really bothered by this warning perhaps a patch to > make a variant of xenbus_read_integer which silently accepts ENOENT > would be reasonable.Yes, that would be fine. Samuel