Re: [Xen-devel] [PATCH v4 19/26] xen+tools: Export maximum host and guest cpu featuresets via SYSCTL

2016-03-28 Thread Konrad Rzeszutek Wilk
> xen/include/public/sysctl.h | 27 And implement the XSM flask sub-ops including the appropiate xen.te policy modification along with updating the attributes file. Otherwise the code looks good and you can tack on Reviewed-by: Konrad Rzeszutek Wilk . Or w

Re: [Xen-devel] [PATCH v4 20/26] tools/libxc: Modify bitmap operations to take void pointers

2016-03-28 Thread Konrad Rzeszutek Wilk
c4adfed497a114246 libxl/cpumap: Add xc_cpumap_[setcpu, clearcpu, testcpu] to complement xc_cpumap_alloc. Otherwise: Reviewed-by: Konrad Rzeszutek Wilk ___ Xen-devel mailing list Xen-devel@lists.xen.org http://lists.xen.org/xen-devel

Re: [Xen-devel] [PATCH v4 21/26] tools/libxc: Use public/featureset.h for cpuid policy generation

2016-03-28 Thread Konrad Rzeszutek Wilk
e of the feature have been renamed in the public API, similar renames > are made here. > > Signed-off-by: Andrew Cooper > Acked-by: Wei Liu Reviewed-by: Konrad Rzeszutek Wilk ___ Xen-devel mailing list Xen-devel@lists.xen.org http://lists.xen.org/xen-devel

Re: [Xen-devel] [PATCH v4 22/26] tools/libxc: Expose the automatically generated cpu featuremask information

2016-03-28 Thread Konrad Rzeszutek Wilk
On Wed, Mar 23, 2016 at 04:36:25PM +, Andrew Cooper wrote: > Signed-off-by: Andrew Cooper > Acked-by: Wei Liu Reviewed-by: Konrad Rzeszutek Wilk ___ Xen-devel mailing list Xen-devel@lists.xen.org http://lists.xen.org/xen-devel

Re: [Xen-devel] [PATCH v4 23/26] tools: Utility for dealing with featuresets

2016-03-28 Thread Konrad Rzeszutek Wilk
> +break; > + > +case 'd': > +case 'v': > +mode = MODE_DETAIL; > +break; > + > +default: > + printf("Bad option '%c'\n", c); > +goto op

Re: [Xen-devel] [PATCH v4 24/26] tools/libxc: Wire a featureset through to cpuid policy logic

