From nobody Mon Apr 29 08:06:10 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zoho.com; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1489509421832897.4926254979167; Tue, 14 Mar 2017 09:37:01 -0700 (PDT) Received: from localhost ([::1]:60658 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cnpRR-00024U-Ae for importer@patchew.org; Tue, 14 Mar 2017 12:36:57 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:38270) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cnpEx-0008Qy-Rn for qemu-devel@nongnu.org; Tue, 14 Mar 2017 12:24:08 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cnpEs-0002EF-P8 for qemu-devel@nongnu.org; Tue, 14 Mar 2017 12:24:03 -0400 Received: from mail-db5eur01on0129.outbound.protection.outlook.com ([104.47.2.129]:53500 helo=EUR01-DB5-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1cnpEs-0002Cx-Bn for qemu-devel@nongnu.org; Tue, 14 Mar 2017 12:23:58 -0400 Received: from AMXPR07CA0031.eurprd07.prod.outlook.com (10.242.64.31) by AM4PR0701MB2227.eurprd07.prod.outlook.com (10.168.37.142) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.947.2; Tue, 14 Mar 2017 12:51:48 +0000 Received: from AM5EUR03FT025.eop-EUR03.prod.protection.outlook.com (2a01:111:f400:7e08::204) by AMXPR07CA0031.outlook.office365.com (2a01:111:e400:1000::31) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.977.5 via Frontend Transport; Tue, 14 Mar 2017 12:51:47 +0000 Received: from hybrid2.ext.net.nokia.com (131.228.2.35) by AM5EUR03FT025.mail.protection.outlook.com (10.152.16.157) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.961.10 via Frontend Transport; Tue, 14 Mar 2017 12:51:47 +0000 Received: from fihe3nok1347.nsn-intra.net (10.158.36.135) by fihe3nok1346.nsn-intra.net (10.158.36.134) with Microsoft SMTP Server (TLS) id 15.1.466.34; Tue, 14 Mar 2017 14:51:45 +0200 Received: from mailrelay.int.nokia.com (10.130.128.30) by fihe3nok1347.nsn-intra.net (10.158.36.135) with Microsoft SMTP Server (TLS) id 15.1.466.34 via Frontend Transport; Tue, 14 Mar 2017 14:51:45 +0200 Received: from fihe3nok0735.emea.nsn-net.net (localhost [127.0.0.1]) by fihe3nok0735.emea.nsn-net.net (8.14.9/8.14.5) with ESMTP id v2ECp51K013356 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 14 Mar 2017 14:51:05 +0200 Received: from 4FIL37951.emea.nsn-net.net (eskara3c-dhcp036133.emea.nsn-net.net [10.144.36.133]) by fihe3nok0735.emea.nsn-net.net (8.14.9/8.14.5) with ESMTP id v2ECp5hp013350; Tue, 14 Mar 2017 14:51:05 +0200 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nokia.onmicrosoft.com; s=selector1-nokia-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=MfuLRbHcLY6MmGhvFA7wlPnlRk5vc/dvPR9oSDkq+Rw=; b=RIkGnCjd/DrL0VUxpawau0UCsU5Wi3e4TqZXQ/GuF/TvR6Fm4UJlm6LWlbibm3vuode9S7jm1UtPiFG+BOoH7ryQHOimAUtlOXwEWfLXupPNZ8BqkWXMKvc75j4lctHkQtAffwnKImBStKOi6Sb+OgRjAvQeYpVPbL5uMnvo7wc= Authentication-Results: spf=pass (sender IP is 131.228.2.35) smtp.mailfrom=nokia.com; nongnu.org; dkim=none (message not signed) header.d=none; nongnu.org; dmarc=pass action=none header.from=nokia.com; Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: Pass (protection.outlook.com: domain of nokia.com designates 131.228.2.35 as permitted sender) receiver=protection.outlook.com; client-ip=131.228.2.35; helo=hybrid2.ext.net.nokia.com; X-HPESVCS-Source-Ip: 10.144.36.133 From: Janne Huttunen To: Date: Tue, 14 Mar 2017 14:50:08 +0200 Message-ID: <3cb0b0330026e3b531f8eee8f2aa492f59ff75d2.1489494746.git.janne.huttunen@nokia.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: References: MIME-Version: 1.0 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-HT: Tenant X-Forefront-Antispam-Report: CIP:131.228.2.35; IPV:NLI; CTRY:FI; EFV:NLI; SFV:NSPM; SFS:(10019020)(6009001)(39850400002)(39840400002)(39410400002)(39860400002)(39450400003)(2980300002)(438002)(199003)(189002)(9170700003)(33646002)(8936002)(106466001)(50226002)(81166006)(8676002)(86362001)(47776003)(118296001)(2351001)(53936002)(77096006)(6916009)(38730400002)(107886003)(22756006)(110136004)(2950100002)(5660300001)(4326008)(36756003)(48376002)(189998001)(356003)(2906002)(305945005)(76176999)(50986999); DIR:OUT; SFP:1102; SCL:1; SRVR:AM4PR0701MB2227; H:hybrid2.ext.net.nokia.com; FPR:; SPF:Pass; MLV:sfv; A:1; MX:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; AM5EUR03FT025; 1:Z5uYBkex0enOMw5UxbwQfd9Q38kDxiYIxBBveGgjDd2ueNCj4HF1CZHXjE1pgy7z9euT0+/eJcjrklgydGqF2e3xjn2tSW60kRqU5dUN8UcgBaFJJG954b83ziNG+mifmYxFpd2CfG43PuLuVsXX9Ra6IWNpDjBft9iowokrkLScQf/jBFSaVATqAJO1Xl88Y85+I6m2lc9Qq2DSLD3qSKfW8e7UyxV1tsrOx8HOMDfzPfJsw27DTFkeGar/PW5tVu8ztR9PEspuJQ5hct7WAeJ/5wy/svgG4MlKYlV1dmcFUXra3JAY7pJ/7rEb7LTy7HQtoKpXYAV86mgpccZviA7JCo1K7Cums3WFEiOBNzNQQ3tN2FnwIa6tOy7YEfa6mRMqjxICyRRT1qfhfcvTUdNT2+gB2fcTKXkn4uvaEl2j6BDn62HSGXTNIRnqPLqwSVDmna/+Era+Z1AEgOTSai/y5zwEnLqSL/K379zktTA= X-MS-Office365-Filtering-Correlation-Id: 8cec0e09-873d-41e6-39db-08d46ad8e03a X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001)(8251501002); SRVR:AM4PR0701MB2227; X-Microsoft-Exchange-Diagnostics: 1; AM4PR0701MB2227; 3:PxOOzekwceI7q8w0hdcCMOEsDDbHoMxwWeN9NgBr4M5T+Vc3/eZf13E2q9KK4iIhh7h9O2BHYZo3w00OjpezOUE6jP8+eygVnrhKbt+OGFu83GO/ODqE3tQQs3vVjNbNy6cvsSN2q4oXP4aN5Orov1v/bqKmj7EEn+/N2eoL3kP7P/ab2KSmQyIUm7XVNrgRAlJrvf1f8At65Rd5V0W9TjBrmNz2jZ6xFyzQpH64RJKPmJIdxc8TZm2iu+4vmx5TCUg4psFJXaX/kM+K2VHjny5jcG9HMKsXe6Y1D1gXCAeY064e4h5nVGZdS2jRccSsicyDeZouaapYwAbqSLHQPvXiAFzu7ooAzrGZpgz712BiANiZSZU9mcgEPk199rhC8wKXNjrmJRRcwwiMCuv+pw==; 25:JY8a22IWnBcx9Pumg4C1onPlGUQ9LIhqQ2qQCNMwpvuaokQCFMT7rX0chSD39ZfudyAw5FwaapwBX+D22dAzMmdZriNS9joFJpfmtS3QpBT9kXcpnPQ7w9K05Tni29SZkbQ63QPf9RdswCLd6eZhLQfA8AvJNeiOgANy0V6c3N/QCtTDICKwYolQtn1r1b4Ne9ZuFq30ldONpjS3Y8gv/bcwL5VYhJB9vWXsvZpkLxt781hte+jT3nJUqjv2+N5iZaR8gDiHEzeTQeDHXDUzyFqQaxRidSCAVPBSUob3JDIPnXEt7pNkYBZjhqmD+wXe2I72tOOqG0yhRROV2rqz5aZa6gClw6cgGr6KsLR3byESjCCDTZdyKFXAIDMS+tZr7ctf+lWNzNeoBAduoxrmQ218H3m8EpOP1XnbSHWnj6IFH4tDvi50BG2hH5SF2hwlo4WMa0lniU7GZKycwlllKQ== X-Microsoft-Exchange-Diagnostics: 1; AM4PR0701MB2227; 31:a56p/KLbNuJN4MAp8Ogtm/rBmtd4TaUF01JbPPagH63Iov143djH4bEjMQw2+i0L4n8RjgXeO7mfz1fNVemEd8YBkULH2Ejwuy/aZJcqH6lenEfMCbnoK9OOSU1dbDnPuafqyrjzcF5fA0qlim9fkR45hC+1IwqHi0JKY5oVun1htvaAsbUQyhi4kAeKvYnIQ1VNGUccnh3OlsMd8I8Gn7QhPiPKDdUlfionlU8O7RsMYNBJPcz07TYi4067ZnJRkR+ONphfAIaqxXypHunjUw==; 20:ul2L2mwfn5+UVjIu2omiUBzFV4gSDki3fRiMK9y57B3dAH5gGInsVl9ZlWu+2QY21lqFd3cDnDTkt1KeDdqZW5wSmfOLbeNYlhVjiN8pE2CRl1TpMSdT9VUHjrxWXyWjeUGJQ8QkoDqWztNSFYQRvkryTEeOO8B9iAnOys8ucyztVCHHi/cOBCfI9CBDAdw3+WTky9Hug+vNcejN8DloqPok4YY6SmTbAEcB7AmXlIJTovSjUUskcmLseyMrQQRYpHjLHpBOaByTfcisLOlgPVMreAqMYzCPqwb2tu8yqkL27N+/GRkaVSl77fa2Fp7zoqkg5MZCHKiviUvauT7qMblOMS/wNGTKtBsSp8/xOVAwN0CurG2pEHyPITl9srIxpy83bYdkuFDol1OFw3LCayEnBS0+cpxkXUFu783uhDhNZWBlIV19fHdRzyHY6aaEZrv0nxZ9Kw6q4ENFYO++7cgDnDiC8pG140AIFWUAoOTYqS1qFRpkaYzhBYvV0CXizne7aI3k/38bT552xVonZE+eojhVDBNSogswSwB4U4lJAr9XRAJiZhv7RCAfnb/e1ZZ+9jCQWpptvLAR1gi0yqUOiQ/NfOeUTnN9h63dMaM= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(82608151540597); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040375)(601004)(2401047)(8121501046)(13018025)(5005006)(13016025)(10201501046)(3002001)(6055026)(6041248)(20161123562025)(20161123555025)(20161123560025)(20161123558025)(20161123564025)(6072148); SRVR:AM4PR0701MB2227; BCL:0; PCL:0; RULEID:; SRVR:AM4PR0701MB2227; X-Microsoft-Exchange-Diagnostics: 1; AM4PR0701MB2227; 4:7ub8uotR3ESfe17Ldzn61eJaDqEsJDSqt7UWHZlYGBdg3sSHKEqCuLH0FTtgXTv2Q2/sL1Fb7J7B/FwPQrtGhxDOUsTYqc7jjJ4mkD7jioBGbcnSFTwRxPX6zzsuaCfUqcdxYVWpXqs53xipUB46Ngcfx80An8w7blWT0fpxsxAD0rhFAiwRSTjmlqBMS8sGzZ62VATtKEuKTHDBE3ewA4ErIwPJmFBwW8igeZB8kEY5R3xjhCk36RfcLzPyjLbImC7ZN+qy0dM1u1jiPr0CYkbRmqHnPSFLiH+3zc9ANXhAaP3UhHFowj550Ep4QZBiuuEXp/xPGsMkFZYpbylfRXDeQUQO2yCU623BctBjXtNJ6651FSB+h3V1sx+kniSKhA7i1VD2Fo06rokslGRSwK7Sa4GArs3Sr3eX6yjM8CdPWJXcKeAi2ET4GSpZo1JYub/fCsb4v9DSyHB2WGaQvfeSuW0eCWC/pv+V56sKPfvsw6cXxO/Rm3tiozTAPsh4JXSZXMneDyyCuIrluXANutIu4PYtw++FJws+9CTQ0gXaTthS5gjfsBduBj1fjxOWcvLffF8w2dLlNfCklL//uiyFE2KRc4pzCHgskd0tbralX3uah6Dv0uAJWH9oPcTkMh7zV9d0OWNuAbtCqjQH2emCI04YOxTxTse7DzrKCa0e5i0SMbRQdsnkX8c3+aQ2YrPNGYquGyGg4LHODyAxHA== X-Forefront-PRVS: 02462830BE X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; AM4PR0701MB2227; 23:mMRrm5bsbvLtWduApFv2jI621xp3uvpe0a7WAQ2?= =?us-ascii?Q?RtPJHBDlpCBow0lp6lbnpGx3QIj7yDo4RNNSnwGK7E1o/i54lYKBLnQP1w/x?= =?us-ascii?Q?D//JbRIQZkTeEXTfBitDGmJZb2Pizh3wHMG8CWUDExDbh8odyToqsW+TCW4m?= =?us-ascii?Q?8qSApWRSffvZbCvDDSdjJ3B15Fadxwuj/xM5JcN1dIQab1l59DTNbcRrv2q4?= =?us-ascii?Q?f9l2gbCY3szcZv77eSmfXnOPDCVit1AzoxgPe86DEBqwUwDH6Dgv5s2y4Dr3?= =?us-ascii?Q?mZdKJOP873ANwyCj9dlcLJk58MCemThhaTftx2WbLseudDxlQLI8jfEl0qZQ?= =?us-ascii?Q?+E7O9x77R7WJt/Ygfhr78y+/Nh37w7S4tj9zbg9Qi7CG6x/LViFU0XQZ5zmG?= =?us-ascii?Q?ArxMNk7Wp2OJ0NqHqP3zI/xqUKFyf+heaw7k4greUydELnWa3Qzr9wgcTiNp?= =?us-ascii?Q?X0kFHQ2prE7bN43fxSviX9EcpGTFajMEPxd1DC18WZULLMULpjLiiXlM5e89?= =?us-ascii?Q?ieYshHMGQ2taLU7f34zumoQR0Lodi42TjgVrduYlnVrDCqj5NQhKAOlUxZHf?= =?us-ascii?Q?JqVja8yWgYbdWMXpuJaDIbxqWc4lqmhqG7eGbSEgF0RoYoFXsGWbEmZBcHPA?= =?us-ascii?Q?+O7z2wu4K5Y6UpqUIxxsZMSAv4VvIDeoPTeQW7CcRRHPCWzwvSQ6CZmj/cbY?= =?us-ascii?Q?MxsZqiufe67hdOwmLTm5fzIUXHx6CnwFm4UO67+0wTw8U0Kq9MXDFzt4PV0V?= =?us-ascii?Q?qPiV2zB3kUTgRIdP1DcG+mnglkiWj4x3TNVxGK6ZxqPKpjyvPsru/TTt1gfG?= =?us-ascii?Q?3MaKRvxMg/LRLx/4jX7r0DFQTFjG4y8ggyaKyTS4r58RjL9a2mYs+Ku0pF23?= =?us-ascii?Q?gDdkpVKXTh5pbb2FHlkdosjMbiXCb06nruLABkKt2/oPoJzXNHw3s8flYWq9?= =?us-ascii?Q?xB0R/2PK7n6hTQ1gcsq67Uq3xipjVI2PwP4o3yyfgB7wEAFBc3ZtjsOMJ+yu?= =?us-ascii?Q?n/xk=3D?= X-Microsoft-Exchange-Diagnostics: 1; AM4PR0701MB2227; 6:Tx3OClcqXjyyKK620jpZdqXSiFVw4zpbWC9KUUtu5vyuFDIlD5PR/+YXOhNuR8Wvl/zhTfDta0ruiRjD8sBJ2zeFvPjkdEYP+rt/llLFmf/zJE4qw5PvLPHKtUXp0tF1lHLYVyaW9oOLsaEZK2jovDnWp+B1fvrkWbU/KSuqic/xi9Lf79inI7xOn9c5ASTuw16pzuBek24EK9P8ypRChjOZK/8cD4Qj1tBh2rfoLiSr1mWZViU49a5r0g45xDUNxhQV3WRv6KIoJ7uIdB5eFTZ3L2IpKvbaexrISMoT6kOKBlY73cxadHIKa9VzySEtO/5vhpg7Xe0wgZciNNCwR+pYJRfkiCj8sXXwBrQpvE7BMNUF3UK3foGxBH/T699MigTNKxEfHLqc7uKBo7uvvAKVgT8R/5JdJHd843xQoCQ=; 5:l8e7iLOebTLgOWxbhrgH3IvwvvzoCgxLbnwfu2OG9ASwyzMZq8go2MoUjCEN9avD5dWSUdiFDt78jfOb3Pg19KawcI3XVlZDN1xxfuZjRAv8nt3uHgwTHiIiyc25ovY/hBYdn8veTpI/vs/0+nsvvA==; 24:LbQmBYdsCTWYS4qPvEshwoymZfGfQt9XppnRwcFl2vMe97aN6310a1Rr/WWU7E197ldlABfGD+6KmRAs6hN2X/us1zG3MzeaLVKb9P7zEGo= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; AM4PR0701MB2227; 7:o7zNkyM6JdJ3Hax0lT5Xa8Y0uEoOl853A+TMcKZh2nO68h0dQlf+bqYZwqU2C92PfZKMCDzpi5OcrD8NOZXF31cPcJWugXPcjUbdPCzr3VVQ/KgBSOqy9nvAzZ4i9dpnJrCfwctfMDADMBHsUz/0Z5imbcOYvZoy56NtWi2TKBZlIDLX41kwRBTd7V1qf8ByA2GS+Y6Ss+3H7VgAxx74zKEt5fgwRIM2YK4K84DqjeKZtWutrvZHqWMJXfGJynDrXHeYx/FT92hBeR9+PM8errBvM8Sy59fITVwtlx8hsHqLRDtQliOkyGUdOod9ISDFwvAjcJFR/ARKpOS90VUU8Q== X-OriginatorOrg: nokia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Mar 2017 12:51:47.2693 (UTC) X-MS-Exchange-CrossTenant-Id: 5d471751-9675-428d-917b-70f44f9630b0 X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=5d471751-9675-428d-917b-70f44f9630b0; Ip=[131.228.2.35]; Helo=[hybrid2.ext.net.nokia.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM4PR0701MB2227 X-detected-operating-system: by eggs.gnu.org: Windows 7 or 8 [fuzzy] X-Received-From: 104.47.2.129 Subject: [Qemu-devel] [RFC][PATCH 1/6] Re-factor bootdevice list handling, pt1. X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: janne.huttunen@nokia.com Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail: RSF_0 Z_629925259 SPT_0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Pass the list as a parameter instead of referencing it directly. This is done so that a second list can be added in a later patch. Signed-off-by: Janne Huttunen --- bootdevice.c | 49 +++++++++++++++++++++++++++++++++++-------------- 1 file changed, 35 insertions(+), 14 deletions(-) diff --git a/bootdevice.c b/bootdevice.c index 33e3029..a29d43b 100644 --- a/bootdevice.c +++ b/bootdevice.c @@ -31,6 +31,7 @@ #include "hw/qdev-core.h" =20 typedef struct FWBootEntry FWBootEntry; +typedef QTAILQ_HEAD(, FWBootEntry) FWBootList; =20 struct FWBootEntry { QTAILQ_ENTRY(FWBootEntry) link; @@ -39,8 +40,7 @@ struct FWBootEntry { char *suffix; }; =20 -static QTAILQ_HEAD(, FWBootEntry) fw_boot_order =3D - QTAILQ_HEAD_INITIALIZER(fw_boot_order); +static FWBootList fw_boot_order =3D QTAILQ_HEAD_INITIALIZER(fw_boot_order); static QEMUBootSetHandler *boot_set_handler; static void *boot_set_opaque; =20 @@ -116,12 +116,13 @@ void restore_boot_order(void *opaque) g_free(normal_boot_order); } =20 -void check_boot_index(int32_t bootindex, Error **errp) +static void do_check_boot_index(FWBootList *bootlist, int32_t bootindex, + Error **errp) { FWBootEntry *i; =20 if (bootindex >=3D 0) { - QTAILQ_FOREACH(i, &fw_boot_order, link) { + QTAILQ_FOREACH(i, bootlist, link) { if (i->bootindex =3D=3D bootindex) { error_setg(errp, "The bootindex %d has already been used", bootindex); @@ -131,7 +132,13 @@ void check_boot_index(int32_t bootindex, Error **errp) } } =20 -void del_boot_device_path(DeviceState *dev, const char *suffix) +void check_boot_index(int32_t bootindex, Error **errp) +{ + do_check_boot_index(&fw_boot_order, bootindex, errp); +} + +static void do_del_boot_device_path(FWBootList *bootlist, DeviceState *dev, + const char *suffix) { FWBootEntry *i; =20 @@ -139,10 +146,10 @@ void del_boot_device_path(DeviceState *dev, const cha= r *suffix) return; } =20 - QTAILQ_FOREACH(i, &fw_boot_order, link) { + QTAILQ_FOREACH(i, bootlist, link) { if ((!suffix || !g_strcmp0(i->suffix, suffix)) && i->dev =3D=3D dev) { - QTAILQ_REMOVE(&fw_boot_order, i, link); + QTAILQ_REMOVE(bootlist, i, link); g_free(i->suffix); g_free(i); =20 @@ -151,26 +158,31 @@ void del_boot_device_path(DeviceState *dev, const cha= r *suffix) } } =20 -void add_boot_device_path(int32_t bootindex, DeviceState *dev, - const char *suffix) +void del_boot_device_path(DeviceState *dev, const char *suffix) +{ + do_del_boot_device_path(&fw_boot_order, dev, suffix); +} + +static void do_add_boot_device_path(FWBootList *bootlist, int32_t bootinde= x, + DeviceState *dev, const char *suffix) { FWBootEntry *node, *i; =20 if (bootindex < 0) { - del_boot_device_path(dev, suffix); + do_del_boot_device_path(bootlist, dev, suffix); return; } =20 assert(dev !=3D NULL || suffix !=3D NULL); =20 - del_boot_device_path(dev, suffix); + do_del_boot_device_path(bootlist, dev, suffix); =20 node =3D g_malloc0(sizeof(FWBootEntry)); node->bootindex =3D bootindex; node->suffix =3D g_strdup(suffix); node->dev =3D dev; =20 - QTAILQ_FOREACH(i, &fw_boot_order, link) { + QTAILQ_FOREACH(i, bootlist, link) { if (i->bootindex =3D=3D bootindex) { error_report("Two devices with same boot index %d", bootindex); exit(1); @@ -180,7 +192,13 @@ void add_boot_device_path(int32_t bootindex, DeviceSta= te *dev, QTAILQ_INSERT_BEFORE(i, node, link); return; } - QTAILQ_INSERT_TAIL(&fw_boot_order, node, link); + QTAILQ_INSERT_TAIL(bootlist, node, link); +} + +void add_boot_device_path(int32_t bootindex, DeviceState *dev, + const char *suffix) +{ + do_add_boot_device_path(&fw_boot_order, bootindex, dev, suffix); } =20 DeviceState *get_boot_device(uint32_t position) @@ -210,11 +228,14 @@ DeviceState *get_boot_device(uint32_t position) */ char *get_boot_devices_list(size_t *size, bool ignore_suffixes) { + FWBootList *bootlist; FWBootEntry *i; size_t total =3D 0; char *list =3D NULL; =20 - QTAILQ_FOREACH(i, &fw_boot_order, link) { + bootlist =3D &fw_boot_order; + + QTAILQ_FOREACH(i, bootlist, link) { char *devpath =3D NULL, *suffix =3D NULL; char *bootpath; char *d; --=20 2.7.4 From nobody Mon Apr 29 08:06:10 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zoho.com; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1489512378130765.1403046004484; Tue, 14 Mar 2017 10:26:18 -0700 (PDT) Received: from localhost ([::1]:60924 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cnqDA-00035e-JE for importer@patchew.org; Tue, 14 Mar 2017 13:26:16 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:58825) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cnqCe-00035V-VN for qemu-devel@nongnu.org; Tue, 14 Mar 2017 13:25:46 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cnqCb-0006OO-1l for qemu-devel@nongnu.org; Tue, 14 Mar 2017 13:25:45 -0400 Received: from mail-he1eur01on0131.outbound.protection.outlook.com ([104.47.0.131]:23108 helo=EUR01-HE1-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1cnqCa-0006MT-DC for qemu-devel@nongnu.org; Tue, 14 Mar 2017 13:25:40 -0400 Received: from HE1PR0701CA0044.eurprd07.prod.outlook.com (10.168.191.12) by VI1PR0701MB2238.eurprd07.prod.outlook.com (10.169.137.141) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.977.5; Tue, 14 Mar 2017 12:51:48 +0000 Received: from DB5EUR03FT062.eop-EUR03.prod.protection.outlook.com (2a01:111:f400:7e0a::203) by HE1PR0701CA0044.outlook.office365.com (2603:10a6:3:9e::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.977.5 via Frontend Transport; Tue, 14 Mar 2017 12:51:47 +0000 Received: from hybrid2.ext.net.nokia.com (131.228.2.36) by DB5EUR03FT062.mail.protection.outlook.com (10.152.20.197) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.961.10 via Frontend Transport; Tue, 14 Mar 2017 12:51:47 +0000 Received: from fihe3nok1347.nsn-intra.net (10.158.36.135) by fihe3nok1347.nsn-intra.net (10.158.36.135) with Microsoft SMTP Server (TLS) id 15.1.466.34; Tue, 14 Mar 2017 14:51:44 +0200 Received: from mailrelay.int.nokia.com (10.130.128.30) by fihe3nok1347.nsn-intra.net (10.158.36.135) with Microsoft SMTP Server (TLS) id 15.1.466.34 via Frontend Transport; Tue, 14 Mar 2017 14:51:44 +0200 Received: from fihe3nok0735.emea.nsn-net.net (localhost [127.0.0.1]) by fihe3nok0735.emea.nsn-net.net (8.14.9/8.14.5) with ESMTP id v2ECp5mT013359 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 14 Mar 2017 14:51:05 +0200 Received: from 4FIL37951.emea.nsn-net.net (eskara3c-dhcp036133.emea.nsn-net.net [10.144.36.133]) by fihe3nok0735.emea.nsn-net.net (8.14.9/8.14.5) with ESMTP id v2ECp5hq013350; Tue, 14 Mar 2017 14:51:05 +0200 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nokia.onmicrosoft.com; s=selector1-nokia-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=bBy0lPN3/9RTKCFltFbJ1RRby6ArfdWSrkGvzUsDgj4=; b=eEQJSUvLDOqdIxyx5JcLFUdWwC2yJHSeAGByapgnEfo/QFgLZzpK3uWIJzbA7owhkQmiHKPYQqiyG7gnRS6fjvjxuELesS2MJ/RKS0fZa6Uw/QlT3NQrhzGAx9mYuaYjRMAuy9bgkyj4UhbAKbIcx5ftrsRxznEQSzpkrl6bLTE= Authentication-Results: spf=pass (sender IP is 131.228.2.36) smtp.mailfrom=nokia.com; nongnu.org; dkim=none (message not signed) header.d=none; nongnu.org; dmarc=pass action=none header.from=nokia.com; Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: Pass (protection.outlook.com: domain of nokia.com designates 131.228.2.36 as permitted sender) receiver=protection.outlook.com; client-ip=131.228.2.36; helo=hybrid2.ext.net.nokia.com; X-HPESVCS-Source-Ip: 10.144.36.133 From: Janne Huttunen To: Date: Tue, 14 Mar 2017 14:50:09 +0200 Message-ID: X-Mailer: git-send-email 2.7.4 In-Reply-To: References: MIME-Version: 1.0 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-HT: Tenant X-Forefront-Antispam-Report: CIP:131.228.2.36; IPV:NLI; CTRY:FI; EFV:NLI; SFV:NSPM; SFS:(10019020)(6009001)(39410400002)(39850400002)(39450400003)(39840400002)(39860400002)(2980300002)(438002)(199003)(189002)(9170700003)(50986999)(4326008)(33646002)(76176999)(81166006)(2351001)(53936002)(8676002)(106466001)(47776003)(305945005)(5660300001)(22756006)(48376002)(2950100002)(356003)(6916009)(77096006)(189998001)(107886003)(38730400002)(110136004)(8936002)(118296001)(86362001)(2906002)(36756003)(50226002); DIR:OUT; SFP:1102; SCL:1; SRVR:VI1PR0701MB2238; H:hybrid2.ext.net.nokia.com; FPR:; SPF:Pass; MLV:sfv; A:1; MX:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; DB5EUR03FT062; 1:xJIV3NXJrUdwCnrfhoyZIK9jpTeSQIot9Pv387lbxPVbynQBcA/TtRF6USZjK1GXJ+YiOVWx10y9j27Y1OOFCH6DiEdHxUUgcCKXP3lYA7MRYX2HMVwbYPWiWvu/iVvHhXmq17TI+N9UBud2UIYihLmq8hKTEFNyY4RYrLBWOn99O0cgb3tnRn1ArkvHNoRlcOKgcwqSc0IgzQQR0RjSwLau33t8y/5mykze51iEUo7+s1K8heGL/hhdatGJ+2TP2mfyvnb5qNBjIVGgqJX1+bG0tg0gfwwzWjztekG5tBCy4yRleQUsJLo/GGSRG+XEzzt8mGSZ3K285C8jFt4eE58BxuP21R7M6BWYrh8KUngZGPql+JFxmenVyKtgqaJL0nIIFzLbaElBZNgzfiq4RDjobfOj/HBkfh3AgVVvLCzUkWfvkFl8gwvPgAxSCY60Gi9EhuaSSumTI20HbpnLaU1apwpwyAnPnfu6/tQ54+Q= X-MS-Office365-Filtering-Correlation-Id: ab1411c1-6aa9-41db-21d4-08d46ad8e086 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001)(8251501002)(2017030254015); SRVR:VI1PR0701MB2238; X-Microsoft-Exchange-Diagnostics: 1; VI1PR0701MB2238; 3:aMZ3+Sr8f/DrRAlbrYmdSQED05W1DXP0GRyexXcTo51RWPRlFC2wpS4GW2/AxPb/yC8wrLIVd8Q16Ox/BQ84VH6FlXKAIuAgvK39CFnOJsPr42wlKEY4JpxcxwaFNeBmGytRRcHinZ7ekOMuieFZd+uB/ZdUGrV4m6YzM8F5y8xg7IngW3/17jwj9kBTIhX1XC9JIZ7ycKjuqH5XKUyBe6S2UVD0y5PE3Cws8p59SvQ+sePCUXJvu9Cdwi5d/lHn8misB5aW/fgQxm6EycgrsO4OKYqUDQN6Q2OeNLrgKP1ptiu5cYl9UZf4P3kHl95PtDw6VMPfOxI9MSX9KqJNCWnZ2mktwdBwRzwofALAoIp8qeE2qJrlDP1xPgDsmW/b/PF+6q7Gku0nPcy733yeFJ1h314LBQppZiveUJyKQtQ=; 25:SOgU8kVB3w1OmvChoR34D/TouglLAYtGIo/ZHhqkBXKirfcpBM5/8j09Pchr/WtswsJX83psTGaVmO6KXkBwU47hac7IA4ZHTqpTkCsGG4M77HSJrVze9zC6AzTS2YrrBhu6cYfGCdvsVqevvHfHohHEetvdDJ8fvjif/J8UJHwapDNNMm39z4JWQxkQdwtSlKVtf0TvKJPRUGch+TOnxfmapV8oFHy6QjQfZPaQ197RjEq3FQiaCOKsrOsq2l0a5HBKHvyI1Eomeu2+V+6pKXpUTqc7nSrHtsK47M6G8reHLk4M/RvCfNWCFN7FokIcJ8LrI9w6XDsioKzDrHr0H8Awqs4urBls1fOL/KZyVcpHkgEPA7kp7lN3BJWMpCoM3KPT8sMyTi7ZLawVeCim3JWnze32AwJDN40SRhZqEjgkW49nLWsdC1w+YMslYNRFBDAhIVmyu9dTclumf9OEmg== X-Microsoft-Exchange-Diagnostics: 1; VI1PR0701MB2238; 31:55uXlreOBbct1yqtyVfhRrltpnXgq5acD65S5JhSrcAcvn5P9g5CmbbC1u3cVpvpxdzJD9XK5ttwP0K/jaL/QPzTadrnJWjBmNuDX/+WKA7Zmb1vMXvNHmFtHBw7XRhN4F3G461V/Bre57nDE8x19LvTmJjuF8YZBE/qa0ieud0bimDqcVVBjTcgm6U/UgESCiAWLPeUgwwjguWYh5FmTXQwu2vTCQf7MCdD3+42UcRW+Jhssmk0bM6ZWiN3sscZgZ3Qk3SdG5/s/H/uQXzpEw==; 20:AmN7CejG1L7nC2GMqmZSOd8hHDP04ZhlJ6+Drig20euhTp1j400yY8IGrX1wRhD6ugoY9wVQVZeg3qmEmE/FjsQKRvWv5WTyeqLdFrXmhMVLxOMpGDMNWtnU4j07CH7six0Iu2mFkYX2PAY5554/GpUWbqi8PrBgNWsUp8QhARDGChmsItqQj+55O2AcEASdzpq7/XOLNxl5uH9N/rTp3j5T8bTZYiv5eEdXJiSZTIjINdj7KyYAJCfXFRk7VhhLRpz9PVn2pvUpKNiHydz22cu85x6Y0lberHNcwV/6nJPJ5403AKYM9OheMExJk9zoIBCxeCuS8b/6fGE050T3svJDwhKCaQKuJCfZ/gRNITE2kKx3D0lyC8I8LoiptRcr+wXX7ydBhKM3Qpaomhc4Lj4qLfoRVqeE3ToJu2N44ktuCnGL4XWrUdW89Xo7VgpA6WeFnQP6CIYSZCG0IUaLsIp0MYZfXW19/hOnSpujnxGmvBrY4PHe97NnhvG7/yZvmFP70avDTHM42VntWQsTL8L6Sv+AJ6+yzugHcWlkRBcxC8fObmVCFYGIkuGiiYvnrnjAuKygMFdJAxZoW7onxUp++JsahJorCit+xA6GFzI= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(82608151540597); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040375)(601004)(2401047)(13016025)(8121501046)(5005006)(13018025)(10201501046)(3002001)(6055026)(6041248)(20161123564025)(20161123560025)(20161123562025)(20161123555025)(20161123558025)(6072148); SRVR:VI1PR0701MB2238; BCL:0; PCL:0; RULEID:; SRVR:VI1PR0701MB2238; X-Microsoft-Exchange-Diagnostics: 1; VI1PR0701MB2238; 4:mk4cbFAztXcu+c8jPICnAalv0RerVFdC0HGoxheyNwl6yi/K+z3W7Co///79sxm3yvrf+3pErAegORLNgtQgwUAAK/rJB4n3JM3zL7/jIFqykG65Zep5btIFOuTRv5JgY3ERHbsgu9kQ/9/IErmIzjqzrJyfVjU7B6gdqXrDdVBjekjJa1sTn9JH+tUq9+kF1dMVJ/fq+P4NpRUnoOTrt9cQZilIZoL0csTAbOliMV9FYSi8rDPWCnxhrGuOCvLpgqgSvQGTSJa8v6KfYGwFHJmF5c4ub0gHuidKZuxLZSp9ofq6BbaOFYfO9JyPp3yFrluWvU1s13nB+89KZrTuyG2BwdJG8bEdmj+R69jCJTHCMAFdr0gva6duDnJcsh1loMEIuUMt/T5iSv0DHJw5lqBjLenx9mUxUzCl1gHhBNeWuqyvsFaXHirzBzLxaKsoaskmYpCvUJoF+fqNXYzXu+YqanshRy6rH70wSHC47wYjhRESKw1A4uF5ShO1KmHeg8EHUmRM+bWxuTOjLnx8amu182WFDAminDtjGfd0nwcc2PtdGsTJ9mV2jTLmTIBPq5TPa0ElW+qI9zR0G97TjOXZZVRQJwVJ4etE4lh7if/lwJVTs+3d1y6bys8eTbhVv9tb0jXaJSklxigB8ekTgcJh8eMO7i0G3U7d9kbIAxailtpG5gS78h0Oh8nm3nqXRyd6CZq5xwrPml/G9+5qwg== X-Forefront-PRVS: 02462830BE X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; VI1PR0701MB2238; 23:zBn6ZuiNmdlCOsyGq09rTQta/QRzxMdaztslPcB?= =?us-ascii?Q?T7bw9BXeBXC73HPnLBlVQdhg2jIj2eA7cNSAUvWmAmO1HdWyaAQm7ztkSjNd?= =?us-ascii?Q?WiEyfPHjvxKouGVXUGX86KgOEQWfWD08fabRRySUGOrY0WNUvUT5GWZ61tOU?= =?us-ascii?Q?JDuXQH0FQQrgljWYwvX1lwUQWnwAgevhZE6HUOKsDwdxWwC66RRBFOtx/yW+?= =?us-ascii?Q?gZteApLFPliFupddR/IgtibZoXP+EuNJJQraPbrrRXs3ESMvfcVpZdKaIvZx?= =?us-ascii?Q?NsVe6wveZjvFwFgFI3QeHnq7DzzEzsjW31tDnSn0CDpnDxJ+CF+MecjFMAR8?= =?us-ascii?Q?VAJLjKuns96o48zmf6k0BDyn3RAS+gGjnvq3SYtgzFHKVP4Arqq+fT/5FnKg?= =?us-ascii?Q?DJoB5cgTpJa0u8Xrs2jM/DuMcamC5mw1tCXr3dIUot+Y6v2kHb9GcVCXttu8?= =?us-ascii?Q?ECmn3r38Lj3Sk8WdEPfLyep0wbPDM/kl/WoTTlWa1pTy+0nHciqQIZaov2h5?= =?us-ascii?Q?BIHsX5/ctVi3yCuuVO50dr6qMFSU2WH9ojIF/L6EyZ4kB7ixwFwSHQQkSkXA?= =?us-ascii?Q?C0GmN6zqVLeFGRKjsRuMHEoFPeT5NRRvV1QT0Q6Oe+sXXIHw7gKFooIzhHsO?= =?us-ascii?Q?Un6/ewk7SZv9fNcravFoakIHFjgvleam8o/xrZFJILUdRaDAXDqG8nZzXm6g?= =?us-ascii?Q?yadjUCUFZPFvDFbmPHVMTQgCVeyBuwvcCNPm44wErdxIuuKrRMly1/TyNmQ/?= =?us-ascii?Q?9O0VOyvCwhELpC4MRHkAcxjgYFAAfaKCSp6I324ebf2cHHlbC4PXjZYlFZx8?= =?us-ascii?Q?9OZyGQHJZ9m81O9vt4XA1D+3zOrGXZ9Cq0cVyRZhsFV/PI0z+wxOCRrHMShO?= =?us-ascii?Q?+9f44HrmfLUGvKzS4YFWG1/nPYaOHc6hnn4RTzk/8Gw+5jZLlJpyEv7p/eim?= =?us-ascii?Q?Fg2lIkvgQqLoQ5PX1eNbtJMojQ+TOn3AbhEWbsGEqPE9TJQvdgZozAcRVmEI?= =?us-ascii?Q?cgLU=3D?= X-Microsoft-Exchange-Diagnostics: 1; VI1PR0701MB2238; 6:UnvbG31/4/Mnuz8+ScGJShoAtM3AKnobablcm/8g+Bt37aV+UKCXX0sWgNNwjpbeP4ObSLHeX9tRWwuPbbySshtx79qwPVPeKJWWmXDXa1DRCe+WMuh7YW2yMXxv6IyTqguBGkaGVL+gPZTAFrN/wnMJtOGbg2PZV8XpBTlpRxZQKBbCLgXjmKzASapblvUxCWJ3RpOMjoGevzdL8lD2BTlQvadGGIotsGN99OAvP/DBUPu4SF8lwQ1M6V91c9bofLM/JshT6e3C+r1P2gkzAyU1iee9yTt5krbo43fyC3+3MViOeIDIGxcCwV6okA1VeVPjx8ZUqJQ/4k89yisbcp54bR0ipMhHo4jefXM7Utrn3+fgDnHT3QxP+KVcKCpP8yyo7ce5cfRTaRd/HDkY2xu+DqAZs0nt4omduk+rOiY=; 5:GAmHfUXU690YByeQSyHmv2ZpPV1PQEm3cFG+9lvcVlaFPjvoERi2TMKoPjUEuoMV5ZQc7UNkpEf/HfU7n4VTsiYanbSZtBFAl2mTGg2aegFBz0EgvV/fIwt5+moZlecEVq+r1xS73HQHvA2ZEIDKOQ==; 24:dksFaprLVk6JvdcY7YayPJZB6EZ+vGwmqexQ5u1M3w0yEhHL94iShLc1LSF2klB7D0UdbJim3cP0zVhwctIc5AZ9Lv2dvZtaLLGZjfBTOhU= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; VI1PR0701MB2238; 7:qbpnt8h4uh1CcxhFyiLEPswUGL/odA0NQuQejuo2nqJDFRipe2iVCKYYP/Jm/nOvTytBKcjQ/iKP/u9xrSVH6qpgl4U77Xa7nS2RyGJUqRS3+5iXvKkFblTShQ4X/vcqC7CLNvH8/SI6WQJ7Ka5G/wliIsJq4Z1lPHq8ORhm2Ksjk2pOwyB2wmAl0ZfzB8GIwu9QcuDX20MyfHUNin95jXIMuB/5XFfI3ZvwOp6i6q1EbbewgusaEPkMHdBFFyYKqTSwNE9n8I7/0ZnPrq4sdWjbXq81HpAAfkves/0DQqsi1frjgHroum8l/l/J/x+VdQio6CAQnnZN+1tlFQqJig== X-OriginatorOrg: nokia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Mar 2017 12:51:47.7355 (UTC) X-MS-Exchange-CrossTenant-Id: 5d471751-9675-428d-917b-70f44f9630b0 X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=5d471751-9675-428d-917b-70f44f9630b0; Ip=[131.228.2.36]; Helo=[hybrid2.ext.net.nokia.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0701MB2238 X-detected-operating-system: by eggs.gnu.org: Windows 7 or 8 [fuzzy] X-Received-From: 104.47.0.131 Subject: [Qemu-devel] [RFC][PATCH 2/6] Re-factor bootdevice list handling, pt2. X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: janne.huttunen@nokia.com Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail: RSF_0 Z_629925259 SPT_0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Store the list head into the property structure. This allows the callback functions to access the correct list even when there are multiple lists. Signed-off-by: Janne Huttunen --- bootdevice.c | 36 ++++++++++++++++++++++++------------ 1 file changed, 24 insertions(+), 12 deletions(-) diff --git a/bootdevice.c b/bootdevice.c index a29d43b..30e98ae 100644 --- a/bootdevice.c +++ b/bootdevice.c @@ -33,6 +33,13 @@ typedef struct FWBootEntry FWBootEntry; typedef QTAILQ_HEAD(, FWBootEntry) FWBootList; =20 +typedef struct { + FWBootList *bootlist; + int32_t *bootindex; + const char *suffix; + DeviceState *dev; +} BootIndexProperty; + struct FWBootEntry { QTAILQ_ENTRY(FWBootEntry) link; int32_t bootindex; @@ -288,12 +295,6 @@ char *get_boot_devices_list(size_t *size, bool ignore_= suffixes) return list; } =20 -typedef struct { - int32_t *bootindex; - const char *suffix; - DeviceState *dev; -} BootIndexProperty; - static void device_get_bootindex(Object *obj, Visitor *v, const char *name, void *opaque, Error **errp) { @@ -313,14 +314,15 @@ static void device_set_bootindex(Object *obj, Visitor= *v, const char *name, goto out; } /* check whether bootindex is present in fw_boot_order list */ - check_boot_index(boot_index, &local_err); + do_check_boot_index(prop->bootlist, boot_index, &local_err); if (local_err) { goto out; } /* change bootindex to a new one */ *prop->bootindex =3D boot_index; =20 - add_boot_device_path(*prop->bootindex, prop->dev, prop->suffix); + do_add_boot_device_path(prop->bootlist, *prop->bootindex, + prop->dev, prop->suffix); =20 out: error_propagate(errp, local_err); @@ -332,17 +334,19 @@ static void property_release_bootindex(Object *obj, c= onst char *name, { BootIndexProperty *prop =3D opaque; =20 - del_boot_device_path(prop->dev, prop->suffix); + do_del_boot_device_path(prop->bootlist, prop->dev, prop->suffix); g_free(prop); } =20 -void device_add_bootindex_property(Object *obj, int32_t *bootindex, - const char *name, const char *suffix, - DeviceState *dev, Error **errp) +static void do_add_bootindex_prop(FWBootList *bootlist, + Object *obj, int32_t *bootindex, + const char *name, const char *suffix, + DeviceState *dev, Error **errp) { Error *local_err =3D NULL; BootIndexProperty *prop =3D g_malloc0(sizeof(*prop)); =20 + prop->bootlist =3D bootlist; prop->bootindex =3D bootindex; prop->suffix =3D suffix; prop->dev =3D dev; @@ -361,3 +365,11 @@ void device_add_bootindex_property(Object *obj, int32_= t *bootindex, /* initialize devices' bootindex property to -1 */ object_property_set_int(obj, -1, name, NULL); } + +void device_add_bootindex_property(Object *obj, int32_t *bootindex, + const char *name, const char *suffix, + DeviceState *dev, Error **errp) +{ + do_add_bootindex_prop(&fw_boot_order, obj, bootindex, + name, suffix, dev, errp); +} --=20 2.7.4 From nobody Mon Apr 29 08:06:10 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zoho.com; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1489541056745295.70499835813234; Tue, 14 Mar 2017 18:24:16 -0700 (PDT) Received: from localhost ([::1]:34168 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cnxfj-0006IM-7w for importer@patchew.org; Tue, 14 Mar 2017 21:24:15 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:44098) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cnxfE-0006I2-ML for qemu-devel@nongnu.org; Tue, 14 Mar 2017 21:23:45 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cnxfB-0006qZ-GQ for qemu-devel@nongnu.org; Tue, 14 Mar 2017 21:23:44 -0400 Received: from mail-ve1eur01on0098.outbound.protection.outlook.com ([104.47.1.98]:47428 helo=EUR01-VE1-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1cnxfA-0006pq-SJ for qemu-devel@nongnu.org; Tue, 14 Mar 2017 21:23:41 -0400 Received: from HE1PR0701CA0062.eurprd07.prod.outlook.com (10.168.191.30) by DB4PR07MB0638.eurprd07.prod.outlook.com (10.141.43.153) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.977.5; Tue, 14 Mar 2017 12:51:47 +0000 Received: from DB5EUR03FT062.eop-EUR03.prod.protection.outlook.com (2a01:111:f400:7e0a::203) by HE1PR0701CA0062.outlook.office365.com (2603:10a6:3:9e::30) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.977.5 via Frontend Transport; Tue, 14 Mar 2017 12:51:46 +0000 Received: from hybrid2.ext.net.nokia.com (131.228.2.36) by DB5EUR03FT062.mail.protection.outlook.com (10.152.20.197) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.961.10 via Frontend Transport; Tue, 14 Mar 2017 12:51:46 +0000 Received: from fihe3nok1346.nsn-intra.net (10.158.36.134) by fihe3nok1347.nsn-intra.net (10.158.36.135) with Microsoft SMTP Server (TLS) id 15.1.466.34; Tue, 14 Mar 2017 14:51:43 +0200 Received: from mailrelay.int.nokia.com (10.130.128.30) by fihe3nok1346.nsn-intra.net (10.158.36.134) with Microsoft SMTP Server (TLS) id 15.1.466.34 via Frontend Transport; Tue, 14 Mar 2017 14:51:43 +0200 Received: from fihe3nok0735.emea.nsn-net.net (localhost [127.0.0.1]) by fihe3nok0735.emea.nsn-net.net (8.14.9/8.14.5) with ESMTP id v2ECp5gm013362 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 14 Mar 2017 14:51:05 +0200 Received: from 4FIL37951.emea.nsn-net.net (eskara3c-dhcp036133.emea.nsn-net.net [10.144.36.133]) by fihe3nok0735.emea.nsn-net.net (8.14.9/8.14.5) with ESMTP id v2ECp5hr013350; Tue, 14 Mar 2017 14:51:05 +0200 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nokia.onmicrosoft.com; s=selector1-nokia-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=XFsbJ3asZROEBblh3UHYVpgvmihBkHYL7Kte49H+9jQ=; b=brjGCFhhlcx3TkatsDae3mzUekcD0qPHwQ2tuAkBxsbqvtdANif0weTPxM7FeP/T5N0qw/yIOa+bPBByYFH3DGZZCBLLnLKjMbcldn1l2BzqxH7KzqVygeySQvTpuL5CUyrzrpePc91lTmIWhpQ+X4QDp8ESJhiaO7v8qMtBv/I= Authentication-Results: spf=pass (sender IP is 131.228.2.36) smtp.mailfrom=nokia.com; nongnu.org; dkim=none (message not signed) header.d=none; nongnu.org; dmarc=pass action=none header.from=nokia.com; Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: Pass (protection.outlook.com: domain of nokia.com designates 131.228.2.36 as permitted sender) receiver=protection.outlook.com; client-ip=131.228.2.36; helo=hybrid2.ext.net.nokia.com; X-HPESVCS-Source-Ip: 10.144.36.133 From: Janne Huttunen To: Date: Tue, 14 Mar 2017 14:50:10 +0200 Message-ID: <208c825227726c5a816678b72eccae75089965a0.1489494746.git.janne.huttunen@nokia.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: References: MIME-Version: 1.0 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-HT: Tenant X-Forefront-Antispam-Report: CIP:131.228.2.36; IPV:NLI; CTRY:FI; EFV:NLI; SFV:NSPM; SFS:(10019020)(6009001)(39840400002)(39860400002)(39850400002)(39450400003)(39410400002)(2980300002)(438002)(199003)(189002)(9170700003)(48376002)(5660300001)(118296001)(2351001)(53936002)(356003)(2950100002)(6666003)(77096006)(106466001)(6916009)(47776003)(50986999)(8936002)(189998001)(50226002)(22756006)(8676002)(81166006)(33646002)(36756003)(86362001)(305945005)(107886003)(4326008)(38730400002)(110136004)(2906002)(76176999); DIR:OUT; SFP:1102; SCL:1; SRVR:DB4PR07MB0638; H:hybrid2.ext.net.nokia.com; FPR:; SPF:Pass; MLV:sfv; A:1; MX:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; DB5EUR03FT062; 1:nU3T92yizgutlPDl9wHPBNKLras4GLObp8o4eqKFdev21XRV8BFz5G8SqqRS1QjECgC3UaY1U0/CVCMhvc3ykR+F/3MDXkksUMV31RBiA6AXrCd5UYrw1wyCGM75CRi1A+tN/Fbh3q7hpDVof7ZFly3M64dGa55jlc7riVRg5vqxopo0wJQPSGTik/M7KqbzhKaBT1413jEDis0rW33Pv3mJwccYDJ8UKr9kH7FiGGtEgnRsWU7ScB9zcQBY4vadU/RyTp/zBmh2Gd8FE4YdpfOG8A7amAyUT3LwZ9TEUAI6J76bGcAtpjUX7vZcF0CJpKMBKJ67BiLv2ecq+u6cwXX+Prqp/6YQSoxqdgHxeS1OYNQqf4rEgrFh3a/nVWFSonnJZGML08khfl0HIpYE3i7b7r0pcY3YMACHtepju5phuwK6hyYwzgXYj7bTrx9aZ6Ojqw1+vLhv3LabtpTSMi7DfIoHnfpqXBYAKFt5U4c= X-MS-Office365-Filtering-Correlation-Id: b9fbecc0-1e89-4a51-ed97-08d46ad8dfd0 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001)(8251501002); SRVR:DB4PR07MB0638; X-Microsoft-Exchange-Diagnostics: 1; DB4PR07MB0638; 3:fACRetoL98c4roJryhAJQnznfienuV4rYvZk6UQyyCwLR9j/NdszFwNBceQuGO1q98tHtqbRLY7MaTIzgBpb7WJVMSU8mdNVsXJMNBvKzSJH5XKmKFRgoY30zWBfCJe9Vf34Um8L2v5OBApzN4JVNTPVALhH5XBbpl4GgyDmE32B6RUX/IHnhAIaYepVcgingeVlOuSL6lBJFk8dPnRgM4CD/f3f5HsjjiHj9PL18s+/xW/OtzBOEFXtqHiF9TA8G36xP1XE8IJVPk/ciU46rpCumk2pksEwKUPpjKcS/3QBsGcjEZR9pr5Nqu+3QmtXlMRSTq3Viny6Dae26KX7iePrzyKNaznghbiqR5l0P8iNYhzgvkiy04OwIgCwKDY5Djw4/aBiy6GCQK/llKPqTA==; 25:Rn/Ih6XZ+dj6wZ4qLr3IUfvY0MtaxKx5CU63k8sbFFWnffw8zN2USeMVsmlnCvu7zz4kDjK2V9ZSK8wawI/lQQUtArDAbrkMoC0hwsdCqwZ3mgWqidoHURUPVDnaOMw4L7tXDd7KG+VEuOceYuNV9o3355SaBC/b94NCHz4/yiC5mDEgJjpZrr9sU4j0svud+pB+XJiaFytny/fGSCfc2SEK/dwJu+wwMT06p7Wq0wk2lHv+fs3WIdOOeNpB32ekl3UrodYcQuEtsQt81yYV5XHiDyPlDDs9sE5CXKPZzcET+1METd2AoCKOyu64nRpA2eXlGgJIWXb0epVDxc9Ty91nY5othjssZ0YS62WgFNqMb4pR7yJbsoUpMA6C324CE58/8by1xTvrQ8Gb2VQzcc2/4Alx5BxVkfuFknJUSV0zV/LkIV2mQrv9AKqys4AgGPVMwsDwHLDjkebOVkZAbw== X-Microsoft-Exchange-Diagnostics: 1; DB4PR07MB0638; 31:Y07VB0wsLtUuPUD7Dg+rGt1P3HdKx+4//T1jQ0PvFXC5Yf6WIJCg4Vx5+x6F1p7pCwmNZ1q+rZTrOdJ9DVRfzEfvzWNgE+n9l8X/r54y8IXywr3+m4O3WaASjRw8FfHnvnyoppANrB/TDlM5yrKULgtiAeFkVjw0ng3ZU1MUybZwWNXaWYRrISAN7zjtsTuKaMgQ+slVQHb5kYzufw0rQ8UdG+HV5j1WJkRPfHa36Z6+clYWxEToB7H0TS0CaWm3ECgD9RWxQWguJ33InaFnN382KnTgb/EVtdsUJqpzuv0=; 20:EPbcTKPdyINaTq86gFg9FqIQCPJMPltErTB4u7LsCGvn62GevKHI+yrfJG+iiXd9xSyqXEbwtTCSo/cQqnmCEgan3riPXwGIgsZEgPbZSo12F+D9Hkx2IsAJUPsZe692B4Ts0p+1WXfJX9tfmGS1bN2DSMkIaEA3LXVuwvlYFfqUfXVNXGFN1mgBcvmckyoqDEYEJFM5JHMK5zYxDoBUcPd4N6DFjcalxdLWpr3LfdrluwTnYADD6eZp2KSHzhAVPdO9TdGwuCCpKWqg5aIYPeKNkbrAMMhXNPmRtkbdO14KJfG3XR7MlraWzclH/Tdr1CvYa8qe8f0wc3mc4fEJxvTakzJRGV/n5NTYWuNA/MaX3cQvnN5fpAovNo5wJOxI6Tj4YFXbxDuF12Jn4ijpWWOwyjeFjcYT/lNmeX3+gUjHijMnsNcysxHADhyK8lCF/ZKSGWx94Ur3+tJInLfqgBhdzDBcznJ+09LZDsIkbvO7Ev1cks/qCl0fZWZly+UO7WJlxwAgrHUYPVr+LpQAlQYQotzt+OmfvCPJJewlwm6sUKOk3cj6d43jb2mGBArVTdF0Q+uDFw9Y3rju7H3WsHgklSqZKZc2dKJ+vHhXDfk= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(82608151540597); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040375)(601004)(2401047)(13018025)(5005006)(8121501046)(13016025)(3002001)(10201501046)(6055026)(6041248)(20161123562025)(20161123564025)(20161123560025)(20161123558025)(20161123555025)(6072148); SRVR:DB4PR07MB0638; BCL:0; PCL:0; RULEID:; SRVR:DB4PR07MB0638; X-Microsoft-Exchange-Diagnostics: 1; DB4PR07MB0638; 4:4HRFZqok/KjfyQpzdXkSSPKISZbUJ/mWrHmRSXimCbn2vpSKa81mCqff53pryWEP0534YgWRjZpiot+wLAVjTI15cPcxCXVTJ8evR8zoSoHyk263N72rDtEov5PB71MKHckOBO5bTFHx/hdGX91wn0lVp7kmrOSWA7+NmjagYZw5btNYC9riidHZRJBpAxXWw5UQ2K6ABShiZDMBJPW77LuLtgW2p5fqPNPozwUxPyJd8YxC2qscqGa6M5D5wcmr0H9lWNTBgy6SCVdeEFGGWZd9R0vadNEMj2TP9EdyEOqnpQXZGf5B1w3uw6xnjRsTjUuiqOMJzKx5J9a8O+atQ51h16RF3EPY//P2auNVnkl/Riqv+6OugpAnNrIk6maxn/PGhTSSlYTcGucPQI2xN/gxJTat91rYKUsZeyn5Fkt3N9JB8Pbik/oDuOMcL3PPVB3myd77libh1c10LitHu2vqHywUOqjIruz4w1CjHFt6aBZChER9TCSUitPvlFbVrSyOr/0JeNIo0lRJRwKfR7fyBKkovlI7MKLuzBEELKR/P9mqMIL4nO8qugBDUiQo/6WFYI7avgtyK+TNop3He/AjuHR9oGDzMHJXA/R9+W8B+gyAMS4pljhJpXawJm93BA8r26CsenWNtmbKkFmUURITgCRX2bF+F+csi+J6JiMh+8cQc4lCXzBWjbiCdfuHnkBbsE9282tfhqP8uxQ23w== X-Forefront-PRVS: 02462830BE X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; DB4PR07MB0638; 23:+3aKGBpDG+dIV5Pf1ffOJxWYoZl+b2Hj6BK3UhCHD?= =?us-ascii?Q?B7ypeELc3xm5LYxEomrlHakGEp+XAAWMj1dI5qPmwJYJWSBokJH1zg3JuLHC?= =?us-ascii?Q?nJzCsOVG1qYym5017Y3FJ30QrG3mjBRCPT6XubHv9kbUT6CCEIE0Ji51BLyx?= =?us-ascii?Q?18G0HPDXzaL8KaMjB5L1KBz9Yyrdp7fZtRzUnfZ6CcnH9NEXPMfI4F8hurtr?= =?us-ascii?Q?e3c6v+MChFeMG8iyCGmyg9WA0w/PszE8Muhmq+GBL8ynUbYRIWrejGkTc5g+?= =?us-ascii?Q?CuDEUIUDqPQW8N1b05t9BCIRrX4WDIL9NFtlzVBb5gewQfUyJnWHbZt/HgPv?= =?us-ascii?Q?7PMAlDtN3R29tmyAXrwx9cmP1Ii/vlxhHRprDA6XoOceAJy+SAkQaAN/PAb8?= =?us-ascii?Q?hrSGp+G0c4vMtObHE6DykzLUjl0TE/bCAhJuTSJTZ3rbC1+gpXdv7uH357LH?= =?us-ascii?Q?cm+sHDFEyzA12MdWBqCQnNFxCVwefhLV8enK26Kp0J/gu01MbTgtfaWOIq9D?= =?us-ascii?Q?iGEk4QxFhEUL+Is9Yx67jLsrSeGC0YtLW5ojO//vXg0JpKbBNe6aQtqsQXie?= =?us-ascii?Q?QRYTHu5v+QO2BsganyA7nnwqILhexcMvXC0R+RiPpXaGKcadrFoxmj04QWfM?= =?us-ascii?Q?5s/QSvRB4GHQt1uB3aa3XGPhvHSGdshP6XsExBP3J6TDPnf8bN/PSF2z3XKu?= =?us-ascii?Q?1w/93nfQBA6pnl4tlb4o1Fv+C5SSPRtzrTXcpe9ZuS7+odW4cgl7SwBo5zUE?= =?us-ascii?Q?mh72oFQ063BuXYfchHiHilnYy1TeuwYBd7MMiypIfaWAa97XhnpZ/TTBZvEt?= =?us-ascii?Q?U3tljlmXtxg2nj6CajYnPx5THhy+4SyxZqRKpwoPt3hae7aX9degOXobdkmh?= =?us-ascii?Q?lwdN81uWtxE0qu19pRIAb/Yznz+L+gO79bxU20huZ/Y6wYop7NaVWlBZddXo?= =?us-ascii?Q?NMr0o5DAUIlQziEvFKSIlRlVOw1kXkQfKBn0AgFsBebo5a4krrDMwwM99eqX?= =?us-ascii?Q?8vvnOrfJ16wLRhTNFVbAgcc?= X-Microsoft-Exchange-Diagnostics: 1; DB4PR07MB0638; 6:RPDQkEmXyWuNlI6ymUaff2G44SVIy9SwGFX8B3jZT6fM0Y/o6lnL44cORhuVfgOfg9inu4oHhwk4KkZn8c57L3XEEuzfHbeirsNyLqL+4vnHfKAypK25ZT9XZxR6sBZbyh1QPKiWGG4KBbjip1VDhMSdYaIwPbM2NK121YBl+/mpYt7hrPlESmseB6Q+TIB0JztWktMvHXe7cYnYjTtuN5HhLO5hSBVtPjHpKLNt4iTC3T9E22Rokcp/PRPDAchS86kpIAGoifgjscVbucEYt1biBIdxlakNIaxo72QRErkTPsriwRRK5EaRHcg3jrwXZGipGKiqiMlZj82hswCUl9URCaR2O56jGo7m8PSCWiOgFFtWTsnfm+o/ZNWHxtdGqnBIiQFj9CeCNQ5vbwrDyDV/WokTqQQWwkTAFiJZFjM=; 5:6+dUr/wLdTDo6o0foOglqsZix35FiS+L91piK4jZ9RszCZJd+MEIR6NkKfHtPxfBCLhZzqvSNvtrdjbi9SPJDLPTb/7A8x7YTB0pk5+7V1MPwNYHvaJdSilr1b5nMCeE41aiY82LrkE6Orom+i5zDQ==; 24:uRdpAmzEX90SBxaBuZTOaPy3CWDpMFTbRZRhYiCd8K2P9zDQJsf56+SDRkaA6K9RtdxKbKLrIOUNjJ/Fj647ZX1bdrZQCfQO4Szazn78aJE= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; DB4PR07MB0638; 7:qn2jS/8QtR3fVoeGgvePmssMzpkJmLxyy/2Rdlgo6cDZSf0Z5vZwike7YEdGqX7V/LZYdzZqiFnP6OiMHx+3Eq7JcJridjOhr3z1br+d7cdn2SNfuh+/SOLYrriEZNk0GJ4MmwFZ9QRs5yIIEpFOH8ohVQZksrIEygv6TQcC8Yg2lgpKs3cH2xEyLLhg0S7AM15OTtPVGZoL7mG9066Sq7BqRjoS4u9nyexVj6kskc4a/WtPwgM+e7GbvPMYnHacYoyRsMtnjjfkgWAYDavFWNEIaePcHJ0ee8uvACHtLYDR5HaF8HVtRqrvis6S5rr4UOPFq8CXOPSjo3VzVnkbdw== X-OriginatorOrg: nokia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Mar 2017 12:51:46.5480 (UTC) X-MS-Exchange-CrossTenant-Id: 5d471751-9675-428d-917b-70f44f9630b0 X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=5d471751-9675-428d-917b-70f44f9630b0; Ip=[131.228.2.36]; Helo=[hybrid2.ext.net.nokia.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB4PR07MB0638 X-detected-operating-system: by eggs.gnu.org: Windows 7 or 8 [fuzzy] X-Received-From: 104.47.1.98 Subject: [Qemu-devel] [RFC][PATCH 3/6] Add support for "bootonceindex" property. X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: janne.huttunen@nokia.com Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail: RSF_0 Z_629925259 SPT_0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" The property works just like the "bootindex" property does, but uses a separate list. When the list of boot devices is queried, the boot once list is consulted first. The normal list is returned only if the boot once list is empty. Signed-off-by: Janne Huttunen --- bootdevice.c | 11 ++++++++++- include/sysemu/sysemu.h | 3 +++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/bootdevice.c b/bootdevice.c index 30e98ae..b5515f8 100644 --- a/bootdevice.c +++ b/bootdevice.c @@ -48,6 +48,7 @@ struct FWBootEntry { }; =20 static FWBootList fw_boot_order =3D QTAILQ_HEAD_INITIALIZER(fw_boot_order); +static FWBootList fw_boot_once =3D QTAILQ_HEAD_INITIALIZER(fw_boot_once); static QEMUBootSetHandler *boot_set_handler; static void *boot_set_opaque; =20 @@ -240,7 +241,7 @@ char *get_boot_devices_list(size_t *size, bool ignore_s= uffixes) size_t total =3D 0; char *list =3D NULL; =20 - bootlist =3D &fw_boot_order; + bootlist =3D QTAILQ_EMPTY(&fw_boot_once) ? &fw_boot_order : &fw_boot_o= nce; =20 QTAILQ_FOREACH(i, bootlist, link) { char *devpath =3D NULL, *suffix =3D NULL; @@ -373,3 +374,11 @@ void device_add_bootindex_property(Object *obj, int32_= t *bootindex, do_add_bootindex_prop(&fw_boot_order, obj, bootindex, name, suffix, dev, errp); } + +void device_add_bootonceindex_property(Object *obj, int32_t *bootindex, + const char *name, const char *suffi= x, + DeviceState *dev, Error **errp) +{ + do_add_bootindex_prop(&fw_boot_once, obj, bootindex, + name, suffix, dev, errp); +} diff --git a/include/sysemu/sysemu.h b/include/sysemu/sysemu.h index 576c7ce..9acf2d9 100644 --- a/include/sysemu/sysemu.h +++ b/include/sysemu/sysemu.h @@ -214,6 +214,9 @@ void del_boot_device_path(DeviceState *dev, const char = *suffix); void device_add_bootindex_property(Object *obj, int32_t *bootindex, const char *name, const char *suffix, DeviceState *dev, Error **errp); +void device_add_bootonceindex_property(Object *obj, int32_t *bootindex, + const char *name, const char *suffi= x, + DeviceState *dev, Error **errp); void restore_boot_order(void *opaque); void validate_bootdevices(const char *devices, Error **errp); =20 --=20 2.7.4 From nobody Mon Apr 29 08:06:10 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zoho.com; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1489502568687322.7864449944615; Tue, 14 Mar 2017 07:42:48 -0700 (PDT) Received: from localhost ([::1]:59836 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cnneu-0001S2-Cu for importer@patchew.org; Tue, 14 Mar 2017 10:42:44 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:48902) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cnnPN-0003a7-Qb for qemu-devel@nongnu.org; Tue, 14 Mar 2017 10:26:43 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cnnPL-0001IN-3y for qemu-devel@nongnu.org; Tue, 14 Mar 2017 10:26:41 -0400 Received: from mail-db5eur01on0118.outbound.protection.outlook.com ([104.47.2.118]:17086 helo=EUR01-DB5-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1cnnPK-0001HN-KJ for qemu-devel@nongnu.org; Tue, 14 Mar 2017 10:26:39 -0400 Received: from VI1PR07CA0081.eurprd07.prod.outlook.com (10.164.94.177) by HE1PR0701MB2235.eurprd07.prod.outlook.com (10.168.36.142) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.961.8; Tue, 14 Mar 2017 12:51:49 +0000 Received: from AM5EUR03FT047.eop-EUR03.prod.protection.outlook.com (2a01:111:f400:7e08::203) by VI1PR07CA0081.outlook.office365.com (2a01:111:e400:5967::49) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.977.5 via Frontend Transport; Tue, 14 Mar 2017 12:51:46 +0000 Received: from hybrid2.ext.net.nokia.com (131.228.2.37) by AM5EUR03FT047.mail.protection.outlook.com (10.152.16.197) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.961.10 via Frontend Transport; Tue, 14 Mar 2017 12:51:46 +0000 Received: from fihe3nok1346.nsn-intra.net (10.158.36.134) by fihe3nok1348.nsn-intra.net (10.158.36.136) with Microsoft SMTP Server (TLS) id 15.1.466.34; Tue, 14 Mar 2017 14:51:45 +0200 Received: from mailrelay.int.nokia.com (10.130.128.30) by fihe3nok1346.nsn-intra.net (10.158.36.134) with Microsoft SMTP Server (TLS) id 15.1.466.34 via Frontend Transport; Tue, 14 Mar 2017 14:51:45 +0200 Received: from fihe3nok0735.emea.nsn-net.net (localhost [127.0.0.1]) by fihe3nok0735.emea.nsn-net.net (8.14.9/8.14.5) with ESMTP id v2ECp5aO013365 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 14 Mar 2017 14:51:05 +0200 Received: from 4FIL37951.emea.nsn-net.net (eskara3c-dhcp036133.emea.nsn-net.net [10.144.36.133]) by fihe3nok0735.emea.nsn-net.net (8.14.9/8.14.5) with ESMTP id v2ECp5hs013350; Tue, 14 Mar 2017 14:51:05 +0200 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nokia.onmicrosoft.com; s=selector1-nokia-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=nMQUPc5gD+hugWeZ+fmq9G6JAOB/9by/oBvlnMbDuf4=; b=e/uEMubPhCsPiGuxEx/y/BlSN7CdFJoDFan4ul3ngKnUSNeJBMS+MOyRyw3gUSFpvxslbRcu2oHZkn0dOjTwuoh06BflSsPaWYKmtvHStnzf4EsDulqTg6C2oWj/QGeG3iqEmVt0+mGYfbfz4yygNvrSaExAY1YpCkna+J9/hC8= Authentication-Results: spf=pass (sender IP is 131.228.2.37) smtp.mailfrom=nokia.com; nongnu.org; dkim=none (message not signed) header.d=none; nongnu.org; dmarc=pass action=none header.from=nokia.com; Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: Pass (protection.outlook.com: domain of nokia.com designates 131.228.2.37 as permitted sender) receiver=protection.outlook.com; client-ip=131.228.2.37; helo=hybrid2.ext.net.nokia.com; X-HPESVCS-Source-Ip: 10.144.36.133 From: Janne Huttunen To: Date: Tue, 14 Mar 2017 14:50:11 +0200 Message-ID: <4ec5dcb3630754046a91ce19d0ce5197156b9a7a.1489494746.git.janne.huttunen@nokia.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: References: MIME-Version: 1.0 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-HT: Tenant X-Forefront-Antispam-Report: CIP:131.228.2.37; IPV:NLI; CTRY:FI; EFV:NLI; SFV:NSPM; SFS:(10019020)(6009001)(39410400002)(39860400002)(39450400003)(39840400002)(39850400002)(2980300002)(438002)(189002)(199003)(9170700003)(22756006)(53936002)(8676002)(81166006)(48376002)(6666003)(50226002)(118296001)(305945005)(106466001)(5890100001)(4326008)(47776003)(2351001)(356003)(2906002)(50986999)(76176999)(189998001)(110136004)(38730400002)(5660300001)(107886003)(36756003)(8936002)(2950100002)(86362001)(6916009)(33646002)(77096006); DIR:OUT; SFP:1102; SCL:1; SRVR:HE1PR0701MB2235; H:hybrid2.ext.net.nokia.com; FPR:; SPF:Pass; MLV:sfv; MX:1; A:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; AM5EUR03FT047; 1:nEv8f0dxs903kog1XwYNY4eLFqxTeUZjx4JwL9d7G/XqbJKwvEm0aTXA16hW1H59oefLizRkHaB3XS2cxGi/YXJkdsGn7J1/JslGdEKtqU3VGrr9jN4c7cgXfase9saxMXEUcHElMVRI+OyM9BWbFYya1Nt/uxmCVAHqIK/Xdp0UJA6HzgRsIMeEcBgEpFqFbxNww1pWmo97NF8uDMEh7AoQCHkqP/BMsPRAu+Hc52oxpV8fWWjJW4gIARZOn4XKvmdYcJPRnmWLsV6IXBMt9SyupdcyiOKbCArD71S/3ylW6/3HpiAe2TvW+qxhQc2IJhYr+uwq0gibP2Io4NJQPVUV2u0C3yChdjCFUFKWARGREL689X9Rvq8IYv0lov9rHWimIcOw6aWrMU/5+3UqyJXsMh1r9x01V3aOnq9RHncEpGgeHQCSrT/VueZuP06hPcSgxSbAfJv0w23ogvkEXkS+1iIaX5t87gXISCHd/J4= X-MS-Office365-Filtering-Correlation-Id: 40726054-c357-46d4-6aa6-08d46ad8df84 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001)(8251501002); SRVR:HE1PR0701MB2235; X-Microsoft-Exchange-Diagnostics: 1; HE1PR0701MB2235; 3:wHDrXIVGfg3wIQNuw/Az1wTXW6NtXHwGMPf1dDK1eEQrb7ROwjEYEuvcJAOQblxK/pKzgWI5a1zL9y7cC9L5SYKqf0SAcRfNH6CDa66C+RRdxSdzybWn2KfcVFrcSsPL+zHCBRK4qYTeKKq5jWk/niOhAKNn61VdqUSXKqGDuLK3yuy0nl2URZ16b9XP2CSbFzb0WsrWk41Ejc7EGLBMLU05FCvvtfly1sC8/dQ2hP390AS3GUQEPNr0inuoQDs/rgSujwElOwyij1xEqbuj5+Y7NQdy6ci5JIb+svQSzKGK9NW2zK9ShmgsVIa9BfcS9EVbbTGPtw3IyL7dvJvUdcWWSN3mym8F9bJHFM/M9kP1rif82HNyveWn9bZKq6Z/c24d9hWOjWtampDmiqpUPA==; 25:W9WUNrbxj8rsTDy/r9gb9cPYx+uWrqL7r/HHk3mKo/wv7gkzNfA1TLaSsGxDpUNDbY0dwLorW1o8M8vNa/yUXOY2K2ditR756Ts7naF0G9a0+tLw/8zEyyCwDdq3TN5TTGGjLYXkC4pjeyesTMwIozpoYsZvpfK4v3wT/uNpJPXTESiG0v0GI5sc1MvxOgNYA7LKYQYHUUNfgQmJDKBkJD4DRrSTn2FsyIRhpSsHanLPrIdItuHq1mfHNt05SgM3UO+DNkRxbAl0cD8PVx9s8ZRdFOw/scPHleYMa7IJGz4VbJgwKjBV1iRMkpT1LQ1l8tq0jWhWp8xjVwGsm8Axgs4Vm6WE2mihU0XPCYYQZd880wBpuPdbX6ljW/QThKgrHai7Bff97Y/+DyytlZKRUTu7V4+dTQpCiuGxzZMHh3N0Gb2DAMolBaicRfEzc68HJmZFucyQBuss0OZwx6t5IA== X-Microsoft-Exchange-Diagnostics: 1; HE1PR0701MB2235; 31:svFhKGxsICX1HgtOrV/Z5S3uooyS40ufzen1bUVEHv1wnp8RZpfo8EvdRvahENeXxxRDcbo65BTL37SDPIhjwp76KFkWgzW206XfsEFz73Kekd6gteoMm3FiAwGumWnEztv5PbwN5Uuzp0xabW85qnlJuplVvdSYgBconZ7IRu8gF1T/loIc68tGUtdtI5bfQ8ekMRFc3RagrQRVWsTlNUZDj1FKDc60IE67XvavAnaFS7HmTVCA03Xxxg1U5MveNSaVntlRP2MYM68KYt2bd1AQq4K8vdFJ1iiddgdSXZI=; 20:3fGhi7G1+Kdy0WOQEtWpFIqSUgY3QM8OQIo84KKt0SdO9ctE6A64KPqqgorCHR6y41HCg3HteHdUwvSEX1pPNfbY+UdCJmWA82KHwQcaMO3Ks/eZMMBmhSMAwCZR7RKAaXAWfQPG9EwkruP3a+KG18JqHfdC12VKVEW7gaTenYWxjmYBleBoODKYt0IAy0/3GEhqktQqQ/IM+VkEpfxgCkwdGi5TLIezz4Brw5ZWwNBb0mlf/gWKKco5SLjHwLJRcjd7FgYYfIbMFXAbOk7kTSFVvps9f305s4dO3CY5vVe1dUhoCp4KhrqJGqKfmJVwgOitq3wLy2b3TQYV+hLqrNRStgvWzhBQN0wvH5HnALudibJSOwpaJsdhVAXFZCdubW9RLMGu/lbO5UTz1IlJRFozS8I+4ZnfLDshQtSXHjI7uocDv6g5FV4rNL5egeyy0/szbgFZbZO5dAKUlWTp/K+39ZF3+5VLeAuIqzFsX2Zx3DuJlhNfb1o935l+f7AH3SBT5PB1WKj9/Crbb2VOt3F3grXAgiY1sTD5S+Y9nA4k2NksCrtv4d4l9gU30ou0CtuFp0Hagg0o8EDVk34BHhhQ/yvBsFb/KcIcVOAErlg= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(82608151540597); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040375)(601004)(2401047)(8121501046)(5005006)(13016025)(13018025)(10201501046)(3002001)(6055026)(6041248)(20161123562025)(20161123564025)(20161123555025)(20161123558025)(20161123560025)(6072148); SRVR:HE1PR0701MB2235; BCL:0; PCL:0; RULEID:; SRVR:HE1PR0701MB2235; X-Microsoft-Exchange-Diagnostics: 1; HE1PR0701MB2235; 4:3QckxbAiECjzF0UQO0ee131YSl6ThKJARpWeBvVIqnykKZBrf9WDPzGiRfhxRhUwwIwOgWQgDrRl9/i1BPWjSeFiyQXzFqJjHyXIML2pALpCg4rvDOnNyzgX/GSR1PZ6J+AHR7Y6SmaRqxl9/ls8nZ4LP2Cpg13cw539z/5tmNMAY98DO2JDjDh8UiiecdezZzKDa/JtQJEV3efVT59B0vbkPD830mZ/+c3BELkb1Wgg3LQG6ywjM512rxESQZCtTIIHNb6N6DBhEBUJbVUZf7FF9gp1S1W86ND1bqcq3PW2YuRBfWvMMCcD/smsyTN+fiQSs+sk5xi4EEDW7aKhUPghRgN1MIR2hggJro3k1iKV/B6Sf1+X29lOrUfe1QqDi7kHc02G54DulCryqqDpiwPpKuJ5H4GNV4RRy3HlStQxKvPctE2vBci1ivsRdsjEMvA94kOWUUdVN0ks5sw8DExCv8t5uf4GnTfNBw9Ty9p/CdHXJZN96XlSxkekfheBlKbdTgIX1DciXKXQjZJwEbJyTBHHbaMvym3G3YVGn0o8v7NrRjcWXZyUycBFBdA4JZfv0/QCH1mw7d9ZrsIXrfy704Cue9RhUJ02z57EmOD+L6sLHTJJGREiUqM7nJWvjdxHvYXXI1CbIiegl2wJC0gPN139M3wvffE2doPy265c8qdIvlUtrsO/6ssl2eSKVObMLVUpnpkSGw8PVYSuGg== X-Forefront-PRVS: 02462830BE X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; HE1PR0701MB2235; 23:CHm9xOzmwMrFuCqFqtCv5ptgTz9uGsgzjl9SK1P?= =?us-ascii?Q?BM+c4VVN/qIgAxR+TFmwAazDRrRwys/Z6x1BiHlkv84q7N0rUEVpMgKNFdLy?= =?us-ascii?Q?EPANrEPrENElQA9zhV/df1Gcspeb+RhDIKKvQj0gIqA0wnozhgaW3aMFEv4g?= =?us-ascii?Q?jCQaxcjqxbvH6eFtWR8JySg0wNdSyMDiAZH+TnjmN5HLfxJaWxY4lSNIQYQO?= =?us-ascii?Q?7oznoAbYrT7rNmfZu4GXfnowhKSLNDAjYf2Oig3WshxCdWiVz0hHI1SZhCvq?= =?us-ascii?Q?bzRnnFRAELIHTV5as7fzro0+AHz8HsgvMKrS7FqDLrOl1CK81uf4yg7jN+67?= =?us-ascii?Q?UuvsXIPS+hH+u1dq+jd21I9zOJsI4tlc5seJRzmZOKX5I+ONduhysehroezU?= =?us-ascii?Q?mynqJEnj5wIUhc2pOb/0iPyx2L+5lsdPtO+Zs/NbG44ctgX2WqV6KVtt8hNV?= =?us-ascii?Q?sI1Kp0fUQuzkFYMXcpZwV2+sKSEEYgoIppv/sjWN3C3QIJNNqarJx1WblVzR?= =?us-ascii?Q?/IY4FGkqXvb11fsojBOH+QDKzmP8jwFNbVJLh/H2RPRQdVekcbLTpzwAKWsI?= =?us-ascii?Q?x9yALI0XzA2ReVKkqA8GxwbMvnok2rdXDQx5v1LF6PIsmj3+nB7TLaH4t980?= =?us-ascii?Q?Ltu0JrAPjM0xCDf9psxEUTFHoPWIFP2uhD6dmJVlL6WxQnX9R9baj6I2QlcT?= =?us-ascii?Q?8bRP/A4W1b1lCelzVklACIkYwSpDJJ5p05uyswSCVlKaRHQ/LV3EWM1bbTZ0?= =?us-ascii?Q?TdKZSH30UQux3j+zPx0hcJhnv/fDGtYwO2VG40vtpWG5FnLnpK094zCqN3NW?= =?us-ascii?Q?oT4yCs+8vYGOUgNyV1pd5vY+AyMn0lNubYmMCmyk2nC/1jhSL8Yaq9Pd0V1M?= =?us-ascii?Q?VHuw6VGLFJ4u3Xr3VGU4NL/ngcU9LKVmq+YuXn5x3SFyHbT2oh2lOK0IstOE?= =?us-ascii?Q?WnmQxczJAF8lvOf/7ZS6DalS4Nph+zaYx4l+8SuyY0ldqvf4WnGYDx9DuE/c?= =?us-ascii?Q?TBOLtZI/ingz1sK8zgPhv69xHW+sHjZHrjgln7z8QHahAIA=3D=3D?= X-Microsoft-Exchange-Diagnostics: 1; HE1PR0701MB2235; 6:QqYr1vLLe8mBKlke6wqcAvb0PGzeWh8vE/ogQ9O6RBEB28gb9IsQypmgQM5SgxmzHn1jSao/DpAK/9MYt6uhXROqI/mvulqq/VE8MWI0Usa2bNhxoz+kF9w2ws776iSjAXenDdvTAUHMw23BActeOeLJN2xDcVHWWDqfgiLJqf4FF9l2pL7s9pbc0sj6BV1oPudo6RDSqptEcy6iPl7z8JObh6bSyN93Dyr7tLaVh6L0epauFNxqYUgQ6vloWcmhydUawmEUk471wutLHk7BQbWTlWZgRChhhX022lsTLJ1Dx5BCXjORw6nnAVlniUEM6rCbo9N8VjeuubXTK28dcTwx/R9C6O6QCzfMmepTo+5KXHEs1+IGUy/f7psZdJGfyzPRRZB5x0jJl7HHfEgFrzvtLu1Fm4+M3u5BJr0rYlg=; 5:bLxVBOWBIB61tES8Luf2kSrJW9GixDmj+VElxWD0uZ5eBcT4SGNGFw9ufyKGncHtIq4A9yV5Pcmfqidq3/pSUK4OpV1j2DzNNoIXcEur2va40IZ6UISp1CoYB9WUTyF1kQ3HBOsolE6r3thqenTYHQ==; 24:bq6U0dpqJEq7uC7zYcMunh0yIuJPVrApRODrtBmjL1iNEOWvQkHn79jnU7n6fp6xC7LsFl7m8XWKRnPRnEKdVZm2hItXMbjI7J33uS71pq8= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; HE1PR0701MB2235; 7:fd2zgFWOPALeLsMGcVVKFvPst2XIymAPtz4+QrdL9SzI2Ytxu9llF16vfDWjStreW+A5A8fQHGPstADA4SyI3+F6JkEYOtDSgA6TjeIrdY8+DlvddIf8+rkeZcUm1WcF+BdEW+uxU3Y0ey38jOieufsySDacoYmdbvrFnRQ9guJHkWqqmsG78Plt3SBk8bVa6aaGBagwyOF1EJ7TvJc9dazzLPm6ClSjY2EBgwofhDZK/nIuJJNdPMNhP73MIYheGg/mhLu+HlVRXDgxdiQKn8uX9YDe2v4XrGm8EvI1xDumWen9S3fSdUqxA2FpprSC+3gmS1NZG08STNB9L94C9g== X-OriginatorOrg: nokia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Mar 2017 12:51:46.0622 (UTC) X-MS-Exchange-CrossTenant-Id: 5d471751-9675-428d-917b-70f44f9630b0 X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=5d471751-9675-428d-917b-70f44f9630b0; Ip=[131.228.2.37]; Helo=[hybrid2.ext.net.nokia.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0701MB2235 X-detected-operating-system: by eggs.gnu.org: Windows 7 or 8 [fuzzy] X-Received-From: 104.47.2.118 X-Mailman-Approved-At: Tue, 14 Mar 2017 10:40:22 -0400 Subject: [Qemu-devel] [RFC][PATCH 4/6] Clear the boot once list after it has been used. X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: janne.huttunen@nokia.com Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail: RSF_0 Z_629925259 SPT_0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" When the list is cleared, any attached properties are set to -1. To do this, a reference to the property needs to be stored in the list element. Signed-off-by: Janne Huttunen --- bootdevice.c | 26 ++++++++++++++++++++++---- hw/nvram/fw_cfg.c | 2 ++ hw/ppc/spapr.c | 2 ++ hw/s390x/ipl.c | 2 ++ include/sysemu/sysemu.h | 1 + 5 files changed, 29 insertions(+), 4 deletions(-) diff --git a/bootdevice.c b/bootdevice.c index b5515f8..e94d78d 100644 --- a/bootdevice.c +++ b/bootdevice.c @@ -42,6 +42,7 @@ typedef struct { =20 struct FWBootEntry { QTAILQ_ENTRY(FWBootEntry) link; + BootIndexProperty *prop; int32_t bootindex; DeviceState *dev; char *suffix; @@ -171,8 +172,10 @@ void del_boot_device_path(DeviceState *dev, const char= *suffix) do_del_boot_device_path(&fw_boot_order, dev, suffix); } =20 -static void do_add_boot_device_path(FWBootList *bootlist, int32_t bootinde= x, - DeviceState *dev, const char *suffix) +static void do_add_boot_device_path(FWBootList *bootlist, + BootIndexProperty *prop, + int32_t bootindex, DeviceState *dev, + const char *suffix) { FWBootEntry *node, *i; =20 @@ -186,6 +189,7 @@ static void do_add_boot_device_path(FWBootList *bootlis= t, int32_t bootindex, do_del_boot_device_path(bootlist, dev, suffix); =20 node =3D g_malloc0(sizeof(FWBootEntry)); + node->prop =3D prop; node->bootindex =3D bootindex; node->suffix =3D g_strdup(suffix); node->dev =3D dev; @@ -206,7 +210,7 @@ static void do_add_boot_device_path(FWBootList *bootlis= t, int32_t bootindex, void add_boot_device_path(int32_t bootindex, DeviceState *dev, const char *suffix) { - do_add_boot_device_path(&fw_boot_order, bootindex, dev, suffix); + do_add_boot_device_path(&fw_boot_order, NULL, bootindex, dev, suffix); } =20 DeviceState *get_boot_device(uint32_t position) @@ -227,6 +231,20 @@ DeviceState *get_boot_device(uint32_t position) return res; } =20 +void clear_boot_once_list(void) +{ + FWBootEntry *i, *next; + + QTAILQ_FOREACH_SAFE(i, &fw_boot_once, link, next) { + if (i->prop) { + *i->prop->bootindex =3D -1; + } + QTAILQ_REMOVE(&fw_boot_once, i, link); + g_free(i->suffix); + g_free(i); + } +} + /* * This function returns null terminated string that consist of new line * separated device paths. @@ -322,7 +340,7 @@ static void device_set_bootindex(Object *obj, Visitor *= v, const char *name, /* change bootindex to a new one */ *prop->bootindex =3D boot_index; =20 - do_add_boot_device_path(prop->bootlist, *prop->bootindex, + do_add_boot_device_path(prop->bootlist, prop, *prop->bootindex, prop->dev, prop->suffix); =20 out: diff --git a/hw/nvram/fw_cfg.c b/hw/nvram/fw_cfg.c index 316fca9..7a707fa 100644 --- a/hw/nvram/fw_cfg.c +++ b/hw/nvram/fw_cfg.c @@ -898,6 +898,8 @@ static void fw_cfg_machine_reset(void *opaque) FWCfgState *s =3D opaque; char *bootindex =3D get_boot_devices_list(&len, false); =20 + clear_boot_once_list(); + ptr =3D fw_cfg_modify_file(s, "bootorder", (uint8_t *)bootindex, len); g_free(ptr); } diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c index e465d7a..68ff980 100644 --- a/hw/ppc/spapr.c +++ b/hw/ppc/spapr.c @@ -803,6 +803,8 @@ static void spapr_dt_chosen(sPAPRMachineState *spapr, v= oid *fdt) size_t cb =3D 0; char *bootlist =3D get_boot_devices_list(&cb, true); =20 + clear_boot_once_list(); + _FDT(chosen =3D fdt_add_subnode(fdt, 0, "chosen")); =20 _FDT(fdt_setprop_string(fdt, chosen, "bootargs", machine->kernel_cmdli= ne)); diff --git a/hw/s390x/ipl.c b/hw/s390x/ipl.c index 2e2664f..0a59058 100644 --- a/hw/s390x/ipl.c +++ b/hw/s390x/ipl.c @@ -253,6 +253,8 @@ static bool s390_gen_initial_iplb(S390IPLState *ipl) ipl->iplb.scsi.ssid =3D ccw_dev->sch->ssid & 3; return true; } + + clear_boot_once_list(); } =20 return false; diff --git a/include/sysemu/sysemu.h b/include/sysemu/sysemu.h index 9acf2d9..bf3e618 100644 --- a/include/sysemu/sysemu.h +++ b/include/sysemu/sysemu.h @@ -207,6 +207,7 @@ void hmp_info_usb(Monitor *mon, const QDict *qdict); void add_boot_device_path(int32_t bootindex, DeviceState *dev, const char *suffix); char *get_boot_devices_list(size_t *size, bool ignore_suffixes); +void clear_boot_once_list(void); =20 DeviceState *get_boot_device(uint32_t position); void check_boot_index(int32_t bootindex, Error **errp); --=20 2.7.4 From nobody Mon Apr 29 08:06:10 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zoho.com; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1489502522814763.0539747473807; Tue, 14 Mar 2017 07:42:02 -0700 (PDT) Received: from localhost ([::1]:59834 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cnneC-0000ul-0l for importer@patchew.org; Tue, 14 Mar 2017 10:42:00 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:48371) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cnnNV-0003OR-OO for qemu-devel@nongnu.org; Tue, 14 Mar 2017 10:24:46 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cnnNT-0007nV-2w for qemu-devel@nongnu.org; Tue, 14 Mar 2017 10:24:45 -0400 Received: from mail-db5eur01on0117.outbound.protection.outlook.com ([104.47.2.117]:45087 helo=EUR01-DB5-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1cnnNS-0007m8-MB for qemu-devel@nongnu.org; Tue, 14 Mar 2017 10:24:43 -0400 Received: from HE1PR0701CA0065.eurprd07.prod.outlook.com (10.168.191.33) by DB6PR0701MB2230.eurprd07.prod.outlook.com (10.168.58.143) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.977.5; Tue, 14 Mar 2017 12:51:44 +0000 Received: from DB5EUR03FT062.eop-EUR03.prod.protection.outlook.com (2a01:111:f400:7e0a::205) by HE1PR0701CA0065.outlook.office365.com (2603:10a6:3:9e::33) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.977.5 via Frontend Transport; Tue, 14 Mar 2017 12:51:43 +0000 Received: from hybrid2.ext.net.nokia.com (131.228.2.36) by DB5EUR03FT062.mail.protection.outlook.com (10.152.20.197) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.961.10 via Frontend Transport; Tue, 14 Mar 2017 12:51:43 +0000 Received: from fihe3nok1346.nsn-intra.net (10.158.36.134) by fihe3nok1347.nsn-intra.net (10.158.36.135) with Microsoft SMTP Server (TLS) id 15.1.466.34; Tue, 14 Mar 2017 14:51:42 +0200 Received: from mailrelay.int.nokia.com (10.130.128.30) by fihe3nok1346.nsn-intra.net (10.158.36.134) with Microsoft SMTP Server (TLS) id 15.1.466.34 via Frontend Transport; Tue, 14 Mar 2017 14:51:42 +0200 Received: from fihe3nok0735.emea.nsn-net.net (localhost [127.0.0.1]) by fihe3nok0735.emea.nsn-net.net (8.14.9/8.14.5) with ESMTP id v2ECp54I013368 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 14 Mar 2017 14:51:05 +0200 Received: from 4FIL37951.emea.nsn-net.net (eskara3c-dhcp036133.emea.nsn-net.net [10.144.36.133]) by fihe3nok0735.emea.nsn-net.net (8.14.9/8.14.5) with ESMTP id v2ECp5ht013350; Tue, 14 Mar 2017 14:51:05 +0200 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nokia.onmicrosoft.com; s=selector1-nokia-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=zDfCUIquki5zGPwZUOpbgtzmcgSQ+GB1gioQx0ZXiSQ=; b=dlDe4zH4oJZZSitvDWFbXnTGg7ruIoH50uz4mVOZYBvGxB6NiZ0ZXaL5CJ+9nRxOJBkxiwBRfp7ORm4GSoLIJYghhg9jQ1E6qOojg53yUjeMHFfdix1FptwNdpUL5o/ymZja2ViwjD/+VOo6HY2pzg3yq59Nfk5jdRtHj87QsV4= Authentication-Results: spf=pass (sender IP is 131.228.2.36) smtp.mailfrom=nokia.com; nongnu.org; dkim=none (message not signed) header.d=none; nongnu.org; dmarc=pass action=none header.from=nokia.com; Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: Pass (protection.outlook.com: domain of nokia.com designates 131.228.2.36 as permitted sender) receiver=protection.outlook.com; client-ip=131.228.2.36; helo=hybrid2.ext.net.nokia.com; X-HPESVCS-Source-Ip: 10.144.36.133 From: Janne Huttunen To: Date: Tue, 14 Mar 2017 14:50:12 +0200 Message-ID: X-Mailer: git-send-email 2.7.4 In-Reply-To: References: MIME-Version: 1.0 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-HT: Tenant X-Forefront-Antispam-Report: CIP:131.228.2.36; IPV:NLI; CTRY:FI; EFV:NLI; SFV:NSPM; SFS:(10019020)(6009001)(39850400002)(39860400002)(39450400003)(39410400002)(39840400002)(2980300002)(438002)(199003)(189002)(9170700003)(77096006)(8936002)(50226002)(47776003)(81166006)(305945005)(53936002)(8676002)(356003)(48376002)(86362001)(6916009)(6666003)(110136004)(107886003)(106466001)(5660300001)(4326008)(38730400002)(33646002)(36756003)(118296001)(189998001)(2906002)(22756006)(76176999)(50986999)(2351001)(2950100002); DIR:OUT; SFP:1102; SCL:1; SRVR:DB6PR0701MB2230; H:hybrid2.ext.net.nokia.com; FPR:; SPF:Pass; MLV:sfv; A:1; MX:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; DB5EUR03FT062; 1:4aQjdGJkA3O62uXPlYmm4T6piHPKC+7srczpCMNCezuWiDOtkSzFGHWjH/UyYaLl4Y+OlaD67cOGSgPEc3AVn1+5fPC2ipqEjMHx/aY99ZnohJM/i2CIx2XrJzDtk9V/Y4L8ueeaSn3XGN8WQOk22f3V6ilQrbx/YhUeTQwzQhpM7mm0rv3/pcIwsGLf0H3i8LcV6diXA+AWTfR2xuwOSNBrRXPmpfjD7i7jbxKceGaToDSN59fCUyYeXhs66hCeKKcZPw0Qy/1YI/bzVhUTPQQ8u5TB7dmnZQiROBNamKZcay7G5ZglkRvSl9r3voh3ACiuTRd+mcO8BA3paRu/Kme44giLZEPXl77MJDptpCwgYXNEV8UkpPrRueAWN8IpFzBbPA505F7P3gnIkxKqNr7fHZrUz5VzIfr32Mub8YsirmDtuFVqFvYkdEB/LJS7HbV8oikhRPMu9wC1c7w5NVpUUzHvHc24ismPX+XGn64= X-MS-Office365-Filtering-Correlation-Id: 31781e34-1b62-43b6-2693-08d46ad8de07 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001)(8251501002); SRVR:DB6PR0701MB2230; X-Microsoft-Exchange-Diagnostics: 1; DB6PR0701MB2230; 3:4x92j1kitBnhHMgQdlbECIjW3AyLXcked1SL5OBZ2cP7lTPausFAFOi+DkqYkT9kI/RXDFFbpRz9K4Jpa12xLmXQ5owPfRRLz8ap3Swf5FERjDXngVrAypueOLormzw7bavnbaCkc/CO9+WYZO/edEXpV1TLQwvrq80s/HaiZl4+5pz8ZdQcV27RhZlvGawsmVfMjphfV3GItrm8sEMtm3kirFVBGtnu0S7sJ1/Lzx/+MLr+Hq7HoGv4RiNd0GX88oVSn/dyrsJohSDIG30wt2cS0V8NeuOz7ZwkTjT1SAA6Pxxi8LnXcgVXzGRyn9qfBhdmnszPy3npohCHtLftl5uUJeimG1LLEawptgkundHtK5WH8AZwsSbD2J5l0SZvgvF2fUSewYk9njwRa+fvzQ==; 25:7rcbAnRUtZAhLnx4KaMG2gHF8OAsA5MRQUNVPQJST1TDdkIiNHdTcDlEap2zmtE9qZfs+ErDDiAkKx/MltDtJDR1nwUEARa+J7HQHlfOkIy5POGIoZZaE2OIboUgDgsUeuABOpVf23bfRUKU6ck0LbTKdqNMU3jnbMVJnKSMOpQGYM42C/O3e6bFFxa2yrZ9e3vz4PaHBaKgyPu29A8DrgG/fLN8Tji6K+5ZN0bKsJN3QODYU0Eo5j3MrsO2o9lHIdXfpxm5J2Tb0nHLaAARVxIpaBX7XyVyztKhAHADrA5I5hQ5mf6woI9ypgwF6szCHp81tuwf4YId4du4kpgOzMo/nB3Qwc8AXpeYCke4NxkmtfLv/yzJxj1EP3Afu7U6slzTzcuwZFE0O7mlrzRrW8aUyBPx6exZXbVAo49dsDDSqouPAUfvHqXfxF3TVFzg8b3l7GfWR2MHIfedtH0p3g== X-Microsoft-Exchange-Diagnostics: 1; DB6PR0701MB2230; 31:8YF+Kg9dpcu/8XuFb5SGHkPuPwT9KixixLAjZm0Gs/74rh8ZgKXY+or5TtIUNTdUmtD9jsIa7C3Y+hBXwFX9WEFtUbVN4qTVfbwWwPg7PZFrooqhnKEmEID5zhQ32gw6lMnS6Axf2+Yn9wG4Svl9TSnJJIsnVmZ640oi9MxaVWOgaoxQJGwxyQ2aIsaMc4Tb+iL8saAeYfWi7K3i9n7MqIZ/C01LPI9ponmKD2u9YY9TibIfPhyy9dX4smt8YtG0HtJ1M8052d7ghK1Z4uryQdPHAll/NtqacetcrodXBr8=; 20:JC8adFAAXYuO5ymDZhRTo0afuSdgE/I4wfhljBNuCfgTgO9hB6Gkvnd1tPF6ZhNjvpPcvCLTYhoPsuBP92tAvrW19T08QWAJ6+GlsHACVY5Rn//wQKq2t3+cDQdgGBfxzvq6hsxnynAwaWsK36Wa7cizzWQjDydq6DKh/WQpOSDaoI2CNSZUQw3OrrYnG0pdIxleiojk4MsSLTAZrpznJBu9HJw/2I4cdvk7R4NeFWHihjZooGI9coQWiNOMloXnuYZtA7Xs3Xbl7e0aV9rLZUcyHyE8fcfUjEZ+848EaNmS1JHzvgypoUgp9w9kYMcfdDHRBNWHW2fUidd9qM5Lq5US53zPL0Y1yA/cIqQx9SfBfc9cI03ORxlEDHpp5RVgKv7DMG6rc8ALR5ekxTBNT+yMQQpea/TqTPP0cqjloF8n4wNZNFhFive8nm+guOHlOkeMmWjqcQtNzySOQGRKdVJao3SpwwgxXBKLvfk02dQmv5nv5UkUx8rt+K06SEw4k49yvfh/5jLBrtsTAdmlc70seD1H+G65N1nQy1694eap5tIe8nJQsJ7p/5vAavwwgOVU/0IqONfB0TXDCF6AFGD5+PZpYWPI8Nyw8c5wEQc= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(82608151540597); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040375)(601004)(2401047)(5005006)(13016025)(8121501046)(13018025)(10201501046)(3002001)(6055026)(6041248)(20161123560025)(20161123555025)(20161123562025)(20161123564025)(20161123558025)(6072148); SRVR:DB6PR0701MB2230; BCL:0; PCL:0; RULEID:; SRVR:DB6PR0701MB2230; X-Microsoft-Exchange-Diagnostics: 1; DB6PR0701MB2230; 4:0K7cMh9IMnL03d9ItgUMNBj+x8BbPuW+NbBc8ZeWtKawiIxCXPHxQ0Hg11Q570VYcPqTzKEpSS7TpTxWfdmptrPesc451QSw3US/mlVv7bZMgUc6QKrXL4dVNdft5ZAc8CFIYFvkVvNDCcXwrIx5eyl1/W2W2x5Pk6mCpCrmprkgFmHoCzAGYw4Y+5xcflqrgrHarwVQ6qUAmO9bXGfceIsdiX0MAvE4KfYxtHQRO4CfQ/Av5p5z3Sqfzbffnr8Dc0U1ejnkAtRXk+XqucfGNv7OjOEoC08d+tkvJLJ3eWW4ndZOMk+z4otQ/dlIl7NyGZIWqmvT5MWzOYmyw1rEfhTj+dBCtPLpEObl0QYPMeWT+DvbftYm6+P6piC8ptOPOyLDNNlvM2rUevirTN9OZAa8HpzR2wgidOikRvOhd+ylB6DXNWqOYJE1O3QLvYsw0oBwCOVnTfBJj77trpHbjeuBYJz1yjQUj7DYxmwiGWccZNA02sDsEoDLLIMi9y4wO/RxWAcalZ2ABZhlgmbiYwmczjS1/Amtl3zf1f973QD25HCjj8t7HT2OY/N6sL6JaVTPz8RmBm2Tq4quslVP7buW3vMDIRoCYd3AG5sHVdT7t1RxERcm/9KG3HG9gxVgZ0O4IHfVqKcyopPXar6qdgr0Y1iRuGIJtG2jzmjPLFzYvA/oXmrX3WaxGsyOYbEho1RnjWpQSzZNjqa6Mr60WA== X-Forefront-PRVS: 02462830BE X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; DB6PR0701MB2230; 23:yzpJr6DzDdB3WiCIpVJW6+WNt0Fv9aOwj/1uNlK?= =?us-ascii?Q?HBj8JxjdBTCg/qyq1xkhpXruQAF82KDc7f+1QA7a7Uq9s5578VfSOPcQuw1/?= =?us-ascii?Q?9eoeRwzkjQ+dtv9dEqbuJ/LKvEtM1J7klMxsG7lGencNzp+nF5EkipQj2LEo?= =?us-ascii?Q?VYOPfXs/4jefMAbBE2r3QJ6sjpImScnhHsr0ab2Cc6wfRTqXQWzgrL/nn2or?= =?us-ascii?Q?4ZfwYTCsQ66CrRmp765VZgpaxcgj/14lFEBBCE5XrVecYma5o0i8r7Tim1on?= =?us-ascii?Q?11R23RiuTfYgSwmDMia04hIznixAIPQqjIV3K1RrXielY+p+GM2NGPcEFP3H?= =?us-ascii?Q?k8RF/55B+A5FVz+LX6d+no/x0+/vrSmzBy1ryMve0Gxd0JqQiO7yhIv7woTz?= =?us-ascii?Q?j2lCaPTUPPKqbh82HrnwJtGxcJ5ohjDNOQUDyPAztfTd50PT5iX3cddJQA7H?= =?us-ascii?Q?Lr9P+XN0ZGh6FnmKyj8enHKbEqk+eALtzRtnztA6KbwSx3tUe1r7ImhW4TAa?= =?us-ascii?Q?P+itcNoanq7YwuxmTzhzPEIMCyUhBnzNFrw/p10eSje6e0dEqbtzSk60x2Jw?= =?us-ascii?Q?DTli2cG3tkLBal41/QWCNkKqKyJAlJZn/2fA5BXt/X+8qfiruTeNhK7bV220?= =?us-ascii?Q?PemSqKcMDF9KO5kGcmcbF/OgFiWSz8WpZ0ZAr6Y2vfxl9pq9wOrwQKHW0FXe?= =?us-ascii?Q?WZfnfGRWotuCSsC/n6V8TVIyhlz5YqLzFRiTSuVOBBMdtTVOCZ5rRstkcl+t?= =?us-ascii?Q?ieme1wujN7usPuuxROSwT5MQNFqMwP7oTe2pg3ElF+Pwhs8dmwDX8yDtIRNr?= =?us-ascii?Q?zt1yzOUE04W2bvNs5awVS2A7rsNlEQvC2+ikexy1UsY9+/dzha9pglt4a6BR?= =?us-ascii?Q?6p/SmUrB3x+uL1Eh54VK4gm7KjNX86EyOHe+7TWDIBrczDhglCM1Qw+T2IaY?= =?us-ascii?Q?mfJuT/1V4qDt0IudIN1LkNSEKLsPK7wjtzkAPx584SlddPzLPaKuR25VUZUo?= =?us-ascii?Q?OHbFIbJ0Qqm80WDyNcOiDZsBo?= X-Microsoft-Exchange-Diagnostics: 1; DB6PR0701MB2230; 6:l1qA4WagkBVD3d4SxcwUqhFskS28LkyeZfY0tN+MXqDNaru+feMLV/oO1OV6O0wrz6OlgMfAfU9epB9Co0R6ioKcGQkKaex0nJUwEHQ/FOFRde3cJM9yANWRpU8S87L3OlM5M8NoDNz7Un/PW/aIB3rsf5ltrKDrQbx4LHReen+Bhh4z6KrFBQdXOwJnox6gCfHEeGqzcwldT8eyF9ilNZCMTOr89907uvlDLRpJtq4fmIM/8QJNaHTEI4Z4a5xmoOADabWZr072wD9i/BLuHI+gKGGZwzA809q90ALzjzyUiQHejeMrZ+85gg2nj+3oaBLRBuyMC3mxgumc+XHNrCz7dOC9z94f9UTjX4L6Uu3W0MxsHUKcCzFXU8wHOQAQ2mALfo4uDUCZdhu2jJpY95Od77t2maB5pS8cEuJIFbw=; 5:ZXJIrWNbCQJDNVTadqO4nD3TUPt99swfOOXnHdE7dAe6KXphjuTiOR4MegxABr5RdKBf5JiEwh8cN+0tgpO7K0dysalvexblTn7wmjOnkXn14fg680U4lFHRtA+uD5x4xwbnWh/mttGMzI7nWSFFCg==; 24:xNjAbVviufFMoWsIWe+4toKfA86C+c7vYAjOXL4YmSZKIwUQ0EP3CBg+DYDG1IIVqvbnQ1BGy7B3TWl6D1186BA7D9bcZWiVR6tQv9DAsII= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; DB6PR0701MB2230; 7:gCVwAu7mBk/61bhVLMxDChj7uQZ5vkrDCEk5pt1oPcjNdnbSRxysFWQSGzsfTbd2aXdVo8bhpCfIU9jS4IYd32n31ZveBGDCO5JsY744Kl7wr1RipsmFRkhv8GLdJnK+FcQ6hz0XwSPCm9URon1xAoaGzxggHCdnYHlmjbwdtnR6so4daBmOx5tYVYj3qZWHX5PDx4JGwdWE0LOfZQoZUEVhTgB7DJsuP8juFzkrVBnO9RcwZf86Qx7SzR/mMlvIuVj6ZE+FdEaRVBRdlryUTSRguXChG3gaV6iL4h4qR2BZqUKUYMveMSdr+Q1gOetv1ddxq7MJXnyJd9n15oFxyw== X-OriginatorOrg: nokia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Mar 2017 12:51:43.5479 (UTC) X-MS-Exchange-CrossTenant-Id: 5d471751-9675-428d-917b-70f44f9630b0 X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=5d471751-9675-428d-917b-70f44f9630b0; Ip=[131.228.2.36]; Helo=[hybrid2.ext.net.nokia.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB6PR0701MB2230 X-detected-operating-system: by eggs.gnu.org: Windows 7 or 8 [fuzzy] X-Received-From: 104.47.2.117 X-Mailman-Approved-At: Tue, 14 Mar 2017 10:40:22 -0400 Subject: [Qemu-devel] [RFC][PATCH 5/6] Support "bootonceindex" property for virtio-net interfaces. X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: janne.huttunen@nokia.com Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail: RSF_0 Z_629925259 SPT_0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Signed-off-by: Janne Huttunen --- hw/net/virtio-net.c | 3 +++ hw/virtio/virtio-pci.c | 2 ++ include/net/net.h | 1 + 3 files changed, 6 insertions(+) diff --git a/hw/net/virtio-net.c b/hw/net/virtio-net.c index c321680..928b60b 100644 --- a/hw/net/virtio-net.c +++ b/hw/net/virtio-net.c @@ -2016,6 +2016,9 @@ static void virtio_net_instance_init(Object *obj) device_add_bootindex_property(obj, &n->nic_conf.bootindex, "bootindex", "/ethernet-phy@0", DEVICE(n), NULL); + device_add_bootonceindex_property(obj, &n->nic_conf.bootonceindex, + "bootonceindex", "/ethernet-phy@0", + DEVICE(n), NULL); } =20 static void virtio_net_pre_save(void *opaque) diff --git a/hw/virtio/virtio-pci.c b/hw/virtio/virtio-pci.c index 5ce42af..abfa5bd 100644 --- a/hw/virtio/virtio-pci.c +++ b/hw/virtio/virtio-pci.c @@ -2322,6 +2322,8 @@ static void virtio_net_pci_instance_init(Object *obj) TYPE_VIRTIO_NET); object_property_add_alias(obj, "bootindex", OBJECT(&dev->vdev), "bootindex", &error_abort); + object_property_add_alias(obj, "bootonceindex", OBJECT(&dev->vdev), + "bootonceindex", &error_abort); } =20 static const TypeInfo virtio_net_pci_info =3D { diff --git a/include/net/net.h b/include/net/net.h index 99b28d5..de98b883 100644 --- a/include/net/net.h +++ b/include/net/net.h @@ -36,6 +36,7 @@ typedef struct NICConf { MACAddr macaddr; NICPeers peers; int32_t bootindex; + int32_t bootonceindex; } NICConf; =20 #define DEFINE_NIC_PROPERTIES(_state, _conf) \ --=20 2.7.4 From nobody Mon Apr 29 08:06:10 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zoho.com; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1489526759936121.47680680282622; Tue, 14 Mar 2017 14:25:59 -0700 (PDT) Received: from localhost ([::1]:33561 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cntx8-0002pG-Kv for importer@patchew.org; Tue, 14 Mar 2017 17:25:58 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:57492) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cntwe-0002oz-2Y for qemu-devel@nongnu.org; Tue, 14 Mar 2017 17:25:29 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cntwZ-0004sG-34 for qemu-devel@nongnu.org; Tue, 14 Mar 2017 17:25:28 -0400 Received: from mail-eopbgr00099.outbound.protection.outlook.com ([40.107.0.99]:49168 helo=EUR02-AM5-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1cntwY-0004rX-NK for qemu-devel@nongnu.org; Tue, 14 Mar 2017 17:25:23 -0400 Received: from DB6PR07CA0070.eurprd07.prod.outlook.com (10.175.237.160) by AM4PR0701MB2228.eurprd07.prod.outlook.com (10.168.37.143) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.947.2; Tue, 14 Mar 2017 12:51:43 +0000 Received: from AM5EUR03FT014.eop-EUR03.prod.protection.outlook.com (2a01:111:f400:7e08::204) by DB6PR07CA0070.outlook.office365.com (2603:10a6:6:2a::32) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.977.5 via Frontend Transport; Tue, 14 Mar 2017 12:51:43 +0000 Received: from hybrid2.ext.net.nokia.com (131.228.2.37) by AM5EUR03FT014.mail.protection.outlook.com (10.152.16.130) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.961.10 via Frontend Transport; Tue, 14 Mar 2017 12:51:43 +0000 Received: from fihe3nok1347.nsn-intra.net (10.158.36.135) by fihe3nok1348.nsn-intra.net (10.158.36.136) with Microsoft SMTP Server (TLS) id 15.1.466.34; Tue, 14 Mar 2017 14:51:42 +0200 Received: from mailrelay.int.nokia.com (10.130.128.30) by fihe3nok1347.nsn-intra.net (10.158.36.135) with Microsoft SMTP Server (TLS) id 15.1.466.34 via Frontend Transport; Tue, 14 Mar 2017 14:51:42 +0200 Received: from fihe3nok0735.emea.nsn-net.net (localhost [127.0.0.1]) by fihe3nok0735.emea.nsn-net.net (8.14.9/8.14.5) with ESMTP id v2ECp57f013372 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 14 Mar 2017 14:51:06 +0200 Received: from 4FIL37951.emea.nsn-net.net (eskara3c-dhcp036133.emea.nsn-net.net [10.144.36.133]) by fihe3nok0735.emea.nsn-net.net (8.14.9/8.14.5) with ESMTP id v2ECp5hu013350; Tue, 14 Mar 2017 14:51:05 +0200 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nokia.onmicrosoft.com; s=selector1-nokia-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=EGmnOGe9p+A05v3y1rPXwx6/D8dqQMfL+jbz/geFtaI=; b=Ubg4aU6wdhdkhXRE1UiQD4Gc/IRwU4Ky5xHaw6QkEjRXlRrlFyubj7SYr1e5jkc+sSvkhrWH/vdHNlBabA8+mAHh0Pf2t+eJNMUsa0PmXGsBSS4We1n2fQ8B+mVtiIvYvCPAgmtQCpPNYb5ocpEpR3qJ+cK4kddKvDGgI9T4MOk= Authentication-Results: spf=pass (sender IP is 131.228.2.37) smtp.mailfrom=nokia.com; nongnu.org; dkim=none (message not signed) header.d=none; nongnu.org; dmarc=pass action=none header.from=nokia.com; Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: Pass (protection.outlook.com: domain of nokia.com designates 131.228.2.37 as permitted sender) receiver=protection.outlook.com; client-ip=131.228.2.37; helo=hybrid2.ext.net.nokia.com; X-HPESVCS-Source-Ip: 10.144.36.133 From: Janne Huttunen To: Date: Tue, 14 Mar 2017 14:50:13 +0200 Message-ID: X-Mailer: git-send-email 2.7.4 In-Reply-To: References: MIME-Version: 1.0 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-HT: Tenant X-Forefront-Antispam-Report: CIP:131.228.2.37; IPV:NLI; CTRY:FI; EFV:NLI; SFV:NSPM; SFS:(10019020)(6009001)(39840400002)(39860400002)(39450400003)(39410400002)(39850400002)(2980300002)(438002)(189002)(199003)(9170700003)(47776003)(50986999)(76176999)(2351001)(189998001)(33646002)(36756003)(106466001)(48376002)(5660300001)(118296001)(6916009)(6666003)(2950100002)(2906002)(356003)(38730400002)(110136004)(305945005)(50226002)(81166006)(8676002)(8936002)(107886003)(77096006)(53936002)(22756006)(86362001)(4326008); DIR:OUT; SFP:1102; SCL:1; SRVR:AM4PR0701MB2228; H:hybrid2.ext.net.nokia.com; FPR:; SPF:Pass; MLV:sfv; MX:1; A:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; AM5EUR03FT014; 1:y5s/b94ab5B3J+ATQm0FvbhdnQG8LuUWW+LrFH2RUFTo6vXN7gJYKl+97irS5N0SC6CF75ZEGi/EOIjiT4XsYvWsf4DABewukHToKU37bFYFgzfjnvXrxvOD2cy3PHh8MrUb5uudxx1ohbSz0PF5dRW/SqlZD3Qz3oJXV+FVoB++e6vJ0+HJWJOBMBjAF4ZRq+bvAeE/IsExCZxgCEcRcvRkbAyLrvms2xipsxDUHlzmvMMXhq/RSGm/TYGWJBRqkpGMd30hwv1riV2719aQudcjumE8tGypXnla7ysnLSbuFg9tn8hiohZgj9g3Vx3sU947pZeQm1xHK6YUjOrUlmh8MWma5UVGhCznI+w7vG4dtbVuBVyTVljBxRijfpcKOykKEZ4X07QnIGlBdzDEhtPuay3evH1/OPt5lFp0Ttbdxg3R0paSHTQpnO1RF6Zkb9SSgsLpA3Bk97AYiBu0NDO/occj9AX1HGxPg/QWE9k= X-MS-Office365-Filtering-Correlation-Id: 04e48b26-c92b-4c73-e393-08d46ad8de1d X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001)(8251501002); SRVR:AM4PR0701MB2228; X-Microsoft-Exchange-Diagnostics: 1; AM4PR0701MB2228; 3:XMi7IH7WAo6J/sL8iHxqRM6VWcxqtGCshMhOEn/0R1h0dxUUWRY4Up/LNM7mWk12Le8qrV8TI/WEODW1HygqenfXslbzBEMU5eT/PsWvId1v7pbMCpNmoM8eXJrB69vAze69zXr+uRzNDM+XIBmHTgiSEzC6R6/+S/5mrjKOhYE8I+EBkQb/l1/kTpO9WTauL+NW9Cz9hk7+e1zjWOINhe4BSymqLNNURt4xMMZYo5JjOEcEuLQcF35eaPTuxeD0mMd2G6MNbfzLiMzL2ltC3LWDN0kvqpenyyO1rwiQewUJG4ZpmoMVpD9zlh2FlAeBgylg1CQI8WDOL8rjen39KaejsNa2Dki2TnQxZGJgpX7jMzrbrXS6Sxk6EHqHNF3FkID4Cd86GlOLZw+oCWEQdg==; 25:znxox8jgwxDXA3XzoUGtALZe6OhYmsQDlHVyGwEV4FEqm4FnCi0CTMDdo+4ockFfZUDxo4PQ7zfqpLedwpfAq/IB6cN2tTc1oaNhDXRaagvnnieddufM+ZEn9TLJIgaW1sBL6s/g30ej0epB29xtcd98a5DrAgq3FT3R6rKLNCDgT7Y9+bSdmr5INovgnu4DNOjWXuEPx43064NCX7oqvbYtbCfCcwulHzSE/sl9z5vx25+4Flwd/gRWjVOMUBuMx4jUNHrz1DtPQ3TImDv0cFyeH7oqbtEYr2I1w6HmrMJuaf6+W2tkBJmcoP03HBqc2kySojIAXH2ZONR72OIpK05SXC3TTyPWoBKmzo3FIaSuy59KsFMdXFqKegsHYuwtmoQX1xglxWv4Ngn+ooOOrh3uYACB6aAq2rcxBRbGnJdoau1dWUN5NXs/Kaz1cnOsEIztRcAnMzU75uUdY+L4yQ== X-Microsoft-Exchange-Diagnostics: 1; AM4PR0701MB2228; 31:bXFSe6TdeBjuzp6e7kVp4gnC8Up5n86wGsqZIpKNReyofd5lfpoGik/hAGFHQRmmAC0jHrb+TAdij3RmcH0WuVnNv3XswfiqP/h/CXaz5WswlO7JhA8CCXBtHWsW98CtMMaQOjUigpcWZ7izB8wpPzTDH2XUCJYf7tNjMbE224c632keNGelcrqFQBsbvRSwl/9ncxsxoPHN1tpoF7MxJ1CAVXvoWgVK28gJBXr68faZ5yW64UCF1G2rn2Ma8H4M72J50fSWWKXKNujUatPZ9NHfP+98zrvaoqiIovLsin4=; 20:bNe0TdS3VpLrkDrINKg/H+up619RcR1SUtF/vN4hd+QDx7d1eEgBvmeEopcDTlfqC1uS4FlsuAkaF71yIEWAKjeRO6vpPD2gZ9sQt3bt5qXyiSrPsVEyo2FAF2bRIAXdZ4vzMK4mdSHyilxRnxF8MB1+cy1y/TIKOco1bqRFVq4eqA1LhnV0HlDTxHsXi/vVqqkw72//Zr40OszXrry5e7DvYGju0FtHGVICZd+zdEGjR16HnnXm6E/Dm9mpVJB6SpjaL7zZhU42s+FR5mBIa6SXjry7EmxwQZMq7p2qke+cvquuZngLnIKfv6rFPWyDTssiMjzQRgJ9jiv6uZ0Mhyz537EGsaiwc1r2AX8OoErvD05D9s/LJFj/S0q5+b0HL6cWgNE9JYRySCNSbHXLkkttsqO0mWSb6FqBGTJk4pAmiam10T8pOAEvl2G4OSUjOXcFAesVRMzuLL0tejs38MK1m+2jcrC7x7ir5DDEcvBcCA9juXwKqG/QNWSHj03mHt+Og7jJARXGtkD2DbGCV6SQbDSmTXg++nvahnnRloZcaRLHydJge+LVRlTOVBUR9IyQpOXpbtS26XvbEKxc8ONpxJJpxuwj6NpIZRMMKfw= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(82608151540597); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040375)(601004)(2401047)(13016025)(13018025)(8121501046)(5005006)(3002001)(10201501046)(6055026)(6041248)(20161123564025)(20161123562025)(20161123560025)(20161123558025)(20161123555025)(6072148); SRVR:AM4PR0701MB2228; BCL:0; PCL:0; RULEID:; SRVR:AM4PR0701MB2228; X-Microsoft-Exchange-Diagnostics: 1; AM4PR0701MB2228; 4:5fDYn/xddWXo56/DkEo+nHt/qhZ3k1CBAzVVqdQjIX/X6B3Et7TacP2KV0NVG4yrnnQ9L7IbNzz7mK9oHIEMvkbc3rvjaPchAYHgiaz/Gem9Z50v4UCKHw7kNqrzKDqoKM0FLSJko1h6B1RSQAaKlQ1BzjggG12hgAcnFnkH06VTl0rLCuCAsPuVilsuo4jefdzzlP5wAlpXTKfx6jf1YUhnCEwT6sA4RM/6jIz65lYt9wVPAoCeW/gOvIqW8FepIjtnezRq7u0VTyVMpKs662gKQZqx0vR6vGoS/eg8/x0zifWdt8xpPm0uNPWcIxjs4BEmpHfm0vaUD7Tg18rHfyJMdrfgo2zmKt+G1Os3+2vBMLkPyMfu5CEGoPrYjx4oWRUHNb9Jlt9xSzasqhamXq16HJXcm0lqDzJhGjzxRo0uHIMG9YgDhyX/MnnzHbHwsT9iOzpdx5io3CmYzi9RjkQ7ePfoQE99BELoHHuWmYONLDQMEHzb0rv+8rHxGpHw2os1cQMWUujVe4rt+dnJwLt00+5HPribOR8sLjxOLd4LNfdXBDXPvCtjqEMUCZYvGTH/xFJqQarfLFA7EvN+PMdYKU7dhYYasMRrzwMzBGBeI1sNfNMnnRMKRJCfbeW4kos7gw0AI+iWFUmzg4pZi5IN8HVo7IBlwPZrN+3EdymH8/5VrDW8srCNEH1PyM7enCN8hHLDEwcZ7zFiTQTm/g== X-Forefront-PRVS: 02462830BE X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; AM4PR0701MB2228; 23:d+US+UdUV2LFCIL9C7nZ3kXkjMMeZkE5Ne0TEUF?= =?us-ascii?Q?2kJESLKram7OoxVxM20eQcI5ZosE3tp9gwoio9WUAsRPJtQnC/RCe+Q3MTdG?= =?us-ascii?Q?qu1dzTMrzc6o6ODtZM/Idmp8FGJWHcEebbuAYbxYB4PQj4cpHefFbeBFj7Tm?= =?us-ascii?Q?0pSAvbWPayb97KwAXPuDp2tLEmKGxEZE4Nr8gqr1EUGcqX1OMPDp6KWm7xI1?= =?us-ascii?Q?Yw/FcJt8ss+TaYCoh8q5gkPuGJ5DGko3vRjfjxHRYa+RnPRqjA5dR/7+P93q?= =?us-ascii?Q?hJ6c5rvdM9k4VvkIj/z2f7/6HQ5oA752SBefVeM+zofNFwPBZb/JvDcOsrn8?= =?us-ascii?Q?t0GLpEquS6nkjB9RQt/y3WNYxQuEXnr0+IvqBqjvUTFgsRlzUH5+NtVUHT/d?= =?us-ascii?Q?k1DvaiV95AfHVGBN5Zm/eDEArchmVdFespW1AOT6YQ8Mud9g8yDiaVtclVFr?= =?us-ascii?Q?REY0iRADMD8jP6BESqdUI2xPRU2zMkUi0G4D2Ul5/K3HDo3lXb80dPz6xPJ/?= =?us-ascii?Q?YFPSSq0S9y7WO1mTC06LRZpMIGB+/vvs5J27YpjMoXCm+V1lrmrOAEkOdkx2?= =?us-ascii?Q?NmAD71eJDvU1YDU4fbrDWOA6QThKzlOPiOYOIuAnRSuhasb/cxn1iJ/Lh6Nf?= =?us-ascii?Q?MLAN+lO+n05x4EgHJKINp8gNtpOK83WXdd1UeYIxKB2vKG+xFRkTGylYpt+1?= =?us-ascii?Q?vH1YWcKAOVzbD8adgi/SYjT4HNqm52aXDQWK/7TMzUG4waI6YI//UI4qPyra?= =?us-ascii?Q?z99+8SL6woLK6xMgANRWuVYxLlV/g54XKw9vlTv01Yu+lY9OH21e8WbeJf7i?= =?us-ascii?Q?Cpj1rnRasdsZq64NTdHTEwnQqzdE5guKkr7IuaE2hvnlpov/BJe2mg3eqft/?= =?us-ascii?Q?f35wK+lhZ5AeXIKnSwPjAXCeAaMf2xLfMjlYt1ycym5eUIBAiIxynO+7FUMG?= =?us-ascii?Q?3uxY/2rLRhHJcOp+DRQamjDR0HVj8AowN04y09uix3vYIoDdu4TyRCnc7skP?= =?us-ascii?Q?jZmbUL7fxCBO0Hievz/DbyQAs?= X-Microsoft-Exchange-Diagnostics: 1; AM4PR0701MB2228; 6:v/I3z/b8/YRZ68LoE4hAOSI7dnTu7pjqLfN6O3m2p62GvkiIIu72DHTo3wXHCH7YGlvU/3VicrQ71tHeDZV2wtEq18LymqIlCBQP3l8D2OmWYfr9IDD/Zvhk71ubLoPi07OZPMFWT3mj+CCEqF45v9dKs0HAnahNRzagHScorkC8eQqVK8Exp/xYrCgVCjeKn7mYp9sDeJmAdJ2jhuwtCdiCwFgHtcXUIsf4kDeX2xdPg0a0bqjcj5334Zjt3I8QKW9HBVC1qWUfvEa5jRsURQzLpoMzh4HKCVq9GhcNKHFTq4rT43t7AlpNzkazgcnyrFMQOVeHTJ93TlGJGC42S0sILTupjGcm1+TpnekgquGEfsV8rWlosc4eosnI9BFaSbzIh8UZeA6Asjwyfyf4+8ndV2qKM8oam+0m2NuZd2I=; 5:7gpJf4o+C6kOEve2Oyc2lltIsygVG4QndTDTyC11lomBztYkoCw3gzjSQZU3+hrJQomYS4vFaA19Qk5oHNV9PIj1Pw3L6d49yrlsuU/KQJWGhbXp8Y5H8geC6gw28ArWgrE7kq9HKhiNmsrle178ZQ==; 24:cnjNoRUfLmNI95Ag7ZkHqksiGmaXVcstXqItudr70tu5CKuttBtlpSIXLo01QjBTK9W7xAolXuIc8zp6+GLatWYDZ5StP6N33MtWea8JM/Y= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; AM4PR0701MB2228; 7:ytpxVZ0cxqxtKzCbJ+jNxJZ6OSzLSGOD6JeMwr8IwWj39AiXRdFvksmjj3iV8Rpcb8S+mFSVrxr9YdJDCkyLn5qLwTN5VTSEMCjcsPlx4qKoivZHNaJG2JY69n5y4qxSQGu6Op5DSoKWaV433xQDjHOolbOOB8mdskGBXGk5rsgqZlelT7Uu90+//p3MRVDLQZ6RtgD/A+eNgUdyhYsuRuLntQuM93GsT+R0YPXxJdWhDvvcQ+Hyu0sOCfGi2mVHOPj++lGHjeCyMTHglUrKqaCpbCImtKD/1V8BMzaT8er5KiX77OFqVSvNEePxaOqVItx/QcLCQpiiZGSfnJPE0g== X-OriginatorOrg: nokia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Mar 2017 12:51:43.7126 (UTC) X-MS-Exchange-CrossTenant-Id: 5d471751-9675-428d-917b-70f44f9630b0 X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=5d471751-9675-428d-917b-70f44f9630b0; Ip=[131.228.2.37]; Helo=[hybrid2.ext.net.nokia.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM4PR0701MB2228 X-detected-operating-system: by eggs.gnu.org: Windows 7 or 8 [fuzzy] X-Received-From: 40.107.0.99 Subject: [Qemu-devel] [RFC][PATCH 6/6] Support "bootonceindex" property for SCSI disks. X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: janne.huttunen@nokia.com Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail: RSF_0 Z_629925259 SPT_0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Signed-off-by: Janne Huttunen --- hw/scsi/scsi-bus.c | 3 +++ include/hw/block/block.h | 1 + 2 files changed, 4 insertions(+) diff --git a/hw/scsi/scsi-bus.c b/hw/scsi/scsi-bus.c index 5940cb1..26e38ab 100644 --- a/hw/scsi/scsi-bus.c +++ b/hw/scsi/scsi-bus.c @@ -2084,6 +2084,9 @@ static void scsi_dev_instance_init(Object *obj) device_add_bootindex_property(obj, &s->conf.bootindex, "bootindex", NULL, &s->qdev, NULL); + device_add_bootonceindex_property(obj, &s->conf.bootonceindex, + "bootonceindex", NULL, + &s->qdev, NULL); } =20 static const TypeInfo scsi_device_type_info =3D { diff --git a/include/hw/block/block.h b/include/hw/block/block.h index df9d207..f3e76c3 100644 --- a/include/hw/block/block.h +++ b/include/hw/block/block.h @@ -22,6 +22,7 @@ typedef struct BlockConf { uint16_t min_io_size; uint32_t opt_io_size; int32_t bootindex; + int32_t bootonceindex; uint32_t discard_granularity; /* geometry, not all devices use this */ uint32_t cyls, heads, secs; --=20 2.7.4