[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH] memory: Rename queue to mrqueue (memory region
From: |
Kamil Rytarowski |
Subject: |
Re: [Qemu-devel] [PATCH] memory: Rename queue to mrqueue (memory region queue) |
Date: |
Tue, 5 Sep 2017 02:00:04 +0200 |
User-agent: |
Mozilla/5.0 (X11; NetBSD amd64; rv:52.0) Gecko/20100101 Thunderbird/52.1.0 |
+CC jperkin
On 05.09.2017 01:57, Kamil Rytarowski wrote:
> On 04.09.2017 02:39, Philippe Mathieu-Daudé wrote:
>> Hi Kamil,
>>
>> On 09/03/2017 01:33 PM, Kamil Rytarowski wrote:
>>> SunOS declares struct queue in <netinet/in.h>.
>>
>> I didn't check what is this define for, but I'd rather add in
>> include/sysemu/os-posix.h:
>>
>> #ifdef queue
>> #undef queue
>> #endif
>>
>> If no QEMU code rely on this netinet queue.
>>
>
> It's not a define, but a struct.
>
> I have made a mistake. The struct queue is located in <sys/stream.h>,
> which is included from <netinet/in.h>.
>
> sys/stream.h:typedef struct queue {
>
>>>
>>> This fixes build on SmartOS (Joyent).
>>>
>>> Patch cherry-picked from pkgsrc by jperkin (Joyent).
>>>
>>> Signed-off-by: Kamil Rytarowski <address@hidden>
>>> ---
>>> memory.c | 22 +++++++++++-----------
>>> 1 file changed, 11 insertions(+), 11 deletions(-)
>>>
>>> diff --git a/memory.c b/memory.c
>>> index c0adc35410..b9920a6540 100644
>>> --- a/memory.c
>>> +++ b/memory.c
>>> @@ -2701,10 +2701,10 @@ typedef struct MemoryRegionList MemoryRegionList;
>>> struct MemoryRegionList {
>>> const MemoryRegion *mr;
>>> - QTAILQ_ENTRY(MemoryRegionList) queue;
>>> + QTAILQ_ENTRY(MemoryRegionList) mrqueue;
>>> };
>>> -typedef QTAILQ_HEAD(queue, MemoryRegionList) MemoryRegionListHead;
>>> +typedef QTAILQ_HEAD(mrqueue, MemoryRegionList) MemoryRegionListHead;
>>> #define MR_SIZE(size) (int128_nz(size) ? (hwaddr)int128_get64( \
>>> int128_sub((size), int128_one())) : 0)
>>> @@ -2746,7 +2746,7 @@ static void mtree_print_mr(fprintf_function
>>> mon_printf, void *f,
>>> bool found = false;
>>> /* check if the alias is already in the queue */
>>> - QTAILQ_FOREACH(ml, alias_print_queue, queue) {
>>> + QTAILQ_FOREACH(ml, alias_print_queue, mrqueue) {
>>> if (ml->mr == mr->alias) {
>>> found = true;
>>> }
>>> @@ -2755,7 +2755,7 @@ static void mtree_print_mr(fprintf_function
>>> mon_printf, void *f,
>>> if (!found) {
>>> ml = g_new(MemoryRegionList, 1);
>>> ml->mr = mr->alias;
>>> - QTAILQ_INSERT_TAIL(alias_print_queue, ml, queue);
>>> + QTAILQ_INSERT_TAIL(alias_print_queue, ml, mrqueue);
>>> }
>>> mon_printf(f, TARGET_FMT_plx "-" TARGET_FMT_plx
>>> " (prio %d, %s): alias %s @%s " TARGET_FMT_plx
>>> @@ -2783,26 +2783,26 @@ static void mtree_print_mr(fprintf_function
>>> mon_printf, void *f,
>>> QTAILQ_FOREACH(submr, &mr->subregions, subregions_link) {
>>> new_ml = g_new(MemoryRegionList, 1);
>>> new_ml->mr = submr;
>>> - QTAILQ_FOREACH(ml, &submr_print_queue, queue) {
>>> + QTAILQ_FOREACH(ml, &submr_print_queue, mrqueue) {
>>> if (new_ml->mr->addr < ml->mr->addr ||
>>> (new_ml->mr->addr == ml->mr->addr &&
>>> new_ml->mr->priority > ml->mr->priority)) {
>>> - QTAILQ_INSERT_BEFORE(ml, new_ml, queue);
>>> + QTAILQ_INSERT_BEFORE(ml, new_ml, mrqueue);
>>> new_ml = NULL;
>>> break;
>>> }
>>> }
>>> if (new_ml) {
>>> - QTAILQ_INSERT_TAIL(&submr_print_queue, new_ml, queue);
>>> + QTAILQ_INSERT_TAIL(&submr_print_queue, new_ml, mrqueue);
>>> }
>>> }
>>> - QTAILQ_FOREACH(ml, &submr_print_queue, queue) {
>>> + QTAILQ_FOREACH(ml, &submr_print_queue, mrqueue) {
>>> mtree_print_mr(mon_printf, f, ml->mr, level + 1, cur_start,
>>> alias_print_queue);
>>> }
>>> - QTAILQ_FOREACH_SAFE(ml, &submr_print_queue, queue, next_ml) {
>>> + QTAILQ_FOREACH_SAFE(ml, &submr_print_queue, mrqueue, next_ml) {
>>> g_free(ml);
>>> }
>>> }
>>> @@ -2872,13 +2872,13 @@ void mtree_info(fprintf_function mon_printf,
>>> void *f, bool flatview)
>>> }
>>> /* print aliased regions */
>>> - QTAILQ_FOREACH(ml, &ml_head, queue) {
>>> + QTAILQ_FOREACH(ml, &ml_head, mrqueue) {
>>> mon_printf(f, "memory-region: %s\n",
>>> memory_region_name(ml->mr));
>>> mtree_print_mr(mon_printf, f, ml->mr, 1, 0, &ml_head);
>>> mon_printf(f, "\n");
>>> }
>>> - QTAILQ_FOREACH_SAFE(ml, &ml_head, queue, ml2) {
>>> + QTAILQ_FOREACH_SAFE(ml, &ml_head, mrqueue, ml2) {
>>> g_free(ml);
>>> }
>>> }
>>>
>
>
signature.asc
Description: OpenPGP digital signature