2016-03-28 Thread Konrad Rzeszutek Wilk
r_features = host_nr_features; > + > +if ( featureset ) > +{ > +memcpy(info->featureset, featureset, > + min(host_nr_features, nr_features) * > sizeof(*info->featureset)); > + > +/* Check for truncated set bits. */ > + for ( i = nr_f

Re: [Xen-devel] [PATCH v2] xen/arm64: check XSM Magic and Signature from the second unknown module.

2016-03-28 Thread Konrad Rzeszutek Wilk
On Tue, Mar 29, 2016 at 01:55:07AM +0800, fu@linaro.org wrote: > From: Fu Wei > > This patch add a check_xsm_signature static function for detecting XSM > from the second unknown module. > > If xen can't get the kind of module from compatible, we guess the kind of > these first two unknown r

Re: [Xen-devel] [PATCH v8 3/3] VT-d: Fix vt-d Device-TLB flush timeout issue

2016-03-29 Thread Konrad Rzeszutek Wilk
On Tue, Mar 29, 2016 at 01:32:02AM +, Xu, Quan wrote: > On March 28, 2016 10:11pm, Konrad Rzeszutek Wilk > wrote: > > > > > > > > +list_del(&pdev->domain_list); > > > > > +pdev->domain = NUL

Re: [Xen-devel] [PATCH v2 3/3] libxl: add domain config parameter to force start of qemu

2016-03-29 Thread Konrad Rzeszutek Wilk
On Tue, Mar 29, 2016 at 06:44:32AM +0200, Juergen Gross wrote: > On 28/03/16 16:50, Konrad Rzeszutek Wilk wrote: > > On Tue, Mar 22, 2016 at 08:29:23AM +0100, Juergen Gross wrote: > >> Today the device model (qemu) is started for a pv domain only in case > >> a device

Re: [Xen-devel] [PATCH v2 2/3] libxl: add new pvusb backend "qusb" provided by qemu

2016-03-29 Thread Konrad Rzeszutek Wilk
> >> +static int usbback_is_loaded(libxl__gc *gc) > >> +{ > >> +int r; > >> +struct stat st; > >> + > >> +r = lstat(SYSFS_USBBACK_DRIVER, &st); > >> + > >> +if (r == 0) > >> +return 1; > >> +if (r < 0 && errno == ENOENT) > >> +return 0; > > > > I believe the COD

Re: [Xen-devel] [PATCH] tools/misc/xen-hvmctx: fix the build

2016-03-29 Thread Konrad Rzeszutek Wilk
On Tue, Mar 29, 2016 at 05:14:42PM +0100, Wei Liu wrote: > On Tue, Mar 29, 2016 at 04:55:23PM +0100, Paul Durrant wrote: > > Commit 78c5f59e "x86/hvm/viridian: save APIC assist vector" changed > > the name of a field in the viridian vcpu save record. Unfortunately this > > record has a decode funct

Re: [Xen-devel] [PATCH v8 for Xen 4.7 1/4] xen: enable per-VCPU parameter for RTDS

2016-03-29 Thread Konrad Rzeszutek Wilk
On Tue, Mar 29, 2016 at 06:59:15PM +0200, Dario Faggioli wrote: > On Fri, 2016-03-25 at 13:07 -0500, Chong Li wrote: > > Ok. I've already fixed all problems pointed out by George and Jan. > > > > Dario and Meng, do you have any other comments on this patch? > > > Ok, I've looked at the patch and

Re: [Xen-devel] [PATCH] Xen on ARM and ARM64: update MAINTAINERS info

2016-03-29 Thread Konrad Rzeszutek Wilk
On Tue, Mar 29, 2016 at 11:01:16AM +0100, Stefano Stabellini wrote: > Not my full time job anymore, but still maintaining it. Applied to for-linux-4.6. Congrats on your new job! > > Signed-off-by: Stefano Stabellini > > diff --git a/MAINTAINERS b/MAINTAINERS > index 32bafda..049aa1d 100644 > -

Re: [Xen-devel] patch ping

2016-03-29 Thread Konrad Rzeszutek Wilk
On Tue, Mar 29, 2016 at 06:21:40AM -0600, Jan Beulich wrote: > REST maintainers, > > may I please ask for acks or otherwise on > http://lists.xenproject.org/archives/html/xen-devel/2016-02/msg03193.html Could you resend the ones you want in 4.7 pls? I recall Reviewing one of them - and one of th

Re: [Xen-devel] [PATCH v2 3/6] x86/time: implement tsc as clocksource

2016-03-29 Thread Konrad Rzeszutek Wilk
> static void tsc_check_slave(void *unused) > @@ -1437,6 +1515,20 @@ static int __init verify_tsc_reliability(void) > } > } > > +if ( !strcmp(opt_clocksource, "tsc") ) Pls also update xen-command-line.markdown > +{ > +if ( try_platform_timer(&plt_tsc) > 0 ) > +

Re: [Xen-devel] crash on boot with 4.6.1 on fedora 24

2016-03-29 Thread Konrad Rzeszutek Wilk
On Mon, Mar 28, 2016 at 06:00:33PM +0100, Michael Young wrote: > I get a crash on boot with my Fedora xen-4.6.1-3.fc24 packages. This seems > to be related to how it is compiled because the same code compiled under > Fedora 23 works. The boot logs are attached. The address mentioned in the > crash

Re: [Xen-devel] [PATCH v5 05/28] xsplice: Design document

2016-03-29 Thread Konrad Rzeszutek Wilk
On Tue, Mar 29, 2016 at 03:36:12AM -0600, Jan Beulich wrote: > >>> On 24.03.16 at 21:00, wrote: > > +struct xen_sysctl_xsplice_list { > > +uint32_t version; /* OUT: Hypervisor stamps > > value. > > + If varies between calls

Re: [Xen-devel] [PATCH v4 0/3] add hypercall option to temporarily pin a vcpu

2016-03-30 Thread Konrad Rzeszutek Wilk
On Wed, Mar 30, 2016 at 12:28:01PM +0200, Juergen Gross wrote: > On 24/03/16 20:41, Wei Liu wrote: > > On Thu, Mar 24, 2016 at 06:58:44PM +0100, Juergen Gross wrote: > >> On 24/03/16 15:03, Wei Liu wrote: > >>> On Tue, Mar 22, 2016 at 08:36:21AM +0100, Juergen Gross wrote: > Committers, >

Re: [Xen-devel] [PATCH v3 5/4] x86: reduce code size of struct cpu_info member accesses

2016-03-30 Thread Konrad Rzeszutek Wilk
part of the change, so the macro can derive > e.g. both %eax and %rax from the passed argument Could you pls include that explanation in the commit description.. And with that you can put Reviewed-by: Konrad Rzeszutek Wilk on the patch. ___ Xen-devel mailing list Xen-devel@lists.xen.org http://lists.xen.org/xen-devel

[Xen-devel] [PATCH] libxc: Document xc_domain_resume

2016-03-30 Thread Konrad Rzeszutek Wilk
Document the save and suspend mechanism. Signed-off-by: Konrad Rzeszutek Wilk --- v2: Wei update on wording. --- tools/libxc/include/xenctrl.h | 52 +++ 1 file changed, 52 insertions(+) diff --git a/tools/libxc/include/xenctrl.h b/tools/libxc/include

[Xen-devel] [TESTDAY] Test report of ARM CubieTruck with Xen 4.7 (staging)

2016-03-30 Thread Konrad Rzeszutek Wilk
*Hardware: ARM CubieTruck A20 (2GB). *Software: Linaro 14.04 with - Xen 4.7 (829e03c acpi: drop CONFIG_ACPI_BOOT and use CONFIG_ACPI instead + xsplice.v5) - Linux v4.5 (with revert of 88f8b1bb41c6208f81b6a480244533ded7b59493 " stmmac: Fix 'eth0: No PHY found' regression") - Linux v4.4 - L

Re: [Xen-devel] [PATCH v7 21/22] xen/arm: Add a hypercall for device mmio mapping

2016-03-30 Thread Konrad Rzeszutek Wilk
On Fri, Mar 25, 2016 at 09:48:54PM +0800, Shannon Zhao wrote: > It needs to map platform or amba device mmio to Dom0 on ARM. But when > booting with ACPI, it can't get the mmio region in Xen due to lack of > AML interpreter to parse DSDT table. Therefore, let Dom0 call a > hypercall to map mmio reg

Re: [Xen-devel] [PATCH v7 21/22] xen/arm: Add a hypercall for device mmio mapping

2016-03-30 Thread Konrad Rzeszutek Wilk
> +int map_dev_mmio_region(struct domain *d, > +unsigned long start_gfn, > +unsigned long nr, > +unsigned long mfn) > +{ > +int res; > + > +if ( !(nr && iomem_access_permitted(d, start_gfn, start_gfn + nr - 1)) ) > +

Re: [Xen-devel] [PATCH v8 20/21] xen/arm: Add a hypercall for device mmio mapping

2016-03-30 Thread Konrad Rzeszutek Wilk
On Wed, Mar 30, 2016 at 06:08:13PM +0800, Shannon Zhao wrote: > From: Shannon Zhao > > It needs to map platform or amba device mmio to Dom0 on ARM. But when > booting with ACPI, it can't get the mmio region in Xen due to lack of > AML interpreter to parse DSDT table. Therefore, let Dom0 call a >

Re: [Xen-devel] [PATCH] libxc: Document xc_domain_resume

2016-03-30 Thread Konrad Rzeszutek Wilk
On Wed, Mar 30, 2016 at 05:01:34PM +0100, Wei Liu wrote: > On Wed, Mar 30, 2016 at 11:10:23AM -0400, Konrad Rzeszutek Wilk wrote: > > Document the save and suspend mechanism. > > > > Signed-off-by: Konrad Rzeszutek Wilk > > --- > > v2: Wei update on wording. &

Re: [Xen-devel] [PATCH v2] oxenstored: allow compilation prior to OCaml 3.12.0

2016-03-30 Thread Konrad Rzeszutek Wilk
On Wed, Mar 30, 2016 at 04:06:39PM +, Jonathan Davies wrote: > Commit 363ae55c8 used an OCaml feature called record field punning. This broke > the build on compilers prior to OCaml 3.12.0. > > This patch makes no semantic change but now uses backwards-compatible syntax. > > Signed-off-by: Jo

Re: [Xen-devel] [PATCH v5 04/28] vmap: Add vmalloc_cb and vfree_cb

2016-03-30 Thread Konrad Rzeszutek Wilk
On Wed, Mar 30, 2016 at 10:24:41AM -0600, Jan Beulich wrote: > >>> On 24.03.16 at 21:00, wrote: > > @@ -266,16 +275,15 @@ void *vzalloc(size_t size) > > return p; > > } > > > > -void vfree(void *va) > > +void vfree_cb(void *va, unsigned int pages, vfree_cb_t *vfree_cb_fnc) > > Just to rep

Re: [Xen-devel] [PATCH v3 0/7] Enhance PAT init to fix Xorg crashes

2016-03-30 Thread Konrad Rzeszutek Wilk
On Wed, Mar 30, 2016 at 11:02:13AM -0700, Luis R. Rodriguez wrote: > On Tue, Mar 29, 2016 at 8:49 AM, Toshi Kani wrote: > > On Tue, 2016-03-29 at 10:46 -0400, Boris Ostrovsky wrote: > >> On 03/29/2016 10:19 AM, Toshi Kani wrote: > >> > On Tue, 2016-03-29 at 12:34 +0200, Ingo Molnar wrote: > >> > >

Re: [Xen-devel] [LKP] [PATCH v3 0/7] Enhance PAT init to fix Xorg crashes

2016-03-30 Thread Konrad Rzeszutek Wilk
On Wed, Mar 30, 2016 at 01:10:29PM -0700, Luis R. Rodriguez wrote: > On Wed, Mar 30, 2016 at 11:58 AM, Konrad Rzeszutek Wilk > wrote: > > On Wed, Mar 30, 2016 at 11:02:13AM -0700, Luis R. Rodriguez wrote: > >> On Tue, Mar 29, 2016 at 8:49 AM, Toshi Kani wrote: > >>

Re: [Xen-devel] [PATCH v5 01/28] HYPERCALL_version_op. New hypercall mirroring XENVER_ but sane.

2016-03-31 Thread Konrad Rzeszutek Wilk
On Thu, Mar 31, 2016 at 12:30:09AM -0600, Jan Beulich wrote: > >>> On 30.03.16 at 17:43, wrote: > > Since they're all cosmetic, if you take care of all of them, feel free > > to stick my ack on the result. > > Actually - no, please don't. While the patch is fine content wise > then from my perspe

Re: [Xen-devel] [PATCH v5 04/28] vmap: Add vmalloc_cb and vfree_cb

2016-03-31 Thread Konrad Rzeszutek Wilk
On Thu, Mar 31, 2016 at 12:46:24AM -0600, Jan Beulich wrote: > >>> On 30.03.16 at 18:44, wrote: > > On Wed, Mar 30, 2016 at 10:24:41AM -0600, Jan Beulich wrote: > >> >>> On 24.03.16 at 21:00, wrote: > >> > @@ -266,16 +275,15 @@ void *vzalloc(size_t size) > >> > return p; > >> > } > >> > >

[Xen-devel] REST MAINTAINERS feedback requested Was:Re: [PATCH v5 01/28] HYPERCALL_version_op. New hypercall mirroring XENVER_ but sane.

2016-03-31 Thread Konrad Rzeszutek Wilk
On Thu, Mar 31, 2016 at 06:07:58AM -0600, Jan Beulich wrote: > >>> On 31.03.16 at 13:43, wrote: > > On Thu, Mar 31, 2016 at 12:30:09AM -0600, Jan Beulich wrote: > >> >>> On 30.03.16 at 17:43, wrote: > >> > Since they're all cosmetic, if you take care of all of them, feel free > >> > to stick my a

Re: [Xen-devel] [PATCH v2] tools/libxc: Fix build error when using xc_version_len

2016-03-31 Thread Konrad Rzeszutek Wilk
On Thu, Mar 31, 2016 at 01:25:30PM +0200, Olaf Hering wrote: > Tools fails to build with gcc 4.5, it does not provide ssize_t. Which version of SLES/OpenSuSE had that? I had been using 4.4.4 and 5.3 and the compiler didn't hit that. > > Fixes d275ec9 ("libxc/libxl/python/xenstat/ocaml: Use new X

Re: [Xen-devel] [PATCH v5 10/28] xsplice: Implement payload loading

2016-03-31 Thread Konrad Rzeszutek Wilk
> Also - how well will this O(n^2) lookup work once there are enough > payloads? I think this calls for the alternative vmap() extension I've > been suggesting earlier. Could you elaborate on the vmap extension a bit please? Your earlier email seems to say: drop the vmap API and just allocate th

[Xen-devel] QEMU-TRAD Re: [PATCH] Fixed building with newer GNUTLS versions.

2016-04-01 Thread Konrad Rzeszutek Wilk
On Thu, Mar 31, 2016 at 10:58:19PM +0200, Sjoer van der Ploeg wrote: Heya! Thank you for posting this and also adding the #ifdef for older versions! Was wondering thought - had you double-checked that the new code path works with the certs? Thanks! P.S. CC-ing Ian who is the QEMU-traditional m

Re: [Xen-devel] [PATCH v2] xen/arm: use XENLOG_G_ERR instead

2016-04-01 Thread Konrad Rzeszutek Wilk
On Thu, Mar 31, 2016 at 05:41:49PM +0800, Shannon Zhao wrote: > From: Shannon Zhao > > To distinguish the error logs in function map_dev_mmio_region, use > XENLOG_G_ERR instead of XENLOG_ERR. > > Signed-off-by: Shannon Zhao Reviewed-by: Konrad Rzeszutek Wilk > --- >

Re: [Xen-devel] [PATCH v4 00/14] Load BIOS via toolstack instead of been embedded in hvmloader.

2016-04-01 Thread Konrad Rzeszutek Wilk
On Fri, Apr 01, 2016 at 10:12:54AM +0100, George Dunlap wrote: > On Thu, Mar 31, 2016 at 5:49 PM, George Dunlap wrote: > > On Thu, Mar 31, 2016 at 3:36 PM, Jim Fehlig wrote: > >> Jan Beulich wrote: > >> On 30.03.16 at 19:22, wrote: > Anthony PERARD wrote: > > Hi all, > > > >

Re: [Xen-devel] [PATCH 1/2] doc: correct hyperlinks in docs/misc/xenstore-paths.markdown

2016-04-01 Thread Konrad Rzeszutek Wilk
On Thu, Mar 31, 2016 at 01:46:51PM +0200, Juergen Gross wrote: > The hyperlinks for the different I/O protocols are wrong. > > Correct them. > > Signed-off-by: Juergen Gross Reviewed-by: Konrad Rzeszutek Wilk > --- > docs/misc/xenstore-paths.markdown | 18 +--

Re: [Xen-devel] [PATCH 2/2] doc: document pvusb Xenstore paths

2016-04-01 Thread Konrad Rzeszutek Wilk
ross Reviewed-by: Konrad Rzeszutek Wilk > --- > docs/misc/xenstore-paths.markdown | 11 +++ > 1 file changed, 11 insertions(+) > > diff --git a/docs/misc/xenstore-paths.markdown > b/docs/misc/xenstore-paths.markdown > index ce00afe..087e239 100644 > --- a/docs

Re: [Xen-devel] [PATCH 08/10] libxl: improve main_tmem_* return codes

2016-04-01 Thread Konrad Rzeszutek Wilk
Improve main_tmem_* return codes by returning EXIT_{SUCCESS/FAILURE} > accordingly to return codes of those functions. > > Signed-off-by: Paulina Szubarczyk Reviewed-by: Konrad Rzeszutek Wilk , albeit The CODING_STYLE says: Every indented statement is braced apart from blocks that contain

[Xen-devel] [PATCH] libxl/CODING_STYLE: Clarify the singular statement in a conditional statement explanation.

2016-04-01 Thread Konrad Rzeszutek Wilk
cept' makes it more obvious (I hope). Signed-off-by: Konrad Rzeszutek Wilk --- CC: Ian Jackson CC: Wei Liu --- --- tools/libxl/CODING_STYLE | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/libxl/CODING_STYLE b/tools/libxl/CODING_STYLE index 522d1c9..01ee25b 100644 --

Re: [Xen-devel] [PATCH 10/10] libxl: libxl_tmem functions improving coding style

2016-04-01 Thread Konrad Rzeszutek Wilk
zyk Reviewed-by: Konrad Rzeszutek Wilk ___ Xen-devel mailing list Xen-devel@lists.xen.org http://lists.xen.org/xen-devel

[Xen-devel] [PATCH] MAINTAINERS: Xen core, Konrad to step down and Juergen to pick up

2016-04-01 Thread Konrad Rzeszutek Wilk
ock-[front|backend]; amongst others. P.S.S. Also sorted the names. Acked-by: Juergen Gross Acked-by: Boris Ostrovsky Acked-by: David Vrabel Signed-off-by: Konrad Rzeszutek Wilk --- MAINTAINERS | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/MAINTAINERS b/MAINTAINERS index 52b8c2

Re: [Xen-devel] pv-grub guest booting fail with recent qemu-xen

2016-04-01 Thread Konrad Rzeszutek Wilk
On Wed, Mar 30, 2016 at 02:05:28AM +, Hao, Xudong wrote: > > -Original Message- > > From: Wei Liu [mailto:wei.l...@citrix.com] > > Sent: Wednesday, March 30, 2016 12:58 AM > > To: Konrad Rzeszutek Wilk > > Cc: Hao, Xudong ; wei.l...@citrix.com; &g

Re: [Xen-devel] [PATCH v2 2/6] x86/time: refactor init_platform_time()

2016-04-01 Thread Konrad Rzeszutek Wilk
ty init call). > > Signed-off-by: Joao Martins Reviewed-by: Konrad Rzeszutek Wilk ___ Xen-devel mailing list Xen-devel@lists.xen.org http://lists.xen.org/xen-devel

Re: [Xen-devel] [PATCH v2 3/6] x86/time: implement tsc as clocksource

2016-04-01 Thread Konrad Rzeszutek Wilk
On Tue, Mar 29, 2016 at 02:44:08PM +0100, Joao Martins wrote: > Introduce support for using TSC as platform time which is the highest > resolution time and most performant to get (~20 nsecs). Though there > are also several problems associated with its usage, and there isn't a > complete (and arch

Re: [Xen-devel] QEMU-TRAD Re: [PATCH] Fixed building with newer GNUTLS versions.

2016-04-01 Thread Konrad Rzeszutek Wilk
in the commit description! Thank you. > > > Yours, > > Sjoer van der Ploeg > > On Fri, Apr 1, 2016 at 3:51 PM, Konrad Rzeszutek Wilk < > konrad.w...@oracle.com> wrote: > > > On Thu, Mar 31, 2016 at 10:58:19PM +0200, Sjoer van der Ploeg wrote: > > >

Re: [Xen-devel] [PATCH v2 5/6] x86/time: refactor read_platform_stime()

2016-04-01 Thread Konrad Rzeszutek Wilk
oper Reviewed-by: Konrad Rzeszutek Wilk ___ Xen-devel mailing list Xen-devel@lists.xen.org http://lists.xen.org/xen-devel

Re: [Xen-devel] [PATCH v2 3/6] x86/time: implement tsc as clocksource

2016-04-01 Thread Konrad Rzeszutek Wilk
On Fri, Apr 01, 2016 at 07:38:18PM +0100, Joao Martins wrote: > [snip] > > >> diff --git a/xen/arch/x86/time.c b/xen/arch/x86/time.c > >> index ed4ed24..2602dda 100644 > >> --- a/xen/arch/x86/time.c > >> +++ b/xen/arch/x86/time.c > >> @@ -432,6 +432,63 @@ uint64_t ns_to_acpi_pm_tick(uint64_t ns) >

Re: [Xen-devel] [PATCH v5 11/28] xsplice: Implement support for applying/reverting/replacing patches.

2016-04-01 Thread Konrad Rzeszutek Wilk
Hey Jan, Thank you for your review! Please see below my answers. Ross, Could you answer one question below please. On Fri, Apr 01, 2016 at 07:28:00AM -0600, Jan Beulich wrote: > >>> On 24.03.16 at 21:00, wrote: > > From: Ross Lagerwall > > > > Implement support for the apply, revert and repl

Re: [Xen-devel] [PATCH v5 10/28] xsplice: Implement payload loading

2016-04-04 Thread Konrad Rzeszutek Wilk
e, vm_index, etc would consult this list for the virtual address and could get the proper information. (See inline patch) But if we are doing that this, then why even put it in the vmalloc API? Why not track all of this with the user of this? (like it was done in v4 of this patch series?) Ple

Re: [Xen-devel] [PATCH v5 26/28] xsplice: Prevent duplicate payloads from being loaded.

2016-04-04 Thread Konrad Rzeszutek Wilk
On Mon, Apr 04, 2016 at 09:06:47AM -0600, Jan Beulich wrote: > >>> On 24.03.16 at 21:00, wrote: > > --- a/xen/common/xsplice.c > > +++ b/xen/common/xsplice.c > > @@ -566,6 +566,27 @@ static int prepare_payload(struct payload *payload, > > if ( !payload->id.len || !payload->id.p ) > >

Re: [Xen-devel] [PATCH v5 23/28] xsplice: Stacking build-id dependency checking.

2016-04-04 Thread Konrad Rzeszutek Wilk
On Mon, Apr 04, 2016 at 09:00:00AM -0600, Jan Beulich wrote: > >>> On 24.03.16 at 21:00, wrote: > > @@ -929,6 +932,33 @@ being loaded and requires an hypervisor build-id to > > match against. > > The old code allows much more flexibility and an additional guard, > > but is more complex to imple

Re: [Xen-devel] [PATCH v5 10/28] xsplice: Implement payload loading

2016-04-04 Thread Konrad Rzeszutek Wilk
On Mon, Apr 04, 2016 at 03:44:44PM -0400, Konrad Rzeszutek Wilk wrote: > On Fri, Apr 01, 2016 at 03:18:45AM -0600, Jan Beulich wrote: > > >>> On 31.03.16 at 23:26, wrote: > > >> Also - how well will this O(n^2) lookup work once there are enough > > >

Re: [Xen-devel] [PATCH] kernel-parameters: document earlycon=xenboot

2016-04-05 Thread Konrad Rzeszutek Wilk
On Mon, Apr 04, 2016 at 10:48:11PM -0400, Chris Patterson wrote: > Add earlycon=xenboot option to Documentation/kernel-parameters.txt. > But it is not true. I tried this on x86: "earlycon=xenboot console=tty0" And nothing from Linux came during earlyboot to the Xen console? > Signed-off-by: Ch

Re: [Xen-devel] [PATCH v5 10/28] xsplice: Implement payload loading

2016-04-05 Thread Konrad Rzeszutek Wilk
always add such an extension later (and then make xSplice use it). From 45906039b18f1995b26c97b560244ac90308597f Mon Sep 17 00:00:00 2001 From: Konrad Rzeszutek Wilk Date: Mon, 14 Mar 2016 12:02:05 -0400 Subject: [RFC PATCH] vmap: Add vmalloc_type WIP TODO: - Check what happens on !CONFIG_XSPLICE - Move arch specific to arch s

Re: [Xen-devel] [PATCH] kernel-parameters: document earlycon=xenboot

2016-04-05 Thread Konrad Rzeszutek Wilk
On Tue, Apr 05, 2016 at 11:43:36AM -0400, Chris Patterson wrote: > On Tue, Apr 5, 2016 at 9:49 AM, Konrad Rzeszutek Wilk > wrote: > > On Mon, Apr 04, 2016 at 10:48:11PM -0400, Chris Patterson wrote: > >> Add earlycon=xenboot option to Documentation/kernel-parameters.txt. &

Re: [Xen-devel] [PATCH v5 10/28] xsplice: Implement payload loading

2016-04-05 Thread Konrad Rzeszutek Wilk
> > -void *vm_alloc(unsigned int nr, unsigned int align) > > +void __init vm_init(void) > > +{ > > +vm_init_type(VMAP_VIRT); > > +#ifdef CONFIG_XSPLICE > > +vm_init_type(XEN_VIRT); > > +#endif > > +} > > I think we should leave it to the arch to call vm_init_type() for > the non-default ty

Re: [Xen-devel] [PATCH v5 10/28] xsplice: Implement payload loading

2016-04-05 Thread Konrad Rzeszutek Wilk
On Tue, Apr 05, 2016 at 12:45:44PM -0400, Konrad Rzeszutek Wilk wrote: > > > -void *vm_alloc(unsigned int nr, unsigned int align) > > > +void __init vm_init(void) > > > +{ > > > +vm_init_type(VMAP_VIRT); > > > +#ifdef CONFIG_XSPLICE >

Re: [Xen-devel] [PATCH v5 09/28] xsplice: Add helper elf routines

2016-04-05 Thread Konrad Rzeszutek Wilk
> > +static int elf_resolve_sections(struct xsplice_elf *elf, const void *data) > > +{ .. snip.. > > +/* N.B. We also will ingest SHN_UNDEF sections. */ > > Because of? The meaning of the fields in the 0-th section header is > different from that of ordinary ones. > > > +for ( i = 0; i <

Re: [Xen-devel] [PATCH v5 12/28] x86/xen_hello_world.xsplice: Test payload for patching 'xen_extra_version'.

2016-04-05 Thread Konrad Rzeszutek Wilk
On Fri, Apr 01, 2016 at 07:33:54AM -0600, Jan Beulich wrote: > >>> On 24.03.16 at 21:00, wrote: > > --- a/xen/Makefile > > +++ b/xen/Makefile > > @@ -75,6 +75,7 @@ _install: $(TARGET)$(CONFIG_XEN_INSTALL_SUFFIX) > > echo 'EFI installation only partially done (EFI_VENDOR > > no

Re: [Xen-devel] [PATCH v5 27/28] xsplice: Add support for shadow variables.

2016-04-05 Thread Konrad Rzeszutek Wilk
On Mon, Apr 04, 2016 at 09:18:34AM -0600, Jan Beulich wrote: > >>> On 24.03.16 at 21:00, wrote: > > Shadow variables are a piece of infrastructure to be used by xsplice > > modules. They are used to attach a new piece of data to an existing > > structure in memory. > > An already known question a

Re: [Xen-devel] [PATCH v5 14/28] x86, xsplice: Print payload's symbol name and payload name in backtraces

2016-04-05 Thread Konrad Rzeszutek Wilk
On Fri, Apr 01, 2016 at 09:23:15AM -0600, Jan Beulich wrote: > >>> On 24.03.16 at 21:00, wrote: > > @@ -331,16 +332,17 @@ static char *pointer(char *str, char *end, const char > > **fmt_ptr, > > { > > unsigned long sym_size, sym_offset; > > char namebuf[KSYM_NAME_LEN+1]; >

Re: [Xen-devel] [PATCH v5 15/28] xsplice: Add .xsplice.hooks functions and test-case

2016-04-05 Thread Konrad Rzeszutek Wilk
On Fri, Apr 01, 2016 at 09:50:31AM -0600, Jan Beulich wrote: > >>> On 24.03.16 at 21:00, wrote: > > From: Ross Lagerwall > > > > Add hook functions which run during patch apply and patch revert. > > Hook functions are used by xsplice payloads to manipulate data structures > > during patching, et

Re: [Xen-devel] [PATCH v5 17/28] xsplice: Add support for exception tables.

2016-04-06 Thread Konrad Rzeszutek Wilk
On Fri, Apr 01, 2016 at 10:06:54AM -0600, Jan Beulich wrote: > >>> On 24.03.16 at 21:00, wrote: > > --- a/xen/common/xsplice.c > > +++ b/xen/common/xsplice.c > > @@ -573,6 +573,25 @@ static int prepare_payload(struct payload *payload, > > region->frame[i].n_bugs = sec->sec->sh_size / size

Re: [Xen-devel] HVMLite / PVHv2 - using x86 EFI boot entry

2016-04-06 Thread Konrad Rzeszutek Wilk
On Wed, Apr 06, 2016 at 04:02:40PM +0100, Matt Fleming wrote: > On Wed, 06 Apr, at 12:07:36PM, George Dunlap wrote: > > > > So rather than make a new entry point which does just the minimal > > amount of work to run on a software interface (Xen), you want to take > > an interface designed for hard

Re: [Xen-devel] HVMLite / PVHv2 - using x86 EFI boot entry

2016-04-06 Thread Konrad Rzeszutek Wilk
On Wed, Apr 06, 2016 at 12:05:16PM -0400, Konrad Rzeszutek Wilk wrote: > On Wed, Apr 06, 2016 at 04:02:40PM +0100, Matt Fleming wrote: > > On Wed, 06 Apr, at 12:07:36PM, George Dunlap wrote: > > > > > > So rather than make a new entry point which does just the minimal

Re: [Xen-devel] [PATCH v5 23/28] xsplice: Stacking build-id dependency checking.

2016-04-06 Thread Konrad Rzeszutek Wilk
> > --- a/xen/include/xen/version.h > > +++ b/xen/include/xen/version.h > > @@ -17,4 +17,7 @@ const char *xen_deny(void); > > #include > > int xen_build_id(const void **p, unsigned int *len); > > > > +#include > > +int xen_build_id_check(const Elf_Note *n, const void **p, unsigned int > > *l

Re: [Xen-devel] [PATCH v5 19/28] build_id: Provide ld-embedded build-ids

2016-04-06 Thread Konrad Rzeszutek Wilk
On Mon, Apr 04, 2016 at 06:46:24AM -0600, Jan Beulich wrote: > >>> On 24.03.16 at 21:00, wrote: > > The version of ld that first implemented --build-id is v2.18. > > Hence we check for that or later version - if older version > > found we do not build the hypervisor with the build-id > > (and the

Re: [Xen-devel] [PATCH v5 11/28] xsplice: Implement support for applying/reverting/replacing patches.

2016-04-06 Thread Konrad Rzeszutek Wilk
> >> So you check for there being one such section. Is having multiple > >> of them okay / meaningful? > > > > /me blinks. You can have multiple ELF sections with the same name? > > I will double-check the spec over the weekend to see. > > Of course you can. Remember me telling you that using sec

Re: [Xen-devel] [PATCH v5 11/28] xsplice: Implement support for applying/reverting/replacing patches.

2016-04-06 Thread Konrad Rzeszutek Wilk
> That's for an individual patch I suppose? What if REPLACE has to > revert dozens or hundreds of patches? I don't know. That is sometihng I need to figure out. I also need to test this out on the 8 socket machine.. > > +void arch_xsplice_apply_jmp(struct xsplice_patch_func *func) > > +{ > > +

Re: [Xen-devel] [PATCH v5 18/28] xsplice: Add support for alternatives

2016-04-06 Thread Konrad Rzeszutek Wilk
On Fri, Apr 01, 2016 at 10:20:40AM -0600, Jan Beulich wrote: > >>> On 24.03.16 at 21:00, wrote: > > --- a/xen/arch/x86/alternative.c > > +++ b/xen/arch/x86/alternative.c > > @@ -28,7 +28,7 @@ > > extern struct alt_instr __alt_instructions[], __alt_instructions_end[]; > > > > #ifdef K8_NOP1 > >

Re: [Xen-devel] [PATCH v5 13/28] xsplice, symbols: Implement symbol name resolution on address.

2016-04-06 Thread Konrad Rzeszutek Wilk
On Fri, Apr 01, 2016 at 09:11:40AM -0600, Jan Beulich wrote: > >>> On 24.03.16 at 21:00, wrote: > > --- a/xen/arch/x86/Makefile > > +++ b/xen/arch/x86/Makefile > > @@ -113,12 +113,14 @@ $(TARGET)-syms: prelink.o xen.lds > > $(BASEDIR)/common/symbols-dummy.o > > $(LD) $(LDFLAGS) -T xen.lds -N

[Xen-devel] [PATCH v6 10/24] xsplice: Implement support for applying/reverting/replacing patches.

2016-04-06 Thread Konrad Rzeszutek Wilk
-off-by: Ross Lagerwall Signed-off-by: Konrad Rzeszutek Wilk -- Cc: Stefano Stabellini Cc: Julien Grall Cc: Keir Fraser Cc: Jan Beulich Cc: Andrew Cooper Cc: Boris Ostrovsky Cc: Suravee Suthikulpanit Cc: Jun Nakajima Cc: Kevin Tian v2: - Pluck the 'struct xsplice_patch_func' in

[Xen-devel] [PATCH v6 21/24] xsplice: Stacking build-id dependency checking.

2016-04-06 Thread Konrad Rzeszutek Wilk
. We also print the dependency and payloads build_in the keyhandler. Signed-off-by: Konrad Rzeszutek Wilk --- Cc: Keir Fraser Cc: Jan Beulich Cc: Andrew Cooper v3: First time included. v4: Andrew fix against the build_id.o mutilations. Andrew fix to not include extra symbols in binary.id

[Xen-devel] [PATCH v6 01/24] xsplice: Design document

2016-04-06 Thread Konrad Rzeszutek Wilk
: Martin Pohlack Jan Beulich Thank you! Input-from: Martin Pohlack Input-from: Jan Beulich Signed-off-by: Konrad Rzeszutek Wilk Signed-off-by: Ross Lagerwall --- Cc: Ian Jackson Cc: Jan Beulich Cc: Keir Fraser Cc: Tim Deegan v1-2: review v3: Split document in v1 and v2 (todo) to

[Xen-devel] [PATCH v6 15/24] xsplice: Add support for exception tables.

2016-04-06 Thread Konrad Rzeszutek Wilk
ve an exception that is handled. To not grow the code-base if xSplice is not compiled in we add certain #define to help in determining if code needs to be __init or not. Signed-off-by: Ross Lagerwall Signed-off-by: Konrad Rzeszutek Wilk --- Cc: Keir Fraser Cc: Jan Beulich Cc: Andrew Cooper v3:

[Xen-devel] [PATCH v6 20/24] xsplice: Print build_id in keyhandler and on bootup.

2016-04-06 Thread Konrad Rzeszutek Wilk
As it should be an useful debug mechanism. Signed-off-by: Konrad Rzeszutek Wilk Acked-by: Jan Beulich -- Cc: Ian Jackson Cc: Jan Beulich Cc: Keir Fraser Cc: Tim Deegan v2: s/char */const void * v5: s/ssize_t/unsigned int/ v6: Remove pointless initializers, use string literal instead of %s

[Xen-devel] [PATCH v6 07/24] arm/x86/vmap: Add vmalloc_type and vm_init_type

2016-04-06 Thread Konrad Rzeszutek Wilk
2-bits - which means that ELF relocations would truncate the 34 and 33th bit. Hence this alternate API We also add add extra checks in case the b) range has not been initialized. Signed-off-by: Konrad Rzeszutek Wilk Suggested-by: Jan Beulich --- Cc: Ian Jackson Cc: Jan Beulich Cc: Keir F

[Xen-devel] [PATCH v6 04/24] xen-xsplice: Tool to manipulate xsplice payloads

2016-04-06 Thread Konrad Rzeszutek Wilk
(load). Also will use the name of the file as the Signed-off-by: Konrad Rzeszutek Wilk Signed-off-by: Ross Lagerwall Acked-by: Wei Liu --- Cc: Ian Jackson Cc: Stefano Stabellini Cc: Wei Liu v2: - Removed REVERTED state. - Fixed bugs handling XSPLICE_STATUS_PROGRESS. - Split status

[Xen-devel] [PATCH v6 11/24] x86/xen_hello_world.xsplice: Test payload for patching 'xen_extra_version'.

2016-04-06 Thread Konrad Rzeszutek Wilk
tra xen_extra : Hello World $xen-xsplice revert xen_hello_world Performing revert: completed $xen-xsplice unload xen_hello_world Performing unload: completed $xl info | grep extra xen_extra : -unstable Signed-off-by: Konrad Rzeszutek Wilk --- Cc: Stefano Stabellini Cc

[Xen-devel] [PATCH v6 22/24] xsplice/xen_replace_world: Test-case for XSPLICE_ACTION_REPLACE

2016-04-06 Thread Konrad Rzeszutek Wilk
as .xsplice.depends. Signed-off-by: Konrad Rzeszutek Wilk --- Cc: Keir Fraser Cc: Jan Beulich Cc: Andrew Cooper v4: New. Make the objcopy use -S to strip the name. --- --- .gitignore | 1 + xen/arch/x86/test/Makefile | 8 +++ xen/arch/x86

[Xen-devel] [PATCH v6 14/24] xsplice: Add support for bug frames.

2016-04-06 Thread Konrad Rzeszutek Wilk
From: Ross Lagerwall Add support for handling bug frames contained with xsplice modules. If a trap occurs search either the kernel bug table or an applied payload's bug table depending on the instruction pointer. Signed-off-by: Ross Lagerwall Signed-off-by: Konrad Rzeszutek Wilk --- Cc:

[Xen-devel] [PATCH v6] xSplice v1 design and implementation.

2016-04-06 Thread Konrad Rzeszutek Wilk
files changed, 5915 insertions(+), 183 deletions(-) Konrad Rzeszutek Wilk (15): xsplice: Design document xen/xsplice: Hypervisor implementation of XEN_XSPLICE_op libxc: Implementation of XEN_XSPLICE_op in libxc xen-xsplice: Tool to manipulate xsplice payloads

[Xen-devel] [PATCH v6 09/24] xsplice: Implement payload loading

2016-04-06 Thread Konrad Rzeszutek Wilk
or the code. Signed-off-by: Ross Lagerwall Signed-off-by: Konrad Rzeszutek Wilk --- Cc: Stefano Stabellini Cc: Julien Grall Cc: Keir Fraser Cc: Jan Beulich Cc: Andrew Cooper v2: - Change the 'xsplice_patch_func' structure layout/size. - Add more error checking. Fix memory le

[Xen-devel] [PATCH v6 13/24] x86, xsplice: Print payload's symbol name and payload name in backtraces

2016-04-06 Thread Konrad Rzeszutek Wilk
Lagerwall Signed-off-by: Konrad Rzeszutek Wilk --- Cc: Ian Jackson Cc: Jan Beulich Cc: Keir Fraser Cc: Tim Deegan v2: Add missing full stop. v3: s/module/payload/ v4: Expand comment and include registration of 'virtual_region' Redo the vsprintf handling of payload name. Drop the

[Xen-devel] [PATCH v6 23/24] xsplice: Prevent duplicate payloads from being loaded.

2016-04-06 Thread Konrad Rzeszutek Wilk
From: Ross Lagerwall Signed-off-by: Ross Lagerwall Signed-off-by: Konrad Rzeszutek Wilk --- Cc: Ian Jackson Cc: Jan Beulich Cc: Keir Fraser Cc: Tim Deegan v6: Drop recursive lock - also now the caller is holding the lock Move the code up in the code above. --- --- xen/common

[Xen-devel] [PATCH v6 18/24] HYPERCALL_version_op: Add VERSION_build_id to retrieve build-id.

2016-04-06 Thread Konrad Rzeszutek Wilk
The VERSION hypercall provides the flexibility to expose the size of the build-id (so the callers can allocate the proper size before trying to retrieve it). It also allows in one nice swoop to retrieve the hypervisor build-id in the provided buffer. Signed-off-by: Konrad Rzeszutek Wilk Acked-by

[Xen-devel] [PATCH v6 17/24] build_id: Provide ld-embedded build-ids

2016-04-06 Thread Konrad Rzeszutek Wilk
t - some of the values it contains are offset by the size of the included build id. This obviously causes problems when resolving symbols. Suggested-by: Andrew Cooper Signed-off-by: Martin Pohlack Signed-off-by: Konrad Rzeszutek Wilk --- Cc: Stefano Stabellini Cc: Julien Grall Cc: Keir Fraser Cc

[Xen-devel] [PATCH v6 16/24] xsplice: Add support for alternatives

2016-04-06 Thread Konrad Rzeszutek Wilk
. Signed-off-by: Ross Lagerwall Signed-off-by: Konrad Rzeszutek Wilk --- Cc: Keir Fraser Cc: Jan Beulich Cc: Andrew Cooper v2: Make a new alternative function that does not ASSERT on IRQs and don't disable IRQs in the code when loading payload. v4: Include test-case Include check for

[Xen-devel] [PATCH v6 02/24] xen/xsplice: Hypervisor implementation of XEN_XSPLICE_op

2016-04-06 Thread Konrad Rzeszutek Wilk
'non-lock' variant. Acked-by: Daniel De Graaf Signed-off-by: Konrad Rzeszutek Wilk Signed-off-by: Ross Lagerwall --- Cc: Daniel De Graaf Cc: Ian Jackson Cc: Stefano Stabellini Cc: Wei Liu v2: Rebased on keyhandler: rework keyhandler infrastructure v3: Fixed XSM. - Removed REVERTED sta

[Xen-devel] [PATCH v6 06/24] x86: Alter nmi_callback_t typedef

2016-04-06 Thread Konrad Rzeszutek Wilk
Drop paranthesis and function pointer on nmi_callback_t typedef. Make it more inline with how x86 maintainers want function typedefs to be. Signed-off-by: Konrad Rzeszutek Wilk --- Cc: Ian Jackson Cc: Jan Beulich Cc: Keir Fraser Cc: Tim Deegan v6: New in patchset. --- --- xen/arch/x86

[Xen-devel] [PATCH v6 12/24] xsplice, symbols: Implement symbol name resolution on address.

2016-04-06 Thread Konrad Rzeszutek Wilk
which simply overrides a symbol because you could end up with a chain of jumps which is inefficient and may result in the expected function not being executed. Also we include a local definition block in the symbols.c file. Signed-off-by: Konrad Rzeszutek Wilk Signed-off-by: Ross Lagerwall

[Xen-devel] [PATCH v6 03/24] libxc: Implementation of XEN_XSPLICE_op in libxc

2016-04-06 Thread Konrad Rzeszutek Wilk
The underlaying toolstack code to do the basic operations when using the XEN_XSPLICE_op syscalls: - upload the payload, - get status of an payload, - list all the payloads, - apply, check, replace, and revert the payload. Signed-off-by: Konrad Rzeszutek Wilk Signed-off-by: Ross Lagerwall

[Xen-devel] [PATCH v6 05/24] arm/x86: Use struct virtual_region to do bug, symbol, and (x86) exception tables lookup.

2016-04-06 Thread Konrad Rzeszutek Wilk
search has to only use two public APIs: - register_virtual_region - unregister_virtual_region to let the core code know. If the ->lookup_symbol is not then the default internal symbol lookup mechanism is used. Suggested-by: Andrew Cooper Signed-off-by: Konrad Rzeszutek Wilk --- Cc: Stefano

[Xen-devel] [PATCH v6 19/24] libxl: info: Display build_id of the hypervisor using XEN_VERSION_build_id

2016-04-06 Thread Konrad Rzeszutek Wilk
If the hypervisor is built with we will display it. Signed-off-by: Konrad Rzeszutek Wilk Acked-by: Wei Liu --- Cc: Ian Jackson Cc: Stefano Stabellini Cc: Wei Liu v2: Include HAVE_*, use libxl_zalloc, s/rc/ret/ v3: Retry with different size if 1020 is not enough. v4: Use VERSION_OP subops

[Xen-devel] [PATCH v6 08/24] xsplice: Add helper elf routines

2016-04-06 Thread Konrad Rzeszutek Wilk
Rzeszutek Wilk --- Cc: Ian Jackson Cc: Jan Beulich Cc: Keir Fraser Cc: Tim Deegan v2: - With the #define ELFSIZE in the ARM file we can use the common #defines instead of using #ifdef CONFIG_ARM_32. Moved to another patch. - Add checks for ELF file. - Add name to be printed

[Xen-devel] [PATCH v6 24/24] MAINTAINERS/xsplice: Add myself and Ross as the maintainers.

2016-04-06 Thread Konrad Rzeszutek Wilk
If you have a patch for xSplice send it our way! Signed-off-by: Ross Lagerwall Signed-off-by: Konrad Rzeszutek Wilk --- Cc: Ian Jackson Cc: Jan Beulich Cc: Keir Fraser Cc: Tim Deegan v5: Sort them F: fields (Jan) --- --- MAINTAINERS | 10 ++ 1 file changed, 10 insertions(+) diff

Re: [Xen-devel] [PATCH v6 08/24] xsplice: Add helper elf routines

2016-04-07 Thread Konrad Rzeszutek Wilk
On Thu, Apr 07, 2016 at 05:19:37PM +0100, Ian Jackson wrote: > Konrad Rzeszutek Wilk writes ("[PATCH v6 08/24] xsplice: Add helper elf > routines"): > > From: Ross Lagerwall > > > > Add Elf routines and data structures in preparation for loading an > &

Re: [Xen-devel] [PATCH v5 19/28] build_id: Provide ld-embedded build-ids

2016-04-07 Thread Konrad Rzeszutek Wilk
> > +build_id.o: $(TARGET)-syms > > + $(OBJCOPY) -O binary --only-section=.note $(BASEDIR)/xen-syms $@.bin > > Considering your xen.lds.S changes, won't this potentially copy quite > a bit more than just the build ID (i.e. all notes)? This may be okay, and > may be even intended, but then the ge

<    1   2   3   4   5   6   7   8   9   10   >