Re: [PATCH 04/10] xen/blkfront: separate ring information to an new struct

2015-02-18 Thread Bob Liu
On 02/19/2015 02:08 AM, Felipe Franciosi wrote: -Original Message- From: Konrad Rzeszutek Wilk [mailto:konrad.w...@oracle.com] Sent: 18 February 2015 17:38 To: Roger Pau Monne Cc: Bob Liu; xen-de...@lists.xen.org; David Vrabel; linux- ker...@vger.kernel.org; Felipe Franciosi; ax

Re: [RFC PATCH 00/10] Multi-queue support for xen-block driver

2015-02-18 Thread Bob Liu
On 02/19/2015 02:22 AM, Felipe Franciosi wrote: -Original Message- From: Bob Liu [mailto:bob@oracle.com] Sent: 15 February 2015 08:19 To: xen-de...@lists.xen.org Cc: David Vrabel; linux-kernel@vger.kernel.org; Roger Pau Monne; konrad.w...@oracle.com; Felipe Franciosi; ax

[PATCH 04/10] xen/blkfront: separate ring information to an new struct

2015-02-15 Thread Bob Liu
A ring is the representation of a hardware queue, this patch separate ring information from blkfront_info to an new struct blkfront_ring_info to make preparation for real multi hardware queues supporting. Signed-off-by: Arianna Avanzini Signed-off-by: Bob Liu --- drivers/block/xen-blkfront.c

[PATCH 01/10] xen/blkfront: convert to blk-mq API

2015-02-15 Thread Bob Liu
This patch convert xen-blkfront driver to use the block multiqueue API and force to use only one hardware queue at this time. Signed-off-by: Arianna Avanzini Signed-off-by: Bob Liu --- drivers/block/xen-blkfront.c | 118 --- 1 file changed, 100

[PATCH 03/10] xen/blkfront: reorg info->io_lock after using blk-mq API

2015-02-15 Thread Bob Liu
Drop unnecessary holding of info->io_lock when calling into blk-mq apis. Signed-off-by: Bob Liu --- drivers/block/xen-blkfront.c | 38 -- 1 file changed, 16 insertions(+), 22 deletions(-) diff --git a/drivers/block/xen-blkfront.c b/drivers/block/

[RFC PATCH 00/10] Multi-queue support for xen-block driver

2015-02-15 Thread Bob Liu
68k284k+410% 32 65k196k+300% 64 63k183k+290% More results are coming, there was also big improvement on both write-IOPS and latency. Any comments or suggestions are welcome. Thank you, -Bob Liu Bob Liu

[PATCH 05/10] xen/blkback: separate ring information out of struct xen_blkif

2015-02-15 Thread Bob Liu
This patch separate ring information from struct xen_blkif to an new struct xen_blkif_ring to make preparation for real multi hardware queues supporting. Signed-off-by: Arianna Avanzini Signed-off-by: Bob Liu --- drivers/block/xen-blkback/blkback.c | 362

[PATCH 08/10] xen/blkfront: negotiate hardware queue number with backend

2015-02-15 Thread Bob Liu
multi-queue-num-queues". Signed-off-by: Bob Liu --- drivers/block/xen-blkfront.c | 71 1 file changed, 66 insertions(+), 5 deletions(-) diff --git a/drivers/block/xen-blkfront.c b/drivers/block/xen-blkfront.c index d551be0..32caf85 100644 ---

[PATCH 07/10] xen/blkback: pseudo support for multi hardware queues

2015-02-15 Thread Bob Liu
Prepare patch for multi hardware queues, the ring number was mandatory set to 1. Signed-off-by: Arianna Avanzini Signed-off-by: Bob Liu --- drivers/block/xen-blkback/common.h | 3 +- drivers/block/xen-blkback/xenbus.c | 368 +++-- 2 files changed, 233

[PATCH 09/10] xen/blkback: get hardware queue number from blkfront

2015-02-15 Thread Bob Liu
Backend advertise the max number it supported to "multi-queue-max-queues", and read the negotiate value from "multi-queue-num-queues". Signed-off-by: Bob Liu --- drivers/block/xen-blkback/blkback.c | 8 drivers/block/xen-blkback/xenbus.c | 36 +++

[PATCH 10/10] xen/blkfront: use work queue to fast blkif interrupt return

2015-02-15 Thread Bob Liu
0086 880283f75038 Call Trace: [] ? __hrtimer_start_range_ns+0x269/0x27b [] ? hrtimer_start+0x13/0x15 [] ? rcu_eqs_enter+0x66/0x79 [] ? default_idle+0x9/0xd [] ? arch_cpu_idle+0xa/0xc [] ? cpu_startup_entry+0x118/0x253 [] ? start_secondary+0x12e/0x132 Signed-off-by: Bob Liu --- drivers/block/xen

[PATCH 06/10] xen/blkfront: pseudo support for multi hardware queues

2015-02-15 Thread Bob Liu
Prepare patch for multi hardware queues, the ring number was mandatory set to 1. Signed-off-by: Arianna Avanzini Signed-off-by: Bob Liu --- drivers/block/xen-blkfront.c | 408 +-- 1 file changed, 234 insertions(+), 174 deletions(-) diff --git a/drivers

[PATCH 02/10] xen/blkfront: drop legacy block layer support

2015-02-15 Thread Bob Liu
As Christoph suggested, remove the legacy support similar to most drivers coverted (virtio, mtip, and nvme). Signed-off-by: Arianna Avanzini Signed-off-by: Bob Liu --- drivers/block/xen-blkfront.c | 167 +-- 1 file changed, 32 insertions(+), 135

