List cover comments

GET /api/covers/41185/comments/?format=api&order=id
HTTP 200 OK
Allow: GET, HEAD, OPTIONS
Content-Type: application/json
Link: 
<http://patches.dpdk.org/api/covers/41185/comments/?format=api&order=id&page=1>; rel="first",
<http://patches.dpdk.org/api/covers/41185/comments/?format=api&order=id&page=1>; rel="last"
Vary: Accept
[ { "id": 82598, "web_url": "http://patches.dpdk.org/comment/82598/", "msgid": "<039ED4275CED7440929022BC67E706115323E1FC@SHSMSX103.ccr.corp.intel.com>", "list_archive_url": "https://inbox.dpdk.org/dev/039ED4275CED7440929022BC67E706115323E1FC@SHSMSX103.ccr.corp.intel.com", "date": "2018-06-26T01:19:25", "subject": "Re: [dpdk-dev] [PATCH 0/8] Remove IPC threads", "submitter": { "id": 504, "url": "http://patches.dpdk.org/api/people/504/?format=api", "name": "Qi Zhang", "email": "qi.z.zhang@intel.com" }, "content": "Hi Anatoly and Thomas:\n\nSorry for raise this late, but seems merge mp thread into interrupt thread gives problem to enable hotplug on secondary [1].\n\nThe issue is, when secondary want to attach a share device, it send request to primary\nThen primary is running in mp callback (mp thread) to attach device, it will call rte_malloc which get chance to increase heap that will do sync IPC,\nYou know, this is the limitation we can't do sync IPC in mp thread itself. so the solution is try to move real work to a separate thread which has no limitation to do sync IPC, \nand interrupt thread is the good candidate, because we just need to call rte_eal_set_alarm and we don't need to worry about the execution sequence.\n\nBut if we merge mp thread into interrupt thread, the solution will not work, we may need to create specific temporal thread to handle callback, but this looks like some re-build which we already have.\nSo I think we need to revisit if we need to merge the thread before we have a good solution for such kind of issue.\n\nThanks\nQi\n\n[1] https://mails.dpdk.org/archives/dev/2018-June/105018.html\n\n\n> -----Original Message-----\n> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Anatoly Burakov\n> Sent: Friday, June 15, 2018 10:25 PM\n> To: dev@dpdk.org\n> Cc: Ananyev, Konstantin <konstantin.ananyev@intel.com>;\n> thomas@monjalon.net; Richardson, Bruce <bruce.richardson@intel.com>\n> Subject: [dpdk-dev] [PATCH 0/8] Remove IPC threads\n> \n> As previously discussed [1], IPC threads need to be removed and their\n> workload moved to interrupt thread.\n> \n> FreeBSD did not have an interrupt thread, nor did it support alarm API. This\n> patchset adds support for both on FreeBSD. FreeBSD interrupt thread is based\n> on kevent, FreeBSD's native event multiplexing mechanism similar to Linux's\n> epoll.\n> \n> The patchset makes FreeBSD's interrupts and alarm work just enough to\n> suffice for purposes of IPC, however there are really weird problems observed.\n> Specifically, FreeBSD's kevent timers are really slow to trigger for some reason,\n> sleeping on a 10ms timer as much as 200ms before waking up. Interrupt\n> handling on fd's is also a bit flaky.\n> \n> It has also been observed that both problems go away if we do not affinitize\n> master lcore (by commenting relevant code out [2]). It is not known why these\n> problems are observed, nor it is clear what a solution might entail.\n> \n> For the purposes of making IPC work and having rudimentary support for\n> alarm and interrupt API's, this patchset works fine. However, because of the\n> above described issues, documentation will not be updated to indicate\n> support for interrupts on FreeBSD at this time.\n> \n> [1] http://dpdk.org/dev/patchwork/patch/36579/\n> [2] http://dpdk.org/browse/dpdk/tree/lib/librte_eal/bsdapp/eal/eal.c#n729\n> \n> Anatoly Burakov (4):\n> ipc: remove IPC thread for async requests\n> eal/bsdapp: add interrupt thread\n> eal/bsdapp: add alarm support\n> ipc: remove main IPC thread\n> \n> Jianfeng Tan (4):\n> eal/linux: use glibc malloc in alarm\n> eal/linux: use glibc malloc in interrupt handling\n> eal: bring forward init of interrupt handling\n> eal: add IPC type for interrupt thread\n> \n> lib/librte_eal/bsdapp/eal/eal.c | 10 +-\n> lib/librte_eal/bsdapp/eal/eal_alarm.c | 299 +++++++++++-\n> lib/librte_eal/bsdapp/eal/eal_alarm_private.h | 19 +\n> lib/librte_eal/bsdapp/eal/eal_interrupts.c | 460 +++++++++++++++++-\n> lib/librte_eal/common/eal_common_proc.c | 243 ++++-----\n> .../common/include/rte_eal_interrupts.h | 1 +\n> lib/librte_eal/linuxapp/eal/eal.c | 10 +-\n> lib/librte_eal/linuxapp/eal/eal_alarm.c | 9 +-\n> lib/librte_eal/linuxapp/eal/eal_interrupts.c | 19 +-\n> test/test/test_interrupts.c | 29 +-\n> 10 files changed, 899 insertions(+), 200 deletions(-) create mode 100644\n> lib/librte_eal/bsdapp/eal/eal_alarm_private.h\n> \n> --\n> 2.17.1", "headers": { "Return-Path": "<dev-bounces@dpdk.org>", "X-Original-To": "patchwork@dpdk.org", "Delivered-To": "patchwork@dpdk.org", "Received": [ "from [92.243.14.124] (localhost [127.0.0.1])\n\tby dpdk.org (Postfix) with ESMTP id 57A372C23;\n\tTue, 26 Jun 2018 03:19:32 +0200 (CEST)", "from mga03.intel.com (mga03.intel.com [134.134.136.65])\n\tby dpdk.org (Postfix) with ESMTP id 9E2252C18\n\tfor <dev@dpdk.org>; Tue, 26 Jun 2018 03:19:29 +0200 (CEST)", "from fmsmga005.fm.intel.com ([10.253.24.32])\n\tby orsmga103.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384;\n\t25 Jun 2018 18:19:28 -0700", "from fmsmsx106.amr.corp.intel.com ([10.18.124.204])\n\tby fmsmga005.fm.intel.com with ESMTP; 25 Jun 2018 18:19:28 -0700", "from shsmsx151.ccr.corp.intel.com (10.239.6.50) by\n\tFMSMSX106.amr.corp.intel.com (10.18.124.204) with Microsoft SMTP\n\tServer (TLS) id 14.3.319.2; Mon, 25 Jun 2018 18:19:27 -0700", "from shsmsx103.ccr.corp.intel.com ([169.254.4.51]) by\n\tSHSMSX151.ccr.corp.intel.com ([169.254.3.116]) with mapi id\n\t14.03.0319.002; Tue, 26 Jun 2018 09:19:25 +0800" ], "X-Amp-Result": "SKIPPED(no attachment in message)", "X-Amp-File-Uploaded": "False", "X-ExtLoop1": "1", "X-IronPort-AV": "E=Sophos;i=\"5.51,272,1526367600\"; d=\"scan'208\";a=\"240245918\"", "From": "\"Zhang, Qi Z\" <qi.z.zhang@intel.com>", "To": "\"Burakov, Anatoly\" <anatoly.burakov@intel.com>, \"dev@dpdk.org\"\n\t<dev@dpdk.org>", "CC": "\"Ananyev, Konstantin\" <konstantin.ananyev@intel.com>,\n\t\"thomas@monjalon.net\" <thomas@monjalon.net>, \"Richardson, Bruce\"\n\t<bruce.richardson@intel.com>", "Thread-Topic": "[dpdk-dev] [PATCH 0/8] Remove IPC threads", "Thread-Index": "AQHUBLS2PKFie3txNkSRAR62oKRw56RxvtGA", "Date": "Tue, 26 Jun 2018 01:19:25 +0000", "Message-ID": "<039ED4275CED7440929022BC67E706115323E1FC@SHSMSX103.ccr.corp.intel.com>", "References": "<cover.1529071026.git.anatoly.burakov@intel.com>", "In-Reply-To": "<cover.1529071026.git.anatoly.burakov@intel.com>", "Accept-Language": "en-US", "Content-Language": "en-US", "X-MS-Has-Attach": "", "X-MS-TNEF-Correlator": "", "x-titus-metadata-40": "eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiNzhiN2VlZWUtYmVhZS00NmJiLTgzMmYtMzlkMzk5NGU1ZDg5IiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX05UIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE3LjEwLjE4MDQuNDkiLCJUcnVzdGVkTGFiZWxIYXNoIjoiZHVRRXMzUnNcL3B0WTdJTEFXNVJ1OUtTM09UdFVmQmZWQVQ3YmczY1lMZmdwQ1dQUGN5KzhJSFhrRlNKekNBd3YifQ==", "x-ctpclassification": "CTP_NT", "dlp-product": "dlpe-windows", "dlp-version": "11.0.200.100", "dlp-reaction": "no-action", "x-originating-ip": "[10.239.127.40]", "Content-Type": "text/plain; charset=\"us-ascii\"", "Content-Transfer-Encoding": "quoted-printable", "MIME-Version": "1.0", "Subject": "Re: [dpdk-dev] [PATCH 0/8] Remove IPC threads", "X-BeenThere": "dev@dpdk.org", "X-Mailman-Version": "2.1.15", "Precedence": "list", "List-Id": "DPDK patches and discussions <dev.dpdk.org>", "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n\t<mailto:dev-request@dpdk.org?subject=unsubscribe>", "List-Archive": "<http://mails.dpdk.org/archives/dev/>", "List-Post": "<mailto:dev@dpdk.org>", "List-Help": "<mailto:dev-request@dpdk.org?subject=help>", "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n\t<mailto:dev-request@dpdk.org?subject=subscribe>", "Errors-To": "dev-bounces@dpdk.org", "Sender": "\"dev\" <dev-bounces@dpdk.org>" }, "addressed": null }, { "id": 82601, "web_url": "http://patches.dpdk.org/comment/82601/", "msgid": "<039ED4275CED7440929022BC67E706115323E2E4@SHSMSX103.ccr.corp.intel.com>", "list_archive_url": "https://inbox.dpdk.org/dev/039ED4275CED7440929022BC67E706115323E2E4@SHSMSX103.ccr.corp.intel.com", "date": "2018-06-26T07:03:01", "subject": "Re: [dpdk-dev] [PATCH 0/8] Remove IPC threads", "submitter": { "id": 504, "url": "http://patches.dpdk.org/api/people/504/?format=api", "name": "Qi Zhang", "email": "qi.z.zhang@intel.com" }, "content": "> -----Original Message-----\n> From: Zhang, Qi Z\n> Sent: Tuesday, June 26, 2018 9:19 AM\n> To: 'Anatoly Burakov' <anatoly.burakov@intel.com>; dev@dpdk.org\n> Cc: Ananyev, Konstantin <konstantin.ananyev@intel.com>;\n> thomas@monjalon.net; Richardson, Bruce <bruce.richardson@intel.com>\n> Subject: RE: [dpdk-dev] [PATCH 0/8] Remove IPC threads\n> \n> Hi Anatoly and Thomas:\n> \n> Sorry for raise this late, but seems merge mp thread into interrupt thread gives\n> problem to enable hotplug on secondary [1].\n> \n> The issue is, when secondary want to attach a share device, it send request to\n> primary Then primary is running in mp callback (mp thread) to attach device, it\n> will call rte_malloc which get chance to increase heap that will do sync IPC, You\n> know, this is the limitation we can't do sync IPC in mp thread itself. so the\n> solution is try to move real work to a separate thread which has no limitation\n> to do sync IPC, and interrupt thread is the good candidate, because we just\n> need to call rte_eal_set_alarm and we don't need to worry about the\n> execution sequence.\n> \n> But if we merge mp thread into interrupt thread, the solution will not work, we\n> may need to create specific temporal thread to handle callback, but this looks\n> like some re-build which we already have.\n\nOk, actually this method looks good to me :), I will send v4 to have this,\nBut please let me know if you have better idea.\n\n> So I think we need to revisit if we need to merge the thread before we have a\n> good solution for such kind of issue.\n> \n> Thanks\n> Qi\n> \n> [1] https://mails.dpdk.org/archives/dev/2018-June/105018.html\n> \n> \n> > -----Original Message-----\n> > From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Anatoly Burakov\n> > Sent: Friday, June 15, 2018 10:25 PM\n> > To: dev@dpdk.org\n> > Cc: Ananyev, Konstantin <konstantin.ananyev@intel.com>;\n> > thomas@monjalon.net; Richardson, Bruce <bruce.richardson@intel.com>\n> > Subject: [dpdk-dev] [PATCH 0/8] Remove IPC threads\n> >\n> > As previously discussed [1], IPC threads need to be removed and their\n> > workload moved to interrupt thread.\n> >\n> > FreeBSD did not have an interrupt thread, nor did it support alarm\n> > API. This patchset adds support for both on FreeBSD. FreeBSD interrupt\n> > thread is based on kevent, FreeBSD's native event multiplexing\n> > mechanism similar to Linux's epoll.\n> >\n> > The patchset makes FreeBSD's interrupts and alarm work just enough to\n> > suffice for purposes of IPC, however there are really weird problems\n> observed.\n> > Specifically, FreeBSD's kevent timers are really slow to trigger for\n> > some reason, sleeping on a 10ms timer as much as 200ms before waking\n> > up. Interrupt handling on fd's is also a bit flaky.\n> >\n> > It has also been observed that both problems go away if we do not\n> > affinitize master lcore (by commenting relevant code out [2]). It is\n> > not known why these problems are observed, nor it is clear what a solution\n> might entail.\n> >\n> > For the purposes of making IPC work and having rudimentary support for\n> > alarm and interrupt API's, this patchset works fine. However, because\n> > of the above described issues, documentation will not be updated to\n> > indicate support for interrupts on FreeBSD at this time.\n> >\n> > [1] http://dpdk.org/dev/patchwork/patch/36579/\n> > [2]\n> > http://dpdk.org/browse/dpdk/tree/lib/librte_eal/bsdapp/eal/eal.c#n729\n> >\n> > Anatoly Burakov (4):\n> > ipc: remove IPC thread for async requests\n> > eal/bsdapp: add interrupt thread\n> > eal/bsdapp: add alarm support\n> > ipc: remove main IPC thread\n> >\n> > Jianfeng Tan (4):\n> > eal/linux: use glibc malloc in alarm\n> > eal/linux: use glibc malloc in interrupt handling\n> > eal: bring forward init of interrupt handling\n> > eal: add IPC type for interrupt thread\n> >\n> > lib/librte_eal/bsdapp/eal/eal.c | 10 +-\n> > lib/librte_eal/bsdapp/eal/eal_alarm.c | 299 +++++++++++-\n> > lib/librte_eal/bsdapp/eal/eal_alarm_private.h | 19 +\n> > lib/librte_eal/bsdapp/eal/eal_interrupts.c | 460 +++++++++++++++++-\n> > lib/librte_eal/common/eal_common_proc.c | 243 ++++-----\n> > .../common/include/rte_eal_interrupts.h | 1 +\n> > lib/librte_eal/linuxapp/eal/eal.c | 10 +-\n> > lib/librte_eal/linuxapp/eal/eal_alarm.c | 9 +-\n> > lib/librte_eal/linuxapp/eal/eal_interrupts.c | 19 +-\n> > test/test/test_interrupts.c | 29 +-\n> > 10 files changed, 899 insertions(+), 200 deletions(-) create mode\n> > 100644 lib/librte_eal/bsdapp/eal/eal_alarm_private.h\n> >\n> > --\n> > 2.17.1", "headers": { "Return-Path": "<dev-bounces@dpdk.org>", "X-Original-To": "patchwork@dpdk.org", "Delivered-To": "patchwork@dpdk.org", "Received": [ "from [92.243.14.124] (localhost [127.0.0.1])\n\tby dpdk.org (Postfix) with ESMTP id 8F8154C7B;\n\tTue, 26 Jun 2018 09:03:14 +0200 (CEST)", "from mga03.intel.com (mga03.intel.com [134.134.136.65])\n\tby dpdk.org (Postfix) with ESMTP id 5E8C044BE\n\tfor <dev@dpdk.org>; Tue, 26 Jun 2018 09:03:12 +0200 (CEST)", "from orsmga001.jf.intel.com ([10.7.209.18])\n\tby orsmga103.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384;\n\t26 Jun 2018 00:03:11 -0700", "from fmsmsx108.amr.corp.intel.com ([10.18.124.206])\n\tby orsmga001.jf.intel.com with ESMTP; 26 Jun 2018 00:03:03 -0700", "from fmsmsx117.amr.corp.intel.com (10.18.116.17) by\n\tFMSMSX108.amr.corp.intel.com (10.18.124.206) with Microsoft SMTP\n\tServer (TLS) id 14.3.319.2; Tue, 26 Jun 2018 00:03:03 -0700", "from shsmsx152.ccr.corp.intel.com (10.239.6.52) by\n\tfmsmsx117.amr.corp.intel.com (10.18.116.17) with Microsoft SMTP\n\tServer (TLS) id 14.3.319.2; Tue, 26 Jun 2018 00:03:03 -0700", "from shsmsx103.ccr.corp.intel.com ([169.254.4.51]) by\n\tSHSMSX152.ccr.corp.intel.com ([169.254.6.70]) with mapi id\n\t14.03.0319.002; Tue, 26 Jun 2018 15:03:01 +0800" ], "X-Amp-Result": "SKIPPED(no attachment in message)", "X-Amp-File-Uploaded": "False", "X-ExtLoop1": "1", "X-IronPort-AV": "E=Sophos;i=\"5.51,273,1526367600\"; d=\"scan'208\";a=\"67754908\"", "From": "\"Zhang, Qi Z\" <qi.z.zhang@intel.com>", "To": "\"Burakov, Anatoly\" <anatoly.burakov@intel.com>, \"dev@dpdk.org\"\n\t<dev@dpdk.org>", "CC": "\"Ananyev, Konstantin\" <konstantin.ananyev@intel.com>,\n\t\"thomas@monjalon.net\" <thomas@monjalon.net>, \"Richardson, Bruce\"\n\t<bruce.richardson@intel.com>", "Thread-Topic": "[dpdk-dev] [PATCH 0/8] Remove IPC threads", "Thread-Index": "AQHUBLS2PKFie3txNkSRAR62oKRw56RxvtGAgABtkUA=", "Date": "Tue, 26 Jun 2018 07:03:01 +0000", "Message-ID": "<039ED4275CED7440929022BC67E706115323E2E4@SHSMSX103.ccr.corp.intel.com>", "References": "<cover.1529071026.git.anatoly.burakov@intel.com> ", "Accept-Language": "en-US", "Content-Language": "en-US", "X-MS-Has-Attach": "", "X-MS-TNEF-Correlator": "", "x-titus-metadata-40": "eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiNzhiN2VlZWUtYmVhZS00NmJiLTgzMmYtMzlkMzk5NGU1ZDg5IiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX05UIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE3LjEwLjE4MDQuNDkiLCJUcnVzdGVkTGFiZWxIYXNoIjoiZHVRRXMzUnNcL3B0WTdJTEFXNVJ1OUtTM09UdFVmQmZWQVQ3YmczY1lMZmdwQ1dQUGN5KzhJSFhrRlNKekNBd3YifQ==", "x-ctpclassification": "CTP_NT", "dlp-product": "dlpe-windows", "dlp-version": "11.0.200.100", "dlp-reaction": "no-action", "x-originating-ip": "[10.239.127.40]", "Content-Type": "text/plain; charset=\"us-ascii\"", "Content-Transfer-Encoding": "quoted-printable", "MIME-Version": "1.0", "Subject": "Re: [dpdk-dev] [PATCH 0/8] Remove IPC threads", "X-BeenThere": "dev@dpdk.org", "X-Mailman-Version": "2.1.15", "Precedence": "list", "List-Id": "DPDK patches and discussions <dev.dpdk.org>", "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n\t<mailto:dev-request@dpdk.org?subject=unsubscribe>", "List-Archive": "<http://mails.dpdk.org/archives/dev/>", "List-Post": "<mailto:dev@dpdk.org>", "List-Help": "<mailto:dev-request@dpdk.org?subject=help>", "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n\t<mailto:dev-request@dpdk.org?subject=subscribe>", "Errors-To": "dev-bounces@dpdk.org", "Sender": "\"dev\" <dev-bounces@dpdk.org>" }, "addressed": null } ]