{"id":805981,"url":"http://patchwork.ozlabs.org/api/patches/805981/?format=json","web_url":"http://patchwork.ozlabs.org/project/netdev/patch/20170825171043.84011-1-willemdebruijn.kernel@gmail.com/","project":{"id":7,"url":"http://patchwork.ozlabs.org/api/projects/7/?format=json","name":"Linux network development","link_name":"netdev","list_id":"netdev.vger.kernel.org","list_email":"netdev@vger.kernel.org","web_url":null,"scm_url":null,"webscm_url":null,"list_archive_url":"","list_archive_url_format":"","commit_url_format":""},"msgid":"<20170825171043.84011-1-willemdebruijn.kernel@gmail.com>","list_archive_url":null,"date":"2017-08-25T17:10:43","name":"[net-next] xen-netback: update ubuf_info initialization to anonymous union","commit_ref":null,"pull_url":null,"state":"accepted","archived":true,"hash":"dd842f58aae2bca7317b107e33c7d04876ab90f5","submitter":{"id":67615,"url":"http://patchwork.ozlabs.org/api/people/67615/?format=json","name":"Willem de Bruijn","email":"willemdebruijn.kernel@gmail.com"},"delegate":{"id":34,"url":"http://patchwork.ozlabs.org/api/users/34/?format=json","username":"davem","first_name":"David","last_name":"Miller","email":"davem@davemloft.net"},"mbox":"http://patchwork.ozlabs.org/project/netdev/patch/20170825171043.84011-1-willemdebruijn.kernel@gmail.com/mbox/","series":[],"comments":"http://patchwork.ozlabs.org/api/patches/805981/comments/","check":"pending","checks":"http://patchwork.ozlabs.org/api/patches/805981/checks/","tags":{},"related":[],"headers":{"Return-Path":"<netdev-owner@vger.kernel.org>","X-Original-To":"patchwork-incoming@ozlabs.org","Delivered-To":"patchwork-incoming@ozlabs.org","Authentication-Results":["ozlabs.org;\n\tspf=none (mailfrom) smtp.mailfrom=vger.kernel.org\n\t(client-ip=209.132.180.67; helo=vger.kernel.org;\n\tenvelope-from=netdev-owner@vger.kernel.org;\n\treceiver=<UNKNOWN>)","ozlabs.org; dkim=pass (2048-bit key;\n\tunprotected) header.d=gmail.com header.i=@gmail.com\n\theader.b=\"XH223W4E\"; dkim-atps=neutral"],"Received":["from vger.kernel.org (vger.kernel.org [209.132.180.67])\n\tby ozlabs.org (Postfix) with ESMTP id 3xf73H4lt7z9sPm\n\tfor <patchwork-incoming@ozlabs.org>;\n\tSat, 26 Aug 2017 03:10:51 +1000 (AEST)","(majordomo@vger.kernel.org) by vger.kernel.org via listexpand\n\tid S1755747AbdHYRKt (ORCPT <rfc822;patchwork-incoming@ozlabs.org>);\n\tFri, 25 Aug 2017 13:10:49 -0400","from mail-qt0-f193.google.com ([209.85.216.193]:37490 \"EHLO\n\tmail-qt0-f193.google.com\" rhost-flags-OK-OK-OK-OK) by vger.kernel.org\n\twith ESMTP id S1755669AbdHYRKr (ORCPT\n\t<rfc822;netdev@vger.kernel.org>); Fri, 25 Aug 2017 13:10:47 -0400","by mail-qt0-f193.google.com with SMTP id g13so343233qta.4\n\tfor <netdev@vger.kernel.org>; Fri, 25 Aug 2017 10:10:47 -0700 (PDT)","from willemb1.nyc.corp.google.com ([100.101.212.81])\n\tby smtp.gmail.com with ESMTPSA id\n\tt21sm4473140qte.32.2017.08.25.10.10.45\n\t(version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128);\n\tFri, 25 Aug 2017 10:10:45 -0700 (PDT)"],"DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=gmail.com; s=20161025;\n\th=from:to:cc:subject:date:message-id;\n\tbh=DS8ahtFG7ZnqjBpwEhLjZBTw6LhaYM3KlXnhFLiW5RI=;\n\tb=XH223W4E2+DXXR6k9bFUaazu45wUOu2FjvqAR+IuI0jUDf8a7NDQhDrZBGrQr36KRu\n\thnQ8WGfeb82mMmzxNid7wkebFScJHC9EQondpRgrvoN/8VWjtDMHkicBkilCV00KQvp7\n\tsu2bAg5AVpLfj69TC/87hp2ESqWnt6OPP0I1VgJyT6/Hgqu/zNhCZB/lNQdenPKYqf2f\n\tb9p/1RKFgVfVA7iNuokRUGWP33hlJ/nOmPJn1feKn58Hg7JHzJ0FbPW5jZHQszTLx5ln\n\t0LI5doP1kk/hb8frkpd2vzin0X6WDwdwmWGmvmXZxY9Vjjav4LZxd5VkSuutwJwU1tgR\n\tZvtg==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20161025;\n\th=x-gm-message-state:from:to:cc:subject:date:message-id;\n\tbh=DS8ahtFG7ZnqjBpwEhLjZBTw6LhaYM3KlXnhFLiW5RI=;\n\tb=ZyOks1Sc6+0hAAD3PNRY2unUPeiMivkhiJfi1iyr8R7ZNEmoesi8fuJR89oRdatPfS\n\t903SUgV+X0nzeyJ1504kPNL4h0kSuDdHfkv/eTGaOMv0Hcc3Czs4sYAluQ4yoAbvn9Me\n\tYuHHbqVLRtT1Q6wZ9LaG1UZ3SFbPEkyBrNQ+No4cvduAXqRRpckyyuqPRp1YhiqoZ1tH\n\t36ldt+DtHnhMzqmH+ssscfNyZDWnmK5GiIu2iGPXQmuy5EoBI0Ykwj3NO1WJK1xS5ekJ\n\td8kHztsg2l+6b8jJ4XE7fCddSYS0q0VVEHWeQS08bYty/I7616nqVK/iRHn0aZDQkfdx\n\tsAwA==","X-Gm-Message-State":"AHYfb5hpIaKjGLTWNKO1aHOyyKp8G5ywVfNesGl4Y6uI0oFAg6EhsifR\n\t+5FALIm8o4/GogkW110=","X-Received":"by 10.237.39.130 with SMTP id a2mr5406841qtd.114.1503681046659; \n\tFri, 25 Aug 2017 10:10:46 -0700 (PDT)","From":"Willem de Bruijn <willemdebruijn.kernel@gmail.com>","To":"netdev@vger.kernel.org","Cc":"davem@davemloft.net, wei.liu2@citrix.com, paul.durrant@citrix.com,\n\tkbuild-all@01.org, Willem de Bruijn <willemb@google.com>","Subject":"[PATCH net-next] xen-netback: update ubuf_info initialization to\n\tanonymous union","Date":"Fri, 25 Aug 2017 13:10:43 -0400","Message-Id":"<20170825171043.84011-1-willemdebruijn.kernel@gmail.com>","X-Mailer":"git-send-email 2.14.1.342.g6490525c54-goog","Sender":"netdev-owner@vger.kernel.org","Precedence":"bulk","List-ID":"<netdev.vger.kernel.org>","X-Mailing-List":"netdev@vger.kernel.org"},"content":"From: Willem de Bruijn <willemb@google.com>\n\nThe xen driver initializes struct ubuf_info fields using designated\ninitializers. I recently moved these fields inside a nested anonymous\nstruct inside an anonymous union. I had missed this use case.\n\nThis breaks compilation of xen-netback with older compilers.\nFrom kbuild bot with gcc-4.4.7:\n\n   drivers/net//xen-netback/interface.c: In function\n   'xenvif_init_queue':\n   >> drivers/net//xen-netback/interface.c:554: error: unknown field 'ctx' specified in initializer\n   >> drivers/net//xen-netback/interface.c:554: warning: missing braces around initializer\n      drivers/net//xen-netback/interface.c:554: warning: (near initialization for '(anonymous).<anonymous>')\n   >> drivers/net//xen-netback/interface.c:554: warning: initialization makes integer from pointer without a cast\n   >> drivers/net//xen-netback/interface.c:555: error: unknown field 'desc' specified in initializer\n\nAdd double braces around the designated initializers to match their\nnested position in the struct. After this, compilation succeeds again.\n\nFixes: 4ab6c99d99bb (\"sock: MSG_ZEROCOPY notification coalescing\")\nReported-by: kbuild bot <lpk@intel.com>\nSigned-off-by: Willem de Bruijn <willemb@google.com>\n---\n drivers/net/xen-netback/interface.c | 4 ++--\n 1 file changed, 2 insertions(+), 2 deletions(-)","diff":"diff --git a/drivers/net/xen-netback/interface.c b/drivers/net/xen-netback/interface.c\nindex e322a862ddfe..ee8ed9da00ad 100644\n--- a/drivers/net/xen-netback/interface.c\n+++ b/drivers/net/xen-netback/interface.c\n@@ -551,8 +551,8 @@ int xenvif_init_queue(struct xenvif_queue *queue)\n \tfor (i = 0; i < MAX_PENDING_REQS; i++) {\n \t\tqueue->pending_tx_info[i].callback_struct = (struct ubuf_info)\n \t\t\t{ .callback = xenvif_zerocopy_callback,\n-\t\t\t  .ctx = NULL,\n-\t\t\t  .desc = i };\n+\t\t\t  { { .ctx = NULL,\n+\t\t\t      .desc = i } } };\n \t\tqueue->grant_tx_handle[i] = NETBACK_INVALID_HANDLE;\n \t}\n \n","prefixes":["net-next"]}