[PATCH 05/10] xen/blkback: separate ring information out of struct xen_blkif

2015-02-15 Thread Bob Liu
This patch separate ring information from struct xen_blkif to an new struct xen_blkif_ring to make preparation for real multi hardware queues supporting. Signed-off-by: Arianna Avanzini avanzini.aria...@gmail.com Signed-off-by: Bob Liu bob@oracle.com --- drivers/block/xen-blkback/blkback.c

[PATCH 08/10] xen/blkfront: negotiate hardware queue number with backend

2015-02-15 Thread Bob Liu
. Signed-off-by: Bob Liu bob@oracle.com --- drivers/block/xen-blkfront.c | 71 1 file changed, 66 insertions(+), 5 deletions(-) diff --git a/drivers/block/xen-blkfront.c b/drivers/block/xen-blkfront.c index d551be0..32caf85 100644 --- a/drivers

[PATCH 07/10] xen/blkback: pseudo support for multi hardware queues

2015-02-15 Thread Bob Liu
Prepare patch for multi hardware queues, the ring number was mandatory set to 1. Signed-off-by: Arianna Avanzini avanzini.aria...@gmail.com Signed-off-by: Bob Liu bob@oracle.com --- drivers/block/xen-blkback/common.h | 3 +- drivers/block/xen-blkback/xenbus.c | 368

[PATCH 09/10] xen/blkback: get hardware queue number from blkfront

2015-02-15 Thread Bob Liu
Backend advertise the max number it supported to multi-queue-max-queues, and read the negotiate value from multi-queue-num-queues. Signed-off-by: Bob Liu bob@oracle.com --- drivers/block/xen-blkback/blkback.c | 8 drivers/block/xen-blkback/xenbus.c | 36

[PATCH 10/10] xen/blkfront: use work queue to fast blkif interrupt return

2015-02-15 Thread Bob Liu
] ? cpu_startup_entry+0x118/0x253 [81030f57] ? start_secondary+0x12e/0x132 Signed-off-by: Bob Liu bob@oracle.com --- drivers/block/xen-blkfront.c | 47 ++-- 1 file changed, 28 insertions(+), 19 deletions(-) diff --git a/drivers/block/xen-blkfront.c b/drivers

[PATCH 06/10] xen/blkfront: pseudo support for multi hardware queues

2015-02-15 Thread Bob Liu
Prepare patch for multi hardware queues, the ring number was mandatory set to 1. Signed-off-by: Arianna Avanzini avanzini.aria...@gmail.com Signed-off-by: Bob Liu bob@oracle.com --- drivers/block/xen-blkfront.c | 408 +-- 1 file changed, 234 insertions

[PATCH 02/10] xen/blkfront: drop legacy block layer support

2015-02-15 Thread Bob Liu
As Christoph suggested, remove the legacy support similar to most drivers coverted (virtio, mtip, and nvme). Signed-off-by: Arianna Avanzini avanzini.aria...@gmail.com Signed-off-by: Bob Liu bob@oracle.com --- drivers/block/xen-blkfront.c | 167 +-- 1

[PATCH 03/10] xen/blkfront: reorg info-io_lock after using blk-mq API

2015-02-15 Thread Bob Liu
Drop unnecessary holding of info-io_lock when calling into blk-mq apis. Signed-off-by: Bob Liu bob@oracle.com --- drivers/block/xen-blkfront.c | 38 -- 1 file changed, 16 insertions(+), 22 deletions(-) diff --git a/drivers/block/xen-blkfront.c b/drivers

[RFC PATCH 00/10] Multi-queue support for xen-block driver

2015-02-15 Thread Bob Liu
% 32 65k196k+300% 64 63k183k+290% More results are coming, there was also big improvement on both write-IOPS and latency. Any comments or suggestions are welcome. Thank you, -Bob Liu Bob Liu (10): xen/blkfront: convert to blk

[PATCH 04/10] xen/blkfront: separate ring information to an new struct

2015-02-15 Thread Bob Liu
A ring is the representation of a hardware queue, this patch separate ring information from blkfront_info to an new struct blkfront_ring_info to make preparation for real multi hardware queues supporting. Signed-off-by: Arianna Avanzini avanzini.aria...@gmail.com Signed-off-by: Bob Liu bob

[PATCH 01/10] xen/blkfront: convert to blk-mq API

2015-02-15 Thread Bob Liu
This patch convert xen-blkfront driver to use the block multiqueue API and force to use only one hardware queue at this time. Signed-off-by: Arianna Avanzini avanzini.aria...@gmail.com Signed-off-by: Bob Liu bob@oracle.com --- drivers/block/xen-blkfront.c | 118

Re: [PATCH 2/2] drivers: xen/block: add multi-page ring support

2015-02-06 Thread Bob Liu
On 02/06/2015 07:01 PM, Wei Liu wrote: > On Fri, Feb 06, 2015 at 06:47:17PM +0800, Bob Liu wrote: >> >> On 02/02/2015 06:43 PM, Roger Pau Monné wrote: >>> El 23/01/15 a les 10.14, Bob Liu ha escrit: >>>> Extend xen/block to support multi-page ring. >>>

Re: [PATCH 2/2] drivers: xen/block: add multi-page ring support

2015-02-06 Thread Bob Liu
On 02/02/2015 06:43 PM, Roger Pau Monné wrote: > El 23/01/15 a les 10.14, Bob Liu ha escrit: >> Extend xen/block to support multi-page ring. >> * xen-blkback notify blkfront with feature-multi-ring-pages >> * xen-blkfront write to xenstore about how many pages

