aboutsummaryrefslogtreecommitdiffstats
path: root/extras/mini-os
Commit message (Collapse)AuthorAgeFilesLines
* minios: Fix blkfront driver when sector_size != 512Keir Fraser2009-05-261-4/+4
| | | | | | | | The first and last sector as well as the sector number of the request is expressed in 512 bytes units, independently from the real sector size. Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
* minios: Implement some extra lib functions for ocaml xenstored stubdomKeir Fraser2009-05-192-0/+38
| | | | | | | We could stub them out as unsupported, but we may as well implement them as they are very simple. Signed-off-by: Alex Zeffertt <alex.zeffertt@eu.citrix.com>
* minios: Define extra stub functions to allow build of ocaml xenstored stubdomKeir Fraser2009-05-191-1/+58
| | | | | | | These are referenced by the libs that ocamlopt links xenstored to, but ought not actually get called. Signed-off-by: Alex Zeffertt <alex.zeffertt@eu.citrix.com>
* stubdom: drop lwip supportKeir Fraser2009-04-233-11/+18
| | | | | | | | | | | | | | | | | | | | Network support is still provided the same way: using the tap interface, created in qemu using netfront. The lwip stack is still available to avoid additional compilation issues. However the stubdom is not going to have its own vif anymore, this means that the only vnc server supported is the one in dom0. You can still enable the vnc server in a stubdom at compile time, if you want so. Probably the most important change caused by this patch to xen users is that you don't have to specify two vif in the stubdom config file anymore, but just one: -vif = [ '', 'ip=10.0.1.1,mac=aa:00:00:12:23:34'] +vif = ['ip=10.0.1.1,mac=aa:00:00:12:23:34'] Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
* stubdoms: generate stubdom config fileKeir Fraser2009-04-231-4/+0
| | | | | | | | | | | | | | | | | | This patch removes the need for a second configuration file for stubdoms: it is going to be automatically generated by the script stubdom-dm using command line options and xenstore to find any needed information. The configuration script will be placed under /etc/xen/stubdoms and automatically removed when the domain is destroyed. The only change needed in xend is not to write on xenstore sdl, opengl and serial command line options for qemu, because stubdoms do not support them. It is safe to remove those two options from xenstore because qemu does not use xenstore to read commans line options. Finally this patch fixes blkfront disconnections from backends and display and xauthority variables for pv guests. Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
* minios: fix a memory corruption in blkfrontKeir Fraser2009-04-141-5/+7
| | | | | | | | | The corruption happens every time we pass a sector aligned buffer (instead of a page aligned buffer) to blkfront_aio. To trigger the COW we have to write at least a byte to each page of the buffer, but we must be careful not to overwrite useful content. Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
* minios: Extend struct blkfront_aiocb.Keir Fraser2009-03-311-0/+2
| | | | Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
* minios: _chk_fail and _chk canaries for minios and newlibKeir Fraser2009-03-311-0/+8
| | | | | | | | Add __stack_chk_fail to mini-os and __sprintf_chk __fprintf_chk to newlib, to cope with ocaml runtimes compiled with -fstack-protector. From: "George S. Coker, II" <gscoker@alpha.ncsc.mil> Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
* minios: allow to allocate machine contiguous pagesKeir Fraser2009-03-134-0/+152
| | | | | | | | This is a port of XenLinux xen_alloc_contig_memory() to mini-os. A sufficiently privileged mini-os guest can exchange a small number of its pages with machine contiguous pages. Signed-off-by: Rolf Neugebauer <rolf.neugebauer@netronome.com>
* minios: Fix 18874 memory clippingKeir Fraser2009-03-091-5/+8
| | | | | | | Fix 18874's memory clipping: there are three page-sized holes between direct mapping, demand mapping, heap pages and the end of memory. Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
* minios: general cleanup of mm.cKeir Fraser2009-03-023-213/+302
| | | | | | | | Major clean up of mm.c. Added comments, fixed coding style, more sensible variable names, mark some local functions static etc. Signed-off-by: Rolf Neugebauer <rolf.neugebauer@netronome.com> Acked-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
* minios: cleanup events.cKeir Fraser2009-03-021-27/+57
| | | | | | | | Don't throw away hypercall error codes. They might be useful. Also some minor coding style cleanups. Signed-off-by: Rolf Neugebauer <rolf.neugebauer@netronome.com> Acked-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
* minios: add ioremap/iounmapKeir Fraser2009-03-027-48/+248
| | | | | | | | Add ioremap and iounmap functions to minios. Also move some unmapping code from and clean up mem_test. Signed-off-by: Rolf Neugebauer <rolf.neugebauer@netronome.com> Acked-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
* minios: fix p2m on x86Keir Fraser2009-02-091-0/+6
| | | | | | 15675:bf85b467ee89 Fixed p2m on x86_64, but instead broke it on x86. Signed-off-by: Samuel Thibault <samuel.thibaut@ens-lyon.org>
* Fix mini-os ia64 compilationKeir Fraser2008-12-182-13/+17
| | | | | | | - Avoid nested function to avoid a trampoline. - Do not link mini-os_app.o when it is empty. Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
* mini-os: Make utility function get_self_id() in fs-front.c public.Keir Fraser2008-12-163-13/+15
| | | | Signed-off-by: Yosuke Iwamatsu <y-iwamatsu@ab.jp.nec.com>
* minios: Clip memory not usable by Mini-OS (above 1GB)Keir Fraser2008-12-051-3/+10
| | | | Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
* merge with xen-unstable.hgIsaku Yamahata2008-11-252-0/+92
|\
| * minios: add a barebone net/if.hKeir Fraser2008-11-112-0/+92
| | | | | | | | | | | | | | | | net/if.h is a standard header but unfortunately lwip doesn't provide it for any target but linux. Therefore I am adding a net/if.h, with an empty implementation of the declared functions. Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
* | [IA64] Remove the useless big endian stuff.dietmar.hahn@fujitsu-siemens.com2008-11-1815-410/+95
| | | | | | | | | | | | | | | | | | | | | | | | | | This patch removes all the useless big endian stuff from the mini-os. Before there was an effort to support big endian for PV-guest. But the big endian support was never gotten into the common parts of the mini-os so it makes no sense to have this only in the ia64 specific sources. And as there is no open source big endian os and porting our BS2000 os to ia64 was stopped, nobody wants that stuff in the common minos. So this looks ugly then and remove the big endian stuff. Signed-off-by: Dietmar Hahn <dietmar.hahn@fujitsu-siemens.com>
* | [IA64] minios: Fix ctor and dtor sections.dietmar.hahn@fujitsu-siemens.com2008-11-171-2/+4
| | | | | | | | Signed-off-by: Dietmar Hahn <dietmar.hahn@fujitsu-siemens.com>
* | [IA64] minios: Clean up the hypervisor interfacedietmar.hahn@fujitsu-siemens.com2008-11-173-130/+139
|/ | | | | | move all hypervisor calls to xencomm Signed-off-by: Dietmar Hahn <dietmar.hahn@fujitsu-siemens.com>
* minios: Define __INSIDE_MINIOS__ rather than __MINIOS__Keir Fraser2008-10-293-4/+4
| | | | Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
* minios: do not expose #define current to applicationsKeir Fraser2008-10-273-6/+10
| | | | | | | | | | | | | | | | | Currently the minios headers do this: #define current get_current() Obviously when porting general code to this environment, this can cause problems ! The attached patch arranges for this only to be done if #define __MINIOS__ is declared, which is set up by the makefile in extras/mini-os. Suppressing the namespace pollution is necessary to get recent upstream qemu's to compile, since they (quite properly) use `current' as an ordinary identifier. Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
* minios: blkfront should set protocol nodeKeir Fraser2008-09-241-0/+7
| | | | | From: Gerd Hoffmann <kraxel@redhat.com> Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
* mini-os: adding some missing posix function declarationsKeir Fraser2008-09-177-0/+100
| | | | | | | Adding some missing posix function declarations, to get rid of some qemu-remote compile time warnings. Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
* stubdom: fix munmap's update_va_mapping flag passing, thus fixingKeir Fraser2008-08-281-4/+7
| | | | | | INVLPG passing Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
* stubdom: add v?errx? and v?warnx? functionsKeir Fraser2008-08-272-0/+77
| | | | Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
* mini-os: Fix build failure with void* arithmetic.Keir Fraser2008-08-271-1/+1
| | | | Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
* mini-os: Add printf format checking to xenbus_printfKeir Fraser2008-08-271-1/+2
| | | | | Reported-by: "Daniel P. Berrange" <berrange@redhat.com> Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
* stubdom: support quotes in argument passingKeir Fraser2008-08-271-7/+28
| | | | Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
* stubdom: make munmap work in batches to fix stack overflowKeir Fraser2008-08-271-22/+32
| | | | Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
* mini-os: make xenbus_read_integer and xenbus_printf take const stringsKeir Fraser2008-08-272-6/+6
| | | | Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
* stubdom: add syslog functionsKeir Fraser2008-08-272-0/+65
| | | | Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
* stubdom: add dummy pthread_mutexattr*Keir Fraser2008-08-271-0/+7
| | | | Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
* stubdom: int32_t is provided by stdint.h, not sys/types.hKeir Fraser2008-08-271-1/+1
| | | | Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
* pv-grub: On x86_64, also build an x86_32 pv-grubKeir Fraser2008-08-141-2/+2
| | | | | | | This requires suffixing obj directories and having grub compiled outside sources. Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
* stubdom: for safety, tell lwip we use the heap in the event handlerKeir Fraser2008-08-111-0/+1
| | | | Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
* prefix mini-os lists with minios_, drop QEMU_ prefix from QEMU_LIST_*Keir Fraser2008-08-089-108/+108
| | | | | | That permits to reduce the amount of difference with upstream. Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
* stubdom: turn off_t 64bit on x86Keir Fraser2008-08-084-12/+11
| | | | | | | | We can decide to make off_t 64bit instead of implementing the LFS tricks. Name corresponding functions foo64 to permit simple caml programs linking. Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
* mini-os: Fix 32bit compilation of fs-front.cKeir Fraser2008-08-041-2/+2
| | | | | Reported-by: Trolle Selander <trolle.selander@eu.citrix.com> Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
* FSIF: extend protocol to multi-grant requests and multi-page ringKeir Fraser2008-08-013-65/+192
| | | | | | | To improve throughput and inline the stat response. Signed-off-by: Grzegorz Milos <gm281@cam.ac.uk> Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
* mini-os: make init_pcifront fail early if there is no backendKeir Fraser2008-07-311-2/+9
| | | | | | Else, we would leave entries in xenstore, which disturbs xend. Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
* minios: grant table map (gntdev) bug fixesKeir Fraser2008-07-241-4/+6
| | | | | | | | | | | * Uninitialized dev_bus_addr argument to GNTTABOP_unmap_grant_ref results in an angry hypervisor. * Set errno in libxc and return -1 on error. * op.status is a int16_t, so it should be printed with PRId16. * Don't print domids[0] or refs[0] if the ptr is NULL. It's more polite to crash later, after the message has been printed. Signed-off-by: Diego Ongaro <diego.ongaro@citrix.com>
* minios: Fix build on some gcc versions.Keir Fraser2008-07-241-0/+1
| | | | Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
* minios: grant table map (gntdev) for miniosKeir Fraser2008-07-245-0/+292
| | | | | | | | I've implemented a grant map for mini-os to support the xc_gnttab_*() functions, the equivalent of gntdev in linux. This is useful for my work in putting xenstored in a stub domain. Signed-off-by: Diego Ongaro <diego.ongaro@citrix.com>
* mini-os: fix FS frontend index readingKeir Fraser2008-07-211-2/+2
| | | | Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
* mini-os: fix fs-front.c debugging printsKeir Fraser2008-07-211-13/+22
| | | | Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
* mini-os: export allocate_ondemandKeir Fraser2008-07-183-6/+21
| | | | | | | allocate_ondemand can be used to allocate addresse space. Primarily used for mapping MFNs, it can also be used e.g. to map grant refs. Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
* mini-os is missing list_top in its list.hKeir Fraser2008-07-181-0/+6
| | | | Signed-off-by: Keir Fraser <keir.fraser@citrix.com>