* [Qemu-devel] [PATCH] ati-vga: Fix check for blt outside vram
@ 2019-04-09 10:56 BALATON Zoltan
2019-04-09 13:03 ` Philippe Mathieu-Daudé
2019-05-07 7:55 ` Gerd Hoffmann
0 siblings, 2 replies; 8+ messages in thread
From: BALATON Zoltan @ 2019-04-09 10:56 UTC (permalink / raw)
To: qemu-devel; +Cc: Gerd Hoffmann, Andrew Randrianasulu
Fix the check preventing calling pixman functions that would access
memory outside allocated vram. The r128 X driver sometimes seem to try
blits that span outside vram, this check prevents crashing QEMU in
that case. (The r128 X driver may have problems even on real hardware
so I'm not sure if it's a client bug or emulation problem but at least
QEMU should survive.)
Signed-off-by: BALATON Zoltan <balaton@eik.bme.hu>
Tested-by: Andrew Randrianasulu <randrianasulu@gmail.com>
---
hw/display/ati_2d.c | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/hw/display/ati_2d.c b/hw/display/ati_2d.c
index bc98ba6eeb..fe3ae14864 100644
--- a/hw/display/ati_2d.c
+++ b/hw/display/ati_2d.c
@@ -79,10 +79,10 @@ void ati_2d_blt(ATIVGAState *s)
s->regs.dst_width, s->regs.dst_height);
end = s->vga.vram_ptr + s->vga.vram_size;
if (src_bits >= end || dst_bits >= end ||
- src_bits + (s->regs.src_y + s->regs.dst_height) * src_stride +
- s->regs.src_x >= end ||
- dst_bits + (s->regs.dst_y + s->regs.dst_height) * dst_stride +
- s->regs.dst_x >= end) {
+ src_bits + s->regs.src_x + (s->regs.src_y + s->regs.dst_height) *
+ src_stride * sizeof(uint32_t) >= end ||
+ dst_bits + s->regs.dst_x + (s->regs.dst_y + s->regs.dst_height) *
+ dst_stride * sizeof(uint32_t) >= end) {
qemu_log_mask(LOG_UNIMP, "blt outside vram not implemented\n");
return;
}
@@ -140,8 +140,8 @@ void ati_2d_blt(ATIVGAState *s)
filler);
end = s->vga.vram_ptr + s->vga.vram_size;
if (dst_bits >= end ||
- dst_bits + (s->regs.dst_y + s->regs.dst_height) * dst_stride +
- s->regs.dst_x >= end) {
+ dst_bits + s->regs.dst_x + (s->regs.dst_y + s->regs.dst_height) *
+ dst_stride * sizeof(uint32_t) >= end) {
qemu_log_mask(LOG_UNIMP, "blt outside vram not implemented\n");
return;
}
--
2.13.7
^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [Qemu-devel] [PATCH] ati-vga: Fix check for blt outside vram
@ 2019-04-09 13:03 ` Philippe Mathieu-Daudé
0 siblings, 0 replies; 8+ messages in thread
From: Philippe Mathieu-Daudé @ 2019-04-09 13:03 UTC (permalink / raw)
To: BALATON Zoltan, qemu-devel
Cc: Gerd Hoffmann, Andrew Randrianasulu, Paolo Bonzini, Peter Maydell
This patch looks 4.0 worthwhile.
On 4/9/19 12:56 PM, BALATON Zoltan wrote:
> Fix the check preventing calling pixman functions that would access
> memory outside allocated vram. The r128 X driver sometimes seem to try
> blits that span outside vram, this check prevents crashing QEMU in
> that case. (The r128 X driver may have problems even on real hardware
> so I'm not sure if it's a client bug or emulation problem but at least
> QEMU should survive.)
>
> Signed-off-by: BALATON Zoltan <balaton@eik.bme.hu>
> Tested-by: Andrew Randrianasulu <randrianasulu@gmail.com>
> ---
> hw/display/ati_2d.c | 12 ++++++------
> 1 file changed, 6 insertions(+), 6 deletions(-)
>
> diff --git a/hw/display/ati_2d.c b/hw/display/ati_2d.c
> index bc98ba6eeb..fe3ae14864 100644
> --- a/hw/display/ati_2d.c
> +++ b/hw/display/ati_2d.c
> @@ -79,10 +79,10 @@ void ati_2d_blt(ATIVGAState *s)
> s->regs.dst_width, s->regs.dst_height);
> end = s->vga.vram_ptr + s->vga.vram_size;
> if (src_bits >= end || dst_bits >= end ||
> - src_bits + (s->regs.src_y + s->regs.dst_height) * src_stride +
> - s->regs.src_x >= end ||
> - dst_bits + (s->regs.dst_y + s->regs.dst_height) * dst_stride +
> - s->regs.dst_x >= end) {
> + src_bits + s->regs.src_x + (s->regs.src_y + s->regs.dst_height) *
> + src_stride * sizeof(uint32_t) >= end ||
> + dst_bits + s->regs.dst_x + (s->regs.dst_y + s->regs.dst_height) *
> + dst_stride * sizeof(uint32_t) >= end) {
> qemu_log_mask(LOG_UNIMP, "blt outside vram not implemented\n");
> return;
> }
> @@ -140,8 +140,8 @@ void ati_2d_blt(ATIVGAState *s)
> filler);
> end = s->vga.vram_ptr + s->vga.vram_size;
> if (dst_bits >= end ||
> - dst_bits + (s->regs.dst_y + s->regs.dst_height) * dst_stride +
> - s->regs.dst_x >= end) {
> + dst_bits + s->regs.dst_x + (s->regs.dst_y + s->regs.dst_height) *
> + dst_stride * sizeof(uint32_t) >= end) {
> qemu_log_mask(LOG_UNIMP, "blt outside vram not implemented\n");
> return;
> }
>
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [Qemu-devel] [PATCH] ati-vga: Fix check for blt outside vram
@ 2019-04-09 13:03 ` Philippe Mathieu-Daudé
0 siblings, 0 replies; 8+ messages in thread
From: Philippe Mathieu-Daudé @ 2019-04-09 13:03 UTC (permalink / raw)
To: BALATON Zoltan, qemu-devel
Cc: Peter Maydell, Paolo Bonzini, Gerd Hoffmann, Andrew Randrianasulu
This patch looks 4.0 worthwhile.
On 4/9/19 12:56 PM, BALATON Zoltan wrote:
> Fix the check preventing calling pixman functions that would access
> memory outside allocated vram. The r128 X driver sometimes seem to try
> blits that span outside vram, this check prevents crashing QEMU in
> that case. (The r128 X driver may have problems even on real hardware
> so I'm not sure if it's a client bug or emulation problem but at least
> QEMU should survive.)
>
> Signed-off-by: BALATON Zoltan <balaton@eik.bme.hu>
> Tested-by: Andrew Randrianasulu <randrianasulu@gmail.com>
> ---
> hw/display/ati_2d.c | 12 ++++++------
> 1 file changed, 6 insertions(+), 6 deletions(-)
>
> diff --git a/hw/display/ati_2d.c b/hw/display/ati_2d.c
> index bc98ba6eeb..fe3ae14864 100644
> --- a/hw/display/ati_2d.c
> +++ b/hw/display/ati_2d.c
> @@ -79,10 +79,10 @@ void ati_2d_blt(ATIVGAState *s)
> s->regs.dst_width, s->regs.dst_height);
> end = s->vga.vram_ptr + s->vga.vram_size;
> if (src_bits >= end || dst_bits >= end ||
> - src_bits + (s->regs.src_y + s->regs.dst_height) * src_stride +
> - s->regs.src_x >= end ||
> - dst_bits + (s->regs.dst_y + s->regs.dst_height) * dst_stride +
> - s->regs.dst_x >= end) {
> + src_bits + s->regs.src_x + (s->regs.src_y + s->regs.dst_height) *
> + src_stride * sizeof(uint32_t) >= end ||
> + dst_bits + s->regs.dst_x + (s->regs.dst_y + s->regs.dst_height) *
> + dst_stride * sizeof(uint32_t) >= end) {
> qemu_log_mask(LOG_UNIMP, "blt outside vram not implemented\n");
> return;
> }
> @@ -140,8 +140,8 @@ void ati_2d_blt(ATIVGAState *s)
> filler);
> end = s->vga.vram_ptr + s->vga.vram_size;
> if (dst_bits >= end ||
> - dst_bits + (s->regs.dst_y + s->regs.dst_height) * dst_stride +
> - s->regs.dst_x >= end) {
> + dst_bits + s->regs.dst_x + (s->regs.dst_y + s->regs.dst_height) *
> + dst_stride * sizeof(uint32_t) >= end) {
> qemu_log_mask(LOG_UNIMP, "blt outside vram not implemented\n");
> return;
> }
>
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [Qemu-devel] [PATCH] ati-vga: Fix check for blt outside vram
@ 2019-04-14 20:30 ` BALATON Zoltan
0 siblings, 0 replies; 8+ messages in thread
From: BALATON Zoltan @ 2019-04-14 20:30 UTC (permalink / raw)
To: Gerd Hoffmann
Cc: qemu-devel, Philippe Mathieu-Daudé,
Andrew Randrianasulu, Paolo Bonzini, Peter Maydell
On Tue, 9 Apr 2019, Philippe Mathieu-Daudé wrote:
> This patch looks 4.0 worthwhile.
Now that it seems we'll have another rc, will this get in? Gerd, I think
you have to send a pull request with it for that.
Regards,
BALATON Zoltan
> On 4/9/19 12:56 PM, BALATON Zoltan wrote:
>> Fix the check preventing calling pixman functions that would access
>> memory outside allocated vram. The r128 X driver sometimes seem to try
>> blits that span outside vram, this check prevents crashing QEMU in
>> that case. (The r128 X driver may have problems even on real hardware
>> so I'm not sure if it's a client bug or emulation problem but at least
>> QEMU should survive.)
>>
>> Signed-off-by: BALATON Zoltan <balaton@eik.bme.hu>
>> Tested-by: Andrew Randrianasulu <randrianasulu@gmail.com>
>> ---
>> hw/display/ati_2d.c | 12 ++++++------
>> 1 file changed, 6 insertions(+), 6 deletions(-)
>>
>> diff --git a/hw/display/ati_2d.c b/hw/display/ati_2d.c
>> index bc98ba6eeb..fe3ae14864 100644
>> --- a/hw/display/ati_2d.c
>> +++ b/hw/display/ati_2d.c
>> @@ -79,10 +79,10 @@ void ati_2d_blt(ATIVGAState *s)
>> s->regs.dst_width, s->regs.dst_height);
>> end = s->vga.vram_ptr + s->vga.vram_size;
>> if (src_bits >= end || dst_bits >= end ||
>> - src_bits + (s->regs.src_y + s->regs.dst_height) * src_stride +
>> - s->regs.src_x >= end ||
>> - dst_bits + (s->regs.dst_y + s->regs.dst_height) * dst_stride +
>> - s->regs.dst_x >= end) {
>> + src_bits + s->regs.src_x + (s->regs.src_y + s->regs.dst_height) *
>> + src_stride * sizeof(uint32_t) >= end ||
>> + dst_bits + s->regs.dst_x + (s->regs.dst_y + s->regs.dst_height) *
>> + dst_stride * sizeof(uint32_t) >= end) {
>> qemu_log_mask(LOG_UNIMP, "blt outside vram not implemented\n");
>> return;
>> }
>> @@ -140,8 +140,8 @@ void ati_2d_blt(ATIVGAState *s)
>> filler);
>> end = s->vga.vram_ptr + s->vga.vram_size;
>> if (dst_bits >= end ||
>> - dst_bits + (s->regs.dst_y + s->regs.dst_height) * dst_stride +
>> - s->regs.dst_x >= end) {
>> + dst_bits + s->regs.dst_x + (s->regs.dst_y + s->regs.dst_height) *
>> + dst_stride * sizeof(uint32_t) >= end) {
>> qemu_log_mask(LOG_UNIMP, "blt outside vram not implemented\n");
>> return;
>> }
>>
>
>
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [Qemu-devel] [PATCH] ati-vga: Fix check for blt outside vram
@ 2019-04-14 20:30 ` BALATON Zoltan
0 siblings, 0 replies; 8+ messages in thread
From: BALATON Zoltan @ 2019-04-14 20:30 UTC (permalink / raw)
To: Gerd Hoffmann
Cc: Peter Maydell, Paolo Bonzini, Philippe Mathieu-Daudé,
qemu-devel, Andrew Randrianasulu
On Tue, 9 Apr 2019, Philippe Mathieu-Daudé wrote:
> This patch looks 4.0 worthwhile.
Now that it seems we'll have another rc, will this get in? Gerd, I think
you have to send a pull request with it for that.
Regards,
BALATON Zoltan
> On 4/9/19 12:56 PM, BALATON Zoltan wrote:
>> Fix the check preventing calling pixman functions that would access
>> memory outside allocated vram. The r128 X driver sometimes seem to try
>> blits that span outside vram, this check prevents crashing QEMU in
>> that case. (The r128 X driver may have problems even on real hardware
>> so I'm not sure if it's a client bug or emulation problem but at least
>> QEMU should survive.)
>>
>> Signed-off-by: BALATON Zoltan <balaton@eik.bme.hu>
>> Tested-by: Andrew Randrianasulu <randrianasulu@gmail.com>
>> ---
>> hw/display/ati_2d.c | 12 ++++++------
>> 1 file changed, 6 insertions(+), 6 deletions(-)
>>
>> diff --git a/hw/display/ati_2d.c b/hw/display/ati_2d.c
>> index bc98ba6eeb..fe3ae14864 100644
>> --- a/hw/display/ati_2d.c
>> +++ b/hw/display/ati_2d.c
>> @@ -79,10 +79,10 @@ void ati_2d_blt(ATIVGAState *s)
>> s->regs.dst_width, s->regs.dst_height);
>> end = s->vga.vram_ptr + s->vga.vram_size;
>> if (src_bits >= end || dst_bits >= end ||
>> - src_bits + (s->regs.src_y + s->regs.dst_height) * src_stride +
>> - s->regs.src_x >= end ||
>> - dst_bits + (s->regs.dst_y + s->regs.dst_height) * dst_stride +
>> - s->regs.dst_x >= end) {
>> + src_bits + s->regs.src_x + (s->regs.src_y + s->regs.dst_height) *
>> + src_stride * sizeof(uint32_t) >= end ||
>> + dst_bits + s->regs.dst_x + (s->regs.dst_y + s->regs.dst_height) *
>> + dst_stride * sizeof(uint32_t) >= end) {
>> qemu_log_mask(LOG_UNIMP, "blt outside vram not implemented\n");
>> return;
>> }
>> @@ -140,8 +140,8 @@ void ati_2d_blt(ATIVGAState *s)
>> filler);
>> end = s->vga.vram_ptr + s->vga.vram_size;
>> if (dst_bits >= end ||
>> - dst_bits + (s->regs.dst_y + s->regs.dst_height) * dst_stride +
>> - s->regs.dst_x >= end) {
>> + dst_bits + s->regs.dst_x + (s->regs.dst_y + s->regs.dst_height) *
>> + dst_stride * sizeof(uint32_t) >= end) {
>> qemu_log_mask(LOG_UNIMP, "blt outside vram not implemented\n");
>> return;
>> }
>>
>
>
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [Qemu-devel] [PATCH] ati-vga: Fix check for blt outside vram
@ 2019-04-25 22:51 ` BALATON Zoltan
0 siblings, 0 replies; 8+ messages in thread
From: BALATON Zoltan @ 2019-04-25 22:51 UTC (permalink / raw)
To: Gerd Hoffmann
Cc: Peter Maydell, Paolo Bonzini, Philippe Mathieu-Daudé,
qemu-devel, Andrew Randrianasulu
On Sun, 14 Apr 2019, BALATON Zoltan wrote:
> On Tue, 9 Apr 2019, Philippe Mathieu-Daudé wrote:
>> This patch looks 4.0 worthwhile.
>
> Now that it seems we'll have another rc, will this get in? Gerd, I think you
> have to send a pull request with it for that.
Ping? This has missed two rc-s. This prevents a crash so you might want to
queue it for stable as well now.
Regards,
BALATON Zoltan
>
>> On 4/9/19 12:56 PM, BALATON Zoltan wrote:
>>> Fix the check preventing calling pixman functions that would access
>>> memory outside allocated vram. The r128 X driver sometimes seem to try
>>> blits that span outside vram, this check prevents crashing QEMU in
>>> that case. (The r128 X driver may have problems even on real hardware
>>> so I'm not sure if it's a client bug or emulation problem but at least
>>> QEMU should survive.)
>>>
>>> Signed-off-by: BALATON Zoltan <balaton@eik.bme.hu>
>>> Tested-by: Andrew Randrianasulu <randrianasulu@gmail.com>
>>> ---
>>> hw/display/ati_2d.c | 12 ++++++------
>>> 1 file changed, 6 insertions(+), 6 deletions(-)
>>>
>>> diff --git a/hw/display/ati_2d.c b/hw/display/ati_2d.c
>>> index bc98ba6eeb..fe3ae14864 100644
>>> --- a/hw/display/ati_2d.c
>>> +++ b/hw/display/ati_2d.c
>>> @@ -79,10 +79,10 @@ void ati_2d_blt(ATIVGAState *s)
>>> s->regs.dst_width, s->regs.dst_height);
>>> end = s->vga.vram_ptr + s->vga.vram_size;
>>> if (src_bits >= end || dst_bits >= end ||
>>> - src_bits + (s->regs.src_y + s->regs.dst_height) * src_stride
>>> +
>>> - s->regs.src_x >= end ||
>>> - dst_bits + (s->regs.dst_y + s->regs.dst_height) * dst_stride
>>> +
>>> - s->regs.dst_x >= end) {
>>> + src_bits + s->regs.src_x + (s->regs.src_y +
>>> s->regs.dst_height) *
>>> + src_stride * sizeof(uint32_t) >= end ||
>>> + dst_bits + s->regs.dst_x + (s->regs.dst_y +
>>> s->regs.dst_height) *
>>> + dst_stride * sizeof(uint32_t) >= end) {
>>> qemu_log_mask(LOG_UNIMP, "blt outside vram not
>>> implemented\n");
>>> return;
>>> }
>>> @@ -140,8 +140,8 @@ void ati_2d_blt(ATIVGAState *s)
>>> filler);
>>> end = s->vga.vram_ptr + s->vga.vram_size;
>>> if (dst_bits >= end ||
>>> - dst_bits + (s->regs.dst_y + s->regs.dst_height) * dst_stride
>>> +
>>> - s->regs.dst_x >= end) {
>>> + dst_bits + s->regs.dst_x + (s->regs.dst_y +
>>> s->regs.dst_height) *
>>> + dst_stride * sizeof(uint32_t) >= end) {
>>> qemu_log_mask(LOG_UNIMP, "blt outside vram not
>>> implemented\n");
>>> return;
>>> }
>>>
>>
>>
>
>
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [Qemu-devel] [PATCH] ati-vga: Fix check for blt outside vram
@ 2019-04-25 22:51 ` BALATON Zoltan
0 siblings, 0 replies; 8+ messages in thread
From: BALATON Zoltan @ 2019-04-25 22:51 UTC (permalink / raw)
To: Gerd Hoffmann
Cc: Andrew Randrianasulu, Peter Maydell, Philippe Mathieu-Daudé,
qemu-devel, Paolo Bonzini
On Sun, 14 Apr 2019, BALATON Zoltan wrote:
> On Tue, 9 Apr 2019, Philippe Mathieu-Daudé wrote:
>> This patch looks 4.0 worthwhile.
>
> Now that it seems we'll have another rc, will this get in? Gerd, I think you
> have to send a pull request with it for that.
Ping? This has missed two rc-s. This prevents a crash so you might want to
queue it for stable as well now.
Regards,
BALATON Zoltan
>
>> On 4/9/19 12:56 PM, BALATON Zoltan wrote:
>>> Fix the check preventing calling pixman functions that would access
>>> memory outside allocated vram. The r128 X driver sometimes seem to try
>>> blits that span outside vram, this check prevents crashing QEMU in
>>> that case. (The r128 X driver may have problems even on real hardware
>>> so I'm not sure if it's a client bug or emulation problem but at least
>>> QEMU should survive.)
>>>
>>> Signed-off-by: BALATON Zoltan <balaton@eik.bme.hu>
>>> Tested-by: Andrew Randrianasulu <randrianasulu@gmail.com>
>>> ---
>>> hw/display/ati_2d.c | 12 ++++++------
>>> 1 file changed, 6 insertions(+), 6 deletions(-)
>>>
>>> diff --git a/hw/display/ati_2d.c b/hw/display/ati_2d.c
>>> index bc98ba6eeb..fe3ae14864 100644
>>> --- a/hw/display/ati_2d.c
>>> +++ b/hw/display/ati_2d.c
>>> @@ -79,10 +79,10 @@ void ati_2d_blt(ATIVGAState *s)
>>> s->regs.dst_width, s->regs.dst_height);
>>> end = s->vga.vram_ptr + s->vga.vram_size;
>>> if (src_bits >= end || dst_bits >= end ||
>>> - src_bits + (s->regs.src_y + s->regs.dst_height) * src_stride
>>> +
>>> - s->regs.src_x >= end ||
>>> - dst_bits + (s->regs.dst_y + s->regs.dst_height) * dst_stride
>>> +
>>> - s->regs.dst_x >= end) {
>>> + src_bits + s->regs.src_x + (s->regs.src_y +
>>> s->regs.dst_height) *
>>> + src_stride * sizeof(uint32_t) >= end ||
>>> + dst_bits + s->regs.dst_x + (s->regs.dst_y +
>>> s->regs.dst_height) *
>>> + dst_stride * sizeof(uint32_t) >= end) {
>>> qemu_log_mask(LOG_UNIMP, "blt outside vram not
>>> implemented\n");
>>> return;
>>> }
>>> @@ -140,8 +140,8 @@ void ati_2d_blt(ATIVGAState *s)
>>> filler);
>>> end = s->vga.vram_ptr + s->vga.vram_size;
>>> if (dst_bits >= end ||
>>> - dst_bits + (s->regs.dst_y + s->regs.dst_height) * dst_stride
>>> +
>>> - s->regs.dst_x >= end) {
>>> + dst_bits + s->regs.dst_x + (s->regs.dst_y +
>>> s->regs.dst_height) *
>>> + dst_stride * sizeof(uint32_t) >= end) {
>>> qemu_log_mask(LOG_UNIMP, "blt outside vram not
>>> implemented\n");
>>> return;
>>> }
>>>
>>
>>
>
>
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [Qemu-devel] [PATCH] ati-vga: Fix check for blt outside vram
2019-04-09 10:56 [Qemu-devel] [PATCH] ati-vga: Fix check for blt outside vram BALATON Zoltan
2019-04-09 13:03 ` Philippe Mathieu-Daudé
@ 2019-05-07 7:55 ` Gerd Hoffmann
1 sibling, 0 replies; 8+ messages in thread
From: Gerd Hoffmann @ 2019-05-07 7:55 UTC (permalink / raw)
To: BALATON Zoltan; +Cc: qemu-devel, Andrew Randrianasulu
On Tue, Apr 09, 2019 at 12:56:18PM +0200, BALATON Zoltan wrote:
> Fix the check preventing calling pixman functions that would access
> memory outside allocated vram. The r128 X driver sometimes seem to try
> blits that span outside vram, this check prevents crashing QEMU in
> that case. (The r128 X driver may have problems even on real hardware
> so I'm not sure if it's a client bug or emulation problem but at least
> QEMU should survive.)
Added to vga queue.
thanks,
Gerd
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2019-05-07 7:57 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-04-09 10:56 [Qemu-devel] [PATCH] ati-vga: Fix check for blt outside vram BALATON Zoltan
2019-04-09 13:03 ` Philippe Mathieu-Daudé
2019-04-09 13:03 ` Philippe Mathieu-Daudé
2019-04-14 20:30 ` BALATON Zoltan
2019-04-14 20:30 ` BALATON Zoltan
2019-04-25 22:51 ` BALATON Zoltan
2019-04-25 22:51 ` BALATON Zoltan
2019-05-07 7:55 ` Gerd Hoffmann
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.