Re: [Xen-devel] [PATCH 2/2] drivers: xen/block: add multi-page ring support

2015-02-06 Thread Bob Liu
.xen.org > [mailto:xen-devel-boun...@lists.xen.org] On Behalf Of Bob Liu > Sent: 23 January 2015 10:15 > To: xen-de...@lists.xen.org > Cc: Wei Liu; linux-kernel@vger.kernel.org; Bob Liu; David Vrabel; > boris.ostrov...@oracle.com; Roger Pau Monne > Subject: [Xen-devel] [PATCH 2/2] dri

Re: [Xen-devel] [PATCH 2/2] drivers: xen/block: add multi-page ring support

2015-02-06 Thread Bob Liu
be 128 inflight requests instead of 32. Thanks, -Bob What was the host configuration for the test? What was the VM configuration for the test? Thanks, Felipe -Original Message- From: xen-devel-boun...@lists.xen.org [mailto:xen-devel-boun...@lists.xen.org] On Behalf Of Bob Liu

Re: [PATCH 2/2] drivers: xen/block: add multi-page ring support

2015-02-06 Thread Bob Liu
On 02/02/2015 06:43 PM, Roger Pau Monné wrote: El 23/01/15 a les 10.14, Bob Liu ha escrit: Extend xen/block to support multi-page ring. * xen-blkback notify blkfront with feature-multi-ring-pages * xen-blkfront write to xenstore about how many pages are used as the ring If using 4 pages

Re: [PATCH 2/2] drivers: xen/block: add multi-page ring support

2015-02-06 Thread Bob Liu
On 02/06/2015 07:01 PM, Wei Liu wrote: On Fri, Feb 06, 2015 at 06:47:17PM +0800, Bob Liu wrote: On 02/02/2015 06:43 PM, Roger Pau Monné wrote: El 23/01/15 a les 10.14, Bob Liu ha escrit: Extend xen/block to support multi-page ring. * xen-blkback notify blkfront with feature-multi-ring

[PATCH 2/2] drivers: xen/block: add multi-page ring support

2015-01-23 Thread Bob Liu
system. Signed-off-by: Bob Liu --- drivers/block/xen-blkback/xenbus.c | 86 + drivers/block/xen-blkfront.c | 94 ++-- 2 files changed, 133 insertions(+), 47 deletions(-) diff --git a/drivers/block/xen-blkback/xenbus.c b

[PATCH 1/2] xenbus_client: extend interface to suppurt multi-page ring

2015-01-23 Thread Bob Liu
off-by: Bob Liu --- drivers/block/xen-blkback/xenbus.c |5 +- drivers/block/xen-blkfront.c |5 +- drivers/char/tpm/xen-tpmfront.c|5 +- drivers/net/xen-netback/netback.c |4 +- drivers/net/xen-netfront.c |9 +- drivers/pci/xen-pcifront.c |

[PATCH 1/2] xenbus_client: extend interface to suppurt multi-page ring

2015-01-23 Thread Bob Liu
-by: Wei Liu wei.l...@citrix.com Signed-off-by: Bob Liu bob@oracle.com --- drivers/block/xen-blkback/xenbus.c |5 +- drivers/block/xen-blkfront.c |5 +- drivers/char/tpm/xen-tpmfront.c|5 +- drivers/net/xen-netback/netback.c |4 +- drivers/net/xen-netfront.c |9

[PATCH 2/2] drivers: xen/block: add multi-page ring support

2015-01-23 Thread Bob Liu
system. Signed-off-by: Bob Liu bob@oracle.com --- drivers/block/xen-blkback/xenbus.c | 86 + drivers/block/xen-blkfront.c | 94 ++-- 2 files changed, 133 insertions(+), 47 deletions(-) diff --git a/drivers/block/xen-blkback

[RESEND PATCH] xen/blkfront: increase the default value of xen_blkif_max_segments

2015-01-20 Thread Bob Liu
tem. The default max size(128k) is not appropriate anymore, this patch increases it to 128(128*4k=512k). Signed-off-by: Bob Liu --- drivers/block/xen-blkfront.c |4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/block/xen-blkfront.c b/drivers/block/xen-blkfront.c in

[RESEND PATCH] xen/blkfront: increase the default value of xen_blkif_max_segments

2015-01-20 Thread Bob Liu
. The default max size(128k) is not appropriate anymore, this patch increases it to 128(128*4k=512k). Signed-off-by: Bob Liu bob@oracle.com --- drivers/block/xen-blkfront.c |4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/block/xen-blkfront.c b/drivers/block/xen

Re: [PATCH] xen/blkfront: restart request queue when there is enough persistent_gnts_c

2015-01-13 Thread Bob Liu
On 01/12/2015 07:36 PM, Roger Pau Monné wrote: > El 12/01/15 a les 8.09, Bob Liu ha escrit: >> >> On 01/09/2015 11:51 PM, Roger Pau Monné wrote: >>> El 06/01/15 a les 14.19, Bob Liu ha escrit: >>>> When there is no enough free grants, gnttab_alloc_grant_r

Re: [PATCH] xen/blkfront: restart request queue when there is enough persistent_gnts_c

2015-01-13 Thread Bob Liu
On 01/12/2015 07:36 PM, Roger Pau Monné wrote: > El 12/01/15 a les 8.09, Bob Liu ha escrit: >> >> On 01/09/2015 11:51 PM, Roger Pau Monné wrote: >>> El 06/01/15 a les 14.19, Bob Liu ha escrit: >>>> When there is no enough free grants, gnttab_alloc_grant_r

