This is a series of patches I wrote to use dp8393x (SONIC) with
Quadra 800 emulation. I think it is interesting to share them with the
mainline.
Qdev'ifying allows to remove the annoying warning:
"requested NIC (anonymous, model dp83932) was not created
(not supported by this machine?)"
[PATCH 1
Signed-off-by: Laurent Vivier
---
hw/mips/mips_jazz.c | 4 ++--
hw/net/dp8393x.c | 18 +-
include/hw/net/dp8393x.h | 3 ++-
3 files changed, 21 insertions(+), 4 deletions(-)
diff --git a/hw/mips/mips_jazz.c b/hw/mips/mips_jazz.c
index ecfaacb..4d556ab 100644
--- a
Signed-off-by: Laurent Vivier
---
hw/mips/mips_jazz.c | 3 ++-
hw/net/dp8393x.c | 8 ++--
include/hw/mips/mips.h | 6 --
include/hw/net/dp8393x.h | 6 ++
4 files changed, 14 insertions(+), 9 deletions(-)
create mode 100644 include/hw/net/dp8393x.h
diff --git a/hw
Signed-off-by: Laurent Vivier
---
hw/mips/mips_jazz.c | 2 +-
hw/net/dp8393x.c | 182 +++
include/hw/net/dp8393x.h | 1 -
3 files changed, 121 insertions(+), 64 deletions(-)
diff --git a/hw/mips/mips_jazz.c b/hw/mips/mips_jazz.c
index
ärber a écrit :
> Hi Laurent,
>
> Am 29.12.2014 um 01:39 schrieb Laurent Vivier:
>> Signed-off-by: Laurent Vivier
>> ---
>> hw/mips/mips_jazz.c | 2 +-
>> hw/net/dp8393x.c | 182
>> +++
>> in
Hi Hervé,
Le 01/01/2015 22:01, Hervé Poussineau a écrit :
> Hi Laurent,
>
> Le 29/12/2014 01:39, Laurent Vivier a écrit :
>> This is a series of patches I wrote to use dp8393x (SONIC) with
>> Quadra 800 emulation. I think it is interesting to share them with the
>>
Le 02/01/2015 02:34, Laurent Vivier a écrit :
> Hi Hervé,
>
> Le 01/01/2015 22:01, Hervé Poussineau a écrit :
>> Hi Laurent,
>>
>> Le 29/12/2014 01:39, Laurent Vivier a écrit :
>>> This is a series of patches I wrote to use dp8393x (SONIC) with
>>> Qu
Le 02/01/2015 11:19, Peter Maydell a écrit :
> On 2 January 2015 at 09:25, Laurent Vivier wrote:
>> Using AddressSpace is really a very good idea, in fact, but I don't like
>> the way you pass it to the device (a qdev_set_prop()).
>>
>> I think we should do as
Hi,
did you test it ?
because after just a first glance this patch seems wrong as the tmp variables
cannot be used beyond the first tcg_gen_cond() (conditional branches clobber
temporary vars), you must use tcg_temp_local_new() and tcg_temp_free().
Regards,
Laurent
> Le 7 novembre 2014 à 11:1
> Le 7 novembre 2014 à 11:14, "Guo, Lei" a écrit :
>
>
> This patch aims to add CMP2 instruction for m68k family.
>
>
>
> Description: Compares the value in Rn to each bound. The effective address
> contains the
>
> bounds pair: upper bound following the lower bound. For signed compa
Le 10/11/2014 04:21, Guo, Lei a écrit :
> Hi Andreas
> Thanks a lot for your patients. Because I'm a newer to this , I'll
> follow your advices and pay much more attention to these details.
> Besides ,I have replied to Thomas' question on my previous submission.
If the question was "Have yo
ntu 14.0.2 / x86_64
original test result: -1
13451 poll(0,0,1000,274886297496,26854,268566648) = -1 errno=14 (Bad
address)
patched test result: 0
13536 poll(0,0,1000,274886297496,26854,268566648) = 0
Signed-off-by: Laurent Vivier
---
linux-user/syscall.c | 20 +
.
Signed-off-by: Laurent Vivier
---
kvm-all.c | 8
1 file changed, 8 insertions(+)
diff --git a/kvm-all.c b/kvm-all.c
index 17a3771..7b57826 100644
--- a/kvm-all.c
+++ b/kvm-all.c
@@ -1828,6 +1828,14 @@ int kvm_cpu_exec(CPUState *cpu)
}
fprintf(stderr, "error
of the target command type
instead of abi_long (and for consistency, update IOCTLEntry).
Signed-off-by: Laurent Vivier
---
linux-user/syscall.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
index 1622ad6..68801cf 100644
---
of the target command type
instead of abi_long (and for consistency, update IOCTLEntry).
Signed-off-by: Laurent Vivier
---
v2: use int instead of abi_int, as it is recommended by Peter Maydell.
linux-user/syscall.c | 18 +-
1 file changed, 9 insertions(+), 9 deletions(-)
diff --git
if (fdsi.ssi_signo == SIGINT) {
printf("Got SIGINT\n");
} else if (fdsi.ssi_signo == SIGQUIT) {
printf("Got SIGQUIT\n");
exit(EXIT_SUCCESS);
} else {
printf("Read unexpected signal\n");
}
}
}
$
t qemu-CPU
To remove interpreter, use :
sudo update-binfmts --package qemu-CPU --remove qemu-CPU $QEMU_PATH
With systemd, binfmt files are loaded by systemd-binfmt.service
Signed-off-by: Laurent Vivier
---
scripts/qemu-binfmt-conf.sh | 366 +++--
Le 30/05/2015 21:32, Peter Maydell a écrit :
> On 30 May 2015 at 20:28, Laurent Vivier wrote:
>> Orginal qemu-binfmt-conf.h is only able to write configuration
>> into /proc/sys/fs/binfmt_misc, and the configuration is lost on reboot.
>>
>> This script can configure
, we can also do:
y = x * 30; /* 33 MHz PCI period is 30 ns */
Which is much more simple.
This implies a 33.33 MHz PCI frequency,
but this is correct.
Signed-off-by: Laurent Vivier
Reviewed-by: Stefan Hajnoczi
---
hw/net/rtl8139.c | 14 ++
tests/rtl8139-test.c | 2 +-
2
MHz, we can also do:
y = x * 10; /* 100 MHz period is 10 ns */
Signed-off-by: Laurent Vivier
Reviewed-by: Leon Alrae
---
hw/mips/cputimer.c | 19 ---
1 file changed, 8 insertions(+), 11 deletions(-)
diff --git a/hw/mips/cputimer.c b/hw/mips/cputimer.c
index ba9264b..f046588
muldiv64() is used to convert nanoseconds to microseconds.
x = muldiv64(qemu_clock_get_ns(..), 100, get_ticks_per_sec());
As get_ticks_per_sec() is 10^9, it can be replaced by:
x = qemu_clock_get_us(..);
Signed-off-by: Laurent Vivier
Reviewed-by: Stefan Hajnoczi
---
net/dump.c
get_ticks_per_sec() is 10^9,
a = muldiv64(b, get_ticks_per_sec(), 100);
y = muldiv64(x, get_ticks_per_sec(), 100);
can be converted to
a = b * 1000;
y = x * 1000;
Signed-off-by: Laurent Vivier
Reviewed-by: Paolo Bonzini
---
hw/bt/hci.c | 4 ++--
1 file changed, 2
register.
Signed-off-by: Laurent Vivier
Reviewed-by: Paolo Bonzini
---
hw/timer/hpet.c | 6 +++---
include/hw/timer/hpet.h | 4 ++--
2 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/hw/timer/hpet.c b/hw/timer/hpet.c
index 2bb6221..3037bef 100644
--- a/hw/timer/hpet.c
+++ b/hw
, we can also do:
y = x * 30; /* 33 MHz PCI period is 30 ns */
Which is much more simple.
This implies a 33.33 MHz PCI frequency,
but this is correct.
Signed-off-by: Laurent Vivier
Reviewed-by: Stefan Hajnoczi
---
hw/net/pcnet.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions
frequency
--------
Laurent Vivier (9):
i6300esb: remove muldiv64()
rtl8139: remove muldiv64()
pcnet: remove muldiv64()
mips: remove muldiv64()
openrisc: remove muldiv64()
arm: clarify the use of muldiv64()
hpet: remove muldiv64()
bt: remove muldiv64()
, we can also do:
y = x * 30; /* 33 MHz PCI period is 30 ns */
Which is much more simple.
This implies a 33.33 MHz PCI frequency,
but this is correct.
Signed-off-by: Laurent Vivier
---
hw/watchdog/wdt_i6300esb.c | 11 +++
1 file changed, 3 insertions(+), 8 deletions(-)
diff --git
20 MHz, we can also do:
y = x * 50; /* 20 MHz period is 50 ns */
Signed-off-by: Laurent Vivier
---
hw/openrisc/cputimer.c | 7 +++
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/hw/openrisc/cputimer.c b/hw/openrisc/cputimer.c
index 9c54945..560cb91 100644
--- a/hw/openrisc
muldiv64() is used to convert microseconds into CPU ticks.
But it is not clear and not commented. This patch uses macro
to clearly identify what is used: time, CPU frequency and ticks.
For an elapsed time and a given frequency, we compute how many ticks
we have.
Signed-off-by: Laurent Vivier
/hw/vfio/vfio-pci.h| 11
> memory.c | 23 +++
> 6 files changed, 160 insertions(+), 68 deletions(-)
> create mode 100644 include/hw/vfio/vfio-pci.h
>
For the series:
Reviewed-by: Laurent Vivier
cmd646 is an IDE controller, so add it to the
storage category.
Signed-off-by: Laurent Vivier
---
hw/ide/cmd646.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/hw/ide/cmd646.c b/hw/ide/cmd646.c
index 66fb9d9..27f3da2 100644
--- a/hw/ide/cmd646.c
+++ b/hw/ide/cmd646.c
@@ -417,6 +417,7
Grackle is the PCI host controller of oldworld powermac,
so add it to the bridge category.
Signed-off-by: Laurent Vivier
---
hw/pci-host/grackle.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/hw/pci-host/grackle.c b/hw/pci-host/grackle.c
index bfe707a..ea31b72 100644
--- a/hw/pci-host
macio-ide is an IDE controller, so add it
to the storage category.
Signed-off-by: Laurent Vivier
---
hw/ide/macio.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/hw/ide/macio.c b/hw/ide/macio.c
index 66ac2ba..893c9b9 100644
--- a/hw/ide/macio.c
+++ b/hw/ide/macio.c
@@ -590,6 +590,7
Cuda is a bridge between PowerMac system bus and the ADB controller,
real-time clock, pram and the power management unit.
So add it to the bridge category.
Signed-off-by: Laurent Vivier
---
hw/misc/macio/cuda.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/hw/misc/macio/cuda.c b/hw/misc
Some PPC devices appear uncategorized in the output of
"-device ?". This series tries to categorize some of
them.
Laurent Vivier (10):
adb: add to input category
cmd646: add to storage category
escc: add to input category
grackle: add to bridge category
cuda: add to bridg
The Apple Desktop Bus is used to connect a keyboard and a mouse,
so add it to the input category.
Signed-off-by: Laurent Vivier
---
hw/input/adb.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/hw/input/adb.c b/hw/input/adb.c
index a18eea2..09eead9 100644
--- a/hw/input/adb.c
+++ b/hw
The macio nvram is a non volatile RAM, so add it
the misc category.
Signed-off-by: Laurent Vivier
---
hw/nvram/mac_nvram.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/hw/nvram/mac_nvram.c b/hw/nvram/mac_nvram.c
index d35f8a3..9f16566 100644
--- a/hw/nvram/mac_nvram.c
+++ b/hw/nvram
macio is a bridge between the PCI bus and the Mac nvram,
IDE controller and PIC, so add it to the bridge category.
Signed-off-by: Laurent Vivier
---
hw/misc/macio/macio.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/hw/misc/macio/macio.c b/hw/misc/macio/macio.c
index e3c0242..c0989a0
Uninorth is the mac99 PCI host controller, so add
it to the bridge category.
Signed-off-by: Laurent Vivier
---
hw/pci-host/uninorth.c | 8
1 file changed, 8 insertions(+)
diff --git a/hw/pci-host/uninorth.c b/hw/pci-host/uninorth.c
index f0144eb..215b64f 100644
--- a/hw/pci-host
ESCC is a serial port controller, so add it
to the input category.
Signed-off-by: Laurent Vivier
---
hw/char/escc.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/hw/char/escc.c b/hw/char/escc.c
index ba653ef..9816154 100644
--- a/hw/char/escc.c
+++ b/hw/char/escc.c
@@ -1035,6 +1035,7
openpic is a programmable interrupt controller, so
add it to the misc category.
Signed-off-by: Laurent Vivier
---
hw/intc/openpic.c | 1 +
hw/intc/openpic_kvm.c | 1 +
2 files changed, 2 insertions(+)
diff --git a/hw/intc/openpic.c b/hw/intc/openpic.c
index 14ab0e3..bfcf155 100644
--- a/hw
Le 28/09/2015 15:57, Riku Voipio a écrit :
> On Sat, Sep 05, 2015 at 12:03:11AM +0200, Laurent Vivier wrote:
>>
>>
>> Le 04/09/2015 15:35, Peter Maydell a écrit :
>>> On 3 September 2015 at 00:58, Laurent Vivier wrote:
>>>> This patch introduces a
printf("Read unexpected signal\n");
}
}
}
$ ./signalfd_demo
^CGot SIGINT
^CGot SIGINT
^\Got SIGQUIT
Signed-off-by: Laurent Vivier
---
v3: Combine struct definition and typedef
replace a = x ? y : z by if () { }
clear extra memory from g_realloc()
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA256
On 29/09/2015 07:18, David Gibson wrote:
> On Thu, Sep 24, 2015 at 12:27:39PM +0200, Laurent Vivier wrote:
>> When DT node names for PCI devices are generated by SLOF, they
>> are generated according to the type of the devic
te(mr, addr, is_write);
> +if (iotlb.perm != IOMMU_NONE) {
> +n->notify(n, &iotlb);
> +}
> +
> +/* if (2^64 - MR size) < granularity, it's possible to get an
> + * infinite loop here. This should catch such a wraparound */
> +if ((addr + granularity) < addr) {
> +break;
> +}
> +}
> +}
> +
> void memory_region_unregister_iommu_notifier(Notifier *n)
> {
> notifier_remove(n);
>
Reviewed-by: Laurent Vivier
hw/vfio/vfio-common.h
> @@ -59,22 +59,12 @@ typedef struct VFIOAddressSpace {
>
> struct VFIOGroup;
>
> -typedef struct VFIOType1 {
> -MemoryListener listener;
> -int error;
> -bool initialized;
> -} VFIOType1;
> -
> typedef struct VFIOContainer {
> VFIOAddressSpace *space;
> int fd; /* /dev/vfio/vfio, empowered by the attached groups */
> -struct {
> -/* enable abstraction to support various iommu backends */
> -union {
> -VFIOType1 type1;
> -};
> -void (*release)(struct VFIOContainer *);
> -} iommu_data;
> +MemoryListener listener;
> +int error;
> +bool initialized;
> QLIST_HEAD(, VFIOGuestIOMMU) giommu_list;
> QLIST_HEAD(, VFIOGroup) group_list;
> QLIST_ENTRY(VFIOContainer) next;
>
Reviewed-by: Laurent Vivier
--git a/include/hw/vfio/vfio-common.h b/include/hw/vfio/vfio-common.h
> index 27a14c0..f037f3c 100644
> --- a/include/hw/vfio/vfio-common.h
> +++ b/include/hw/vfio/vfio-common.h
> @@ -71,6 +71,7 @@ typedef struct VFIOContainer {
> * future
> */
> hwaddr min_iova, max_iova;
> +uint64_t iova_pgsizes;
> QLIST_HEAD(, VFIOGuestIOMMU) giommu_list;
> QLIST_HEAD(, VFIOGroup) group_list;
> QLIST_ENTRY(VFIOContainer) next;
>
Reviewed-by: Laurent Vivier
, it's possible to get an
> + * infinite loop here. This should catch such a wraparound */
> + if ((addr + granularity) < addr) {
> +break;
> +}
> +}
> +}
> +
> void memory_region_unregister_iommu_notifier(Notifier *n)
> {
> notifier_remove(n);
>
As my question is not a bout this particular patch but on another
existing part, I can say:
Reviewed-by: Laurent Vivier
>
> Signed-off-by: David Gibson
> Reviewed-by: Thomas Huth
> Reviewed-by: Laurent Vivier
> ---
> hw/vfio/common.c | 26 +++---
> 1 file changed, 15 insertions(+), 11 deletions(-)
>
> diff --git a/hw/vfio/common.c b/hw/vfio/common.c
> index 15
ode 100644
> index 000..32105f7
> --- /dev/null
> +++ b/include/hw/vfio/vfio-pci.h
> @@ -0,0 +1,11 @@
> +#ifndef VFIO_PCI_H
> +#define VFIO_PCI_H
> +
> +#include "qemu/typedefs.h"
> +
> +/* We expose the concept of a VFIOGroup, though not its internals */
> +typedef struct VFIOGroup VFIOGroup;
> +
> +extern VFIOGroup *vfio_pci_device_group(PCIDevice *pdev);
> +
> +#endif /* VFIO_PCI_H */
>
Reviewed-by: Laurent Vivier
doesn't tell us what IOVA range the
> IOMMU actually supports.
>
> For the Power "sPAPR TCE" IOMMU, however, we can retrieve the supported
> IOVA range and validate guest IOVA ranges against it, and this patch does
> so.
>
> Signed-off-by: David Gibson
uint32_t nb_table,
> bool need_vfio);
> +void spapr_tce_set_need_vfio(sPAPRTCETable *tcet, bool need_vfio);
> +
> MemoryRegion *spapr_tce_get_iommu(sPAPRTCETable *tcet);
> int spapr_dma_dt(void *fdt, int node_off, const char *propname,
> uint32_t liobn, uint64_t window, uint32_t size);
>
Reviewed-by: Laurent Vivier
On 30/09/2015 04:13, David Gibson wrote:
> At present the memory listener used by vfio to keep host IOMMU mappings
> in sync with the guest memory image assumes that if a guest IOMMU
> appears, then it has no existing mappings.
>
> This may not be true if a VFIO device is hotplugged onto a guest
nable(PowerPCCPU *cpu);
> off_t kvmppc_alloc_rma(void **rma);
> bool kvmppc_spapr_use_multitce(void);
> void *kvmppc_create_spapr_tce(uint32_t liobn, uint32_t window_size, int *pfd,
> - bool vfio_accel);
> + bool need_vfio);
> int kvmppc_remove_spapr_tce(void *table, int pfd, uint32_t window_size);
> int kvmppc_reset_htab(int shift_hint);
> uint64_t kvmppc_rma_size(uint64_t current_size, unsigned int hash_shift);
>
Reviewed-by: Laurent Vivier
st(OBJECT(pdev), "vfio-pci")) {
> +sPAPRTCETable *tcet = spapr_tce_find_by_liobn(phb->dma_liobn);
> +
> +spapr_tce_set_need_vfio(tcet, true);
> +}
> +
> if (dev->hotplugged) {
> fdt = create_device_tree(&fdt_size);
> fdt_start_offset = spapr_create_pci_child_dt(phb, pdev, fdt, 0);
>
Reviewed-by: Laurent Vivier
PAPRPHBState {
> MemoryRegion memwindow, iowindow, msiwindow;
>
> uint32_t dma_liobn;
> +hwaddr dma_win_addr, dma_win_size;
> AddressSpace iommu_as;
> MemoryRegion iommu_root;
>
> @@ -115,8 +116,6 @@ struct sPAPRPHBVFIOState {
>
> #define SPAPR_PCI_MSI_WINDOW 0x400ULL
>
> -#define SPAPR_PCI_DMA32_SIZE 0x4000
> -
> static inline qemu_irq spapr_phb_lsi_qirq(struct sPAPRPHBState *phb, int pin)
> {
> sPAPRMachineState *spapr = SPAPR_MACHINE(qdev_get_machine());
>
Reviewed-by: Laurent Vivier
To allow QEMU to add PCI entries in device tree,
we must have a more exhaustive list of PCI class IDs.
This patch synchronizes as much as possible with
pci_ids.h and add some missing IDs from SLOF.
Signed-off-by: Laurent Vivier
Reviewed-by: Michael S. Tsirkin
Reviewed-by: Thomas Huth
/input-controller@0/
input-controller
/proc/device-tree/pci@8002000/mouse@2/
mouse
/proc/device-tree/pci@8002000/multimedia-device@7/
multimedia-device
/proc/device-tree/pci@8002000/scsi@3/
scsi
/proc/device-tree/pci@8002000/usb-xhci@6/
usb-xhci
Signed-off-by: Laurent
SLOF does).
Fix typo (IPMI-bltr).
Laurent Vivier (2):
PCI: add missing classes in pci_ids.h to build device tree
spapr: generate DT node names
hw/ppc/spapr_pci.c | 290 ---
include/hw/pci/pci_ids.h | 112 --
2 files cha
printf("Read unexpected signal\n");
}
}
}
$ ./signalfd_demo
^CGot SIGINT
^CGot SIGINT
^\Got SIGQUIT
Signed-off-by: Laurent Vivier
---
v4: rebase on top of Riku's linux-user-for-upstream
add fd_trans_unregister() for open_by_handle_at.
v3: Combine st
raryPolicy
Signed-off-by: Laurent Vivier
---
configure | 17 ++---
1 file changed, 14 insertions(+), 3 deletions(-)
diff --git a/configure b/configure
index f14454e..99d4269 100755
--- a/configure
+++ b/configure
@@ -2284,9 +2284,20 @@ fi
tasn1=yes
if $pkg_config --exists "
raryPolicy
Signed-off-by: Laurent Vivier
---
v2: do not duplicate --static flag
do not special-casing static case
configure | 9 +++--
1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/configure b/configure
index f14454e..d5e3c91 100755
--- a/configure
+++ b/configure
@@ -2285,
:
without this patch, systemd crashes (core).
CC: Alexander Graf
CC: Peter Maydell
Signed-off-by: Laurent Vivier
---
I cc' Alexander because it has added the padding and the packed attribute,
Peter because it is the author of the original structure.
linux-user/syscall_defs.h
no more comments, it should mean it's ok ?
Can someone merge this or just say "stop this, I don't want that"...
Laurent
On 14/09/2015 20:01, Laurent Vivier wrote:
> This series allows to only display a given list of help sections.
>
> v5: introduce "-help[=LI
On 05/10/2015 23:08, Michael S. Tsirkin wrote:
> On Mon, Oct 05, 2015 at 03:20:19PM +0200, Laurent Vivier wrote:
>> no more comments, it should mean it's ok ?
>>
>> Can someone merge this or just say "stop this, I don't want that"...
>>
>>
ntu 14.0.2 / x86_64
original test result: -1
13451 poll(0,0,1000,274886297496,26854,268566648) = -1 errno=14 (Bad
address)
patched test result: 0
13536 poll(0,0,1000,274886297496,26854,268566648) = 0
Signed-off-by: Laurent Vivier
---
This patch has already been sent in A
ile for a
list of allowed protocols. When protocol is set to htons(ETH_P_ALL)
then all protocols are received. All incoming packets of that protocol
type will be passed to the packet socket before they are passed to the
protocols implemented in the kernel.
Signed-off-by: Laurent Vivier
---
Le 26/10/2015 15:40, Peter Maydell a écrit :
> On 6 October 2015 at 18:11, Laurent Vivier wrote:
>> This is obsolete, but if we want to use dhcp with some distros (like debian
>> ppc 8.2 jessie), we need it.
>>
>> At the bind level, we are not able to know the socket
Le 27/10/2015 04:09, Laurent Vivier a écrit :
>
>
> Le 26/10/2015 15:40, Peter Maydell a écrit :
>> On 6 October 2015 at 18:11, Laurent Vivier wrote:
>>> This is obsolete, but if we want to use dhcp with some distros (like debian
>>> ppc 8.2 jessie), we need
Le 27/10/2015 12:39, Peter Maydell a écrit :
> On 27 October 2015 at 11:35, Peter Maydell wrote:
>> Still thinking about the other part of your patch, because
>> "does this start with 'eth'" is not very pretty...
I agree with you, but I didn't find better.
> ...can we use the TargetFdTrans mac
Le 27/10/2015 12:35, Peter Maydell a écrit :
> On 27 October 2015 at 10:47, Laurent Vivier wrote:
>> And for the socketcall part, we need the tswap16():
>>
>> for instance,
>>
>> int a = htons(0x0003);
>>
>> On a LE host:
>>
>> a
Le 27/10/2015 12:50, Peter Maydell a écrit :
> On 27 October 2015 at 03:09, Laurent Vivier wrote:
>> Le 26/10/2015 15:40, Peter Maydell a écrit :
>>> This confuses me. The packet(7) manpage suggests there are two flavours
>>> of packet socket:
>>> (1) legac
Le 27/10/2015 12:52, Peter Maydell a écrit :
> On 27 October 2015 at 11:49, Laurent Vivier wrote:
>>
>>
>> Le 27/10/2015 12:39, Peter Maydell a écrit :
>>> On 27 October 2015 at 11:35, Peter Maydell wrote:
>>>> Still thinking about the other part of
rename previous functions to be
clear).
Laurent Vivier (4):
linux-user: SOCK_PACKET uses network endian to encode protocol in
socket()
linux-user: rename TargetFdFunc to TargetFdDataFunc, and structure
fields accordingly
linux-user: add a function hook to translate sockaddr
, SOCK_PACKET, protocol).
We need to tswap16() the protocol because on big-endian, the ABI is
waiting for, for instance for ETH_P_ALL, 0x0003 (big endian ==
network order), whereas on little-endian it is waiting for 0x0300.
Signed-off-by: Laurent Vivier
---
linux-user/syscall.c | 6 ++
1 file
eth0.
Signed-off-by: Laurent Vivier
---
linux-user/syscall.c | 30 ++
1 file changed, 30 insertions(+)
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
index 31b5c2c..f048437 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -2086,6 +2086,30 @@ stati
Signed-off-by: Laurent Vivier
---
linux-user/syscall.c | 41 -
1 file changed, 36 insertions(+), 5 deletions(-)
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
index 41b85b4..31b5c2c 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
Signed-off-by: Laurent Vivier
---
linux-user/syscall.c | 18 +-
1 file changed, 9 insertions(+), 9 deletions(-)
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
index 7c724ab..41b85b4 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -295,20 +295,20
Le 28/10/2015 20:20, Peter Maydell a écrit :
> On 28 October 2015 at 19:13, Laurent Vivier wrote:
>> This is obsolete, but if we want to use dhcp with an old distro (like debian
>> etch), we need it. Some users (like dhclient) use SOCK_PACKET with AF_PACKET
>> and t
Signed-off-by: Laurent Vivier
---
v3: insert fd_trans_target_to_host_addr() into target_to_host_sockaddr() and
pass fd.
linux-user/syscall.c | 27 +--
1 file changed, 21 insertions(+), 6 deletions(-)
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
index
, SOCK_PACKET, protocol).
We need to tswap16() the protocol because on big-endian, the ABI is
waiting for, for instance for ETH_P_ALL, 0x0003 (big endian ==
network order), whereas on little-endian it is waiting for 0x0300.
Signed-off-by: Laurent Vivier
Reviewed-by: Peter Maydell
---
linux-user
Signed-off-by: Laurent Vivier
---
linux-user/syscall.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
index 22b28a4..eb45e72 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -309,7 +309,7 @@ static unsigned int
Signed-off-by: Laurent Vivier
Reviewed-by: Peter Maydell
---
linux-user/syscall.c | 18 +-
1 file changed, 9 insertions(+), 9 deletions(-)
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
index 7c724ab..41b85b4 100644
--- a/linux-user/syscall.c
+++ b/linux-user
This is obsolete, but if we want to use dhcp with some distros (like debian
ppc 8.2 jessie), we need it.
bind() uses an interface name instead an interface index, and socket()
needs network order value to encode the protocol.
v3: update cover letter message,
insert Reviewed-by: in PATCH 1 and
eth0.
Signed-off-by: Laurent Vivier
---
v3: rename packet_target_to_host_addr to packet_target_to_host_sockaddr
linux-user/syscall.c | 30 ++
1 file changed, 30 insertions(+)
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
index a313846..22b28a4 100644
--- a/
Le 29/10/2015 00:12, Peter Maydell a écrit :
> On 28 October 2015 at 20:40, Laurent Vivier wrote:
>> This is obsolete, but if we want to use dhcp with some distros (like debian
>> ppc 8.2 jessie), we need it.
>>
>> bind() uses an interface name instead an interface i
Le 12/10/2015 15:42, Riku Voipio a écrit :
> On perjantaina 11. syyskuuta 2015 13.59.29 EEST, Peter Maydell wrote:
>> On 6 September 2015 at 00:56, Timothy E Baldwin
>> wrote:
>>> Check array bounds in host_to_target_errno() and target_to_host_errno().
>>>
>>> Signed-off-by: Timothy Edward Baldw
Le 22/01/2016 11:01, Petros Angelatos a écrit :
>>> diff --git a/linux-user/main.c b/linux-user/main.c
>>> index ee12035..5951279 100644
>>> --- a/linux-user/main.c
>>> +++ b/linux-user/main.c
>>> @@ -79,6 +79,7 @@ static void usage(int exitcode);
>>>
>>> static const char *interp_prefix = CONFI
Le 22/01/2016 11:47, Peter Maydell a écrit :
> On 22 January 2016 at 10:33, Laurent Vivier wrote:
>> Le 22/01/2016 11:01, Petros Angelatos a écrit :
>>> This was my initial approach too, but argv[0] can be just the filename
>>> like "qemu-arm-static". And
On 22/01/2016 07:44, Jason Wang wrote:
>
>
> On 01/21/2016 04:42 PM, Laurent Vivier wrote:
>> ping
>>
>> [added Jason in cc:]
>>
>> On 13/01/2016 20:26, Laurent Vivier wrote:
>>> commit 5be7d9f1b1452613b95c6ba70b8d7ad3d0797991
>>>
egment_page_sizes(uint32_t *prop, int
> maxcells)
> -{
> -return -1;
> -}
> -
> static inline int kvmppc_set_interrupt(PowerPCCPU *cpu, int irq, int level)
> {
> return -1;
>
Reviewed-by: Laurent Vivier
This function has been added by:
4656e1f ppc64: Rudimentary Support for extra page sizes on server CPUs
but has never been implemented
On 27/01/2016 14:36, Gerd Hoffmann wrote:
> Hi,
>
>> Hmm. Is there a HOWTO for setting up a 32-bit container? Containers
>> aren't something I've had the time to become familiar with so far.
>
> systemd-nspawn manpage has a few examples in the examples section (and
> is worth reading anyway
ns which are called with the CPUPPCState * from tcg.
>
> Callers and some related functions are updated as well, the boundaries of
> what's changed here are a bit arbitrary.
>
> Signed-off-by: David Gibson
Reviewed-by: Laurent Vivier
> ---
> hw/ppc/spapr_hcall.c
this way.
>
> As a bonus, this slightly simplifies the emulation of segment registers for
> when running a 32-bit OS on a 64-bit CPU.
>
> Signed-off-by: David Gibson
Reviewed-by: Laurent Vivier
> ---
> target-ppc/kvm.c| 2 +-
> target-ppc/mmu-hash64.c | 24
it a/target-ppc/translate.c b/target-ppc/translate.c
> index 4be7eaa..a05a169 100644
> --- a/target-ppc/translate.c
> +++ b/target-ppc/translate.c
> @@ -5904,7 +5904,7 @@ static void gen_tlbiva(DisasContext *ctx)
> }
> t0 = tcg_temp_new();
> gen_addr_reg_index(ctx, t0);
> -gen_helper_tlbie(cpu_env, cpu_gpr[rB(ctx->opcode)]);
> +gen_helper_tlbiva(cpu_env, cpu_gpr[rB(ctx->opcode)]);
> tcg_temp_free(t0);
> #endif
> }
>
Reviewed-by: Laurent Vivier
On 27/01/2016 11:13, David Gibson wrote:
> ppc_tlb_invalidate_one() has a big switch handling many different MMU
> types. However, most of those branches can never be reached:
>
> It is called from 3 places: from remove_hpte() and h_protect() in
> spapr_hcall.c (which always has a 64-bit hash M
Le 27/01/2016 15:10, Alexander Graf a écrit :
> The qemu-binfmt-conf.sh script has been pretty unmaintained for most of its
> time. The reason is simply that few distributions actually use the file as
> is.
I've a version of this script supporting debian, systemd (because it
will rule the world)
Le 28/01/2016 20:22, Alexander Graf a écrit :
>
>
> On 01/28/2016 08:16 PM, Laurent Vivier wrote:
>>
>> Le 27/01/2016 15:10, Alexander Graf a écrit :
>>> The qemu-binfmt-conf.sh script has been pretty unmaintained for most
>>> of its
>>> t
Le 28/01/2016 20:36, Peter Maydell a écrit :
> On 28 January 2016 at 19:35, Alexander Graf wrote:
>>> Am 28.01.2016 um 21:27 schrieb Laurent Vivier :
>>> Peter, if you agree to take the file as-is, I can resend the last
>>> version. :)
>>
>> The script
te-binfmts, use :
sudo update-binfmts --importdir /usr/share/binfmts --import qemu-CPU
To remove interpreter, use :
sudo update-binfmts --package qemu-CPU --remove qemu-CPU /usr/local/bin
With systemd, binfmt files are loaded by systemd-binfmt.service
Signed-off-by: Laur
Le 28/01/2016 21:20, Alexander Graf a écrit :
>
>
> On 01/28/2016 09:08 PM, Laurent Vivier wrote:
>> This script can configure debian and systemd services to restore
>> configuration on reboot. Moreover, it is able to manage binfmt
>> credential and to configure
101 - 200 of 10673 matches
Mail list logo