On Mon, Mar 07, 2016 at 05:23:48PM +0100, Thomas Huth wrote:
> On 04.03.2016 07:54, Bharata B Rao wrote:
> > CPUState *cpu gets added to the cpus list during cpu_exec_init(). It
> > should be removed from cpu_exec_exit().
> >
> > cpu_exec_init() is called from generic CPU::instance_finalize and
On 09/03/2016 07:07, Peter Xu wrote:
> -char buf[len];
> +char buf[sizeof(struct inotify_event) + NAME_MAX + 1];
>
> for (;;) {
> -bytes = read(s->inotifyfd, buf, len);
> +bytes = read(s->inotifyfd, buf, sizeof(buf));
sizeof is good here, since read takes a size
On 09/03/2016 07:12, Peter Xu wrote:
> max_len is not necessary, while it brings a warning during compilation
> when specify "-Wstack-usage=100". Replacing using sizeof().
>
> Signed-off-by: Peter Xu
> ---
> migration/migration.c | 5 ++---
> 1 file changed, 2
On Wed, Mar 09, 2016 at 01:58:53PM +1100, David Gibson wrote:
> On Tue, Mar 08, 2016 at 10:37:08AM +0100, Igor Mammedov wrote:
> > On Tue, 8 Mar 2016 15:27:39 +1100
> > David Gibson wrote:
> >
> > > On Mon, Mar 07, 2016 at 11:59:42AM +0530, Bharata B Rao wrote:
> > >
On 09/03/2016 06:08, Peter Xu wrote:
> pxdev:bin# gcc -v
> Using built-in specs.
> COLLECT_GCC=/bin/gcc
> COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-redhat-linux/4.8.5/lto-wrapper
> Target: x86_64-redhat-linux
> Configured with: ../configure --prefix=/usr --mandir=/usr/share/man
>
On 09/03/2016 04:41, Fam Zheng wrote:
> > bdrv_requests_pending is checking children to also wait until internal
> > requests (such as metadata writes) have completed. However, checking
> > children is in general overkill because, apart from this special case,
> > the parent's in_flight count
On 09/03/2016 04:35, Fam Zheng wrote:
>> > enum BdrvTrackedRequestType {
>> > BDRV_TRACKED_READ,
>> > BDRV_TRACKED_WRITE,
>> > -BDRV_TRACKED_FLUSH,
>> > -BDRV_TRACKED_IOCTL,
>> > BDRV_TRACKED_DISCARD,
> Okay, so flush and ioctl are not needed, but why is discard
On Wed, 03/09 14:14, Peter Xu wrote:
> Use heap rather than stack for kcmdline.
>
> Signed-off-by: Peter Xu
> ---
> hw/i386/multiboot.c | 5 ++---
> 1 file changed, 2 insertions(+), 3 deletions(-)
>
> diff --git a/hw/i386/multiboot.c b/hw/i386/multiboot.c
> index
On 09/03/2016 04:19, Fam Zheng wrote:
>> > +/* The I/O operation is not finished until the callback returns.
>> > + * If we call qemu_coroutine_enter here, there is the possibility
>> > + * of a deadlock when the coroutine calls bdrv_drained_begin.
>> > + */
>> > +
On 09/03/2016 02:45, Fam Zheng wrote:
>> > @@ -555,11 +574,7 @@ static int bdrv_prwv_co(BlockDriverState *bs, int64_t
>> > offset,
>> > * will not fire; so the I/O throttling function has to be disabled
>> > here
>> > * if it has been enabled.
>> > */
>> > -if
On 09/03/2016 02:26, Fam Zheng wrote:
>> diff --git a/block/throttle-groups.c b/block/throttle-groups.c
>> index 4920e09..eccfc0d 100644
>> --- a/block/throttle-groups.c
>> +++ b/block/throttle-groups.c
>> @@ -313,6 +313,17 @@ void coroutine_fn
>>
Eric Blake writes:
> On 03/08/2016 12:09 PM, Markus Armbruster wrote:
>
>>
>>> I think what would sway me over the fence is looking at some of our
>>> constructs: for example, qapi-types.py has gen_object() which it now
>>> calls recursively. When called directly from
On 9 March 2016 at 07:28, Samuel Thibault wrote:
> The following changes since commit 1464ad45cd6cdeb0b5c1a54d3d3791396e47e52f:
>
> Merge remote-tracking branch 'remotes/armbru/tags/pull-qapi-2016-03-04'
> into staging (2016-03-06 11:53:27 +)
>
> are available
> On 04/03/2016 15:26, Li, Liang Z wrote:
> >> >
> >> > The memory usage will keep increasing due to ever growing caches,
> >> > etc, so you'll be left with very little free memory fairly soon.
> >> >
> > I don't think so.
> >
>
> Roman is right. For example, here I am looking at a 64 GB
Use heap rather than stack for kcmdline.
Signed-off-by: Peter Xu
---
hw/i386/multiboot.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/hw/i386/multiboot.c b/hw/i386/multiboot.c
index 9e164e6..bc45394 100644
--- a/hw/i386/multiboot.c
+++
max_len is not necessary, while it brings a warning during compilation
when specify "-Wstack-usage=100". Replacing using sizeof().
Signed-off-by: Peter Xu
---
migration/migration.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git
Remove useless var "ret".
Signed-off-by: Peter Xu
---
hw/usb/dev-mtp.c | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/hw/usb/dev-mtp.c b/hw/usb/dev-mtp.c
index cf63fd0..38cc4fc 100644
--- a/hw/usb/dev-mtp.c
+++ b/hw/usb/dev-mtp.c
@@ -719,10 +719,8 @@
Use heap instead of stack.
Signed-off-by: Peter Xu
---
hw/usb/dev-mtp.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/hw/usb/dev-mtp.c b/hw/usb/dev-mtp.c
index 7391783..cf63fd0 100644
--- a/hw/usb/dev-mtp.c
+++ b/hw/usb/dev-mtp.c
@@ -718,7 +718,7 @@
Both for usb_mtp_add_str: fix unbounded stack for it, also cleanup
one variable.
Peter Xu (2):
usb: fix unbound stack usage for usb_mtp_add_str
usb: trivial cleanup for usb_mtp_add_str
hw/usb/dev-mtp.c | 8
1 file changed, 4 insertions(+), 4 deletions(-)
--
2.4.3
Signed-off-by: Peter Xu
---
hw/usb/dev-mtp.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/hw/usb/dev-mtp.c b/hw/usb/dev-mtp.c
index 7391783..76ad64e 100644
--- a/hw/usb/dev-mtp.c
+++ b/hw/usb/dev-mtp.c
@@ -433,12 +433,11 @@ static void
Signed-off-by: Peter Xu
---
qobject/qdict.c | 15 ++-
1 file changed, 6 insertions(+), 9 deletions(-)
diff --git a/qobject/qdict.c b/qobject/qdict.c
index 9833bd0..9188a87 100644
--- a/qobject/qdict.c
+++ b/qobject/qdict.c
@@ -704,19 +704,16 @@ int
Using heap instead of stack for better safety.
Signed-off-by: Peter Xu
---
block/qapi.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/block/qapi.c b/block/qapi.c
index c4c2115..b798e35 100644
--- a/block/qapi.c
+++ b/block/qapi.c
@@ -636,9 +636,8 @@
Fix two places to use literal printf format when possible.
Signed-off-by: Peter Xu
---
block/qapi.c | 10 --
1 file changed, 4 insertions(+), 6 deletions(-)
diff --git a/block/qapi.c b/block/qapi.c
index db2d3fb..c4c2115 100644
--- a/block/qapi.c
+++ b/block/qapi.c
One is to use literal printf format when possible.
One is to fix an unbounded usage of stack.
Peter Xu (2):
block/qapi: make two printf() formats literal
block/qapi: fix unbounded stack for dump_qdict
block/qapi.c | 14 ++
1 file changed, 6 insertions(+), 8 deletions(-)
--
On 03/08/2016 12:09 PM, Markus Armbruster wrote:
>
>> I think what would sway me over the fence is looking at some of our
>> constructs: for example, qapi-types.py has gen_object() which it now
>> calls recursively. When called directly from visit_object_type(), we
>> have all the pieces; when
On Tue, Mar 08, 2016 at 01:29:21PM +0100, Paolo Bonzini wrote:
>
>
> On 08/03/2016 08:00, Peter Xu wrote:
> > @@ -159,6 +159,12 @@ int load_multiboot(FWCfgState *fw_cfg,
> > uint8_t *mb_bootinfo_data;
> > uint32_t cmdline_len;
> >
> > +#define __KERN_FNAME_LEN (1024)
> > +#define
On Tue, Mar 08, 2016 at 09:10:44AM +0100, Gerd Hoffmann wrote:
> > static void usb_mtp_add_str(MTPData *data, const char *str)
> > {
> > +#define __WSTR_LEN (256)
> > uint32_t len = strlen(str)+1;
> > -wchar_t wstr[len];
> > +wchar_t wstr[__WSTR_LEN];
>
> I think we should
On Tue, Mar 08, 2016 at 01:26:24PM +0100, Paolo Bonzini wrote:
>
>
> On 08/03/2016 08:00, Peter Xu wrote:
> > Suggested-by: Paolo Bonzini
> > CC: Juan Quintela
> > CC: Amit Shah
> > Signed-off-by: Peter Xu
> >
On Tue, Mar 08, 2016 at 01:22:19PM +0100, Paolo Bonzini wrote:
> > for (;;) {
> > -bytes = read(s->inotifyfd, buf, len);
> > +bytes = read(s->inotifyfd, buf, __BUF_LEN);
>
> Again, here you can use ARRAY_SIZE(buf) and avoid the macro.
Yes, will fix. Thanks!
Peter
On 03/09/2016 12:26 PM, Li Zhijian wrote:
>
>
> On 03/09/2016 09:36 AM, Wen Congyang wrote:
>> On 03/08/2016 05:54 PM, Peter Maydell wrote:
>>> On 8 March 2016 at 16:06, Zhang Chen wrote:
I found the reason for this problem is that
unix_connect() have
On Tue, Mar 08, 2016 at 01:22:46PM +0100, Paolo Bonzini wrote:
>
>
> On 08/03/2016 08:20, Peter Maydell wrote:
> >> > +#define __BUF_LEN (sizeof(struct inotify_event) + NAME_MAX + 1)
> >> > /* From the man page: atleast one event can be read */
> >> > -int len = sizeof(struct
On 8 March 2016 at 18:32, Amit Shah wrote:
> The following changes since commit 97556fe80e4f7252300b3498b3477fb4295153a3:
>
> Merge remote-tracking branch 'remotes/bonzini/tags/for-upstream' into
> staging (2016-03-08 04:53:37 +)
>
> are available in the git
On Tue, Mar 08, 2016 at 02:26:36PM +0700, Peter Maydell wrote:
> On 8 March 2016 at 14:00, Peter Xu wrote:
> > First of all, this function cannot be inlined even with always_inline,
> > so removing inline.
>
> Please don't mix two different changes in one patch.
Sorry. Will
On Tue, Mar 08, 2016 at 01:21:52PM +0100, Paolo Bonzini wrote:
>
>
> On 08/03/2016 08:00, Peter Xu wrote:
> > First of all, this function cannot be inlined even with always_inline,
> > so removing inline.
>
> Why? always_inline fixes the error for me.
I tried this patch:
-
On Mon, Mar 07, 2016 at 08:05:58PM +0100, Thomas Huth wrote:
> On 04.03.2016 07:54, Bharata B Rao wrote:
> > From: Gu Zheng
> >
> > In order to deal well with the kvm vcpus (which can not be removed without
> > any
> > protection), we do not close KVM vcpu fd, just
On Tue, Mar 08, 2016 at 01:20:45PM +0100, Paolo Bonzini wrote:
>
>
> On 08/03/2016 08:00, Peter Xu wrote:
> > Suggested-by: Paolo Bonzini
> > CC: Gerd Hoffmann
> > Signed-off-by: Peter Xu
> > ---
> > hw/usb/hcd-ohci.c | 7 ---
> >
On 03/09/2016 09:36 AM, Wen Congyang wrote:
On 03/08/2016 05:54 PM, Peter Maydell wrote:
On 8 March 2016 at 16:06, Zhang Chen wrote:
I found the reason for this problem is that
unix_connect() have not connect to sock_path before iov_send().
It need time to
On 03/09/2016 12:06 AM, Cédric Le Goater wrote:
On 03/07/2016 11:40 AM, Cédric Le Goater wrote:
On 03/05/2016 12:41 PM, Corey Minyard wrote:
On 03/02/2016 04:14 AM, Cédric Le Goater wrote:
Most IPMI command handlers in the BMC simulator start with a call to
the macro IPMI_CHECK_CMD_LEN()
From: Wen Congyang
The new QMP command name is x-blockdev-change. It's just for adding/removing
quorum's child now, and doesn't support all kinds of children, all kinds of
operations, nor all block drivers. So it is experimental now.
Signed-off-by: Wen Congyang
ChangLog:
v10~v11:
1. Rebase to the newest codes
2. Address comment from Max
Don't use contractions in error messages,
p1: Remove R-Bs, and use "BdrvChild *child" in bdrv_del_child
p2: Fix error logic in get_new_child_index/remove_child_index, and prefect
child->name parsing
p3: Make
From: Wen Congyang
In some cases, we want to take a quorum child offline, and take
another child online.
Signed-off-by: Wen Congyang
Signed-off-by: zhanghailiang
Signed-off-by: Gonglei
From: Wen Congyang
Signed-off-by: Wen Congyang
Signed-off-by: zhanghailiang
Signed-off-by: Gonglei
Signed-off-by: Changlong Xie
---
block.c | 8
On Tue, Mar 08, 2016 at 02:18:12PM +0100, Igor Mammedov wrote:
> it's just a hack to get qiuck swith to numeric core id
> should be split and merged in patches
> introducing modified code.
>
> Signed-off-by: Igor Mammedov
> ---
> hw/cpu/core.c | 32
On Tue, Mar 08, 2016 at 09:46:58AM -0700, Eric Blake wrote:
> On 03/08/2016 06:18 AM, Igor Mammedov wrote:
> > it will allow mgmt to query present and possible to hotplug
>
> maybe s/possible to hotplug/hotpluggable/
>
> > CPU objects, it is required from a target platform that
> > wish to
On Tue, 02/16 18:56, Paolo Bonzini wrote:
> bdrv_requests_pending is checking children to also wait until internal
> requests (such as metadata writes) have completed. However, checking
> children is in general overkill because, apart from this special case,
> the parent's in_flight count will
On Tue, 02/16 18:56, Paolo Bonzini wrote:
> Unlike tracked_requests, this field also counts throttled requests,
> and remains non-zero if an AIO operation needs a BH to be "really"
> completed.
>
> With this change, it is no longer necessary to have a dummy
> BdrvTrackedRequest for requests that
On 03/05/2016 01:39 AM, Stefan Hajnoczi wrote:
On Fri, Feb 05, 2016 at 12:18:07PM +0800, Changlong Xie wrote:
+static void replication_start(ReplicationState *rs, ReplicationMode mode,
+ Error **errp)
+{
+BlockDriverState *bs = rs->opaque;
+
On Tue, Mar 08, 2016 at 08:04:50PM -0700, Eric Blake wrote:
> On 03/08/2016 07:57 PM, Peter Xu wrote:
> > diff --git a/qobject/qdict.c b/qobject/qdict.c
> > index 9833bd0..dde99e0 100644
> > --- a/qobject/qdict.c
> > +++ b/qobject/qdict.c
> > @@ -704,17 +704,16 @@ int qdict_array_entries(QDict
On Tue, 02/16 18:56, Paolo Bonzini wrote:
> mirror is calling bdrv_drain from an AIO callback---more precisely,
> the bdrv_drain happens far away from the AIO callback, in the coroutine that
> the AIO callback enters.
>
> This used to be okay because bdrv_drain more or less tried to guess
> when
On Tue, Mar 08, 2016 at 01:17:03PM +0100, Paolo Bonzini wrote:
>
>
> On 08/03/2016 09:12, Markus Armbruster wrote:
> > I'm afraid this isn't a good idea. It relies on the non-local argument
> > that nobody will ever put a key longer than 255 into a qdict that gets
> > dumped. That may even be
On 03/08/2016 07:57 PM, Peter Xu wrote:
> On Tue, Mar 08, 2016 at 11:19:44AM +0100, Kevin Wolf wrote:
>> Am 08.03.2016 um 09:22 hat Markus Armbruster geschrieben:
>>> Same arguments as for PATCH 2, except here an argument on the maximum
>>> length of subqdict would probably be easier.
>>
>> Yes,
On Tue, Mar 08, 2016 at 02:47:31PM +0100, Markus Armbruster wrote:
> Fam Zheng writes:
> > Also I think the double underscore identifiers are considered reserved in C,
> > no?
>
> Correct. C99 7.1.3 Reserved identifiers: All identifiers that begin
> with an underscore and
On Tue, Mar 08, 2016 at 10:11:17AM +0100, Igor Mammedov wrote:
> On Tue, 8 Mar 2016 14:57:10 +1100
> David Gibson wrote:
>
> > On Mon, Mar 07, 2016 at 11:40:11AM +0100, Igor Mammedov wrote:
> > > On Mon, 7 Mar 2016 14:01:55 +0530
> > > Bharata B Rao
On Tue, Mar 08, 2016 at 10:37:08AM +0100, Igor Mammedov wrote:
> On Tue, 8 Mar 2016 15:27:39 +1100
> David Gibson wrote:
>
> > On Mon, Mar 07, 2016 at 11:59:42AM +0530, Bharata B Rao wrote:
> > > On Mon, Mar 07, 2016 at 02:49:06PM +1100, David Gibson wrote:
> > > >
On Tue, Mar 08, 2016 at 11:19:44AM +0100, Kevin Wolf wrote:
> Am 08.03.2016 um 09:22 hat Markus Armbruster geschrieben:
> > Same arguments as for PATCH 2, except here an argument on the maximum
> > length of subqdict would probably be easier.
>
> Yes, these are constant string literals in all
On Tue, 02/16 18:56, Paolo Bonzini wrote:
> Extract the handling of throttling from bdrv_flush_io_queue.
Looks good overall. Have two questions below.
>
> Signed-off-by: Paolo Bonzini
> ---
> block.c | 1 -
> block/io.c| 56
>
On Wed, 9 Mar 2016 11:56:57 +1100
David Gibson wrote:
> On Tue, Mar 08, 2016 at 11:33:45AM -0700, Alex Williamson wrote:
> > On Tue, 8 Mar 2016 13:10:23 +1100
> > David Gibson wrote:
> >
> > > At present the code handling IBM's
On 03/08/2016 05:54 PM, Peter Maydell wrote:
> On 8 March 2016 at 16:06, Zhang Chen wrote:
>> I found the reason for this problem is that
>> unix_connect() have not connect to sock_path before iov_send().
>> It need time to establish connection. so can we fix it
On 03/09/2016 06:55 AM, Alex Williamson wrote:
On Mon, 7 Mar 2016 11:22:58 +0800
Cao jin wrote:
From: Chen Fan
when boot up a VM that assigning vfio devices with aer enabled, we
must check the vfio device whether support host bus
On 03/09/2016 06:55 AM, Alex Williamson wrote:
On Mon, 7 Mar 2016 11:22:57 +0800
Cao jin wrote:
From: Chen Fan
Calling pcie_aer_init to initilize aer related registers for
vfio device, then reload physical related registers to expose
On Tue, 02/16 18:56, Paolo Bonzini wrote:
> We want to remove throttled_reqs from block/io.c. This is the easy
> part---hide the handling of throttled_reqs during disable/enable of
> throttling within throttle-groups.c.
>
> Signed-off-by: Paolo Bonzini
> ---
> block/io.c
On Tue, Mar 08, 2016 at 10:50:51AM +1100, Alexey Kardashevskiy wrote:
> On 03/04/2016 03:13 PM, Alexey Kardashevskiy wrote:
> >On 03/04/2016 02:39 PM, David Gibson wrote:
> >>On Thu, Mar 03, 2016 at 12:42:53PM +1100, Alexey Kardashevskiy wrote:
> >>>The pseries machine supports multiple PHBs. Each
ream' into
> staging (2016-03-08 04:53:37 +)
>
> are available in the git repository at:
>
>
> git://git.kraxel.org/qemu tags/pull-fw-cfg-20160308-1
>
> for you to fetch changes up to a60c7856088b75b402671de74bf9c5c
On Tue, Mar 08, 2016 at 11:33:45AM -0700, Alex Williamson wrote:
> On Tue, 8 Mar 2016 13:10:23 +1100
> David Gibson wrote:
>
> > At present the code handling IBM's Enhanced Error Handling (EEH) interface
> > on VFIO devices operates by bypassing the usual VFIO logic
On 8 March 2016 at 17:54, Amit Shah wrote:
> The following changes since commit 97556fe80e4f7252300b3498b3477fb4295153a3:
>
> Merge remote-tracking branch 'remotes/bonzini/tags/for-upstream' into
> staging (2016-03-08 04:53:37 +)
>
> are available in the git
On Tue, 03/08 16:24, Fam Zheng wrote:
> Signed-off-by: Fam Zheng
> ---
> block/vmdk.c | 17 +++--
> 1 file changed, 11 insertions(+), 6 deletions(-)
>
> diff --git a/block/vmdk.c b/block/vmdk.c
> index c68f456..03be7f0 100644
> --- a/block/vmdk.c
> +++
The following changes since commit 1464ad45cd6cdeb0b5c1a54d3d3791396e47e52f:
Merge remote-tracking branch 'remotes/armbru/tags/pull-qapi-2016-03-04' into
staging (2016-03-06 11:53:27 +)
are available in the git repository at:
http://people.debian.org/~sthibault/qemu.git
Peter Maydell, on Wed 09 Mar 2016 07:20:44 +0700, wrote:
> Shouldn't there be some Acked-by: lines on this?
Right, sent again.
Samuel
From: Samuel Thibault
Signed-off-by: Samuel Thibault
Acked-by: Jan Kiszka
---
MAINTAINERS | 1 +
1 file changed, 1 insertion(+)
diff --git a/MAINTAINERS b/MAINTAINERS
index 2f5a338..a316bc3 100644
---
On 8 March 2016 at 17:05, Samuel Thibault wrote:
> From: Samuel Thibault
>
> Signed-off-by: Samuel Thibault
> ---
> MAINTAINERS | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/MAINTAINERS
On 8 March 2016 at 14:52, Jason Wang wrote:
> The following changes since commit 97556fe80e4f7252300b3498b3477fb4295153a3:
>
> Merge remote-tracking branch 'remotes/bonzini/tags/for-upstream' into
> staging (2016-03-08 04:53:37 +)
>
> are available in the git
On 03/08/16 01:23, Peter Maydell wrote:
> From: Jens Wiklander
>
> Fix a typo in the load_image_mr() macro: 'mr' was written when
> the parameter name is '_mr'. (This had no visible effects since
> the single use of the macro used 'mr' as the argument.)
>
> Fixes
On 03/08/2016 04:07 PM, Eric Blake wrote:
> On 03/08/2016 12:28 PM, Rita Sinha wrote:
>> From: Jan Kiszka
>>
>> Introduce a DMA default target address space for PCI devices. Catch all
>
> [meta-comment]: When sending a series, both messages should be
> In-Reply-To a 0/2
On 03/08/2016 12:28 PM, Rita Sinha wrote:
> From: Jan Kiszka
>
> Introduce a DMA default target address space for PCI devices. Catch all
[meta-comment]: When sending a series, both messages should be
In-Reply-To a 0/2 cover letter, rather than separate top-level threads.
On Mon, 7 Mar 2016 11:22:57 +0800
Cao jin wrote:
> From: Chen Fan
>
> Calling pcie_aer_init to initilize aer related registers for
> vfio device, then reload physical related registers to expose
> device capability.
>
> Signed-off-by:
On Mon, 7 Mar 2016 11:22:58 +0800
Cao jin wrote:
> From: Chen Fan
>
> when boot up a VM that assigning vfio devices with aer enabled, we
> must check the vfio device whether support host bus reset. because
> when one error occur. OS
From: Jan Kiszka
Still a bit hacky, unconditionally enabled (must become opt-in, not
available with in-kernel irqchip), not reporting faults properly - but
it works! And revealed a Linux bug [1]
[1] http://thread.gmane.org/gmane.linux.kernel/1766261
Signed-off-by: Rita
From: Jan Kiszka
Introduce a DMA default target address space for PCI devices. Catch all
interrupt requests to the front-side bus via an MSI memory region that
is part of that address space. Provide separate address spaces for
IOAPIC and HPET if the IOMMU is active to
Add GPIO functionality to the register API. This allows association
and automatic connection of GPIOs to bits in registers. GPIO inputs
will attach to handlers that automatically set read-only bits in
registers. GPIO outputs will be updated to reflect their field value
when their respective
From: Peter Crosthwaite
An API similar to the existing qdev_get_gpio_in() except gets outputs.
Useful for:
1: Implementing lightweight devices that don't want to keep pointers
to their own GPIOs. They can get their GPIO pointers at runtime from
QOM using this API.
From: Peter Crosthwaite
IOU = I/O Unit
SLCR = System Level Control Registers
This IP is a misc collections of control registers that switch various
properties of system IPs. Currently the only thing implemented is the
SD_SLOTTYPE control (implemented as a GPIO
From: Peter Crosthwaite
Add a helper that will scan a static RegisterAccessInfo Array
and populate a container MemoryRegion with registers as defined.
Signed-off-by: Peter Crosthwaite
Signed-off-by: Alistair Francis
From: Peter Crosthwaite
For passing all GPIOs of all names from a contained device to a
container.
Signed-off-by: Peter Crosthwaite
Signed-off-by: Alistair Francis
---
hw/core/qdev.c | 9
From: Peter Crosthwaite
Signed-off-by: Peter Crosthwaite
Signed-off-by: Alistair Francis
---
V4:
- Small corrections to the device model logic
hw/arm/xilinx_zynq.c | 8
1 file changed, 8
From: Peter Crosthwaite
Define some macros that can be used for defining registers and fields.
The REG32 macro will define A_FOO, for the byte address of a register
as well as R_FOO for the uint32_t[] register number (A_FOO / 4).
The FIELD macro will define
Add a minimal model for the devcfg device which is part of Zynq.
This model supports DMA capabilities and interrupt generation.
Signed-off-by: Peter Crosthwaite
Signed-off-by: Alistair Francis
---
V5:
- Corrections to the device model
From: Peter Crosthwaite
QOMify registers as a child of TYPE_DEVICE. This allows registers to
define GPIOs.
Define an init helper that will do QOM initialisation.
Signed-off-by: Peter Crosthwaite
Signed-off-by: Alistair Francis
From: Peter Crosthwaite
Add a routine to set or override the opaque data of an IRQ.
Qdev currently always initialises IRQ opaque as the device itself.
This allows you to override to a custom opaque in the case where
there is extra or different data needed.
This API provides some encapsulation of registers and factors our some
common functionality to common code. Bits of device state (usually MMIO
registers), often have all sorts of access restrictions and semantics
associated with them. This API allow you to define what those
restrictions are on a
Add memory io handlers that glue the register API to the memory API.
Just translation functions at this stage. Although it does allow for
devices to be created without all-in-one mmio r/w handlers.
This patch also adds the RegisterInfoArray struct, which allows all of
the individual RegisterInfo
Allow defining of optional address decoding information in register
definitions. This is useful for clients that want to associate
registers with specific addresses.
Signed-off-by: Peter Crosthwaite
Signed-off-by: Alistair Francis
---
Add a macro that creates a 64bit value which has length number of ones
shifted acrros by the value of shift.
Signed-off-by: Alistair Francis
---
V5:
- Re-write to a 64-bit mask instead of ONES()
- Re-order this patch in the series
include/qemu/bitops.h | 3 +++
1
This patch series is based on Peter C's original register API. His
original cover letter is below.
Future work: Allow support for memory attributes.
V5:
- Only create a single memory region instead of a memory region for
each register
- General tidyups based on Alex's comments
V4:
- Rebase
On Sat, Jan 30, 2016 at 8:43 AM, Dmitry Osipenko wrote:
> It might be necessary by some emulated HW to perform the tick after one
> period if delta = 0. Given that it is much less churny to implement immediate
> tick by the ptimer user itself, let's make ptimer do the delayed
On Sat, Jan 30, 2016 at 8:43 AM, Dmitry Osipenko wrote:
> Current ARM MPTimer implementation uses QEMUTimer for the actual timer,
> this implementation isn't complete and mostly tries to duplicate of what
> generic ptimer is already doing fine.
>
> Conversion to ptimer brings
From: Grégory ESTRADE
The property channel driver now interfaces with the framebuffer device
to query and set framebuffer parameters. As a result of this, the "get
ARM RAM size" query now correctly returns the video RAM base address
(not total RAM size), and the
From: Grégory ESTRADE
At present, all DMA transfers complete inline (so a looping descriptor
queue will lock up the device). We also do not model pause/abort,
arbitrarion/priority, or debug features.
Signed-off-by: Grégory ESTRADE
[AB:
From: Grégory ESTRADE
The framebuffer occupies the upper portion of memory (64MiB by
default), but it can only be controlled/configured via a system
mailbox or property channel (to be added by a subsequent patch).
Signed-off-by: Grégory ESTRADE
At present only the core UART functions (data path for tx/rx) are
implemented, which is enough for UEFI to boot. The following
features/registers are unimplemented:
* Line/modem control
* Scratch register
* Extra control
* Baudrate
* SPI interfaces
Signed-off-by: Andrew Baumann
This patch series adds support for the AUX (second UART), framebuffer
and DMA controller on Raspberry Pi 2, and enables booting Windows on
this device. As with the previous series, it is heavily based on the
original (out of tree) work of Gregory Estrade, Stefan Weil and others
to support
1 - 100 of 311 matches
Mail list logo