Re: [PATCH] xen/blkfront: restart request queue when there is enough persistent_gnts_c

2015-01-13 Thread Bob Liu
On 01/12/2015 07:36 PM, Roger Pau Monné wrote: El 12/01/15 a les 8.09, Bob Liu ha escrit: On 01/09/2015 11:51 PM, Roger Pau Monné wrote: El 06/01/15 a les 14.19, Bob Liu ha escrit: When there is no enough free grants, gnttab_alloc_grant_references() will fail and block request queue

Re: [PATCH] xen/blkfront: restart request queue when there is enough persistent_gnts_c

2015-01-13 Thread Bob Liu
On 01/12/2015 07:36 PM, Roger Pau Monné wrote: El 12/01/15 a les 8.09, Bob Liu ha escrit: On 01/09/2015 11:51 PM, Roger Pau Monné wrote: El 06/01/15 a les 14.19, Bob Liu ha escrit: When there is no enough free grants, gnttab_alloc_grant_references() will fail and block request queue

Re: [PATCH] xen/blkfront: restart request queue when there is enough persistent_gnts_c

2015-01-11 Thread Bob Liu
On 01/09/2015 11:51 PM, Roger Pau Monné wrote: > El 06/01/15 a les 14.19, Bob Liu ha escrit: >> When there is no enough free grants, gnttab_alloc_grant_references() >> will fail and block request queue will stop. >> If the system is always lack of grants, blkif_restart_q

Re: [PATCH] xen/blkfront: restart request queue when there is enough persistent_gnts_c

2015-01-11 Thread Bob Liu
On 01/09/2015 11:51 PM, Roger Pau Monné wrote: > El 06/01/15 a les 14.19, Bob Liu ha escrit: >> When there is no enough free grants, gnttab_alloc_grant_references() >> will fail and block request queue will stop. >> If the system is always lack of grants, blkif_restart_q

Re: [PATCH] xen/blkfront: restart request queue when there is enough persistent_gnts_c

2015-01-11 Thread Bob Liu
On 01/09/2015 11:51 PM, Roger Pau Monné wrote: El 06/01/15 a les 14.19, Bob Liu ha escrit: When there is no enough free grants, gnttab_alloc_grant_references() will fail and block request queue will stop. If the system is always lack of grants, blkif_restart_queue_callback() can't

Re: [PATCH] xen/blkfront: restart request queue when there is enough persistent_gnts_c

2015-01-11 Thread Bob Liu
On 01/09/2015 11:51 PM, Roger Pau Monné wrote: El 06/01/15 a les 14.19, Bob Liu ha escrit: When there is no enough free grants, gnttab_alloc_grant_references() will fail and block request queue will stop. If the system is always lack of grants, blkif_restart_queue_callback() can't

[PATCH] xen/blkfront: restart request queue when there is enough persistent_gnts_c

2015-01-06 Thread Bob Liu
complete, some grants may free to persistent_gnts_c, we can give the request queue another chance to restart and avoid block hang. Reported-by: Junxiao Bi Signed-off-by: Bob Liu --- drivers/block/xen-blkfront.c | 11 +++ 1 file changed, 11 insertions(+) diff --git a/drivers/block/xen

[PATCH] xen/blkfront: restart request queue when there is enough persistent_gnts_c

2015-01-06 Thread Bob Liu
complete, some grants may free to persistent_gnts_c, we can give the request queue another chance to restart and avoid block hang. Reported-by: Junxiao Bi junxiao...@oracle.com Signed-off-by: Bob Liu bob@oracle.com --- drivers/block/xen-blkfront.c | 11 +++ 1 file changed, 11

Re: [Xen-devel] [PATCH] xen/blkfront: increase the default value of xen_blkif_max_segments

2014-12-17 Thread Bob Liu
On 12/16/2014 06:32 PM, Roger Pau Monné wrote: > El 16/12/14 a les 11.11, Bob Liu ha escrit: >> The default maximum value of segments in indirect requests was 32, IO >> operations with bigger block size(>32*4k) would be split and performance >> start >> to drop.

Re: [Xen-devel] [PATCH] xen/blkfront: increase the default value of xen_blkif_max_segments

2014-12-17 Thread Bob Liu
On 12/16/2014 06:32 PM, Roger Pau Monné wrote: El 16/12/14 a les 11.11, Bob Liu ha escrit: The default maximum value of segments in indirect requests was 32, IO operations with bigger block size(32*4k) would be split and performance start to drop. Nowadays backend device usually support

[PATCH] xen/blkfront: increase the default value of xen_blkif_max_segments

2014-12-16 Thread Bob Liu
tem. The default size 128k was not very appropriate, this patch increases the default maximum value to 128(128*4k=512k). Signed-off-by: Bob Liu --- drivers/block/xen-blkfront.c |4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/block/xen-blkfront.c b/drivers/block/

[PATCH] xen/blkfront: increase the default value of xen_blkif_max_segments

2014-12-16 Thread Bob Liu
. The default size 128k was not very appropriate, this patch increases the default maximum value to 128(128*4k=512k). Signed-off-by: Bob Liu bob@oracle.com --- drivers/block/xen-blkfront.c |4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/block/xen-blkfront.c b

Re: [PATCH RFC 4/4] xen, blkback: add support for multiple block rings

2014-09-11 Thread Bob Liu
o be used. >> >> Does it make sense for number of queues should be dependent on the >> number of queues available in the underlying block device? > > Thank you for raising that point. It probably is not the best solution. > > Bob Liu suggested to have the number of I/O

Re: [PATCH RFC 4/4] xen, blkback: add support for multiple block rings

2014-09-11 Thread Bob Liu
of queues available in the underlying block device? Thank you for raising that point. It probably is not the best solution. Bob Liu suggested to have the number of I/O rings depend on the number of vCPUs in the driver domain. Konrad Wilk suggested to compute the number of I/O rings

Re: [patch v2] mm, tmp: only collapse hugepages to nodes with affinity for zone_reclaim_mode

2014-07-15 Thread Bob Liu
On 07/16/2014 08:13 AM, David Rientjes wrote: > Commit 9f1b868a13ac ("mm: thp: khugepaged: add policy for finding target > node") improved the previous khugepaged logic which allocated a > transparent hugepages from the node of the first page being collapsed. > > However, it is still possible

Re: [patch v2] mm, tmp: only collapse hugepages to nodes with affinity for zone_reclaim_mode

2014-07-15 Thread Bob Liu
On 07/16/2014 08:13 AM, David Rientjes wrote: Commit 9f1b868a13ac (mm: thp: khugepaged: add policy for finding target node) improved the previous khugepaged logic which allocated a transparent hugepages from the node of the first page being collapsed. However, it is still possible to

Re: [PATCHv4 0/6] mm/zpool: add common api for zswap to use zbud/zsmalloc

2014-06-03 Thread Bob Liu
e to use the higher density of zsmalloc. > Nice job! I also made a attempt last year, but didn't finish. > Note this patch set does not change zram to use zpool, although that > change should be possible as well. > This version looks good to me! Reviewed-by: Bob Liu >

Re: [PATCHv4 0/6] mm/zpool: add common api for zswap to use zbud/zsmalloc

2014-06-03 Thread Bob Liu
a attempt last year, but didn't finish. Note this patch set does not change zram to use zpool, although that change should be possible as well. This version looks good to me! Reviewed-by: Bob Liu bob@oracle.com --- Changes since v3 : https://lkml.org/lkml/2014/5/24/130

Re: [PATCH 1/2] swap: change swap_info singly-linked list to list_head

2014-05-04 Thread Bob Liu
On 05/03/2014 04:00 AM, Dan Streetman wrote: > On Fri, Apr 25, 2014 at 12:15 AM, Weijie Yang > wrote: >> On Fri, Apr 25, 2014 at 2:48 AM, Dan Streetman wrote: >>> On Wed, Apr 23, 2014 at 6:34 AM, Mel Gorman wrote: On Sat, Apr 12, 2014 at 05:00:53PM -0400, Dan Streetman wrote: > >

Re: [PATCH 1/2] swap: change swap_info singly-linked list to list_head

2014-05-04 Thread Bob Liu
On 05/03/2014 04:00 AM, Dan Streetman wrote: On Fri, Apr 25, 2014 at 12:15 AM, Weijie Yang weijie.yang...@gmail.com wrote: On Fri, Apr 25, 2014 at 2:48 AM, Dan Streetman ddstr...@ieee.org wrote: On Wed, Apr 23, 2014 at 6:34 AM, Mel Gorman mgor...@suse.de wrote: On Sat, Apr 12, 2014 at

Re: [PATCH] thp: close race between split and zap huge pages

2014-04-16 Thread Bob Liu
On Wed, Apr 16, 2014 at 4:42 PM, Kirill A. Shutemov wrote: > On Wed, Apr 16, 2014 at 07:52:29AM +0800, Bob Liu wrote: >> > *ptl = pmd_lock(mm, pmd); >> > - if (pmd_none(*pmd)) >> > + if (!pmd_present(*pmd)) >> > goto unlo

Re: [PATCH] thp: close race between split and zap huge pages

2014-04-16 Thread Bob Liu
On Wed, Apr 16, 2014 at 4:42 PM, Kirill A. Shutemov kir...@shutemov.name wrote: On Wed, Apr 16, 2014 at 07:52:29AM +0800, Bob Liu wrote: *ptl = pmd_lock(mm, pmd); - if (pmd_none(*pmd)) + if (!pmd_present(*pmd)) goto unlock; But I didn't get the idea

Re: [PATCH] thp: close race between split and zap huge pages

2014-04-15 Thread Bob Liu
On Wed, Apr 16, 2014 at 5:48 AM, Kirill A. Shutemov wrote: > Sasha Levin has reported two THP BUGs[1][2]. I believe both of them have > the same root cause. Let's look to them one by one. > > The first bug[1] is "kernel BUG at mm/huge_memory.c:1829!". > It's BUG_ON(mapcount !=

Re: [PATCH] thp: close race between split and zap huge pages

2014-04-15 Thread Bob Liu
On Wed, Apr 16, 2014 at 5:48 AM, Kirill A. Shutemov kirill.shute...@linux.intel.com wrote: Sasha Levin has reported two THP BUGs[1][2]. I believe both of them have the same root cause. Let's look to them one by one. The first bug[1] is kernel BUG at mm/huge_memory.c:1829!. It's

Re: mm: kernel BUG at mm/huge_memory.c:1829!

2014-04-10 Thread Bob Liu
On Tue, Apr 8, 2014 at 10:37 PM, Sasha Levin wrote: > Hi all, > > While fuzzing with trinity inside a KVM tools guest running the latest -next > kernel, I've stumbled on the following: > Wow! There are so many huge memory related bugs recently. AFAIR, there were still several without fix. I

Re: mm: kernel BUG at mm/huge_memory.c:1829!

2014-04-10 Thread Bob Liu
On Tue, Apr 8, 2014 at 10:37 PM, Sasha Levin sasha.le...@oracle.com wrote: Hi all, While fuzzing with trinity inside a KVM tools guest running the latest -next kernel, I've stumbled on the following: Wow! There are so many huge memory related bugs recently. AFAIR, there were still several

Re: Adding compression before/above swapcache

2014-04-08 Thread Bob Liu
On Mon, Mar 31, 2014 at 11:35 PM, Dan Streetman wrote: > On Mon, Mar 31, 2014 at 8:43 AM, Bob Liu wrote: >> On Fri, Mar 28, 2014 at 10:47 PM, Dan Streetman wrote: >>> On Fri, Mar 28, 2014 at 10:32 AM, Rik van Riel wrote: >>>> On 03/28/2014 08:36 AM, Dan Stree

Re: Adding compression before/above swapcache

2014-04-08 Thread Bob Liu
On Mon, Mar 31, 2014 at 11:35 PM, Dan Streetman ddstr...@ieee.org wrote: On Mon, Mar 31, 2014 at 8:43 AM, Bob Liu lliu...@gmail.com wrote: On Fri, Mar 28, 2014 at 10:47 PM, Dan Streetman ddstr...@ieee.org wrote: On Fri, Mar 28, 2014 at 10:32 AM, Rik van Riel r...@redhat.com wrote: On 03/28

Re: Adding compression before/above swapcache

2014-03-31 Thread Bob Liu
On Fri, Mar 28, 2014 at 10:47 PM, Dan Streetman wrote: > On Fri, Mar 28, 2014 at 10:32 AM, Rik van Riel wrote: >> On 03/28/2014 08:36 AM, Dan Streetman wrote: >> >>> Well my general idea was to modify shrink_page_list() so that instead >>> of calling add_to_swap() and then pageout(), anonymous

Re: Adding compression before/above swapcache

2014-03-31 Thread Bob Liu
On Fri, Mar 28, 2014 at 10:47 PM, Dan Streetman ddstr...@ieee.org wrote: On Fri, Mar 28, 2014 at 10:32 AM, Rik van Riel r...@redhat.com wrote: On 03/28/2014 08:36 AM, Dan Streetman wrote: Well my general idea was to modify shrink_page_list() so that instead of calling add_to_swap() and then

Re: performance regression due to commit e82e0561("mm: vmscan: obey proportional scanning requirements for kswapd")

2014-03-20 Thread Bob Liu
On 02/18/2014 04:01 PM, Yuanhan Liu wrote: > Hi, > > Commit e82e0561("mm: vmscan: obey proportional scanning requirements for > kswapd") caused a big performance regression(73%) for vm-scalability/ > lru-file-readonce testcase on a system with 256G memory without swap. > > That testcase simply

Re: mm: kernel BUG at mm/swap.c:609!

2014-03-20 Thread Bob Liu
On 03/12/2014 09:25 AM, Bob Liu wrote: > > On 03/12/2014 04:07 AM, Sasha Levin wrote: >> Hi all, >> >> While fuzzing with trinity inside a KVM tools guest running latest -next >> kernel >> I've stumbled on the following spew: >> >> [ 477.30195

Re: mm: kernel BUG at mm/swap.c:609!

2014-03-20 Thread Bob Liu
On 03/12/2014 09:25 AM, Bob Liu wrote: On 03/12/2014 04:07 AM, Sasha Levin wrote: Hi all, While fuzzing with trinity inside a KVM tools guest running latest -next kernel I've stumbled on the following spew: [ 477.301955] kernel BUG at mm/swap.c:609! [ 477.302564] invalid opcode:

Re: performance regression due to commit e82e0561(mm: vmscan: obey proportional scanning requirements for kswapd)

2014-03-20 Thread Bob Liu
On 02/18/2014 04:01 PM, Yuanhan Liu wrote: Hi, Commit e82e0561(mm: vmscan: obey proportional scanning requirements for kswapd) caused a big performance regression(73%) for vm-scalability/ lru-file-readonce testcase on a system with 256G memory without swap. That testcase simply looks

Re: mm: kernel BUG at mm/swap.c:609!

2014-03-11 Thread Bob Liu
On 03/12/2014 04:07 AM, Sasha Levin wrote: > Hi all, > > While fuzzing with trinity inside a KVM tools guest running latest -next > kernel > I've stumbled on the following spew: > > [ 477.301955] kernel BUG at mm/swap.c:609! > [ 477.302564] invalid opcode: [#1] PREEMPT SMP

Re: mm: kernel BUG at mm/swap.c:609!

2014-03-11 Thread Bob Liu
On 03/12/2014 04:07 AM, Sasha Levin wrote: Hi all, While fuzzing with trinity inside a KVM tools guest running latest -next kernel I've stumbled on the following spew: [ 477.301955] kernel BUG at mm/swap.c:609! [ 477.302564] invalid opcode: [#1] PREEMPT SMP DEBUG_PAGEALLOC [

Re: mm: kernel BUG at mm/huge_memory.c:2785!

2014-03-04 Thread Bob Liu
On Thu, Feb 27, 2014 at 11:03 PM, Kirill A. Shutemov wrote: > Sasha Levin wrote: >> Hi all, >> >> While fuzzing with trinity inside a KVM tools guest running latest -next >> kernel I've stumbled on the >> following spew: >> >> [ 1428.146261] kernel BUG at mm/huge_memory.c:2785! > > Hm,

Re: mm: kernel BUG at mm/huge_memory.c:2785!

2014-03-04 Thread Bob Liu
On Thu, Feb 27, 2014 at 11:03 PM, Kirill A. Shutemov kirill.shute...@linux.intel.com wrote: Sasha Levin wrote: Hi all, While fuzzing with trinity inside a KVM tools guest running latest -next kernel I've stumbled on the following spew: [ 1428.146261] kernel BUG at mm/huge_memory.c:2785!

Re: mm: NULL ptr deref in balance_dirty_pages_ratelimited

2014-02-26 Thread Bob Liu
On Wed, Feb 26, 2014 at 10:09 PM, Kirill A. Shutemov wrote: > On Wed, Feb 26, 2014 at 03:15:07PM +0800, Bob Liu wrote: >> On Wed, Feb 26, 2014 at 3:32 AM, Sasha Levin wrote: >> > Hi all, >> > >> > While fuzzing with trinity inside a KVM tools running la

Re: mm: NULL ptr deref in balance_dirty_pages_ratelimited

2014-02-26 Thread Bob Liu
On Wed, Feb 26, 2014 at 10:09 PM, Kirill A. Shutemov kir...@shutemov.name wrote: On Wed, Feb 26, 2014 at 03:15:07PM +0800, Bob Liu wrote: On Wed, Feb 26, 2014 at 3:32 AM, Sasha Levin sasha.le...@oracle.com wrote: Hi all, While fuzzing with trinity inside a KVM tools running latest -next

Re: mm: NULL ptr deref in balance_dirty_pages_ratelimited

2014-02-25 Thread Bob Liu
On Wed, Feb 26, 2014 at 3:32 AM, Sasha Levin wrote: > Hi all, > > While fuzzing with trinity inside a KVM tools running latest -next kernel > I've stumbled on the following spew: > > [ 232.869443] BUG: unable to handle kernel NULL pointer dereference at > 0020 > [ 232.870230] IP: []

Re: kernel BUG at mm/mlock.c:79! on 3.10

2014-02-25 Thread Bob Liu
On Tue, Feb 25, 2014 at 7:01 AM, Vinson Lee wrote: > Hi. > > This kernel BUG was triggered while running trinity fuzzer on 3.10. > Seems like the same bug as Sasha reported. Please take a look at: https://lkml.org/lkml/2014/1/7/637 Or http://www.spinics.net/lists/linux-mm/msg66972.html >

Re: [PATCH] mm/zswap: support multiple swap devices

2014-02-25 Thread Bob Liu
ge variable name - Seth > * remove unnecessary BUG_ON and white space - Seth > > Reported-by: Cai Liu > Suggested-by: Weijie Yang > Signed-off-by: Minchan Kim Looks good to me, thanks. Reviewed-by: Bob Liu > --- > mm/zswap.c | 64 > ++

Re: [PATCH] mm/zswap: support multiple swap devices

2014-02-25 Thread Bob Liu
Suggested-by: Weijie Yang weijie.yang...@gmail.com Signed-off-by: Minchan Kim minc...@kernel.org Looks good to me, thanks. Reviewed-by: Bob Liu bob@oracle.com --- mm/zswap.c | 64 -- 1 file changed, 33 insertions(+), 31

Re: kernel BUG at mm/mlock.c:79! on 3.10

2014-02-25 Thread Bob Liu
On Tue, Feb 25, 2014 at 7:01 AM, Vinson Lee v...@twopensource.com wrote: Hi. This kernel BUG was triggered while running trinity fuzzer on 3.10. Seems like the same bug as Sasha reported. Please take a look at: https://lkml.org/lkml/2014/1/7/637 Or

Re: mm: NULL ptr deref in balance_dirty_pages_ratelimited

2014-02-25 Thread Bob Liu
On Wed, Feb 26, 2014 at 3:32 AM, Sasha Levin sasha.le...@oracle.com wrote: Hi all, While fuzzing with trinity inside a KVM tools running latest -next kernel I've stumbled on the following spew: [ 232.869443] BUG: unable to handle kernel NULL pointer dereference at 0020 [

[PATCH] drivers:xen-selfballoon:reset 'frontswap_inertia_counter' after frontswap_shrink

2014-02-17 Thread Bob Liu
() and continue to get back pages from frontswap!! Signed-off-by: Bob Liu --- drivers/xen/xen-selfballoon.c |1 + 1 file changed, 1 insertion(+) diff --git a/drivers/xen/xen-selfballoon.c b/drivers/xen/xen-selfballoon.c index 21e18c1..bd0b416 100644 --- a/drivers/xen/xen-selfballoon.c +++ b/drivers/xen

[PATCH] drivers:xen-selfballoon:reset 'frontswap_inertia_counter' after frontswap_shrink

2014-02-17 Thread Bob Liu
() and continue to get back pages from frontswap!! Signed-off-by: Bob Liu bob@oracle.com --- drivers/xen/xen-selfballoon.c |1 + 1 file changed, 1 insertion(+) diff --git a/drivers/xen/xen-selfballoon.c b/drivers/xen/xen-selfballoon.c index 21e18c1..bd0b416 100644 --- a/drivers/xen/xen-selfballoon.c

Re: [PATCH] mm/zswap: add writethrough option

2014-01-22 Thread Bob Liu
On 01/23/2014 08:18 AM, Minchan Kim wrote: > Hello all, > > On Wed, Jan 22, 2014 at 12:33:58PM -0800, Andrew Morton wrote: >> On Wed, 22 Jan 2014 09:19:58 -0500 Dan Streetman wrote: >> >>> Acutally, I really don't know how much benefit we have that in-memory >>> swap overcomming to the

Re: [PATCH] mm/zswap: add writethrough option

2014-01-22 Thread Bob Liu
On 01/23/2014 08:18 AM, Minchan Kim wrote: Hello all, On Wed, Jan 22, 2014 at 12:33:58PM -0800, Andrew Morton wrote: On Wed, 22 Jan 2014 09:19:58 -0500 Dan Streetman ddstr...@ieee.org wrote: Acutally, I really don't know how much benefit we have that in-memory swap overcomming to the real

[PATCH] drivers: xen: deaggressive selfballoon driver

2014-01-21 Thread Bob Liu
not that aggressive by adding extra 10% of total ram pages to goal_page. It's more valuable to keep the guest system reliable and response faster than balloon out these 10% pages to XEN. Signed-off-by: Bob Liu --- drivers/xen/xen-selfballoon.c | 22 ++ 1 file changed, 22 insertions(+) diff

[PATCH] drivers: xen: deaggressive selfballoon driver

2014-01-21 Thread Bob Liu
not that aggressive by adding extra 10% of total ram pages to goal_page. It's more valuable to keep the guest system reliable and response faster than balloon out these 10% pages to XEN. Signed-off-by: Bob Liu bob@oracle.com --- drivers/xen/xen-selfballoon.c | 22 ++ 1 file changed, 22

Re: [PATCH v2] mm/zswap: Check all pool pages instead of one pool pages

2014-01-20 Thread Bob Liu
On Tue, Jan 21, 2014 at 11:07 AM, Cai Liu wrote: > Thanks for your review. > > 2014/1/21 Minchan Kim : >> Hello Cai, >> >> On Mon, Jan 20, 2014 at 03:50:18PM +0800, Cai Liu wrote: >>> zswap can support multiple swapfiles. So we need to check >>> all zbud pool pages in zswap. >>> >>> Version 2:

Re: [PATCH v2] mm/zswap: Check all pool pages instead of one pool pages

2014-01-20 Thread Bob Liu
On Tue, Jan 21, 2014 at 11:07 AM, Cai Liu liucai@gmail.com wrote: Thanks for your review. 2014/1/21 Minchan Kim minc...@kernel.org: Hello Cai, On Mon, Jan 20, 2014 at 03:50:18PM +0800, Cai Liu wrote: zswap can support multiple swapfiles. So we need to check all zbud pool pages in

Re: [patch 9/9] mm: keep page cache radix tree nodes in check

2014-01-14 Thread Bob Liu
Hi Johannes, On 01/11/2014 02:10 AM, Johannes Weiner wrote: > Previously, page cache radix tree nodes were freed after reclaim > emptied out their page pointers. But now reclaim stores shadow > entries in their place, which are only reclaimed when the inodes > themselves are reclaimed. This is

Re: [patch 7/9] mm: thrash detection-based file cache sizing

2014-01-14 Thread Bob Liu
On 01/15/2014 03:16 AM, Johannes Weiner wrote: > On Tue, Jan 14, 2014 at 09:01:09AM +0800, Bob Liu wrote: >> Hi Johannes, >> >> On 01/11/2014 02:10 AM, Johannes Weiner wrote: >>> The VM maintains cached filesystem pages on two types of lists. One >>>

Re: [patch 7/9] mm: thrash detection-based file cache sizing

2014-01-14 Thread Bob Liu
On 01/15/2014 03:16 AM, Johannes Weiner wrote: On Tue, Jan 14, 2014 at 09:01:09AM +0800, Bob Liu wrote: Hi Johannes, On 01/11/2014 02:10 AM, Johannes Weiner wrote: The VM maintains cached filesystem pages on two types of lists. One list holds the pages recently faulted into the cache

Re: [patch 9/9] mm: keep page cache radix tree nodes in check

2014-01-14 Thread Bob Liu
Hi Johannes, On 01/11/2014 02:10 AM, Johannes Weiner wrote: Previously, page cache radix tree nodes were freed after reclaim emptied out their page pointers. But now reclaim stores shadow entries in their place, which are only reclaimed when the inodes themselves are reclaimed. This is

Re: [PATCH] mm/zswap: Check all pool pages instead of one pool pages

2014-01-13 Thread Bob Liu
On 01/14/2014 01:05 PM, Minchan Kim wrote: > On Tue, Jan 14, 2014 at 01:50:22PM +0900, Minchan Kim wrote: >> Hello Bob, >> >> On Tue, Jan 14, 2014 at 09:19:23AM +0800, Bob Liu wrote: >>> >>> On 01/14/2014 07:35 AM, Minchan Kim wrote: >>>> Hello,

Re: [PATCH] mm/zswap: Check all pool pages instead of one pool pages

2014-01-13 Thread Bob Liu
ol_pages too frequently? > As I read the code, I think it's okay to update it only when user > want to see it by debugfs and zswap_is_full is called. > So could we optimize it out? > >> >> Signed-off-by: Cai Liu Reviewed-by: Bob Liu >> --- >> mm/zswap.c | 1

Re: [patch 7/9] mm: thrash detection-based file cache sizing

2014-01-13 Thread Bob Liu
Hi Johannes, On 01/11/2014 02:10 AM, Johannes Weiner wrote: > The VM maintains cached filesystem pages on two types of lists. One > list holds the pages recently faulted into the cache, the other list > holds pages that have been referenced repeatedly on that first list. > The idea is to prefer

Re: [patch 7/9] mm: thrash detection-based file cache sizing

2014-01-13 Thread Bob Liu
Hi Johannes, On 01/11/2014 02:10 AM, Johannes Weiner wrote: The VM maintains cached filesystem pages on two types of lists. One list holds the pages recently faulted into the cache, the other list holds pages that have been referenced repeatedly on that first list. The idea is to prefer

<    1   2   3   4   5   6   7   8   9   >